Skip to content
This repository has been archived by the owner on Mar 12, 2024. It is now read-only.

Commit

Permalink
Feature/streamline new integrations (#292)
Browse files Browse the repository at this point in the history
* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Move discord

* Use standard var

* Better error handling

* Delete discord

* Move Sendgrid to app router

* Fix export

* Upgrade routes to return 400 on missing params

* Add status codes

* Check status returned

* Test settings getter

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Extract response types

* Use responseTypes

* Fix settings to use data response

* Early return if no apiKey

* Add error events

* Remove event logging

* Use request URL to pass to posthog

* Extract tracking

* Use tracker object

* Move to route

* Fix typo

* Create route groups

* Fix imports

* Delete layout.tsx

* Delete unused folder

* v2.0.0 (#277)

* Feature/posthog frontend (#242) (#262)

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Fix small grammar mistakes in the sys prompt (#263)

* Fix small grammar mistakes in the sys prompt

* Update getOpenAISummary.ts

* Create ghapp page redirect (#264)

* Update README.md Title (#265)

* Create scorecard.yml

* Change retention days from 5 to 7

* State that contribution is permisionless

* Add OSSF scorecardbadge (#268)

* Feature/finish api routes (#241)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Change export

* Fix export

* Fix export

* Upgrade routes to return 400 on missing params

* Add status codes

* Check status returned

* Test settings getter

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Extract response types

* Use responseTypes

* Fix settings to use data response

* Early return if no apiKey

* Add error events

* Remove event logging

* Use request URL to pass to posthog

* Extract tracking

* Use tracker object

* Move to route

* Fix typo

* Add missing params test

* Fix/v2.0.0 merge conflicts  (#278)

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Move discord

* Use standard var

* Better error handling

* Delete discord

* Move Sendgrid to app router

* Fix export

* Upgrade routes to return 400 on missing params

* Add status codes

* Check status returned

* Test settings getter

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Extract response types

* Use responseTypes

* Fix settings to use data response

* Early return if no apiKey

* Add error events

* Remove event logging

* Use request URL to pass to posthog

* Extract tracking

* Use tracker object

* Move to route

* Fix typo

* Create route groups

* Fix imports

* Delete layout.tsx

* Delete discord

* Use correct posthog

* Fix hover

* Update route.ts

* Delete getContext.ts

* delete unused folders

---------

Co-authored-by: Esteban Vargas <estebanvargas94@gmail.com>

* Update redirect.tsx

* Fix/remove conflicting route (#280)

* Update redirect.tsx

* Delete getContext.ts

* Remove discord

* Fix file

* Update redirect.tsx

* Fix posthog (#285)

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Move discord

* Use standard var

* Better error handling

* Delete discord

* Move Sendgrid to app router

* Fix export

* Upgrade routes to return 400 on missing params

* Add status codes

* Check status returned

* Test settings getter

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Extract response types

* Use responseTypes

* Fix settings to use data response

* Early return if no apiKey

* Add error events

* Remove event logging

* Use request URL to pass to posthog

* Extract tracking

* Use tracker object

* Move to route

* Fix typo

* Create route groups

* Fix imports

* Delete layout.tsx

* Update route.ts

* Update redirect.tsx

* Remove console logging

* Send to posthog

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Move discord

* Use standard var

* Better error handling

* Delete discord

* Move Sendgrid to app router

* Fix export

* Upgrade routes to return 400 on missing params

* Add status codes

* Check status returned

* Test settings getter

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Extract response types

* Use responseTypes

* Fix settings to use data response

* Early return if no apiKey

* Add error events

* Remove event logging

* Use request URL to pass to posthog

* Extract tracking

* Use tracker object

* Move to route

* Fix typo

* Create route groups

* Fix imports

* Delete layout.tsx

* Update route.ts

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Move discord

* Use standard var

* Better error handling

* Delete discord

* Move Sendgrid to app router

* Fix export

* Upgrade routes to return 400 on missing params

* Add status codes

* Check status returned

* Test settings getter

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Extract response types

* Use responseTypes

* Fix settings to use data response

* Early return if no apiKey

* Add error events

* Remove event logging

* Use request URL to pass to posthog

* Extract tracking

* Use tracker object

* Move to route

* Fix typo

* Create route groups

* Delete layout.tsx

* v2.0.0 (#277)

* Feature/posthog frontend (#242) (#262)

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Fix small grammar mistakes in the sys prompt (#263)

* Fix small grammar mistakes in the sys prompt

* Update getOpenAISummary.ts

* Create ghapp page redirect (#264)

* Update README.md Title (#265)

* Create scorecard.yml

* Change retention days from 5 to 7

* State that contribution is permisionless

* Add OSSF scorecardbadge (#268)

* Feature/finish api routes (#241)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Change export

* Fix export

* Fix export

* Upgrade routes to return 400 on missing params

* Add status codes

* Check status returned

* Test settings getter

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Extract response types

* Use responseTypes

* Fix settings to use data response

* Early return if no apiKey

* Add error events

* Remove event logging

* Use request URL to pass to posthog

* Extract tracking

* Use tracker object

* Move to route

* Fix typo

* Add missing params test

* Fix/v2.0.0 merge conflicts  (#278)

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Move discord

* Use standard var

* Better error handling

* Delete discord

* Move Sendgrid to app router

* Fix export

* Upgrade routes to return 400 on missing params

* Add status codes

* Check status returned

* Test settings getter

* Feature/posthog frontend (#242)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Frontend analytics

* Change export

* Fix export

* Fix export

* Feature/posthog backend (#243)

* Create param validator

* Move discord

* Move user settings getter to app router

* Use standard var

* move getAllPublicUserData to app router

* Better error handling

* Delete getAllData.ts

* Delete discord

* Throw errors

* Handle error throwing

* Move updateSettings to app router

* Update confluence.svg

* Configure jest

* Create settings.test.ts

* Create updateSettings.test.ts

* Add getting test

* Use generalized validator

* Move Stripe to app router

* Move Sendgrid to app router

* Move vscode to airtable Analytics to app router

* Create posthog.ts

* Add types, move to utils

* Capture posthog event

* Change export

* Fix export

* Fix export

* Check dev env

* Extract response types

* Use responseTypes

* Fix settings to use data response

* Early return if no apiKey

* Add error events

* Remove event logging

* Use request URL to pass to posthog

* Extract tracking

* Use tracker object

* Move to route

* Fix typo

* Create route groups

* Fix imports

* Delete layout.tsx

* Delete discord

* Use correct posthog

* Fix hover

* Update route.ts

* Delete getContext.ts

* delete unused folders

---------

Co-authored-by: Esteban Vargas <estebanvargas94@gmail.com>

* Fix/remove conflicting route (#280)

* Update redirect.tsx

* Delete getContext.ts

* Remove discord

* Fix file

* Update redirect.tsx

* Fix posthog (#285)

* REmove discord

* Extract service getter

* Use new service getter

* Add max on hover

* Remove amount to check value

* Rename values

* Check value instead of amount

* Allow GH username getter

* Use extracted func

---------

Co-authored-by: Esteban Vargas <estebanvargas94@gmail.com>
  • Loading branch information
EstebanDalelR and baristaGeek authored Sep 11, 2023
1 parent 63bcbbb commit 8ccb1c7
Show file tree
Hide file tree
Showing 7 changed files with 293 additions and 366 deletions.
218 changes: 76 additions & 142 deletions app/api/actions/github/route.ts
Original file line number Diff line number Diff line change
@@ -1,28 +1,24 @@
import { App } from "@octokit/app";
import executeRequest from "../../../../utils/db/azuredb";
import addActionCount from "../../../../utils/db/teams/addActionCount";

import getGitHub from "../../../../utils/actions/getGitHub";
import getJira from "../../../../utils/actions/getJira";
import getSlack from "../../../../utils/actions/getSlack";
import getNotion from "../../../../utils/actions/getNotion";
import getLinear from "../../../../utils/actions/getLinear";
import getConfluence from "../../../../utils/actions/getConfluence";
import getAsana from "../../../../utils/actions/getAsana";
import getOpenAISummary from "../../../../utils/actions/getOpenAISummary";

import countMarkdown from "../../../../utils/actions/markdownHelpers/count";
import generalMarkdownHelper from "../../../../utils/actions/markdownHelpers/helper";

import addActionLog from "../../../../utils/db/github/addActionLog";
import { missingParamsResponse } from "../../../../utils/api/responses";
import {
failedToFetchResponse,
missingParamsResponse,
} from "../../../../utils/api/responses";
import validateParams from "../../../../utils/api/validateParams";
import {
failedPosthogTracking,
missingParamsPosthogTracking,
successPosthogTracking,
} from "../../../../utils/api/posthogTracking";
import { NextResponse } from "next/server";
import getAllServices from "../../../../utils/actions/getAllServices";
const app = new App({
appId: process.env.GITHUB_APP_ID!,
privateKey: process.env.GITHUB_PRIVATE_KEY!,
Expand Down Expand Up @@ -62,54 +58,6 @@ export async function POST(request: Request) {

const octokit = await app.getInstallationOctokit(installationId);

const query = `EXEC dbo.get_all_tokens_from_gh_username @github_user='${userLogin}'`;
const wmUserData = await executeRequest(query);
const {
github_token,
jira_token,
jira_refresh_token,
confluence_token,
confluence_refresh_token,
confluence_id,
cloudId,
slack_token,
notion_token,
linear_token,
asana_token,
asana_workspace,
AISummary,
JiraTickets,
GitHubPRs,
SlackMessages,
NotionPages,
LinearTickets,
ConfluencePages,
AsanaTasks,
user_email,
watermelon_user,
} = wmUserData;
if (!watermelon_user) {
{
// Post a new comment if no existing comment was found
await octokit
.request(
"POST /repos/{owner}/{repo}/issues/{issue_number}/comments",
{
owner,
issue_number: number,
repo,
body: "[Please login to Watermelon to see the results](https://app.watermelontools.com/)",
}
)
.then((response) => {
console.info("post comment", response.data);
})
.catch((error) => {
return console.error("posting comment error", error);
});
return NextResponse.json("User not registered");
}
}
let octoCommitList = await octokit.request(
"GET /repos/{owner}/{repo}/pulls/{pull_number}/commits",
{
Expand Down Expand Up @@ -325,78 +273,71 @@ export async function POST(request: Request) {
.split(" ")
.sort(() => Math.random() - 0.5)
.slice(0, 6);

const [
ghValue,
jiraValue,
confluenceValue,
slackValue,
notionValue,
linearValue,
asanaValue,
count,
] = await Promise.all([
getGitHub({
repo,
owner,
github_token,
randomWords,
amount: GitHubPRs,
}),
getJira({
user: user_email,
token: jira_token,
refresh_token: jira_refresh_token,
randomWords,
cloudId,
amount: JiraTickets,
}),
getConfluence({
token: confluence_token,
refresh_token: confluence_refresh_token,
cloudId: confluence_id,
user: user_email,
randomWords,
amount: ConfluencePages,
}),
getSlack({
slack_token,
searchString: randomWords.join(" "),
amount: SlackMessages,
}),
getNotion({
notion_token,
randomWords,
amount: NotionPages,
}),
getLinear({
linear_token,
randomWords,
amount: LinearTickets,
}),
getAsana({
access_token: asana_token,
user: user_email,
randomWords,
workspace: asana_workspace,
amount: AsanaTasks,
}),
addActionCount({ watermelon_user }),
]);
const serviceAnswers = await getAllServices({
userLogin,
repo,
owner,
randomWords,
url: request.url,
});
const {
error,
github,
jira,
confluence,
slack,
notion,
linear,
asana,
watermelon_user,
AISummary,
user_email,
} = serviceAnswers;
if (error) {
failedPosthogTracking({
url: request.url,
error: error.message,
email: req.email,
});
return failedToFetchResponse({ error: error.message });
}
if (!watermelon_user) {
{
// Post a new comment if no existing comment was found
await octokit
.request(
"POST /repos/{owner}/{repo}/issues/{issue_number}/comments",
{
owner,
issue_number: number,
repo,
body: "[Please login to Watermelon to see the results](https://app.watermelontools.com/)",
}
)
.then((response) => {
console.info("post comment", response.data);
})
.catch((error) => {
return console.error("posting comment error", error);
});
return NextResponse.json("User not registered");
}
}
const count = await addActionCount({ watermelon_user });
textToWrite += `### WatermelonAI Summary \n`;

let businessLogicSummary;
if (AISummary) {
businessLogicSummary = await getOpenAISummary({
commitList,
values: {
ghValue,
jiraValue,
confluenceValue,
slackValue,
notionValue,
linearValue,
asanaValue,
github: github?.data,
jira: jira?.data,
confluence: confluence?.data,
slack: slack?.data,
notion: notion?.data,
linear: linear?.data,
asana: asana?.data,
},
title,
body,
Expand All @@ -413,50 +354,43 @@ export async function POST(request: Request) {
}

textToWrite += generalMarkdownHelper({
amount: GitHubPRs,
value: ghValue,
value: github,
userLogin,
systemName: "GitHub",
systemResponseName: "GitHub PRs",
});
textToWrite += generalMarkdownHelper({
amount: JiraTickets,
value: jiraValue,
value: jira,
userLogin,
systemName: "Jira",
systemResponseName: "Jira Tickets",
});
textToWrite += generalMarkdownHelper({
amount: 3,
value: confluenceValue,
value: confluence,
userLogin,
systemName: "Confluence",
systemResponseName: "Confluence Docs",
});
textToWrite += generalMarkdownHelper({
amount: SlackMessages,
value: slackValue,
value: slack,
userLogin,
systemName: "Slack",
systemResponseName: "Slack Threads",
});
textToWrite += generalMarkdownHelper({
amount: NotionPages,
value: notionValue,
value: notion,
userLogin,
systemName: "Notion",
systemResponseName: "Notion Pages",
});
textToWrite += generalMarkdownHelper({
amount: LinearTickets,
value: linearValue,
value: linear,
userLogin,
systemName: "Linear",
systemResponseName: "Linear Tickets",
});
textToWrite += generalMarkdownHelper({
amount: AsanaTasks,
value: asanaValue,
value: asana,
userLogin,
systemName: "Asana",
systemResponseName: "Asana Tasks",
Expand All @@ -469,12 +403,12 @@ export async function POST(request: Request) {

await addActionLog({
randomWords,
ghValue,
jiraValue,
slackValue,
notionValue,
linearValue,
asanaValue,
github,
jira,
slack,
notion,
linear,
asana,
textToWrite,
businessLogicSummary,
owner,
Expand Down
Loading

0 comments on commit 8ccb1c7

Please sign in to comment.