@nextsparkjs/core 0.1.0-beta.68 → 0.1.0-beta.69

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.
Files changed (152) hide show
  1. package/dist/components/settings/layouts/SettingsSidebar.d.ts.map +1 -1
  2. package/dist/components/settings/layouts/SettingsSidebar.js +14 -0
  3. package/dist/components/ui/index.d.ts +7 -0
  4. package/dist/components/ui/index.d.ts.map +1 -1
  5. package/dist/components/ui/index.js +7 -0
  6. package/dist/components/ui/skeleton-dashboard.d.ts +32 -0
  7. package/dist/components/ui/skeleton-dashboard.d.ts.map +1 -0
  8. package/dist/components/ui/skeleton-dashboard.js +69 -0
  9. package/dist/components/ui/skeleton-detail.d.ts.map +1 -1
  10. package/dist/components/ui/skeleton-detail.js +0 -1
  11. package/dist/components/ui/skeleton-features.d.ts +27 -0
  12. package/dist/components/ui/skeleton-features.d.ts.map +1 -0
  13. package/dist/components/ui/skeleton-features.js +90 -0
  14. package/dist/components/ui/skeleton-form.d.ts.map +1 -1
  15. package/dist/components/ui/skeleton-form.js +0 -1
  16. package/dist/components/ui/skeleton-list.d.ts.map +1 -1
  17. package/dist/components/ui/skeleton-list.js +0 -1
  18. package/dist/components/ui/skeleton-public.d.ts +26 -0
  19. package/dist/components/ui/skeleton-public.d.ts.map +1 -0
  20. package/dist/components/ui/skeleton-public.js +61 -0
  21. package/dist/components/ui/skeleton-settings.d.ts +54 -0
  22. package/dist/components/ui/skeleton-settings.d.ts.map +1 -0
  23. package/dist/components/ui/skeleton-settings.js +332 -0
  24. package/dist/components/ui/skeleton.d.ts +23 -1
  25. package/dist/components/ui/skeleton.d.ts.map +1 -1
  26. package/dist/components/ui/skeleton.js +46 -2
  27. package/dist/contexts/TeamContext.d.ts +2 -0
  28. package/dist/contexts/TeamContext.d.ts.map +1 -1
  29. package/dist/contexts/TeamContext.js +78 -68
  30. package/dist/hooks/usePrefetch.d.ts +43 -0
  31. package/dist/hooks/usePrefetch.d.ts.map +1 -0
  32. package/dist/hooks/usePrefetch.js +56 -0
  33. package/dist/lib/actions/index.d.ts +27 -14
  34. package/dist/lib/actions/index.d.ts.map +1 -1
  35. package/dist/lib/actions/index.js +19 -1
  36. package/dist/lib/actions/team.actions.d.ts +107 -0
  37. package/dist/lib/actions/team.actions.d.ts.map +1 -0
  38. package/dist/lib/actions/team.actions.js +220 -0
  39. package/dist/lib/actions/user.actions.d.ts +99 -0
  40. package/dist/lib/actions/user.actions.d.ts.map +1 -0
  41. package/dist/lib/actions/user.actions.js +149 -0
  42. package/dist/messages/de/devtools.json +4 -0
  43. package/dist/messages/de/index.d.ts +4 -0
  44. package/dist/messages/de/index.d.ts.map +1 -1
  45. package/dist/messages/en/devtools.json +16 -0
  46. package/dist/messages/en/index.d.ts +16 -0
  47. package/dist/messages/en/index.d.ts.map +1 -1
  48. package/dist/messages/es/devtools.json +4 -0
  49. package/dist/messages/es/index.d.ts +4 -0
  50. package/dist/messages/es/index.d.ts.map +1 -1
  51. package/dist/messages/fr/devtools.json +4 -0
  52. package/dist/messages/fr/index.d.ts +4 -0
  53. package/dist/messages/fr/index.d.ts.map +1 -1
  54. package/dist/messages/it/devtools.json +4 -0
  55. package/dist/messages/it/index.d.ts +4 -0
  56. package/dist/messages/it/index.d.ts.map +1 -1
  57. package/dist/messages/pt/devtools.json +4 -0
  58. package/dist/messages/pt/index.d.ts +4 -0
  59. package/dist/messages/pt/index.d.ts.map +1 -1
  60. package/dist/nextspark-entities.d.ts +59 -0
  61. package/dist/styles/classes.json +15 -2
  62. package/dist/styles/ui.css +1 -1
  63. package/dist/templates/app/(public)/[...slug]/page.tsx +2 -1
  64. package/dist/templates/app/(public)/docs/[section]/[page]/page.tsx +1 -1
  65. package/dist/templates/app/api/devtools/config/entities/route.ts +2 -1
  66. package/dist/templates/app/api/user/plan-flags/route.ts +1 -1
  67. package/dist/templates/app/api/v1/[entity]/[id]/child/[childType]/[childId]/route.ts +4 -2
  68. package/dist/templates/app/dashboard/(main)/layout.tsx +2 -1
  69. package/dist/templates/app/dashboard/(main)/loading.tsx +5 -0
  70. package/dist/templates/app/dashboard/features/loading.tsx +5 -0
  71. package/dist/templates/app/dashboard/settings/api-keys/loading.tsx +5 -0
  72. package/dist/templates/app/dashboard/settings/billing/loading.tsx +5 -0
  73. package/dist/templates/app/dashboard/settings/invoices/loading.tsx +5 -0
  74. package/dist/templates/app/dashboard/settings/loading.tsx +5 -0
  75. package/dist/templates/app/dashboard/settings/notifications/loading.tsx +5 -0
  76. package/dist/templates/app/dashboard/settings/password/loading.tsx +5 -0
  77. package/dist/templates/app/dashboard/settings/plans/loading.tsx +5 -0
  78. package/dist/templates/app/dashboard/settings/profile/loading.tsx +5 -0
  79. package/dist/templates/app/dashboard/settings/security/loading.tsx +5 -0
  80. package/dist/templates/app/dashboard/settings/teams/loading.tsx +5 -0
  81. package/dist/templates/app/devtools/config/page.tsx +1 -1
  82. package/dist/templates/app/devtools/page.tsx +1 -1
  83. package/dist/templates/app/devtools/tests/[[...path]]/page.tsx +1 -1
  84. package/dist/templates/contents/themes/starter/messages/de/common.json +4 -1
  85. package/dist/templates/contents/themes/starter/messages/de/index.ts +15 -0
  86. package/dist/templates/contents/themes/starter/messages/en/common.json +4 -1
  87. package/dist/templates/contents/themes/starter/messages/en/index.ts +15 -0
  88. package/dist/templates/contents/themes/starter/messages/es/common.json +4 -1
  89. package/dist/templates/contents/themes/starter/messages/es/index.ts +15 -0
  90. package/dist/templates/contents/themes/starter/messages/fr/common.json +4 -1
  91. package/dist/templates/contents/themes/starter/messages/fr/index.ts +15 -0
  92. package/dist/templates/contents/themes/starter/messages/it/common.json +4 -1
  93. package/dist/templates/contents/themes/starter/messages/it/index.ts +13 -0
  94. package/dist/templates/contents/themes/starter/messages/pt/common.json +4 -1
  95. package/dist/templates/contents/themes/starter/messages/pt/index.ts +13 -0
  96. package/dist/templates/contents/themes/starter/styles/globals.css +3 -1
  97. package/dist/templates/contents/themes/starter/templates/(dashboard)/analytics/loading.tsx +5 -0
  98. package/dist/templates/contents/themes/starter/templates/(public)/loading.tsx +5 -0
  99. package/dist/templates/next.config.mjs +5 -0
  100. package/dist/templates/{middleware.ts → proxy.ts} +5 -6
  101. package/globals.css +54 -0
  102. package/nextspark-entities.d.ts +59 -0
  103. package/package.json +14 -13
  104. package/scripts/build/registry/discovery/api-presets.mjs +20 -12
  105. package/scripts/build/registry/generators/api-presets-registry.mjs +18 -5
  106. package/scripts/build/registry/generators/block-registry.mjs +14 -3
  107. package/scripts/build/registry/generators/docs-registry.mjs +21 -3
  108. package/scripts/build/registry/generators/translation-registry.mjs +16 -7
  109. package/scripts/build/theme.mjs +2 -1
  110. package/templates/app/(public)/[...slug]/page.tsx +2 -1
  111. package/templates/app/(public)/docs/[section]/[page]/page.tsx +1 -1
  112. package/templates/app/api/auth/[...all]/route.ts +13 -5
  113. package/templates/app/api/devtools/config/entities/route.ts +2 -1
  114. package/templates/app/api/user/plan-flags/route.ts +1 -1
  115. package/templates/app/api/v1/[entity]/[id]/child/[childType]/[childId]/route.ts +4 -2
  116. package/templates/app/dashboard/(main)/layout.tsx +2 -1
  117. package/templates/app/dashboard/(main)/loading.tsx +5 -0
  118. package/templates/app/dashboard/features/loading.tsx +5 -0
  119. package/templates/app/dashboard/settings/api-keys/loading.tsx +5 -0
  120. package/templates/app/dashboard/settings/billing/loading.tsx +5 -0
  121. package/templates/app/dashboard/settings/invoices/loading.tsx +5 -0
  122. package/templates/app/dashboard/settings/loading.tsx +5 -0
  123. package/templates/app/dashboard/settings/notifications/loading.tsx +5 -0
  124. package/templates/app/dashboard/settings/password/loading.tsx +5 -0
  125. package/templates/app/dashboard/settings/plans/loading.tsx +5 -0
  126. package/templates/app/dashboard/settings/profile/loading.tsx +5 -0
  127. package/templates/app/dashboard/settings/security/loading.tsx +5 -0
  128. package/templates/app/dashboard/settings/teams/loading.tsx +5 -0
  129. package/templates/app/devtools/config/page.tsx +1 -1
  130. package/templates/app/devtools/page.tsx +1 -1
  131. package/templates/app/devtools/tests/[[...path]]/page.tsx +1 -1
  132. package/templates/contents/themes/starter/config/app.config.ts +8 -7
  133. package/templates/contents/themes/starter/messages/de/common.json +4 -1
  134. package/templates/contents/themes/starter/messages/de/index.ts +15 -0
  135. package/templates/contents/themes/starter/messages/en/common.json +4 -1
  136. package/templates/contents/themes/starter/messages/en/index.ts +15 -0
  137. package/templates/contents/themes/starter/messages/es/common.json +4 -1
  138. package/templates/contents/themes/starter/messages/es/index.ts +15 -0
  139. package/templates/contents/themes/starter/messages/fr/common.json +4 -1
  140. package/templates/contents/themes/starter/messages/fr/index.ts +15 -0
  141. package/templates/contents/themes/starter/messages/it/common.json +4 -1
  142. package/templates/contents/themes/starter/messages/it/index.ts +13 -0
  143. package/templates/contents/themes/starter/messages/pt/common.json +4 -1
  144. package/templates/contents/themes/starter/messages/pt/index.ts +13 -0
  145. package/templates/contents/themes/starter/styles/globals.css +3 -1
  146. package/templates/contents/themes/starter/templates/(dashboard)/analytics/loading.tsx +5 -0
  147. package/templates/contents/themes/starter/templates/(public)/loading.tsx +5 -0
  148. package/templates/next.config.mjs +5 -0
  149. package/templates/pnpm-workspace.yaml +5 -0
  150. package/templates/{middleware.ts → proxy.ts} +5 -6
  151. package/tests/jest/setup.ts +5 -0
  152. package/dist/presets/plugin/.env.example.template +0 -19
