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

RMET-2732 ::: Merge development with latest ecommerce features #31

Merged
merged 11 commits into from
Jan 11, 2024

Conversation

nflsilva
Copy link

Description

  • Brings ecommerce features into outsystems branch

Context

https://outsystemsrd.atlassian.net/browse/RMET-2732

Type of changes

  • Fix (non-breaking change which fixes an issue)
  • Feature (non-breaking change which adds functionality)
  • Refactor (cosmetic changes)
  • Breaking change (change that would cause existing functionality to not work as expected)

Platforms affected

  • Android
  • iOS
  • JavaScript

Tests

Tested both iOS and Android on real devices

Screenshots (if appropriate)

Checklist

  • Pull request title follows the format RNMT-XXXX <title>
  • Code follows code style of this project
  • CHANGELOG.md file is correctly updated
  • Changes require an update to the documentation
    • Documentation has been updated accordingly

alexgerardojacinto and others added 9 commits January 13, 2023 18:39
…parency prompt (#22)

* fix: add function for requestTrackingAuthorization without promise

References: https://outsystemsrd.atlassian.net/browse/RMET-2112

* fix: fixing function structure

* test: testing with promise

* test: testing with only 1 export

* test: use module.exports

* refactor: remove commented lines

* chore: update changelog

References: https://outsystemsrd.atlassian.net/browse/RMET-2112

* refactor: use constant
* feat: raise firebase core version
* feat: added logECommerceEvent javascript function

* chore: updates CHANGELOG.md

* feat: changed how ecommerce arguments are passed to the native side
Implement the logic required to perform e-commerce event logging. The implementation is similar to the already existing logEvent but without any parameter number constraints.

Before logging, and considering that the Firebase Analytics library doesn't return any kind of error in case of any issues with the data, the implementation performs the following steps:
#1 - Flat the Key-Value pair information to a JSON Object. This is done on both Event Parameters and Items.
#2 - Validate if the event parameters and items are correctly constructed. Both validations are done isolated, with errors being handled and returned in case of occurrence.
#3 - Validate the event parameters and items are valid according to the event name. This time, the validation is done altogether, with errors being handled and returned in case of occurrence.
#4 - Merge event parameters and items into a single JSON object to be sent to Analytics for logging purposes.

The implementation, since it's done using Swift, involves adding the Swift dependency to the `plugin.xml`.

References: https://outsystemsrd.atlassian.net/browse/RMET-2731
Remove the default `quantity` value as this is already assured by Firebase.
Fix the `item_list_id` and `item_list_name` as only the property set on the event parameters should be removed and not both always.
File rename to match the structure name.

References: https://outsystemsrd.atlassian.net/browse/RMET-2731
* feat: added ecommerce events first version

* fix: added removed hook

* fix: fixed bugs with happy paths

* feat: added KDoc

* fix: removed unecessry verification

* chore: updated CHANGELOG

* fix: applied changes suggested on the PR comments

* fix: added missing bridge file

* fix: applied proposed changes
@nflsilva nflsilva self-assigned this Jan 11, 2024
Copy link

Quality Gate Passed Quality Gate passed

Kudos, no new issues were introduced!

0 New issues
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

@nflsilva nflsilva merged commit 57a993c into outsystems Jan 11, 2024
6 of 8 checks passed
@nflsilva nflsilva deleted the development branch January 11, 2024 11:49
@nflsilva nflsilva restored the development branch January 11, 2024 11:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants