1571 extensibility twenty cli add command to create base entities like object agent or serverless (#14722)
Remove default agent when init new app add command to create a new entity (object or agent) https://github.com/user-attachments/assets/b8f28281-2b40-4eaa-a958-55d2dd5183c8
This commit is contained in:
@@ -13,7 +13,8 @@ describe('app-template', () => {
|
||||
describe('createBasePackageJson', () => {
|
||||
it('should create a valid app package.json with correct structure', () => {
|
||||
const appName = 'my-test-app';
|
||||
const basePackageJson = createBasePackageJson(appName);
|
||||
const description = 'A Twenty application for my-test-app';
|
||||
const basePackageJson = createBasePackageJson(appName, description);
|
||||
|
||||
expect(basePackageJson).toEqual({
|
||||
$schema:
|
||||
@@ -27,7 +28,7 @@ describe('app-template', () => {
|
||||
|
||||
it('should handle single word app names', () => {
|
||||
const appName = 'calculator';
|
||||
const basePackageJson = createBasePackageJson(appName);
|
||||
const basePackageJson = createBasePackageJson(appName, '');
|
||||
|
||||
expect(basePackageJson.label).toBe('Calculator');
|
||||
expect(basePackageJson.standardId).toBe('mocked-uuid-12345');
|
||||
@@ -35,14 +36,14 @@ describe('app-template', () => {
|
||||
|
||||
it('should handle kebab-case app names correctly', () => {
|
||||
const appName = 'user-management-system';
|
||||
const basePackageJson = createBasePackageJson(appName);
|
||||
const basePackageJson = createBasePackageJson(appName, '');
|
||||
|
||||
expect(basePackageJson.label).toBe('User Management System');
|
||||
expect(basePackageJson.standardId).toBe('mocked-uuid-12345');
|
||||
});
|
||||
|
||||
it('should generate unique standardIds', () => {
|
||||
const basePackageJson = createBasePackageJson('test-app');
|
||||
const basePackageJson = createBasePackageJson('test-app', '');
|
||||
|
||||
expect(basePackageJson.standardId).toBeDefined();
|
||||
expect(typeof basePackageJson.standardId).toBe('string');
|
||||
|
||||
@@ -2,7 +2,10 @@ import { randomUUID } from 'crypto';
|
||||
import { AgentManifest, PackageJson } from '../types/config.types';
|
||||
import { getSchemaUrls } from './schema-validator';
|
||||
|
||||
export const createBasePackageJson = (appName: string): PackageJson => {
|
||||
export const createBasePackageJson = (
|
||||
appName: string,
|
||||
description: string,
|
||||
): PackageJson => {
|
||||
const schemas = getSchemaUrls();
|
||||
|
||||
return {
|
||||
@@ -12,7 +15,7 @@ export const createBasePackageJson = (appName: string): PackageJson => {
|
||||
.split('-')
|
||||
.map((word) => word.charAt(0).toUpperCase() + word.slice(1))
|
||||
.join(' '),
|
||||
description: `A Twenty application for ${appName}`,
|
||||
description,
|
||||
version: '0.0.1',
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user