Commit Graph

124 Commits

Author SHA1 Message Date
gbuomprisco
fb04be4d26 Updated dependencies, fixed turbo gen command deps 2024-07-15 20:20:33 +08:00
gbuomprisco
837a0bb02e Update subscription cancellation logic
The previous implementation attempted to cancel a subscription without checking its status. This commit adds a check to see if the subscription is already cancelled before attempting to cancel it, avoiding unnecessary cancellation requests. This improves the efficiency and reliability of the subscription management process.
2024-07-14 11:05:18 +08:00
gbuomprisco
4f0e6b9bbb Update 'next' and 'lucide-react' across all packages
This commit upgrades 'next' from version 14.2.4 to 14.2.5 and 'lucide-react' from version 0.403.0 to 0.407.0 across all packages. Also, minor version increments for '@keystatic/core' and '@sentry/nextjs' to enhance the overall functionality. The pnpm-lock.yaml file has also been updated accordingly.
2024-07-10 23:39:35 +08:00
gbuomprisco
03594d4e33 Update package dependencies across multiple modules
The commit updates package dependencies throughout various modules, including the bumping of "lucide-react" from "^0.402.0" to "^0.403.0", as well as "@types/node" from "^20.14.6" to "^20.14.10". The package "@typescript-eslint/eslint-plugin" and "@typescript-eslint/parser" have also been upgraded from "^7.15.0" to "^7.16.0". This ensures that the latest functionalities and bug fixes from these packages are utilized across the project.
2024-07-09 14:43:09 +08:00
gbuomprisco
37104d749d Update multiple dependencies across packages
These package updates include version upgrades for the "@supabase/supabase-js" from "^2.44.2" to "^2.44.3", and "@hookform/resolvers" from "^3.7.0" to "^3.9.0" in multiple packages. Other changes involve version updates for minor dependencies, like the "lucide-react" from "^0.400.0" to "^0.402.0" and "stripe" from "^16.1.0" to "^16.2.0".
2024-07-08 16:52:47 +08:00
gbuomprisco
fa73cf103a Update multiple package versions across the project
This commit performs an update of the version numbers for several packages used across the project. Overall, this is part of a maintenance task to ensure the latest version of each package is used to gain performance improvements, bug fixes and new features where applicable.
2024-07-03 10:52:32 +08:00
Giancarlo Buomprisco
9583aeec9f Update webhook handler and tailwind paths, add first subscription ite… (#40)
* 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.
2024-06-30 23:29:06 +08:00
gbuomprisco
90c1e23821 Update dependency versions
Updated several dependency versions across multiple packages. This includes updating "@supabase/supabase-js" from "^2.43.5" to "^2.44.1", "lucide-react" from "^0.396.0" to "^0.397.0", and "@stripe/react-stripe-js" from "^2.7.1" to "^2.7.2". Also, some dependencies in the lock file were updated.
2024-06-28 00:23:56 +08:00
gbuomprisco
a6ff3af677 Update package versions in multiple json files
Updated the package versions of "typescript", "lucide-react", "@radix-ui/react-dialog" and several other dependencies across multiple json files. The pnpm-lock.yaml file was also updated to reflect these changes in dependencies. This ensures that we use the most up-to-date versions of these packages in our project.
2024-06-22 15:41:41 +08:00
gbuomprisco
95fa8fb7c6 Add handling for paid invoices in billing services
In response to paid invoices, a new callback method has been introduced in the billing services. This feature includes changes in billing-webhook-handler.service.ts, lemon-squeezy-webhook-handler.service.ts, and other related files. The new method fetches and handles paid invoice information from Stripe and LemonSqueezy subscriptions.
2024-06-20 00:02:25 +08:00
Giancarlo Buomprisco
6a339a4b02 Billing get subscription enhancement (#36)
* Filter out metered line items from billing schema

This update refines the process of creating a billing schema by filtering out metered line items. The change is necessary as metered line items can be shared across different plans, potentially causing conflicts or duplicates in the schema.

* Update packages to newer versions

This update upgrades several packages across multiple project files to their latest version. These packages include "supabase-js", "react-query", "react-hook-form", and "pnpm". The commit ensures the project is up-to-date with recent package versions, potentially benefiting from bug fixes, new features, and performance improvements.

* Add subscription retrieval in billing services

Added a function to retrieve subscription info in both Stripe and LemonSqueezy billing services. To accomplish this, new methods were added to related services and types. This allows querying specific subscription data based on its id, and throws an error if it fails. Furthermore, PayloadBuilder classes were created to systematically build the subscription payload.

* Remove account ID retrieval from Lemon Squeezy billing service

The code that was querying the database to fetch the accountId has been removed from lemon-squeezy-billing-strategy.service.ts. It was unnecessary as the Lemon Squeezy API does not provide account ID and therefore it is always left empty. Also, adjustments have been made in billing-strategy-provider.service.ts to reflect that the target account ID can be optional.

* Extract 'next' parameter from callback URL

The update allows for the extraction of the 'next' parameter from the callback URL. If such a parameter is available, it is subsequently added to the search parameters. The enhancement improves URL parameter handling in the authentication callback service.

* Refactor URL redirection in auth-callback service

The update simplifies the redirection logic in the authentication callback service. This is achieved by setting the url pathname directly to the redirect path, instead of first setting it to the callback parameter. Moreover, the code handling the 'next' path has also been streamlined, setting the url pathname to the next path when available.
2024-06-19 23:00:00 +08:00
gbuomprisco
6e362a73af Update several package dependencies
Several dependencies across multiple packages have been updated to their later versions. This includes updates to 'lucide-react', '@lemonsqueezy/lemonsqueezy.js', 'supabase' and 'eslint-config-turbo'. The lock file has been updated to reflect these changes.
2024-06-15 11:07:43 +08:00
gbuomprisco
cbd8941c37 Upgrade 'next' package and several dependencies to newer versions
The 'next' package and its dependencies in several packages have been upgraded. The 'lemonsqueezy.js' and 'pino' libraries also received updates. This commit ensures that the project uses the latest features, performance improvements, and security patches from these dependencies.
2024-06-12 12:49:08 +08:00
gbuomprisco
236185933d Update package dependencies and remove unused import
Updated several package dependencies including 'react-hook-form' and '@types/node' in various package.json files, and '@typescript-eslint/eslint-plugin' and '@typescript-eslint/parser' in the ESLint configuration. Additionally, an unused import related to "prettier-plugin-tailwindcss" has been removed from the prettier tool configuration.
2024-06-12 00:04:08 +08:00
gbuomprisco
5e115ca600 Update several package dependencies
This commit updates the versions of several dependencies across various packages, with the primary updates being to `@tanstack/react-query`, `prettier`, and `lucide-react`. This helps to keep the project dependencies up-to-date and may also include minor bug fixes or improvements from the updated packages.
2024-06-11 23:36:11 +08:00
gbuomprisco
bb6f26f240 Update and refactor billing services and types
Several updates and refactorings have been made to the billing services and types. The "onInvoicePaid" method and some types related to line items have been removed. The comments and arguments for the "verifyWebhookSignature" and "handleWebhookEvent" methods in service classes have been updated for clarity. The "onEvent" method's arguments have also been adjusted in multiple places to improve consistency.
2024-06-11 23:35:32 +08:00
giancarlo
f8347c603c Update versions of multiple dependencies
This commit updates the minor and patch versions of several dependencies across multiple packages including eslint-config-turbo, lucide-react, stripe, turboo and others. It also updates the lockfile version. Additionally, styling for CheckCircle in 'packages/billing/gateway/src/components/pricing-table.tsx' has been adjusted.
2024-06-07 11:21:49 +07:00
Giancarlo Buomprisco
c9f0ec5d89 Turbo v2 (#32)
Updated to Turbo v2, and updated dependencies.
2024-06-06 15:36:16 +07:00
giancarlo
e2112eefee Update UI styling and Spinner component
Several updates have been made to UI components across various packages. Styling changes have been made in 'global-loader.tsx', 'docs-card.tsx', and 'pricing-table.tsx'. The Spinner component in 'spinner.tsx' has been updated to adjust size and animation properties. Addition of a new prop 'spinnerClassName' in 'loading-overlay.tsx' allows dynamic class assignment. The 'loading.tsx' now exports GlobalLoader directly instead of wrapping it in a function. 'pnpm-lock.yaml' has been updated with a new specifier.
2024-06-04 17:17:12 +07:00
giancarlo
2696c08d7d Refactor BillingEventHandlerService and update SQL permissions
Changed BillingEventHandlerService from a class to a method. Also, the SQL permissions for service_role on public.order_items table have been updated to include insert, update and delete operations. Additionally, made adjustment to configuration values in the billing.sample.config.ts file.
2024-06-04 13:32:02 +07:00
giancarlo
d0c6981e78 New Tailwind CSS formatter run 2024-06-03 00:35:09 +07:00
giancarlo
08de59a43a Update dependencies and improve type safety in webhook handling
This commit updates various dependencies across the project, including a version bump for 'lucide-react' and 'prettier'. Additionally, it improves type safety in the 'database-webhook-handler.service.ts' by making the 'DatabaseChangePayload' and 'handleEvent' function more type-safe.
2024-06-03 00:33:49 +07:00
giancarlo
26b2eed60d Update pricing table to exclude flat line items
The pricing table component now filters out flat line items as they do not require further explanation. Consequently, changes have been made to the billing sample configuration file, turning a previously metered item into a flat one for clearer demonstration of usage.
2024-06-02 12:22:52 +07:00
giancarlo
ced1b4f7e3 Add refinement to ensure metered line items have zero cost
The billing schema has been updated to include a refinement that ensures metered line items have a cost of zero. To clarify, a different line item type should be added for a flat fee in Stripe. Additionally, unnecessary verifications and logic regarding item costs have been removed from the PlanPicker and LineItemDetails components.
2024-06-01 17:03:20 +07:00
giancarlo
2c52a06536 Update pricing table and billing configuration
Updated the pricing table component to display all line items for a plan, removed condition to exclude primary plan. Adjusted the type of a billing package in the sample configuration to be "metered" instead of "flat". Made related changes in line-item-details component to handle the changes in billing type and to fix the layout.
2024-06-01 15:59:39 +07:00
giancarlo
88ff32479a Update dependencies and refactor SentryProvider component
This update includes version bumps for several dependencies across multiple packages and applications including "@sentry/nextjs", "lucide-react", "@types/node", "pnpm", and others. It also includes a change to the SentryProvider component where the SentryMonitoringService is now instantiated outside the MonitoringProvider function instead of using useRef inside the function.
2024-05-31 19:38:56 +07:00
giancarlo
1e047463c8 Upgrade dependencies and enhance UI components
This commit primarily focuses on updating various dependencies, including "@types/react", "@tanstack/react-query", "lucide-react", and others. In addition, several adjustments have been made to UI components, such as adding more properties
2024-05-27 16:12:29 +07:00
giancarlo
f164b24786 Updated packages 2024-05-25 11:31:42 +07:00
giancarlo
9107e31921 Rename 'subscription' path to 'return' in pricing components
The path referred to by "subscription" in the pricing table and pages has been updated to "return". This will redirect users back to the home page instead of the previously configured personalAccountBilling page after signing up or selecting a plan.
2024-05-21 13:50:30 +07:00
giancarlo
3cf3c263bc Fixed issue with one-time payments; Updated packages 2024-05-18 22:56:57 +07:00
giancarlo
5c1e1d5cd0 Update package versions in pnpm-lock.yaml
Several package versions including '@types/node', '@supabase/supabase-js', '@tanstack/react-query' and others were updated in the pnpm-lock.yaml file. This commit ensures all references to these versions are properly updated across the project, contributing to the maintenance of dependency consistency.
2024-05-17 23:13:13 +07:00
giancarlo
e88ae7268a Update UI styles and behavior across various components
This commit updates a variety of user interface styles and interactivity across multiple components. Changes include altering color schemes and border styles, modifying button interactivity and behaviors, and updating font weights. An emphasis has been placed on enhancing visual appearance, improving user experience, and maintaining a more consistent look-and-feel across the application.
2024-05-16 15:56:25 +07:00
giancarlo
09c24346a6 Update logging and return statements in billing services
The commit modifies the logging level in the billing services from 'error' to 'info'. Moreover, the error statement has been modified to clarify that the subscription cancellation has possibly been done by the user. Also, it reduces redundant imports and beefs up the return structure in stripe-billing-strategy.service.
2024-05-15 11:28:37 +07:00
giancarlo
9d30039ba8 Update package versions and optimize URL generation
Updated the versions of several packages including pino and pnpm. Also, the generation of URLs in the pricing-table.tsx file has been optimized by implementing URLSearchParams. A new global error page was also added.
2024-05-13 21:47:51 +07:00
giancarlo
84271a31a8 Add card button component and enhance routing
This commit introduces the Card Button component to the UI package and improves URL matching by allowing end to be a boolean or function. Navigation menu components now support both cases. Additionally, changes have been made to improve the visual and functional aspects of various components throughout the application. This includes changes in pricing display, route active checking, and the introduction of new files such as HomeAddAccountButton and HomeAccountsList.
2024-05-13 02:09:28 +07:00
giancarlo
7ada6b53c6 Refactor billing service and enhance account APIs
This commit includes renaming and refactoring of some billing services for clarification and coherence. It also improves account APIs in team-accounts and accounts packages by having added `getAccount` and `getTeamAccount` methods, allowing retrieval of account details via slug and id. Changes also include type modifications in `getSupabaseServerActionClient` function for better flexibility and precision.
2024-05-12 14:05:08 +07:00
giancarlo
f22c9817bd Update dependencies versions in pnpm-lock.yaml
Updated the versions of various dependencies including '@tanstack/react-query', '@marsidev/react-turnstile', and 'i18next' among others in pnpm-lock.yaml. This ensures the project uses the latest and most secure versions of these dependencies.
2024-05-11 23:30:05 +07:00
giancarlo
6746ae3859 Update condition for rendering PlanIntervalSwitcher
Changed the condition to ensure PlanIntervalSwitcher is only rendered when there is more than one interval. This avoids unnecessary render when there's only a single interval.
2024-05-10 10:51:01 +07:00
giancarlo
7a1dd7768a Updated zod; Fix issue displaying mode toggle in site header when disabled 2024-05-09 10:46:00 +07:00
giancarlo
b81cc94800 Enforce config for billing; updated packages 2024-05-08 21:47:17 +07:00
giancarlo
05255cbebe Update react-query and lucide-react dependencies and improve lockfile version
This commit updates '@tanstack/react-query' from '5.32.0' to '5.35.1' and 'lucide-react' from '^0.376.0' to '^0.378.0' in package.json. Additionally, changes were made in pnpm-lock.yaml including updating the lockfile version from '9.0' to '6.0'.
2024-05-07 14:22:47 +07:00
giancarlo
b8f00f0a2d Refactor E2E tests, update utils, and modify plan-picker validation
Several changes have been made to optimize the testing and validation workflows. The end-to-end tests for user billing, invitations, account, team billing, and team accounts have been retouched for improved performance and better accuracy. There has been a minor modification in the validation rules for plan-picker in the billing component. Furthermore, modifications are made to several utility functions to fine-tune their operations.
2024-05-05 18:15:11 +07:00
giancarlo
ca4932e351 Update package versions for improved stability
This commit updates the versions of "@types/node", "react-hook-form", and "@tanstack/react-query-next-experimental" packages throughout the application. These updates include minor version changes that improve the stability and compatibility of these libraries within the app.
2024-05-05 14:39:31 +07:00
giancarlo
de15abb801 Update Supabase and Sentry dependencies
Updated dependencies for Supabase-js from version 2.43.0 to 2.43.1 and Sentry from various 7.112.2 versions to 7.113.0. It was necessary to ensure compatibility, bug fixes, and to benefit from new features and improvements.
2024-05-04 11:48:19 +07:00
giancarlo
e159c52d41 Corrected variable name typo and updated library dependencies
An incorrect variable name in account-invitations-table.tsx was fixed, correcting `iRenewingInvite` to `isRenewingInvite`. Additionally, several dependencies across the project were updated, including `zod`, `supabase`, and `stripe`, among others. These updates ensure the project is using the most recent and secure versions of the libraries.
2024-05-03 16:33:44 +07:00
giancarlo
05fd9fcb88 Add account selection functionality to mobile navigation
Added a new type, 'Accounts', and used it to enable account selection from the mobile navigation menu. The 'Accounts' type incorporates the label, value, and image of a given account. This change will improve the app's usability, making it easier for users to navigate different accounts directly from their mobile devices. For custom plans, a null check has been implemented to avoid rendering null values.
2024-05-02 01:30:51 +07:00
giancarlo
a161af1624 Update Supabase version to 2.43.0
The commit updates the version of Supabase from 2.42.7 to 2.43.0. It also implements the necessary changes in dependencies and packages where the updated version is being used. This was done to leverage the improvements and fixes introduced in the latest Supabase release.
2024-05-01 19:11:44 +07:00
giancarlo
898e1c3dbb Add support for custom billing plans
This commit includes updates to the billing schema to allow for the creation of custom billing plans. These types of plans have no line items associated with them. Changes have also been made to properly handle the absence of primary line items in such plans.
2024-05-01 16:26:35 +07:00
giancarlo
2ff08a971d Update Zod package, improve code formatting, and add awaiting indicators
This commit includes three main changes. First, it updates the Zod library from version 3.23.4 to 3.23.5 across all relevant packages. Second, code readability has been enhanced by formatting modifications in several TypeScript files. Lastly, the user feedback on certain operations such as creating a team or charging for a payment is strengthened, by displaying an awaiting indicator until the operation is complete.
2024-04-30 13:16:51 +07:00
giancarlo
07deb28e12 1. Updated packages
2. Added comments to schema
3. Minor API updates
2024-04-27 14:39:28 +07:00