@@ -8,7 +8,10 @@
8
8
  "delete": "Elimina",
9
9
  "edit": "Modifica",
10
10
  "create": "Crea",
11
- "search": "Cerca...",
11
+ "search": {
12
+ "placeholder": "Cerca...",
13
+ "label": "Cerca"
14
+ },
12
15
  "noResults": "Nessun risultato trovato",
13
16
  "confirm": "Conferma",
14
17
  "back": "Indietro",
@@ -0,0 +1,13 @@
1
+ import analytics from './analytics.json'
2
+ import common from './common.json'
3
+ import features from './features.json'
4
+ import home from './home.json'
5
+ import navigation from './navigation.json'
6
+
7
+ export default {
8
+ analytics,
9
+ common,
10
+ features,
11
+ home,
12
+ navigation
13
+ } as const
@@ -8,7 +8,10 @@
8
8
  "delete": "Excluir",
9
9
  "edit": "Editar",
10
10
  "create": "Criar",
11
- "search": "Pesquisar...",
11
+ "search": {
12
+ "placeholder": "Pesquisar...",
13
+ "label": "Pesquisar"
14
+ },
12
15
  "noResults": "Nenhum resultado encontrado",
13
16
  "confirm": "Confirmar",
14
17
  "back": "Voltar",
@@ -0,0 +1,13 @@
1
+ import analytics from './analytics.json'
2
+ import common from './common.json'
3
+ import features from './features.json'
4
+ import home from './home.json'
5
+ import navigation from './navigation.json'
6
+
7
+ export default {
8
+ analytics,
9
+ common,
10
+ features,
11
+ home,
12
+ navigation
13
+ } as const
@@ -10,10 +10,12 @@
10
10
  IMPORTS
