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

refactor config repo #798

Merged

Conversation

Dotunj
Copy link
Collaborator

@Dotunj Dotunj commented Jun 23, 2022

No description provided.

@Dotunj Dotunj merged commit 2e5b25b into raymond/feat/refactor-db-layer Jun 23, 2022
@Dotunj Dotunj deleted the dotunj/feat/refactor_config_repo branch June 23, 2022 17:11
jirevwe added a commit that referenced this pull request Jun 27, 2022
* feat: add db store file

* feat: refactor some groyp repo methods

* Refactor event repo, group repo tests

* group and event tests

* fix IsValidPointer, refactor organization repos (#794)

* feat: refactor config repo to use store (#798)

* feat: refactor user repo to use store (#797)

* refactor subscriptions repo (#795)

* feat: refactor subscriptions repo

* tests: fix test

* tests: fix test

* refactor applications repo (#799)

* feat: refactor app repo

* fix: fix call

* fix: remove ====

* tests: fix test

* refactor source repo (#796)

* feat: refactor source repo to use store

* fix: update find one pointer check

* chore: fix lint error

* fix: clean up db.go

Co-authored-by: ogbanugot <ogbanugot@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
subomi added a commit that referenced this pull request Jun 28, 2022
* chore: update readme with latest image (#805)

* Merge Release 0.6 into main (#804)

* feat: update changelog

* Bump version to v0.6.0-rc

* Release 0.6.0-rc.1 (#802)

* Megre release-0.6 into main (#682)

* feat: update changelog

* Bump version to v0.6.0-rc

* Updated Projects API (#684)

* Update Groups API

* Deprecate DefaultGroup

* Update how integration tests are run

* Deprecate immune tests

* Change Duration to duration

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* Updated API to use defaults for both incoming and outgoing (#686)

* Update Groups API

* Deprecate DefaultGroup

* Update how integration tests are run

* Deprecate immune tests

* Updated API to use defaults for both incoming and outgoing

* Removed badger files

* Setup cron system (#691)

* Setup cron system

* removed retry events schedule

* add support for jwt authentication (#690)

* add support for jwt authentication

* feat: add support for blacklisting tokens and logout endpoint

* chore: update route

* add test for user repository

* add user service test

* add user integration test

* add jwt test

* add jwt realm test

* chore: fix failing test

* chore: add docs

* chore: refactor jwt config to be standalone

* update routes

* chore: add duration comment

* add ReplayAppEvent endpoint (#672)

* feat: add ReplayAppEvent endpoint

* tests: add tests

* fix: specify wantErr

* fix: change url to /events/{eventID/replay

* tests: fix testdb.SeedEvent call

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add crud for organisations (#685)

* feat: add crud for organisations

* feat: implement crud for organisations

* feat: implement crud for organisations in BadgerDB

* tests: add tests

* tests: add integration build tags

* tests: fix sorting

* tests: fix sorting

* tests: fix TestDeleteOrganisation

* tests: fix tests

* tests: fix tests

* tests: add tests for organisation_service.go

* tests: add organisation_integration_test.go

* tests: add integration build tag

* fix: add requireOrganisation to organisation sub route

* tests: fix tests
tests: add Test_UpdateOrganisation_EmptyOrganisationName & Test_CreateOrganisation_EmptyOrganisationName

* tests: fix tests

* fix: implement suggestions

* tests: fix urls

* fix initRealmChain call

* docs: regenerate docs

* Add missing comma to convoy.json.example (#700)

* Generic Mailers Setup (#707)

* Refactored mails

* Removed test line

* Removed hardcoded prefix

* Enhancement: Refactor to use asynq queues (#704)

* Feat: Refactor to use asynq queues

* Add retry mechanism, clean up

* Fix CI lint

* Fix: parse redis url

* Fix: redis dsn in client test

* Add queue prometheus metrics

* Chore: redis address in queue options

* Chore: clean up consumer API

* chore: add err checks

Co-authored-by: Raymond Tukpe <rtukpe@gmail.com>

* Add subscriptions and sources (#683)

* feat: add subscription resource

* feat:m add subsciption repo tests

* Merge branch 'main' of https://github.com/frain-dev/convoy into raymond/feat/add-subscriptions

* feat: update subscription

* chore: remove endpoint events

* feat: update subscription schema and model

* feat: use noemalised data modelling

* feat: test outgoing event flow end to end

* chore: add project/group type validation

* complete UI rebuild (#681)

* Ingestion API (#688)

* Setup Ingestion API

* Remove unnecessary line

* check source type is HTTP before proceeding

* feat: fix flow for incoming and outgoing events

* Update process event delivery tests (#694)

* chore: update process event delivery tests

* chore: fix CI lint

* chore: remove badger tests

* chore: fix group repo tests

* chore: update event delivery tests

* chore: fix retry event delivery tests

* chore: update FillGroupsStatistics and ForceRetryEventDeliveries tests

* chore: add integration tag build directive

* chore: fix integration tests

* chore: implement PR feedback

* chore: rename tests

* Update subscription tests (#699)

* chore: add LoadSubscriptionsPaged tests

* feat: update mongodb indexes

* chore: added create and update scubscription tests

* chore: add delete scubscription tests

* Add subscription integration tests (#701)

* chore: add update and delete subscription tests

* chore: add fetch all subscriptions test

* Emmanuel/feature/new project structure (#689)

* complete UI rebuild

* connect apis for source

* updated app and events for v2

* events/apps integration for v2 (#695)

* events/apps integration for v2

* additional updates for app/events v2

* additional updates

* additional ui updates for apps v2

* projects integration v2

* additional ui updates for v2

* Update projects page (#702)

* show project type on projects page

* undo style link

* added copies for tooltips

* updated copies for create projects

* updated create app component

* updated create projects

* projects integration v2 (#696)

* projects integration v2

* additional ui updates for v2

* Update projects page (#702)

* show project type on projects page

* undo style link

* added copies for tooltips

* updated copies for create projects

* updated create app component

* updated create projects

* add spaces, 🥺

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>

* update on new app endpoint

* additional fixes for apps

* fixed events input focus

* took out event required tag

* Subscriptions UI (#705)

* build subscriptions and create subscrips
move project id to private service level

* build subscriptions details

* commit fix 1

* conflict fix

* clean up

* fixed create project json structure

* build settings page (#706)

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>

Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* chore: remove extra subrouter

* Merge main (#708)

* Setup cron system (#691)

* Setup cron system

* removed retry events schedule

* add support for jwt authentication (#690)

* add support for jwt authentication

* feat: add support for blacklisting tokens and logout endpoint

* chore: update route

* add test for user repository

* add user service test

* add user integration test

* add jwt test

* add jwt realm test

* chore: fix failing test

* chore: add docs

* chore: refactor jwt config to be standalone

* update routes

* chore: add duration comment

* add ReplayAppEvent endpoint (#672)

* feat: add ReplayAppEvent endpoint

* tests: add tests

* fix: specify wantErr

* fix: change url to /events/{eventID/replay

* tests: fix testdb.SeedEvent call

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add crud for organisations (#685)

* feat: add crud for organisations

* feat: implement crud for organisations

* feat: implement crud for organisations in BadgerDB

* tests: add tests

* tests: add integration build tags

* tests: fix sorting

* tests: fix sorting

* tests: fix TestDeleteOrganisation

* tests: fix tests

* tests: fix tests

* tests: add tests for organisation_service.go

* tests: add organisation_integration_test.go

* tests: add integration build tag

* fix: add requireOrganisation to organisation sub route

* tests: fix tests
tests: add Test_UpdateOrganisation_EmptyOrganisationName & Test_CreateOrganisation_EmptyOrganisationName

* tests: fix tests

* fix: implement suggestions

* tests: fix urls

* fix initRealmChain call

* docs: regenerate docs

* Add missing comma to convoy.json.example (#700)

* chore: fixed tests and build

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>

* Update date and time filters (#709)

* Update styles source (#710)

* Update date and time filters

* update style source

* chore: merge main into subscripions branch

* chore: delete org tests

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>

* Enhancement: Asynq scheduler (#711)

* Add asynq scheduler

* Fix typo: ScheduleQueue

* stop scheduler consumer

* Combine task and task handler registration

* Tie Users into organisations (#697)

* feat: implement organisation member repository

* feat: add metadata to auth.AuthenticatedUser

* feat: add OrganisationInviteRepository

* feat: add OrganisationMemberService & OrganisationInviteService

* feat: add ErrEmptyBody

* feat: add organisation invite handlers

* tests: add tests for organisation_invite.go & organisation_member.go

* fix: fix badger & orgMemberRepo

* fix: fix badger

* fix: initialise new repo

* fix: fix organisation_service_test.go

* tests: fix tests

* tests: fix tests

* tests: fix auth header

* tests: fix OrganisationIntegrationTestSuite

* tests: fix TestDeleteOrganisationInvite

* tests: add organisation_member_service_test.go

* fix: split ProcessOrganisationMemberInvite

* tests: add more test cases to TestOrganisationInviteService_AcceptOrganisationMemberInvite

* tests: add more test cases to TestOrganisationInviteService_AcceptOrganisationMemberInvite

* fix: add organisationID param

* fix: add organisation member routes

* fix: seed superuser member for organisation owner

* fix: fix doc

* tests: add organisation_member_integration_test.go

* fix: pass orgMemberRepo

* fix: add pagination middleware to GetOrganisationMembers route

* fix: add organisation_invite_integration_test.go

* docs: fix docs

* docs: fix owner_id json tag

* fix: fix app queue param

* tests: fix tests

* fix: add unique email index for UserCollection

* tests: seed organisation members

* tests: panic on db connect error

* tests: fix tests

* tests: fix badger & DeleteOrganisationMember calls

* tests: fix tests

* fix: add LoadUserOrganisationsPaged

* fix: fix LoadUserOrganisationsPaged pipleine

* tests: fix Test_GetOrganisations

* fix: require only token to process organisation invite

* tests: increase TestOrganisationInviteService_ProcessOrganisationMemberInvite coverage

* fix: validate new user

* fix: move process invite route to ui

* docs: define Organisation tag

* feat: add invite expiry

* tests: fix tests

* Fixed Dockerfile (#722)

* Update events and event deliveries payload (#720)

* feat: add app metadata when fetching applications

* feat: add metadata fields to event deliveries endpoint

* chore: update tests

* auth integration (#716)

* auth integration

* updates on organisation dropdwon

* fixed http service bug

* fixed http service bug

* fix filters in events and event deliveries (#718)

* fix filters in events and event deliveries

* small touches

* fix style source

* fix all loaders in project page (#724)

* Organisation settings ui (#719)

* auth integration

* organisations ui

* organisations ui

* updates on organisation dropdwon

* updated settings page

* fixed http service bug

* fixed http service bug

* took out billing

* added delete organisation

* added delete modal

* chore: deprecate require auth (#728)

* add user settings endpoints (#723)

* feat: add user settings endpoints

* chore: add user repository update test

* chore: add user service test

* chore: add user integration test

* chore: add docs

* feat: add user exists endpoint

* Fixed ui build script (#730)

* integrate email sender with organisation invite (#717)

* feat: add invite email sending logic

* feat: add organisation.invite.html

* feat:
- add TemplateName type
- add more fields to Notification

* feat:
- add requireBaseUrl to /organisations route
- use getUserFromContext

* fix: move emailNotificationSender into preRun

* feat: send invite email in new goroutine

* feat: add notification task

* feat: add notification task

* tests: fix tests

* refactor ui routes  (#733)

* refactor ui routes

* add user routes

* chore: fix failing test

* chore: remove unused middleware for now

* feat: add support for finding user by invite token

* chore: remove user exists endpoint

* chore: generate docs

* chore: refactor user routes

* chore: generate docs

* Add subscription metadata (#738)

* feat: add subscription metadata

* feat: add metadata fields to event deliery

* chore: remove useless internal function

* feat: fix ingester event flow (#744)

* fix: return correct error message for duplicate group name (#741)

* Chore: remove example scheduler task (#745)

* remove example scheduler task

* Remove unwanted lines

* Fix project creation onboarding (#726)

* method for closing subscripton modal

* add create subscription to project onboarding

* update flow

* connect project onboarding

* fix project onboarding flow

* update private services url

* fix: source url (#747)

* Fix update group reosurce and group service tests (#746)

* feat: fix update group and service tests

* feat: config is not required when creating a new project

* patch: show app event count (#748)

* Implement delete project (UI) (#749)

* delete project
update project onboarding

* fix style source

* updated subscriptions (#731)

* updated subscriptions

* updates on subscriptions

* made subscription configs optional

* review updates

* tiny fixes

* undo angular.json changes

Co-authored-by: horlah <emmanuel.ainaj@gmail.com>

* Enhancement: Alphanumeric secrets (#751)

* Update GenerateRandomString

* Add comments

* Fix verifier config (#752)

* prevent nil source verifier

* changed ApiKey field names

* apply validation to updatesource

* fix: return correct error message for duplicate group name (#753)

* link groups to organisations (#740)

* feat: link groups to organisations

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* fix:
- move security routes into ui
- require organisation membership in order to create api key for a group
- fix tests

* fix:
- fix security_integration_test.go
- add orgID to SeedDefaultGroup

* tests: fix tests

* tests: fix tests

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* chore: add metadata to get one subscription (#757)

* add tests for security logic change (#756)

* tests: increase coverage

* fix: call requireGroup middleware before requirePermission

* doc: add doc duplicate

* fix:
- check GroupID in Test_CreateAppPortalAPIKey
- add a descriptor to duplicate doc

* fix: move key generation logic into SeedAPIKey

* test: add Test_CreateAppPortalAPIKey_AppDoesNotBelongToGroup

* fetch organisation member user info (#729)

* feat: fetch organisation member user info

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* fix: unify loop

* tests: defer closeFn

* update subscriptions list (#755)

* update subscriptions list

* build update update subscription

* Change "base_url" to "host" (#754)

* feat: change "base_url" to "host"

* chore: force commit

* chore: update other places

* chore: rename context function names

* chore: fix typo

* add fetch pending invites api (#736)

* feat: add fetch pending invites api

* feat: add fetch pending invites api

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add support for analytics (#698)

* feat: add support for analytics

* feat: add support for configuration resource

* chore: remove unused import

* chore: add cron for tracking analytcis

* feat: add config repository test

* chore: add configuration service test

* chore: add configuration integration test

* feat: add api version to configuration response

* chore: add analytics test

* chore: generate docs

* feat: use separate tokens based on environment

* chore: add cron schedule

* feat: add support for analytics source

* chore: remove repeated org repo

* feat: add org name to event details

* feat: add support for tracking host

* Feat: Forgot Password (#742)

* add verification repo

* merge main

* Add password reset email notification

* Add integration tests

* update email template

* set subject on notifications

* Fix: Template params

* Fix: correct url in email

* Update internal/email/templates/reset.password.html

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* Initialize reset token same line

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* fixed basic auth check (#759)

* app endpoint edit/update feature (#737)

* app endpoint edit/update feature

* updated apps and app-details

* added empty state img for projects

* tiny update

* review updates

* took out commented code

* fixed oboarding flow

* took out console.log

Co-authored-by: horlah <emmanuel.ainaj@gmail.com>

* Update source (#758)

* event delivery batch retry (#735)

* event delivery batch retry

* fix for endpoint error

* updated event deliveries

* added tab to url

* took out commented code

* Fix event deliveries and deliveries attempt page (#763)

* fix event deliveries and deliveries attempt page
fix event deliveries in event page
update text in create source form

* delete commented code

* fix: return EndpointError from SendNotification (#764)

* fix: add invite token to find user by token response (#765)

* fix: fix invite status update (#767)

* New Relic Integration (#739)

* New Relic Integration

* removed temporary fix in middleware.go

* Fixed redis instrumentation

* Fixed failing test

* fix subscription source fetching for outgoing group (#769)

* fix: fix subscription source fetching for outgoing group

* tests: fix tests

* tests: fix tests

* Fix: add subscription id on delete endpoint (#771)

* Added missing HttpTimeout field (#762)

* scope unique group names to organisation (#761)

* fix: scope unique group names to organisation

* tests: fix Test_CreateGroup

* fix outgoing group event type matching (#768)

* fix: fix outgoing group behaviour with * event type

* tests: add TestProcessEventCreated

* tests: fix TestProcessEventCreated

* tests: fix TestProcessEventCreated

* fix: fix badger subscriptionRepo

* Teams Ui (#712)

* teams ui

* teams ui

* invite team member integration

* team management flow

* took out projects from invite team member page

* took out creatProjectComponent

* change in adding filter to url

* updated css link

* added updates for teams

* fixed space issue on table

* dropdown fix

* Fix roles and scope groups API (#773)

* Fixed UI permissions

* Fixed failing tests

* Fixed Makefile

* fixed go lint

* User management (#766)

* added public components, completed accept invite flow

* forgot password flow

* reset password service

* added reset password

* updated reset password

* added account settings

* updated accept invite

* additional changes

* added button loader gif

* ui changes

* added accepted inite status, added forgot password on login

* Fixed Group Filters (#774)

* fix organisation invite template (#760)

* docs" fix docs

* fix: template

* fix: fix error messages

* add document_status filter to all find queries (#725)

* fix: add document_status to all find queries

* tests: fix tests

* remove mongo dsn

* tests: fix tests

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* fix organisation switching (#775)

delete organisation in localstorage on logout
refresh page on create new organisation to set that organisation
fix create source

* Fe bug fixes (#772)

* bug fixes for apps and subscruptions

* added loaders for app/event-delivery details

* fixed app details loader

* review fixes

* took out async

* Chore: clean up reset-password (#776)

* Remove email from request, make reset_password_token unique

* Fix CI tests

* ignore token json

* Build new app portal page (#770)

* build new app portal page

* enable delete and update subscription on app portal

* fix event deliveries clear filter

* build support with app portal sdk

* reset style source

* fix: use correct arguments for api key verifier (#779)

* validate app, endpoint & source when creating subscription (#778)

* fix: validate app & endpoint when creating subscription

* tests: add tests

* tests: fix tests

* fix: validate incoming group source when creating subscription

* tests: fix tests

* tests: fix tests

* fix: prevent organisation owner from being deactivated (#781)

* feat: set default event types when filter config is nil (#783)

* Add resend and cancel org invite endpoints (#782)

* Add resend and cancel invite endpoints

* Scope endpoints to invite resource

* Move website (#785)

* delete website

* move website out

* add toggle subscription status endpoint (#784)

* feat: add toggle subscription status endpoint

* feat: add toggle subscription status endpoint

* fix: add default config for subscription (#787)

* chore: change app portal link (#788)

* Revert "chore: change app portal link (#788)" (#790)

This reverts commit afdf3f2.

* Add Custom source: Github (#791)

* Added custom source: Github

* Fixed failing tests

* Removed unwanted line

* support github custom ingester (#792)

* Fixed a race condition that could occur when creating an application endpoint (#793)

* fix: fixed a race condition that could occur when creating an application endpoint

* chore: update tests

* bugfixes for v6 (#786)

* fixed project update error

* removed email from reset password

* copy changes, forgot password validation

* updated create subscription form

* added analytics

* user redirect to dashboard on accepting invite

* team invites updates

* additional changes

* moved analytics modal to middle

* moved analytics modal to middle

* updated analytics modal

* app delete feature

* updated delete app

* review updates

* review updates

* updated org switch

* feat: updated changelog

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* chore: prefer npm ci when installing nodejs dependecies (#803)

* Bump version to v0.6.0-rc.1

* chore: revert makefile ui build command

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* Refactor DB Layer (#780)

* feat: add db store file

* feat: refactor some groyp repo methods

* Refactor event repo, group repo tests

* group and event tests

* fix IsValidPointer, refactor organization repos (#794)

* feat: refactor config repo to use store (#798)

* feat: refactor user repo to use store (#797)

* refactor subscriptions repo (#795)

* feat: refactor subscriptions repo

* tests: fix test

* tests: fix test

* refactor applications repo (#799)

* feat: refactor app repo

* fix: fix call

* fix: remove ====

* tests: fix test

* refactor source repo (#796)

* feat: refactor source repo to use store

* fix: update find one pointer check

* chore: fix lint error

* fix: clean up db.go

Co-authored-by: ogbanugot <ogbanugot@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>

* chore: rename (#806)

* Fix: use redis client (#807)

* fix: use dereference slice (#808)

* Ui Fixes (#809)

* updated analytics modal

* fix for creating organisation

* fix fecth apps on create subscriptions oage

* fix: update sources

* updated create/update endpoint form

* updated app details for incoming projects

* updated create subscriptions for app portal

* updated create projects form

* removed console.log, updated project type

Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>
subomi added a commit that referenced this pull request Jun 28, 2022
* feat: update changelog

* Bump version to v0.6.0-rc

* Release 0.6.0-rc.1 (#802)

* Megre release-0.6 into main (#682)

* feat: update changelog

* Bump version to v0.6.0-rc

* Updated Projects API (#684)

* Update Groups API

* Deprecate DefaultGroup

* Update how integration tests are run

* Deprecate immune tests

* Change Duration to duration

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* Updated API to use defaults for both incoming and outgoing (#686)

* Update Groups API

* Deprecate DefaultGroup

* Update how integration tests are run

* Deprecate immune tests

* Updated API to use defaults for both incoming and outgoing

* Removed badger files

* Setup cron system (#691)

* Setup cron system

* removed retry events schedule

* add support for jwt authentication (#690)

* add support for jwt authentication

* feat: add support for blacklisting tokens and logout endpoint

* chore: update route

* add test for user repository

* add user service test

* add user integration test

* add jwt test

* add jwt realm test

* chore: fix failing test

* chore: add docs

* chore: refactor jwt config to be standalone

* update routes

* chore: add duration comment

* add ReplayAppEvent endpoint (#672)

* feat: add ReplayAppEvent endpoint

* tests: add tests

* fix: specify wantErr

* fix: change url to /events/{eventID/replay

* tests: fix testdb.SeedEvent call

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add crud for organisations (#685)

* feat: add crud for organisations

* feat: implement crud for organisations

* feat: implement crud for organisations in BadgerDB

* tests: add tests

* tests: add integration build tags

* tests: fix sorting

* tests: fix sorting

* tests: fix TestDeleteOrganisation

* tests: fix tests

* tests: fix tests

* tests: add tests for organisation_service.go

* tests: add organisation_integration_test.go

* tests: add integration build tag

* fix: add requireOrganisation to organisation sub route

* tests: fix tests
tests: add Test_UpdateOrganisation_EmptyOrganisationName & Test_CreateOrganisation_EmptyOrganisationName

* tests: fix tests

* fix: implement suggestions

* tests: fix urls

* fix initRealmChain call

* docs: regenerate docs

* Add missing comma to convoy.json.example (#700)

* Generic Mailers Setup (#707)

* Refactored mails

* Removed test line

* Removed hardcoded prefix

* Enhancement: Refactor to use asynq queues (#704)

* Feat: Refactor to use asynq queues

* Add retry mechanism, clean up

* Fix CI lint

* Fix: parse redis url

* Fix: redis dsn in client test

* Add queue prometheus metrics

* Chore: redis address in queue options

* Chore: clean up consumer API

* chore: add err checks

Co-authored-by: Raymond Tukpe <rtukpe@gmail.com>

* Add subscriptions and sources (#683)

* feat: add subscription resource

* feat:m add subsciption repo tests

* Merge branch 'main' of https://github.com/frain-dev/convoy into raymond/feat/add-subscriptions

* feat: update subscription

* chore: remove endpoint events

* feat: update subscription schema and model

* feat: use noemalised data modelling

* feat: test outgoing event flow end to end

* chore: add project/group type validation

* complete UI rebuild (#681)

* Ingestion API (#688)

* Setup Ingestion API

* Remove unnecessary line

* check source type is HTTP before proceeding

* feat: fix flow for incoming and outgoing events

* Update process event delivery tests (#694)

* chore: update process event delivery tests

* chore: fix CI lint

* chore: remove badger tests

* chore: fix group repo tests

* chore: update event delivery tests

* chore: fix retry event delivery tests

* chore: update FillGroupsStatistics and ForceRetryEventDeliveries tests

* chore: add integration tag build directive

* chore: fix integration tests

* chore: implement PR feedback

* chore: rename tests

* Update subscription tests (#699)

* chore: add LoadSubscriptionsPaged tests

* feat: update mongodb indexes

* chore: added create and update scubscription tests

* chore: add delete scubscription tests

* Add subscription integration tests (#701)

* chore: add update and delete subscription tests

* chore: add fetch all subscriptions test

* Emmanuel/feature/new project structure (#689)

* complete UI rebuild

* connect apis for source

* updated app and events for v2

* events/apps integration for v2 (#695)

* events/apps integration for v2

* additional updates for app/events v2

* additional updates

* additional ui updates for apps v2

* projects integration v2

* additional ui updates for v2

* Update projects page (#702)

* show project type on projects page

* undo style link

* added copies for tooltips

* updated copies for create projects

* updated create app component

* updated create projects

* projects integration v2 (#696)

* projects integration v2

* additional ui updates for v2

* Update projects page (#702)

* show project type on projects page

* undo style link

* added copies for tooltips

* updated copies for create projects

* updated create app component

* updated create projects

* add spaces, 🥺

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>

* update on new app endpoint

* additional fixes for apps

* fixed events input focus

* took out event required tag

* Subscriptions UI (#705)

* build subscriptions and create subscrips
move project id to private service level

* build subscriptions details

* commit fix 1

* conflict fix

* clean up

* fixed create project json structure

* build settings page (#706)

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>

Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* chore: remove extra subrouter

* Merge main (#708)

* Setup cron system (#691)

* Setup cron system

* removed retry events schedule

* add support for jwt authentication (#690)

* add support for jwt authentication

* feat: add support for blacklisting tokens and logout endpoint

* chore: update route

* add test for user repository

* add user service test

* add user integration test

* add jwt test

* add jwt realm test

* chore: fix failing test

* chore: add docs

* chore: refactor jwt config to be standalone

* update routes

* chore: add duration comment

* add ReplayAppEvent endpoint (#672)

* feat: add ReplayAppEvent endpoint

* tests: add tests

* fix: specify wantErr

* fix: change url to /events/{eventID/replay

* tests: fix testdb.SeedEvent call

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add crud for organisations (#685)

* feat: add crud for organisations

* feat: implement crud for organisations

* feat: implement crud for organisations in BadgerDB

* tests: add tests

* tests: add integration build tags

* tests: fix sorting

* tests: fix sorting

* tests: fix TestDeleteOrganisation

* tests: fix tests

* tests: fix tests

* tests: add tests for organisation_service.go

* tests: add organisation_integration_test.go

* tests: add integration build tag

* fix: add requireOrganisation to organisation sub route

* tests: fix tests
tests: add Test_UpdateOrganisation_EmptyOrganisationName & Test_CreateOrganisation_EmptyOrganisationName

* tests: fix tests

* fix: implement suggestions

* tests: fix urls

* fix initRealmChain call

* docs: regenerate docs

* Add missing comma to convoy.json.example (#700)

* chore: fixed tests and build

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>

* Update date and time filters (#709)

* Update styles source (#710)

* Update date and time filters

* update style source

* chore: merge main into subscripions branch

* chore: delete org tests

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>

* Enhancement: Asynq scheduler (#711)

* Add asynq scheduler

* Fix typo: ScheduleQueue

* stop scheduler consumer

* Combine task and task handler registration

* Tie Users into organisations (#697)

* feat: implement organisation member repository

* feat: add metadata to auth.AuthenticatedUser

* feat: add OrganisationInviteRepository

* feat: add OrganisationMemberService & OrganisationInviteService

* feat: add ErrEmptyBody

* feat: add organisation invite handlers

* tests: add tests for organisation_invite.go & organisation_member.go

* fix: fix badger & orgMemberRepo

* fix: fix badger

* fix: initialise new repo

* fix: fix organisation_service_test.go

* tests: fix tests

* tests: fix tests

* tests: fix auth header

* tests: fix OrganisationIntegrationTestSuite

* tests: fix TestDeleteOrganisationInvite

* tests: add organisation_member_service_test.go

* fix: split ProcessOrganisationMemberInvite

* tests: add more test cases to TestOrganisationInviteService_AcceptOrganisationMemberInvite

* tests: add more test cases to TestOrganisationInviteService_AcceptOrganisationMemberInvite

* fix: add organisationID param

* fix: add organisation member routes

* fix: seed superuser member for organisation owner

* fix: fix doc

* tests: add organisation_member_integration_test.go

* fix: pass orgMemberRepo

* fix: add pagination middleware to GetOrganisationMembers route

* fix: add organisation_invite_integration_test.go

* docs: fix docs

* docs: fix owner_id json tag

* fix: fix app queue param

* tests: fix tests

* fix: add unique email index for UserCollection

* tests: seed organisation members

* tests: panic on db connect error

* tests: fix tests

* tests: fix badger & DeleteOrganisationMember calls

* tests: fix tests

* fix: add LoadUserOrganisationsPaged

* fix: fix LoadUserOrganisationsPaged pipleine

* tests: fix Test_GetOrganisations

* fix: require only token to process organisation invite

* tests: increase TestOrganisationInviteService_ProcessOrganisationMemberInvite coverage

* fix: validate new user

* fix: move process invite route to ui

* docs: define Organisation tag

* feat: add invite expiry

* tests: fix tests

* Fixed Dockerfile (#722)

* Update events and event deliveries payload (#720)

* feat: add app metadata when fetching applications

* feat: add metadata fields to event deliveries endpoint

* chore: update tests

* auth integration (#716)

* auth integration

* updates on organisation dropdwon

* fixed http service bug

* fixed http service bug

* fix filters in events and event deliveries (#718)

* fix filters in events and event deliveries

* small touches

* fix style source

* fix all loaders in project page (#724)

* Organisation settings ui (#719)

* auth integration

* organisations ui

* organisations ui

* updates on organisation dropdwon

* updated settings page

* fixed http service bug

* fixed http service bug

* took out billing

* added delete organisation

* added delete modal

* chore: deprecate require auth (#728)

* add user settings endpoints (#723)

* feat: add user settings endpoints

* chore: add user repository update test

* chore: add user service test

* chore: add user integration test

* chore: add docs

* feat: add user exists endpoint

* Fixed ui build script (#730)

* integrate email sender with organisation invite (#717)

* feat: add invite email sending logic

* feat: add organisation.invite.html

* feat:
- add TemplateName type
- add more fields to Notification

* feat:
- add requireBaseUrl to /organisations route
- use getUserFromContext

* fix: move emailNotificationSender into preRun

* feat: send invite email in new goroutine

* feat: add notification task

* feat: add notification task

* tests: fix tests

* refactor ui routes  (#733)

* refactor ui routes

* add user routes

* chore: fix failing test

* chore: remove unused middleware for now

* feat: add support for finding user by invite token

* chore: remove user exists endpoint

* chore: generate docs

* chore: refactor user routes

* chore: generate docs

* Add subscription metadata (#738)

* feat: add subscription metadata

* feat: add metadata fields to event deliery

* chore: remove useless internal function

* feat: fix ingester event flow (#744)

* fix: return correct error message for duplicate group name (#741)

* Chore: remove example scheduler task (#745)

* remove example scheduler task

* Remove unwanted lines

* Fix project creation onboarding (#726)

* method for closing subscripton modal

* add create subscription to project onboarding

* update flow

* connect project onboarding

* fix project onboarding flow

* update private services url

* fix: source url (#747)

* Fix update group reosurce and group service tests (#746)

* feat: fix update group and service tests

* feat: config is not required when creating a new project

* patch: show app event count (#748)

* Implement delete project (UI) (#749)

* delete project
update project onboarding

* fix style source

* updated subscriptions (#731)

* updated subscriptions

* updates on subscriptions

* made subscription configs optional

* review updates

* tiny fixes

* undo angular.json changes

Co-authored-by: horlah <emmanuel.ainaj@gmail.com>

* Enhancement: Alphanumeric secrets (#751)

* Update GenerateRandomString

* Add comments

* Fix verifier config (#752)

* prevent nil source verifier

* changed ApiKey field names

* apply validation to updatesource

* fix: return correct error message for duplicate group name (#753)

* link groups to organisations (#740)

* feat: link groups to organisations

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* fix:
- move security routes into ui
- require organisation membership in order to create api key for a group
- fix tests

* fix:
- fix security_integration_test.go
- add orgID to SeedDefaultGroup

* tests: fix tests

* tests: fix tests

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* chore: add metadata to get one subscription (#757)

* add tests for security logic change (#756)

* tests: increase coverage

* fix: call requireGroup middleware before requirePermission

* doc: add doc duplicate

* fix:
- check GroupID in Test_CreateAppPortalAPIKey
- add a descriptor to duplicate doc

* fix: move key generation logic into SeedAPIKey

* test: add Test_CreateAppPortalAPIKey_AppDoesNotBelongToGroup

* fetch organisation member user info (#729)

* feat: fetch organisation member user info

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* fix: unify loop

* tests: defer closeFn

* update subscriptions list (#755)

* update subscriptions list

* build update update subscription

* Change "base_url" to "host" (#754)

* feat: change "base_url" to "host"

* chore: force commit

* chore: update other places

* chore: rename context function names

* chore: fix typo

* add fetch pending invites api (#736)

* feat: add fetch pending invites api

* feat: add fetch pending invites api

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add support for analytics (#698)

* feat: add support for analytics

* feat: add support for configuration resource

* chore: remove unused import

* chore: add cron for tracking analytcis

* feat: add config repository test

* chore: add configuration service test

* chore: add configuration integration test

* feat: add api version to configuration response

* chore: add analytics test

* chore: generate docs

* feat: use separate tokens based on environment

* chore: add cron schedule

* feat: add support for analytics source

* chore: remove repeated org repo

* feat: add org name to event details

* feat: add support for tracking host

* Feat: Forgot Password (#742)

* add verification repo

* merge main

* Add password reset email notification

* Add integration tests

* update email template

* set subject on notifications

* Fix: Template params

* Fix: correct url in email

* Update internal/email/templates/reset.password.html

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* Initialize reset token same line

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* fixed basic auth check (#759)

* app endpoint edit/update feature (#737)

* app endpoint edit/update feature

* updated apps and app-details

* added empty state img for projects

* tiny update

* review updates

* took out commented code

* fixed oboarding flow

* took out console.log

Co-authored-by: horlah <emmanuel.ainaj@gmail.com>

* Update source (#758)

* event delivery batch retry (#735)

* event delivery batch retry

* fix for endpoint error

* updated event deliveries

* added tab to url

* took out commented code

* Fix event deliveries and deliveries attempt page (#763)

* fix event deliveries and deliveries attempt page
fix event deliveries in event page
update text in create source form

* delete commented code

* fix: return EndpointError from SendNotification (#764)

* fix: add invite token to find user by token response (#765)

* fix: fix invite status update (#767)

* New Relic Integration (#739)

* New Relic Integration

* removed temporary fix in middleware.go

* Fixed redis instrumentation

* Fixed failing test

* fix subscription source fetching for outgoing group (#769)

* fix: fix subscription source fetching for outgoing group

* tests: fix tests

* tests: fix tests

* Fix: add subscription id on delete endpoint (#771)

* Added missing HttpTimeout field (#762)

* scope unique group names to organisation (#761)

* fix: scope unique group names to organisation

* tests: fix Test_CreateGroup

* fix outgoing group event type matching (#768)

* fix: fix outgoing group behaviour with * event type

* tests: add TestProcessEventCreated

* tests: fix TestProcessEventCreated

* tests: fix TestProcessEventCreated

* fix: fix badger subscriptionRepo

* Teams Ui (#712)

* teams ui

* teams ui

* invite team member integration

* team management flow

* took out projects from invite team member page

* took out creatProjectComponent

* change in adding filter to url

* updated css link

* added updates for teams

* fixed space issue on table

* dropdown fix

* Fix roles and scope groups API (#773)

* Fixed UI permissions

* Fixed failing tests

* Fixed Makefile

* fixed go lint

* User management (#766)

* added public components, completed accept invite flow

* forgot password flow

* reset password service

* added reset password

* updated reset password

* added account settings

* updated accept invite

* additional changes

* added button loader gif

* ui changes

* added accepted inite status, added forgot password on login

* Fixed Group Filters (#774)

* fix organisation invite template (#760)

* docs" fix docs

* fix: template

* fix: fix error messages

* add document_status filter to all find queries (#725)

* fix: add document_status to all find queries

* tests: fix tests

* remove mongo dsn

* tests: fix tests

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* fix organisation switching (#775)

delete organisation in localstorage on logout
refresh page on create new organisation to set that organisation
fix create source

* Fe bug fixes (#772)

* bug fixes for apps and subscruptions

* added loaders for app/event-delivery details

* fixed app details loader

* review fixes

* took out async

* Chore: clean up reset-password (#776)

* Remove email from request, make reset_password_token unique

* Fix CI tests

* ignore token json

* Build new app portal page (#770)

* build new app portal page

* enable delete and update subscription on app portal

* fix event deliveries clear filter

* build support with app portal sdk

* reset style source

* fix: use correct arguments for api key verifier (#779)

* validate app, endpoint & source when creating subscription (#778)

* fix: validate app & endpoint when creating subscription

* tests: add tests

* tests: fix tests

* fix: validate incoming group source when creating subscription

* tests: fix tests

* tests: fix tests

* fix: prevent organisation owner from being deactivated (#781)

* feat: set default event types when filter config is nil (#783)

* Add resend and cancel org invite endpoints (#782)

* Add resend and cancel invite endpoints

* Scope endpoints to invite resource

* Move website (#785)

* delete website

* move website out

* add toggle subscription status endpoint (#784)

* feat: add toggle subscription status endpoint

* feat: add toggle subscription status endpoint

* fix: add default config for subscription (#787)

* chore: change app portal link (#788)

* Revert "chore: change app portal link (#788)" (#790)

This reverts commit afdf3f2.

* Add Custom source: Github (#791)

* Added custom source: Github

* Fixed failing tests

* Removed unwanted line

* support github custom ingester (#792)

* Fixed a race condition that could occur when creating an application endpoint (#793)

* fix: fixed a race condition that could occur when creating an application endpoint

* chore: update tests

* bugfixes for v6 (#786)

* fixed project update error

* removed email from reset password

* copy changes, forgot password validation

* updated create subscription form

* added analytics

* user redirect to dashboard on accepting invite

* team invites updates

* additional changes

* moved analytics modal to middle

* moved analytics modal to middle

* updated analytics modal

* app delete feature

* updated delete app

* review updates

* review updates

* updated org switch

* feat: updated changelog

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* chore: prefer npm ci when installing nodejs dependecies (#803)

* Bump version to v0.6.0-rc.1

* chore: revert makefile ui build command

* Update release branch v0.6 (#810)

* chore: update readme with latest image (#805)

* Merge Release 0.6 into main (#804)

* feat: update changelog

* Bump version to v0.6.0-rc

* Release 0.6.0-rc.1 (#802)

* Megre release-0.6 into main (#682)

* feat: update changelog

* Bump version to v0.6.0-rc

* Updated Projects API (#684)

* Update Groups API

* Deprecate DefaultGroup

* Update how integration tests are run

* Deprecate immune tests

* Change Duration to duration

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* Updated API to use defaults for both incoming and outgoing (#686)

* Update Groups API

* Deprecate DefaultGroup

* Update how integration tests are run

* Deprecate immune tests

* Updated API to use defaults for both incoming and outgoing

* Removed badger files

* Setup cron system (#691)

* Setup cron system

* removed retry events schedule

* add support for jwt authentication (#690)

* add support for jwt authentication

* feat: add support for blacklisting tokens and logout endpoint

* chore: update route

* add test for user repository

* add user service test

* add user integration test

* add jwt test

* add jwt realm test

* chore: fix failing test

* chore: add docs

* chore: refactor jwt config to be standalone

* update routes

* chore: add duration comment

* add ReplayAppEvent endpoint (#672)

* feat: add ReplayAppEvent endpoint

* tests: add tests

* fix: specify wantErr

* fix: change url to /events/{eventID/replay

* tests: fix testdb.SeedEvent call

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add crud for organisations (#685)

* feat: add crud for organisations

* feat: implement crud for organisations

* feat: implement crud for organisations in BadgerDB

* tests: add tests

* tests: add integration build tags

* tests: fix sorting

* tests: fix sorting

* tests: fix TestDeleteOrganisation

* tests: fix tests

* tests: fix tests

* tests: add tests for organisation_service.go

* tests: add organisation_integration_test.go

* tests: add integration build tag

* fix: add requireOrganisation to organisation sub route

* tests: fix tests
tests: add Test_UpdateOrganisation_EmptyOrganisationName & Test_CreateOrganisation_EmptyOrganisationName

* tests: fix tests

* fix: implement suggestions

* tests: fix urls

* fix initRealmChain call

* docs: regenerate docs

* Add missing comma to convoy.json.example (#700)

* Generic Mailers Setup (#707)

* Refactored mails

* Removed test line

* Removed hardcoded prefix

* Enhancement: Refactor to use asynq queues (#704)

* Feat: Refactor to use asynq queues

* Add retry mechanism, clean up

* Fix CI lint

* Fix: parse redis url

* Fix: redis dsn in client test

* Add queue prometheus metrics

* Chore: redis address in queue options

* Chore: clean up consumer API

* chore: add err checks

Co-authored-by: Raymond Tukpe <rtukpe@gmail.com>

* Add subscriptions and sources (#683)

* feat: add subscription resource

* feat:m add subsciption repo tests

* Merge branch 'main' of https://github.com/frain-dev/convoy into raymond/feat/add-subscriptions

* feat: update subscription

* chore: remove endpoint events

* feat: update subscription schema and model

* feat: use noemalised data modelling

* feat: test outgoing event flow end to end

* chore: add project/group type validation

* complete UI rebuild (#681)

* Ingestion API (#688)

* Setup Ingestion API

* Remove unnecessary line

* check source type is HTTP before proceeding

* feat: fix flow for incoming and outgoing events

* Update process event delivery tests (#694)

* chore: update process event delivery tests

* chore: fix CI lint

* chore: remove badger tests

* chore: fix group repo tests

* chore: update event delivery tests

* chore: fix retry event delivery tests

* chore: update FillGroupsStatistics and ForceRetryEventDeliveries tests

* chore: add integration tag build directive

* chore: fix integration tests

* chore: implement PR feedback

* chore: rename tests

* Update subscription tests (#699)

* chore: add LoadSubscriptionsPaged tests

* feat: update mongodb indexes

* chore: added create and update scubscription tests

* chore: add delete scubscription tests

* Add subscription integration tests (#701)

* chore: add update and delete subscription tests

* chore: add fetch all subscriptions test

* Emmanuel/feature/new project structure (#689)

* complete UI rebuild

* connect apis for source

* updated app and events for v2

* events/apps integration for v2 (#695)

* events/apps integration for v2

* additional updates for app/events v2

* additional updates

* additional ui updates for apps v2

* projects integration v2

* additional ui updates for v2

* Update projects page (#702)

* show project type on projects page

* undo style link

* added copies for tooltips

* updated copies for create projects

* updated create app component

* updated create projects

* projects integration v2 (#696)

* projects integration v2

* additional ui updates for v2

* Update projects page (#702)

* show project type on projects page

* undo style link

* added copies for tooltips

* updated copies for create projects

* updated create app component

* updated create projects

* add spaces, 🥺

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>

* update on new app endpoint

* additional fixes for apps

* fixed events input focus

* took out event required tag

* Subscriptions UI (#705)

* build subscriptions and create subscrips
move project id to private service level

* build subscriptions details

* commit fix 1

* conflict fix

* clean up

* fixed create project json structure

* build settings page (#706)

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>

Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* chore: remove extra subrouter

* Merge main (#708)

* Setup cron system (#691)

* Setup cron system

* removed retry events schedule

* add support for jwt authentication (#690)

* add support for jwt authentication

* feat: add support for blacklisting tokens and logout endpoint

* chore: update route

* add test for user repository

* add user service test

* add user integration test

* add jwt test

* add jwt realm test

* chore: fix failing test

* chore: add docs

* chore: refactor jwt config to be standalone

* update routes

* chore: add duration comment

* add ReplayAppEvent endpoint (#672)

* feat: add ReplayAppEvent endpoint

* tests: add tests

* fix: specify wantErr

* fix: change url to /events/{eventID/replay

* tests: fix testdb.SeedEvent call

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add crud for organisations (#685)

* feat: add crud for organisations

* feat: implement crud for organisations

* feat: implement crud for organisations in BadgerDB

* tests: add tests

* tests: add integration build tags

* tests: fix sorting

* tests: fix sorting

* tests: fix TestDeleteOrganisation

* tests: fix tests

* tests: fix tests

* tests: add tests for organisation_service.go

* tests: add organisation_integration_test.go

* tests: add integration build tag

* fix: add requireOrganisation to organisation sub route

* tests: fix tests
tests: add Test_UpdateOrganisation_EmptyOrganisationName & Test_CreateOrganisation_EmptyOrganisationName

* tests: fix tests

* fix: implement suggestions

* tests: fix urls

* fix initRealmChain call

* docs: regenerate docs

* Add missing comma to convoy.json.example (#700)

* chore: fixed tests and build

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>

* Update date and time filters (#709)

* Update styles source (#710)

* Update date and time filters

* update style source

* chore: merge main into subscripions branch

* chore: delete org tests

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>

* Enhancement: Asynq scheduler (#711)

* Add asynq scheduler

* Fix typo: ScheduleQueue

* stop scheduler consumer

* Combine task and task handler registration

* Tie Users into organisations (#697)

* feat: implement organisation member repository

* feat: add metadata to auth.AuthenticatedUser

* feat: add OrganisationInviteRepository

* feat: add OrganisationMemberService & OrganisationInviteService

* feat: add ErrEmptyBody

* feat: add organisation invite handlers

* tests: add tests for organisation_invite.go & organisation_member.go

* fix: fix badger & orgMemberRepo

* fix: fix badger

* fix: initialise new repo

* fix: fix organisation_service_test.go

* tests: fix tests

* tests: fix tests

* tests: fix auth header

* tests: fix OrganisationIntegrationTestSuite

* tests: fix TestDeleteOrganisationInvite

* tests: add organisation_member_service_test.go

* fix: split ProcessOrganisationMemberInvite

* tests: add more test cases to TestOrganisationInviteService_AcceptOrganisationMemberInvite

* tests: add more test cases to TestOrganisationInviteService_AcceptOrganisationMemberInvite

* fix: add organisationID param

* fix: add organisation member routes

* fix: seed superuser member for organisation owner

* fix: fix doc

* tests: add organisation_member_integration_test.go

* fix: pass orgMemberRepo

* fix: add pagination middleware to GetOrganisationMembers route

* fix: add organisation_invite_integration_test.go

* docs: fix docs

* docs: fix owner_id json tag

* fix: fix app queue param

* tests: fix tests

* fix: add unique email index for UserCollection

* tests: seed organisation members

* tests: panic on db connect error

* tests: fix tests

* tests: fix badger & DeleteOrganisationMember calls

* tests: fix tests

* fix: add LoadUserOrganisationsPaged

* fix: fix LoadUserOrganisationsPaged pipleine

* tests: fix Test_GetOrganisations

* fix: require only token to process organisation invite

* tests: increase TestOrganisationInviteService_ProcessOrganisationMemberInvite coverage

* fix: validate new user

* fix: move process invite route to ui

* docs: define Organisation tag

* feat: add invite expiry

* tests: fix tests

* Fixed Dockerfile (#722)

* Update events and event deliveries payload (#720)

* feat: add app metadata when fetching applications

* feat: add metadata fields to event deliveries endpoint

* chore: update tests

* auth integration (#716)

* auth integration

* updates on organisation dropdwon

* fixed http service bug

* fixed http service bug

* fix filters in events and event deliveries (#718)

* fix filters in events and event deliveries

* small touches

* fix style source

* fix all loaders in project page (#724)

* Organisation settings ui (#719)

* auth integration

* organisations ui

* organisations ui

* updates on organisation dropdwon

* updated settings page

* fixed http service bug

* fixed http service bug

* took out billing

* added delete organisation

* added delete modal

* chore: deprecate require auth (#728)

* add user settings endpoints (#723)

* feat: add user settings endpoints

* chore: add user repository update test

* chore: add user service test

* chore: add user integration test

* chore: add docs

* feat: add user exists endpoint

* Fixed ui build script (#730)

* integrate email sender with organisation invite (#717)

* feat: add invite email sending logic

* feat: add organisation.invite.html

* feat:
- add TemplateName type
- add more fields to Notification

* feat:
- add requireBaseUrl to /organisations route
- use getUserFromContext

* fix: move emailNotificationSender into preRun

* feat: send invite email in new goroutine

* feat: add notification task

* feat: add notification task

* tests: fix tests

* refactor ui routes  (#733)

* refactor ui routes

* add user routes

* chore: fix failing test

* chore: remove unused middleware for now

* feat: add support for finding user by invite token

* chore: remove user exists endpoint

* chore: generate docs

* chore: refactor user routes

* chore: generate docs

* Add subscription metadata (#738)

* feat: add subscription metadata

* feat: add metadata fields to event deliery

* chore: remove useless internal function

* feat: fix ingester event flow (#744)

* fix: return correct error message for duplicate group name (#741)

* Chore: remove example scheduler task (#745)

* remove example scheduler task

* Remove unwanted lines

* Fix project creation onboarding (#726)

* method for closing subscripton modal

* add create subscription to project onboarding

* update flow

* connect project onboarding

* fix project onboarding flow

* update private services url

* fix: source url (#747)

* Fix update group reosurce and group service tests (#746)

* feat: fix update group and service tests

* feat: config is not required when creating a new project

* patch: show app event count (#748)

* Implement delete project (UI) (#749)

* delete project
update project onboarding

* fix style source

* updated subscriptions (#731)

* updated subscriptions

* updates on subscriptions

* made subscription configs optional

* review updates

* tiny fixes

* undo angular.json changes

Co-authored-by: horlah <emmanuel.ainaj@gmail.com>

* Enhancement: Alphanumeric secrets (#751)

* Update GenerateRandomString

* Add comments

* Fix verifier config (#752)

* prevent nil source verifier

* changed ApiKey field names

* apply validation to updatesource

* fix: return correct error message for duplicate group name (#753)

* link groups to organisations (#740)

* feat: link groups to organisations

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* fix:
- move security routes into ui
- require organisation membership in order to create api key for a group
- fix tests

* fix:
- fix security_integration_test.go
- add orgID to SeedDefaultGroup

* tests: fix tests

* tests: fix tests

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* chore: add metadata to get one subscription (#757)

* add tests for security logic change (#756)

* tests: increase coverage

* fix: call requireGroup middleware before requirePermission

* doc: add doc duplicate

* fix:
- check GroupID in Test_CreateAppPortalAPIKey
- add a descriptor to duplicate doc

* fix: move key generation logic into SeedAPIKey

* test: add Test_CreateAppPortalAPIKey_AppDoesNotBelongToGroup

* fetch organisation member user info (#729)

* feat: fetch organisation member user info

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* fix: unify loop

* tests: defer closeFn

* update subscriptions list (#755)

* update subscriptions list

* build update update subscription

* Change "base_url" to "host" (#754)

* feat: change "base_url" to "host"

* chore: force commit

* chore: update other places

* chore: rename context function names

* chore: fix typo

* add fetch pending invites api (#736)

* feat: add fetch pending invites api

* feat: add fetch pending invites api

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add support for analytics (#698)

* feat: add support for analytics

* feat: add support for configuration resource

* chore: remove unused import

* chore: add cron for tracking analytcis

* feat: add config repository test

* chore: add configuration service test

* chore: add configuration integration test

* feat: add api version to configuration response

* chore: add analytics test

* chore: generate docs

* feat: use separate tokens based on environment

* chore: add cron schedule

* feat: add support for analytics source

* chore: remove repeated org repo

* feat: add org name to event details

* feat: add support for tracking host

* Feat: Forgot Password (#742)

* add verification repo

* merge main

* Add password reset email notification

* Add integration tests

* update email template

* set subject on notifications

* Fix: Template params

* Fix: correct url in email

* Update internal/email/templates/reset.password.html

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* Initialize reset token same line

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* fixed basic auth check (#759)

* app endpoint edit/update feature (#737)

* app endpoint edit/update feature

* updated apps and app-details

* added empty state img for projects

* tiny update

* review updates

* took out commented code

* fixed oboarding flow

* took out console.log

Co-authored-by: horlah <emmanuel.ainaj@gmail.com>

* Update source (#758)

* event delivery batch retry (#735)

* event delivery batch retry

* fix for endpoint error

* updated event deliveries

* added tab to url

* took out commented code

* Fix event deliveries and deliveries attempt page (#763)

* fix event deliveries and deliveries attempt page
fix event deliveries in event page
update text in create source form

* delete commented code

* fix: return EndpointError from SendNotification (#764)

* fix: add invite token to find user by token response (#765)

* fix: fix invite status update (#767)

* New Relic Integration (#739)

* New Relic Integration

* removed temporary fix in middleware.go

* Fixed redis instrumentation

* Fixed failing test

* fix subscription source fetching for outgoing group (#769)

* fix: fix subscription source fetching for outgoing group

* tests: fix tests

* tests: fix tests

* Fix: add subscription id on delete endpoint (#771)

* Added missing HttpTimeout field (#762)

* scope unique group names to organisation (#761)

* fix: scope unique group names to organisation

* tests: fix Test_CreateGroup

* fix outgoing group event type matching (#768)

* fix: fix outgoing group behaviour with * event type

* tests: add TestProcessEventCreated

* tests: fix TestProcessEventCreated

* tests: fix TestProcessEventCreated

* fix: fix badger subscriptionRepo

* Teams Ui (#712)

* teams ui

* teams ui

* invite team member integration

* team management flow

* took out projects from invite team member page

* took out creatProjectComponent

* change in adding filter to url

* updated css link

* added updates for teams

* fixed space issue on table

* dropdown fix

* Fix roles and scope groups API (#773)

* Fixed UI permissions

* Fixed failing tests

* Fixed Makefile

* fixed go lint

* User management (#766)

* added public components, completed accept invite flow

* forgot password flow

* reset password service

* added reset password

* updated reset password

* added account settings

* updated accept invite

* additional changes

* added button loader gif

* ui changes

* added accepted inite status, added forgot password on login

* Fixed Group Filters (#774)

* fix organisation invite template (#760)

* docs" fix docs

* fix: template

* fix: fix error messages

* add document_status filter to all find queries (#725)

* fix: add document_status to all find queries

* tests: fix tests

* remove mongo dsn

* tests: fix tests

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* fix organisation switching (#775)

delete organisation in localstorage on logout
refresh page on create new organisation to set that organisation
fix create source

* Fe bug fixes (#772)

* bug fixes for apps and subscruptions

* added loaders for app/event-delivery details

* fixed app details loader

* review fixes

* took out async

* Chore: clean up reset-password (#776)

* Remove email from request, make reset_password_token unique

* Fix CI tests

* ignore token json

* Build new app portal page (#770)

* build new app portal page

* enable delete and update subscription on app portal

* fix event deliveries clear filter

* build support with app portal sdk

* reset style source

* fix: use correct arguments for api key verifier (#779)

* validate app, endpoint & source when creating subscription (#778)

* fix: validate app & endpoint when creating subscription

* tests: add tests

* tests: fix tests

* fix: validate incoming group source when creating subscription

* tests: fix tests

* tests: fix tests

* fix: prevent organisation owner from being deactivated (#781)

* feat: set default event types when filter config is nil (#783)

* Add resend and cancel org invite endpoints (#782)

* Add resend and cancel invite endpoints

* Scope endpoints to invite resource

* Move website (#785)

* delete website

* move website out

* add toggle subscription status endpoint (#784)

* feat: add toggle subscription status endpoint

* feat: add toggle subscription status endpoint

* fix: add default config for subscription (#787)

* chore: change app portal link (#788)

* Revert "chore: change app portal link (#788)" (#790)

This reverts commit afdf3f2.

* Add Custom source: Github (#791)

* Added custom source: Github

* Fixed failing tests

* Removed unwanted line

* support github custom ingester (#792)

* Fixed a race condition that could occur when creating an application endpoint (#793)

* fix: fixed a race condition that could occur when creating an application endpoint

* chore: update tests

* bugfixes for v6 (#786)

* fixed project update error

* removed email from reset password

* copy changes, forgot password validation

* updated create subscription form

* added analytics

* user redirect to dashboard on accepting invite

* team invites updates

* additional changes

* moved analytics modal to middle

* moved analytics modal to middle

* updated analytics modal

* app delete feature

* updated delete app

* review updates

* review updates

* updated org switch

* feat: updated changelog

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* chore: prefer npm ci when installing nodejs dependecies (#803)

* Bump version to v0.6.0-rc.1

* chore: revert makefile ui build command

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* Refactor DB Layer (#780)

* feat: add db store file

* feat: refactor some groyp repo methods

* Refactor event repo, group repo tests

* group and event tests

* fix IsValidPointer, refactor organization repos (#794)

* feat: refactor config repo to use store (#798)

* feat: refactor user repo to use store (#797)

* refactor subscriptions repo (#795)

* feat: refactor subscriptions repo

* tests: fix test

* tests: fix test

* refactor applications repo (#799)

* feat: refactor app repo

* fix: fix call

* fix: remove ====

* tests: fix test

* refactor source repo (#796)

* feat: refactor source repo to use store

* fix: update find one pointer check

* chore: fix lint error

* fix: clean up db.go

Co-authored-by: ogbanugot <ogbanugot@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>

* chore: rename (#806)

* Fix: use redis client (#807)

* fix: use dereference slice (#808)

* Ui Fixes (#809)

* updated analytics modal

* fix for creating organisation

* fix fecth apps on create subscriptions oage

* fix: update sources

* updated create/update endpoint form

* updated app details for incoming projects

* updated create subscriptions for app portal

* updated create projects form

* removed console.log, updated project type

Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* Updated changelog for v0.6.0-rc.2

* Bump version to v0.6.0-rc.2

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>
jirevwe added a commit that referenced this pull request Jul 4, 2022
* Merge Release 0.6 into main (#811)

* feat: update changelog

* Bump version to v0.6.0-rc

* Release 0.6.0-rc.1 (#802)

* Megre release-0.6 into main (#682)

* feat: update changelog

* Bump version to v0.6.0-rc

* Updated Projects API (#684)

* Update Groups API

* Deprecate DefaultGroup

* Update how integration tests are run

* Deprecate immune tests

* Change Duration to duration

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* Updated API to use defaults for both incoming and outgoing (#686)

* Update Groups API

* Deprecate DefaultGroup

* Update how integration tests are run

* Deprecate immune tests

* Updated API to use defaults for both incoming and outgoing

* Removed badger files

* Setup cron system (#691)

* Setup cron system

* removed retry events schedule

* add support for jwt authentication (#690)

* add support for jwt authentication

* feat: add support for blacklisting tokens and logout endpoint

* chore: update route

* add test for user repository

* add user service test

* add user integration test

* add jwt test

* add jwt realm test

* chore: fix failing test

* chore: add docs

* chore: refactor jwt config to be standalone

* update routes

* chore: add duration comment

* add ReplayAppEvent endpoint (#672)

* feat: add ReplayAppEvent endpoint

* tests: add tests

* fix: specify wantErr

* fix: change url to /events/{eventID/replay

* tests: fix testdb.SeedEvent call

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add crud for organisations (#685)

* feat: add crud for organisations

* feat: implement crud for organisations

* feat: implement crud for organisations in BadgerDB

* tests: add tests

* tests: add integration build tags

* tests: fix sorting

* tests: fix sorting

* tests: fix TestDeleteOrganisation

* tests: fix tests

* tests: fix tests

* tests: add tests for organisation_service.go

* tests: add organisation_integration_test.go

* tests: add integration build tag

* fix: add requireOrganisation to organisation sub route

* tests: fix tests
tests: add Test_UpdateOrganisation_EmptyOrganisationName & Test_CreateOrganisation_EmptyOrganisationName

* tests: fix tests

* fix: implement suggestions

* tests: fix urls

* fix initRealmChain call

* docs: regenerate docs

* Add missing comma to convoy.json.example (#700)

* Generic Mailers Setup (#707)

* Refactored mails

* Removed test line

* Removed hardcoded prefix

* Enhancement: Refactor to use asynq queues (#704)

* Feat: Refactor to use asynq queues

* Add retry mechanism, clean up

* Fix CI lint

* Fix: parse redis url

* Fix: redis dsn in client test

* Add queue prometheus metrics

* Chore: redis address in queue options

* Chore: clean up consumer API

* chore: add err checks

Co-authored-by: Raymond Tukpe <rtukpe@gmail.com>

* Add subscriptions and sources (#683)

* feat: add subscription resource

* feat:m add subsciption repo tests

* Merge branch 'main' of https://github.com/frain-dev/convoy into raymond/feat/add-subscriptions

* feat: update subscription

* chore: remove endpoint events

* feat: update subscription schema and model

* feat: use noemalised data modelling

* feat: test outgoing event flow end to end

* chore: add project/group type validation

* complete UI rebuild (#681)

* Ingestion API (#688)

* Setup Ingestion API

* Remove unnecessary line

* check source type is HTTP before proceeding

* feat: fix flow for incoming and outgoing events

* Update process event delivery tests (#694)

* chore: update process event delivery tests

* chore: fix CI lint

* chore: remove badger tests

* chore: fix group repo tests

* chore: update event delivery tests

* chore: fix retry event delivery tests

* chore: update FillGroupsStatistics and ForceRetryEventDeliveries tests

* chore: add integration tag build directive

* chore: fix integration tests

* chore: implement PR feedback

* chore: rename tests

* Update subscription tests (#699)

* chore: add LoadSubscriptionsPaged tests

* feat: update mongodb indexes

* chore: added create and update scubscription tests

* chore: add delete scubscription tests

* Add subscription integration tests (#701)

* chore: add update and delete subscription tests

* chore: add fetch all subscriptions test

* Emmanuel/feature/new project structure (#689)

* complete UI rebuild

* connect apis for source

* updated app and events for v2

* events/apps integration for v2 (#695)

* events/apps integration for v2

* additional updates for app/events v2

* additional updates

* additional ui updates for apps v2

* projects integration v2

* additional ui updates for v2

* Update projects page (#702)

* show project type on projects page

* undo style link

* added copies for tooltips

* updated copies for create projects

* updated create app component

* updated create projects

* projects integration v2 (#696)

* projects integration v2

* additional ui updates for v2

* Update projects page (#702)

* show project type on projects page

* undo style link

* added copies for tooltips

* updated copies for create projects

* updated create app component

* updated create projects

* add spaces, 🥺

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>

* update on new app endpoint

* additional fixes for apps

* fixed events input focus

* took out event required tag

* Subscriptions UI (#705)

* build subscriptions and create subscrips
move project id to private service level

* build subscriptions details

* commit fix 1

* conflict fix

* clean up

* fixed create project json structure

* build settings page (#706)

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>

Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* chore: remove extra subrouter

* Merge main (#708)

* Setup cron system (#691)

* Setup cron system

* removed retry events schedule

* add support for jwt authentication (#690)

* add support for jwt authentication

* feat: add support for blacklisting tokens and logout endpoint

* chore: update route

* add test for user repository

* add user service test

* add user integration test

* add jwt test

* add jwt realm test

* chore: fix failing test

* chore: add docs

* chore: refactor jwt config to be standalone

* update routes

* chore: add duration comment

* add ReplayAppEvent endpoint (#672)

* feat: add ReplayAppEvent endpoint

* tests: add tests

* fix: specify wantErr

* fix: change url to /events/{eventID/replay

* tests: fix testdb.SeedEvent call

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add crud for organisations (#685)

* feat: add crud for organisations

* feat: implement crud for organisations

* feat: implement crud for organisations in BadgerDB

* tests: add tests

* tests: add integration build tags

* tests: fix sorting

* tests: fix sorting

* tests: fix TestDeleteOrganisation

* tests: fix tests

* tests: fix tests

* tests: add tests for organisation_service.go

* tests: add organisation_integration_test.go

* tests: add integration build tag

* fix: add requireOrganisation to organisation sub route

* tests: fix tests
tests: add Test_UpdateOrganisation_EmptyOrganisationName & Test_CreateOrganisation_EmptyOrganisationName

* tests: fix tests

* fix: implement suggestions

* tests: fix urls

* fix initRealmChain call

* docs: regenerate docs

* Add missing comma to convoy.json.example (#700)

* chore: fixed tests and build

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>

* Update date and time filters (#709)

* Update styles source (#710)

* Update date and time filters

* update style source

* chore: merge main into subscripions branch

* chore: delete org tests

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>

* Enhancement: Asynq scheduler (#711)

* Add asynq scheduler

* Fix typo: ScheduleQueue

* stop scheduler consumer

* Combine task and task handler registration

* Tie Users into organisations (#697)

* feat: implement organisation member repository

* feat: add metadata to auth.AuthenticatedUser

* feat: add OrganisationInviteRepository

* feat: add OrganisationMemberService & OrganisationInviteService

* feat: add ErrEmptyBody

* feat: add organisation invite handlers

* tests: add tests for organisation_invite.go & organisation_member.go

* fix: fix badger & orgMemberRepo

* fix: fix badger

* fix: initialise new repo

* fix: fix organisation_service_test.go

* tests: fix tests

* tests: fix tests

* tests: fix auth header

* tests: fix OrganisationIntegrationTestSuite

* tests: fix TestDeleteOrganisationInvite

* tests: add organisation_member_service_test.go

* fix: split ProcessOrganisationMemberInvite

* tests: add more test cases to TestOrganisationInviteService_AcceptOrganisationMemberInvite

* tests: add more test cases to TestOrganisationInviteService_AcceptOrganisationMemberInvite

* fix: add organisationID param

* fix: add organisation member routes

* fix: seed superuser member for organisation owner

* fix: fix doc

* tests: add organisation_member_integration_test.go

* fix: pass orgMemberRepo

* fix: add pagination middleware to GetOrganisationMembers route

* fix: add organisation_invite_integration_test.go

* docs: fix docs

* docs: fix owner_id json tag

* fix: fix app queue param

* tests: fix tests

* fix: add unique email index for UserCollection

* tests: seed organisation members

* tests: panic on db connect error

* tests: fix tests

* tests: fix badger & DeleteOrganisationMember calls

* tests: fix tests

* fix: add LoadUserOrganisationsPaged

* fix: fix LoadUserOrganisationsPaged pipleine

* tests: fix Test_GetOrganisations

* fix: require only token to process organisation invite

* tests: increase TestOrganisationInviteService_ProcessOrganisationMemberInvite coverage

* fix: validate new user

* fix: move process invite route to ui

* docs: define Organisation tag

* feat: add invite expiry

* tests: fix tests

* Fixed Dockerfile (#722)

* Update events and event deliveries payload (#720)

* feat: add app metadata when fetching applications

* feat: add metadata fields to event deliveries endpoint

* chore: update tests

* auth integration (#716)

* auth integration

* updates on organisation dropdwon

* fixed http service bug

* fixed http service bug

* fix filters in events and event deliveries (#718)

* fix filters in events and event deliveries

* small touches

* fix style source

* fix all loaders in project page (#724)

* Organisation settings ui (#719)

* auth integration

* organisations ui

* organisations ui

* updates on organisation dropdwon

* updated settings page

* fixed http service bug

* fixed http service bug

* took out billing

* added delete organisation

* added delete modal

* chore: deprecate require auth (#728)

* add user settings endpoints (#723)

* feat: add user settings endpoints

* chore: add user repository update test

* chore: add user service test

* chore: add user integration test

* chore: add docs

* feat: add user exists endpoint

* Fixed ui build script (#730)

* integrate email sender with organisation invite (#717)

* feat: add invite email sending logic

* feat: add organisation.invite.html

* feat:
- add TemplateName type
- add more fields to Notification

* feat:
- add requireBaseUrl to /organisations route
- use getUserFromContext

* fix: move emailNotificationSender into preRun

* feat: send invite email in new goroutine

* feat: add notification task

* feat: add notification task

* tests: fix tests

* refactor ui routes  (#733)

* refactor ui routes

* add user routes

* chore: fix failing test

* chore: remove unused middleware for now

* feat: add support for finding user by invite token

* chore: remove user exists endpoint

* chore: generate docs

* chore: refactor user routes

* chore: generate docs

* Add subscription metadata (#738)

* feat: add subscription metadata

* feat: add metadata fields to event deliery

* chore: remove useless internal function

* feat: fix ingester event flow (#744)

* fix: return correct error message for duplicate group name (#741)

* Chore: remove example scheduler task (#745)

* remove example scheduler task

* Remove unwanted lines

* Fix project creation onboarding (#726)

* method for closing subscripton modal

* add create subscription to project onboarding

* update flow

* connect project onboarding

* fix project onboarding flow

* update private services url

* fix: source url (#747)

* Fix update group reosurce and group service tests (#746)

* feat: fix update group and service tests

* feat: config is not required when creating a new project

* patch: show app event count (#748)

* Implement delete project (UI) (#749)

* delete project
update project onboarding

* fix style source

* updated subscriptions (#731)

* updated subscriptions

* updates on subscriptions

* made subscription configs optional

* review updates

* tiny fixes

* undo angular.json changes

Co-authored-by: horlah <emmanuel.ainaj@gmail.com>

* Enhancement: Alphanumeric secrets (#751)

* Update GenerateRandomString

* Add comments

* Fix verifier config (#752)

* prevent nil source verifier

* changed ApiKey field names

* apply validation to updatesource

* fix: return correct error message for duplicate group name (#753)

* link groups to organisations (#740)

* feat: link groups to organisations

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* fix:
- move security routes into ui
- require organisation membership in order to create api key for a group
- fix tests

* fix:
- fix security_integration_test.go
- add orgID to SeedDefaultGroup

* tests: fix tests

* tests: fix tests

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* chore: add metadata to get one subscription (#757)

* add tests for security logic change (#756)

* tests: increase coverage

* fix: call requireGroup middleware before requirePermission

* doc: add doc duplicate

* fix:
- check GroupID in Test_CreateAppPortalAPIKey
- add a descriptor to duplicate doc

* fix: move key generation logic into SeedAPIKey

* test: add Test_CreateAppPortalAPIKey_AppDoesNotBelongToGroup

* fetch organisation member user info (#729)

* feat: fetch organisation member user info

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* fix: unify loop

* tests: defer closeFn

* update subscriptions list (#755)

* update subscriptions list

* build update update subscription

* Change "base_url" to "host" (#754)

* feat: change "base_url" to "host"

* chore: force commit

* chore: update other places

* chore: rename context function names

* chore: fix typo

* add fetch pending invites api (#736)

* feat: add fetch pending invites api

* feat: add fetch pending invites api

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add support for analytics (#698)

* feat: add support for analytics

* feat: add support for configuration resource

* chore: remove unused import

* chore: add cron for tracking analytcis

* feat: add config repository test

* chore: add configuration service test

* chore: add configuration integration test

* feat: add api version to configuration response

* chore: add analytics test

* chore: generate docs

* feat: use separate tokens based on environment

* chore: add cron schedule

* feat: add support for analytics source

* chore: remove repeated org repo

* feat: add org name to event details

* feat: add support for tracking host

* Feat: Forgot Password (#742)

* add verification repo

* merge main

* Add password reset email notification

* Add integration tests

* update email template

* set subject on notifications

* Fix: Template params

* Fix: correct url in email

* Update internal/email/templates/reset.password.html

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* Initialize reset token same line

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* fixed basic auth check (#759)

* app endpoint edit/update feature (#737)

* app endpoint edit/update feature

* updated apps and app-details

* added empty state img for projects

* tiny update

* review updates

* took out commented code

* fixed oboarding flow

* took out console.log

Co-authored-by: horlah <emmanuel.ainaj@gmail.com>

* Update source (#758)

* event delivery batch retry (#735)

* event delivery batch retry

* fix for endpoint error

* updated event deliveries

* added tab to url

* took out commented code

* Fix event deliveries and deliveries attempt page (#763)

* fix event deliveries and deliveries attempt page
fix event deliveries in event page
update text in create source form

* delete commented code

* fix: return EndpointError from SendNotification (#764)

* fix: add invite token to find user by token response (#765)

* fix: fix invite status update (#767)

* New Relic Integration (#739)

* New Relic Integration

* removed temporary fix in middleware.go

* Fixed redis instrumentation

* Fixed failing test

* fix subscription source fetching for outgoing group (#769)

* fix: fix subscription source fetching for outgoing group

* tests: fix tests

* tests: fix tests

* Fix: add subscription id on delete endpoint (#771)

* Added missing HttpTimeout field (#762)

* scope unique group names to organisation (#761)

* fix: scope unique group names to organisation

* tests: fix Test_CreateGroup

* fix outgoing group event type matching (#768)

* fix: fix outgoing group behaviour with * event type

* tests: add TestProcessEventCreated

* tests: fix TestProcessEventCreated

* tests: fix TestProcessEventCreated

* fix: fix badger subscriptionRepo

* Teams Ui (#712)

* teams ui

* teams ui

* invite team member integration

* team management flow

* took out projects from invite team member page

* took out creatProjectComponent

* change in adding filter to url

* updated css link

* added updates for teams

* fixed space issue on table

* dropdown fix

* Fix roles and scope groups API (#773)

* Fixed UI permissions

* Fixed failing tests

* Fixed Makefile

* fixed go lint

* User management (#766)

* added public components, completed accept invite flow

* forgot password flow

* reset password service

* added reset password

* updated reset password

* added account settings

* updated accept invite

* additional changes

* added button loader gif

* ui changes

* added accepted inite status, added forgot password on login

* Fixed Group Filters (#774)

* fix organisation invite template (#760)

* docs" fix docs

* fix: template

* fix: fix error messages

* add document_status filter to all find queries (#725)

* fix: add document_status to all find queries

* tests: fix tests

* remove mongo dsn

* tests: fix tests

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* fix organisation switching (#775)

delete organisation in localstorage on logout
refresh page on create new organisation to set that organisation
fix create source

* Fe bug fixes (#772)

* bug fixes for apps and subscruptions

* added loaders for app/event-delivery details

* fixed app details loader

* review fixes

* took out async

* Chore: clean up reset-password (#776)

* Remove email from request, make reset_password_token unique

* Fix CI tests

* ignore token json

* Build new app portal page (#770)

* build new app portal page

* enable delete and update subscription on app portal

* fix event deliveries clear filter

* build support with app portal sdk

* reset style source

* fix: use correct arguments for api key verifier (#779)

* validate app, endpoint & source when creating subscription (#778)

* fix: validate app & endpoint when creating subscription

* tests: add tests

* tests: fix tests

* fix: validate incoming group source when creating subscription

* tests: fix tests

* tests: fix tests

* fix: prevent organisation owner from being deactivated (#781)

* feat: set default event types when filter config is nil (#783)

* Add resend and cancel org invite endpoints (#782)

* Add resend and cancel invite endpoints

* Scope endpoints to invite resource

* Move website (#785)

* delete website

* move website out

* add toggle subscription status endpoint (#784)

* feat: add toggle subscription status endpoint

* feat: add toggle subscription status endpoint

* fix: add default config for subscription (#787)

* chore: change app portal link (#788)

* Revert "chore: change app portal link (#788)" (#790)

This reverts commit afdf3f2b84508af8f4e0b58442a462f89407aff9.

* Add Custom source: Github (#791)

* Added custom source: Github

* Fixed failing tests

* Removed unwanted line

* support github custom ingester (#792)

* Fixed a race condition that could occur when creating an application endpoint (#793)

* fix: fixed a race condition that could occur when creating an application endpoint

* chore: update tests

* bugfixes for v6 (#786)

* fixed project update error

* removed email from reset password

* copy changes, forgot password validation

* updated create subscription form

* added analytics

* user redirect to dashboard on accepting invite

* team invites updates

* additional changes

* moved analytics modal to middle

* moved analytics modal to middle

* updated analytics modal

* app delete feature

* updated delete app

* review updates

* review updates

* updated org switch

* feat: updated changelog

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* chore: prefer npm ci when installing nodejs dependecies (#803)

* Bump version to v0.6.0-rc.1

* chore: revert makefile ui build command

* Update release branch v0.6 (#810)

* chore: update readme with latest image (#805)

* Merge Release 0.6 into main (#804)

* feat: update changelog

* Bump version to v0.6.0-rc

* Release 0.6.0-rc.1 (#802)

* Megre release-0.6 into main (#682)

* feat: update changelog

* Bump version to v0.6.0-rc

* Updated Projects API (#684)

* Update Groups API

* Deprecate DefaultGroup

* Update how integration tests are run

* Deprecate immune tests

* Change Duration to duration

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* Updated API to use defaults for both incoming and outgoing (#686)

* Update Groups API

* Deprecate DefaultGroup

* Update how integration tests are run

* Deprecate immune tests

* Updated API to use defaults for both incoming and outgoing

* Removed badger files

* Setup cron system (#691)

* Setup cron system

* removed retry events schedule

* add support for jwt authentication (#690)

* add support for jwt authentication

* feat: add support for blacklisting tokens and logout endpoint

* chore: update route

* add test for user repository

* add user service test

* add user integration test

* add jwt test

* add jwt realm test

* chore: fix failing test

* chore: add docs

* chore: refactor jwt config to be standalone

* update routes

* chore: add duration comment

* add ReplayAppEvent endpoint (#672)

* feat: add ReplayAppEvent endpoint

* tests: add tests

* fix: specify wantErr

* fix: change url to /events/{eventID/replay

* tests: fix testdb.SeedEvent call

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add crud for organisations (#685)

* feat: add crud for organisations

* feat: implement crud for organisations

* feat: implement crud for organisations in BadgerDB

* tests: add tests

* tests: add integration build tags

* tests: fix sorting

* tests: fix sorting

* tests: fix TestDeleteOrganisation

* tests: fix tests

* tests: fix tests

* tests: add tests for organisation_service.go

* tests: add organisation_integration_test.go

* tests: add integration build tag

* fix: add requireOrganisation to organisation sub route

* tests: fix tests
tests: add Test_UpdateOrganisation_EmptyOrganisationName & Test_CreateOrganisation_EmptyOrganisationName

* tests: fix tests

* fix: implement suggestions

* tests: fix urls

* fix initRealmChain call

* docs: regenerate docs

* Add missing comma to convoy.json.example (#700)

* Generic Mailers Setup (#707)

* Refactored mails

* Removed test line

* Removed hardcoded prefix

* Enhancement: Refactor to use asynq queues (#704)

* Feat: Refactor to use asynq queues

* Add retry mechanism, clean up

* Fix CI lint

* Fix: parse redis url

* Fix: redis dsn in client test

* Add queue prometheus metrics

* Chore: redis address in queue options

* Chore: clean up consumer API

* chore: add err checks

Co-authored-by: Raymond Tukpe <rtukpe@gmail.com>

* Add subscriptions and sources (#683)

* feat: add subscription resource

* feat:m add subsciption repo tests

* Merge branch 'main' of https://github.com/frain-dev/convoy into raymond/feat/add-subscriptions

* feat: update subscription

* chore: remove endpoint events

* feat: update subscription schema and model

* feat: use noemalised data modelling

* feat: test outgoing event flow end to end

* chore: add project/group type validation

* complete UI rebuild (#681)

* Ingestion API (#688)

* Setup Ingestion API

* Remove unnecessary line

* check source type is HTTP before proceeding

* feat: fix flow for incoming and outgoing events

* Update process event delivery tests (#694)

* chore: update process event delivery tests

* chore: fix CI lint

* chore: remove badger tests

* chore: fix group repo tests

* chore: update event delivery tests

* chore: fix retry event delivery tests

* chore: update FillGroupsStatistics and ForceRetryEventDeliveries tests

* chore: add integration tag build directive

* chore: fix integration tests

* chore: implement PR feedback

* chore: rename tests

* Update subscription tests (#699)

* chore: add LoadSubscriptionsPaged tests

* feat: update mongodb indexes

* chore: added create and update scubscription tests

* chore: add delete scubscription tests

* Add subscription integration tests (#701)

* chore: add update and delete subscription tests

* chore: add fetch all subscriptions test

* Emmanuel/feature/new project structure (#689)

* complete UI rebuild

* connect apis for source

* updated app and events for v2

* events/apps integration for v2 (#695)

* events/apps integration for v2

* additional updates for app/events v2

* additional updates

* additional ui updates for apps v2

* projects integration v2

* additional ui updates for v2

* Update projects page (#702)

* show project type on projects page

* undo style link

* added copies for tooltips

* updated copies for create projects

* updated create app component

* updated create projects

* projects integration v2 (#696)

* projects integration v2

* additional ui updates for v2

* Update projects page (#702)

* show project type on projects page

* undo style link

* added copies for tooltips

* updated copies for create projects

* updated create app component

* updated create projects

* add spaces, 🥺

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>

* update on new app endpoint

* additional fixes for apps

* fixed events input focus

* took out event required tag

* Subscriptions UI (#705)

* build subscriptions and create subscrips
move project id to private service level

* build subscriptions details

* commit fix 1

* conflict fix

* clean up

* fixed create project json structure

* build settings page (#706)

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>

Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* chore: remove extra subrouter

* Merge main (#708)

* Setup cron system (#691)

* Setup cron system

* removed retry events schedule

* add support for jwt authentication (#690)

* add support for jwt authentication

* feat: add support for blacklisting tokens and logout endpoint

* chore: update route

* add test for user repository

* add user service test

* add user integration test

* add jwt test

* add jwt realm test

* chore: fix failing test

* chore: add docs

* chore: refactor jwt config to be standalone

* update routes

* chore: add duration comment

* add ReplayAppEvent endpoint (#672)

* feat: add ReplayAppEvent endpoint

* tests: add tests

* fix: specify wantErr

* fix: change url to /events/{eventID/replay

* tests: fix testdb.SeedEvent call

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add crud for organisations (#685)

* feat: add crud for organisations

* feat: implement crud for organisations

* feat: implement crud for organisations in BadgerDB

* tests: add tests

* tests: add integration build tags

* tests: fix sorting

* tests: fix sorting

* tests: fix TestDeleteOrganisation

* tests: fix tests

* tests: fix tests

* tests: add tests for organisation_service.go

* tests: add organisation_integration_test.go

* tests: add integration build tag

* fix: add requireOrganisation to organisation sub route

* tests: fix tests
tests: add Test_UpdateOrganisation_EmptyOrganisationName & Test_CreateOrganisation_EmptyOrganisationName

* tests: fix tests

* fix: implement suggestions

* tests: fix urls

* fix initRealmChain call

* docs: regenerate docs

* Add missing comma to convoy.json.example (#700)

* chore: fixed tests and build

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>

* Update date and time filters (#709)

* Update styles source (#710)

* Update date and time filters

* update style source

* chore: merge main into subscripions branch

* chore: delete org tests

Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>

* Enhancement: Asynq scheduler (#711)

* Add asynq scheduler

* Fix typo: ScheduleQueue

* stop scheduler consumer

* Combine task and task handler registration

* Tie Users into organisations (#697)

* feat: implement organisation member repository

* feat: add metadata to auth.AuthenticatedUser

* feat: add OrganisationInviteRepository

* feat: add OrganisationMemberService & OrganisationInviteService

* feat: add ErrEmptyBody

* feat: add organisation invite handlers

* tests: add tests for organisation_invite.go & organisation_member.go

* fix: fix badger & orgMemberRepo

* fix: fix badger

* fix: initialise new repo

* fix: fix organisation_service_test.go

* tests: fix tests

* tests: fix tests

* tests: fix auth header

* tests: fix OrganisationIntegrationTestSuite

* tests: fix TestDeleteOrganisationInvite

* tests: add organisation_member_service_test.go

* fix: split ProcessOrganisationMemberInvite

* tests: add more test cases to TestOrganisationInviteService_AcceptOrganisationMemberInvite

* tests: add more test cases to TestOrganisationInviteService_AcceptOrganisationMemberInvite

* fix: add organisationID param

* fix: add organisation member routes

* fix: seed superuser member for organisation owner

* fix: fix doc

* tests: add organisation_member_integration_test.go

* fix: pass orgMemberRepo

* fix: add pagination middleware to GetOrganisationMembers route

* fix: add organisation_invite_integration_test.go

* docs: fix docs

* docs: fix owner_id json tag

* fix: fix app queue param

* tests: fix tests

* fix: add unique email index for UserCollection

* tests: seed organisation members

* tests: panic on db connect error

* tests: fix tests

* tests: fix badger & DeleteOrganisationMember calls

* tests: fix tests

* fix: add LoadUserOrganisationsPaged

* fix: fix LoadUserOrganisationsPaged pipleine

* tests: fix Test_GetOrganisations

* fix: require only token to process organisation invite

* tests: increase TestOrganisationInviteService_ProcessOrganisationMemberInvite coverage

* fix: validate new user

* fix: move process invite route to ui

* docs: define Organisation tag

* feat: add invite expiry

* tests: fix tests

* Fixed Dockerfile (#722)

* Update events and event deliveries payload (#720)

* feat: add app metadata when fetching applications

* feat: add metadata fields to event deliveries endpoint

* chore: update tests

* auth integration (#716)

* auth integration

* updates on organisation dropdwon

* fixed http service bug

* fixed http service bug

* fix filters in events and event deliveries (#718)

* fix filters in events and event deliveries

* small touches

* fix style source

* fix all loaders in project page (#724)

* Organisation settings ui (#719)

* auth integration

* organisations ui

* organisations ui

* updates on organisation dropdwon

* updated settings page

* fixed http service bug

* fixed http service bug

* took out billing

* added delete organisation

* added delete modal

* chore: deprecate require auth (#728)

* add user settings endpoints (#723)

* feat: add user settings endpoints

* chore: add user repository update test

* chore: add user service test

* chore: add user integration test

* chore: add docs

* feat: add user exists endpoint

* Fixed ui build script (#730)

* integrate email sender with organisation invite (#717)

* feat: add invite email sending logic

* feat: add organisation.invite.html

* feat:
- add TemplateName type
- add more fields to Notification

* feat:
- add requireBaseUrl to /organisations route
- use getUserFromContext

* fix: move emailNotificationSender into preRun

* feat: send invite email in new goroutine

* feat: add notification task

* feat: add notification task

* tests: fix tests

* refactor ui routes  (#733)

* refactor ui routes

* add user routes

* chore: fix failing test

* chore: remove unused middleware for now

* feat: add support for finding user by invite token

* chore: remove user exists endpoint

* chore: generate docs

* chore: refactor user routes

* chore: generate docs

* Add subscription metadata (#738)

* feat: add subscription metadata

* feat: add metadata fields to event deliery

* chore: remove useless internal function

* feat: fix ingester event flow (#744)

* fix: return correct error message for duplicate group name (#741)

* Chore: remove example scheduler task (#745)

* remove example scheduler task

* Remove unwanted lines

* Fix project creation onboarding (#726)

* method for closing subscripton modal

* add create subscription to project onboarding

* update flow

* connect project onboarding

* fix project onboarding flow

* update private services url

* fix: source url (#747)

* Fix update group reosurce and group service tests (#746)

* feat: fix update group and service tests

* feat: config is not required when creating a new project

* patch: show app event count (#748)

* Implement delete project (UI) (#749)

* delete project
update project onboarding

* fix style source

* updated subscriptions (#731)

* updated subscriptions

* updates on subscriptions

* made subscription configs optional

* review updates

* tiny fixes

* undo angular.json changes

Co-authored-by: horlah <emmanuel.ainaj@gmail.com>

* Enhancement: Alphanumeric secrets (#751)

* Update GenerateRandomString

* Add comments

* Fix verifier config (#752)

* prevent nil source verifier

* changed ApiKey field names

* apply validation to updatesource

* fix: return correct error message for duplicate group name (#753)

* link groups to organisations (#740)

* feat: link groups to organisations

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* fix:
- move security routes into ui
- require organisation membership in order to create api key for a group
- fix tests

* fix:
- fix security_integration_test.go
- add orgID to SeedDefaultGroup

* tests: fix tests

* tests: fix tests

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* chore: add metadata to get one subscription (#757)

* add tests for security logic change (#756)

* tests: increase coverage

* fix: call requireGroup middleware before requirePermission

* doc: add doc duplicate

* fix:
- check GroupID in Test_CreateAppPortalAPIKey
- add a descriptor to duplicate doc

* fix: move key generation logic into SeedAPIKey

* test: add Test_CreateAppPortalAPIKey_AppDoesNotBelongToGroup

* fetch organisation member user info (#729)

* feat: fetch organisation member user info

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* tests: fix tests

* fix: unify loop

* tests: defer closeFn

* update subscriptions list (#755)

* update subscriptions list

* build update update subscription

* Change "base_url" to "host" (#754)

* feat: change "base_url" to "host"

* chore: force commit

* chore: update other places

* chore: rename context function names

* chore: fix typo

* add fetch pending invites api (#736)

* feat: add fetch pending invites api

* feat: add fetch pending invites api

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* add support for analytics (#698)

* feat: add support for analytics

* feat: add support for configuration resource

* chore: remove unused import

* chore: add cron for tracking analytcis

* feat: add config repository test

* chore: add configuration service test

* chore: add configuration integration test

* feat: add api version to configuration response

* chore: add analytics test

* chore: generate docs

* feat: use separate tokens based on environment

* chore: add cron schedule

* feat: add support for analytics source

* chore: remove repeated org repo

* feat: add org name to event details

* feat: add support for tracking host

* Feat: Forgot Password (#742)

* add verification repo

* merge main

* Add password reset email notification

* Add integration tests

* update email template

* set subject on notifications

* Fix: Template params

* Fix: correct url in email

* Update internal/email/templates/reset.password.html

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* Initialize reset token same line

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>

* fixed basic auth check (#759)

* app endpoint edit/update feature (#737)

* app endpoint edit/update feature

* updated apps and app-details

* added empty state img for projects

* tiny update

* review updates

* took out commented code

* fixed oboarding flow

* took out console.log

Co-authored-by: horlah <emmanuel.ainaj@gmail.com>

* Update source (#758)

* event delivery batch retry (#735)

* event delivery batch retry

* fix for endpoint error

* updated event deliveries

* added tab to url

* took out commented code

* Fix event deliveries and deliveries attempt page (#763)

* fix event deliveries and deliveries attempt page
fix event deliveries in event page
update text in create source form

* delete commented code

* fix: return EndpointError from SendNotification (#764)

* fix: add invite token to find user by token response (#765)

* fix: fix invite status update (#767)

* New Relic Integration (#739)

* New Relic Integration

* removed temporary fix in middleware.go

* Fixed redis instrumentation

* Fixed failing test

* fix subscription source fetching for outgoing group (#769)

* fix: fix subscription source fetching for outgoing group

* tests: fix tests

* tests: fix tests

* Fix: add subscription id on delete endpoint (#771)

* Added missing HttpTimeout field (#762)

* scope unique group names to organisation (#761)

* fix: scope unique group names to organisation

* tests: fix Test_CreateGroup

* fix outgoing group event type matching (#768)

* fix: fix outgoing group behaviour with * event type

* tests: add TestProcessEventCreated

* tests: fix TestProcessEventCreated

* tests: fix TestProcessEventCreated

* fix: fix badger subscriptionRepo

* Teams Ui (#712)

* teams ui

* teams ui

* invite team member integration

* team management flow

* took out projects from invite team member page

* took out creatProjectComponent

* change in adding filter to url

* updated css link

* added updates for teams

* fixed space issue on table

* dropdown fix

* Fix roles and scope groups API (#773)

* Fixed UI permissions

* Fixed failing tests

* Fixed Makefile

* fixed go lint

* User management (#766)

* added public components, completed accept invite flow

* forgot password flow

* reset password service

* added reset password

* updated reset password

* added account settings

* updated accept invite

* additional changes

* added button loader gif

* ui changes

* added accepted inite status, added forgot password on login

* Fixed Group Filters (#774)

* fix organisation invite template (#760)

* docs" fix docs

* fix: template

* fix: fix error messages

* add document_status filter to all find queries (#725)

* fix: add document_status to all find queries

* tests: fix tests

* remove mongo dsn

* tests: fix tests

* tests: fix tests

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>

* fix organisation switching (#775)

delete organisation in localstorage on logout
refresh page on create new organisation to set that organisation
fix create source

* Fe bug fixes (#772)

* bug fixes for apps and subscruptions

* added loaders for app/event-delivery details

* fixed app details loader

* review fixes

* took out async

* Chore: clean up reset-password (#776)

* Remove email from request, make reset_password_token unique

* Fix CI tests

* ignore token json

* Build new app portal page (#770)

* build new app portal page

* enable delete and update subscription on app portal

* fix event deliveries clear filter

* build support with app portal sdk

* reset style source

* fix: use correct arguments for api key verifier (#779)

* validate app, endpoint & source when creating subscription (#778)

* fix: validate app & endpoint when creating subscription

* tests: add tests

* tests: fix tests

* fix: validate incoming group source when creating subscription

* tests: fix tests

* tests: fix tests

* fix: prevent organisation owner from being deactivated (#781)

* feat: set default event types when filter config is nil (#783)

* Add resend and cancel org invite endpoints (#782)

* Add resend and cancel invite endpoints

* Scope endpoints to invite resource

* Move website (#785)

* delete website

* move website out

* add toggle subscription status endpoint (#784)

* feat: add toggle subscription status endpoint

* feat: add toggle subscription status endpoint

* fix: add default config for subscription (#787)

* chore: change app portal link (#788)

* Revert "chore: change app portal link (#788)" (#790)

This reverts commit afdf3f2b84508af8f4e0b58442a462f89407aff9.

* Add Custom source: Github (#791)

* Added custom source: Github

* Fixed failing tests

* Removed unwanted line

* support github custom ingester (#792)

* Fixed a race condition that could occur when creating an application endpoint (#793)

* fix: fixed a race condition that could occur when creating an application endpoint

* chore: update tests

* bugfixes for v6 (#786)

* fixed project update error

* removed email from reset password

* copy changes, forgot password validation

* updated create subscription form

* added analytics

* user redirect to dashboard on accepting invite

* team invites updates

* additional changes

* moved analytics modal to middle

* moved analytics modal to middle

* updated analytics modal

* app delete feature

* updated delete app

* review updates

* review updates

* updated org switch

* feat: updated changelog

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* chore: prefer npm ci when installing nodejs dependecies (#803)

* Bump version to v0.6.0-rc.1

* chore: revert makefile ui build command

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* Refactor DB Layer (#780)

* feat: add db store file

* feat: refactor some groyp repo methods

* Refactor event repo, group repo tests

* group and event tests

* fix IsValidPointer, refactor organization repos (#794)

* feat: refactor config repo to use store (#798)

* feat: refactor user repo to use store (#797)

* refactor subscriptions repo (#795)

* feat: refactor subscriptions repo

* tests: fix test

* tests: fix test

* refactor applications repo (#799)

* feat: refactor app repo

* fix: fix call

* fix: remove ====

* tests: fix test

* refactor source repo (#796)

* feat: refactor source repo to use store

* fix: update find one pointer check

* chore: fix lint error

* fix: clean up db.go

Co-authored-by: ogbanugot <ogbanugot@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>

* chore: rename (#806)

* Fix: use redis client (#807)

* fix: use dereference slice (#808)

* Ui Fixes (#809)

* updated analytics modal

* fix for creating organisation

* fix fecth apps on create subscriptions oage

* fix: update sources

* updated create/update endpoint form

* updated app details for incoming projects

* updated create subscriptions for app portal

* updated create projects form

* removed console.log, updated project type

Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* Updated changelog for v0.6.0-rc.2

* Bump version to v0.6.0-rc.2

Co-authored-by: Subomi Oluwalana <subomioluwalana71@gmail.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>

* Enhancement: add cancelled status on org invite (#812)

* Enhancement: add cancelled status on org invite

* fix: add support for jwt env variables (#813)

* Add: digitalocean script (#815)

* Ui Bugfixes (#814)

* refactored services

* ui bugfixes

* updated delete modal

* ui bugfixes

* updated create project form

* updated forgot password

* Changed host to instance ID (#821)

* chore: change http error status (#822)

* fix analytics query (#825)

* fix: fix analytics query

* fix: add default filter

Co-authored-by: Raymond Tukpe <jirevwe@users.noreply.github.com>
Co-authored-by: Dotun Jolaoso <dotunjolaosho@gmail.com>
Co-authored-by: Daniel Oluojomu <danvixent@gmail.com>
Co-authored-by: Daniel Perrefort <djperrefort@pitt.edu>
Co-authored-by: Ogban Ugot <ogbanugot@gmail.com>
Co-authored-by: Emmanuel Aina <emmanuel.ainaj@gmail.com>
Co-authored-by: Pelumi Honey <pelumioni25@gmail.com>
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.

None yet

3 participants