mirror of
https://github.com/nestriness/nestri.git
synced 2025-12-18 03:35:38 +02:00
⭐ feat(infra): Update infra and add support for teams to SST (#186)
## Description - [x] Adds support for AWS SSO, which makes us (the team) able to use SST and update the components independently - [x] Splits the webpage into the landing page (Qwik), and Astro (the console) in charge of playing. This allows us to pass in Environment Variables to the console - ~Migrates the docs from Nuxt to Nextjs, and connects them to SST. This allows us to use Fumadocs _citation needed_ that's much more beautiful, and supports OpenApi~ - Cloudflare pages with github integration is not working on our new CF account. So we will have to push the pages deployment manually with Github actions - [x] Moves the current set up from my personal CF and AWS accounts to dedicated Nestri accounts - ## Related Issues <!-- List any related issues (e.g., "Closes #123", "Fixes #456") --> ## Type of Change - [ ] Bug fix (non-breaking change) - [x] New feature (non-breaking change) - [ ] Breaking change (fix or feature that changes existing functionality) - [x] Documentation update - [ ] Other (please describe): ## Checklist - [x] I have updated relevant documentation - [x] My code follows the project's coding style - [x] My changes generate no new warnings/errors ## Notes for Reviewers <!-- Point out areas you'd like reviewers to focus on, questions you have, or decisions that need discussion --> Please approve my PR 🥹 ## Screenshots/Demo <!-- If applicable, add screenshots or a GIF demo of your changes (especially for UI changes) --> ## Additional Context <!-- Add any other context about the pull request here -->
This commit is contained in:
36
packages/functions/src/event/event.ts
Normal file
36
packages/functions/src/event/event.ts
Normal file
@@ -0,0 +1,36 @@
|
||||
import { bus } from "sst/aws/bus";
|
||||
import { User } from "@nestri/core/user/index";
|
||||
import { Email } from "@nestri/core/email/index"
|
||||
import { useActor } from "@nestri/core/actor";
|
||||
// import { Stripe } from "@nestri/core/stripe";
|
||||
// import { Template } from "@nestri/core/email/template";
|
||||
// import { EmailOctopus } from "@nestri/core/email-octopus";
|
||||
|
||||
export const handler = bus.subscriber(
|
||||
[User.Events.Updated, User.Events.Created],
|
||||
async (event) => {
|
||||
console.log(event.type, event.properties, event.metadata);
|
||||
switch (event.type) {
|
||||
// case "order.created": {
|
||||
// await Shippo.createShipment(event.properties.orderID);
|
||||
// await Template.sendOrderConfirmation(event.properties.orderID);
|
||||
// await EmailOctopus.addToCustomersList(event.properties.orderID);
|
||||
// break;
|
||||
// }
|
||||
case "user.created": {
|
||||
console.log("Send email here")
|
||||
// const actor = useActor()
|
||||
// if (actor.type !== "user") throw new Error("User actor is needed here")
|
||||
// await Email.send(
|
||||
// "welcome",
|
||||
// actor.properties.email,
|
||||
// `Welcome to Nestri`,
|
||||
// `Welcome to Nestri`,
|
||||
// )
|
||||
// await Stripe.syncUser(event.properties.userID);
|
||||
// // await EmailOctopus.addToMarketingList(event.properties.userID);
|
||||
// break;
|
||||
}
|
||||
}
|
||||
},
|
||||
);
|
||||
Reference in New Issue
Block a user