@hero-design/rn 7.1.3-alpha6 → 7.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +0 -6
- package/babel.config.js +0 -14
- package/es/index.js +2871 -9221
- package/jest-setup.ts +0 -1
- package/jest.config.js +2 -4
- package/lib/index.js +2916 -9248
- package/package.json +5 -7
- package/playground/components/BottomNavigation.tsx +7 -4
- package/playground/components/Card.tsx +141 -107
- package/playground/components/FAB.tsx +1 -4
- package/playground/components/Tabs.tsx +3 -4
- package/playground/index.tsx +42 -34
- package/src/components/Badge/StyledBadge.tsx +19 -19
- package/src/components/Badge/__tests__/Badge.spec.tsx +9 -18
- package/src/components/Badge/__tests__/__snapshots__/Badge.spec.tsx.snap +56 -108
- package/src/components/Badge/index.tsx +2 -4
- package/src/components/BottomNavigation/StyledBottomNavigation.tsx +42 -47
- package/src/components/BottomNavigation/__tests__/__snapshots__/{BottomNavigation.spec.tsx.snap → index.spec.tsx.snap} +130 -96
- package/src/components/BottomNavigation/__tests__/{BottomNavigation.spec.tsx → index.spec.tsx} +4 -4
- package/src/components/BottomNavigation/index.tsx +21 -21
- package/src/components/Button/IconButton.tsx +5 -5
- package/src/components/Button/__tests__/__snapshots__/index.spec.tsx.snap +7 -4
- package/src/components/Button/__tests__/index.spec.tsx +6 -12
- package/src/components/Card/StyledCard.tsx +6 -6
- package/src/components/Card/__tests__/StyledCard.spec.tsx +2 -7
- package/src/components/Card/__tests__/__snapshots__/StyledCard.spec.tsx.snap +8 -11
- package/src/components/Card/__tests__/__snapshots__/{Card.spec.tsx.snap → index.spec.tsx.snap} +2 -8
- package/src/components/Card/__tests__/index.spec.tsx +35 -0
- package/src/components/Divider/StyledDivider.tsx +18 -60
- package/src/components/Divider/__tests__/StyledDivider.spec.tsx +5 -10
- package/src/components/Divider/__tests__/__snapshots__/StyledDivider.spec.tsx.snap +106 -70
- package/src/components/Divider/index.tsx +1 -1
- package/src/components/FAB/ActionGroup/ActionItem.tsx +2 -4
- package/src/components/FAB/ActionGroup/StyledActionGroup.tsx +36 -37
- package/src/components/FAB/ActionGroup/StyledActionItem.tsx +26 -24
- package/src/components/FAB/ActionGroup/__tests__/__snapshots__/index.spec.tsx.snap +270 -244
- package/src/components/FAB/ActionGroup/__tests__/index.spec.tsx +29 -33
- package/src/components/FAB/ActionGroup/index.tsx +1 -5
- package/src/components/FAB/AnimatedFABIcon.tsx +1 -1
- package/src/components/FAB/FAB.tsx +5 -9
- package/src/components/FAB/StyledFAB.tsx +22 -0
- package/src/components/FAB/__tests__/AnimatedFABIcon.spec.tsx +3 -6
- package/src/components/FAB/__tests__/StyledFAB.spec.tsx +24 -0
- package/src/components/FAB/__tests__/__snapshots__/AnimatedFABIcon.spec.tsx.snap +14 -10
- package/src/components/FAB/__tests__/__snapshots__/StyledFAB.spec.tsx.snap +72 -0
- package/src/components/FAB/__tests__/__snapshots__/index.spec.tsx.snap +16 -17
- package/src/components/FAB/__tests__/index.spec.tsx +21 -26
- package/src/components/Icon/HeroIcon/index.tsx +5 -7
- package/src/components/Icon/__tests__/__snapshots__/{Icon.spec.tsx.snap → index.spec.tsx.snap} +21 -12
- package/src/components/Icon/__tests__/index.spec.tsx +25 -0
- package/src/components/Icon/index.tsx +1 -1
- package/src/components/Tabs/StyledTabs.tsx +44 -46
- package/src/components/Tabs/__tests__/__snapshots__/{Tabs.spec.tsx.snap → index.spec.tsx.snap} +85 -59
- package/src/components/Tabs/__tests__/{Tabs.spec.tsx → index.spec.tsx} +4 -4
- package/src/components/Tabs/index.tsx +33 -25
- package/src/components/Typography/Text/StyledText.tsx +19 -64
- package/src/components/Typography/Text/__tests__/__snapshots__/StyledText.spec.tsx.snap +90 -63
- package/src/emotion.d.ts +6 -0
- package/src/index.ts +8 -6
- package/src/testHelpers/renderWithTheme.tsx +2 -1
- package/src/theme/__tests__/__snapshots__/index.spec.ts.snap +60 -48
- package/src/theme/components/badge.ts +14 -5
- package/src/theme/components/bottomNavigation.ts +3 -3
- package/src/theme/components/card.ts +2 -2
- package/src/theme/components/divider.ts +6 -6
- package/src/theme/components/fab.ts +19 -17
- package/src/theme/components/tabs.ts +4 -4
- package/src/theme/components/typography.ts +4 -4
- package/src/theme/global/borders.ts +8 -2
- package/src/theme/global/colors.ts +3 -1
- package/src/theme/global/index.ts +31 -17
- package/src/theme/global/scale.ts +18 -0
- package/src/theme/global/space.ts +23 -13
- package/src/theme/global/typography.ts +71 -27
- package/src/theme/index.ts +27 -14
- package/src/types.ts +7 -0
- package/testUtils/setup.ts +11 -0
- package/tsconfig.json +1 -5
- package/types/src/components/Badge/StyledBadge.d.ts +16 -5
- package/types/src/components/Badge/index.d.ts +1 -1
- package/types/src/components/BottomNavigation/StyledBottomNavigation.d.ts +43 -9
- package/types/src/components/{Typography/Text/__test__ → BottomNavigation/__tests__}/index.spec.d.ts +0 -0
- package/types/src/components/BottomNavigation/index.d.ts +16 -11
- package/types/src/components/Button/IconButton.d.ts +5 -5
- package/types/src/components/Card/StyledCard.d.ts +7 -1
- package/types/src/components/{BottomNavigation/__tests__/BottomNavigation.spec.d.ts → Card/__tests__/index.spec.d.ts} +0 -0
- package/types/src/components/Divider/StyledDivider.d.ts +8 -2
- package/types/src/components/Divider/index.d.ts +1 -1
- package/types/src/components/FAB/ActionGroup/StyledActionGroup.d.ts +25 -7
- package/types/src/components/FAB/ActionGroup/StyledActionItem.d.ts +11 -2
- package/types/src/components/FAB/ActionGroup/index.d.ts +1 -1
- package/types/src/components/FAB/FAB.d.ts +4 -4
- package/types/src/components/FAB/StyledFAB.d.ts +14 -0
- package/types/src/components/{Card/__tests__/Card.spec.d.ts → FAB/__tests__/StyledFAB.spec.d.ts} +0 -0
- package/types/src/components/Icon/HeroIcon/index.d.ts +8 -2
- package/types/src/components/{FAB/__tests__/FABButton.spec.d.ts → Icon/__tests__/index.spec.d.ts} +0 -0
- package/types/src/components/Icon/index.d.ts +1 -1
- package/types/src/components/Icon/utils.d.ts +1 -1
- package/types/src/components/Tabs/StyledTabs.d.ts +43 -11
- package/types/src/components/{FAB/__tests__/StyledFABContainer.spec.d.ts → Tabs/__tests__/index.spec.d.ts} +0 -0
- package/types/src/components/Tabs/index.d.ts +15 -10
- package/types/src/components/Typography/Text/StyledText.d.ts +8 -2
- package/types/src/index.d.ts +6 -5
- package/types/src/theme/components/badge.d.ts +10 -3
- package/types/src/theme/components/bottomNavigation.d.ts +6 -3
- package/types/src/theme/components/card.d.ts +2 -2
- package/types/src/theme/components/divider.d.ts +6 -6
- package/types/src/theme/components/fab.d.ts +19 -17
- package/types/src/theme/components/tabs.d.ts +4 -4
- package/types/src/theme/components/typography.d.ts +4 -4
- package/types/src/theme/global/borders.d.ts +4 -3
- package/types/src/theme/global/colors.d.ts +2 -2
- package/types/src/theme/global/index.d.ts +10 -45
- package/types/src/theme/global/scale.d.ts +8 -0
- package/types/src/theme/global/space.d.ts +8 -7
- package/types/src/theme/global/typography.d.ts +9 -16
- package/types/src/theme/index.d.ts +2 -2
- package/types/src/types.d.ts +5 -0
- package/.expo/README.md +0 -15
- package/.expo/packager-info.json +0 -10
- package/.expo/settings.json +0 -10
- package/.expo/web/cache/development/babel-loader/015cd4023bdd8e0e3e1de310046d3b16.json +0 -1
- package/.expo/web/cache/development/babel-loader/0255192076dea2c7675549fa263a6722.json +0 -1
- package/.expo/web/cache/development/babel-loader/02c646fdcaa4819674f8e44dc29cc0aa.json +0 -1
- package/.expo/web/cache/development/babel-loader/02e944ba6b7532c77b5ecd94f5a52945.json +0 -1
- package/.expo/web/cache/development/babel-loader/06168282f87d39982c04c3b7725abef8.json +0 -1
- package/.expo/web/cache/development/babel-loader/064867cdc71ec7f38308957641ec0e5c.json +0 -1
- package/.expo/web/cache/development/babel-loader/06ca002e730e83bc0dc273752554bb0c.json +0 -1
- package/.expo/web/cache/development/babel-loader/07e86d93ebd8574948f718d80ecb1fad.json +0 -1
- package/.expo/web/cache/development/babel-loader/081a940d3ae9e0d20d13c22cc43c0a46.json +0 -1
- package/.expo/web/cache/development/babel-loader/085466d1c040fb7ef5d00248adeb9f1d.json +0 -1
- package/.expo/web/cache/development/babel-loader/08b94b37dd81e6f1b9909d84cc376c2e.json +0 -1
- package/.expo/web/cache/development/babel-loader/0a25801a974b0000e0a99da16c026d5c.json +0 -1
- package/.expo/web/cache/development/babel-loader/0a97090e9243b34fc136fda2ec55c961.json +0 -1
- package/.expo/web/cache/development/babel-loader/0c15db912477ec22c24f92d59cd33999.json +0 -1
- package/.expo/web/cache/development/babel-loader/0c784bc417f84aadf97818fbd4054b3f.json +0 -1
- package/.expo/web/cache/development/babel-loader/0eb233e1ecf7aa8cefdf1146268e2ef1.json +0 -1
- package/.expo/web/cache/development/babel-loader/0fa0699844293bd83681296074c82f83.json +0 -1
- package/.expo/web/cache/development/babel-loader/121bdee5f5cb95d16d99e4c933ebf864.json +0 -1
- package/.expo/web/cache/development/babel-loader/124896b4a24d61a32b980cbe17dfd86d.json +0 -1
- package/.expo/web/cache/development/babel-loader/15499f3a2f57c5182f92a767b52ccaa7.json +0 -1
- package/.expo/web/cache/development/babel-loader/15b64eb35bbb00e9b7d2e1ba5de504aa.json +0 -1
- package/.expo/web/cache/development/babel-loader/16f046b2bba77cc6b20c53ab67a8845c.json +0 -1
- package/.expo/web/cache/development/babel-loader/18296da1d79a9b7ed67aa73b3674c98d.json +0 -1
- package/.expo/web/cache/development/babel-loader/183bf8d5b8b0a24f311560391b75fb28.json +0 -1
- package/.expo/web/cache/development/babel-loader/18e69c8d4e2278d3ed0a2a9cf9459979.json +0 -1
- package/.expo/web/cache/development/babel-loader/19f6c3fb7aa14dc1a42f5d75d2b0e267.json +0 -1
- package/.expo/web/cache/development/babel-loader/1a87e69c2765213ad342b5f454c0a058.json +0 -1
- package/.expo/web/cache/development/babel-loader/1ae9718a5291beb1a34921e74351868d.json +0 -1
- package/.expo/web/cache/development/babel-loader/1be8f9a2939f282c2218a492c2083516.json +0 -1
- package/.expo/web/cache/development/babel-loader/1c33ab505b1f55675a070b3f19ab5fc6.json +0 -1
- package/.expo/web/cache/development/babel-loader/1c53ddb06e14036617c6be6b6ec02e93.json +0 -1
- package/.expo/web/cache/development/babel-loader/1ce0f519e92a6f10348175e6fa42fd6a.json +0 -1
- package/.expo/web/cache/development/babel-loader/1e150d4ac2c661fd694b6cddce785558.json +0 -1
- package/.expo/web/cache/development/babel-loader/1e64bc6f174a20385a44365e77cb71ff.json +0 -1
- package/.expo/web/cache/development/babel-loader/2168be4a82a7d5b116dd8fd18bd5ab62.json +0 -1
- package/.expo/web/cache/development/babel-loader/21dae0abf6ef0400ef25dfc87d1f4671.json +0 -1
- package/.expo/web/cache/development/babel-loader/2286dc8cd20eaa8051a3400057edd5ae.json +0 -1
- package/.expo/web/cache/development/babel-loader/22b0965d8ed07fcd7d323d92eb56a91d.json +0 -1
- package/.expo/web/cache/development/babel-loader/243541d6511909b66a90d2824fc71f14.json +0 -1
- package/.expo/web/cache/development/babel-loader/24781a54910c0940c738ec301eff4318.json +0 -1
- package/.expo/web/cache/development/babel-loader/24b80d0446b9c88886cd1f951632ab91.json +0 -1
- package/.expo/web/cache/development/babel-loader/24d40521282cac7bb526f9a7a3ab4de2.json +0 -1
- package/.expo/web/cache/development/babel-loader/260bba3675ce84e0a277a65fdb52f235.json +0 -1
- package/.expo/web/cache/development/babel-loader/266b79a5977223dbee00bdc2732e5697.json +0 -1
- package/.expo/web/cache/development/babel-loader/26879ba706c68b0226a1242f3c28c0e2.json +0 -1
- package/.expo/web/cache/development/babel-loader/2746a8c85fca2064b7728ecfc2d7e022.json +0 -1
- package/.expo/web/cache/development/babel-loader/28308843667ee35631612116de8ee705.json +0 -1
- package/.expo/web/cache/development/babel-loader/2af2c923d4fe0c7736be88b0e2fac2c0.json +0 -1
- package/.expo/web/cache/development/babel-loader/2b00b74ce36325af2dd1ecb817f0b69e.json +0 -1
- package/.expo/web/cache/development/babel-loader/2bf696f8a70361680c8d88ae78227b2c.json +0 -1
- package/.expo/web/cache/development/babel-loader/2fbe5d411c533de433abd361bfba9e2f.json +0 -1
- package/.expo/web/cache/development/babel-loader/308a319d3e13964a95b184dd7e7483a7.json +0 -1
- package/.expo/web/cache/development/babel-loader/30a3d4b4e5bc9d62a22ea1c05d50e3d7.json +0 -1
- package/.expo/web/cache/development/babel-loader/3297de3af524b87977cccb0d51c6fdb7.json +0 -1
- package/.expo/web/cache/development/babel-loader/335055e2588a3f703b6681b513053069.json +0 -1
- package/.expo/web/cache/development/babel-loader/33b1a3e46b0a9c62db1005f57d2ae76d.json +0 -1
- package/.expo/web/cache/development/babel-loader/342f4f51d784f91793e41c4c463ba640.json +0 -1
- package/.expo/web/cache/development/babel-loader/34fbec758cf381ee3d274245596e884e.json +0 -1
- package/.expo/web/cache/development/babel-loader/36b241618bf067485a740d2052476b6b.json +0 -1
- package/.expo/web/cache/development/babel-loader/377d170e62cdfc5531aca97043caa939.json +0 -1
- package/.expo/web/cache/development/babel-loader/383c6c820117d99d43918fdc5646ef07.json +0 -1
- package/.expo/web/cache/development/babel-loader/38845b2c5c1d2ac8c34919b0420e217a.json +0 -1
- package/.expo/web/cache/development/babel-loader/3a1b5dd13338d9b8323cc65ac0ee9084.json +0 -1
- package/.expo/web/cache/development/babel-loader/3b6cafaec7bd951cb292d35b7b777e16.json +0 -1
- package/.expo/web/cache/development/babel-loader/3dde711133a24dc39a127890207efc14.json +0 -1
- package/.expo/web/cache/development/babel-loader/3e411553708caef8421aca4ca7a50a79.json +0 -1
- package/.expo/web/cache/development/babel-loader/3e4bf0afe3180d43e6259fdc9e2cf018.json +0 -1
- package/.expo/web/cache/development/babel-loader/3f45c156aeb578585b9367e9f769213a.json +0 -1
- package/.expo/web/cache/development/babel-loader/401d9d9024ed8c80f8875e3a561ebe52.json +0 -1
- package/.expo/web/cache/development/babel-loader/4119e38050883976b0b6604154ff74b1.json +0 -1
- package/.expo/web/cache/development/babel-loader/43053f3b8cae10481352c2e2515e9d3a.json +0 -1
- package/.expo/web/cache/development/babel-loader/43908b6386757cbdce634000cdb05be5.json +0 -1
- package/.expo/web/cache/development/babel-loader/45b0b2f0892e55f6766ea3f6eedfedc8.json +0 -1
- package/.expo/web/cache/development/babel-loader/4641f770b3a3c0e9d65049d69666f14a.json +0 -1
- package/.expo/web/cache/development/babel-loader/464cf321c96f5d3a11c6e7c9ce022d89.json +0 -1
- package/.expo/web/cache/development/babel-loader/4884e4300b99f1c73a01bc4da1e69e2e.json +0 -1
- package/.expo/web/cache/development/babel-loader/49889d761f9b1b6827a7b9a4c2b63949.json +0 -1
- package/.expo/web/cache/development/babel-loader/49e011b42b0e8b3a01cad47999ddd5f4.json +0 -1
- package/.expo/web/cache/development/babel-loader/4a2372960ee87388844ee5eacf8a4e5d.json +0 -1
- package/.expo/web/cache/development/babel-loader/4d27b44a4344eb5d6a82f929b034fcb6.json +0 -1
- package/.expo/web/cache/development/babel-loader/4d6224362744b0eda6e64e9096c88e5e.json +0 -1
- package/.expo/web/cache/development/babel-loader/4d7371ca965d4e8d8e3b9fe29d72cb56.json +0 -1
- package/.expo/web/cache/development/babel-loader/4decc31212afed6aecb648cd482d8f58.json +0 -1
- package/.expo/web/cache/development/babel-loader/4dfa2b3056c60bce932123f61e4bc6d2.json +0 -1
- package/.expo/web/cache/development/babel-loader/4e008a6aedd78b935cba6d0b3d6bc7ae.json +0 -1
- package/.expo/web/cache/development/babel-loader/4e822161a7bda4d88f0867695e1ecfd9.json +0 -1
- package/.expo/web/cache/development/babel-loader/4f1e0269842359fe96d27c5b9bfd1ac4.json +0 -1
- package/.expo/web/cache/development/babel-loader/4fb1f40f3a67457861766892e335a81d.json +0 -1
- package/.expo/web/cache/development/babel-loader/507a1917d95e59163a96e7784d5288a7.json +0 -1
- package/.expo/web/cache/development/babel-loader/50e87c60a46b4cdf0487b5edc043be30.json +0 -1
- package/.expo/web/cache/development/babel-loader/530461df12ae0b0f45c0d457547c372e.json +0 -1
- package/.expo/web/cache/development/babel-loader/5339c25a34fe42823b7a1d2e1cdc6546.json +0 -1
- package/.expo/web/cache/development/babel-loader/536ca6a6eed1bcdac31786e72dedea80.json +0 -1
- package/.expo/web/cache/development/babel-loader/53cd7a6341558d4da20796dc5ebd58bb.json +0 -1
- package/.expo/web/cache/development/babel-loader/540b224b100181005e79f2dadb1edbf8.json +0 -1
- package/.expo/web/cache/development/babel-loader/542c478f2a9a2ca89b6b87961cb48922.json +0 -1
- package/.expo/web/cache/development/babel-loader/54749024a5585009dc5b67e1b0d9dbdc.json +0 -1
- package/.expo/web/cache/development/babel-loader/5566a5cf483f5a29e31e71e44bd4ee31.json +0 -1
- package/.expo/web/cache/development/babel-loader/56014c53cc4a460aedbf6b315b7a83d1.json +0 -1
- package/.expo/web/cache/development/babel-loader/592bfc0572fc2bceb23e0650a747eaa8.json +0 -1
- package/.expo/web/cache/development/babel-loader/5a57cc696da8aefee15249d630caa27a.json +0 -1
- package/.expo/web/cache/development/babel-loader/5b2adce8bdaf8fa5bdaf1455f271e3c8.json +0 -1
- package/.expo/web/cache/development/babel-loader/5b306fddfa1f5d9e99d311532bd0139c.json +0 -1
- package/.expo/web/cache/development/babel-loader/5bbe045789809b2f64e2bd58eb420aa3.json +0 -1
- package/.expo/web/cache/development/babel-loader/5d7aefda6066de8bdbb1bcb007d1b5db.json +0 -1
- package/.expo/web/cache/development/babel-loader/5d82ac4048edb6410bf53e83cbcbb922.json +0 -1
- package/.expo/web/cache/development/babel-loader/5e11b649fa3602e096c920767cb436e3.json +0 -1
- package/.expo/web/cache/development/babel-loader/5e6d5abccf648c1a866e21ad2a09adfd.json +0 -1
- package/.expo/web/cache/development/babel-loader/5f5b8027c4d87d9e0feea8462780e8ad.json +0 -1
- package/.expo/web/cache/development/babel-loader/5fb192b131f2f50d41e33fe34dbbc297.json +0 -1
- package/.expo/web/cache/development/babel-loader/604249a15ce1c8e541864121ac7ac587.json +0 -1
- package/.expo/web/cache/development/babel-loader/61137d04349f30b618be58175ad9d350.json +0 -1
- package/.expo/web/cache/development/babel-loader/61ce8c3d59dde8eac802f308f9acc828.json +0 -1
- package/.expo/web/cache/development/babel-loader/6391d65a84100349eba3acb527e6b030.json +0 -1
- package/.expo/web/cache/development/babel-loader/6500ab6cfd39dbfff785d348bf367be8.json +0 -1
- package/.expo/web/cache/development/babel-loader/655221527a35c47d0109d3c96a8da168.json +0 -1
- package/.expo/web/cache/development/babel-loader/65568c39c8b15c78a96d4caf9941129b.json +0 -1
- package/.expo/web/cache/development/babel-loader/657adfbea82cd6254f7ac85151e6ea52.json +0 -1
- package/.expo/web/cache/development/babel-loader/66c4915ff6ebfde747894fd3f427b9c7.json +0 -1
- package/.expo/web/cache/development/babel-loader/6b558032ef2af0092093a0e2315e3b37.json +0 -1
- package/.expo/web/cache/development/babel-loader/6cc8c7be4e8e8792ad698f10623c9b11.json +0 -1
- package/.expo/web/cache/development/babel-loader/6e14a5e499ef7e25ca0cccb6269e2f5a.json +0 -1
- package/.expo/web/cache/development/babel-loader/70d42954cfcb018f13bad222cfdd26c2.json +0 -1
- package/.expo/web/cache/development/babel-loader/70e5d0fb55302845630dc7022fcab612.json +0 -1
- package/.expo/web/cache/development/babel-loader/7187c947a3186dfc0857f64da0908ecf.json +0 -1
- package/.expo/web/cache/development/babel-loader/71ff258c6f6d9b34829e45fd9452dd3a.json +0 -1
- package/.expo/web/cache/development/babel-loader/72447ee2c89506d47319627069907f4b.json +0 -1
- package/.expo/web/cache/development/babel-loader/72bfb7460b7b81f7f3bbddc81fc8e7dc.json +0 -1
- package/.expo/web/cache/development/babel-loader/731d03a0a67ecaf9a9383d41beae7fd4.json +0 -1
- package/.expo/web/cache/development/babel-loader/741251e4d56c2c8722a5b9a0bc8b36dd.json +0 -1
- package/.expo/web/cache/development/babel-loader/747257270c398282d135060092b5ffc4.json +0 -1
- package/.expo/web/cache/development/babel-loader/74852aa6ce6f71235218eb6f1a120430.json +0 -1
- package/.expo/web/cache/development/babel-loader/74afe49311fab37261730b1ea83897a1.json +0 -1
- package/.expo/web/cache/development/babel-loader/7535495406e9daac2cf50eddcbcf984f.json +0 -1
- package/.expo/web/cache/development/babel-loader/76a96c09b41232a1027eb57667bed4cd.json +0 -1
- package/.expo/web/cache/development/babel-loader/77b71e7070039d3b0809426997ec6355.json +0 -1
- package/.expo/web/cache/development/babel-loader/79febcd0920ccdc7d95510faa84cd785.json +0 -1
- package/.expo/web/cache/development/babel-loader/7a05a01c29184e51101a5896e6771068.json +0 -1
- package/.expo/web/cache/development/babel-loader/7b67bf87b7a24ce1bd0d21be94d39712.json +0 -1
- package/.expo/web/cache/development/babel-loader/7c10bbaa16fc3f92c14dc81ed9a103e2.json +0 -1
- package/.expo/web/cache/development/babel-loader/7e1434686597dbe27bbdf28db628678b.json +0 -1
- package/.expo/web/cache/development/babel-loader/8168bf7926790fd88c46d02691141eb3.json +0 -1
- package/.expo/web/cache/development/babel-loader/8261d9b6445c3ae4f3db3b5a87a32bfd.json +0 -1
- package/.expo/web/cache/development/babel-loader/82711d1d11135fe3c5f761ef84546cca.json +0 -1
- package/.expo/web/cache/development/babel-loader/82a952063dc4a552385e994d051987da.json +0 -1
- package/.expo/web/cache/development/babel-loader/840477709eff8cb91896d04291047917.json +0 -1
- package/.expo/web/cache/development/babel-loader/84f16ae9077a77a1f938db11c92e5cb0.json +0 -1
- package/.expo/web/cache/development/babel-loader/8611b6dbd6285e6aa281a8560c089b32.json +0 -1
- package/.expo/web/cache/development/babel-loader/877250c4b852a8c68a5787f00473bade.json +0 -1
- package/.expo/web/cache/development/babel-loader/878c86d46f1cc1c2e575715bb753a6c2.json +0 -1
- package/.expo/web/cache/development/babel-loader/89b0b1e82520bf4a83fb46a5d5e3051f.json +0 -1
- package/.expo/web/cache/development/babel-loader/8ace816b6b5d313af06a110d8fffdd29.json +0 -1
- package/.expo/web/cache/development/babel-loader/8c4251482b1bb231323018ad7f762c79.json +0 -1
- package/.expo/web/cache/development/babel-loader/8c852e6d1a4869af48b20deea5689c8e.json +0 -1
- package/.expo/web/cache/development/babel-loader/8cc22acf99bb15df0804268c9936a316.json +0 -1
- package/.expo/web/cache/development/babel-loader/8cda840d3c6065c9f5d94109ac5ceac8.json +0 -1
- package/.expo/web/cache/development/babel-loader/8da5a65a25b8617cc4b0f363b54f17a9.json +0 -1
- package/.expo/web/cache/development/babel-loader/8ed28a112dbd10ae72c4404ed767005a.json +0 -1
- package/.expo/web/cache/development/babel-loader/8f496b2cd6790e83bab10d24aae43247.json +0 -1
- package/.expo/web/cache/development/babel-loader/9066a94a8de4a1e5823cfd03c3c65c22.json +0 -1
- package/.expo/web/cache/development/babel-loader/91ebd1694a594c00836231f13fcb5ab8.json +0 -1
- package/.expo/web/cache/development/babel-loader/954de33d98429fe08ac02c788703effd.json +0 -1
- package/.expo/web/cache/development/babel-loader/954fcaa67e62fee1d0e55770c29643a9.json +0 -1
- package/.expo/web/cache/development/babel-loader/95633d8353ddde580626714ebeff4a3e.json +0 -1
- package/.expo/web/cache/development/babel-loader/95b1ef2ed750aa97d708fa5d1da11701.json +0 -1
- package/.expo/web/cache/development/babel-loader/95d8acbfa7ec33bf53408384561f8f59.json +0 -1
- package/.expo/web/cache/development/babel-loader/961bc9fd17fd516ae1093a6bea77b236.json +0 -1
- package/.expo/web/cache/development/babel-loader/96afd45a8ee5c316e8d2cdeab372d2d1.json +0 -1
- package/.expo/web/cache/development/babel-loader/96f2624d06f0d9c15f72fe52998bb3b5.json +0 -1
- package/.expo/web/cache/development/babel-loader/972f4e43ba279ed169c44d25e0badb76.json +0 -1
- package/.expo/web/cache/development/babel-loader/9800ddc64188c0c913c560451b4f20f9.json +0 -1
- package/.expo/web/cache/development/babel-loader/9a44846903f5dd2ed5c6ca62986c4d7b.json +0 -1
- package/.expo/web/cache/development/babel-loader/9afeae36f511af6858fe68f7e94de5fc.json +0 -1
- package/.expo/web/cache/development/babel-loader/9b9e501c7e3b15da22d1b1519d390a93.json +0 -1
- package/.expo/web/cache/development/babel-loader/9ba221ab0e27ecfc06fa08f1bd338d91.json +0 -1
- package/.expo/web/cache/development/babel-loader/9dc84383648386cdd64384268aaba4cd.json +0 -1
- package/.expo/web/cache/development/babel-loader/9ed0c292f501200dbab3287f89b74285.json +0 -1
- package/.expo/web/cache/development/babel-loader/9ff02f1934b1011e9f1702444f6ade8b.json +0 -1
- package/.expo/web/cache/development/babel-loader/a00673b61f03f25ca7d5dda9ec7f1684.json +0 -1
- package/.expo/web/cache/development/babel-loader/a11f1fec9b3c8224ec8a3561e9d39607.json +0 -1
- package/.expo/web/cache/development/babel-loader/a138071c6b457813fa75f80257c00948.json +0 -1
- package/.expo/web/cache/development/babel-loader/a13f4194bebf279521f1219c7f0edfe5.json +0 -1
- package/.expo/web/cache/development/babel-loader/a20bc8b3ff9c6f0a6d0505119c7c8e4b.json +0 -1
- package/.expo/web/cache/development/babel-loader/a2499bb844484b72ab0bd9e19b577a2a.json +0 -1
- package/.expo/web/cache/development/babel-loader/a3690c2af258782c6e54d70965e2d702.json +0 -1
- package/.expo/web/cache/development/babel-loader/a3b408c4e99dbfe5166c61130962d530.json +0 -1
- package/.expo/web/cache/development/babel-loader/a3d400d230600d4606a39b88b1a50ce9.json +0 -1
- package/.expo/web/cache/development/babel-loader/a576aa09c4387662d5041dc16e071e7d.json +0 -1
- package/.expo/web/cache/development/babel-loader/aadddefc328de2a87f9585c8b9cf1ddb.json +0 -1
- package/.expo/web/cache/development/babel-loader/abfcdee9f49c8512a556c8d96aab05b0.json +0 -1
- package/.expo/web/cache/development/babel-loader/af2abfdb26938b4671383c19a474c162.json +0 -1
- package/.expo/web/cache/development/babel-loader/afe4775e080557f919d69bece91f9b2e.json +0 -1
- package/.expo/web/cache/development/babel-loader/b03a4c4f01d00d65481849a79f542339.json +0 -1
- package/.expo/web/cache/development/babel-loader/b161867d1c22ab0db168cb41f31e3821.json +0 -1
- package/.expo/web/cache/development/babel-loader/b1a28b49b320580ad2d46a362b06190e.json +0 -1
- package/.expo/web/cache/development/babel-loader/b21a05f75cdf7d99468ea135e93764b4.json +0 -1
- package/.expo/web/cache/development/babel-loader/b23f758a73c6ba11c5cbddc73adfe6a0.json +0 -1
- package/.expo/web/cache/development/babel-loader/b2cc4b4fb8a4d19be9c69abaa2a93cb6.json +0 -1
- package/.expo/web/cache/development/babel-loader/b300fad9fcb11f4867e14c4aace9b942.json +0 -1
- package/.expo/web/cache/development/babel-loader/b33a1081489cf7b79984ef0a745448a8.json +0 -1
- package/.expo/web/cache/development/babel-loader/b436db3f88511bc5455c31bd368082c4.json +0 -1
- package/.expo/web/cache/development/babel-loader/b4c9da64b6d0ba5eb3caf414ca166637.json +0 -1
- package/.expo/web/cache/development/babel-loader/b56dceadf60beadf0d3374143c0b1603.json +0 -1
- package/.expo/web/cache/development/babel-loader/b76d9d60e417624f1df89b5add1d2db8.json +0 -1
- package/.expo/web/cache/development/babel-loader/b790b246d8bb0a38f5796cf5799b17f2.json +0 -1
- package/.expo/web/cache/development/babel-loader/b89ff8b3e2ec84a11907141f5e517bfe.json +0 -1
- package/.expo/web/cache/development/babel-loader/b955a4568536fcc96a9f4110da577064.json +0 -1
- package/.expo/web/cache/development/babel-loader/bab60f8582caa8ab641521aa39541ff7.json +0 -1
- package/.expo/web/cache/development/babel-loader/baf8ec42b5295bf9b71564fe06dff559.json +0 -1
- package/.expo/web/cache/development/babel-loader/bbad1fdb8bad7c28c7859a0f188d3a7b.json +0 -1
- package/.expo/web/cache/development/babel-loader/be1eb03dbd5cd69bbffa7ae2a6e9d668.json +0 -1
- package/.expo/web/cache/development/babel-loader/be2fcf3973e484a6a56e37129b5eaaf7.json +0 -1
- package/.expo/web/cache/development/babel-loader/bf8cf6088e983893d5b4c8bc034427e4.json +0 -1
- package/.expo/web/cache/development/babel-loader/bfcb86bceac05155e5308c18bdd3fe08.json +0 -1
- package/.expo/web/cache/development/babel-loader/c172563a78f317bdf0e36e24dde3452d.json +0 -1
- package/.expo/web/cache/development/babel-loader/c46ad8673d03b7db6d8a2c93ed6b3802.json +0 -1
- package/.expo/web/cache/development/babel-loader/c59a0c339fabfd6318413aa25031c201.json +0 -1
- package/.expo/web/cache/development/babel-loader/c62e34d8d462d6191e1dc14c5395d52b.json +0 -1
- package/.expo/web/cache/development/babel-loader/c74e4bc2f5768aff42dd3c55d81749c8.json +0 -1
- package/.expo/web/cache/development/babel-loader/c75a76b3e08859524b69d60f8bf1df0f.json +0 -1
- package/.expo/web/cache/development/babel-loader/c88179e7d8d1ca25305bfc867939f5a3.json +0 -1
- package/.expo/web/cache/development/babel-loader/caf356c64a9f318b905731a25c8caf91.json +0 -1
- package/.expo/web/cache/development/babel-loader/ccaedd363abc01c405579524b8bbaf35.json +0 -1
- package/.expo/web/cache/development/babel-loader/cd79d69eeae7dbcdc442f692ce8a9272.json +0 -1
- package/.expo/web/cache/development/babel-loader/cd9063bacb890d6d5a2e981754ccf164.json +0 -1
- package/.expo/web/cache/development/babel-loader/ce2f3ca01216078ce7e5a74516dbfc4c.json +0 -1
- package/.expo/web/cache/development/babel-loader/ce604f4f65dfe84b11bbec60230afff1.json +0 -1
- package/.expo/web/cache/development/babel-loader/cff5797fff55ca8e98d3118c9e7250d6.json +0 -1
- package/.expo/web/cache/development/babel-loader/d00c274746869d9a4c810f940808ca3e.json +0 -1
- package/.expo/web/cache/development/babel-loader/d139c5fbc81478cca93e6b4a926b7fad.json +0 -1
- package/.expo/web/cache/development/babel-loader/d226ab1782131db078fc56761777579a.json +0 -1
- package/.expo/web/cache/development/babel-loader/d3c10e924f2ce49ca4e0a8bc4d800047.json +0 -1
- package/.expo/web/cache/development/babel-loader/d6f1318a1043ef95ef641a9314445194.json +0 -1
- package/.expo/web/cache/development/babel-loader/d96467b93e0c8535e1d5dac15bda0d22.json +0 -1
- package/.expo/web/cache/development/babel-loader/da79a62f9b35ea1114a46be959df1c0c.json +0 -1
- package/.expo/web/cache/development/babel-loader/dbd0371650c94f023fc4464f7a30c068.json +0 -1
- package/.expo/web/cache/development/babel-loader/ded9ef4c8d70487402a7ed05aaa42bef.json +0 -1
- package/.expo/web/cache/development/babel-loader/e267b9a10da82d7c9d27a0a6d2f15d6b.json +0 -1
- package/.expo/web/cache/development/babel-loader/e3203299dd14cd528fb01e684c97f030.json +0 -1
- package/.expo/web/cache/development/babel-loader/e3403556a7bef19920ff892e7ae71a33.json +0 -1
- package/.expo/web/cache/development/babel-loader/e4d3d45445df8599087f3f379416f83e.json +0 -1
- package/.expo/web/cache/development/babel-loader/e50007c2b54696bab5256823bd8b75b9.json +0 -1
- package/.expo/web/cache/development/babel-loader/e505af1d2b9f766ae21c2c653bc1f0eb.json +0 -1
- package/.expo/web/cache/development/babel-loader/e529cbcc9a784bb39cb3f93b5916cdea.json +0 -1
- package/.expo/web/cache/development/babel-loader/e5e73e920ce1cc98aec12c63b7239f4f.json +0 -1
- package/.expo/web/cache/development/babel-loader/e5f18619a8f76be87191ef677841e2a4.json +0 -1
- package/.expo/web/cache/development/babel-loader/e6eb03aca0506d39f23ca4f3c83aa516.json +0 -1
- package/.expo/web/cache/development/babel-loader/e9a8c10622926d4b2e69ab52bd21997d.json +0 -1
- package/.expo/web/cache/development/babel-loader/eada955a7a1f7eccb8daa2d3e2e00359.json +0 -1
- package/.expo/web/cache/development/babel-loader/eb765434dad51366d5e994157844242b.json +0 -1
- package/.expo/web/cache/development/babel-loader/ebb9e1b4c723d0cd4d0ebac704bdbd2e.json +0 -1
- package/.expo/web/cache/development/babel-loader/ed91f60f62296cb2284d70d9f8e8607e.json +0 -1
- package/.expo/web/cache/development/babel-loader/edb4691fac98a028668fb1f0afd0471c.json +0 -1
- package/.expo/web/cache/development/babel-loader/ef239f9c50d12e0a9514accb8a19aa62.json +0 -1
- package/.expo/web/cache/development/babel-loader/efa1697210dffc161da37a2bf66914eb.json +0 -1
- package/.expo/web/cache/development/babel-loader/f0f1a470b5e186d352c84c767337086f.json +0 -1
- package/.expo/web/cache/development/babel-loader/f232ab08dc4147d3925c210ac21902cf.json +0 -1
- package/.expo/web/cache/development/babel-loader/f24954a77b038f86faabed1c01850607.json +0 -1
- package/.expo/web/cache/development/babel-loader/f260775a30a227263e75172591c552dd.json +0 -1
- package/.expo/web/cache/development/babel-loader/f3ec90f50a726109daca5a9d5c2e70d1.json +0 -1
- package/.expo/web/cache/development/babel-loader/f546bb0d85ea302b502ca4c8f7f2375e.json +0 -1
- package/.expo/web/cache/development/babel-loader/f58eea2525ec523b6cfef3cee01b55cd.json +0 -1
- package/.expo/web/cache/development/babel-loader/f6e983c3ec14d5a79e2fa722aaf4bea5.json +0 -1
- package/.expo/web/cache/development/babel-loader/f75a9c98751a201f9b7c208e0cbc1f19.json +0 -1
- package/.expo/web/cache/development/babel-loader/f7a3bc17fcdef31de4f4fc1152872eca.json +0 -1
- package/.expo/web/cache/development/babel-loader/f7b6d4fe4161fc5d6562a61b0b11f7e2.json +0 -1
- package/.expo/web/cache/development/babel-loader/f8c5e9dacf5878f90c86883e982f0227.json +0 -1
- package/.expo/web/cache/development/babel-loader/f8f784315a22e068136d73f99db42e30.json +0 -1
- package/.expo/web/cache/development/babel-loader/f9f931f3f27e2b3dff7fd9fb4fcf4bf3.json +0 -1
- package/.expo/web/cache/development/babel-loader/fa9d8fc1d56b04d006c0c18688a640fe.json +0 -1
- package/.expo/web/cache/development/babel-loader/fc660bf5528c70224ec6c3295a4f1a5e.json +0 -1
- package/.expo/web/cache/development/babel-loader/fd8b9e4327116ec3a3a6444e0ae6837d.json +0 -1
- package/.expo/web/cache/development/babel-loader/fdd2ca3ec9b54d1f53453b6d8632c0f5.json +0 -1
- package/.expo/web/cache/development/babel-loader/ff2eab785490c90e174666553fff7e66.json +0 -1
- package/.expo/web/cache/development/babel-loader/ffe419731db23fbdcca1bddb7cadae71.json +0 -1
- package/.expo/xcodebuild-error.log +0 -4
- package/.expo/xcodebuild.log +0 -20
- package/.tool-versions +0 -2
- package/src/components/Card/__tests__/Card.spec.tsx +0 -36
- package/src/components/FAB/StyledFABContainer.tsx +0 -14
- package/src/components/FAB/StyledFABIcon.tsx +0 -9
- package/src/components/FAB/__tests__/StyledFABContainer.spec.tsx +0 -18
- package/src/components/FAB/__tests__/StyledFABIcon.spec.tsx +0 -16
- package/src/components/FAB/__tests__/__snapshots__/StyledFABContainer.spec.tsx.snap +0 -46
- package/src/components/FAB/__tests__/__snapshots__/StyledFABIcon.spec.tsx.snap +0 -21
- package/src/components/Icon/__tests__/Icon.spec.tsx +0 -36
- package/src/styled-components.ts +0 -14
- package/src/styled.d.ts +0 -7
- package/types/components/Card/StyledView.d.ts +0 -12
- package/types/components/Card/index.d.ts +0 -0
- package/types/index.d.ts +0 -4
- package/types/src/components/FAB/FABButton.d.ts +0 -30
- package/types/src/components/FAB/MenuList/MenuItem.d.ts +0 -15
- package/types/src/components/FAB/MenuList/StyleBackDrop.d.ts +0 -5
- package/types/src/components/FAB/MenuList/StyledHeaderText.d.ts +0 -3
- package/types/src/components/FAB/MenuList/StyledMenuItem.d.ts +0 -4
- package/types/src/components/FAB/MenuList/__tests__/index.spec.d.ts +0 -1
- package/types/src/components/FAB/MenuList/index.d.ts +0 -27
- package/types/src/components/FAB/StyledFABContainer.d.ts +0 -3
- package/types/src/components/FAB/StyledFABIcon.d.ts +0 -3
- package/types/src/components/FAB/__tests__/StyledFABIcon.spec.d.ts +0 -1
- package/types/src/components/Icon/__tests__/Icon.spec.d.ts +0 -1
- package/types/src/components/Tabs/__tests__/Tabs.spec.d.ts +0 -1
- package/types/src/components/Typography/Text/__test__/StyledText.spec.d.ts +0 -1
- package/types/src/styled-components.d.ts +0 -6
- package/types/styled-components.d.ts +0 -6
- package/types/theme/components/exampleComponent.d.ts +0 -14
- package/types/theme/global/colors.d.ts +0 -24
- package/types/theme/global/index.d.ts +0 -58
- package/types/theme/global/space.d.ts +0 -12
- package/types/theme/global/typography.d.ts +0 -21
- package/types/theme/index.d.ts +0 -11
|
@@ -1,64 +1,62 @@
|
|
|
1
1
|
import { View, FlatList } from 'react-native';
|
|
2
|
-
import styled from '
|
|
2
|
+
import styled from '@emotion/native';
|
|
3
3
|
import Icon from '../Icon';
|
|
4
4
|
import Typography from '../Typography';
|
|
5
5
|
|
|
6
|
-
const TabScreen = styled(View)<{ themeVisibility?: boolean }
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
themeVisibility === false ? 'none' : 'flex'
|
|
10
|
-
|
|
6
|
+
const TabScreen = styled(View)<{ themeVisibility?: boolean }>(
|
|
7
|
+
({ themeVisibility }) => ({
|
|
8
|
+
flex: 1,
|
|
9
|
+
display: themeVisibility === false ? 'none' : 'flex',
|
|
10
|
+
})
|
|
11
|
+
);
|
|
11
12
|
|
|
12
|
-
const TabContainer = styled(View)
|
|
13
|
-
flex: 1
|
|
14
|
-
overflow: hidden
|
|
15
|
-
|
|
13
|
+
const TabContainer = styled(View)({
|
|
14
|
+
flex: 1,
|
|
15
|
+
overflow: 'hidden',
|
|
16
|
+
});
|
|
16
17
|
|
|
17
|
-
const ContentWrapper = styled(View)
|
|
18
|
-
flex: 1
|
|
19
|
-
|
|
18
|
+
const ContentWrapper = styled(View)({
|
|
19
|
+
flex: 1,
|
|
20
|
+
});
|
|
20
21
|
|
|
21
22
|
const HeaderTabWrapper = styled(View)<{
|
|
22
23
|
themeInsets: { top: number; right: number; bottom: number; left: number };
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
background-color: ${({ theme }) => theme.__hd__.tabs.colors.background};
|
|
29
|
-
`;
|
|
24
|
+
}>(({ themeInsets, theme }) => ({
|
|
25
|
+
paddingLeft: Math.max(themeInsets.left, themeInsets.right),
|
|
26
|
+
paddingRight: Math.max(themeInsets.left, themeInsets.right),
|
|
27
|
+
backgroundColor: theme.__hd__.tabs.colors.background,
|
|
28
|
+
}));
|
|
30
29
|
|
|
31
|
-
const StyledFlatList = (styled(FlatList)
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
theme.__hd__.tabs.space.flatListHorizontalPadding};
|
|
36
|
-
` as React.ComponentType) as new <T>() => FlatList<T>;
|
|
30
|
+
const StyledFlatList = (styled(FlatList)(({ theme }) => ({
|
|
31
|
+
paddingLeft: theme.__hd__.tabs.space.flatListHorizontalPadding,
|
|
32
|
+
paddingRight: theme.__hd__.tabs.space.flatListHorizontalPadding,
|
|
33
|
+
})) as unknown) as new <T>() => FlatList<T>;
|
|
37
34
|
|
|
38
|
-
const HeaderTabItem = styled(View)
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
`;
|
|
35
|
+
const HeaderTabItem = styled(View)(({ theme }) => ({
|
|
36
|
+
flexDirection: 'row',
|
|
37
|
+
alignItems: 'center',
|
|
38
|
+
paddingLeft: theme.__hd__.tabs.space.itemHorizontalPadding,
|
|
39
|
+
paddingRight: theme.__hd__.tabs.space.itemHorizontalPadding,
|
|
40
|
+
paddingTop: theme.__hd__.tabs.space.itemVerticalPadding,
|
|
41
|
+
paddingBottom: theme.__hd__.tabs.space.itemVerticalPadding,
|
|
42
|
+
}));
|
|
47
43
|
|
|
48
|
-
const StyledHeaderTabIcon = styled(Icon)<{ themeActive: boolean }
|
|
49
|
-
|
|
50
|
-
themeActive
|
|
44
|
+
const StyledHeaderTabIcon = styled(Icon)<{ themeActive: boolean }>(
|
|
45
|
+
({ themeActive, theme }) => ({
|
|
46
|
+
color: themeActive
|
|
51
47
|
? theme.__hd__.tabs.colors.active
|
|
52
|
-
: theme.__hd__.tabs.colors.inactive
|
|
53
|
-
|
|
48
|
+
: theme.__hd__.tabs.colors.inactive,
|
|
49
|
+
})
|
|
50
|
+
);
|
|
54
51
|
|
|
55
|
-
const StyledHeaderTabText = styled(Typography.Text)<{ themeActive: boolean }
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
themeActive
|
|
52
|
+
const StyledHeaderTabText = styled(Typography.Text)<{ themeActive: boolean }>(
|
|
53
|
+
({ themeActive, theme }) => ({
|
|
54
|
+
marginLeft: theme.__hd__.tabs.space.titleMarginLeft,
|
|
55
|
+
color: themeActive
|
|
59
56
|
? theme.__hd__.tabs.colors.active
|
|
60
|
-
: theme.__hd__.tabs.colors.inactive
|
|
61
|
-
|
|
57
|
+
: theme.__hd__.tabs.colors.inactive,
|
|
58
|
+
})
|
|
59
|
+
);
|
|
62
60
|
|
|
63
61
|
export {
|
|
64
62
|
StyledFlatList,
|
package/src/components/Tabs/__tests__/__snapshots__/{Tabs.spec.tsx.snap → index.spec.tsx.snap}
RENAMED
|
@@ -14,21 +14,25 @@ exports[`Tabs renders correctly 1`] = `
|
|
|
14
14
|
>
|
|
15
15
|
<View
|
|
16
16
|
style={
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
17
|
+
Array [
|
|
18
|
+
Object {
|
|
19
|
+
"flex": 1,
|
|
20
|
+
"overflow": "hidden",
|
|
21
|
+
},
|
|
22
|
+
undefined,
|
|
23
|
+
]
|
|
23
24
|
}
|
|
24
25
|
>
|
|
25
26
|
<View
|
|
26
27
|
style={
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
28
|
+
Array [
|
|
29
|
+
Object {
|
|
30
|
+
"backgroundColor": "#7622d7",
|
|
31
|
+
"paddingLeft": 0,
|
|
32
|
+
"paddingRight": 0,
|
|
33
|
+
},
|
|
34
|
+
undefined,
|
|
35
|
+
]
|
|
32
36
|
}
|
|
33
37
|
themeInsets={
|
|
34
38
|
Object {
|
|
@@ -78,10 +82,13 @@ exports[`Tabs renders correctly 1`] = `
|
|
|
78
82
|
showsHorizontalScrollIndicator={false}
|
|
79
83
|
stickyHeaderIndices={Array []}
|
|
80
84
|
style={
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
+
Array [
|
|
86
|
+
Object {
|
|
87
|
+
"paddingLeft": 8,
|
|
88
|
+
"paddingRight": 8,
|
|
89
|
+
},
|
|
90
|
+
undefined,
|
|
91
|
+
]
|
|
85
92
|
}
|
|
86
93
|
viewabilityConfigCallbackPairs={Array []}
|
|
87
94
|
>
|
|
@@ -117,14 +124,17 @@ exports[`Tabs renders correctly 1`] = `
|
|
|
117
124
|
>
|
|
118
125
|
<View
|
|
119
126
|
style={
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
127
|
+
Array [
|
|
128
|
+
Object {
|
|
129
|
+
"alignItems": "center",
|
|
130
|
+
"flexDirection": "row",
|
|
131
|
+
"paddingBottom": 24,
|
|
132
|
+
"paddingLeft": 16,
|
|
133
|
+
"paddingRight": 16,
|
|
134
|
+
"paddingTop": 24,
|
|
135
|
+
},
|
|
136
|
+
undefined,
|
|
137
|
+
]
|
|
128
138
|
}
|
|
129
139
|
>
|
|
130
140
|
<HeroIcon
|
|
@@ -135,9 +145,12 @@ exports[`Tabs renders correctly 1`] = `
|
|
|
135
145
|
"color": "#292a2b",
|
|
136
146
|
"fontSize": 24,
|
|
137
147
|
},
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
148
|
+
Array [
|
|
149
|
+
Object {
|
|
150
|
+
"color": "#ffffff",
|
|
151
|
+
},
|
|
152
|
+
undefined,
|
|
153
|
+
],
|
|
141
154
|
]
|
|
142
155
|
}
|
|
143
156
|
testID="hero-icon-suitcase"
|
|
@@ -150,15 +163,18 @@ exports[`Tabs renders correctly 1`] = `
|
|
|
150
163
|
Array [
|
|
151
164
|
Object {
|
|
152
165
|
"color": "#292a2b",
|
|
153
|
-
"fontFamily": "
|
|
166
|
+
"fontFamily": "BeVietnamPro-SemiBold",
|
|
154
167
|
"fontSize": 14,
|
|
155
168
|
"letterSpacing": 0.42,
|
|
156
169
|
"lineHeight": 22,
|
|
157
170
|
},
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
171
|
+
Array [
|
|
172
|
+
Object {
|
|
173
|
+
"color": "#ffffff",
|
|
174
|
+
"marginLeft": 8,
|
|
175
|
+
},
|
|
176
|
+
undefined,
|
|
177
|
+
],
|
|
162
178
|
]
|
|
163
179
|
}
|
|
164
180
|
themeActive={true}
|
|
@@ -202,14 +218,17 @@ exports[`Tabs renders correctly 1`] = `
|
|
|
202
218
|
>
|
|
203
219
|
<View
|
|
204
220
|
style={
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
221
|
+
Array [
|
|
222
|
+
Object {
|
|
223
|
+
"alignItems": "center",
|
|
224
|
+
"flexDirection": "row",
|
|
225
|
+
"paddingBottom": 24,
|
|
226
|
+
"paddingLeft": 16,
|
|
227
|
+
"paddingRight": 16,
|
|
228
|
+
"paddingTop": 24,
|
|
229
|
+
},
|
|
230
|
+
undefined,
|
|
231
|
+
]
|
|
213
232
|
}
|
|
214
233
|
>
|
|
215
234
|
<HeroIcon
|
|
@@ -220,9 +239,12 @@ exports[`Tabs renders correctly 1`] = `
|
|
|
220
239
|
"color": "#292a2b",
|
|
221
240
|
"fontSize": 24,
|
|
222
241
|
},
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
242
|
+
Array [
|
|
243
|
+
Object {
|
|
244
|
+
"color": "#ffffff50",
|
|
245
|
+
},
|
|
246
|
+
undefined,
|
|
247
|
+
],
|
|
226
248
|
]
|
|
227
249
|
}
|
|
228
250
|
testID="hero-icon-face-smiley"
|
|
@@ -235,15 +257,18 @@ exports[`Tabs renders correctly 1`] = `
|
|
|
235
257
|
Array [
|
|
236
258
|
Object {
|
|
237
259
|
"color": "#292a2b",
|
|
238
|
-
"fontFamily": "
|
|
260
|
+
"fontFamily": "BeVietnamPro-SemiBold",
|
|
239
261
|
"fontSize": 14,
|
|
240
262
|
"letterSpacing": 0.42,
|
|
241
263
|
"lineHeight": 22,
|
|
242
264
|
},
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
265
|
+
Array [
|
|
266
|
+
Object {
|
|
267
|
+
"color": "#ffffff50",
|
|
268
|
+
"marginLeft": 8,
|
|
269
|
+
},
|
|
270
|
+
undefined,
|
|
271
|
+
],
|
|
247
272
|
]
|
|
248
273
|
}
|
|
249
274
|
themeActive={false}
|
|
@@ -261,11 +286,12 @@ exports[`Tabs renders correctly 1`] = `
|
|
|
261
286
|
</View>
|
|
262
287
|
<View
|
|
263
288
|
style={
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
289
|
+
Array [
|
|
290
|
+
Object {
|
|
291
|
+
"flex": 1,
|
|
292
|
+
},
|
|
293
|
+
undefined,
|
|
294
|
+
]
|
|
269
295
|
}
|
|
270
296
|
>
|
|
271
297
|
<View
|
|
@@ -275,14 +301,14 @@ exports[`Tabs renders correctly 1`] = `
|
|
|
275
301
|
pointerEvents="auto"
|
|
276
302
|
removeClippedSubviews={false}
|
|
277
303
|
style={
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
304
|
+
Array [
|
|
305
|
+
Object {
|
|
306
|
+
"display": "flex",
|
|
307
|
+
"flex": 1,
|
|
308
|
+
},
|
|
309
|
+
undefined,
|
|
310
|
+
]
|
|
284
311
|
}
|
|
285
|
-
testID="tab-screen-work"
|
|
286
312
|
themeVisibility={true}
|
|
287
313
|
>
|
|
288
314
|
<Text>
|
|
@@ -3,16 +3,16 @@ import { Text } from 'react-native';
|
|
|
3
3
|
import { fireEvent } from '@testing-library/react-native';
|
|
4
4
|
import { SafeAreaProvider } from 'react-native-safe-area-context';
|
|
5
5
|
import renderWithTheme from '../../../testHelpers/renderWithTheme';
|
|
6
|
-
import Tabs, {
|
|
6
|
+
import Tabs, { TabType } from '..';
|
|
7
7
|
|
|
8
8
|
const TestTabsComponent = (
|
|
9
9
|
props: Omit<
|
|
10
10
|
ComponentProps<typeof Tabs>,
|
|
11
|
-
'selectedTabKey' | '
|
|
11
|
+
'selectedTabKey' | 'onTabPress' | 'tabs'
|
|
12
12
|
>
|
|
13
13
|
) => {
|
|
14
14
|
const [selectedTabKey, setSelectedTabKey] = React.useState('work');
|
|
15
|
-
const tabs:
|
|
15
|
+
const tabs: TabType[] = [
|
|
16
16
|
{
|
|
17
17
|
key: 'work',
|
|
18
18
|
title: 'Work',
|
|
@@ -38,7 +38,7 @@ const TestTabsComponent = (
|
|
|
38
38
|
{...props}
|
|
39
39
|
tabs={tabs}
|
|
40
40
|
selectedTabKey={selectedTabKey}
|
|
41
|
-
|
|
41
|
+
onTabPress={newTabKey => setSelectedTabKey(newTabKey)}
|
|
42
42
|
/>
|
|
43
43
|
</SafeAreaProvider>
|
|
44
44
|
);
|
|
@@ -7,7 +7,6 @@ import {
|
|
|
7
7
|
FlatList,
|
|
8
8
|
} from 'react-native';
|
|
9
9
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
10
|
-
import { IconProps } from '../Icon';
|
|
11
10
|
import {
|
|
12
11
|
HeaderTabItem,
|
|
13
12
|
HeaderTabWrapper,
|
|
@@ -19,22 +18,21 @@ import {
|
|
|
19
18
|
StyledFlatList,
|
|
20
19
|
} from './StyledTabs';
|
|
21
20
|
import { isIOS } from '../../utils/helpers';
|
|
21
|
+
import { IconName } from '../Icon';
|
|
22
22
|
|
|
23
|
-
type
|
|
24
|
-
|
|
25
|
-
export type Tab = {
|
|
23
|
+
export type TabType = {
|
|
26
24
|
key: string;
|
|
27
25
|
title: string;
|
|
28
|
-
icon:
|
|
26
|
+
icon: IconName;
|
|
29
27
|
component: ReactNode;
|
|
30
28
|
testID?: string;
|
|
31
29
|
};
|
|
32
30
|
|
|
33
|
-
interface
|
|
31
|
+
interface TabsProps extends ViewProps {
|
|
34
32
|
/**
|
|
35
|
-
* Callback which is called on tab
|
|
33
|
+
* Callback which is called on tab press, receiving key of upcoming active Tab.
|
|
36
34
|
*/
|
|
37
|
-
|
|
35
|
+
onTabPress: (key: string) => void;
|
|
38
36
|
/**
|
|
39
37
|
* Whether inactive tabs should be removed and unmounted in React.
|
|
40
38
|
* Defaults to `false`.
|
|
@@ -45,9 +43,15 @@ interface TabType extends ViewProps {
|
|
|
45
43
|
*/
|
|
46
44
|
selectedTabKey: string;
|
|
47
45
|
/**
|
|
48
|
-
* List of
|
|
46
|
+
* List of Tabs to be rendered. Each Tab must have an unique key.
|
|
49
47
|
*/
|
|
50
|
-
tabs:
|
|
48
|
+
tabs: {
|
|
49
|
+
key: string;
|
|
50
|
+
title: string;
|
|
51
|
+
icon: IconName;
|
|
52
|
+
component: ReactNode;
|
|
53
|
+
testID?: string;
|
|
54
|
+
}[];
|
|
51
55
|
/**
|
|
52
56
|
* Addditional style.
|
|
53
57
|
*/
|
|
@@ -59,12 +63,12 @@ interface TabType extends ViewProps {
|
|
|
59
63
|
}
|
|
60
64
|
|
|
61
65
|
const Tabs = ({
|
|
62
|
-
|
|
66
|
+
onTabPress,
|
|
63
67
|
renderActiveTabOnly = false,
|
|
64
68
|
selectedTabKey,
|
|
65
69
|
tabs,
|
|
66
70
|
...nativeProps
|
|
67
|
-
}:
|
|
71
|
+
}: TabsProps): JSX.Element => {
|
|
68
72
|
const flatListRef = React.useRef<FlatList>(null);
|
|
69
73
|
const insets = useSafeAreaInsets();
|
|
70
74
|
|
|
@@ -73,6 +77,18 @@ const Tabs = ({
|
|
|
73
77
|
*/
|
|
74
78
|
const [loaded, setLoaded] = React.useState([selectedTabKey]);
|
|
75
79
|
|
|
80
|
+
React.useEffect(() => {
|
|
81
|
+
const selectedTabIndex = tabs.findIndex(
|
|
82
|
+
item => item.key === selectedTabKey
|
|
83
|
+
);
|
|
84
|
+
if (selectedTabIndex !== -1) {
|
|
85
|
+
flatListRef.current?.scrollToIndex({
|
|
86
|
+
index: selectedTabIndex,
|
|
87
|
+
viewPosition: 0.5,
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
}, [selectedTabKey, tabs]);
|
|
91
|
+
|
|
76
92
|
if (!loaded.includes(selectedTabKey)) {
|
|
77
93
|
// Set the current tab to be loaded if it was not loaded before
|
|
78
94
|
setLoaded(loadedState => [...loadedState, selectedTabKey]);
|
|
@@ -81,7 +97,7 @@ const Tabs = ({
|
|
|
81
97
|
return (
|
|
82
98
|
<TabContainer {...nativeProps}>
|
|
83
99
|
<HeaderTabWrapper themeInsets={insets}>
|
|
84
|
-
<StyledFlatList<
|
|
100
|
+
<StyledFlatList<TabType>
|
|
85
101
|
ref={flatListRef}
|
|
86
102
|
horizontal
|
|
87
103
|
data={tabs}
|
|
@@ -97,22 +113,14 @@ const Tabs = ({
|
|
|
97
113
|
100
|
|
98
114
|
);
|
|
99
115
|
}}
|
|
100
|
-
renderItem={({ item: tab
|
|
116
|
+
renderItem={({ item: tab }) => {
|
|
101
117
|
const { key, icon, title, testID } = tab;
|
|
102
118
|
const active = selectedTabKey === key;
|
|
103
119
|
|
|
104
120
|
return (
|
|
105
121
|
<TouchableOpacity
|
|
106
122
|
key={key}
|
|
107
|
-
onPress={() =>
|
|
108
|
-
if (key !== selectedTabKey) {
|
|
109
|
-
onChange(key);
|
|
110
|
-
flatListRef.current?.scrollToIndex({
|
|
111
|
-
index,
|
|
112
|
-
viewPosition: 0.5,
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
}}
|
|
123
|
+
onPress={() => onTabPress(key)}
|
|
116
124
|
testID={testID}
|
|
117
125
|
>
|
|
118
126
|
<HeaderTabItem>
|
|
@@ -136,7 +144,7 @@ const Tabs = ({
|
|
|
136
144
|
</HeaderTabWrapper>
|
|
137
145
|
<ContentWrapper>
|
|
138
146
|
{tabs.map(tab => {
|
|
139
|
-
const { key, component } = tab;
|
|
147
|
+
const { key, component, testID } = tab;
|
|
140
148
|
const active = selectedTabKey === key;
|
|
141
149
|
|
|
142
150
|
if (renderActiveTabOnly && !active) {
|
|
@@ -151,7 +159,7 @@ const Tabs = ({
|
|
|
151
159
|
return (
|
|
152
160
|
<TabScreen
|
|
153
161
|
key={key}
|
|
154
|
-
testID={`tab-screen-${
|
|
162
|
+
testID={testID ? `tab-screen-${testID}` : undefined}
|
|
155
163
|
pointerEvents={active ? 'auto' : 'none'}
|
|
156
164
|
accessibilityElementsHidden={!active}
|
|
157
165
|
importantForAccessibility={
|
|
@@ -1,73 +1,28 @@
|
|
|
1
1
|
import { Text } from 'react-native';
|
|
2
|
-
import styled
|
|
2
|
+
import styled from '@emotion/native';
|
|
3
|
+
|
|
4
|
+
const FONTWEIGHT_MAP = {
|
|
5
|
+
light: 'light',
|
|
6
|
+
regular: 'regular',
|
|
7
|
+
'semi-bold': 'semiBold',
|
|
8
|
+
} as const;
|
|
3
9
|
|
|
4
10
|
const StyledText = styled(Text)<{
|
|
5
11
|
themeFontSize: 'small' | 'medium' | 'large' | 'xlarge';
|
|
6
12
|
themeFontWeight: 'light' | 'regular' | 'semi-bold';
|
|
7
13
|
themeIntent: 'body' | 'subdued' | 'primary';
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
line-height: ${theme.__hd__.typography.lineHeights.small};
|
|
15
|
-
letter-spacing: ${theme.__hd__.typography.fontSizes.small * 0.03}px;
|
|
16
|
-
`;
|
|
17
|
-
case 'medium':
|
|
18
|
-
return css`
|
|
19
|
-
font-size: ${theme.__hd__.typography.fontSizes.medium}px;
|
|
20
|
-
line-height: ${theme.__hd__.typography.lineHeights.medium};
|
|
21
|
-
letter-spacing: ${theme.__hd__.typography.fontSizes.medium * 0.03}px;
|
|
22
|
-
`;
|
|
23
|
-
case 'large':
|
|
24
|
-
return css`
|
|
25
|
-
font-size: ${theme.__hd__.typography.fontSizes.large}px;
|
|
26
|
-
line-height: ${theme.__hd__.typography.lineHeights.large};
|
|
27
|
-
letter-spacing: ${theme.__hd__.typography.fontSizes.large * 0.03}px;
|
|
28
|
-
`;
|
|
29
|
-
case 'xlarge':
|
|
30
|
-
return css`
|
|
31
|
-
font-size: ${theme.__hd__.typography.fontSizes.xlarge}px;
|
|
32
|
-
line-height: ${theme.__hd__.typography.lineHeights.xlarge};
|
|
33
|
-
letter-spacing: ${theme.__hd__.typography.fontSizes.xlarge * 0.03}px;
|
|
34
|
-
`;
|
|
35
|
-
}
|
|
36
|
-
}}
|
|
37
|
-
|
|
38
|
-
${({ themeFontWeight, theme }) => {
|
|
39
|
-
switch (themeFontWeight) {
|
|
40
|
-
case 'light':
|
|
41
|
-
return css`
|
|
42
|
-
font-family: ${theme.__hd__.typography.fonts.light};
|
|
43
|
-
`;
|
|
44
|
-
case 'regular':
|
|
45
|
-
return css`
|
|
46
|
-
font-family: ${theme.__hd__.typography.fonts.regular};
|
|
47
|
-
`;
|
|
48
|
-
case 'semi-bold':
|
|
49
|
-
return css`
|
|
50
|
-
font-family: ${theme.__hd__.typography.fonts.semiBold};
|
|
51
|
-
`;
|
|
52
|
-
}
|
|
53
|
-
}}
|
|
14
|
+
}>(({ themeFontSize, themeFontWeight, themeIntent, theme }) => {
|
|
15
|
+
const sizeStyles = {
|
|
16
|
+
fontSize: theme.__hd__.typography.fontSizes[themeFontSize],
|
|
17
|
+
lineHeight: theme.__hd__.typography.lineHeights[themeFontSize],
|
|
18
|
+
letterSpacing: theme.__hd__.typography.fontSizes[themeFontSize] * 0.03,
|
|
19
|
+
};
|
|
54
20
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
case 'subdued':
|
|
62
|
-
return css`
|
|
63
|
-
color: ${theme.__hd__.typography.colors.subdued};
|
|
64
|
-
`;
|
|
65
|
-
case 'primary':
|
|
66
|
-
return css`
|
|
67
|
-
color: ${theme.__hd__.typography.colors.primary};
|
|
68
|
-
`;
|
|
69
|
-
}
|
|
70
|
-
}}
|
|
71
|
-
`;
|
|
21
|
+
return {
|
|
22
|
+
...sizeStyles,
|
|
23
|
+
fontFamily: theme.__hd__.typography.fonts[FONTWEIGHT_MAP[themeFontWeight]],
|
|
24
|
+
color: theme.__hd__.typography.colors[themeIntent],
|
|
25
|
+
};
|
|
26
|
+
});
|
|
72
27
|
|
|
73
28
|
export { StyledText };
|