create-m5kdev 0.37.4 → 0.38.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,6 +1,6 @@
1
1
  {
2
2
  "name": "create-m5kdev",
3
- "version": "0.37.4",
3
+ "version": "0.38.1",
4
4
  "license": "GPL-3.0-only",
5
5
  "engines": {
6
6
  "node": ">=24"
@@ -1,23 +1,23 @@
1
- {
2
- "name": "{{PACKAGE_SCOPE}}/e2e",
3
- "version": "0.0.0",
4
- "private": true,
5
- "scripts": {
6
- "build": "tsc --noEmit",
7
- "lint": "biome check .",
8
- "lint:fix": "biome check . --write",
9
- "check-types": "tsc --noEmit",
10
- "test:e2e": "playwright test",
11
- "test:e2e:expo": "playwright test --config playwright.expo.config.ts --headed"
12
- },
13
- "devDependencies": {
14
- "@m5kdev/backend": "catalog:m5kdev",
15
- "@m5kdev/commons": "catalog:m5kdev",
16
- "@m5kdev/config": "catalog:m5kdev",
17
- "@playwright/test": "catalog:m5kdev",
18
- "{{PACKAGE_SCOPE}}/shared": "workspace:*",
19
- "@trpc/client": "catalog:m5kdev",
20
- "@types/node": "catalog:m5kdev",
21
- "typescript": "catalog:m5kdev"
22
- }
23
- }
1
+ {
2
+ "name": "{{PACKAGE_SCOPE}}/e2e",
3
+ "version": "0.0.0",
4
+ "private": true,
5
+ "scripts": {
6
+ "build": "tsc --noEmit",
7
+ "lint": "biome check .",
8
+ "lint:fix": "biome check . --write",
9
+ "check-types": "tsc --noEmit",
10
+ "test:e2e": "playwright test",
11
+ "test:e2e:expo": "playwright test --config playwright.expo.config.ts --headed"
12
+ },
13
+ "devDependencies": {
14
+ "@m5kdev/backend": "catalog:m5kdev",
15
+ "@m5kdev/commons": "catalog:m5kdev",
16
+ "@m5kdev/config": "catalog:m5kdev",
17
+ "@playwright/test": "catalog:m5kdev",
18
+ "{{PACKAGE_SCOPE}}/shared": "workspace:*",
19
+ "@trpc/client": "catalog:m5kdev",
20
+ "@types/node": "catalog:m5kdev",
21
+ "typescript": "catalog:m5kdev"
22
+ }
23
+ }
@@ -253,9 +253,16 @@ test("invited membership role change applies before accept", async ({ page, requ
253
253
  });
254
254
  expect(updated).toEqual({ id: invited.member.id, role: "admin" });
255
255
 
256
+ const renamed = await trpc.auth.updateMemberName.mutate({
257
+ memberId: invited.member.id,
258
+ name: "Kitchen lead",
259
+ });
260
+ expect(renamed).toEqual({ id: invited.member.id, name: "Kitchen lead" });
261
+
256
262
  const afterRole = findMemberByEmail(await listOrganizationMembers(page), invitee);
257
263
  expect(afterRole?.id).toBe(invited.member.id);
258
264
  expect(afterRole?.role).toBe("admin");
265
+ expect(afterRole?.name).toBe("Kitchen lead");
259
266
  expect(afterRole?.userId).toBeNull();
260
267
  expect(afterRole?.invitationId).toBe(invited.invitation.id);
261
268
 
@@ -312,6 +312,39 @@ test("organization members page changes an invited member role before they accep
312
312
  ]);
313
313
  });
314
314
 
