Skip to content

Commit

Permalink
chore: merge dev to master (#358)
Browse files Browse the repository at this point in the history
* deps: update deriv_auth_ui dependencies

* deps: update deriv_theme in deriv_ui

* wip: auth-ui-update

* added invalidresidence errror mapping for social login

* feat: add deriv auth error state handler

* feat: add auth error state handler in sign up page

* feat: add auth error state handler in set password page

* refactor: auth state handling in signup and set password page

* feat: add social button flag

* feat: country consent added in country_selection_layout

* deps: remove relative path

* refactor: auth state handler

* test: country selection cubit test

* test: auth state handler

* feat: add gesture detector in get started layout

* feat: reset pass success page

* docs: update documentation based on latest changes

* refactor: add eof and remove deprecated lint

* refactor: make countries non-nullable

* refactor: deriv country selection cubit

* refactor: deriv country selection cubit

* ci: integrate github actions and setup melos (#328)

* chore: rename `AuthStateListener`

* fix: change color to general

* fix: reset password button alignment

* fix: add missing ok label in referal dialog

* feat: add flag for social login

* fix: spacing after social flag

* chore: add auth ui regex to deriv ui

* feat: [MOBC-608] auth ui setting page (#320)

* feat: setting page

* fix: depricated issues

* fix: change package_info_plus to match packages

* fix: future void callback

* refactor: move regex_helper func to deriv_ui

* fix: remove sahani repo from yaml files

* fix: deriv_auth_ui pubspec

* fix: remove appEnv related to deriv ez

as deriv ez is removed from production we dont need to include it in this package anymore

* fix: revert back the appEnv and change the comment

* chore: merge master to dev (#334)

* add update_checker package

* add Readme

* add comments

* update documentation

* apply suggestions from PR review

* update deps

* update flutter_bloc package

* Revert "update flutter_bloc package"

This reverts commit 7188a18.

* Update packages/update_checker/lib/update_info.dart

Co-authored-by: abed-binary <[email protected]>

* update bloc library to 6.0.1

* remove markseen

* remove unnecessary statements

* restore UpdateCheckMarkSeen

* add UpdateCheckDismiss

* push update_checker changes

* Update web_socket_test.dart

* chore: add pull request template with git rules

* chore: pull request update git_rules.md

---------

Co-authored-by: Suyash Mohan <[email protected]>
Co-authored-by: Suyash Mohan <[email protected]>
Co-authored-by: abed-binary <[email protected]>
Co-authored-by: Morteza Tavanarad <[email protected]>
Co-authored-by: ramin-deriv <[email protected]>
Co-authored-by: ramin-deriv <[email protected]>
Co-authored-by: WAQAS YOUNAS <[email protected]>
Co-authored-by: WAQAS YOUNAS <[email protected]>

* add invalidate and copyValuesFrom to AbstractEMAIndicator (#331)

* ci: automated versioning github actions and updated ref (#338)

* deps: update dependencies

update dependencies deriv_ui

update dependencies part 1

update dependencies deriv_auth_ui

* deps: push melos pubspec.lock

* chore: publish packages

chore(release): publish packages

- [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]+1
 - [email protected]

chore(release): publish packages

- [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]
 - [email protected]+1
 - [email protected]
 - [email protected]

chore(release): publish packages

- [email protected]

chore(release): publish packages

- [email protected]

* chore: clean changelog

* chore: revert changelog changes

* chore: change auth ui example app ref

* ci: git actions for versioning

* refactor(deriv_env): make package independent of env file (#318)

* get the env file content from outside

* make Env class not being singleton

* create EnvLoader class

* fix the tests

* bring back the removed test case

* update the initialize doc

* export classes need to be used by outside

* export BaseEnv class as well

* format deriv_env.dart

* swape names for Env and EnvLoader to reduce the amount of change in the apps using this packagew

* handle exception in bool type

* remove duplicate lint rules

* define common values as variable in env_test.dart

* update README.md file

* remove breaking change by making the laod method deprecated

* Update CHANGELOG.md

* udpate README.md file

* refactor: Improve flexibility by removing dependency to env file
- **Deprecation:** The `load` method is deprecated; it is recommended to use the new `initialize` method for improved flexibility. The `load` method will still function but may be removed in future releases.
- Introduced a new method `initialize` to handle initialization without requiring an env file directly.
- Improved package flexibility by removing the strict dependency on an env file for test environments.

* chore: [MOBC-632] remove commit hash ci (#340)

* chore(version): bump version and update changelog (#342)

- [email protected]+1

Co-authored-by: GitHub Actions <41898282+github-actions[bot]@users.noreply.github.com>

* chore(deriv_auth_ui): remove unecessary deps from example (#343)

* feat: Ayaan/Added margins 112 and 164 (#319)

* Add dimens 112 and 164

* Update dimens.dart

* chore(release): publish packages (#344)

- [email protected]
 - [email protected]+1
 - [email protected]+1
 - [email protected]+1
 - [email protected]+1
 - [email protected]

Co-authored-by: GitHub Actions <41898282+github-actions[bot]@users.noreply.github.com>

* refactor(deriv_auth_ui): [MOBC-629] Adding semantics to UI components (#321)

* chore(deriv_auth_ui):Adding semantics to UI components

* chore(deriv_auth_ui):Adding semantics to UI components, fixes based on review comments

* chore(deriv_auth_ui):Adding explicitChildNodes: true to Semantics Widgets

* chore(release): publish packages (#345)

- [email protected]+2
 - [email protected]+2

Co-authored-by: GitHub Actions <41898282+github-actions[bot]@users.noreply.github.com>

* docs: add semantic versioning to git rules doc (#346)

* docs: add semantic versioning document

* docs: styling the git rules md file

* docs: GIT_RULES style

* chore: Update .github/GIT_RULES.md add refactor

Co-authored-by: sahani-deriv <[email protected]>

* chore: add missing format  GIT_RULES.md

---------

Co-authored-by: sahani-deriv <[email protected]>

* feat(deriv_auth): [DERG-1299] add user agent to login (#341)

* feat(deriv_auth): add user agent

add optional user agent for login requests

* feat(deriv_auth)add user agent to get user tokens request header

* fix(deriv_auth): User-Agent typo

* fix(deriv_auth): add missing parameter

* fix(deriv_auth): add default value for user agent parameter

---------

Co-authored-by: Ahrar <[email protected]>

* chore(release): publish packages (#348)

- [email protected]
 - [email protected]+3

Co-authored-by: GitHub Actions <41898282+github-actions[bot]@users.noreply.github.com>

* add remote config source to update checker

* update key

* update version
rename base firebase class
checking platform type

* fixing decode changelogs data.

* fixing change logs issue

* fixing change logs issue

* add fetchAndActivate to remote config

* add fetchAndActivate to remote config

* add fetchAndActivate to remote config

* add huaweiUrl to the UpdateInfo model to redirecting users to app gallery.

* fix comments

* fix comments

* chore:bum up version (#351)

* refactor(analytics): [MOBC-546] Creating unified analytics package. (#315)

* Refactoring `analytics` package.

* PR review comments on `analytics` package

* added `setUserProperty` function to `DerivFirebaseAnalytics`

* fixed a test case

* EOF `.env.example` in `analytics` package

* chore(analytics): fixed package version.

* chore(analytics): added `logEvent` function to DerivDatadog

* docs(analytics): corrected `setup` function call for datadog

* chore(analytics): added `.env` file to `.gitignore`

* refactor(analytics): added `debugEnabled` to `RudderstackConfiguration`

* docs(analytics): added debugEnabled to RudderstackConfiguration

* revert(analytics): versioning and CHANGELOG

- Introduced a flexible configuration system to support multiple analytics providers.
- Added `BaseAnalyticsConfiguration` interface for standardizing analytics configuration.
- Internalized and restructured Datadog analytics by providing a `DerivDatadog` class that implements `BaseAnalytics<DerivDatadogConfiguration>`.
- Refined existing analytics services to have their own classes implementing `BaseAnalytics`.
- Introduced Enum types and extensions (`TrackingConsent`, `DatadogSite`) to aid in analytics configuration.
- Improved navigation observer support to work with multiple analytics providers.
- Enhanced exception handling to capture Flutter and Platform-specific errors.
- Added ability to set user information for analytics tracking.
- Replaced in-house Rudderstack plugin with the official Rudderstack SDK.

### Breaking changes:
**General**:
- `setup()` method for analytics providers now requires configuration classes implementing `BaseAnalyticsConfiguration`.
- Exception handling updated to include multiple analytics providers.
- Rudderstack: Now requires the official Rudderstack SDK for analytics. Update dependencies accordingly.
- Datadog: Migrated from a separate package to an internal implementation within this package.
- Existing analytics services have been restructured to implement `BaseAnalytics`, potentially changing function signatures and configurations.

* chore(release): publish packages (#356)

- [email protected]

Co-authored-by: GitHub Actions <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: sahani-deriv <[email protected]>
Co-authored-by: Istiak <[email protected]>
Co-authored-by: Suyash Mohan <[email protected]>
Co-authored-by: Suyash Mohan <[email protected]>
Co-authored-by: abed-binary <[email protected]>
Co-authored-by: Morteza Tavanarad <[email protected]>
Co-authored-by: ramin-deriv <[email protected]>
Co-authored-by: ramin-deriv <[email protected]>
Co-authored-by: WAQAS YOUNAS <[email protected]>
Co-authored-by: WAQAS YOUNAS <[email protected]>
Co-authored-by: mobile-apps-deriv <[email protected]>
Co-authored-by: GitHub Actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: ayaan-deriv <[email protected]>
Co-authored-by: ernest-deriv <[email protected]>
Co-authored-by: zohreh <[email protected]>
Co-authored-by: Reza <[email protected]>
Co-authored-by: Bassam El Obeid <[email protected]>
Co-authored-by: Bassam El Obeid <[email protected]>
  • Loading branch information
19 people authored Dec 12, 2023
1 parent e5b1550 commit 94bddd4
Show file tree
Hide file tree
Showing 226 changed files with 6,955 additions and 1,053 deletions.
58 changes: 49 additions & 9 deletions .github/GIT_RULES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
## Commit Rules:

## <span style="color:DarkGoldenRod">Commit Rules:</span>
This commits rules is set to ensure all the developers follows a uniform way of writing commits so that it is easy to read the changes made and also automate versioning.
The commits are based on [conventional commit](https://www.conventionalcommits.org/en/v1.0.0/) which is a widely followed convention for commits. While writing a commit message to any changes made to code base, make sure it reflects the changes and follows the conventions i.e:

Expand Down Expand Up @@ -30,12 +29,7 @@ feat(deriv_auth): add UI for sign in page
- add bloc for sign in logic implementation
- add google services for authentication
```
### Breaking Changes Indicator
Breaking changes should be indicated by an `!` before the `:` in the subject line e.g. `feat(api)!: remove status endpoint`
* Is an **optional** part of the format

More changes types:

<b>More changes types:</b>
| Changes Types | Meaning | Description |
| ------------- | -------------------------- | ------------------------------------------------------------------------------------------------------------- |
| feat | Features | A new feature |
Expand Down Expand Up @@ -94,7 +88,53 @@ Optional: If you would like to pre populate your commit box with the commit temp
* ```
style: remove empty line
```
## PR Rules:
### <span style="color:Crimson">Breaking Changes Indicator</span>
Breaking changes should be indicated by an
<span style="color:red;font-size:2em"> ! </span>
before the `:` in the subject line e.g. `feat(api)!: remove status endpoint`
* Is an **optional** part of the format


<p>&nbsp;</p>

## <span style="color:DarkGoldenRod">Semantic versioning:
<center><span style="color:lime; font-size: 4em;">1 . 4 . 3 + 2</span></center>
<center><span style="color:green; font-size: 2em;">Major . Minor . Patch + build</span></center>
<p>&nbsp;</p>

<b><span style="color:orange">Major Release:</span></b>
If a ```“breaking change”``` is introduced, the major release number must be increased

```
feat(api)!: remove status endpoint
fix!: bug fix with breaking change
```

<b><span style="color:orange">Minor Release:</span></b>
New features have been introduced, which are backwards compatible ```no “breaking changes”```


```
feat: new feature
```

<b><span style="color:orange">Patch Release: </span></b>
Bug fixes ```no “breaking changes”```</br>
```
fix: something in code
refactor: code changes that doesn't fix or add anything
```

<b><span style="color:orange">Build:</span></b> This number is optional and can be used to differentiate between different builds of the same version.
</br>

<b>no change <span style="color:orange">| | </span>build bump:</b>
```
build, chore, ci, docs, style, perf, test
```
<p>&nbsp;</p>

## <span style="color:DarkGoldenRod">PR Rules:</span>

This Rules is set to create a uniform way of submitting Pull requests where all the necessary information for the changes are listed in the title, or description. There is a standard template for creating PR. When you are creating a PR to any repo always make sure:

Expand Down
44 changes: 44 additions & 0 deletions .github/workflows/all_packages.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: all_packages

on:
push:
branches:
- master
- dev
pull_request:
branches:
- "*"

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
analyze_and_test:
runs-on: ubuntu-latest
steps:
- name: Git Checkout
uses: actions/checkout@v4

- name: Setup Flutter
uses: subosito/flutter-action@v2
with:
channel: "stable"
flutter-version: "3.10.2"
cache: true

- name: Set SSH Key
uses: webfactory/[email protected]
with:
ssh-private-key: ${{secrets.SSH_PRIVATE_KEY}}

- name: Install Melos and run pub get
uses: bluefireteam/melos-action@v1
with:
melos-version: "3.0.1"

- name: Run Analyze
run: melos run analyze

- name: Run Test
run: melos run test --no-select
19 changes: 19 additions & 0 deletions .github/workflows/pr_title.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: pr_title

on:
pull_request_target:
types:
- opened
- edited
- synchronize

permissions:
pull-requests: read

jobs:
validate:
runs-on: ubuntu-latest
steps:
- uses: amannn/action-semantic-pull-request@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
55 changes: 55 additions & 0 deletions .github/workflows/version.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: version

on:
pull_request:
types:
- closed
branches:
- dev

permissions:
contents: write
pull-requests: write

jobs:
version_and_tag:
runs-on: ubuntu-latest
if: github.event.pull_request.merged == true && !contains(github.event.pull_request.title, 'chore(version)')
steps:
- name: Git Checkout
uses: actions/checkout@v4
with:
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }}
fetch-depth: 0

- name: Setup Git User
uses: fregante/setup-git-user@v2

- name: Setup Flutter
uses: subosito/flutter-action@v2
with:
channel: "stable"
flutter-version: "3.10.2"
cache: true

- name: Setup Melos
uses: bluefireteam/melos-action@v3
with:
melos-version: "3.2.0"
run-bootstrap: false

- name: Create git tag based on version
# only consider changes from the commit mentioned below
run: melos version --all --yes

- name: Push tag
run: git push --tags
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Create Pull Request on updated changelog and pubspec file.
uses: peter-evans/create-pull-request@v5
with:
token: ${{ secrets.PAT }}
title: "chore(version): bump version and update changelog"
base: dev
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,11 @@ lib/basic_api/generated/*.json
.flutter-plugins
.packages
.pub-cache/
pubspec.lock
.pub/
/build/
coverage/
/packages/**/pubspec_overrides.yaml
/packages/**/pubspec.lock


gradlew.bat
Expand Down
137 changes: 137 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
# Change Log

All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## 2023-12-08

### Changes

---

Packages with breaking changes:

- There are no breaking changes in this release.

Packages with other changes:

- [`analytics` - `v1.0.1`](#analytics---v101)

---

#### `analytics` - `v1.0.1`

- **REVERT**(analytics): versioning and CHANGELOG. ([81a3a0df](https://github.com/regentmarkets/flutter-deriv-packages/commit/81a3a0df27208bd200009415855c6cb944d016e3))
- **REFACTOR**(analytics): [MOBC-546] Creating unified analytics package. ([#315](https://github.com/regentmarkets/flutter-deriv-packages/issues/315)). ([fd1d8ed3](https://github.com/regentmarkets/flutter-deriv-packages/commit/fd1d8ed345d4ecf91c5f6c1463c5196b40abcbf6))


## 2023-12-04

### Changes

---

Packages with breaking changes:

- There are no breaking changes in this release.

Packages with other changes:

- [`deriv_auth` - `v1.1.0`](#deriv_auth---v110)
- [`deriv_auth_ui` - `v0.0.1+3`](#deriv_auth_ui---v0013)

Packages with dependency updates only:

> Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.
- `deriv_auth_ui` - `v0.0.1+3`

---

#### `deriv_auth` - `v1.1.0`

- **FEAT**(deriv_auth): [DERG-1299] add user agent to login ([#341](https://github.com/regentmarkets/flutter-deriv-packages/issues/341)). ([37f5b763](https://github.com/regentmarkets/flutter-deriv-packages/commit/37f5b763d8a679ff1d458fc4e9b82578f4eecf83))


## 2023-11-29

### Changes

---

Packages with breaking changes:

- There are no breaking changes in this release.

Packages with other changes:

- [`deriv_auth_ui` - `v0.0.1+2`](#deriv_auth_ui---v0012)
- [`deriv_ui` - `v0.0.1+2`](#deriv_ui---v0012)

---

#### `deriv_auth_ui` - `v0.0.1+2`

- **REFACTOR**(deriv_auth_ui): [MOBC-629] Adding semantics to UI components ([#321](https://github.com/regentmarkets/flutter-deriv-packages/issues/321)). ([36a0c1fa](https://github.com/regentmarkets/flutter-deriv-packages/commit/36a0c1faa0b47d4f735a79daf67c9e2c0089938e))

#### `deriv_ui` - `v0.0.1+2`

- **REFACTOR**(deriv_auth_ui): [MOBC-629] Adding semantics to UI components ([#321](https://github.com/regentmarkets/flutter-deriv-packages/issues/321)). ([36a0c1fa](https://github.com/regentmarkets/flutter-deriv-packages/commit/36a0c1faa0b47d4f735a79daf67c9e2c0089938e))


## 2023-11-28

### Changes

---

Packages with breaking changes:

- There are no breaking changes in this release.

Packages with other changes:

- [`deriv_theme` - `v2.1.0`](#deriv_theme---v210)
- [`deriv_date_range_picker` - `v0.0.1+1`](#deriv_date_range_picker---v0011)
- [`deriv_ui` - `v0.0.1+1`](#deriv_ui---v0011)
- [`deriv_auth_ui` - `v0.0.1+1`](#deriv_auth_ui---v0011)
- [`deriv_expandable_bottom_sheet` - `v0.0.1+1`](#deriv_expandable_bottom_sheet---v0011)
- [`deriv_numpad` - `v1.0.1`](#deriv_numpad---v101)

Packages with dependency updates only:

> Packages listed below depend on other packages in this workspace that have had changes. Their versions have been incremented to bump the minimum dependency versions of the packages they depend upon in this project.
- `deriv_date_range_picker` - `v0.0.1+1`
- `deriv_ui` - `v0.0.1+1`
- `deriv_auth_ui` - `v0.0.1+1`
- `deriv_expandable_bottom_sheet` - `v0.0.1+1`
- `deriv_numpad` - `v1.0.1`

---

#### `deriv_theme` - `v2.1.0`

- **FEAT**: Ayaan/Added margins 112 and 164 ([#319](https://github.com/regentmarkets/flutter-deriv-packages/issues/319)). ([bf625820](https://github.com/regentmarkets/flutter-deriv-packages/commit/bf6258206b4bb4cbdd1ef6744e07e2adb8d0d5ee))


## 2023-11-27

### Changes

---

Packages with breaking changes:

- There are no breaking changes in this release.

Packages with other changes:

- [`deriv_env` - `v0.0.1+1`](#deriv_env---v0011)

---

#### `deriv_env` - `v0.0.1+1`

- **REFACTOR**(deriv_env): make package independent of env file ([#318](https://github.com/regentmarkets/flutter-deriv-packages/issues/318)). ([a7242c81](https://github.com/regentmarkets/flutter-deriv-packages/commit/a7242c81b97fda70a622d7bbbb97fe997067117a))

37 changes: 37 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,40 @@ This repository contains private packages & plugins that are used by the company
| [form_builder](./packages/form_builder) | A simpler and cleaner way to create, validate and submit forms. |
| [update_checker](./packages/update_checker) | Check and retrieve update information from the server for the given package. |

## Environment Setup

We use [Melos](https://pub.dev/packages/melos) to manage the multiple packages in this repository. To get started, install Melos globally:

```bash
$ dart pub global activate melos
```

Running `pub get` on all packages, run:

```bash
$ melos bootstrap
```

`Analyze` and `Test` has already been configured in `melos.yaml` so you can do the following:

<b>Running `flutter analyze` on all packages:</b>

```bash
$ melos run analyze
```

<b>Running `flutter test` on all packages: </b>

```bash
$ melos run test --no-select
```

If you'd like to run any other command on all packages, you can configure it in `melos.yaml` or run it directly with melos:

```bash
$ melos exec --\
your command here
```



Loading

0 comments on commit 94bddd4

Please sign in to comment.