Skip to content

Commit

Permalink
typescript model generation update (output enums with interfaces as t…
Browse files Browse the repository at this point in the history
…ypescript classes)
  • Loading branch information
richturner committed Apr 15, 2019
1 parent 756e3c2 commit 64e623e
Show file tree
Hide file tree
Showing 8 changed files with 499 additions and 12 deletions.
1 change: 1 addition & 0 deletions ui/component/model/.gitignore
@@ -0,0 +1 @@
src/index.ts
18 changes: 15 additions & 3 deletions ui/component/model/build.gradle
Expand Up @@ -7,13 +7,13 @@ buildscript {
jcenter()
}
dependencies {
classpath 'cz.habarta.typescript-generator:typescript-generator-gradle-plugin:2.10.466'
classpath 'cz.habarta.typescript-generator:typescript-generator-gradle-plugin:2.13.489'
}
}

dependencies {
compile resolveProject(":model")
compile 'cz.habarta.typescript-generator:typescript-generator-core:2.9.456'
compile 'cz.habarta.typescript-generator:typescript-generator-core:2.13.489'
}

generateTypeScript {
Expand Down Expand Up @@ -43,8 +43,20 @@ generateTypeScript {
]
optionalProperties = "all" // TODO: cleanup model to be more explicit about optional params
mapEnum = cz.habarta.typescript.generator.EnumMapping.asEnum
outputFile = "dist/index.d.ts"
outputFile = "src/index.ts"
outputFileType = "implementationFile"
outputKind = "module"
extensionsWithConfiguration = [
new cz.habarta.typescript.generator.Settings.ConfiguredExtension(
className: "EnumWithInterfacesExtension",
// configuration: [
// enumPattern1: "**AssetType**",
// enumPattern2: "**AttributeType**",
// enumPattern3: "**AttributeValueType**",
// enumPattern4: "**MetaItemType**",
// ]
)
]
}

clean {
Expand Down
2 changes: 1 addition & 1 deletion ui/component/model/package.json
Expand Up @@ -3,7 +3,7 @@
"version": "1.0.1",
"main": "",
"description": "OpenRemote 3.x Model Types",
"types": "dist/index.d.ts",
"types": "src/index.ts",
"scripts": {
"build": "exit 0",
"test": "echo \"No tests\" && exit 0"
Expand Down
464 changes: 464 additions & 0 deletions ui/component/model/src/main/java/EnumWithInterfacesExtension.java

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions ui/component/model/tsconfig.json
@@ -0,0 +1,10 @@
{
"extends": "../../tsconfig",
"compilerOptions": {
"outDir": "./dist/",
"rootDir": "src"
},
"include": [
"./src"
]
}
11 changes: 4 additions & 7 deletions ui/component/rest/build.gradle
Expand Up @@ -7,13 +7,13 @@ buildscript {
jcenter()
}
dependencies {
classpath 'cz.habarta.typescript-generator:typescript-generator-gradle-plugin:2.10.466'
classpath 'cz.habarta.typescript-generator:typescript-generator-gradle-plugin:2.13.489'
}
}

dependencies {
compile resolveProject(":model")
compile 'cz.habarta.typescript-generator:typescript-generator-core:2.9.456'
compile 'cz.habarta.typescript-generator:typescript-generator-core:2.13.489'
}

generateTypeScript {
Expand All @@ -38,12 +38,9 @@ generateTypeScript {
importDeclarations = [
"import * as Model from \"@openremote/model\""
]

extensionClasses = [
"AggregatedApiClient"
]
extensions = [
"cz.habarta.typescript.generator.ext.AxiosClientExtension"
"AggregatedApiClient",
"cz.habarta.typescript.generator.ext.AxiosClientExtension"
]
}

Expand Down
3 changes: 3 additions & 0 deletions ui/component/rest/tsconfig.json
Expand Up @@ -6,5 +6,8 @@
},
"include": [
"./src"
],
"references": [
{ "path": "../model" }
]
}
2 changes: 1 addition & 1 deletion ui/model-build.js
Expand Up @@ -30,5 +30,5 @@ const gradleModelWatch = spawnSync((process.platform === "win32" ? "gradlew" : "
cwd: cwd,
shell: true
});
console.log("gradlew modelWatch finished!");
console.log("gradlew modelWatch finished! Status = " + gradleModelWatch.status);
process.exit(gradleModelWatch.status);

0 comments on commit 64e623e

Please sign in to comment.