@@ -17,6 +17,7 @@ import ApiMethod from '../definitions/ApiMethod';
1717import { ApiTag } from '../definitions/ApiDocumentation' ;
1818import { IReturn , IParam } from '../IDocElement' ;
1919import JsonFile from '../JsonFile' ;
20+ import ApiJsonFile from './ApiJsonFile' ;
2021
2122/**
2223 * For a library such as "example-package", ApiFileGenerator generates the "example-package.api.ts"
@@ -29,15 +30,6 @@ import JsonFile from '../JsonFile';
2930 */
3031export default class ApiJsonGenerator extends ApiItemVisitor {
3132 private static _methodCounter : number = 0 ;
32-
33- private static _KIND_CONSTRUCTOR : string = 'constructor' ;
34- private static _KIND_CLASS : string = 'class' ;
35- private static _KIND_ENUM : string = 'enum' ;
36- private static _KIND_INTERFACE : string = 'interface' ;
37- private static _KIND_FUNCTION : string = 'function' ;
38- private static _KIND_PACKAGE : string = 'package' ;
39- private static _KIND_PROPERTY : string = 'property' ;
40- private static _KIND_METHOD : string = 'method' ;
4133 private static _MEMBERS_KEY : string = 'members' ;
4234 private static _EXPORTS_KEY : string = 'exports' ;
4335
@@ -74,9 +66,9 @@ export default class ApiJsonGenerator extends ApiItemVisitor {
7466
7567 protected visitApiStructuredType ( apiStructuredType : ApiStructuredType , refObject ?: Object ) : void {
7668 const kind : string =
77- apiStructuredType . kind === ApiItemKind . Class ? ApiJsonGenerator . _KIND_CLASS :
78- apiStructuredType . kind === ApiItemKind . Interface ? ApiJsonGenerator . _KIND_INTERFACE :
79- '' ;
69+ apiStructuredType . kind === ApiItemKind . Class ? ApiJsonFile . convertKindToJson ( ApiItemKind . Class ) :
70+ apiStructuredType . kind === ApiItemKind . Interface ?
71+ ApiJsonFile . convertKindToJson ( ApiItemKind . Interface ) : '' ;
8072
8173 const structureNode : Object = {
8274 kind : kind ,
@@ -107,7 +99,7 @@ export default class ApiJsonGenerator extends ApiItemVisitor {
10799 protected visitApiEnum ( apiEnum : ApiEnum , refObject ?: Object ) : void {
108100 const valuesNode : Object = { } ;
109101 const enumNode : Object = {
110- kind : ApiJsonGenerator . _KIND_ENUM ,
102+ kind : ApiJsonFile . convertKindToJson ( apiEnum . kind ) ,
111103 values : valuesNode ,
112104 deprecatedMessage : apiEnum . documentation . deprecatedMessage || [ ] ,
113105 summary : apiEnum . documentation . summary || [ ] ,
@@ -147,7 +139,7 @@ export default class ApiJsonGenerator extends ApiItemVisitor {
147139 } ;
148140
149141 const newNode : Object = {
150- kind : ApiJsonGenerator . _KIND_FUNCTION ,
142+ kind : ApiJsonFile . convertKindToJson ( apiFunction . kind ) ,
151143 returnValue : returnValueNode ,
152144 parameters : apiFunction . documentation . parameters ,
153145 deprecatedMessage : apiFunction . documentation . deprecatedMessage || [ ] ,
@@ -160,9 +152,11 @@ export default class ApiJsonGenerator extends ApiItemVisitor {
160152 }
161153
162154 protected visitApiPackage ( apiPackage : ApiPackage , refObject ?: Object ) : void {
163- refObject [ 'kind' ] = ApiJsonGenerator . _KIND_PACKAGE ; /* tslint:disable-line:no-string-literal */
164- refObject [ 'summary' ] = apiPackage . documentation . summary ; /* tslint:disable-line:no-string-literal */
165- refObject [ 'remarks' ] = apiPackage . documentation . remarks ; /* tslint:disable-line:no-string-literal */
155+ /* tslint:disable:no-string-literal */
156+ refObject [ 'kind' ] = ApiJsonFile . convertKindToJson ( apiPackage . kind ) ;
157+ refObject [ 'summary' ] = apiPackage . documentation . summary ;
158+ refObject [ 'remarks' ] = apiPackage . documentation . remarks ;
159+ /* tslint:enable:no-string-literal */
166160
167161 const membersNode : Object = { } ;
168162 refObject [ ApiJsonGenerator . _EXPORTS_KEY ] = membersNode ;
@@ -182,7 +176,7 @@ export default class ApiJsonGenerator extends ApiItemVisitor {
182176 }
183177
184178 const newNode : Object = {
185- kind : ApiJsonGenerator . _KIND_PROPERTY ,
179+ kind : ApiJsonFile . convertKindToJson ( apiProperty . kind ) ,
186180 isOptional : ! ! apiProperty . isOptional ,
187181 isReadOnly : ! ! apiProperty . isReadOnly ,
188182 isStatic : ! ! apiProperty . isStatic ,
@@ -204,7 +198,7 @@ export default class ApiJsonGenerator extends ApiItemVisitor {
204198 let newNode : Object ;
205199 if ( apiMethod . name === '__constructor' ) {
206200 newNode = {
207- kind : ApiJsonGenerator . _KIND_CONSTRUCTOR ,
201+ kind : ApiJsonFile . convertKindToJson ( ApiItemKind . Constructor ) ,
208202 signature : apiMethod . getDeclarationLine ( ) ,
209203 parameters : apiMethod . documentation . parameters ,
210204 deprecatedMessage : apiMethod . documentation . deprecatedMessage || [ ] ,
@@ -218,7 +212,7 @@ export default class ApiJsonGenerator extends ApiItemVisitor {
218212 } ;
219213
220214 newNode = {
221- kind : ApiJsonGenerator . _KIND_METHOD ,
215+ kind : ApiJsonFile . convertKindToJson ( apiMethod . kind ) ,
222216 signature : apiMethod . getDeclarationLine ( ) ,
223217 accessModifier : apiMethod . accessModifier ? AccessModifier [ apiMethod . accessModifier ] . toLowerCase ( ) : '' ,
224218 isOptional : ! ! apiMethod . isOptional ,
0 commit comments