@se-studio/project-build 1.0.68 → 1.0.71
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/CHANGELOG.md +18 -0
- package/package.json +2 -4
- package/skills/se-marketing-sites/create-collection/SKILL.md +14 -10
- package/skills/se-marketing-sites/create-component/SKILL.md +1 -1
- package/skills/se-marketing-sites/handling-media/SKILL.md +19 -0
- package/skills/se-marketing-sites/lib-cms-structure/SKILL.md +8 -6
- package/skills/se-marketing-sites/register-cms-features/SKILL.md +15 -15
- package/skills/se-marketing-sites/styling-system/SKILL.md +1 -1
- package/dist/management/check-target.d.ts +0 -2
- package/dist/management/check-target.d.ts.map +0 -1
- package/dist/management/check-target.js +0 -40
- package/dist/management/check-target.js.map +0 -1
- package/dist/management/count-brightline.d.ts +0 -2
- package/dist/management/count-brightline.d.ts.map +0 -1
- package/dist/management/count-brightline.js +0 -37
- package/dist/management/count-brightline.js.map +0 -1
- package/dist/management/cross-check-migration.d.ts +0 -2
- package/dist/management/cross-check-migration.d.ts.map +0 -1
- package/dist/management/cross-check-migration.js +0 -212
- package/dist/management/cross-check-migration.js.map +0 -1
- package/dist/management/discovery-brightlife.d.ts +0 -2
- package/dist/management/discovery-brightlife.d.ts.map +0 -1
- package/dist/management/discovery-brightlife.js +0 -78
- package/dist/management/discovery-brightlife.js.map +0 -1
- package/dist/management/discovery-brightline.d.ts +0 -2
- package/dist/management/discovery-brightline.d.ts.map +0 -1
- package/dist/management/discovery-brightline.js +0 -68
- package/dist/management/discovery-brightline.js.map +0 -1
- package/dist/management/generateVisibilityJson.d.ts +0 -3
- package/dist/management/generateVisibilityJson.d.ts.map +0 -1
- package/dist/management/generateVisibilityJson.js +0 -149
- package/dist/management/generateVisibilityJson.js.map +0 -1
- package/dist/management/inspect-target.d.ts +0 -2
- package/dist/management/inspect-target.d.ts.map +0 -1
- package/dist/management/inspect-target.js +0 -48
- package/dist/management/inspect-target.js.map +0 -1
- package/dist/management/migrate-brightlife.d.ts +0 -2
- package/dist/management/migrate-brightlife.d.ts.map +0 -1
- package/dist/management/migrate-brightlife.js +0 -475
- package/dist/management/migrate-brightlife.js.map +0 -1
- package/dist/management/migrate-brightline.d.ts +0 -2
- package/dist/management/migrate-brightline.d.ts.map +0 -1
- package/dist/management/migrate-brightline.js +0 -1085
- package/dist/management/migrate-brightline.js.map +0 -1
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
import * as contentful from 'contentful';
|
|
2
|
-
import dotenv from 'dotenv';
|
|
3
|
-
// Load environment variables from .env file in project root or current package
|
|
4
|
-
dotenv.config();
|
|
5
|
-
const SPACE_ID = 'c27ds9epot4n';
|
|
6
|
-
const ENV_ID = 'master';
|
|
7
|
-
// These IDs are guesses based on user input, we will also list all to confirm
|
|
8
|
-
const TARGET_IDS = ['contentPage', 'blogPost', 'ctaCard', 'cards', 'page', 'article', 'component', 'collection'];
|
|
9
|
-
async function runDiscovery() {
|
|
10
|
-
console.log(`Connecting to Space: ${SPACE_ID}, Environment: ${ENV_ID} (using CDA)`);
|
|
11
|
-
// Try to find the token
|
|
12
|
-
const accessToken = process.env.CONTENTFUL_ACCESS_TOKEN || process.env.CONTENTFUL_DELIVERY_TOKEN;
|
|
13
|
-
if (!accessToken) {
|
|
14
|
-
console.error('Error: CONTENTFUL_ACCESS_TOKEN is not set in environment variables.');
|
|
15
|
-
console.error('Please export CONTENTFUL_ACCESS_TOKEN=... before running this script.');
|
|
16
|
-
process.exit(1);
|
|
17
|
-
}
|
|
18
|
-
const client = contentful.createClient({
|
|
19
|
-
space: SPACE_ID,
|
|
20
|
-
environment: ENV_ID,
|
|
21
|
-
accessToken: accessToken,
|
|
22
|
-
});
|
|
23
|
-
try {
|
|
24
|
-
console.log('Fetching content types...');
|
|
25
|
-
const contentTypes = await client.getContentTypes();
|
|
26
|
-
console.log(`Found ${contentTypes.items.length} content types.`);
|
|
27
|
-
console.log('\n--- ALL CONTENT TYPES ---');
|
|
28
|
-
contentTypes.items.forEach((ct) => {
|
|
29
|
-
console.log(`- ${ct.name} (id: ${ct.sys.id})`);
|
|
30
|
-
});
|
|
31
|
-
console.log('\n--- DETAILED SCHEMA ANALYSIS ---');
|
|
32
|
-
// Filter for relevant types (loose match on ID or Name)
|
|
33
|
-
const relevantTypes = contentTypes.items.filter(ct => {
|
|
34
|
-
const lowerId = ct.sys.id.toLowerCase();
|
|
35
|
-
const lowerName = ct.name.toLowerCase();
|
|
36
|
-
return TARGET_IDS.some(target => lowerId.includes(target.toLowerCase()) || lowerName.includes(target.toLowerCase()));
|
|
37
|
-
});
|
|
38
|
-
for (const ct of relevantTypes) {
|
|
39
|
-
console.log(`\n=== ${ct.name} (${ct.sys.id}) ===`);
|
|
40
|
-
console.log(`Description: ${ct.description || 'N/A'}`);
|
|
41
|
-
console.log('Fields:');
|
|
42
|
-
ct.fields.forEach(field => {
|
|
43
|
-
let details = ` - ${field.id} (${field.type})`;
|
|
44
|
-
if (field.required)
|
|
45
|
-
details += ' [Required]';
|
|
46
|
-
if (field.localized)
|
|
47
|
-
details += ' [Localized]';
|
|
48
|
-
if (field.linkType)
|
|
49
|
-
details += ` -> ${field.linkType}`;
|
|
50
|
-
if (field.type === 'Array' && field.items) {
|
|
51
|
-
details += ` of ${field.items.type}`;
|
|
52
|
-
if (field.items.linkType)
|
|
53
|
-
details += ` -> ${field.items.linkType}`;
|
|
54
|
-
if (field.items.validations) {
|
|
55
|
-
const linkContentTypeValidation = field.items.validations.find((v) => v.linkContentType);
|
|
56
|
-
if (linkContentTypeValidation && linkContentTypeValidation.linkContentType) {
|
|
57
|
-
details += ` (Allowed: ${linkContentTypeValidation.linkContentType.join(', ')})`;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
// Check for validations on the field itself
|
|
62
|
-
if (field.validations) {
|
|
63
|
-
const linkContentTypeValidation = field.validations.find((v) => v.linkContentType);
|
|
64
|
-
if (linkContentTypeValidation && linkContentTypeValidation.linkContentType) {
|
|
65
|
-
details += ` (Allowed: ${linkContentTypeValidation.linkContentType.join(', ')})`;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
console.log(details);
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
catch (error) {
|
|
73
|
-
console.error('Error occurred:', error);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
// Execute
|
|
77
|
-
runDiscovery().catch(console.error);
|
|
78
|
-
//# sourceMappingURL=discovery-brightlife.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-brightlife.js","sourceRoot":"","sources":["../../src/management/discovery-brightlife.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-brightline.d.ts","sourceRoot":"","sources":["../../src/management/discovery-brightline.ts"],"names":[],"mappings":""}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import * as contentful from 'contentful';
|
|
2
|
-
import dotenv from 'dotenv';
|
|
3
|
-
// Load environment variables from .env file in project root or current package
|
|
4
|
-
dotenv.config();
|
|
5
|
-
const SPACE_ID = '96gdpqkm7elu';
|
|
6
|
-
const ENV_ID = 'master';
|
|
7
|
-
async function runDiscovery() {
|
|
8
|
-
console.log(`Connecting to Space: ${SPACE_ID}, Environment: ${ENV_ID}`);
|
|
9
|
-
const accessToken = process.env.CONTENTFUL_ACCESS_TOKEN || process.env.CONTENTFUL_DELIVERY_TOKEN;
|
|
10
|
-
if (!accessToken) {
|
|
11
|
-
console.error('Error: CONTENTFUL_ACCESS_TOKEN is not set in environment variables.');
|
|
12
|
-
process.exit(1);
|
|
13
|
-
}
|
|
14
|
-
const client = contentful.createClient({
|
|
15
|
-
space: SPACE_ID,
|
|
16
|
-
environment: ENV_ID,
|
|
17
|
-
accessToken: accessToken,
|
|
18
|
-
});
|
|
19
|
-
try {
|
|
20
|
-
console.log('Fetching content types...');
|
|
21
|
-
const contentTypes = await client.getContentTypes();
|
|
22
|
-
console.log(`Found ${contentTypes.items.length} content types.`);
|
|
23
|
-
console.log('\n--- ALL CONTENT TYPES ---');
|
|
24
|
-
contentTypes.items.forEach((ct) => {
|
|
25
|
-
console.log(`- ${ct.name} (id: ${ct.sys.id})`);
|
|
26
|
-
});
|
|
27
|
-
console.log('\n--- DETAILED SCHEMA ANALYSIS ---');
|
|
28
|
-
for (const ct of contentTypes.items) {
|
|
29
|
-
console.log(`\n=== ${ct.name} (${ct.sys.id}) ===`);
|
|
30
|
-
console.log(`Description: ${ct.description || 'N/A'}`);
|
|
31
|
-
console.log('Fields:');
|
|
32
|
-
ct.fields.forEach(field => {
|
|
33
|
-
let details = ` - ${field.id} (${field.type})`;
|
|
34
|
-
if (field.required)
|
|
35
|
-
details += ' [Required]';
|
|
36
|
-
if (field.localized)
|
|
37
|
-
details += ' [Localized]';
|
|
38
|
-
if (field.linkType)
|
|
39
|
-
details += ` -> ${field.linkType}`;
|
|
40
|
-
if (field.type === 'Array' && field.items) {
|
|
41
|
-
details += ` of ${field.items.type}`;
|
|
42
|
-
if (field.items.linkType)
|
|
43
|
-
details += ` -> ${field.items.linkType}`;
|
|
44
|
-
if (field.items.validations) {
|
|
45
|
-
const linkContentTypeValidation = field.items.validations.find((v) => v.linkContentType);
|
|
46
|
-
if (linkContentTypeValidation && linkContentTypeValidation.linkContentType) {
|
|
47
|
-
details += ` (Allowed: ${linkContentTypeValidation.linkContentType.join(', ')})`;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
// Check for validations on the field itself
|
|
52
|
-
if (field.validations) {
|
|
53
|
-
const linkContentTypeValidation = field.validations.find((v) => v.linkContentType);
|
|
54
|
-
if (linkContentTypeValidation && linkContentTypeValidation.linkContentType) {
|
|
55
|
-
details += ` (Allowed: ${linkContentTypeValidation.linkContentType.join(', ')})`;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
console.log(details);
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
catch (error) {
|
|
63
|
-
console.error('Error occurred:', error);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
// Execute
|
|
67
|
-
runDiscovery().catch(console.error);
|
|
68
|
-
//# sourceMappingURL=discovery-brightline.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-brightline.js","sourceRoot":"","sources":["../../src/management/discovery-brightline.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generateVisibilityJson.d.ts","sourceRoot":"","sources":["../../src/management/generateVisibilityJson.ts"],"names":[],"mappings":""}
|
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
/** biome-ignore-all lint/suspicious/noConsole: Console is ok */
|
|
3
|
-
import * as fs from 'node:fs';
|
|
4
|
-
import * as path from 'node:path';
|
|
5
|
-
import { Node, Project, SyntaxKind } from 'ts-morph';
|
|
6
|
-
// Simple argument parsing
|
|
7
|
-
const args = process.argv.slice(2);
|
|
8
|
-
const projectIndex = args.indexOf('--project');
|
|
9
|
-
const projectPath = projectIndex !== -1 ? args[projectIndex + 1] : process.cwd();
|
|
10
|
-
if (!projectPath) {
|
|
11
|
-
console.error('Please specify a project path using --project or run from the project directory.');
|
|
12
|
-
process.exit(1);
|
|
13
|
-
}
|
|
14
|
-
const absoluteProjectPath = path.resolve(projectPath);
|
|
15
|
-
console.log(`Scanning project at: ${absoluteProjectPath}`);
|
|
16
|
-
const project = new Project({
|
|
17
|
-
tsConfigFilePath: path.join(absoluteProjectPath, 'tsconfig.json'),
|
|
18
|
-
skipAddingFilesFromTsConfig: true,
|
|
19
|
-
});
|
|
20
|
-
// Add source files from src/project
|
|
21
|
-
const pattern = path.join(absoluteProjectPath, 'src/project/**/*.{ts,tsx}');
|
|
22
|
-
project.addSourceFilesAtPaths(pattern);
|
|
23
|
-
console.log(`Found ${project.getSourceFiles().length} source files.`);
|
|
24
|
-
const visibilityConfig = {
|
|
25
|
-
components: {},
|
|
26
|
-
collections: {},
|
|
27
|
-
};
|
|
28
|
-
function resolveStringArray(node) {
|
|
29
|
-
if (!node)
|
|
30
|
-
return [];
|
|
31
|
-
// If it's a variable identifier, go to definition
|
|
32
|
-
if (Node.isIdentifier(node)) {
|
|
33
|
-
const definitions = node.getDefinitions();
|
|
34
|
-
for (const def of definitions) {
|
|
35
|
-
const declaration = def.getDeclarationNode();
|
|
36
|
-
if (declaration && Node.isVariableDeclaration(declaration)) {
|
|
37
|
-
const initializer = declaration.getInitializer();
|
|
38
|
-
return resolveStringArray(initializer);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
// If it's a new Set([...])
|
|
43
|
-
if (Node.isNewExpression(node)) {
|
|
44
|
-
const expression = node.getExpression();
|
|
45
|
-
if (expression.getText() === 'Set') {
|
|
46
|
-
const args = node.getArguments();
|
|
47
|
-
if (args.length > 0) {
|
|
48
|
-
return resolveStringArray(args[0]);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
// If it's an array literal [...]
|
|
53
|
-
if (Node.isArrayLiteralExpression(node)) {
|
|
54
|
-
let result = [];
|
|
55
|
-
for (const element of node.getElements()) {
|
|
56
|
-
if (Node.isStringLiteral(element)) {
|
|
57
|
-
result.push(element.getLiteralValue());
|
|
58
|
-
}
|
|
59
|
-
else if (Node.isSpreadElement(element)) {
|
|
60
|
-
// Handle ...FIELD_KEYS
|
|
61
|
-
const expression = element.getExpression();
|
|
62
|
-
result = [...result, ...resolveStringArray(expression)];
|
|
63
|
-
}
|
|
64
|
-
else if (Node.isIdentifier(element)) {
|
|
65
|
-
// Handle variable inside array
|
|
66
|
-
result = [...result, ...resolveStringArray(element)];
|
|
67
|
-
}
|
|
68
|
-
else if (element.getKind() === SyntaxKind.AsExpression) {
|
|
69
|
-
// Handle 'foo' as const
|
|
70
|
-
const expr = element.asKind(SyntaxKind.AsExpression);
|
|
71
|
-
if (expr) {
|
|
72
|
-
const subExpr = expr.getExpression();
|
|
73
|
-
if (Node.isStringLiteral(subExpr)) {
|
|
74
|
-
result.push(subExpr.getLiteralValue());
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
return result;
|
|
80
|
-
}
|
|
81
|
-
// Handle 'as const' expression for arrays
|
|
82
|
-
if (Node.isAsExpression(node)) {
|
|
83
|
-
return resolveStringArray(node.getExpression());
|
|
84
|
-
}
|
|
85
|
-
return [];
|
|
86
|
-
}
|
|
87
|
-
function resolveProperty(objectLiteral, propertyName) {
|
|
88
|
-
const property = objectLiteral.getProperty(propertyName);
|
|
89
|
-
if (!property)
|
|
90
|
-
return undefined;
|
|
91
|
-
if (Node.isPropertyAssignment(property)) {
|
|
92
|
-
return property.getInitializer();
|
|
93
|
-
}
|
|
94
|
-
// Handle shorthand property assignment if needed, though less likely for config objects
|
|
95
|
-
if (Node.isShorthandPropertyAssignment(property)) {
|
|
96
|
-
return property.getNameNode();
|
|
97
|
-
}
|
|
98
|
-
return undefined;
|
|
99
|
-
}
|
|
100
|
-
const sourceFiles = project.getSourceFiles();
|
|
101
|
-
for (const sourceFile of sourceFiles) {
|
|
102
|
-
const variableDeclarations = sourceFile.getVariableDeclarations();
|
|
103
|
-
for (const varDecl of variableDeclarations) {
|
|
104
|
-
const name = varDecl.getName();
|
|
105
|
-
if (name.endsWith('Registration')) {
|
|
106
|
-
const initializer = varDecl.getInitializer();
|
|
107
|
-
if (Node.isCallExpression(initializer)) {
|
|
108
|
-
const expression = initializer.getExpression();
|
|
109
|
-
const callName = expression.getText(); // e.g., defineComponent or defineCollection
|
|
110
|
-
if (callName === 'defineComponent' || callName === 'defineCollection') {
|
|
111
|
-
const args = initializer.getArguments();
|
|
112
|
-
if (args.length > 0 && Node.isObjectLiteralExpression(args[0])) {
|
|
113
|
-
const configObject = args[0];
|
|
114
|
-
// Extract Name
|
|
115
|
-
const nameNode = resolveProperty(configObject, 'name');
|
|
116
|
-
let configName = '';
|
|
117
|
-
if (nameNode && Node.isStringLiteral(nameNode)) {
|
|
118
|
-
configName = nameNode.getLiteralValue();
|
|
119
|
-
}
|
|
120
|
-
// Extract usedFields
|
|
121
|
-
const usedFieldsNode = resolveProperty(configObject, 'usedFields');
|
|
122
|
-
const usedFields = resolveStringArray(usedFieldsNode);
|
|
123
|
-
if (configName) {
|
|
124
|
-
if (callName === 'defineComponent') {
|
|
125
|
-
visibilityConfig.components[configName] = usedFields;
|
|
126
|
-
}
|
|
127
|
-
else {
|
|
128
|
-
const collectionEntry = {
|
|
129
|
-
fields: usedFields,
|
|
130
|
-
};
|
|
131
|
-
// Extract cardUsedFields if collection
|
|
132
|
-
const cardUsedFieldsNode = resolveProperty(configObject, 'cardUsedFields');
|
|
133
|
-
if (cardUsedFieldsNode) {
|
|
134
|
-
const cardUsedFields = resolveStringArray(cardUsedFieldsNode);
|
|
135
|
-
collectionEntry.cardFields = cardUsedFields;
|
|
136
|
-
}
|
|
137
|
-
visibilityConfig.collections[configName] = collectionEntry;
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
const outputPath = path.join(absoluteProjectPath, 'visibility.json');
|
|
147
|
-
fs.writeFileSync(outputPath, JSON.stringify(visibilityConfig, null, 2));
|
|
148
|
-
console.log(`Visibility JSON written to: ${outputPath}`);
|
|
149
|
-
//# sourceMappingURL=generateVisibilityJson.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generateVisibilityJson.js","sourceRoot":"","sources":["../../src/management/generateVisibilityJson.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"inspect-target.d.ts","sourceRoot":"","sources":["../../src/management/inspect-target.ts"],"names":[],"mappings":""}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import * as contentful from 'contentful';
|
|
2
|
-
import dotenv from 'dotenv';
|
|
3
|
-
// Load environment variables from .env file in project root or current package
|
|
4
|
-
dotenv.config();
|
|
5
|
-
const SPACE_ID = '96gdpqkm7elu';
|
|
6
|
-
const ENV_ID = 'production-2026';
|
|
7
|
-
const TARGET_TYPES = ['page', 'article', 'component', 'collection', 'link', 'media', 'person'];
|
|
8
|
-
async function inspectTargetSchema() {
|
|
9
|
-
console.log(`Inspecting schema in: ${SPACE_ID} / ${ENV_ID}`);
|
|
10
|
-
const accessToken = process.env.CONTENTFUL_ACCESS_TOKEN || process.env.CONTENTFUL_DELIVERY_TOKEN || process.env.CONTENTFUL_MANAGEMENT_TOKEN;
|
|
11
|
-
const client = contentful.createClient({
|
|
12
|
-
space: SPACE_ID,
|
|
13
|
-
environment: ENV_ID,
|
|
14
|
-
accessToken: accessToken || 'dummy'
|
|
15
|
-
});
|
|
16
|
-
try {
|
|
17
|
-
const contentTypes = await client.getContentTypes();
|
|
18
|
-
console.log('\n--- TARGET SCHEMA FIELDS ---');
|
|
19
|
-
for (const ct of contentTypes.items) {
|
|
20
|
-
if (TARGET_TYPES.includes(ct.sys.id)) {
|
|
21
|
-
console.log(`\n=== ${ct.name} (${ct.sys.id}) ===`);
|
|
22
|
-
console.log('Fields:');
|
|
23
|
-
ct.fields.forEach(field => {
|
|
24
|
-
let details = ` - ${field.id} (${field.type})`;
|
|
25
|
-
if (field.required)
|
|
26
|
-
details += ' [Required]';
|
|
27
|
-
if (field.localized)
|
|
28
|
-
details += ' [Localized]';
|
|
29
|
-
if (field.type === 'Link') {
|
|
30
|
-
details += ` [linkType: ${field.linkType}]`;
|
|
31
|
-
}
|
|
32
|
-
if (field.validations) {
|
|
33
|
-
const linkContentType = field.validations.find((v) => v.linkContentType);
|
|
34
|
-
if (linkContentType && linkContentType.linkContentType) {
|
|
35
|
-
details += ` [validTypes: ${linkContentType.linkContentType.join(', ')}]`;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
console.log(details);
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
catch (error) {
|
|
44
|
-
console.error('Error:', error);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
inspectTargetSchema();
|
|
48
|
-
//# sourceMappingURL=inspect-target.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"inspect-target.js","sourceRoot":"","sources":["../../src/management/inspect-target.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AACzC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,+EAA+E;AAC/E,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,MAAM,QAAQ,GAAG,cAAc,CAAC;AAChC,MAAM,MAAM,GAAG,iBAAiB,CAAC;AAEjC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;AAE/F,KAAK,UAAU,mBAAmB;IAChC,OAAO,CAAC,GAAG,CAAC,yBAAyB,QAAQ,MAAM,MAAM,EAAE,CAAC,CAAC;IAE7D,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC;IAE5I,MAAM,MAAM,GAAG,UAAU,CAAC,YAAY,CAAC;QACrC,KAAK,EAAE,QAAQ;QACf,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,WAAW,IAAI,OAAO;KACpC,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,eAAe,EAAE,CAAC;QAEpD,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAE9C,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;YAClC,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;gBACnD,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACvB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBACtB,IAAI,OAAO,GAAG,OAAO,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,IAAI,GAAG,CAAC;oBAChD,IAAI,KAAK,CAAC,QAAQ;wBAAE,OAAO,IAAI,aAAa,CAAC;oBAC7C,IAAI,KAAK,CAAC,SAAS;wBAAE,OAAO,IAAI,cAAc,CAAC;oBAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBACxB,OAAO,IAAI,eAAe,KAAK,CAAC,QAAQ,GAAG,CAAC;oBAChD,CAAC;oBACD,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;wBACrB,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;wBAC9E,IAAI,eAAe,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;4BACrD,OAAO,IAAI,iBAAiB,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;wBAC9E,CAAC;oBACJ,CAAC;oBACD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACzB,CAAC,CAAC,CAAC;YACP,CAAC;QACL,CAAC;IAEH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACjC,CAAC;AACH,CAAC;AAED,mBAAmB,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"migrate-brightlife.d.ts","sourceRoot":"","sources":["../../src/management/migrate-brightlife.ts"],"names":[],"mappings":""}
|