* Update webhook handler and tailwind paths, add first subscription item to types
In the lemon-squeezy-webhook-handler, changed logger from error to warning and refactored the generation of lineItems to use firstSubscriptionItem details and obtain the priceAmount. In tailwind's index file, adjusted the path to include src directories in packages. Also, the first_subscription_item has been added to the subscription-webhook type for better data representation.
* Refactor subscription interval calculation
The subscription interval calculation was refactored to use the new 'getSubscriptionIntervalType' function. This new function provides a more accurate calculation, where it determines the interval type ('monthly' or 'yearly') by comparing the renewal date with the current date.
* Update dependencies across multiple packages
This commit includes updates to the version of "supabase-js", "lucide-react", "react-query", "react-table", "postcss", "stripe" among other dependencies in multiple package.json files. The "pnpm-lock.yaml" file is also updated to reflect these changes. This ensures the project dependencies stay up-to-date to include new features, improvements and bug fixes.
Database Webhooks - @kit/database-webhooks
This package is responsible for handling webhooks from database changes.
For example:
- when an account is deleted, we handle the cleanup of all related data in the third-party services.
- when a user is invited, we send an email to the user.
- when an account member is added, we update the subscription in the third-party services
The default sender provider is directly from the Postgres database.
WEBHOOK_SENDER_PROVIDER=postgres
Should you add a middleware to the webhook sender provider, you can do so by adding the following to the WEBHOOK_SENDER_PROVIDER environment variable.
WEBHOOK_SENDER_PROVIDER=svix
For example, you can add [https://docs.svix.com/quickstart]](Swix) as a webhook sender provider that receives webhooks from the database changes and forwards them to your application.
Svix is not implemented yet.