Files
classroomio/supabase/migrations/20240406215136_org_billing.sql
T
Rotimi Bestandemmanuel fcd0bcc656 feat: dashboard billing (#193)
* feat: move plans into sharable json

* remove unused code

* update pnpm lock

* update plans.json

* implement early adopter pricing

* docs: update meta title and description

* Finished the UI for upgrading plans

* Updated the pricing plans

* Updated the cards ui

* use relative import

* improve styling of upgrade plan card

* styling improvements, lemonsqueezy setup

* trigger lemonsqueezy payment and add webhook

* update pnpm lock

* add logout route

* feat: complete billing functionality

* generate lock file

* make crypto false on browser

* feat: adding upgrade prompts to org

* chore: add upgrade icon to upload video

* feat: add upgrade prompt to certificate and settings

* feat: implement onboarding setup page (#229)

* working on the onboarding setup

* working on the onboarding page

* Almost done with the onboarding UI

* finished the UI of the onBoarding setup

* finished the UI of the onBoarding setup

* Implementing the functions to carryout the logic of updating the UI onmount if a user has carried out a certain step or not

* Implementing the functions to carryout the logic of updating the UI onmount if a user has carried out a certain step or not

* making some chnages

* finished the onBoarding task

* updated some logic

* Removed the uneeded svg from the static folder

* fixed isCoursePublished not returning a boolean

* improved the setup link protection

* chore: make menuItems reactive

* improve formatting

* format supabase queries

---------

Co-authored-by: Rotimi Best <[email protected]>

* revamp setup

* improve the upgrade experience

* migration

* feat: add lemonsqueezy customer portal

---------

Co-authored-by: emmanuel <[email protected]>
2024-04-07 06:08:34 +01:00

27 lines
1.2 KiB
SQL

create type "public"."PLAN" as enum ('EARLY_ADOPTER', 'ENTERPRISE', 'BASIC');
create table "public"."organization_plan" (
"id" bigint generated by default as identity not null,
"activated_at" timestamp with time zone not null default now(),
"org_id" uuid,
"plan_name" "PLAN",
"is_active" boolean,
"deactivated_at" timestamp with time zone,
"updated_at" timestamp with time zone default now(),
"lmz_data" jsonb,
"triggered_by" bigint
);
CREATE UNIQUE INDEX organization_plan_pkey ON public.organization_plan USING btree (id);
alter table "public"."organization_plan" add constraint "organization_plan_pkey" PRIMARY KEY using index "organization_plan_pkey";
alter table "public"."organization_plan" add constraint "organization_plan_org_id_fkey" FOREIGN KEY (org_id) REFERENCES organization(id) not valid;
alter table "public"."organization_plan" validate constraint "organization_plan_org_id_fkey";
alter table "public"."organization_plan" add constraint "organization_plan_triggered_by_fkey" FOREIGN KEY (triggered_by) REFERENCES organizationmember(id) not valid;
alter table "public"."organization_plan" validate constraint "organization_plan_triggered_by_fkey";