@open-mercato/cli 0.6.6-develop.6458.1.113a54fb91 → 0.6.6-develop.6465.1.019f0fb26f
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/.turbo/turbo-build.log +45 -1
- package/build.mjs +25 -15
- package/dist/agentic/guides/module-facts.json +3375 -349
- package/dist/agentic/guides/modules/ai_assistant.md +57 -0
- package/dist/agentic/guides/modules/api_docs.md +39 -0
- package/dist/agentic/guides/modules/api_keys.md +41 -0
- package/dist/agentic/guides/modules/attachments.md +46 -0
- package/dist/agentic/guides/modules/audit_logs.md +42 -0
- package/dist/agentic/guides/modules/auth.md +1 -1
- package/dist/agentic/guides/modules/business_rules.md +44 -0
- package/dist/agentic/guides/modules/catalog.md +1 -1
- package/dist/agentic/guides/modules/channel_gmail.md +39 -0
- package/dist/agentic/guides/modules/channel_imap.md +39 -0
- package/dist/agentic/guides/modules/checkout.md +60 -0
- package/dist/agentic/guides/modules/communication_channels.md +65 -0
- package/dist/agentic/guides/modules/configs.md +42 -0
- package/dist/agentic/guides/modules/content.md +39 -0
- package/dist/agentic/guides/modules/currencies.md +1 -1
- package/dist/agentic/guides/modules/customer_accounts.md +1 -1
- package/dist/agentic/guides/modules/customers.md +1 -1
- package/dist/agentic/guides/modules/dashboards.md +43 -0
- package/dist/agentic/guides/modules/data_sync.md +1 -1
- package/dist/agentic/guides/modules/dictionaries.md +46 -0
- package/dist/agentic/guides/modules/directory.md +49 -0
- package/dist/agentic/guides/modules/entities.md +46 -0
- package/dist/agentic/guides/modules/events.md +39 -0
- package/dist/agentic/guides/modules/feature_toggles.md +42 -0
- package/dist/agentic/guides/modules/gateway_stripe.md +39 -0
- package/dist/agentic/guides/modules/generators.md +39 -0
- package/dist/agentic/guides/modules/inbox_ops.md +59 -0
- package/dist/agentic/guides/modules/integrations.md +1 -1
- package/dist/agentic/guides/modules/messages.md +55 -0
- package/dist/agentic/guides/modules/notifications.md +41 -0
- package/dist/agentic/guides/modules/onboarding.md +41 -0
- package/dist/agentic/guides/modules/payment_gateways.md +52 -0
- package/dist/agentic/guides/modules/perspectives.md +42 -0
- package/dist/agentic/guides/modules/planner.md +49 -0
- package/dist/agentic/guides/modules/portal.md +39 -0
- package/dist/agentic/guides/modules/progress.md +48 -0
- package/dist/agentic/guides/modules/query_index.md +46 -0
- package/dist/agentic/guides/modules/record_locks.md +53 -0
- package/dist/agentic/guides/modules/resources.md +62 -0
- package/dist/agentic/guides/modules/sales.md +1 -1
- package/dist/agentic/guides/modules/scheduler.md +46 -0
- package/dist/agentic/guides/modules/search.md +39 -0
- package/dist/agentic/guides/modules/security.md +67 -0
- package/dist/agentic/guides/modules/shipping_carriers.md +51 -0
- package/dist/agentic/guides/modules/sso.md +59 -0
- package/dist/agentic/guides/modules/staff.md +88 -0
- package/dist/agentic/guides/modules/storage_s3.md +39 -0
- package/dist/agentic/guides/modules/sync_akeneo.md +39 -0
- package/dist/agentic/guides/modules/sync_excel.md +41 -0
- package/dist/agentic/guides/modules/system_status_overlays.md +39 -0
- package/dist/agentic/guides/modules/translations.md +44 -0
- package/dist/agentic/guides/modules/webhooks.md +54 -0
- package/dist/agentic/guides/modules/workflows.md +1 -1
- package/dist/lib/generators/index.js +0 -2
- package/dist/lib/generators/index.js.map +2 -2
- package/dist/lib/generators/module-facts-discovery.js +46 -0
- package/dist/lib/generators/module-facts-discovery.js.map +7 -0
- package/dist/lib/generators/module-facts.js +14 -8
- package/dist/lib/generators/module-facts.js.map +2 -2
- package/dist/lib/testing/integration.js +185 -5
- package/dist/lib/testing/integration.js.map +2 -2
- package/dist/mercato.js +1 -3
- package/dist/mercato.js.map +2 -2
- package/package.json +5 -5
- package/src/__tests__/mercato.test.ts +0 -5
- package/src/lib/generators/__tests__/module-facts.bc-guard.test.ts +36 -23
- package/src/lib/generators/__tests__/module-facts.discovery.test.ts +88 -0
- package/src/lib/generators/index.ts +0 -1
- package/src/lib/generators/module-facts-discovery.ts +58 -0
- package/src/lib/generators/module-facts.ts +50 -10
- package/src/lib/testing/__tests__/integration.test.ts +228 -6
- package/src/lib/testing/integration.ts +231 -3
- package/src/mercato.ts +0 -2
- package/dist/lib/generators/module-facts-generate.js +0 -52
- package/dist/lib/generators/module-facts-generate.js.map +0 -7
- package/src/lib/generators/module-facts-generate.ts +0 -68
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import fs from 'node:fs'
|
|
2
|
-
import path from 'node:path'
|
|
3
|
-
import type { PackageResolver } from '../resolver'
|
|
4
|
-
import {
|
|
5
|
-
createGeneratorResult,
|
|
6
|
-
ensureDir,
|
|
7
|
-
logGenerationResult,
|
|
8
|
-
type GeneratorResult,
|
|
9
|
-
} from '../utils'
|
|
10
|
-
import { extractAllModuleFacts, renderModuleFactsJson } from './module-facts'
|
|
11
|
-
|
|
12
|
-
export interface ModuleFactsOptions {
|
|
13
|
-
resolver: PackageResolver
|
|
14
|
-
quiet?: boolean
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
function readCoreVersion(coreSrcRoot: string): string | null {
|
|
18
|
-
const corePackageJsonPath = path.resolve(coreSrcRoot, '..', '..', 'package.json')
|
|
19
|
-
if (!fs.existsSync(corePackageJsonPath)) return null
|
|
20
|
-
try {
|
|
21
|
-
const parsed = JSON.parse(fs.readFileSync(corePackageJsonPath, 'utf8')) as { version?: unknown }
|
|
22
|
-
return typeof parsed.version === 'string' ? parsed.version : null
|
|
23
|
-
} catch {
|
|
24
|
-
return null
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Emits the versioned `apps/mercato/src/module-facts.generated.json` artifact from
|
|
30
|
-
* monorepo core module sources. Must run AFTER `generateModuleRegistry` because
|
|
31
|
-
* per-route API auth is read from the generated `modules.runtime.generated.ts`
|
|
32
|
-
* registry (`apis[].metadata`). Registry-derived warnings are non-fatal.
|
|
33
|
-
*/
|
|
34
|
-
export async function generateModuleFacts(options: ModuleFactsOptions): Promise<GeneratorResult> {
|
|
35
|
-
const { resolver, quiet } = options
|
|
36
|
-
const result = createGeneratorResult()
|
|
37
|
-
|
|
38
|
-
const rootDir = resolver.getRootDir()
|
|
39
|
-
const coreSrcRoot = path.join(rootDir, 'packages', 'core', 'src', 'modules')
|
|
40
|
-
if (!fs.existsSync(coreSrcRoot)) {
|
|
41
|
-
if (!quiet) {
|
|
42
|
-
console.warn(`[module-facts] core module sources not found at ${coreSrcRoot}; skipping module-facts generation`)
|
|
43
|
-
}
|
|
44
|
-
return result
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
const registryPath = path.join(resolver.getOutputDir(), 'modules.runtime.generated.ts')
|
|
48
|
-
const coreVersion = readCoreVersion(coreSrcRoot)
|
|
49
|
-
|
|
50
|
-
const { factsByModule, warnings } = extractAllModuleFacts({ coreSrcRoot, registryPath, coreVersion })
|
|
51
|
-
for (const warning of warnings) {
|
|
52
|
-
console.warn(warning)
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
const content = renderModuleFactsJson(factsByModule)
|
|
56
|
-
const outFile = path.join(resolver.getAppDir(), 'src', 'module-facts.generated.json')
|
|
57
|
-
const existing = fs.existsSync(outFile) ? fs.readFileSync(outFile, 'utf8') : null
|
|
58
|
-
if (existing === content) {
|
|
59
|
-
result.filesUnchanged.push(outFile)
|
|
60
|
-
return result
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
ensureDir(outFile)
|
|
64
|
-
fs.writeFileSync(outFile, content)
|
|
65
|
-
result.filesWritten.push(outFile)
|
|
66
|
-
logGenerationResult(path.relative(process.cwd(), outFile), true)
|
|
67
|
-
return result
|
|
68
|
-
}
|