-
Notifications
You must be signed in to change notification settings - Fork 734
Safe require blur-view dependency in Card #1179
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Sounds really nice, what's the next step? Should this be done in the V6 branch (to avoid conflicts)? |
Technically yes, |
This will need to be applied to the |
@ethanshar @M-i-k-e-l Looks great! Very long-awaited feature! |
Done! |
* master: (30 commits) Button - refactor into smaller files (#1168) replace @react-native-community/picker with @react-native-picker/picker (#1063) Update generate types fix: catch undefined StatusBarManager (#1189) prop value shape deprecation lint rule (#1094) Infra/expo app fixes (#1166) Safe require blur-view dependency in Card (#1179) Update our stars count Update expo snack link with only supported platforms Export TabBarProps and fix BadgeScreen typescript errors Disable flipper Avoid passing overlayContent in CardSecion (#1187) Fix Carousel typings updating published version no-direct-import eslint rule - adding `applyAutofix` flag (#1183) Feat/image demo broken (#1173) Remove addItems from screen with fewItems Add vertical scroll to Carousel component (#1175) Fix Carousel gif Update Carousel gifs ... # Conflicts: # demo/src/screens/componentScreens/BadgesScreen.tsx # generatedTypes/components/button/index.d.ts # markdowns/getting-started/setup.md # src/components/button/index.tsx # src/components/card/CardSection.tsx # src/components/card/index.tsx # src/components/loaderScreen/index.js # src/components/modal/index.tsx # typings/components/Toast.d.ts # uilib-docs/src/templates/markdown.scss
* Add customLoader and remove animatable (#1152) * Add customLoader and remove animatable * remove redundent view Co-authored-by: Ethan Sharabi <[email protected]> * Fix/responsive docs pages (#1174) * Support showing navbar in mobile * More minor responsive fixes * Fix margin top in navbar on mobile * Fix/tab controller center android with rtl (#1178) * Update generate types * Update uilib-docs version to 1.0.11 * Fix order of markdown pages in docs site * Fix issue with duplicate props appearing in docs site * Fix issue with Carousel props not being included in docs * Update PageControl docs with a gif * Fix and improve search using fuzzysearch * Update Carousel gifs * Fix Carousel gif * Add vertical scroll to Carousel component (#1175) * Add vertical scroll to Carousel component * cr fixes Co-authored-by: Ethan Sharabi <[email protected]> * Remove addItems from screen with fewItems * Feat/image demo broken (#1173) * no-direct-import eslint rule - adding `applyAutofix` flag (#1183) * no-direct-import eslint rule - adding `applyAutofix` flag to control autofix option * bumping version to 1.1.00 * version number fix * Update eslint-rules/package.json Co-authored-by: Ethan Sharabi <[email protected]> Co-authored-by: Ethan Sharabi <[email protected]> * updating published version * Fix Carousel typings * Avoid passing overlayContent in CardSecion (#1187) * Disable flipper * Export TabBarProps and fix BadgeScreen typescript errors * Update expo snack link with only supported platforms * Update our stars count * Safe require blur-view dependency in Card (#1179) * safe require blur-view dependency in card and warn user if missing * Add optional require for blur-view package in Modal component * Update generate types * Infra/expo app fixes (#1166) * Load assets for demo app * expo settings stuff * Update UI for main screen * use useCallback for renderItem and renderSectionHeader * register ChipScreen so it will be accessible in expo demo app * Update README * remove .expo files from git * Update .gitignore to exclude .expo files * Use Incubator.TextField * Update our expo demo icon with the new one * Update expoDemo/.gitignore Co-authored-by: Mendy Edri <[email protected]> * code review fixes and search improvements * refactor item onPress and use useCallback Co-authored-by: Mendy Edri <[email protected]> * prop value shape deprecation lint rule (#1094) * set new lint rule for prop value * fix schema * add cases to prop-value-shape lint rule * refactor propShapeValueDeprecation * Adding two (failing) tests * Fix test and add two more big tests * More tests * add getComponentName to utils * Renaming * update message when there's no fix * fix deprecation message * update version Co-authored-by: Miki Leib <[email protected]> * fix: catch undefined StatusBarManager (#1189) * Update generate types * replace @react-native-community/picker with @react-native-picker/picker (#1063) * replace @react-native-community/picker with @react-native-picker/picker * Safely require Picker package * Use optional require only for iOS * Update expo dependncy to use @react-native-picker/picker * Button - refactor into smaller files (#1168) * Button - refactor into smaller files (reanimated 2 part 1) * Oops Co-authored-by: Ethan Sharabi <[email protected]> Co-authored-by: Lidor Dafna <[email protected]> Co-authored-by: Ethan Sharabi <[email protected]> Co-authored-by: Daniel Kochavi <[email protected]> Co-authored-by: Inbal Tish <[email protected]> Co-authored-by: Inbal Tish <[email protected]> Co-authored-by: Mendy Edri <[email protected]> Co-authored-by: Julian Hundeloh <[email protected]>
* master: (77 commits) Button - refactor into smaller files (#1168) replace @react-native-community/picker with @react-native-picker/picker (#1063) Update generate types fix: catch undefined StatusBarManager (#1189) prop value shape deprecation lint rule (#1094) Infra/expo app fixes (#1166) Safe require blur-view dependency in Card (#1179) Update our stars count Update expo snack link with only supported platforms Export TabBarProps and fix BadgeScreen typescript errors Disable flipper Avoid passing overlayContent in CardSecion (#1187) Fix Carousel typings updating published version no-direct-import eslint rule - adding `applyAutofix` flag (#1183) Feat/image demo broken (#1173) Remove addItems from screen with fewItems Add vertical scroll to Carousel component (#1175) Fix Carousel gif Update Carousel gifs ... # Conflicts: # eslint-rules/lib/rules/typography-deprecation.js # eslint-rules/package.json # eslint-rules/tests/lib/rules/typography-deprecation.js # eslint-rules/tests/typography_deprecation.json
Description
Don't Merge, Just Review
I have recently came across this proposal (which was released last weekend)
react-native-community/discussions-and-proposals#120
This is an amazing feature we've been waiting for a long time.
It allows us to conditionally require dependencies and use them safely.
It looks something like this
For instance, In our Card component we have a dependency on BlurView.
Today, if the user is missing this dependency the whole component will crash the app.
With this new feature, we can safely require BlurView and handle it accordingly (see PR code to understand it better).
This will allow us to use dependencies conditionally and have the users decide what and when to use specific features.
For instance, in the case of the whole haptic feedback effort.
We can add the haptic support directly in public code and condition it by checking if the dependency exists.
Changelog
Card's enableBlur is won't crash the app if missing @react-native-community/blur dependency