315
+ test("organization members page lets an admin edit a member name", async ({ page }) => {
316
+ const invitee = `invite-name.${Date.now()}@auth-e2e.local`;
317
+
318
+ await login(page, profiles.standard.adminEmail, profiles.standard.adminPassword);
319
+ await inviteFromMembersPage(page, invitee);
320
+ const invited = findMemberByEmail(await listOrganizationMembers(page), invitee);
321
+ const invitedMemberId = invited?.id;
322
+ expect(invitedMemberId).toBeTruthy();
323
+ expect(invited?.name).toBe(invitee);
324
+
325
+ const invitedRow = page.getByRole("row").filter({ hasText: invitee });
326
+ const nameField = invitedRow.getByRole("textbox", { name: `Name for ${invitee}` });
327
+ await nameField.fill("Kitchen lead");
328
+ const nameResponsePromise = page.waitForResponse(
329
+ (response) =>
330
+ response.request().method() === "POST" && response.url().includes("updateMemberName")
331
+ );
332
+ await nameField.blur();
333
+ const nameResponse = await nameResponsePromise;
334
+ expect(
335
+ nameResponse.ok(),
336
+ `${nameResponse.status()} ${nameResponse.statusText()}: ${await nameResponse.text()}`
337
+ ).toBe(true);
338
+
339
+ const afterName = findMemberByEmail(await listOrganizationMembers(page), invitee);
340
+ expect(afterName?.id).toBe(invitedMemberId);
341
+ expect(afterName?.name).toBe("Kitchen lead");
342
+ expect(afterName?.userId).toBeNull();
343
+ await expect(invitedRow.getByRole("textbox", { name: "Name for Kitchen lead" })).toHaveValue(
344
+ "Kitchen lead"
345
+ );
346
+ });
347
+
315
348
  test("organization members page resends, updates, cancels, and revives an invited seat", async ({
316
349
  page,
317
350
  }) => {
@@ -1,34 +1,34 @@
1
- {
2
- "name": "{{PACKAGE_SCOPE}}/email",
3
- "version": "0.0.0",
4
- "private": true,
5
- "scripts": {
6
- "build": "tsc --noEmit",
7
- "lint": "biome check .",
8
- "lint:fix": "biome check . --write",
9
- "check-types": "tsc --noEmit",
10
- "email:dev": "react-email dev --dir src/emails"
11
- },
12
- "dependencies": {
13
- "@m5kdev/commons": "catalog:m5kdev",
14
- "@m5kdev/email": "catalog:m5kdev",
15
- "@react-email/components": "catalog:m5kdev",
16
- "react": "catalog:m5kdev",
17
- "react-dom": "catalog:m5kdev"
18
- },
19
- "devDependencies": {
20
- "@m5kdev/backend": "catalog:m5kdev",
21
- "@m5kdev/config": "catalog:m5kdev",
22
- "@types/node": "catalog:m5kdev",
23
- "@types/react": "catalog:m5kdev",
24
- "@types/react-dom": "catalog:m5kdev",
25
- "react-email": "catalog:m5kdev",
26
- "tslib": "catalog:m5kdev",
27
- "typescript": "catalog:m5kdev"
28
- },
29
- "main": "./src/index.ts",
30
- "exports": {
31
- ".": "./src/index.ts",
32
- "./resources": "./src/resources.ts"
33
- }
34
- }
1
+ {
2
+ "name": "{{PACKAGE_SCOPE}}/email",
3
+ "version": "0.0.0",
4
+ "private": true,
5
+ "scripts": {
6
+ "build": "tsc --noEmit",
7
+ "lint": "biome check .",
8
+ "lint:fix": "biome check . --write",
9
+ "check-types": "tsc --noEmit",
10
+ "email:dev": "react-email dev --dir src/emails"
11
+ },
12
+ "dependencies": {
13
+ "@m5kdev/commons": "catalog:m5kdev",
14
+ "@m5kdev/email": "catalog:m5kdev",
15
+ "@react-email/components": "catalog:m5kdev",
16
+ "react": "catalog:m5kdev",
17
+ "react-dom": "catalog:m5kdev"
18
+ },
19
+ "devDependencies": {
20
+ "@m5kdev/backend": "catalog:m5kdev",
21
+ "@m5kdev/config": "catalog:m5kdev",
22
+ "@types/node": "catalog:m5kdev",
23
+ "@types/react": "catalog:m5kdev",
24
+ "@types/react-dom": "catalog:m5kdev",
25
+ "react-email": "catalog:m5kdev",
26
+ "tslib": "catalog:m5kdev",
27
+ "typescript": "catalog:m5kdev"
28
+ },
29
+ "main": "./src/index.ts",
30
+ "exports": {
31
+ ".": "./src/index.ts",
32
+ "./resources": "./src/resources.ts"
33
+ }
34
+ }
@@ -1,63 +1,63 @@
1
- {
2
- "name": "{{PACKAGE_SCOPE}}/expo",
3
- "version": "1.5.3",
4
- "private": true,
5
- "main": "expo-router/entry",
6
- "scripts": {
7
- "build": "expo export --platform web --output-dir dist",
8
- "start": "expo start",
9
- "dev:standard": "EXPO_PUBLIC_ENABLE_WAITLIST=false EXPO_PUBLIC_SERVER_URL=http://127.0.0.1:18182 EXPO_PUBLIC_APP_URL=http://127.0.0.1:15183 EXPO_NO_TELEMETRY=1 BROWSER=none expo start --web --port 15183 --host localhost",
10
- "dev:waitlist": "EXPO_PUBLIC_ENABLE_WAITLIST=true EXPO_PUBLIC_SERVER_URL=http://127.0.0.1:18183 EXPO_PUBLIC_APP_URL=http://127.0.0.1:15184 EXPO_NO_TELEMETRY=1 BROWSER=none expo start --web --port 15184 --host localhost",
11
- "android": "expo start --android",
12
- "ios": "expo start --ios",
13
- "lint": "biome check app.json package.json metro.config.js eslint.config.js src tsconfig.json uniwind-env.d.ts",
14
- "lint:fix": "biome check app.json package.json metro.config.js eslint.config.js src tsconfig.json uniwind-env.d.ts --write",
15
- "format": "prettier --write .",
16
- "format:check": "prettier --check .",
17
- "check-types": "tsc --noEmit",
18
- "typecheck": "pnpm check-types"
19
- },
20
- "dependencies": {
21
- "@expo/metro-runtime": "~56.0.13",
22
- "@gorhom/bottom-sheet": "^5.2.14",
23
- "@m5kdev/commons": "catalog:m5kdev",
24
- "@m5kdev/expo": "catalog:m5kdev",
25
- "@m5kdev/frontend": "catalog:m5kdev",
26
- "@trpc/client": "catalog:m5kdev",
27
- "@tanstack/react-query": "catalog:m5kdev",
28
- "expo": "~56.0.5",
29
- "expo-constants": "~56.0.16",
30
- "expo-linking": "~56.0.12",
31
- "expo-notifications": "~56.0.18",
32
- "expo-router": "~56.2.7",
33
- "expo-splash-screen": "~56.0.10",
34
- "expo-status-bar": "~56.0.4",
35
- "heroui-native": "^1.0.2",
36
- "{{PACKAGE_SCOPE}}/shared": "workspace:*",
37
- "react": "catalog:m5kdev",
38
- "react-dom": "catalog:m5kdev",
39
- "react-native": "0.85.3",
40
- "react-native-gesture-handler": "~2.31.2",
41
- "react-native-reanimated": "~4.3.1",
42
- "react-native-safe-area-context": "~5.7.0",
43
- "react-native-screens": "~4.25.2",
44
- "react-native-svg": "15.15.4",
45
- "react-native-web": "catalog:m5kdev",
46
- "react-native-worklets": "0.8.3",
47
- "tailwind-merge": "catalog:m5kdev",
48
- "tailwind-variants": "^3.2.2",
49
- "tailwindcss": "catalog:m5kdev",
50
- "uniwind": "^1.5.0"
51
- },
52
- "devDependencies": {
53
- "{{PACKAGE_SCOPE}}/server": "workspace:*",
54
- "@biomejs/biome": "catalog:m5kdev",
55
- "@m5kdev/backend": "catalog:m5kdev",
56
- "@m5kdev/config": "catalog:m5kdev",
57
- "@types/react": "catalog:m5kdev",
58
- "eslint": "^9.39.4",
59
- "eslint-config-expo": "^56.0.4",
60
- "prettier": "^3.8.3",
61
- "typescript": "catalog:m5kdev"
62
- }
63
- }
1
+ {
2
+ "name": "{{PACKAGE_SCOPE}}/expo",
3
+ "version": "1.5.3",
4
+ "private": true,
5
+ "main": "expo-router/entry",
6
+ "scripts": {
7
+ "build": "expo export --platform web --output-dir dist",
8
+ "start": "expo start",
9
+ "dev:standard": "EXPO_PUBLIC_ENABLE_WAITLIST=false EXPO_PUBLIC_SERVER_URL=http://127.0.0.1:18182 EXPO_PUBLIC_APP_URL=http://127.0.0.1:15183 EXPO_NO_TELEMETRY=1 BROWSER=none expo start --web --port 15183 --host localhost",
10
+ "dev:waitlist": "EXPO_PUBLIC_ENABLE_WAITLIST=true EXPO_PUBLIC_SERVER_URL=http://127.0.0.1:18183 EXPO_PUBLIC_APP_URL=http://127.0.0.1:15184 EXPO_NO_TELEMETRY=1 BROWSER=none expo start --web --port 15184 --host localhost",
11
+ "android": "expo start --android",
12
+ "ios": "expo start --ios",
13
+ "lint": "biome check app.json package.json metro.config.js eslint.config.js src tsconfig.json uniwind-env.d.ts",
14
+ "lint:fix": "biome check app.json package.json metro.config.js eslint.config.js src tsconfig.json uniwind-env.d.ts --write",
15
+ "format": "prettier --write .",
16
+ "format:check": "prettier --check .",
17
+ "check-types": "tsc --noEmit",
18
+ "typecheck": "pnpm check-types"
19
+ },
20
+ "dependencies": {
21
+ "@expo/metro-runtime": "~56.0.13",
22
+ "@gorhom/bottom-sheet": "^5.2.14",
23
+ "@m5kdev/commons": "catalog:m5kdev",
24
+ "@m5kdev/expo": "catalog:m5kdev",
25
+ "@m5kdev/frontend": "catalog:m5kdev",
26
+ "@trpc/client": "catalog:m5kdev",
27
+ "@tanstack/react-query": "catalog:m5kdev",
28
+ "expo": "~56.0.5",
29
+ "expo-constants": "~56.0.16",
30
+ "expo-linking": "~56.0.12",
31
+ "expo-notifications": "~56.0.18",
32
+ "expo-router": "~56.2.7",
33
+ "expo-splash-screen": "~56.0.10",
34
+ "expo-status-bar": "~56.0.4",
35
+ "heroui-native": "^1.0.2",
36
+ "{{PACKAGE_SCOPE}}/shared": "workspace:*",
37
+ "react": "catalog:m5kdev",
38
+ "react-dom": "catalog:m5kdev",
39
+ "react-native": "0.85.3",
40
+ "react-native-gesture-handler": "~2.31.2",
41
+ "react-native-reanimated": "~4.3.1",
42
+ "react-native-safe-area-context": "~5.7.0",
43
+ "react-native-screens": "~4.25.2",
44
+ "react-native-svg": "15.15.4",
45
+ "react-native-web": "catalog:m5kdev",
46
+ "react-native-worklets": "0.8.3",
47
+ "tailwind-merge": "catalog:m5kdev",
48
+ "tailwind-variants": "^3.2.2",
49
+ "tailwindcss": "catalog:m5kdev",
50
+ "uniwind": "^1.5.0"
51
+ },
52
+ "devDependencies": {
53
+ "{{PACKAGE_SCOPE}}/server": "workspace:*",
54
+ "@biomejs/biome": "catalog:m5kdev",
55
+ "@m5kdev/backend": "catalog:m5kdev",
56
+ "@m5kdev/config": "catalog:m5kdev",
57
+ "@types/react": "catalog:m5kdev",
58
+ "eslint": "^9.39.4",
59
+ "eslint-config-expo": "^56.0.4",
60
+ "prettier": "^3.8.3",
61
+ "typescript": "catalog:m5kdev"
62
+ }
63
+ }
@@ -1,34 +1,34 @@
1
- {
2
- "name": "{{PACKAGE_SCOPE}}/landing",
3
- "private": true,
4
- "version": "0.0.0",
5
- "type": "module",
6
- "scripts": {
7
- "dev": "vite",
8
- "build": "vite build",
9
- "start": "vite preview --host 0.0.0.0 --port 8080",
10
- "lint": "biome check .",
11
- "lint:fix": "biome check . --write",
12
- "check-types": "tsc --noEmit"
13
- },
14
- "dependencies": {
15
- "@heroui/react": "catalog:m5kdev",
16
- "@heroui/styles": "catalog:m5kdev",
17
- "react": "catalog:m5kdev",
18
- "react-dom": "catalog:m5kdev",
19
- "react-router": "catalog:m5kdev",
20
- "tailwindcss": "catalog:m5kdev",
21
- "tw-animate-css": "catalog:m5kdev",
22
- "vite": "catalog:m5kdev"
23
- },
24
- "devDependencies": {
25
- "@m5kdev/config": "catalog:m5kdev",
26
- "@tailwindcss/vite": "catalog:m5kdev",
27
- "@types/react": "catalog:m5kdev",
28
- "@types/react-dom": "catalog:m5kdev",
29
- "@vitejs/plugin-react": "catalog:m5kdev",
30
- "babel-plugin-react-compiler": "catalog:m5kdev",
31
- "typescript": "catalog:m5kdev",
32
- "vite-tsconfig-paths": "catalog:m5kdev"
33
- }
34
- }
1
+ {
2
+ "name": "{{PACKAGE_SCOPE}}/landing",
3
+ "private": true,
4
+ "version": "0.0.0",
5
+ "type": "module",
6
+ "scripts": {
7
+ "dev": "vite",
8
+ "build": "vite build",
9
+ "start": "vite preview --host 0.0.0.0 --port 8080",
10
+ "lint": "biome check .",
11
+ "lint:fix": "biome check . --write",
12
+ "check-types": "tsc --noEmit"
13
+ },
14
+ "dependencies": {
15
+ "@heroui/react": "catalog:m5kdev",
16
+ "@heroui/styles": "catalog:m5kdev",
17
+ "react": "catalog:m5kdev",
18
+ "react-dom": "catalog:m5kdev",
19
+ "react-router": "catalog:m5kdev",
20
+ "tailwindcss": "catalog:m5kdev",
21
+ "tw-animate-css": "catalog:m5kdev",
22
+ "vite": "catalog:m5kdev"
23
+ },
24
+ "devDependencies": {
25
+ "@m5kdev/config": "catalog:m5kdev",
26
+ "@tailwindcss/vite": "catalog:m5kdev",
27
+ "@types/react": "catalog:m5kdev",
28
+ "@types/react-dom": "catalog:m5kdev",
29
+ "@vitejs/plugin-react": "catalog:m5kdev",
30
+ "babel-plugin-react-compiler": "catalog:m5kdev",
31
+ "typescript": "catalog:m5kdev",
32
+ "vite-tsconfig-paths": "catalog:m5kdev"
33
+ }
34
+ }
@@ -1,57 +1,57 @@
1
- {
2
- "name": "{{PACKAGE_SCOPE}}/server",
3
- "version": "0.0.0",
4
- "private": true,
5
- "main": "dist/index.js",
6
- "scripts": {
7
- "dev": "tsx watch --env-file=../shared/.env src/index.ts",
8
- "build": "tsup",
9
- "start": "node dist/index.js",
10
- "lint": "biome check .",
11
- "lint:fix": "biome check . --write",
12
- "check-types": "tsc --noEmit",
13
- "drizzle:generate": "drizzle-kit generate",
14
- "drizzle:migrate": "drizzle-kit migrate",
15
- "drizzle:studio": "drizzle-kit studio",
16
- "drizzle:sync": "tsx --env-file=../shared/.env db.ts sync",
17
- "drizzle:seed": "tsx --env-file=../shared/.env db.ts seed",
18
- "drizzle:reset": "tsx --env-file=../shared/.env db.ts reset"
19
- },
20
- "dependencies": {
21
- "{{PACKAGE_SCOPE}}/email": "workspace:*",
22
- "{{PACKAGE_SCOPE}}/shared": "workspace:*",
23
- "@libsql/client": "catalog:m5kdev",
24
- "@m5kdev/backend": "catalog:m5kdev",
25
- "@m5kdev/commons": "catalog:m5kdev",
26
- "@mastra/core": "catalog:m5kdev",
27
- "@openrouter/ai-sdk-provider": "catalog:m5kdev",
28
- "@opentelemetry/api": "catalog:m5kdev",
29
- "@trpc/server": "catalog:m5kdev",
30
- "better-auth": "catalog:m5kdev",
31
- "dotenv": "catalog:m5kdev",
32
- "drizzle-orm": "catalog:m5kdev",
33
- "drizzle-zod": "catalog:m5kdev",
34
- "express": "catalog:m5kdev",
35
- "ioredis": "catalog:m5kdev",
36
- "neverthrow": "catalog:m5kdev",
37
- "react": "catalog:m5kdev",
38
- "react-dom": "catalog:m5kdev",
39
- "uuid": "catalog:m5kdev",
40
- "zod": "catalog:m5kdev"
41
- },
42
- "devDependencies": {
43
- "@m5kdev/config": "catalog:m5kdev",
44
- "@types/express": "catalog:m5kdev",
45
- "@types/node": "catalog:m5kdev",
46
- "@types/react": "catalog:m5kdev",
47
- "@types/react-dom": "catalog:m5kdev",
48
- "drizzle-kit": "catalog:m5kdev",
49
- "tslib": "catalog:m5kdev",
50
- "tsup": "catalog:m5kdev",
51
- "tsx": "catalog:m5kdev",
52
- "typescript": "catalog:m5kdev"
53
- },
54
- "exports": {
55
- "./types": "./src/types.ts"
56
- }
57
- }
1
+ {
2
+ "name": "{{PACKAGE_SCOPE}}/server",
3
+ "version": "0.0.0",
4
+ "private": true,
5
+ "main": "dist/index.js",
6
+ "scripts": {
7
+ "dev": "tsx watch --env-file=../shared/.env src/index.ts",
8
+ "build": "tsup",
9
+ "start": "node dist/index.js",
10
+ "lint": "biome check .",
11
+ "lint:fix": "biome check . --write",
12
+ "check-types": "tsc --noEmit",
13
+ "drizzle:generate": "drizzle-kit generate",
14
+ "drizzle:migrate": "drizzle-kit migrate",
15
+ "drizzle:studio": "drizzle-kit studio",
16
+ "drizzle:sync": "tsx --env-file=../shared/.env db.ts sync",
17
+ "drizzle:seed": "tsx --env-file=../shared/.env db.ts seed",
18
+ "drizzle:reset": "tsx --env-file=../shared/.env db.ts reset"
19
+ },
20
+ "dependencies": {
21
+ "{{PACKAGE_SCOPE}}/email": "workspace:*",
22
+ "{{PACKAGE_SCOPE}}/shared": "workspace:*",
23
+ "@libsql/client": "catalog:m5kdev",
24
+ "@m5kdev/backend": "catalog:m5kdev",
25
+ "@m5kdev/commons": "catalog:m5kdev",
26
+ "@mastra/core": "catalog:m5kdev",
27
+ "@openrouter/ai-sdk-provider": "catalog:m5kdev",
28
+ "@opentelemetry/api": "catalog:m5kdev",
29
+ "@trpc/server": "catalog:m5kdev",
30
+ "better-auth": "catalog:m5kdev",
31
+ "dotenv": "catalog:m5kdev",
32
+ "drizzle-orm": "catalog:m5kdev",
33
+ "drizzle-zod": "catalog:m5kdev",
34
+ "express": "catalog:m5kdev",
35
+ "ioredis": "catalog:m5kdev",
36
+ "neverthrow": "catalog:m5kdev",
37
+ "react": "catalog:m5kdev",
38
+ "react-dom": "catalog:m5kdev",
39
+ "uuid": "catalog:m5kdev",
40
+ "zod": "catalog:m5kdev"
41
+ },
42
+ "devDependencies": {
43
+ "@m5kdev/config": "catalog:m5kdev",
44
+ "@types/express": "catalog:m5kdev",
45
+ "@types/node": "catalog:m5kdev",
46
+ "@types/react": "catalog:m5kdev",
47
+ "@types/react-dom": "catalog:m5kdev",
48
+ "drizzle-kit": "catalog:m5kdev",
49
+ "tslib": "catalog:m5kdev",
50
+ "tsup": "catalog:m5kdev",
51
+ "tsx": "catalog:m5kdev",
52
+ "typescript": "catalog:m5kdev"
53
+ },
54
+ "exports": {
55
+ "./types": "./src/types.ts"
56
+ }
57
+ }
@@ -1,27 +1,27 @@
1
- {
2
- "name": "{{PACKAGE_SCOPE}}/shared",
3
- "version": "0.0.0",
4
- "private": true,
5
- "scripts": {
6
- "build": "tsc --noEmit",
7
- "lint": "biome check .",
8
- "lint:fix": "biome check . --write",
9
- "check-types": "tsc --noEmit"
10
- },
11
- "dependencies": {
12
- "@m5kdev/commons": "catalog:m5kdev",
13
- "zod": "catalog:m5kdev"
14
- },
15
- "devDependencies": {
16
- "@m5kdev/config": "catalog:m5kdev",
17
- "tslib": "catalog:m5kdev",
18
- "typescript": "catalog:m5kdev"
19
- },
20
- "exports": {
21
- "./modules/app/*": "./src/modules/app/*.ts",
22
- "./modules/conversation/*": "./src/modules/conversation/*.ts",
23
- "./modules/demo-workflow/*": "./src/modules/demo-workflow/*.ts",
24
- "./modules/notification/*": "./src/modules/notification/*.ts",
25
- "./modules/posts/*": "./src/modules/posts/*.ts"
26
- }
27
- }
1
+ {
2
+ "name": "{{PACKAGE_SCOPE}}/shared",
3
+ "version": "0.0.0",
4
+ "private": true,
5
+ "scripts": {
6
+ "build": "tsc --noEmit",
7
+ "lint": "biome check .",
8
+ "lint:fix": "biome check . --write",
9
+ "check-types": "tsc --noEmit"
10
+ },
11
+ "dependencies": {
12
+ "@m5kdev/commons": "catalog:m5kdev",
13
+ "zod": "catalog:m5kdev"
14
+ },
15
+ "devDependencies": {
16
+ "@m5kdev/config": "catalog:m5kdev",
17
+ "tslib": "catalog:m5kdev",
18
+ "typescript": "catalog:m5kdev"
19
+ },
20
+ "exports": {
21
+ "./modules/app/*": "./src/modules/app/*.ts",
22
+ "./modules/conversation/*": "./src/modules/conversation/*.ts",
23
+ "./modules/demo-workflow/*": "./src/modules/demo-workflow/*.ts",
24
+ "./modules/notification/*": "./src/modules/notification/*.ts",
25
+ "./modules/posts/*": "./src/modules/posts/*.ts"
26
+ }
27
+ }
@@ -1,53 +1,53 @@
1
- {
2
- "name": "{{PACKAGE_SCOPE}}/webapp",
3
- "private": true,
4
- "version": "0.0.0",
5
- "type": "module",
6
- "scripts": {
7
- "dev": "vite",
8
- "build": "vite build",
9
- "lint": "biome check .",
10
- "lint:fix": "biome check . --write",
11
- "check-types": "tsc --noEmit",
12
- "preview": "vite preview"
13
- },
14
- "dependencies": {
15
- "{{PACKAGE_SCOPE}}/shared": "workspace:*",
16
- "@heroui/react": "catalog:m5kdev",
17
- "@heroui/styles": "catalog:m5kdev",
18
- "@m5kdev/commons": "catalog:m5kdev",
19
- "@m5kdev/frontend": "catalog:m5kdev",
20
- "@m5kdev/web-ui": "catalog:m5kdev",
21
- "@tanstack/react-query": "catalog:m5kdev",
22
- "@trpc/client": "catalog:m5kdev",
23
- "@trpc/tanstack-react-query": "catalog:m5kdev",
24
- "better-auth": "catalog:m5kdev",
25
- "i18next": "catalog:m5kdev",
26
- "lucide-react": "catalog:m5kdev",
27
- "nuqs": "catalog:m5kdev",
28
- "posthog-js": "catalog:m5kdev",
29
- "react": "catalog:m5kdev",
30
- "react-dom": "catalog:m5kdev",
31
- "react-hook-form": "catalog:m5kdev",
32
- "react-i18next": "catalog:m5kdev",
33
- "react-router": "catalog:m5kdev",
34
- "sonner": "catalog:m5kdev",
35
- "tailwindcss": "catalog:m5kdev",
36
- "tw-animate-css": "catalog:m5kdev",
37
- "zod": "catalog:m5kdev"
38
- },
39
- "devDependencies": {
40
- "{{PACKAGE_SCOPE}}/server": "workspace:*",
41
- "@m5kdev/config": "catalog:m5kdev",
42
- "@tailwindcss/vite": "catalog:m5kdev",
43
- "@types/react": "catalog:m5kdev",
44
- "@types/react-dom": "catalog:m5kdev",
45
- "@vitejs/plugin-react": "catalog:m5kdev",
46
- "babel-plugin-react-compiler": "catalog:m5kdev",
47
- "typescript": "catalog:m5kdev",
48
- "vite": "catalog:m5kdev",
49
- "vite-plugin-i18next-loader": "catalog:m5kdev",
50
- "vite-tsconfig-paths": "catalog:m5kdev",
51
- "@trpc/server": "catalog:m5kdev"
52
- }
53
- }
1
+ {
2
+ "name": "{{PACKAGE_SCOPE}}/webapp",
3
+ "private": true,
4
+ "version": "0.0.0",
5
+ "type": "module",
6
+ "scripts": {
7
+ "dev": "vite",
8
+ "build": "vite build",
9
+ "lint": "biome check .",
10
+ "lint:fix": "biome check . --write",
11
+ "check-types": "tsc --noEmit",
12
+ "preview": "vite preview"
13
+ },
14
+ "dependencies": {
15
+ "{{PACKAGE_SCOPE}}/shared": "workspace:*",
16
+ "@heroui/react": "catalog:m5kdev",
17
+ "@heroui/styles": "catalog:m5kdev",
18
+ "@m5kdev/commons": "catalog:m5kdev",
19
+ "@m5kdev/frontend": "catalog:m5kdev",
20
+ "@m5kdev/web-ui": "catalog:m5kdev",
21
+ "@tanstack/react-query": "catalog:m5kdev",
22
+ "@trpc/client": "catalog:m5kdev",
23
+ "@trpc/tanstack-react-query": "catalog:m5kdev",
24
+ "better-auth": "catalog:m5kdev",
25
+ "i18next": "catalog:m5kdev",
26
+ "lucide-react": "catalog:m5kdev",
27
+ "nuqs": "catalog:m5kdev",
28
+ "posthog-js": "catalog:m5kdev",
29
+ "react": "catalog:m5kdev",
30
+ "react-dom": "catalog:m5kdev",
31
+ "react-hook-form": "catalog:m5kdev",
32
+ "react-i18next": "catalog:m5kdev",
33
+ "react-router": "catalog:m5kdev",
34
+ "sonner": "catalog:m5kdev",
35
+ "tailwindcss": "catalog:m5kdev",
36
+ "tw-animate-css": "catalog:m5kdev",
37
+ "zod": "catalog:m5kdev"
38
+ },
39
+ "devDependencies": {
40
+ "{{PACKAGE_SCOPE}}/server": "workspace:*",
41
+ "@m5kdev/config": "catalog:m5kdev",
42
+ "@tailwindcss/vite": "catalog:m5kdev",
43
+ "@types/react": "catalog:m5kdev",
44
+ "@types/react-dom": "catalog:m5kdev",
45
+ "@vitejs/plugin-react": "catalog:m5kdev",
46
+ "babel-plugin-react-compiler": "catalog:m5kdev",
47
+ "typescript": "catalog:m5kdev",
48
+ "vite": "catalog:m5kdev",
49
+ "vite-plugin-i18next-loader": "catalog:m5kdev",
50
+ "vite-tsconfig-paths": "catalog:m5kdev",
51
+ "@trpc/server": "catalog:m5kdev"
52
+ }
53
+ }
@@ -7,18 +7,18 @@ catalogs:
7
7
  "@heroui/react": 3.0.3
8
8
  "@heroui/styles": 3.0.3
9
9
  "@libsql/client": 0.17.4
10
- "@m5kdev/backend": 0.37.4
11
- "@m5kdev/commons": 0.37.4
12
- "@m5kdev/config": 0.37.4
13
- "@m5kdev/email": 0.37.4
14
- "@m5kdev/expo": 0.37.4
15
- "@m5kdev/frontend": 0.37.4
16
- "@m5kdev/module-clay": 0.37.4
17
- "@m5kdev/module-docx": 0.37.4
18
- "@m5kdev/module-pdf": 0.37.4
19
- "@m5kdev/module-social": 0.37.4
20
- "@m5kdev/module-video": 0.37.4
21
- "@m5kdev/web-ui": 0.37.4
10
+ "@m5kdev/backend": 0.38.1
11
+ "@m5kdev/commons": 0.38.1
12
+ "@m5kdev/config": 0.38.1
13
+ "@m5kdev/email": 0.38.1
14
+ "@m5kdev/expo": 0.38.1
15
+ "@m5kdev/frontend": 0.38.1
16
+ "@m5kdev/module-clay": 0.38.1
17
+ "@m5kdev/module-docx": 0.38.1
18
+ "@m5kdev/module-pdf": 0.38.1
19
+ "@m5kdev/module-social": 0.38.1
20
+ "@m5kdev/module-video": 0.38.1
21
+ "@m5kdev/web-ui": 0.38.1
22
22
  "@mastra/core": 1.51.0
23
23
  "@openrouter/ai-sdk-provider": 3.0.0
24
24
  "@opentelemetry/api": 1.9.0
@@ -35,7 +35,7 @@ catalogs:
35
35
  "@types/react-dom": 19.2.3
36
36
  "@vitejs/plugin-react": 4.2.0
37
37
  babel-plugin-react-compiler: 1.0.0
38
- better-auth: 1.7.2
38
+ better-auth: 1.7.3
39
39
  dotenv: 16.6.1
40
40
  drizzle-kit: 0.31.10
41
41
  drizzle-orm: 0.45.2