Skip to content
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

feat: create expo config plugin #205

Merged
merged 7 commits into from Feb 23, 2022
Merged

Conversation

giautm
Copy link
Contributor

@giautm giautm commented Feb 23, 2022

Fixes #192

Test Plan:

  • Unit-test on the plugin
  • Integration test with an application that config the plugin

@giautm giautm changed the title Expo plugin feat: create expo config plugin Feb 23, 2022
Copy link
Collaborator

@mikehardy mikehardy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks great - I'll approve the CI run and hopefully it goes green.
I had a comment about the docs for the config elements and I'm curious for your thoughts there
It is really important to note that I do not use or test Expo functionality, so I will not be able to support this at all. I'm more than happy to have it in the library as it will open the library to a large pool of possibly interested users but I just won't be able to help any of those users with troubleshooting or maintain this code, so ongoing help would be more than appreciated. Is that something you can provide?

*/
scheme?: string;

clientToken?: string;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it is important to at least mention that you pull this from the facebook developer dashboard as well, and that it will be required in the next major version of the facebook SDKs so you should configure it even if it is temporarily optional.

Thinking further: many of these ConfigProps are marked as optional, but, the appID and displayName and scheme etc - some of those are required and not optional, aren't they?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I make some config are optional because I want to support Expo User moving from expo-facebook to this package. They ready has some config in the app.json so they don't have to declare it twice. But, I will add validation for missing appID and displayName. (scheme will default to fb + appID).

    facebookAppId,
    facebookDisplayName,
    facebookScheme,
    facebookAutoInitEnabled,
    facebookAutoLogAppEventsEnabled,
    facebookAdvertiserIDCollectionEnabled,

@mikehardy mikehardy added the needs more info waiting on original poster to provide details label Feb 23, 2022
@giautm
Copy link
Contributor Author

giautm commented Feb 23, 2022

It is really important to note that I do not use or test Expo functionality, so I will not be able to support this at all. I'm more than happy to have it in the library as it will open the library to a large pool of possibly interested users but I just won't be able to help any of those users with troubleshooting or maintaining this code, so ongoing help would be more than appreciated. Is that something you can provide?

Yes, I can help to maintain this code/troubleshoot any issue with Expo.

Copy link
Collaborator

@mikehardy mikehardy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fantastic, and I can't tell you how much I appreciate the offer to help on maintaining it, I have limits to what I'm familiar with + have time to become familiar with and while I love the idea of Expo users being able to take advantage of the module I'm just at my limit now and don't personally don't know Expo 😅

This looks good to me now - I like the validation, let's see what CI says :-)

@mikehardy mikehardy added pending-merge Just waiting on clean CI test run. Any maintainer should feel free to merge if CI is passing. and removed needs more info waiting on original poster to provide details labels Feb 23, 2022
@giautm
Copy link
Contributor Author

giautm commented Feb 23, 2022

I think the CI was green: https://github.com/thebergamo/react-native-fbsdk-next/actions/runs/1887573023

@mikehardy mikehardy merged commit d44e360 into thebergamo:master Feb 23, 2022
@mikehardy mikehardy removed the pending-merge Just waiting on clean CI test run. Any maintainer should feel free to merge if CI is passing. label Feb 23, 2022
github-actions bot pushed a commit that referenced this pull request Feb 23, 2022
## [7.3.0](v7.2.0...v7.3.0) (2022-02-23)

### Features

* create expo config plugin ([#205](#205)) ([d44e360](d44e360))
@github-actions
Copy link

🎉 This PR is included in version 7.3.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support Expo EAS build via plugin config?
2 participants