@awdware/gah-shared
Advanced tools
Comparing version 0.0.9 to 0.0.10
@@ -39,51 +39,2 @@ { | ||
} | ||
}, | ||
"ModuleDefinition": { | ||
"type": "object", | ||
"properties": { | ||
"name": { | ||
"description": "The name of the module. This has to be unique withing the scope of all modules that are used within the same host.", | ||
"type": "string" | ||
}, | ||
"facadePath": { | ||
"description": "The path to the folder containing facade files. This is optional and the path is relative to the folder this config file is in.", | ||
"type": "string" | ||
}, | ||
"publicApiPath": { | ||
"description": "The path to the public-api.ts file. The path is relative to the folder this config file is in.", | ||
"type": "string" | ||
}, | ||
"dependencies": { | ||
"description": "The array of modules that are the dependencies for this module. This is optional.", | ||
"type": "array", | ||
"items": { | ||
"$ref": "#/definitions/ModuleReference" | ||
} | ||
}, | ||
"baseNgModuleName": { | ||
"description": "The typescript class name of the base NgModule for this module. This is optional for modules that just act as a library without providing page-like functionality or routing.", | ||
"type": "string" | ||
}, | ||
"isEntry": { | ||
"description": "Describes whether a module is the entry module for the host. This has to be set to true for exactly one module that is referenced by a host.", | ||
"type": "boolean" | ||
} | ||
} | ||
}, | ||
"ModuleReference": { | ||
"description": "Contains information about a external referenced module", | ||
"type": "object", | ||
"properties": { | ||
"path": { | ||
"description": "The path to the gah-config.json of the external module. Relative to the folder containing this config file.", | ||
"type": "string" | ||
}, | ||
"names": { | ||
"description": "The names of the referenced modules within the project", | ||
"type": "array", | ||
"items": { | ||
"type": "string" | ||
} | ||
} | ||
} | ||
} | ||
@@ -90,0 +41,0 @@ }, |
@@ -20,57 +20,2 @@ { | ||
"definitions": { | ||
"GahPluginDependencyConfig": { | ||
"description": "Describes a plugin dependency", | ||
"type": "object", | ||
"properties": { | ||
"name": { | ||
"description": "The name of the plugin that should be used. This has to be the name of a npm package.", | ||
"type": "string" | ||
}, | ||
"settings": { | ||
"$ref": "#/definitions/GahPluginConfig", | ||
"description": "The configuration for the plugin. Plugins add their own properties, please look at the documentation for the used plugin to see which settings are available." | ||
} | ||
} | ||
}, | ||
"GahPluginConfig": { | ||
"additionalProperties": true, | ||
"type": "object", | ||
"properties": { | ||
"enabled": { | ||
"type": "boolean" | ||
} | ||
} | ||
}, | ||
"ModuleDefinition": { | ||
"type": "object", | ||
"properties": { | ||
"name": { | ||
"description": "The name of the module. This has to be unique withing the scope of all modules that are used within the same host.", | ||
"type": "string" | ||
}, | ||
"facadePath": { | ||
"description": "The path to the folder containing facade files. This is optional and the path is relative to the folder this config file is in.", | ||
"type": "string" | ||
}, | ||
"publicApiPath": { | ||
"description": "The path to the public-api.ts file. The path is relative to the folder this config file is in.", | ||
"type": "string" | ||
}, | ||
"dependencies": { | ||
"description": "The array of modules that are the dependencies for this module. This is optional.", | ||
"type": "array", | ||
"items": { | ||
"$ref": "#/definitions/ModuleReference" | ||
} | ||
}, | ||
"baseNgModuleName": { | ||
"description": "The typescript class name of the base NgModule for this module. This is optional for modules that just act as a library without providing page-like functionality or routing.", | ||
"type": "string" | ||
}, | ||
"isEntry": { | ||
"description": "Describes whether a module is the entry module for the host. This has to be set to true for exactly one module that is referenced by a host.", | ||
"type": "boolean" | ||
} | ||
} | ||
}, | ||
"ModuleReference": { | ||
@@ -77,0 +22,0 @@ "description": "Contains information about a external referenced module", |
@@ -20,25 +20,2 @@ { | ||
"definitions": { | ||
"GahPluginDependencyConfig": { | ||
"description": "Describes a plugin dependency", | ||
"type": "object", | ||
"properties": { | ||
"name": { | ||
"description": "The name of the plugin that should be used. This has to be the name of a npm package.", | ||
"type": "string" | ||
}, | ||
"settings": { | ||
"$ref": "#/definitions/GahPluginConfig", | ||
"description": "The configuration for the plugin. Plugins add their own properties, please look at the documentation for the used plugin to see which settings are available." | ||
} | ||
} | ||
}, | ||
"GahPluginConfig": { | ||
"additionalProperties": true, | ||
"type": "object", | ||
"properties": { | ||
"enabled": { | ||
"type": "boolean" | ||
} | ||
} | ||
}, | ||
"ModuleDefinition": { | ||
@@ -45,0 +22,0 @@ "type": "object", |
@@ -6,15 +6,20 @@ const TJS = require('typescript-json-schema'); | ||
const program = TJS.programFromConfig('tsconfig.json'); | ||
const generator = TJS.buildGenerator(program); | ||
const schemaDefs = new Array(); | ||
schemaDefs.push({ name: 'gah-config', schema: generator.getSchemaForSymbol('GahConfig') }); | ||
schemaDefs.push({ name: 'gah-module', schema: generator.getSchemaForSymbol('GahModule') }); | ||
schemaDefs.push({ name: 'gah-host', schema: generator.getSchemaForSymbol('GahHost') }); | ||
schemaDefs.push({ name: 'gah-config', schema: 'GahConfig'}); | ||
schemaDefs.push({ name: 'gah-module', schema: 'GahModule' }); | ||
schemaDefs.push({ name: 'gah-host', schema: 'GahHost' }); | ||
schemaDefs.push({ name: 'gah-environment', schema: 'GahEnvironment' }); | ||
schemaDefs.forEach(sd => { | ||
const json = JSON.stringify(sd.schema, null, 4) + '\n\n'; | ||
const program = TJS.programFromConfig('tsconfig.json'); | ||
const generator = TJS.buildGenerator(program); | ||
const schema = generator.getSchemaForSymbol(sd.schema); | ||
const json = JSON.stringify(schema, null, 4) + '\n\n'; | ||
fs.writeFileSync('assets/' + sd.name + '-schema.json', json); | ||
}); |
@@ -5,2 +5,3 @@ export * from './models/gah-config'; | ||
export * from './models/gah-module-type'; | ||
export * from './models/gah-environment'; | ||
export * from './models/gah-event'; | ||
@@ -7,0 +8,0 @@ export * from './models/gah-event-handler'; |
@@ -10,2 +10,3 @@ "use strict"; | ||
__export(require("./models/gah-module-type")); | ||
__export(require("./models/gah-environment")); | ||
__export(require("./models/gah-event")); | ||
@@ -12,0 +13,0 @@ __export(require("./models/gah-event-handler")); |
export interface GahContext { | ||
calledFromCli?: boolean; | ||
calledFromHostFolder?: boolean; | ||
} |
export interface IExecutionService { | ||
execute(cmd: string, outPut: boolean, outPutCallback?: (out: string) => string): Promise<boolean>; | ||
execute(cmd: string, outPut: boolean, outPutCallback?: (out: string) => string, cwd?: string): Promise<boolean>; | ||
executeAndForget(executeable: string, options: string[], outPut: boolean, cwd?: string): Promise<boolean>; | ||
executionResult: string; | ||
executionErrorResult: string; | ||
} |
@@ -105,2 +105,8 @@ export interface IFileSystemService { | ||
/** | ||
* Synchronously creates a symbolic link to a file. | ||
* @param linkPath The path of the link that gets created. | ||
* @param realPath The path of the file that should get linked to. | ||
*/ | ||
createFileLink(linkPath: string, realPath: string): void; | ||
/** | ||
* Get the name of the current working directory | ||
@@ -107,0 +113,0 @@ */ |
{ | ||
"name": "@awdware/gah-shared", | ||
"version": "0.0.9", | ||
"version": "0.0.10", | ||
"description": "Provides types and interfaces for gah", | ||
@@ -5,0 +5,0 @@ "main": "./lib/index.js", |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
98
52808
1171