create-bw-app 0.14.0 → 0.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "create-bw-app",
3
3
  "private": false,
4
- "version": "0.14.0",
4
+ "version": "0.14.1",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "create-bw-app": "bin/create-bw-app.mjs",
package/src/constants.mjs CHANGED
@@ -137,6 +137,7 @@ export const PLATFORM_STARTER_FILES = [
137
137
  "app/(auth)/reset-password/page.tsx",
138
138
  "app/(auth)/auth/post-login/page.tsx",
139
139
  "app/(auth)/auth/confirmed/page.tsx",
140
+ "app/(auth)/admin-invite/[invitationId]/page.tsx",
140
141
  "app/(auth)/invite/[invitationId]/page.tsx",
141
142
  "app/(auth)/invite/[invitationId]/invite-route-mount.tsx",
142
143
  "app/(shell)/layout.tsx",
@@ -145,6 +146,14 @@ export const PLATFORM_STARTER_FILES = [
145
146
  "app/(shell)/dashboard/dashboard-live-mount.tsx",
146
147
  "app/(shell)/dashboard/page.tsx",
147
148
  "app/api/account/route.ts",
149
+ "app/api/invitations/_dependencies.ts",
150
+ "app/api/invitations/[invitationId]/route.ts",
151
+ "app/api/invitations/[invitationId]/accept/route.ts",
152
+ "app/api/invitations/[invitationId]/register/route.ts",
153
+ "app/api/organizations/route.ts",
154
+ "app/api/organizations/[id]/route.ts",
155
+ "app/api/organizations/[id]/invitations/route.ts",
156
+ "app/api/organizations/[id]/invitations/[invitationId]/route.ts",
148
157
  "app/auth/callback/route.ts",
149
158
  "app/auth/cleanup/route.ts",
150
159
  "app/layout.tsx",
@@ -154,13 +163,13 @@ export const PLATFORM_STARTER_FILES = [
154
163
 
155
164
  export const APP_DEPENDENCY_DEFAULTS = {
156
165
  "@brightweblabs/app-shell": "^0.6.1",
157
- "@brightweblabs/core-auth": "^0.5.1",
166
+ "@brightweblabs/core-auth": "^0.6.0",
158
167
  "@brightweblabs/infra": "^0.3.3",
159
- "@brightweblabs/module-admin": "^0.5.2",
160
- "@brightweblabs/module-crm": "^0.8.2",
161
- "@brightweblabs/module-marketing": "^0.2.1",
162
- "@brightweblabs/module-orgs": "^0.3.2",
163
- "@brightweblabs/module-projects": "^0.6.1",
168
+ "@brightweblabs/module-admin": "^0.5.3",
169
+ "@brightweblabs/module-crm": "^0.8.3",
170
+ "@brightweblabs/module-marketing": "^0.2.2",
171
+ "@brightweblabs/module-orgs": "^0.3.3",
172
+ "@brightweblabs/module-projects": "^0.6.2",
164
173
  "@brightweblabs/theme": "^0.4.0",
165
174
  "@brightweblabs/ui": "^1.1.0",
166
175
  "geist": "1.7.2",
@@ -0,0 +1,6 @@
1
+ import { InvitePage } from "@brightweblabs/core-auth/ui";
2
+
3
+ export default async function Page({ params }: { params: Promise<{ invitationId: string }> }) {
4
+ const { invitationId } = await params;
5
+ return <InvitePage invitationId={invitationId} kind="admin" />;
6
+ }
@@ -0,0 +1,5 @@
1
+ import { createInvitationAcceptHandler } from "@brightweblabs/core-auth/routes";
2
+ import { invitationHttpDependencies } from "../../_dependencies";
3
+
4
+ export const dynamic = "force-dynamic";
5
+ export const POST = createInvitationAcceptHandler(invitationHttpDependencies);
@@ -0,0 +1,5 @@
1
+ import { createInvitationRegisterHandler } from "@brightweblabs/core-auth/routes";
2
+ import { invitationHttpDependencies } from "../../_dependencies";
3
+
4
+ export const dynamic = "force-dynamic";
5
+ export const POST = createInvitationRegisterHandler(invitationHttpDependencies);
@@ -0,0 +1,5 @@
1
+ import { createInvitationDetailsHandler } from "@brightweblabs/core-auth/routes";
2
+ import { invitationHttpDependencies } from "../_dependencies";
3
+
4
+ export const dynamic = "force-dynamic";
5
+ export const GET = createInvitationDetailsHandler(invitationHttpDependencies);
@@ -0,0 +1,37 @@
1
+ import { requireServerUserAccess } from "@brightweblabs/core-auth/server";
2
+ import { requireServiceRoleClient } from "@brightweblabs/infra/server";
3
+ import {
4
+ getAdminUserInvitationDetails,
5
+ registerUserFromAdminInvitation,
6
+ } from "@brightweblabs/module-admin";
7
+ import { ensureCrmContactForProfile } from "@brightweblabs/module-crm";
8
+ import {
9
+ acceptOrganizationInvitation,
10
+ getOrganizationInvitationDetails,
11
+ registerUserFromOrganizationInvitation,
12
+ } from "@brightweblabs/module-orgs";
13
+
14
+ export const invitationHttpDependencies = {
15
+ getServiceClient: requireServiceRoleClient,
16
+ getAccess: requireServerUserAccess,
17
+ getOrganizationInvitation: getOrganizationInvitationDetails,
18
+ getAdminInvitation: getAdminUserInvitationDetails,
19
+ registerOrganizationInvitation: (client: never, input: {
20
+ invitationId: string;
21
+ firstName: string;
22
+ lastName: string;
23
+ password: string;
24
+ }) => registerUserFromOrganizationInvitation(client, {
25
+ ...input,
26
+ ensureCrmContactForProfile,
27
+ }),
28
+ registerAdminInvitation: registerUserFromAdminInvitation,
29
+ acceptOrganizationInvitation: (client: never, input: {
30
+ invitationId: string;
31
+ profileId: string;
32
+ userEmail: string;
33
+ }) => acceptOrganizationInvitation(client, {
34
+ ...input,
35
+ ensureCrmContactForProfile,
36
+ }),
37
+ };
@@ -0,0 +1,9 @@
1
+ export const dynamic = "force-dynamic";
2
+
3
+ export async function DELETE(
4
+ request: Request,
5
+ context: { params: Promise<{ id: string; invitationId: string }> },
6
+ ) {
7
+ const { handleOrganizationInvitationDeleteRequest } = await import("@brightweblabs/module-orgs");
8
+ return handleOrganizationInvitationDeleteRequest(request, context);
9
+ }
@@ -0,0 +1,11 @@
1
+ export const dynamic = "force-dynamic";
2
+
3
+ export async function GET(request: Request, context: { params: Promise<{ id: string }> }) {
4
+ const { handleOrganizationInvitationsGetRequest } = await import("@brightweblabs/module-orgs");
5
+ return handleOrganizationInvitationsGetRequest(request, context);
6
+ }
7
+
8
+ export async function POST(request: Request, context: { params: Promise<{ id: string }> }) {
9
+ const { handleOrganizationInvitationsPostRequest } = await import("@brightweblabs/module-orgs");
10
+ return handleOrganizationInvitationsPostRequest(request, context);
11
+ }
@@ -0,0 +1,6 @@
1
+ export const dynamic = "force-dynamic";
2
+
3
+ export async function PATCH(request: Request, context: { params: Promise<{ id: string }> }) {
4
+ const { handleOrganizationPatchRequest } = await import("@brightweblabs/module-orgs");
5
+ return handleOrganizationPatchRequest(request, context);
6
+ }
@@ -0,0 +1,6 @@
1
+ export const dynamic = "force-dynamic";
2
+
3
+ export async function POST(request: Request) {
4
+ const { handleOrganizationsPostRequest } = await import("@brightweblabs/module-orgs");
5
+ return handleOrganizationsPostRequest(request);
6
+ }