11
11
  ============================================= */
12
12
  @import "tailwindcss";
13
- @import "@nextsparkjs/core/styles/ui.css";
14
13
  @import "@nextsparkjs/core/styles/utilities.css";
15
14
  @import "@nextsparkjs/core/styles/docs.css";
16
15
  @source "../../../**/*.{js,ts,jsx,tsx}";
16
+ /* Core package: monorepo (short path) + npm projects (long path) */
17
+ @source "../node_modules/@nextsparkjs/core/dist/**/*.js";
18
+ @source "../../../../node_modules/@nextsparkjs/core/dist/**/*.js";
17
19
 
18
20
  /* =============================================
19
21
  THEME VARIABLES - LIGHT MODE (OKLCH)
@@ -0,0 +1,5 @@
1
+ import { SkeletonAnalyticsPage } from '@nextsparkjs/core/components/ui/skeleton-features'
2
+
3
+ export default function AnalyticsLoading() {
4
+ return <SkeletonAnalyticsPage />
5
+ }
@@ -0,0 +1,5 @@
1
+ import { SkeletonLandingPage } from '@nextsparkjs/core/components/ui/skeleton-public'
2
+
3
+ export default function HomeLoading() {
4
+ return <SkeletonLandingPage />
5
+ }
@@ -10,6 +10,11 @@ const withNextIntl = createNextIntlPlugin('./i18n.ts');
10
10
 
11
11
  /** @type {import('next').NextConfig} */
