devextreme-internal-tools 12.0.0-beta.1 → 12.0.0-beta.3

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.
Files changed (148) hide show
  1. package/bin/DevExtreme.Declarations.Discoverer.dll +0 -0
  2. package/bin/DevExtreme.Declarations.Discoverer.exe +0 -0
  3. package/bin/DevExtreme.Declarations.IntegrityValidator.dll +0 -0
  4. package/bin/DevExtreme.Declarations.IntegrityValidator.exe +0 -0
  5. package/bin/DevExtreme.Declarations.dll +0 -0
  6. package/bin/DevExtreme.Descriptions.Injector.dll +0 -0
  7. package/bin/DevExtreme.Descriptions.Injector.exe +0 -0
  8. package/bin/DevExtreme.Infrastructure.dll +0 -0
  9. package/bin/DevExtreme.IntegrationDataGenerator.dll +0 -0
  10. package/bin/DevExtreme.IntegrationDataGenerator.exe +0 -0
  11. package/bin/DevExtreme.NgSmdGenerator.dll +0 -0
  12. package/bin/DevExtreme.NgSmdGenerator.exe +0 -0
  13. package/bin/DevExtreme.SmdCommon.dll +0 -0
  14. package/bin/DevExtreme.StrongMetaDataGenerator.dll +0 -0
  15. package/bin/DevExtreme.StrongMetaDataGenerator.exe +0 -0
  16. package/bin/DevExtreme.Topics.ExtraFilesGenerator.dll +0 -0
  17. package/bin/DevExtreme.Topics.ExtraFilesGenerator.exe +0 -0
  18. package/bin/DevExtreme.Topics.Generator.dll +0 -0
  19. package/bin/DevExtreme.Topics.Generator.exe +0 -0
  20. package/bin/DevExtreme.Topics.ModulesGuideValidator.dll +0 -0
  21. package/bin/DevExtreme.Topics.ModulesGuideValidator.exe +0 -0
  22. package/bin/DevExtreme.Topics.Validation.dll +0 -0
  23. package/bin/DevExtreme.Topics.Validation.exe +0 -0
  24. package/bin/DevExtreme.Topics.dll +0 -0
  25. package/bin/DevExtreme.WebSite.ContentMapCreator.dll +0 -0
  26. package/bin/DevExtreme.WebSite.ContentMapCreator.exe +0 -0
  27. package/bin/DevExtreme.WebSite.LinksConverter.dll +0 -0
  28. package/bin/DevExtreme.WebSite.LinksConverter.exe +0 -0
  29. package/bin/DevExtreme.WebSite.SyntaxDataGenerator.dll +0 -0
  30. package/bin/DevExtreme.WebSite.SyntaxDataGenerator.exe +0 -0
  31. package/cli.d.ts +2 -0
  32. package/cli.js +50 -0
  33. package/cli.js.map +1 -0
  34. package/index.d.ts +9 -0
  35. package/index.js +18 -47
  36. package/index.js.map +1 -1
  37. package/integration-data-model.d.ts +76 -0
  38. package/integration-data-model.js +3 -0
  39. package/integration-data-model.js.map +1 -0
  40. package/package.json +17 -9
  41. package/ts/angular-components-generator/common-reexports-generator.d.ts +4 -0
  42. package/ts/angular-components-generator/common-reexports-generator.js +36 -0
  43. package/ts/angular-components-generator/common-reexports-generator.js.map +1 -0
  44. package/ts/angular-components-generator/component-names-generator.d.ts +8 -0
  45. package/ts/angular-components-generator/component-names-generator.js +31 -0
  46. package/ts/angular-components-generator/component-names-generator.js.map +1 -0
  47. package/ts/angular-components-generator/dot-generator.d.ts +8 -0
  48. package/ts/angular-components-generator/dot-generator.js +86 -0
  49. package/ts/angular-components-generator/dot-generator.js.map +1 -0
  50. package/ts/angular-components-generator/facade-generator.d.ts +4 -0
  51. package/ts/angular-components-generator/facade-generator.js +45 -0
  52. package/ts/angular-components-generator/facade-generator.js.map +1 -0
  53. package/ts/angular-components-generator/helpers.d.ts +2 -0
  54. package/ts/angular-components-generator/helpers.js +12 -0
  55. package/ts/angular-components-generator/helpers.js.map +1 -0
  56. package/ts/angular-components-generator/import-helper.d.ts +6 -0
  57. package/ts/angular-components-generator/import-helper.js +73 -0
  58. package/ts/angular-components-generator/import-helper.js.map +1 -0
  59. package/ts/angular-components-generator/logger.d.ts +1 -0
  60. package/ts/angular-components-generator/logger.js +16 -0
  61. package/ts/angular-components-generator/logger.js.map +1 -0
  62. package/ts/angular-components-generator/metadata-generator.d.ts +27 -0
  63. package/ts/angular-components-generator/metadata-generator.js +490 -0
  64. package/ts/angular-components-generator/metadata-generator.js.map +1 -0
  65. package/ts/angular-components-generator/metadata-model.d.ts +48 -0
  66. package/ts/angular-components-generator/metadata-model.js +3 -0
  67. package/ts/angular-components-generator/metadata-model.js.map +1 -0
  68. package/ts/angular-components-generator/module-facade-generator.d.ts +5 -0
  69. package/ts/angular-components-generator/module-facade-generator.js +50 -0
  70. package/ts/angular-components-generator/module-facade-generator.js.map +1 -0
  71. package/ts/angular-components-generator/templates/base-nested-component.tst +20 -0
  72. package/ts/angular-components-generator/templates/component.tst +251 -0
  73. package/ts/angular-components-generator/templates/nested-component.tst +140 -0
  74. package/ts/bundler/bundler.d.ts +6 -0
  75. package/ts/collapser/collapser.d.ts +4 -0
  76. package/ts/common/common-resolving.d.ts +11 -0
  77. package/ts/common/id.d.ts +12 -0
  78. package/ts/common/tags/comparing.d.ts +3 -0
  79. package/ts/common/tags/generating.d.ts +4 -0
  80. package/ts/common/tags/merging.d.ts +12 -0
  81. package/ts/common/tags/parameter-field-tag.d.ts +7 -0
  82. package/ts/common/tags.d.ts +12 -0
  83. package/ts/common/ts-type-resolving.d.ts +16 -0
  84. package/ts/common/ts-utils.d.ts +31 -0
  85. package/ts/common/type-resolving.d.ts +42 -0
  86. package/ts/common/utils.d.ts +22 -0
  87. package/ts/component-exports-generator/generator.d.ts +3 -0
  88. package/ts/discoverer/data-model.d.ts +105 -0
  89. package/ts/discoverer/discovering-error.d.ts +4 -0
  90. package/ts/discoverer/discovering.d.ts +4 -0
  91. package/ts/discoverer/parsing/enum-collecting.d.ts +6 -0
  92. package/ts/discoverer/parsing/file-reader.d.ts +2 -0
  93. package/ts/discoverer/parsing/widget-parsing.d.ts +11 -0
  94. package/ts/discoverer/parsing.d.ts +29 -0
  95. package/ts/discoverer/types.d.ts +20 -0
  96. package/ts/logging.d.ts +16 -0
  97. package/ts/modules-meta-generator/modules-meta-generator.d.ts +3 -0
  98. package/ts/react-components-generator/common-reexports-generator.d.ts +2 -0
  99. package/ts/react-components-generator/common-reexports-generator.js +10 -0
  100. package/ts/react-components-generator/common-reexports-generator.js.map +1 -0
  101. package/ts/react-components-generator/component-generator.d.ts +62 -0
  102. package/ts/react-components-generator/component-generator.js +407 -0
  103. package/ts/react-components-generator/component-generator.js.map +1 -0
  104. package/ts/react-components-generator/converter.d.ts +3 -0
  105. package/ts/react-components-generator/converter.js +59 -0
  106. package/ts/react-components-generator/converter.js.map +1 -0
  107. package/ts/react-components-generator/generator.d.ts +60 -0
  108. package/ts/react-components-generator/generator.js +383 -0
  109. package/ts/react-components-generator/generator.js.map +1 -0
  110. package/ts/react-components-generator/helpers.d.ts +11 -0
  111. package/ts/react-components-generator/helpers.js +53 -0
  112. package/ts/react-components-generator/helpers.js.map +1 -0
  113. package/ts/react-components-generator/import-overrides.json +109 -0
  114. package/ts/react-components-generator/index-generator.d.ts +7 -0
  115. package/ts/react-components-generator/index-generator.js +10 -0
  116. package/ts/react-components-generator/index-generator.js.map +1 -0
  117. package/ts/react-components-generator/template.d.ts +10 -0
  118. package/ts/react-components-generator/template.js +43 -0
  119. package/ts/react-components-generator/template.js.map +1 -0
  120. package/ts/scripts/args.d.ts +37 -0
  121. package/ts/scripts/helpers.d.ts +10 -0
  122. package/ts/scripts/tools.d.ts +17 -0
  123. package/ts/vue-components-generator/common-reexports-generator.d.ts +2 -0
  124. package/ts/vue-components-generator/common-reexports-generator.js +10 -0
  125. package/ts/vue-components-generator/common-reexports-generator.js.map +1 -0
  126. package/ts/vue-components-generator/component-generator.d.ts +40 -0
  127. package/ts/vue-components-generator/component-generator.js +197 -0
  128. package/ts/vue-components-generator/component-generator.js.map +1 -0
  129. package/ts/vue-components-generator/converter.d.ts +3 -0
  130. package/ts/vue-components-generator/converter.js +45 -0
  131. package/ts/vue-components-generator/converter.js.map +1 -0
  132. package/ts/vue-components-generator/generator.d.ts +11 -0
  133. package/ts/vue-components-generator/generator.js +126 -0
  134. package/ts/vue-components-generator/generator.js.map +1 -0
  135. package/ts/vue-components-generator/helpers.d.ts +6 -0
  136. package/ts/vue-components-generator/helpers.js +30 -0
  137. package/ts/vue-components-generator/helpers.js.map +1 -0
  138. package/ts/vue-components-generator/index-generator.d.ts +7 -0
  139. package/ts/vue-components-generator/index-generator.js +9 -0
  140. package/ts/vue-components-generator/index-generator.js.map +1 -0
  141. package/ts/vue-components-generator/template.d.ts +11 -0
  142. package/ts/vue-components-generator/template.js +45 -0
  143. package/ts/vue-components-generator/template.js.map +1 -0
  144. package/bin/integration-data-model.ts +0 -86
  145. package/bin/internal-tools-log.txt +0 -21
  146. package/integration-data-model.ts +0 -86
  147. package/ts/discoverer/parsing/file-reader.tests.js +0 -24
  148. package/ts/discoverer/parsing/file-reader.tests.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-generator.js","sourceRoot":"","sources":["../../../ts/angular-components-generator/metadata-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ export interface ImportName {
2
+ Name: string;
3
+ Alias?: string;
4
+ }
5
+ export interface Import extends ImportName {
6
+ Path: string;
7
+ }
8
+ export interface NestedOptions {
9
+ [optionName: string]: Option;
10
+ }
11
+ export interface Option {
12
+ PrimitiveTypes?: string[];
13
+ ItemPrimitiveTypes: string[];
14
+ TypeImports?: Import[];
15
+ IsDataSource?: boolean;
16
+ IsPromise?: boolean;
17
+ IsDeprecated?: boolean;
18
+ IsCollection?: boolean;
19
+ IsChangeable?: boolean;
20
+ IsTemplate?: boolean;
21
+ IsReadonly?: boolean;
22
+ SingularName?: string;
23
+ IsEvent?: boolean;
24
+ IsFunc?: boolean;
25
+ DocID: string;
26
+ TsType: {
27
+ Name: string;
28
+ File: string;
29
+ };
30
+ Options: NestedOptions;
31
+ }
32
+ export interface Metadata {
33
+ Widgets: {
34
+ [widgetName: string]: {
35
+ DocID: string;
36
+ Module: string;
37
+ IsTranscludedContent?: boolean;
38
+ IsExtensionComponent?: boolean;
39
+ IsDeprecated?: boolean;
40
+ Options: {
41
+ [optionName: string]: Option;
42
+ };
43
+ OptionsTypeParams: string[];
44
+ Reexports: string[];
45
+ };
46
+ };
47
+ ExtraObjects: any[];
48
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=metadata-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-model.js","sourceRoot":"","sources":["../../../ts/angular-components-generator/metadata-model.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ export declare class ModuleFacadeGenerator {
2
+ private encoding;
3
+ prepareModuleName(fileName: string): string;
4
+ generate(config: any): void;
5
+ }
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ModuleFacadeGenerator = void 0;
4
+ var fs = require("fs");
5
+ var path = require("path");
6
+ var inflector = require("inflector-js");
7
+ var logger_1 = require("./logger");
8
+ var ModuleFacadeGenerator = (function () {
9
+ function ModuleFacadeGenerator() {
10
+ this.encoding = 'utf8';
11
+ }
12
+ ModuleFacadeGenerator.prototype.prepareModuleName = function (fileName) {
13
+ var result = fileName.replace(/-/g, '_');
14
+ result = inflector.camelize(result);
15
+ result = "Dx" + result + "Module";
16
+ return result;
17
+ };
18
+ ModuleFacadeGenerator.prototype.generate = function (config) {
19
+ var _this = this;
20
+ Object.keys(config.moduleFacades).forEach(function (moduleFilePath) {
21
+ logger_1.default("Generate facade: " + moduleFilePath);
22
+ var facadeConfig = config.moduleFacades[moduleFilePath];
23
+ var moduleNamesString = '';
24
+ var importModuleString = '';
25
+ facadeConfig.sourceComponentDirectories.forEach(function (directoryPath) {
26
+ logger_1.default("List directory: " + directoryPath);
27
+ var files = fs.readdirSync(directoryPath);
28
+ files
29
+ .filter(function (fileName) { return !fs.lstatSync(path.join(directoryPath, fileName)).isFile() && fileName !== 'nested'; })
30
+ .forEach(function (fileName) {
31
+ var moduleName = _this.prepareModuleName(fileName);
32
+ moduleNamesString += "\n " + moduleName + ",";
33
+ importModuleString += "import { " + moduleName + " } from 'devextreme-angular/ui/" + fileName + "';\n";
34
+ });
35
+ });
36
+ Object.keys(facadeConfig.additionalImports).forEach(function (importName) {
37
+ moduleNamesString += "\n " + importName + ",";
38
+ importModuleString += facadeConfig.additionalImports[importName] + ";\n";
39
+ });
40
+ moduleNamesString = moduleNamesString.slice(0, -1);
41
+ importModuleString = importModuleString.slice(0, -1);
42
+ var resultContent = "import { NgModule } from '@angular/core';\n" + importModuleString + "\n\n@NgModule({\n imports: [" + moduleNamesString + "\n ],\n exports: [" + moduleNamesString + "\n ]\n})\nexport class DevExtremeModule {}\n";
43
+ logger_1.default("Write result to " + moduleFilePath);
44
+ fs.writeFileSync(moduleFilePath, resultContent, { encoding: _this.encoding });
45
+ });
46
+ };
47
+ return ModuleFacadeGenerator;
48
+ }());
49
+ exports.ModuleFacadeGenerator = ModuleFacadeGenerator;
50
+ //# sourceMappingURL=module-facade-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module-facade-generator.js","sourceRoot":"","sources":["../../../ts/angular-components-generator/module-facade-generator.ts"],"names":[],"mappings":";;;AAAA,uBAAyB;AACzB,2BAA6B;AAC7B,wCAA0C;AAC1C,mCAA8B;AAE9B;IAAA;QACU,aAAQ,GAAmB,MAAM,CAAC;IAsD5C,CAAC;IAnDC,iDAAiB,GAAjB,UAAkB,QAAgB;QAChC,IAAI,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACzC,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,GAAG,OAAK,MAAM,WAAQ,CAAC;QAE7B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,wCAAQ,GAAR,UAAS,MAAM;QAAf,iBA0CC;QAzCC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,UAAC,cAAc;YACvD,gBAAM,CAAC,sBAAoB,cAAgB,CAAC,CAAC;YAC7C,IAAM,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;YAC1D,IAAI,iBAAiB,GAAG,EAAE,CAAC;YAC3B,IAAI,kBAAkB,GAAG,EAAE,CAAC;YAE5B,YAAY,CAAC,0BAA0B,CAAC,OAAO,CAAC,UAAC,aAAa;gBAC5D,gBAAM,CAAC,qBAAmB,aAAe,CAAC,CAAC;gBAC3C,IAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;gBAE5C,KAAK;qBACF,MAAM,CAAC,UAAC,QAAQ,IAAK,OAAA,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,QAAQ,KAAK,QAAQ,EAAnF,CAAmF,CAAC;qBACzG,OAAO,CAAC,UAAC,QAAQ;oBAChB,IAAM,UAAU,GAAG,KAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;oBAEpD,iBAAiB,IAAI,WAAS,UAAU,MAAG,CAAC;oBAC5C,kBAAkB,IAAI,cAAY,UAAU,uCAAkC,QAAQ,SAAM,CAAC;gBAC/F,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,UAAC,UAAU;gBAC7D,iBAAiB,IAAI,WAAS,UAAU,MAAG,CAAC;gBAC5C,kBAAkB,IAAO,YAAY,CAAC,iBAAiB,CAAC,UAAU,CAAC,QAAK,CAAC;YAC3E,CAAC,CAAC,CAAC;YAEH,iBAAiB,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACnD,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAErD,IAAM,aAAa,GAAG,gDAC1B,kBAAkB,uCAGJ,iBAAiB,gCACjB,iBAAiB,oDAGhC,CAAC;YAEI,gBAAM,CAAC,qBAAmB,cAAgB,CAAC,CAAC;YAC5C,EAAE,CAAC,aAAa,CAAC,cAAc,EAAE,aAAa,EAAE,EAAE,QAAQ,EAAE,KAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC/E,CAAC,CAAC,CAAC;IACL,CAAC;IACH,4BAAC;AAAD,CAAC,AAvDD,IAuDC;AAvDY,sDAAqB"}
@@ -0,0 +1,20 @@
1
+ /* tslint:disable:max-line-length */
2
+
3
+ import { <#= it.baseClass #> } from '<#= it.basePath #>';
4
+ import {
5
+ Component,
6
+ } from '@angular/core';
7
+
8
+ <#? it.imports #><#~ it.imports :file #>import <#= file.importString #> from '<#= file.path #>';
9
+ <#~#><#?#>
10
+ @Component({
11
+ template: ''
12
+ })
13
+ export abstract class <#= it.className #> extends <#= it.baseClass #> {<#~ it.properties :prop:i #>
14
+ get <#= prop.name #>(): <#= prop.type #> {
15
+ return this._getOption('<#= prop.name #>');
16
+ }
17
+ set <#= prop.name #>(value: <#= prop.type #>) {
18
+ this._setOption('<#= prop.name #>', value);
19
+ }
20
+ <#~#>}
@@ -0,0 +1,251 @@
1
+ /* tslint:disable:max-line-length */
2
+ <#
3
+ var collectionProperties = it.properties.filter(item => item.isCollection).map(item => item.name);
4
+ var collectionNestedComponents = it.nestedComponents.filter(item => item.isCollection && item.root);
5
+ var baseClass = it.isExtension ? 'DxComponentExtension' : 'DxComponent';
6
+ var reExportExplicitTypes = it.optionsTypeParams && it.optionsTypeParams.length;
7
+
8
+ var implementedInterfaces = ['OnDestroy'];
9
+
10
+ it.isEditor && implementedInterfaces.push('ControlValueAccessor');
11
+ collectionProperties.length && implementedInterfaces.push('OnChanges', 'DoCheck');
12
+ #>
13
+
14
+ import { TransferState } from '@angular/platform-browser';
15
+
16
+ import {
17
+ Component,
18
+ NgModule,
19
+ ElementRef,
20
+ NgZone,
21
+ PLATFORM_ID,
22
+ Inject,
23
+
24
+ Input,
25
+ Output,
26
+ OnDestroy,<#? it.isExtension #>
27
+ SkipSelf,
28
+ Optional,
29
+ Host,<#?#>
30
+ EventEmitter<#? it.isEditor #>,
31
+ forwardRef,
32
+ HostListener<#?#><#? collectionProperties.length #>,
33
+ OnChanges,
34
+ DoCheck,
35
+ SimpleChanges<#?#><#? collectionNestedComponents.length #>,
36
+ ContentChildren,
37
+ QueryList<#?#>
38
+ } from '@angular/core';
39
+
40
+ <#? reExportExplicitTypes #>export { ExplicitTypes } from '<#= it.module #>';
41
+ <#?#>
42
+ <#? it.imports #><#~ it.imports :file #>import <#= file.importString #> from '<#= file.path #>';
43
+ <#~#><#?#>
44
+ import <#= it.className #> from '<#= it.module #>';
45
+ <#? it.isEditor #>
46
+ import {
47
+ ControlValueAccessor,
48
+ NG_VALUE_ACCESSOR
49
+ } from '@angular/forms';<#?#>
50
+
51
+ import {
52
+ <#= baseClass #>,
53
+ DxTemplateHost,
54
+ DxIntegrationModule,
55
+ DxTemplateModule,
56
+ NestedOptionHost,<#? collectionProperties.length #>
57
+ IterableDifferHelper,<#?#>
58
+ WatcherHelper
59
+ } from 'devextreme-angular/core';
60
+
61
+ <#~ it.nestedComponents :component:i #>import { <#= component.className #>Module } from '<#= it.packageName #>/ui/nested';
62
+ <#~#>
63
+ <#~ collectionNestedComponents :component:i #>import { <#= component.className #>Component } from '<#= it.packageName #>/ui/nested';
64
+ <#~#>
65
+
66
+ <#? it.isEditor #>
67
+
68
+ const CUSTOM_VALUE_ACCESSOR_PROVIDER = {
69
+ provide: NG_VALUE_ACCESSOR,
70
+ useExisting: forwardRef(() => <#= it.className #>Component),
71
+ multi: true
72
+ };<#?#>
73
+ /**
74
+ * [descr:<#= it.docID #>]
75
+ <#? it.isDeprecated #>
76
+ * @deprecated [depNote:<#= it.docID #>]
77
+ <#?#>
78
+ */
79
+ @Component({
80
+ selector: '<#= it.selector #>',
81
+ template: '<#? it.isTranscludedContent #><ng-content></ng-content><#?#>',<#? it.isViz #>
82
+ styles: [ ' :host { display: block; }'],<#?#>
83
+ providers: [
84
+ DxTemplateHost,
85
+ WatcherHelper,<#? it.isEditor #>
86
+ CUSTOM_VALUE_ACCESSOR_PROVIDER,<#?#>
87
+ NestedOptionHost<#? collectionProperties.length #>,
88
+ IterableDifferHelper<#?#>
89
+ ]
90
+ })
91
+ export class <#= it.className #>Component extends <#= baseClass #> <#? implementedInterfaces.length #>implements <#= implementedInterfaces.join(', ') #> <#?#>{
92
+ instance: <#= it.className #>;
93
+ <#~ it.properties :prop:i #>
94
+ /**
95
+ * [descr:<#= prop.docID #>]
96
+ <#? prop.isDeprecated #>
97
+ * @deprecated [depNote:<#= prop.docID #>]
98
+ <#?#>
99
+ */
100
+ @Input()
101
+ get <#= prop.name #>(): <#= prop.type #> {
102
+ return this._getOption('<#= prop.name #>');
103
+ }
104
+ set <#= prop.name #>(value: <#= prop.type #>) {
105
+ this._setOption('<#= prop.name #>', value);
106
+ }<#? i < it.properties.length-1 #>
107
+
108
+ <#?#><#~#>
109
+ <#~ it.events :event:i #>
110
+ /**
111
+ <#? event.isInternal #>
112
+ * This member supports the internal infrastructure and is not intended to be used directly from your code.
113
+ <#??#>
114
+ * [descr:<#= event.docID #>]
115
+ <#? event.isDeprecated #>
116
+ * @deprecated [depNote:<#= event.docID #>]
117
+ <#?#>
118
+ <#?#>
119
+ */
120
+ @Output() <#= event.emit #>: <#= event.type #>;<#? i < it.events.length-1 #>
121
+ <#?#><#~#>
122
+
123
+ <#? it.isEditor #>
124
+ @HostListener('valueChange', ['$event']) change(_) { }
125
+ @HostListener('onBlur', ['$event']) touched = (_) => {};<#?#>
126
+
127
+ <#~ collectionNestedComponents :component:i #>
128
+ @ContentChildren(<#= component.className #>Component)
129
+ get <#= component.propertyName #>Children(): QueryList<<#= component.className #>Component> {
130
+ return this._getOption('<#= component.propertyName #>');
131
+ }
132
+ set <#= component.propertyName #>Children(value) {
133
+ this.setChildren('<#= component.propertyName #>', value);
134
+ }
135
+ <#~#>
136
+
137
+ <#? it.isExtension #>
138
+ parentElement: any;
139
+ <#?#>
140
+
141
+ constructor(elementRef: ElementRef, ngZone: NgZone, templateHost: DxTemplateHost,
142
+ <#? collectionProperties.length #>private <#?#>_watcherHelper: WatcherHelper<#? collectionProperties.length #>,
143
+ private _idh: IterableDifferHelper<#?#>,<#? it.isExtension #>
144
+ @SkipSelf() @Optional() @Host() parentOptionHost: NestedOptionHost,<#?#>
145
+ optionHost: NestedOptionHost,
146
+ transferState: TransferState,
147
+ @Inject(PLATFORM_ID) platformId: any) {
148
+
149
+ super(elementRef, ngZone, templateHost, _watcherHelper, transferState, platformId);
150
+
151
+ this._createEventEmitters([
152
+ <#~ it.events :event:i #>{ <#? event.subscribe #>subscribe: '<#= event.subscribe #>', <#?#>emit: '<#= event.emit #>' }<#? i < it.events.length-1 #>,
153
+ <#?#><#~#>
154
+ ]);<#? it.isExtension #>
155
+ this.parentElement = this.getParentElement(parentOptionHost);<#?#><#? collectionProperties.length #>
156
+
157
+ this._idh.setHost(this);<#?#>
158
+ optionHost.setHost(this);
159
+ }
160
+
161
+ protected _createInstance(element, options) {
162
+ <#? it.isExtension #>
163
+ if (this.parentElement) {
164
+ return new DxValidator(this.parentElement, options);
165
+ }
166
+ <#?#>
167
+ return new <#= it.className #>(element, options);
168
+ }
169
+ <#? it.isExtension #>
170
+ private getParentElement(host) {
171
+ if (host) {
172
+ const parentHost = host.getHost();
173
+ return (parentHost as any).element.nativeElement;
174
+ }
175
+ return;
176
+ }
177
+ <#?#>
178
+ <#? it.isEditor #>
179
+ writeValue(value: any): void {
180
+ this.eventHelper.lockedValueChangeEvent = true;
181
+ this.value = value;
182
+ this.eventHelper.lockedValueChangeEvent = false;
183
+ }
184
+ <#? it.widgetName !== "dxRangeSelector" #>
185
+ setDisabledState(isDisabled: boolean): void {
186
+ this.disabled = isDisabled;
187
+ }
188
+ <#?#>
189
+ registerOnChange(fn: (_: any) => void): void { this.change = fn; }
190
+ registerOnTouched(fn: () => void): void { this.touched = fn; }
191
+
192
+ _createWidget(element: any) {
193
+ super._createWidget(element);
194
+ this.instance.on('focusOut', (e) => {
195
+ this.eventHelper.fireNgEvent('onBlur', [e]);
196
+ });
197
+ }
198
+ <#?#>
199
+ ngOnDestroy() {
200
+ this._destroyWidget();
201
+ }
202
+ <#? collectionProperties.length #>
203
+ ngOnChanges(changes: SimpleChanges) {
204
+ super.ngOnChanges(changes);<#~ collectionProperties :prop:i #>
205
+ this.setupChanges('<#= prop #>', changes);<#~#>
206
+ }
207
+
208
+ setupChanges(prop: string, changes: SimpleChanges) {
209
+ if (!(prop in this._optionsToUpdate)) {
210
+ this._idh.setup(prop, changes);
211
+ }
212
+ }
213
+
214
+ ngDoCheck() {<#~ collectionProperties :prop:i #>
215
+ this._idh.doCheck('<#= prop #>');<#~#>
216
+ this._watcherHelper.checkWatchers();
217
+ super.ngDoCheck();
218
+ super.clearChangedOptions();
219
+ }
220
+
221
+ _setOption(name: string, value: any) {
222
+ let isSetup = this._idh.setupSingle(name, value);
223
+ let isChanged = this._idh.getChanges(name, value) !== null;
224
+
225
+ if (isSetup || isChanged) {
226
+ super._setOption(name, value);
227
+ }
228
+ }<#?#>
229
+ }
230
+
231
+ @NgModule({
232
+ imports: [<#~ it.nestedComponents :component:i #>
233
+ <#= component.className #>Module,<#~#>
234
+ DxIntegrationModule,
235
+ DxTemplateModule
236
+ ],
237
+ declarations: [
238
+ <#= it.className #>Component
239
+ ],
240
+ exports: [
241
+ <#= it.className #>Component<#~ it.nestedComponents :component:i #>,
242
+ <#= component.className #>Module<#~#>,
243
+ DxTemplateModule
244
+ ]
245
+ })
246
+ export class <#= it.className #>Module { }
247
+ <#? it.renderReexports #>
248
+ import type * as <#= it.className #>Types from "<#= it.module #>_types";
249
+ export { <#= it.className #>Types };
250
+ <#?#>
251
+
@@ -0,0 +1,140 @@
1
+ /* tslint:disable:max-line-length */
2
+
3
+ <#? it.inputs #>/* tslint:disable:use-input-property-decorator */
4
+ <#?#>
5
+ import {
6
+ Component,<#? !it.isCollection #>
7
+ OnInit,
8
+ OnDestroy,<#?#>
9
+ NgModule,
10
+ Host,<#? it.hasTemplate #>
11
+ ElementRef,
12
+ Renderer2,
13
+ Inject,
14
+ AfterViewInit,<#?#>
15
+ SkipSelf<#? it.properties #>,
16
+ Input<#?#><#? it.events #>,
17
+ Output,
18
+ EventEmitter<#?#><#? it.collectionNestedComponents.length #>,
19
+ ContentChildren,
20
+ forwardRef,
21
+ QueryList<#?#>
22
+ } from '@angular/core';
23
+
24
+ <#? it.hasTemplate #>import { DOCUMENT } from '@angular/common';<#?#>
25
+
26
+
27
+ <#? it.imports #><#~ it.imports :file #>import <#= file.importString #> from '<#= file.path #>';
28
+ <#~#><#?#>
29
+ import {
30
+ NestedOptionHost,<#? it.hasTemplate #>
31
+ extractTemplate,<#?#><#? it.hasTemplate #>
32
+ DxTemplateDirective,
33
+ IDxTemplateHost,
34
+ DxTemplateHost<#?#>
35
+ } from 'devextreme-angular/core';
36
+ import { <#= it.baseClass #> } from '<#= it.basePath #>';
37
+ <#~ it.collectionNestedComponents :component:i #><#? component.className !== it.className #>import { <#= component.className #>Component } from './<#= component.path #>';
38
+ <#?#><#~#>
39
+
40
+ @Component({
41
+ selector: '<#= it.selector #>',
42
+ template: '<#? it.hasTemplate #><ng-content></ng-content><#?#>',
43
+ styles: ['<#? it.hasTemplate #>:host { display: block; }<#?#>'],
44
+ providers: [NestedOptionHost<#? it.hasTemplate #>, DxTemplateHost<#?#>]<#? it.inputs #>,
45
+ inputs: [<#~ it.inputs :input:i #>
46
+ '<#= input.name #>'<#? i < it.inputs.length-1 #>,<#?#><#~#>
47
+ ]<#?#>
48
+ })
49
+ export class <#= it.className #>Component extends <#= it.baseClass #><#? it.hasTemplate #> implements AfterViewInit,<#? !it.isCollection #> OnDestroy, OnInit,<#?#>
50
+ IDxTemplateHost<#?#><#? !it.isCollection && !it.hasTemplate #> implements OnDestroy, OnInit <#?#> {<#~ it.properties :prop:i #>
51
+ @Input()
52
+ get <#= prop.name #>(): <#= prop.type #> {
53
+ return this._getOption('<#= prop.name #>');
54
+ }
55
+ set <#= prop.name #>(value: <#= prop.type #>) {
56
+ this._setOption('<#= prop.name #>', value);
57
+ }
58
+ <#~#>
59
+ <#~ it.events :event:i #>
60
+ /**
61
+ <#? event.isInternal #>
62
+ * This member supports the internal infrastructure and is not intended to be used directly from your code.
63
+ <#??#>
64
+ * [descr:<#= event.docID #>]
65
+ <#? event.isDeprecated #>
66
+ * @deprecated [depNote:<#= event.docID #>]
67
+ <#?#>
68
+ <#?#>
69
+ */
70
+ @Output() <#= event.emit #>: <#= event.type #>;<#? i < it.events.length-1 #>
71
+ <#?#><#~#>
72
+ protected get _optionPath() {
73
+ return '<#= it.optionName #>';
74
+ }
75
+
76
+ <#~ it.collectionNestedComponents :component:i #>
77
+ @ContentChildren(forwardRef(() => <#= component.className #>Component))
78
+ get <#= component.propertyName #>Children(): QueryList<<#= component.className #>Component> {
79
+ return this._getOption('<#= component.propertyName #>');
80
+ }
81
+ set <#= component.propertyName #>Children(value) {
82
+ this.setChildren('<#= component.propertyName #>', value);
83
+ }
84
+ <#~#>
85
+ constructor(@SkipSelf() @Host() parentOptionHost: NestedOptionHost,
86
+ @Host() optionHost: NestedOptionHost<#? it.hasTemplate #>,
87
+ private renderer: Renderer2,
88
+ @Inject(DOCUMENT) private document: any,
89
+ @Host() templateHost: DxTemplateHost,
90
+ private element: ElementRef<#?#>) {
91
+ super();<#? it.events #>
92
+
93
+ this._createEventEmitters([
94
+ <#~ it.events :event:i #>{ emit: '<#= event.emit #>' }<#? i < it.events.length-1 #>,
95
+ <#?#><#~#>
96
+ ]);
97
+ <#?#>
98
+ parentOptionHost.setNestedOption(this);
99
+ optionHost.setHost(this, this._fullOptionPath.bind(this));<#? it.hasTemplate #>
100
+ templateHost.setHost(this);<#?#><#? it.optionName === 'dataSource' #>
101
+ if ((console) && (console.warn)) {
102
+ console.warn('The nested \'<#= it.selector #>\' component is deprecated in 17.2. ' +
103
+ 'Use the \'<#= it.optionName #>\' option instead. ' +
104
+ 'See:\nhttps://github.com/DevExpress/devextreme-angular/blob/master/CHANGELOG.md#17.2.3'
105
+ );
106
+ }<#?#>
107
+ }
108
+ <#? it.hasTemplate #>
109
+ setTemplate(template: DxTemplateDirective) {
110
+ this.template = template;
111
+ }
112
+ ngAfterViewInit() {
113
+ extractTemplate(this, this.element, this.renderer, this.document);
114
+ }
115
+ <#?#>
116
+ <#? !it.isCollection #>
117
+ ngOnInit() {
118
+ this._addRecreatedComponent();
119
+ }
120
+
121
+ ngOnDestroy() {
122
+ this._addRemovedOption(this._getOptionPath());
123
+ }
124
+ <#?#>
125
+ <#? it.isCollection #>
126
+ ngOnDestroy() {
127
+ this._deleteRemovedOptions(this._fullOptionPath());
128
+ }
129
+ <#?#>
130
+ }
131
+
132
+ @NgModule({
133
+ declarations: [
134
+ <#= it.className #>Component
135
+ ],
136
+ exports: [
137
+ <#= it.className #>Component
138
+ ],
139
+ })
140
+ export class <#= it.className #>Module { }
@@ -0,0 +1,6 @@
1
+ import { CompilerOptions } from 'typescript';
2
+ export declare function bundle(paths: {
3
+ scriptsDir: string;
4
+ outputFile: string;
5
+ }, exclude: RegExp | undefined, compilerOptions: CompilerOptions | undefined): void;
6
+ export declare function processFiles(files: string[], scriptsDir: string, compilerOptions?: CompilerOptions): string;
@@ -0,0 +1,4 @@
1
+ import { CompilerOptions, Program } from 'typescript';
2
+ export declare function collapse(targetDir: string, exclude: RegExp | undefined, compilerOptions: CompilerOptions | undefined): void;
3
+ export declare function collapseJSDocs(content: string, compilerOptions?: CompilerOptions): string;
4
+ export declare function createCollapseFunction(program: Program): (file: string) => string;
@@ -0,0 +1,11 @@
1
+ import { Node, TypeNode, Symbol, TypeChecker } from 'typescript';
2
+ import { ValueTyping } from '../discoverer/data-model';
3
+ export declare function resolveValueType(node: Node): ValueTyping | undefined;
4
+ export declare function resolveNonSupportedType(node: Node): ValueTyping | undefined;
5
+ export declare function getParenthesizedType(node: Node): TypeNode | undefined;
6
+ export declare function hasTag(symbol: Symbol, tagName: string): boolean;
7
+ export declare function hasDocId(symbol: Symbol, checker: TypeChecker): boolean;
8
+ export declare function hasDocIdTag(symbol: Symbol): boolean;
9
+ export declare function resolveTypeOperator(node: Node): {
10
+ id: string;
11
+ } | undefined;
@@ -0,0 +1,12 @@
1
+ import { Node, Symbol, TypeChecker } from 'typescript';
2
+ export declare const ID: unique symbol;
3
+ export declare function getIdFromSymbol(symbol: Symbol | undefined, baseDir: string): string | undefined;
4
+ export declare function getIdFromNode(node: Node | undefined, baseDir: string): string | undefined;
5
+ export declare function buildId(name: string, module?: string): string;
6
+ export declare function getNodeId(node: Node, checker: TypeChecker, baseDir: string): string;
7
+ export declare function isEscapedId(value: string): boolean;
8
+ export declare function getNodeFilePrefix(node: Node, baseDir: string): string;
9
+ export declare function getNodeName(node: Node): string;
10
+ export declare function getMemberName(node: Node, typeName: string): string;
11
+ export declare function getExportName(node: Node, checker: TypeChecker): string;
12
+ export declare function getFullyQualifiedName(member: Symbol): string;
@@ -0,0 +1,3 @@
1
+ import { DocTag } from './types';
2
+ export declare type TagKind = ReturnType<typeof getTagKind>;
3
+ export declare function getTagKind(tag: DocTag): "other" | "defaultValue" | "firedEvent" | "acceptedValues" | "paramField";
@@ -0,0 +1,4 @@
1
+ import { Symbol, TypeChecker } from 'typescript';
2
+ import { MemberType } from '../type-resolving';
3
+ import { DocTag } from './types';
4
+ export declare function generateTags(memberType: MemberType, symbol: Symbol, generateAcceptValues: boolean, checker: TypeChecker, baseDir: string): DocTag[];
@@ -0,0 +1,12 @@
1
+ import { Level } from '../../logging';
2
+ import { TagKind } from './comparing';
3
+ import { DocTag } from './types';
4
+ export declare function mergeTags(declaredTags: DocTag[], generatedTags: DocTag[], reportDuplicate: (message: string, lvl?: Level) => void): DocTag[];
5
+ declare function getTagKey(tag: DocTag): string;
6
+ declare function equalTagValues(a: string, b: string, kind: TagKind): boolean;
7
+ export declare const TESTING: {
8
+ mergeTags: typeof mergeTags;
9
+ equalTagValues: typeof equalTagValues;
10
+ getTagKey: typeof getTagKey;
11
+ };
12
+ export {};
@@ -0,0 +1,7 @@
1
+ import { DocTag } from './types';
2
+ export interface FunctionTypeParamField {
3
+ name: string;
4
+ type: string;
5
+ flags?: string[];
6
+ }
7
+ export declare function buildParamFieldDocTag({ name, type, flags }: FunctionTypeParamField, prefix: string): DocTag;
@@ -0,0 +1,12 @@
1
+ import { JSDocTag, TypeChecker, Symbol, FunctionDeclaration, MethodDeclaration, MethodSignature } from 'typescript';
2
+ import { MemberType } from './type-resolving';
3
+ import { MemberTags } from '../discoverer/data-model';
4
+ import { DocTag } from './tags/types';
5
+ export declare function normalizeTag(tag: JSDocTag): DocTag;
6
+ export declare function getSignatureDeclarationTags(checker: TypeChecker, declaration: FunctionDeclaration | MethodDeclaration | MethodSignature, baseDir: string): DocTag[];
7
+ export declare function buildMemberTags(rawDocTags: readonly DocTag[]): MemberTags;
8
+ export declare function hasTag(symbol: Symbol, tagName: string): boolean;
9
+ export declare function getSymbolTags(checker: TypeChecker, symbol: Symbol, baseDir: string): DocTag[];
10
+ export declare function normalizeDocTags(rawTags: DocTag[], symbol: Symbol, memberType: MemberType | undefined, checker: TypeChecker, baseDir: string): DocTag[];
11
+ export declare function getSymbolType(symbol: Symbol, checker: TypeChecker, baseDir: string): MemberType | undefined;
12
+ export declare const TAG_OPTIONS = "options";