@origostudio/cli 0.0.38 → 0.0.41
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 +24 -0
- package/package.json +2 -2
- package/package.json.bak +2 -2
- package/src/commands/generate/index.js +2 -0
- package/src/commands/generate/index.js.map +1 -1
- package/src/commands/generate/page.d.ts +2 -0
- package/src/commands/generate/page.js +27 -0
- package/src/commands/generate/page.js.map +1 -0
- package/src/lib/generator.d.ts +4 -0
- package/src/lib/generator.js +108 -20
- package/src/lib/generator.js.map +1 -1
- package/src/lib/validation.js +1 -1
- package/src/lib/validation.js.map +1 -1
- package/src/templates/index.d.ts +2 -0
- package/src/templates/index.js +16 -0
- package/src/templates/index.js.map +1 -1
- package/src/templates/list-detail.json +14 -0
- package/src/templates/login.json +15 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,27 @@
|
|
|
1
|
+
## 0.0.41 (2026-09-30)
|
|
2
|
+
|
|
3
|
+
### 🚀 Features
|
|
4
|
+
|
|
5
|
+
- initialize workspace packages and implement CLI generator commands with templates ([b227117](https://github.com/OrigoStudio/origo-design/commit/b227117))
|
|
6
|
+
|
|
7
|
+
### ❤️ Thank You
|
|
8
|
+
|
|
9
|
+
- Hardik Patel @hardikpatelse
|
|
10
|
+
|
|
11
|
+
## 0.0.40 (2026-09-29)
|
|
12
|
+
|
|
13
|
+
### 🚀 Features
|
|
14
|
+
|
|
15
|
+
- initialize packages, documentation site, and release workflow ([e0f7371](https://github.com/OrigoStudio/origo-design/commit/e0f7371))
|
|
16
|
+
|
|
17
|
+
### ❤️ Thank You
|
|
18
|
+
|
|
19
|
+
- Hardik Patel @hardikpatelse
|
|
20
|
+
|
|
21
|
+
## 0.0.39 (2026-09-29)
|
|
22
|
+
|
|
23
|
+
This was a version bump only for cli to align it with other projects, there were no code changes.
|
|
24
|
+
|
|
1
25
|
## 0.0.38 (2026-09-28)
|
|
2
26
|
|
|
3
27
|
This was a version bump only for cli to align it with other projects, there were no code changes.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@origostudio/cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.41",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "./src/index.js",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"origo": "./src/main.js"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@
|
|
12
|
+
"@origostudio/core": "0.0.41",
|
|
13
13
|
"commander": "^15.0.0",
|
|
14
14
|
"tslib": "^2.3.0"
|
|
15
15
|
},
|
package/package.json.bak
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@origostudio/cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.41",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "./src/index.js",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"origo": "./src/main.js"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@
|
|
12
|
+
"@origostudio/core": "0.0.41",
|
|
13
13
|
"commander": "^15.0.0",
|
|
14
14
|
"tslib": "^2.3.0"
|
|
15
15
|
},
|
|
@@ -3,11 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.generateCommand = generateCommand;
|
|
4
4
|
const commander_1 = require("commander");
|
|
5
5
|
const entity_1 = require("./entity");
|
|
6
|
+
const page_1 = require("./page");
|
|
6
7
|
const generator_1 = require("../../lib/generator");
|
|
7
8
|
const errors_1 = require("../../utils/errors");
|
|
8
9
|
function generateCommand() {
|
|
9
10
|
const cmd = new commander_1.Command('generate').description('Generate Origo artifacts');
|
|
10
11
|
cmd.addCommand((0, entity_1.entityCommand)());
|
|
12
|
+
cmd.addCommand((0, page_1.pageCommand)());
|
|
11
13
|
cmd
|
|
12
14
|
.option('--eject', 'Copy internal templates to .origo/templates/ for customization')
|
|
13
15
|
.option('--force', 'Overwrite existing templates if they exist')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/cli/src/commands/generate/index.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/cli/src/commands/generate/index.ts"],"names":[],"mappings":";;AAMA,0CAuBC;AA7BD,yCAAoC;AACpC,qCAAyC;AACzC,iCAAqC;AACrC,mDAAqD;AACrD,+CAAiD;AAEjD,SAAgB,eAAe;IAC7B,MAAM,GAAG,GAAG,IAAI,mBAAO,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,0BAA0B,CAAC,CAAC;IAE5E,GAAG,CAAC,UAAU,CAAC,IAAA,sBAAa,GAAE,CAAC,CAAC;IAChC,GAAG,CAAC,UAAU,CAAC,IAAA,kBAAW,GAAE,CAAC,CAAC;IAE9B,GAAG;SACA,MAAM,CAAC,SAAS,EAAE,gEAAgE,CAAC;SACnF,MAAM,CAAC,SAAS,EAAE,4CAA4C,CAAC;SAC/D,MAAM,CAAC,QAAQ,EAAE,qCAAqC,CAAC;SACvD,MAAM,CAAC,KAAK,EAAE,OAA6D,EAAE,EAAE;QAC9E,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,MAAM,IAAA,0BAAc,EAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,IAAA,oBAAW,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,UAAU,EAAE,CAAC;QACnB,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pageCommand = pageCommand;
|
|
4
|
+
const commander_1 = require("commander");
|
|
5
|
+
const generator_1 = require("../../lib/generator");
|
|
6
|
+
const errors_1 = require("../../utils/errors");
|
|
7
|
+
function pageCommand() {
|
|
8
|
+
const cmd = new commander_1.Command('page');
|
|
9
|
+
cmd
|
|
10
|
+
.description('Generate a BADL page boilerplate from a named template')
|
|
11
|
+
.addOption(new commander_1.Option('--template <name>', 'Template name')
|
|
12
|
+
.choices(['list-detail', 'login'])
|
|
13
|
+
.makeOptionMandatory(true))
|
|
14
|
+
.argument('<name>', 'Output schema name (PascalCase, e.g. UserListDetail)')
|
|
15
|
+
.option('--force', 'Overwrite existing file if it exists')
|
|
16
|
+
.option('--json', 'Output machine-readable JSON format')
|
|
17
|
+
.action(async (name, options) => {
|
|
18
|
+
try {
|
|
19
|
+
await (0, generator_1.generatePage)(options.template, name, { force: options.force, json: options.json });
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
(0, errors_1.handleError)(error, { json: options.json });
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
return cmd;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=page.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"page.js","sourceRoot":"","sources":["../../../../../../packages/cli/src/commands/generate/page.ts"],"names":[],"mappings":";;AAIA,kCAsBC;AA1BD,yCAA4C;AAC5C,mDAAmD;AACnD,+CAAiD;AAEjD,SAAgB,WAAW;IACzB,MAAM,GAAG,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC,CAAC;IAChC,GAAG;SACA,WAAW,CAAC,wDAAwD,CAAC;SACrE,SAAS,CACR,IAAI,kBAAM,CAAC,mBAAmB,EAAE,eAAe,CAAC;SAC7C,OAAO,CAAC,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;SACjC,mBAAmB,CAAC,IAAI,CAAC,CAC7B;SACA,QAAQ,CAAC,QAAQ,EAAE,sDAAsD,CAAC;SAC1E,MAAM,CAAC,SAAS,EAAE,sCAAsC,CAAC;SACzD,MAAM,CAAC,QAAQ,EAAE,qCAAqC,CAAC;SACvD,MAAM,CACL,KAAK,EAAE,IAAY,EAAE,OAA8D,EAAE,EAAE;QACrF,IAAI,CAAC;YACH,MAAM,IAAA,wBAAY,EAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3F,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,IAAA,oBAAW,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC,CACF,CAAC;IACJ,OAAO,GAAG,CAAC;AACb,CAAC"}
|
package/src/lib/generator.d.ts
CHANGED
|
@@ -10,6 +10,10 @@ export declare function generateEntity(name: string, options: {
|
|
|
10
10
|
force?: boolean;
|
|
11
11
|
json?: boolean;
|
|
12
12
|
}): Promise<void>;
|
|
13
|
+
export declare function generatePage(templateName: string, name: string, options: {
|
|
14
|
+
force?: boolean;
|
|
15
|
+
json?: boolean;
|
|
16
|
+
}): Promise<void>;
|
|
13
17
|
export declare function ejectTemplates(options: {
|
|
14
18
|
force?: boolean;
|
|
15
19
|
json?: boolean;
|
package/src/lib/generator.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.registerGeneratorPlugin = registerGeneratorPlugin;
|
|
4
4
|
exports.generateEntity = generateEntity;
|
|
5
|
+
exports.generatePage = generatePage;
|
|
5
6
|
exports.ejectTemplates = ejectTemplates;
|
|
6
7
|
const tslib_1 = require("tslib");
|
|
7
8
|
const fs = tslib_1.__importStar(require("fs/promises"));
|
|
@@ -16,10 +17,10 @@ async function generateEntity(name, options) {
|
|
|
16
17
|
if (!name || !name.trim()) {
|
|
17
18
|
throw new errors_1.CliError({ code: 'ERR_INVALID_NAME', message: 'Entity name must not be empty.' });
|
|
18
19
|
}
|
|
19
|
-
if (
|
|
20
|
+
if (!/^[a-zA-Z0-9_-]+$/.test(name)) {
|
|
20
21
|
throw new errors_1.CliError({
|
|
21
22
|
code: 'ERR_INVALID_NAME',
|
|
22
|
-
message: 'Entity name must
|
|
23
|
+
message: 'Entity name must only contain alphanumeric characters, dashes, or underscores.',
|
|
23
24
|
});
|
|
24
25
|
}
|
|
25
26
|
const targetDir = path.join(process.cwd(), 'schemas');
|
|
@@ -46,18 +47,17 @@ async function generateEntity(name, options) {
|
|
|
46
47
|
for (const plugin of plugins) {
|
|
47
48
|
if (plugin.resolveTemplate) {
|
|
48
49
|
const resolved = await plugin.resolveTemplate(name);
|
|
49
|
-
if (resolved) {
|
|
50
|
+
if (resolved !== null && resolved !== undefined) {
|
|
50
51
|
content = resolved;
|
|
51
52
|
break;
|
|
52
53
|
}
|
|
53
54
|
}
|
|
54
55
|
}
|
|
55
|
-
if (
|
|
56
|
+
if (content === null) {
|
|
56
57
|
try {
|
|
57
58
|
const rawTemplate = await fs.readFile(userTemplatePath, 'utf-8');
|
|
58
59
|
content =
|
|
59
|
-
rawTemplate.
|
|
60
|
-
'\n';
|
|
60
|
+
rawTemplate.split('{{name}}').join(name).split('{{id}}').join(name.toLowerCase()) + '\n';
|
|
61
61
|
// Validate user template output
|
|
62
62
|
try {
|
|
63
63
|
JSON.parse(content);
|
|
@@ -78,16 +78,110 @@ async function generateEntity(name, options) {
|
|
|
78
78
|
content = (0, templates_1.generateEntityTemplate)({ id: name.toLowerCase(), name });
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
|
+
await fs.mkdir(targetDir, { recursive: true });
|
|
82
|
+
if (!content) {
|
|
83
|
+
throw new errors_1.CliError({
|
|
84
|
+
code: 'ERR_UNEXPECTED',
|
|
85
|
+
message: 'Failed to generate entity content.',
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
await fs.writeFile(targetPath, content, 'utf-8');
|
|
89
|
+
// FR-AI-005 Extensibility: Post-generate hooks
|
|
90
|
+
for (const plugin of plugins) {
|
|
91
|
+
if (plugin.postGenerate) {
|
|
92
|
+
await plugin.postGenerate({ name, targetPath });
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
if (options.json) {
|
|
96
|
+
console.log(JSON.stringify({
|
|
97
|
+
status: 'success',
|
|
98
|
+
data: {
|
|
99
|
+
file: `./schemas/${name.toLowerCase()}.json`,
|
|
100
|
+
entityName: name,
|
|
101
|
+
},
|
|
102
|
+
}, null, 2));
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
console.log(`Successfully generated entity ${name} at ./schemas/${name.toLowerCase()}.json`);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
async function generatePage(templateName, name, options) {
|
|
109
|
+
if (!name || !name.trim()) {
|
|
110
|
+
throw new errors_1.CliError({ code: 'ERR_INVALID_NAME', message: 'Page name must not be empty.' });
|
|
111
|
+
}
|
|
112
|
+
if (!/^[a-zA-Z0-9_-]+$/.test(name)) {
|
|
113
|
+
throw new errors_1.CliError({
|
|
114
|
+
code: 'ERR_INVALID_NAME',
|
|
115
|
+
message: 'Page name must only contain alphanumeric characters, dashes, or underscores.',
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
if (templateName !== 'list-detail' && templateName !== 'login') {
|
|
119
|
+
throw new errors_1.CliError({
|
|
120
|
+
code: 'ERR_UNKNOWN_TEMPLATE',
|
|
121
|
+
message: `Unknown template: ${templateName}. Must be 'list-detail' or 'login'.`,
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
const targetDir = path.join(process.cwd(), 'schemas');
|
|
125
|
+
const targetPath = path.join(targetDir, name.toLowerCase() + '.json');
|
|
126
|
+
const userTemplatePath = path.join(process.cwd(), '.origo', 'templates', templateName + '.json');
|
|
127
|
+
let content = null;
|
|
81
128
|
try {
|
|
82
|
-
await fs.
|
|
129
|
+
await fs.access(targetPath);
|
|
130
|
+
if (!options.force) {
|
|
131
|
+
throw new errors_1.CliError({
|
|
132
|
+
code: 'ERR_FILE_EXISTS',
|
|
133
|
+
message: `File already exists: ${targetPath}. Use --force to overwrite.`,
|
|
134
|
+
context: { path: targetPath },
|
|
135
|
+
});
|
|
136
|
+
}
|
|
83
137
|
}
|
|
84
|
-
catch (
|
|
85
|
-
if (
|
|
86
|
-
throw
|
|
138
|
+
catch (error) {
|
|
139
|
+
if (error instanceof errors_1.CliError)
|
|
140
|
+
throw error;
|
|
141
|
+
if (error.code !== 'ENOENT')
|
|
142
|
+
throw error;
|
|
143
|
+
}
|
|
144
|
+
// FR-AI-005 Extensibility: Check plugins first
|
|
145
|
+
for (const plugin of plugins) {
|
|
146
|
+
if (plugin.resolveTemplate) {
|
|
147
|
+
const resolved = await plugin.resolveTemplate(name);
|
|
148
|
+
if (resolved !== null && resolved !== undefined) {
|
|
149
|
+
content = resolved;
|
|
150
|
+
break;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
87
153
|
}
|
|
88
154
|
if (content === null) {
|
|
89
|
-
|
|
155
|
+
try {
|
|
156
|
+
const rawTemplate = await fs.readFile(userTemplatePath, 'utf-8');
|
|
157
|
+
content =
|
|
158
|
+
rawTemplate.split('{{name}}').join(name).split('{{id}}').join(name.toLowerCase()) + '\n';
|
|
159
|
+
// Validate user template output
|
|
160
|
+
try {
|
|
161
|
+
JSON.parse(content);
|
|
162
|
+
}
|
|
163
|
+
catch {
|
|
164
|
+
throw new errors_1.CliError({
|
|
165
|
+
code: 'ERR_INVALID_TEMPLATE',
|
|
166
|
+
message: `The user template at ${userTemplatePath} produced invalid JSON when substituted.`,
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
catch (err) {
|
|
171
|
+
if (err instanceof errors_1.CliError)
|
|
172
|
+
throw err;
|
|
173
|
+
const code = err.code;
|
|
174
|
+
if (code && code !== 'ENOENT')
|
|
175
|
+
throw err;
|
|
176
|
+
if (templateName === 'list-detail') {
|
|
177
|
+
content = (0, templates_1.generateListDetailTemplate)({ id: name.toLowerCase(), name });
|
|
178
|
+
}
|
|
179
|
+
else {
|
|
180
|
+
content = (0, templates_1.generateLoginTemplate)({ id: name.toLowerCase(), name });
|
|
181
|
+
}
|
|
182
|
+
}
|
|
90
183
|
}
|
|
184
|
+
await fs.mkdir(targetDir, { recursive: true });
|
|
91
185
|
await fs.writeFile(targetPath, content, 'utf-8');
|
|
92
186
|
// FR-AI-005 Extensibility: Post-generate hooks
|
|
93
187
|
for (const plugin of plugins) {
|
|
@@ -100,12 +194,12 @@ async function generateEntity(name, options) {
|
|
|
100
194
|
status: 'success',
|
|
101
195
|
data: {
|
|
102
196
|
file: `./schemas/${name.toLowerCase()}.json`,
|
|
103
|
-
|
|
197
|
+
templateName: templateName,
|
|
104
198
|
},
|
|
105
199
|
}, null, 2));
|
|
106
200
|
}
|
|
107
201
|
else {
|
|
108
|
-
console.log(`Successfully generated
|
|
202
|
+
console.log(`Successfully generated page ${name} using ${templateName} template at ./schemas/${name.toLowerCase()}.json`);
|
|
109
203
|
}
|
|
110
204
|
}
|
|
111
205
|
async function ejectTemplates(options) {
|
|
@@ -141,13 +235,7 @@ async function ejectTemplates(options) {
|
|
|
141
235
|
}
|
|
142
236
|
}
|
|
143
237
|
}
|
|
144
|
-
|
|
145
|
-
await fs.mkdir(destDir, { recursive: true });
|
|
146
|
-
}
|
|
147
|
-
catch (err) {
|
|
148
|
-
if (err.code !== 'EEXIST')
|
|
149
|
-
throw err;
|
|
150
|
-
}
|
|
238
|
+
await fs.mkdir(destDir, { recursive: true });
|
|
151
239
|
await Promise.all(jsonFiles.map(file => fs.copyFile(path.join(srcDir, file), path.join(destDir, file))));
|
|
152
240
|
if (options.json) {
|
|
153
241
|
console.log(JSON.stringify({
|
package/src/lib/generator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../packages/cli/src/lib/generator.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../packages/cli/src/lib/generator.ts"],"names":[],"mappings":"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"}
|
package/src/lib/validation.js
CHANGED
|
@@ -4,7 +4,7 @@ exports.validateDirectory = validateDirectory;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const fs = tslib_1.__importStar(require("fs"));
|
|
6
6
|
const path = tslib_1.__importStar(require("path"));
|
|
7
|
-
const core_1 = require("@
|
|
7
|
+
const core_1 = require("@origostudio/core");
|
|
8
8
|
const errors_1 = require("../utils/errors");
|
|
9
9
|
async function validateDirectory(directory = './schemas', options = {}) {
|
|
10
10
|
if (!directory || directory.trim() === '') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../../packages/cli/src/lib/validation.ts"],"names":[],"mappings":";;AASA,8CAgNC;;AAzND,+CAAyB;AACzB,mDAA6B;AAC7B,
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../../packages/cli/src/lib/validation.ts"],"names":[],"mappings":"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"}
|
package/src/templates/index.d.ts
CHANGED
|
@@ -27,3 +27,5 @@ export interface OrigoConfigOptions {
|
|
|
27
27
|
export declare function generateEntityTemplate(options?: EntityOptions): string;
|
|
28
28
|
export declare function generateExtensionTemplate(options?: ExtensionOptions): string;
|
|
29
29
|
export declare function generateOrigoConfig(options?: OrigoConfigOptions): string;
|
|
30
|
+
export declare function generateListDetailTemplate(options?: EntityOptions): string;
|
|
31
|
+
export declare function generateLoginTemplate(options?: EntityOptions): string;
|
package/src/templates/index.js
CHANGED
|
@@ -3,10 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.generateEntityTemplate = generateEntityTemplate;
|
|
4
4
|
exports.generateExtensionTemplate = generateExtensionTemplate;
|
|
5
5
|
exports.generateOrigoConfig = generateOrigoConfig;
|
|
6
|
+
exports.generateListDetailTemplate = generateListDetailTemplate;
|
|
7
|
+
exports.generateLoginTemplate = generateLoginTemplate;
|
|
6
8
|
const tslib_1 = require("tslib");
|
|
7
9
|
const origo_json_1 = tslib_1.__importDefault(require("./origo.json"));
|
|
8
10
|
const entity_json_1 = tslib_1.__importDefault(require("./entity.json"));
|
|
9
11
|
const extension_json_1 = tslib_1.__importDefault(require("./extension.json"));
|
|
12
|
+
const list_detail_json_1 = tslib_1.__importDefault(require("./list-detail.json"));
|
|
13
|
+
const login_json_1 = tslib_1.__importDefault(require("./login.json"));
|
|
10
14
|
function validateIdentifier(id) {
|
|
11
15
|
if (!id || !/^[a-zA-Z0-9_-]+$/.test(id)) {
|
|
12
16
|
throw new Error(`Invalid identifier: ${id}. Must match ^[a-zA-Z0-9_-]+$`);
|
|
@@ -58,4 +62,16 @@ function generateOrigoConfig(options = {}) {
|
|
|
58
62
|
throw new Error(`Failed to serialize origo config: ${e instanceof Error ? e.message : String(e)}`);
|
|
59
63
|
}
|
|
60
64
|
}
|
|
65
|
+
function generateListDetailTemplate(options = {}) {
|
|
66
|
+
const id = options.id || 'default-list-detail';
|
|
67
|
+
const name = options.name || 'DefaultListDetail';
|
|
68
|
+
validateIdentifier(id);
|
|
69
|
+
return JSON.stringify({ ...list_detail_json_1.default, id, name }, null, 2) + '\n';
|
|
70
|
+
}
|
|
71
|
+
function generateLoginTemplate(options = {}) {
|
|
72
|
+
const id = options.id || 'default-login';
|
|
73
|
+
const name = options.name || 'DefaultLogin';
|
|
74
|
+
validateIdentifier(id);
|
|
75
|
+
return JSON.stringify({ ...login_json_1.default, id, name }, null, 2) + '\n';
|
|
76
|
+
}
|
|
61
77
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/cli/src/templates/index.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/cli/src/templates/index.ts"],"names":[],"mappings":"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"}
|