12
12
  const nextConfig = {
13
+ // Ignore TypeScript build errors - needed until DTS generation is enabled for @nextsparkjs/core
14
+ // Without this, production builds fail due to missing declaration files for deep imports
15
+ typescript: {
16
+ ignoreBuildErrors: true,
17
+ },
13
18
  transpilePackages: ['@nextsparkjs/core'],
14
19
  serverExternalPackages: ['handlebars'],
15
20
  experimental: {
@@ -0,0 +1,5 @@
1
+ # pnpm workspace configuration
2
+ # Enables plugins and themes to have their own package.json with dependencies
3
+ packages:
4
+ - 'contents/themes/*'
5
+ - 'contents/plugins/*'
@@ -1,7 +1,8 @@
1
1
  /**
2
- * NextSpark Middleware
2
+ * NextSpark Proxy (Next.js 16+)
3
3
  *
4
4
  * Handles authentication, route protection, and user context injection.
5
+ * Note: In Next.js 16, "middleware" was renamed to "proxy" with nodejs runtime.
5
6
  *
6
7
  * Key responsibilities:
7
8
  * 1. Theme middleware override support
@@ -14,7 +15,6 @@
14
15
  */
15
16
  import { betterFetch } from '@better-fetch/fetch'
16
17
  import { NextRequest, NextResponse } from 'next/server'
17
- // Edge-compatible imports (do NOT use lib/services or lib/auth - they have Node.js dependencies)
18
18
  import {
19
19
  hasThemeMiddleware,
20
20
  executeThemeMiddleware,
@@ -22,8 +22,7 @@ import {
22
22
  } from '@nextsparkjs/core/lib/middleware'
23
23
 
24
24
  /**
25
- * Session type for middleware (edge-compatible inline definition)
26
- * We can't import from @nextsparkjs/core/lib/auth because it has Node.js dependencies
25
+ * Session type for proxy (inline definition)
27
26
  */
28
27
  interface Session {
29
28
  user: {
@@ -65,7 +64,7 @@ function isPublicPath(pathname: string): boolean {
65
64
  )
66
65
  }
67
66
 
68
- export async function middleware(request: NextRequest) {
67
+ export async function proxy(request: NextRequest) {
69
68
  const { pathname } = request.nextUrl
70
69
 
71
70
  // 1. Check for theme middleware override
@@ -178,7 +177,7 @@ export async function middleware(request: NextRequest) {
178
177
  request: { headers: requestHeaders },
179
178
  })
180
179
  } catch (error) {
181
- console.error('Middleware error:', error)
180
+ console.error('Proxy error:', error)
182
181
  const loginUrl = new URL('/login', request.url)
183
182
  loginUrl.searchParams.set('callbackUrl', pathname)
184
183
  return NextResponse.redirect(loginUrl)
@@ -1,6 +1,11 @@
1
1
  import '@testing-library/jest-dom'
2
2
  import { TextEncoder, TextDecoder } from 'util'
3
3
 
4
+ // Set fallback environment variables for tests that import auth.ts
5
+ process.env.DATABASE_URL = process.env.DATABASE_URL || 'postgresql://test:test@localhost:5432/test'
6
+ process.env.BETTER_AUTH_SECRET = process.env.BETTER_AUTH_SECRET || 'test-secret-for-jest-tests'
7
+ process.env.NEXT_PUBLIC_APP_URL = process.env.NEXT_PUBLIC_APP_URL || 'http://localhost:3000'
8
+
4
9
  // Polyfill TextEncoder/TextDecoder for jsdom
5
10
  global.TextEncoder = TextEncoder
6
11
  global.TextDecoder = TextDecoder as typeof global.TextDecoder
@@ -1,19 +0,0 @@
1
- # {{PLUGIN_DISPLAY_NAME}} Plugin Environment Variables
2
- # Copy this file to .env and configure your values
3
-
4
- # =============================================================================
5
- # REQUIRED CONFIGURATION
6
- # =============================================================================
7
-
8
- # API Key for external service (if applicable)
9
- {{PLUGIN_ENV_PREFIX}}_API_KEY=your-api-key-here
10
-
11
- # =============================================================================
12
- # OPTIONAL CONFIGURATION
13
- # =============================================================================
14
-
15
- # Enable debug mode
16
- {{PLUGIN_ENV_PREFIX}}_DEBUG=false
17
-
18
- # Custom endpoint (if applicable)
19
- # {{PLUGIN_ENV_PREFIX}}_ENDPOINT=https://api.example.com