@nextsparkjs/core 0.1.0-beta.144 → 0.1.0-beta.145

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.
@@ -1,5 +1,5 @@
1
1
  {
2
- "generated": "2026-04-15T14:36:02.678Z",
2
+ "generated": "2026-04-15T18:22:50.192Z",
3
3
  "totalClasses": 1078,
4
4
  "classes": [
5
5
  "!text-2xl",
@@ -1,3 +1,4 @@
1
+ import { connection } from 'next/server'
1
2
  import { notFound } from 'next/navigation'
2
3
  import { DOCS_REGISTRY } from '@nextsparkjs/registries/docs-registry'
3
4
  import { parseMarkdownFile } from '@nextsparkjs/core/lib/docs/parser'
@@ -14,21 +15,6 @@ interface SuperadminDocsPageProps {
14
15
  }>
15
16
  }
16
17
 
17
- export async function generateStaticParams() {
18
- const params = []
19
-
20
- for (const section of DOCS_REGISTRY.superadmin) {
21
- for (const page of section.pages) {
22
- params.push({
23
- section: section.slug,
24
- page: page.slug
25
- })
26
- }
27
- }
28
-
29
- return params
30
- }
31
-
32
18
  export async function generateMetadata({ params }: SuperadminDocsPageProps): Promise<Metadata> {
33
19
  const resolvedParams = await params
34
20
  const { section: sectionSlug, page: pageSlug } = resolvedParams
@@ -48,6 +34,7 @@ export async function generateMetadata({ params }: SuperadminDocsPageProps): Pro
48
34
  }
49
35
 
50
36
  export default async function SuperadminDocsDetailPage({ params }: SuperadminDocsPageProps) {
37
+ await connection()
51
38
  const resolvedParams = await params
52
39
  const { section: sectionSlug, page: pageSlug } = resolvedParams
53
40
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nextsparkjs/core",
3
- "version": "0.1.0-beta.144",
3
+ "version": "0.1.0-beta.145",
4
4
  "description": "NextSpark - The complete SaaS framework for Next.js",
5
5
  "license": "MIT",
6
6
  "author": "NextSpark <hello@nextspark.dev>",
@@ -463,7 +463,7 @@
463
463
  "tailwind-merge": "^3.3.1",
464
464
  "uuid": "^13.0.0",
465
465
  "zod": "^4.1.5",
466
- "@nextsparkjs/testing": "0.1.0-beta.144"
466
+ "@nextsparkjs/testing": "0.1.0-beta.145"
467
467
  },
468
468
  "scripts": {
469
469
  "postinstall": "node scripts/postinstall.mjs || true",
@@ -218,12 +218,23 @@ export async function buildRegistries(projectRoot = null) {
218
218
  })
219
219
 
220
220
  // Merge all entities with priority: plugins < core < themes
221
- const allEntities = [
221
+ // Theme entities override core entities with the same slug (e.g., patterns)
222
+ const mergedEntities = [
222
223
  ...pluginEntities, // Lowest priority
223
224
  ...coreEntities, // Core framework entities
224
225
  ...themeEntities // Highest priority (can override core)
225
226
  ]
226
227
 
228
+ // Deduplicate: later entries (theme) win over earlier (core/plugin) with same name
229
+ const entityMap = new Map()
230
+ for (const entity of mergedEntities) {
231
+ if (entityMap.has(entity.name)) {
232
+ log(` ↳ Theme override: "${entity.name}" (${entity.source || 'theme'} replaces ${entityMap.get(entity.name).source || 'core'})`, 'info')
233
+ }
234
+ entityMap.set(entity.name, entity)
235
+ }
236
+ const allEntities = Array.from(entityMap.values())
237
+
227
238
  // PHASE 3 VALIDATION: Ensure all entities have access.shared defined
228
239
  await validateEntityConfigurations(allEntities)
229
240
 
@@ -1,3 +1,4 @@
1
+ import { connection } from 'next/server'
1
2
  import { notFound } from 'next/navigation'
2
3
  import { DOCS_REGISTRY } from '@nextsparkjs/registries/docs-registry'
3
4
  import { parseMarkdownFile } from '@nextsparkjs/core/lib/docs/parser'
@@ -14,21 +15,6 @@ interface SuperadminDocsPageProps {
14
15
  }>
15
16
  }
16
17
 
17
- export async function generateStaticParams() {
18
- const params = []
19
-
20
- for (const section of DOCS_REGISTRY.superadmin) {
21
- for (const page of section.pages) {
22
- params.push({
23
- section: section.slug,
24
- page: page.slug
25
- })
26
- }
27
- }
28
-
29
- return params
30
- }
31
-
32
18
  export async function generateMetadata({ params }: SuperadminDocsPageProps): Promise<Metadata> {
33
19
  const resolvedParams = await params
34
20
  const { section: sectionSlug, page: pageSlug } = resolvedParams
@@ -48,6 +34,7 @@ export async function generateMetadata({ params }: SuperadminDocsPageProps): Pro
48
34
  }
49
35
 
50
36
  export default async function SuperadminDocsDetailPage({ params }: SuperadminDocsPageProps) {
37
+ await connection()
51
38
  const resolvedParams = await params
52
39
  const { section: sectionSlug, page: pageSlug } = resolvedParams
53
40