devextreme-internal-tools 19.2.15 → 20.0.0

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 (544) hide show
  1. package/Readme.md +9 -5
  2. package/bin/DevExtreme.BaseGenerator.deps.json +1135 -0
  3. package/bin/DevExtreme.BaseGenerator.dll +0 -0
  4. package/bin/DevExtreme.Declarations.Analyzers.deps.json +188 -0
  5. package/bin/DevExtreme.Declarations.Analyzers.dll +0 -0
  6. package/bin/DevExtreme.Declarations.Discoverer +0 -0
  7. package/bin/DevExtreme.Declarations.Discoverer.deps.json +1152 -295
  8. package/bin/DevExtreme.Declarations.Discoverer.dll +0 -0
  9. package/bin/DevExtreme.Declarations.Discoverer.runtimeconfig.json +12 -8
  10. package/bin/DevExtreme.Declarations.IntegrityValidator +0 -0
  11. package/bin/DevExtreme.Declarations.IntegrityValidator.deps.json +1169 -280
  12. package/bin/DevExtreme.Declarations.IntegrityValidator.dll +0 -0
  13. package/bin/DevExtreme.Declarations.IntegrityValidator.runtimeconfig.json +12 -8
  14. package/bin/DevExtreme.Declarations.deps.json +469 -139
  15. package/bin/DevExtreme.Declarations.dll +0 -0
  16. package/bin/DevExtreme.Descriptions.Injector +0 -0
  17. package/bin/DevExtreme.Descriptions.Injector.deps.json +293 -0
  18. package/bin/DevExtreme.Descriptions.Injector.dll +0 -0
  19. package/bin/DevExtreme.Descriptions.Injector.runtimeconfig.json +13 -0
  20. package/bin/DevExtreme.Infrastructure.deps.json +275 -110
  21. package/bin/DevExtreme.Infrastructure.dll +0 -0
  22. package/bin/DevExtreme.IntegrationDataGenerator +0 -0
  23. package/bin/DevExtreme.IntegrationDataGenerator.deps.json +1173 -0
  24. package/bin/DevExtreme.IntegrationDataGenerator.dll +0 -0
  25. package/bin/DevExtreme.IntegrationDataGenerator.runtimeconfig.json +13 -0
  26. package/bin/DevExtreme.NgSmdGenerator +0 -0
  27. package/bin/DevExtreme.NgSmdGenerator.deps.json +1192 -0
  28. package/bin/DevExtreme.NgSmdGenerator.dll +0 -0
  29. package/bin/DevExtreme.NgSmdGenerator.runtimeconfig.json +13 -0
  30. package/bin/DevExtreme.SmdCommon.deps.json +1153 -0
  31. package/bin/DevExtreme.SmdCommon.dll +0 -0
  32. package/bin/DevExtreme.StrongMetaDataGenerator +0 -0
  33. package/bin/DevExtreme.StrongMetaDataGenerator.deps.json +1173 -0
  34. package/bin/DevExtreme.StrongMetaDataGenerator.dll +0 -0
  35. package/bin/DevExtreme.StrongMetaDataGenerator.runtimeconfig.json +13 -0
  36. package/bin/DevExtreme.Topics.ExtraFilesGenerator +0 -0
  37. package/bin/DevExtreme.Topics.ExtraFilesGenerator.deps.json +1278 -0
  38. package/bin/DevExtreme.Topics.ExtraFilesGenerator.dll +0 -0
  39. package/bin/DevExtreme.Topics.ExtraFilesGenerator.runtimeconfig.json +13 -0
  40. package/bin/DevExtreme.Topics.Generator +0 -0
  41. package/bin/DevExtreme.Topics.Generator.deps.json +1170 -0
  42. package/bin/DevExtreme.Topics.Generator.dll +0 -0
  43. package/bin/DevExtreme.Topics.Generator.runtimeconfig.json +13 -0
  44. package/bin/DevExtreme.Topics.ModulesGuideValidator +0 -0
  45. package/bin/DevExtreme.Topics.ModulesGuideValidator.deps.json +293 -0
  46. package/bin/DevExtreme.Topics.ModulesGuideValidator.dll +0 -0
  47. package/bin/DevExtreme.Topics.ModulesGuideValidator.runtimeconfig.json +13 -0
  48. package/bin/DevExtreme.Topics.Validation +0 -0
  49. package/bin/DevExtreme.Topics.Validation.deps.json +1188 -0
  50. package/bin/DevExtreme.Topics.Validation.dll +0 -0
  51. package/bin/DevExtreme.Topics.Validation.runtimeconfig.json +13 -0
  52. package/bin/DevExtreme.Topics.deps.json +292 -0
  53. package/bin/DevExtreme.Topics.dll +0 -0
  54. package/bin/DevExtreme.WebSite.CompactDocsCreator +0 -0
  55. package/bin/DevExtreme.WebSite.CompactDocsCreator.deps.json +1258 -0
  56. package/bin/DevExtreme.WebSite.CompactDocsCreator.dll +0 -0
  57. package/bin/DevExtreme.WebSite.CompactDocsCreator.runtimeconfig.json +13 -0
  58. package/bin/DevExtreme.WebSite.ContentMapCreator +0 -0
  59. package/bin/DevExtreme.WebSite.ContentMapCreator.deps.json +1240 -0
  60. package/bin/DevExtreme.WebSite.ContentMapCreator.dll +0 -0
  61. package/bin/DevExtreme.WebSite.ContentMapCreator.runtimeconfig.json +13 -0
  62. package/bin/DevExtreme.WebSite.ContentMaps.deps.json +1224 -0
  63. package/bin/DevExtreme.WebSite.ContentMaps.dll +0 -0
  64. package/bin/DevExtreme.WebSite.LinksConverter +0 -0
  65. package/bin/DevExtreme.WebSite.LinksConverter.deps.json +308 -259
  66. package/bin/DevExtreme.WebSite.LinksConverter.dll +0 -0
  67. package/bin/DevExtreme.WebSite.LinksConverter.runtimeconfig.json +12 -8
  68. package/bin/DevExtreme.WebSite.SyntaxDataGenerator +0 -0
  69. package/bin/DevExtreme.WebSite.SyntaxDataGenerator.deps.json +1191 -0
  70. package/bin/DevExtreme.WebSite.SyntaxDataGenerator.dll +0 -0
  71. package/bin/DevExtreme.WebSite.SyntaxDataGenerator.runtimeconfig.json +13 -0
  72. package/bin/JetBrains.Annotations.dll +0 -0
  73. package/bin/Microsoft.CodeAnalysis.CSharp.dll +0 -0
  74. package/bin/Microsoft.CodeAnalysis.dll +0 -0
  75. package/bin/Microsoft.Extensions.Configuration.Abstractions.dll +0 -0
  76. package/bin/Microsoft.Extensions.Configuration.Binder.dll +0 -0
  77. package/bin/Microsoft.Extensions.Configuration.CommandLine.dll +0 -0
  78. package/bin/Microsoft.Extensions.Configuration.EnvironmentVariables.dll +0 -0
  79. package/bin/Microsoft.Extensions.Configuration.FileExtensions.dll +0 -0
  80. package/bin/Microsoft.Extensions.Configuration.Json.dll +0 -0
  81. package/bin/Microsoft.Extensions.Configuration.UserSecrets.dll +0 -0
  82. package/bin/Microsoft.Extensions.Configuration.dll +0 -0
  83. package/bin/Microsoft.Extensions.DependencyInjection.Abstractions.dll +0 -0
  84. package/bin/Microsoft.Extensions.DependencyInjection.dll +0 -0
  85. package/bin/Microsoft.Extensions.Diagnostics.Abstractions.dll +0 -0
  86. package/bin/Microsoft.Extensions.Diagnostics.dll +0 -0
  87. package/bin/Microsoft.Extensions.FileProviders.Abstractions.dll +0 -0
  88. package/bin/Microsoft.Extensions.FileProviders.Physical.dll +0 -0
  89. package/bin/Microsoft.Extensions.FileSystemGlobbing.dll +0 -0
  90. package/bin/Microsoft.Extensions.Hosting.Abstractions.dll +0 -0
  91. package/bin/Microsoft.Extensions.Hosting.dll +0 -0
  92. package/bin/Microsoft.Extensions.Logging.Abstractions.dll +0 -0
  93. package/bin/Microsoft.Extensions.Logging.Configuration.dll +0 -0
  94. package/bin/Microsoft.Extensions.Logging.Console.dll +0 -0
  95. package/bin/Microsoft.Extensions.Logging.Debug.dll +0 -0
  96. package/bin/Microsoft.Extensions.Logging.EventLog.dll +0 -0
  97. package/bin/Microsoft.Extensions.Logging.EventSource.dll +0 -0
  98. package/bin/Microsoft.Extensions.Logging.dll +0 -0
  99. package/bin/Microsoft.Extensions.Options.ConfigurationExtensions.dll +0 -0
  100. package/bin/Microsoft.Extensions.Options.DataAnnotations.dll +0 -0
  101. package/bin/Microsoft.Extensions.Options.dll +0 -0
  102. package/bin/Microsoft.Extensions.Primitives.dll +0 -0
  103. package/bin/NLog.Extensions.Logging.dll +0 -0
  104. package/bin/NLog.dll +0 -0
  105. package/bin/Newtonsoft.Json.dll +0 -0
  106. package/bin/Spectre.Console.Cli.dll +0 -0
  107. package/bin/Spectre.Console.dll +0 -0
  108. package/bin/System.Diagnostics.DiagnosticSource.dll +0 -0
  109. package/bin/System.Diagnostics.EventLog.dll +0 -0
  110. package/bin/System.IO.Abstractions.dll +0 -0
  111. package/bin/System.IO.Pipelines.dll +0 -0
  112. package/bin/System.Text.Encodings.Web.dll +0 -0
  113. package/bin/System.Text.Json.dll +0 -0
  114. package/bin/TestableIO.System.IO.Abstractions.Wrappers.dll +0 -0
  115. package/bin/TestableIO.System.IO.Abstractions.dll +0 -0
  116. package/bin/Testably.Abstractions.FileSystem.Interface.dll +0 -0
  117. package/bin/TypeGen.Core.dll +0 -0
  118. package/bin/cs/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  119. package/bin/cs/Microsoft.CodeAnalysis.resources.dll +0 -0
  120. package/bin/de/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  121. package/bin/de/Microsoft.CodeAnalysis.resources.dll +0 -0
  122. package/bin/de/Spectre.Console.Cli.resources.dll +0 -0
  123. package/bin/es/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  124. package/bin/es/Microsoft.CodeAnalysis.resources.dll +0 -0
  125. package/bin/es/Spectre.Console.Cli.resources.dll +0 -0
  126. package/bin/fr/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  127. package/bin/fr/Microsoft.CodeAnalysis.resources.dll +0 -0
  128. package/bin/fr/Spectre.Console.Cli.resources.dll +0 -0
  129. package/bin/it/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  130. package/bin/it/Microsoft.CodeAnalysis.resources.dll +0 -0
  131. package/bin/it/Spectre.Console.Cli.resources.dll +0 -0
  132. package/bin/ja/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  133. package/bin/ja/Microsoft.CodeAnalysis.resources.dll +0 -0
  134. package/bin/ja/Spectre.Console.Cli.resources.dll +0 -0
  135. package/bin/ko/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  136. package/bin/ko/Microsoft.CodeAnalysis.resources.dll +0 -0
  137. package/bin/ko/Spectre.Console.Cli.resources.dll +0 -0
  138. package/bin/pl/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  139. package/bin/pl/Microsoft.CodeAnalysis.resources.dll +0 -0
  140. package/bin/pt/Spectre.Console.Cli.resources.dll +0 -0
  141. package/bin/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  142. package/bin/pt-BR/Microsoft.CodeAnalysis.resources.dll +0 -0
  143. package/bin/ru/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  144. package/bin/ru/Microsoft.CodeAnalysis.resources.dll +0 -0
  145. package/bin/ru/Spectre.Console.Cli.resources.dll +0 -0
  146. package/bin/runtimes/browser/lib/net8.0/System.Text.Encodings.Web.dll +0 -0
  147. package/bin/runtimes/win/lib/net8.0/System.Diagnostics.EventLog.Messages.dll +0 -0
  148. package/bin/runtimes/win/lib/net8.0/System.Diagnostics.EventLog.dll +0 -0
  149. package/bin/sv/Spectre.Console.Cli.resources.dll +0 -0
  150. package/bin/tr/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  151. package/bin/tr/Microsoft.CodeAnalysis.resources.dll +0 -0
  152. package/bin/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  153. package/bin/zh-Hans/Microsoft.CodeAnalysis.resources.dll +0 -0
  154. package/bin/zh-Hans/Spectre.Console.Cli.resources.dll +0 -0
  155. package/bin/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll +0 -0
  156. package/bin/zh-Hant/Microsoft.CodeAnalysis.resources.dll +0 -0
  157. package/cli.d.ts +2 -0
  158. package/cli.js +49 -0
  159. package/cli.js.map +1 -0
  160. package/index.d.ts +9 -0
  161. package/index.js +54 -30
  162. package/index.js.map +1 -0
  163. package/metadata.d.ts +5 -0
  164. package/metadata.js +45 -0
  165. package/metadata.js.map +1 -0
  166. package/package.json +63 -3
  167. package/ts/angular-components-generator/common-reexports-generator.d.ts +12 -0
  168. package/ts/angular-components-generator/common-reexports-generator.js +39 -0
  169. package/ts/angular-components-generator/common-reexports-generator.js.map +1 -0
  170. package/ts/angular-components-generator/component-names-generator.d.ts +8 -0
  171. package/ts/angular-components-generator/component-names-generator.js +35 -0
  172. package/ts/angular-components-generator/component-names-generator.js.map +1 -0
  173. package/ts/angular-components-generator/dot-generator.d.ts +11 -0
  174. package/ts/angular-components-generator/dot-generator.js +144 -0
  175. package/ts/angular-components-generator/dot-generator.js.map +1 -0
  176. package/ts/angular-components-generator/facade-generator.d.ts +11 -0
  177. package/ts/angular-components-generator/facade-generator.js +60 -0
  178. package/ts/angular-components-generator/facade-generator.js.map +1 -0
  179. package/ts/angular-components-generator/helpers.d.ts +2 -0
  180. package/ts/angular-components-generator/helpers.js +11 -0
  181. package/ts/angular-components-generator/helpers.js.map +1 -0
  182. package/ts/angular-components-generator/import-helper.d.ts +6 -0
  183. package/ts/angular-components-generator/import-helper.js +68 -0
  184. package/ts/angular-components-generator/import-helper.js.map +1 -0
  185. package/ts/angular-components-generator/metadata-generator.d.ts +45 -0
  186. package/ts/angular-components-generator/metadata-generator.js +753 -0
  187. package/ts/angular-components-generator/metadata-generator.js.map +1 -0
  188. package/ts/angular-components-generator/module-facade-generator.d.ts +5 -0
  189. package/ts/angular-components-generator/module-facade-generator.js +62 -0
  190. package/ts/angular-components-generator/module-facade-generator.js.map +1 -0
  191. package/ts/angular-components-generator/templates/base-nested-component.tst +21 -0
  192. package/ts/angular-components-generator/templates/component.tst +255 -0
  193. package/ts/angular-components-generator/templates/nested-component.tst +153 -0
  194. package/ts/bundler/bundler.d.ts +6 -0
  195. package/ts/bundler/bundler.js +286 -0
  196. package/ts/bundler/bundler.js.map +1 -0
  197. package/ts/collapser/collapser.d.ts +4 -0
  198. package/ts/collapser/collapser.js +259 -0
  199. package/ts/collapser/collapser.js.map +1 -0
  200. package/ts/common/common-resolving.d.ts +11 -0
  201. package/ts/common/common-resolving.js +62 -0
  202. package/ts/common/common-resolving.js.map +1 -0
  203. package/ts/common/id.d.ts +13 -0
  204. package/ts/common/id.js +153 -0
  205. package/ts/common/id.js.map +1 -0
  206. package/ts/common/tags/comparing.d.ts +3 -0
  207. package/ts/common/tags/comparing.js +16 -0
  208. package/ts/common/tags/comparing.js.map +1 -0
  209. package/ts/common/tags/generating.d.ts +4 -0
  210. package/ts/common/tags/generating.js +99 -0
  211. package/ts/common/tags/generating.js.map +1 -0
  212. package/ts/common/tags/merging.d.ts +12 -0
  213. package/ts/common/tags/merging.js +98 -0
  214. package/ts/common/tags/merging.js.map +1 -0
  215. package/ts/common/tags/parameter-field-tag.d.ts +7 -0
  216. package/ts/common/tags/parameter-field-tag.js +12 -0
  217. package/ts/common/tags/parameter-field-tag.js.map +1 -0
  218. package/ts/common/tags.d.ts +12 -0
  219. package/ts/common/tags.js +129 -0
  220. package/ts/common/tags.js.map +1 -0
  221. package/ts/common/ts-type-resolving.d.ts +16 -0
  222. package/ts/common/ts-type-resolving.js +472 -0
  223. package/ts/common/ts-type-resolving.js.map +1 -0
  224. package/ts/common/ts-utils.d.ts +40 -0
  225. package/ts/common/ts-utils.js +297 -0
  226. package/ts/common/ts-utils.js.map +1 -0
  227. package/ts/common/type-resolving.d.ts +42 -0
  228. package/ts/common/type-resolving.js +307 -0
  229. package/ts/common/type-resolving.js.map +1 -0
  230. package/ts/common/utils/array-utils.d.ts +6 -0
  231. package/ts/common/utils/array-utils.js +51 -0
  232. package/ts/common/utils/array-utils.js.map +1 -0
  233. package/ts/common/utils/basic-utils.d.ts +4 -0
  234. package/ts/common/utils/basic-utils.js +16 -0
  235. package/ts/common/utils/basic-utils.js.map +1 -0
  236. package/ts/common/utils/console-utils.d.ts +1 -0
  237. package/ts/common/utils/console-utils.js +32 -0
  238. package/ts/common/utils/console-utils.js.map +1 -0
  239. package/ts/common/utils/fs-utils.d.ts +4 -0
  240. package/ts/common/utils/fs-utils.js +44 -0
  241. package/ts/common/utils/fs-utils.js.map +1 -0
  242. package/ts/common/utils/index.d.ts +6 -0
  243. package/ts/common/utils/index.js +23 -0
  244. package/ts/common/utils/index.js.map +1 -0
  245. package/ts/common/utils/narrowing-utils.d.ts +6 -0
  246. package/ts/common/utils/narrowing-utils.js +14 -0
  247. package/ts/common/utils/narrowing-utils.js.map +1 -0
  248. package/ts/common/utils/path-utils.d.ts +6 -0
  249. package/ts/common/utils/path-utils.js +28 -0
  250. package/ts/common/utils/path-utils.js.map +1 -0
  251. package/ts/component-exports-generator/generator.d.ts +3 -0
  252. package/ts/component-exports-generator/generator.js +63 -0
  253. package/ts/component-exports-generator/generator.js.map +1 -0
  254. package/ts/components-generation/aggregated-reexports-generator.d.ts +9 -0
  255. package/ts/components-generation/aggregated-reexports-generator.js +40 -0
  256. package/ts/components-generation/aggregated-reexports-generator.js.map +1 -0
  257. package/ts/components-generation/common-reexports-generator.d.ts +12 -0
  258. package/ts/components-generation/common-reexports-generator.js +89 -0
  259. package/ts/components-generation/common-reexports-generator.js.map +1 -0
  260. package/ts/components-generation/file-helpers.d.ts +9 -0
  261. package/ts/components-generation/file-helpers.js +26 -0
  262. package/ts/components-generation/file-helpers.js.map +1 -0
  263. package/ts/components-generation/helpers.d.ts +15 -0
  264. package/ts/components-generation/helpers.js +99 -0
  265. package/ts/components-generation/helpers.js.map +1 -0
  266. package/ts/components-generation/index-generator.d.ts +4 -0
  267. package/ts/components-generation/index-generator.js +12 -0
  268. package/ts/components-generation/index-generator.js.map +1 -0
  269. package/ts/components-generation/metadata-augmentation.d.ts +10 -0
  270. package/ts/components-generation/metadata-augmentation.js +27 -0
  271. package/ts/components-generation/metadata-augmentation.js.map +1 -0
  272. package/ts/components-generation/models/declarations/index.d.ts +1 -0
  273. package/ts/components-generation/models/declarations/index.js +3 -0
  274. package/ts/components-generation/models/declarations/index.js.map +1 -0
  275. package/ts/components-generation/models/discoverer/app-config.d.ts +4 -0
  276. package/ts/components-generation/models/discoverer/app-config.js +3 -0
  277. package/ts/components-generation/models/discoverer/app-config.js.map +1 -0
  278. package/ts/components-generation/models/discoverer/index.d.ts +2 -0
  279. package/ts/components-generation/models/discoverer/index.js +19 -0
  280. package/ts/components-generation/models/discoverer/index.js.map +1 -0
  281. package/ts/components-generation/models/discoverer/variables.d.ts +5 -0
  282. package/ts/components-generation/models/discoverer/variables.js +3 -0
  283. package/ts/components-generation/models/discoverer/variables.js.map +1 -0
  284. package/ts/components-generation/models/imd/app-config.d.ts +4 -0
  285. package/ts/components-generation/models/imd/app-config.js +3 -0
  286. package/ts/components-generation/models/imd/app-config.js.map +1 -0
  287. package/ts/components-generation/models/imd/array-descr.d.ts +4 -0
  288. package/ts/components-generation/models/imd/array-descr.js +3 -0
  289. package/ts/components-generation/models/imd/array-descr.js.map +1 -0
  290. package/ts/components-generation/models/imd/complex-prop.d.ts +14 -0
  291. package/ts/components-generation/models/imd/complex-prop.js +3 -0
  292. package/ts/components-generation/models/imd/complex-prop.js.map +1 -0
  293. package/ts/components-generation/models/imd/component-ref.d.ts +5 -0
  294. package/ts/components-generation/models/imd/component-ref.js +3 -0
  295. package/ts/components-generation/models/imd/component-ref.js.map +1 -0
  296. package/ts/components-generation/models/imd/custom-type.d.ts +9 -0
  297. package/ts/components-generation/models/imd/custom-type.js +3 -0
  298. package/ts/components-generation/models/imd/custom-type.js.map +1 -0
  299. package/ts/components-generation/models/imd/field.d.ts +5 -0
  300. package/ts/components-generation/models/imd/field.js +3 -0
  301. package/ts/components-generation/models/imd/field.js.map +1 -0
  302. package/ts/components-generation/models/imd/function-descr.d.ts +6 -0
  303. package/ts/components-generation/models/imd/function-descr.js +3 -0
  304. package/ts/components-generation/models/imd/function-descr.js.map +1 -0
  305. package/ts/components-generation/models/imd/i-member-metadata.d.ts +2 -0
  306. package/ts/components-generation/models/imd/i-member-metadata.js +3 -0
  307. package/ts/components-generation/models/imd/i-member-metadata.js.map +1 -0
  308. package/ts/components-generation/models/imd/index.d.ts +18 -0
  309. package/ts/components-generation/models/imd/index.js +35 -0
  310. package/ts/components-generation/models/imd/index.js.map +1 -0
  311. package/ts/components-generation/models/imd/location.d.ts +4 -0
  312. package/ts/components-generation/models/imd/location.js +3 -0
  313. package/ts/components-generation/models/imd/location.js.map +1 -0
  314. package/ts/components-generation/models/imd/member-metadata.d.ts +7 -0
  315. package/ts/components-generation/models/imd/member-metadata.js +3 -0
  316. package/ts/components-generation/models/imd/member-metadata.js.map +1 -0
  317. package/ts/components-generation/models/imd/meta.d.ts +4 -0
  318. package/ts/components-generation/models/imd/meta.js +3 -0
  319. package/ts/components-generation/models/imd/meta.js.map +1 -0
  320. package/ts/components-generation/models/imd/model.d.ts +11 -0
  321. package/ts/components-generation/models/imd/model.js +3 -0
  322. package/ts/components-generation/models/imd/model.js.map +1 -0
  323. package/ts/components-generation/models/imd/mutation.d.ts +6 -0
  324. package/ts/components-generation/models/imd/mutation.js +3 -0
  325. package/ts/components-generation/models/imd/mutation.js.map +1 -0
  326. package/ts/components-generation/models/imd/object-descr.d.ts +5 -0
  327. package/ts/components-generation/models/imd/object-descr.js +3 -0
  328. package/ts/components-generation/models/imd/object-descr.js.map +1 -0
  329. package/ts/components-generation/models/imd/param.d.ts +5 -0
  330. package/ts/components-generation/models/imd/param.js +3 -0
  331. package/ts/components-generation/models/imd/param.js.map +1 -0
  332. package/ts/components-generation/models/imd/prop.d.ts +9 -0
  333. package/ts/components-generation/models/imd/prop.js +3 -0
  334. package/ts/components-generation/models/imd/prop.js.map +1 -0
  335. package/ts/components-generation/models/imd/type-descr.d.ts +9 -0
  336. package/ts/components-generation/models/imd/type-descr.js +3 -0
  337. package/ts/components-generation/models/imd/type-descr.js.map +1 -0
  338. package/ts/components-generation/models/imd/widget.d.ts +16 -0
  339. package/ts/components-generation/models/imd/widget.js +3 -0
  340. package/ts/components-generation/models/imd/widget.js.map +1 -0
  341. package/ts/components-generation/models/ng/app-config.d.ts +6 -0
  342. package/ts/components-generation/models/ng/app-config.js +3 -0
  343. package/ts/components-generation/models/ng/app-config.js.map +1 -0
  344. package/ts/components-generation/models/ng/base-smd-variables.d.ts +3 -0
  345. package/ts/components-generation/models/ng/base-smd-variables.js +3 -0
  346. package/ts/components-generation/models/ng/base-smd-variables.js.map +1 -0
  347. package/ts/components-generation/models/ng/import.d.ts +5 -0
  348. package/ts/components-generation/models/ng/import.js +3 -0
  349. package/ts/components-generation/models/ng/import.js.map +1 -0
  350. package/ts/components-generation/models/ng/index.d.ts +9 -0
  351. package/ts/components-generation/models/ng/index.js +26 -0
  352. package/ts/components-generation/models/ng/index.js.map +1 -0
  353. package/ts/components-generation/models/ng/location.d.ts +4 -0
  354. package/ts/components-generation/models/ng/location.js +3 -0
  355. package/ts/components-generation/models/ng/location.js.map +1 -0
  356. package/ts/components-generation/models/ng/model.d.ts +12 -0
  357. package/ts/components-generation/models/ng/model.js +3 -0
  358. package/ts/components-generation/models/ng/model.js.map +1 -0
  359. package/ts/components-generation/models/ng/mutation.d.ts +6 -0
  360. package/ts/components-generation/models/ng/mutation.js +3 -0
  361. package/ts/components-generation/models/ng/mutation.js.map +1 -0
  362. package/ts/components-generation/models/ng/option.d.ts +20 -0
  363. package/ts/components-generation/models/ng/option.js +3 -0
  364. package/ts/components-generation/models/ng/option.js.map +1 -0
  365. package/ts/components-generation/models/ng/options-owner.d.ts +15 -0
  366. package/ts/components-generation/models/ng/options-owner.js +3 -0
  367. package/ts/components-generation/models/ng/options-owner.js.map +1 -0
  368. package/ts/components-generation/models/ng/variables.d.ts +3 -0
  369. package/ts/components-generation/models/ng/variables.js +3 -0
  370. package/ts/components-generation/models/ng/variables.js.map +1 -0
  371. package/ts/components-generation/models/smd/app-config.d.ts +6 -0
  372. package/ts/components-generation/models/smd/app-config.js +3 -0
  373. package/ts/components-generation/models/smd/app-config.js.map +1 -0
  374. package/ts/components-generation/models/smd/base-smd-variables.d.ts +3 -0
  375. package/ts/components-generation/models/smd/base-smd-variables.js +3 -0
  376. package/ts/components-generation/models/smd/base-smd-variables.js.map +1 -0
  377. package/ts/components-generation/models/smd/container.d.ts +12 -0
  378. package/ts/components-generation/models/smd/container.js +3 -0
  379. package/ts/components-generation/models/smd/container.js.map +1 -0
  380. package/ts/components-generation/models/smd/enums-rule.d.ts +7 -0
  381. package/ts/components-generation/models/smd/enums-rule.js +3 -0
  382. package/ts/components-generation/models/smd/enums-rule.js.map +1 -0
  383. package/ts/components-generation/models/smd/forwarded-enum.d.ts +4 -0
  384. package/ts/components-generation/models/smd/forwarded-enum.js +3 -0
  385. package/ts/components-generation/models/smd/forwarded-enum.js.map +1 -0
  386. package/ts/components-generation/models/smd/index.d.ts +14 -0
  387. package/ts/components-generation/models/smd/index.js +31 -0
  388. package/ts/components-generation/models/smd/index.js.map +1 -0
  389. package/ts/components-generation/models/smd/location.d.ts +4 -0
  390. package/ts/components-generation/models/smd/location.js +3 -0
  391. package/ts/components-generation/models/smd/location.js.map +1 -0
  392. package/ts/components-generation/models/smd/model.d.ts +13 -0
  393. package/ts/components-generation/models/smd/model.js +3 -0
  394. package/ts/components-generation/models/smd/model.js.map +1 -0
  395. package/ts/components-generation/models/smd/mutation.d.ts +6 -0
  396. package/ts/components-generation/models/smd/mutation.js +3 -0
  397. package/ts/components-generation/models/smd/mutation.js.map +1 -0
  398. package/ts/components-generation/models/smd/option-info.d.ts +13 -0
  399. package/ts/components-generation/models/smd/option-info.js +3 -0
  400. package/ts/components-generation/models/smd/option-info.js.map +1 -0
  401. package/ts/components-generation/models/smd/strong-enum-info.d.ts +7 -0
  402. package/ts/components-generation/models/smd/strong-enum-info.js +3 -0
  403. package/ts/components-generation/models/smd/strong-enum-info.js.map +1 -0
  404. package/ts/components-generation/models/smd/strong-enum-item-info.d.ts +5 -0
  405. package/ts/components-generation/models/smd/strong-enum-item-info.js +3 -0
  406. package/ts/components-generation/models/smd/strong-enum-item-info.js.map +1 -0
  407. package/ts/components-generation/models/smd/type-info.d.ts +8 -0
  408. package/ts/components-generation/models/smd/type-info.js +3 -0
  409. package/ts/components-generation/models/smd/type-info.js.map +1 -0
  410. package/ts/components-generation/models/smd/type-kind.d.ts +4 -0
  411. package/ts/components-generation/models/smd/type-kind.js +9 -0
  412. package/ts/components-generation/models/smd/type-kind.js.map +1 -0
  413. package/ts/components-generation/models/smd/variables.d.ts +15 -0
  414. package/ts/components-generation/models/smd/variables.js +3 -0
  415. package/ts/components-generation/models/smd/variables.js.map +1 -0
  416. package/ts/components-generation/reexports-generator.d.ts +12 -0
  417. package/ts/components-generation/reexports-generator.js +19 -0
  418. package/ts/components-generation/reexports-generator.js.map +1 -0
  419. package/ts/components-generation/template.d.ts +28 -0
  420. package/ts/components-generation/template.js +53 -0
  421. package/ts/components-generation/template.js.map +1 -0
  422. package/ts/components-generation/type-resolving.d.ts +33 -0
  423. package/ts/components-generation/type-resolving.js +191 -0
  424. package/ts/components-generation/type-resolving.js.map +1 -0
  425. package/ts/config/args.d.ts +48 -0
  426. package/ts/config/args.js +132 -0
  427. package/ts/config/args.js.map +1 -0
  428. package/ts/config/index.d.ts +28 -0
  429. package/ts/config/index.js +109 -0
  430. package/ts/config/index.js.map +1 -0
  431. package/ts/config/metadata/data-types.d.ts +145 -0
  432. package/ts/config/metadata/data-types.js +3 -0
  433. package/ts/config/metadata/data-types.js.map +1 -0
  434. package/ts/config/metadata/data-types.slice.d.ts +1 -0
  435. package/ts/config/metadata/data-types.slice.js +3 -0
  436. package/ts/config/metadata/data-types.slice.js.map +1 -0
  437. package/ts/config/metadata/index.d.ts +3 -0
  438. package/ts/config/metadata/index.js +42 -0
  439. package/ts/config/metadata/index.js.map +1 -0
  440. package/ts/config/metadata/mutations.d.ts +46 -0
  441. package/ts/config/metadata/mutations.js +147 -0
  442. package/ts/config/metadata/mutations.js.map +1 -0
  443. package/ts/config/paths.d.ts +6 -0
  444. package/ts/config/paths.js +18 -0
  445. package/ts/config/paths.js.map +1 -0
  446. package/ts/discoverer/data-model.d.ts +105 -0
  447. package/ts/discoverer/data-model.js +13 -0
  448. package/ts/discoverer/data-model.js.map +1 -0
  449. package/ts/discoverer/discovering-error.d.ts +4 -0
  450. package/ts/discoverer/discovering-error.js +16 -0
  451. package/ts/discoverer/discovering-error.js.map +1 -0
  452. package/ts/discoverer/discovering.d.ts +4 -0
  453. package/ts/discoverer/discovering.js +73 -0
  454. package/ts/discoverer/discovering.js.map +1 -0
  455. package/ts/discoverer/parsing/enum-collecting.d.ts +6 -0
  456. package/ts/discoverer/parsing/enum-collecting.js +74 -0
  457. package/ts/discoverer/parsing/enum-collecting.js.map +1 -0
  458. package/ts/discoverer/parsing/file-reader.d.ts +2 -0
  459. package/ts/discoverer/parsing/file-reader.js +33 -0
  460. package/ts/discoverer/parsing/file-reader.js.map +1 -0
  461. package/ts/discoverer/parsing/widget-parsing.d.ts +11 -0
  462. package/ts/discoverer/parsing/widget-parsing.js +75 -0
  463. package/ts/discoverer/parsing/widget-parsing.js.map +1 -0
  464. package/ts/discoverer/parsing.d.ts +26 -0
  465. package/ts/discoverer/parsing.js +338 -0
  466. package/ts/discoverer/parsing.js.map +1 -0
  467. package/ts/discoverer/types.d.ts +20 -0
  468. package/ts/discoverer/types.js +3 -0
  469. package/ts/discoverer/types.js.map +1 -0
  470. package/ts/logging.d.ts +16 -0
  471. package/ts/logging.js +112 -0
  472. package/ts/logging.js.map +1 -0
  473. package/ts/modules-meta-generator/modules-meta-generator.d.ts +3 -0
  474. package/ts/modules-meta-generator/modules-meta-generator.js +63 -0
  475. package/ts/modules-meta-generator/modules-meta-generator.js.map +1 -0
  476. package/ts/program.d.ts +3 -0
  477. package/ts/program.js +15 -0
  478. package/ts/program.js.map +1 -0
  479. package/ts/react-components-generator/component-generator.d.ts +55 -0
  480. package/ts/react-components-generator/component-generator.js +421 -0
  481. package/ts/react-components-generator/component-generator.js.map +1 -0
  482. package/ts/react-components-generator/generator.d.ts +43 -0
  483. package/ts/react-components-generator/generator.js +245 -0
  484. package/ts/react-components-generator/generator.js.map +1 -0
  485. package/ts/tools/common.d.ts +8 -0
  486. package/ts/tools/common.js +51 -0
  487. package/ts/tools/common.js.map +1 -0
  488. package/ts/tools/discover-declarations.d.ts +15 -0
  489. package/ts/tools/discover-declarations.js +60 -0
  490. package/ts/tools/discover-declarations.js.map +1 -0
  491. package/ts/tools/index.d.ts +13 -0
  492. package/ts/tools/index.js +90 -0
  493. package/ts/tools/index.js.map +1 -0
  494. package/ts/tools/make-angular-metadata.d.ts +8 -0
  495. package/ts/tools/make-angular-metadata.js +16 -0
  496. package/ts/tools/make-angular-metadata.js.map +1 -0
  497. package/ts/tools/make-aspnet-metadata.d.ts +20 -0
  498. package/ts/tools/make-aspnet-metadata.js +16 -0
  499. package/ts/tools/make-aspnet-metadata.js.map +1 -0
  500. package/ts/tools/make-integration-metadata.d.ts +8 -0
  501. package/ts/tools/make-integration-metadata.js +16 -0
  502. package/ts/tools/make-integration-metadata.js.map +1 -0
  503. package/ts/vue-components-generator/component-generator.d.ts +47 -0
  504. package/ts/vue-components-generator/component-generator.js +229 -0
  505. package/ts/vue-components-generator/component-generator.js.map +1 -0
  506. package/ts/vue-components-generator/converter.d.ts +22 -0
  507. package/ts/vue-components-generator/converter.js +98 -0
  508. package/ts/vue-components-generator/converter.js.map +1 -0
  509. package/ts/vue-components-generator/generator.d.ts +14 -0
  510. package/ts/vue-components-generator/generator.js +156 -0
  511. package/ts/vue-components-generator/generator.js.map +1 -0
  512. package/bin/DevExtreme.Declarations.Discoverer.pdb +0 -0
  513. package/bin/DevExtreme.Declarations.Discoverer.runtimeconfig.dev.json +0 -10
  514. package/bin/DevExtreme.Declarations.IntegrityValidator.pdb +0 -0
  515. package/bin/DevExtreme.Declarations.IntegrityValidator.runtimeconfig.dev.json +0 -10
  516. package/bin/DevExtreme.Declarations.pdb +0 -0
  517. package/bin/DevExtreme.HelpFilesGenerator.DeclarationsProvider.deps.json +0 -273
  518. package/bin/DevExtreme.HelpFilesGenerator.DeclarationsProvider.dll +0 -0
  519. package/bin/DevExtreme.HelpFilesGenerator.DeclarationsProvider.pdb +0 -0
  520. package/bin/DevExtreme.HelpFilesGenerator.deps.json +0 -266
  521. package/bin/DevExtreme.HelpFilesGenerator.dll +0 -0
  522. package/bin/DevExtreme.HelpFilesGenerator.pdb +0 -0
  523. package/bin/DevExtreme.HelpFilesGenerator.runtimeconfig.dev.json +0 -10
  524. package/bin/DevExtreme.HelpFilesGenerator.runtimeconfig.json +0 -9
  525. package/bin/DevExtreme.Infrastructure.pdb +0 -0
  526. package/bin/DevExtreme.Topics.pdb +0 -0
  527. package/bin/DevExtreme.TypeScriptGenerator.deps.json +0 -305
  528. package/bin/DevExtreme.TypeScriptGenerator.dll +0 -0
  529. package/bin/DevExtreme.TypeScriptGenerator.pdb +0 -0
  530. package/bin/DevExtreme.TypeScriptGenerator.runtimeconfig.dev.json +0 -10
  531. package/bin/DevExtreme.TypeScriptGenerator.runtimeconfig.json +0 -9
  532. package/bin/DevExtreme.WebSite.LinksConverter.pdb +0 -0
  533. package/bin/DevExtreme.WebSite.LinksConverter.runtimeconfig.dev.json +0 -10
  534. package/bin/PublishToCorp.bat +0 -10
  535. package/bin/System.IO.FileSystem.AccessControl.dll +0 -0
  536. package/bin/System.Security.AccessControl.dll +0 -0
  537. package/bin/System.Security.Principal.Windows.dll +0 -0
  538. package/bin/runtimes/unix/lib/netcoreapp2.0/System.Security.Principal.Windows.dll +0 -0
  539. package/bin/runtimes/win/lib/netcoreapp2.0/System.Security.AccessControl.dll +0 -0
  540. package/bin/runtimes/win/lib/netcoreapp2.0/System.Security.Principal.Windows.dll +0 -0
  541. package/bin/runtimes/win/lib/netstandard2.0/System.IO.FileSystem.AccessControl.dll +0 -0
  542. package/scripts/declaration-validator.js +0 -31
  543. package/scripts/link-updater.js +0 -88
  544. package/scripts/ts-generator.js +0 -47
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.explodePattern = explodePattern;
4
+ exports.addMetadata = addMetadata;
5
+ exports.addMember = addMember;
6
+ exports.removeMembers = removeMembers;
7
+ exports.replaceTypes = replaceTypes;
8
+ const UID_REGEXP = /^[\w-]+\/[\w_/.-]+:[\w_.-]+$/;
9
+ const isUid = (str) => {
10
+ if (typeof str !== 'string') {
11
+ return false;
12
+ }
13
+ const indexOfSlash = str.indexOf('/');
14
+ const indexOfColon = str.indexOf(':');
15
+ if (indexOfSlash > 0 && indexOfSlash < indexOfColon) {
16
+ if (UID_REGEXP.test(str)) {
17
+ return true;
18
+ }
19
+ throw new Error(`Invalid UID format: ${str}`);
20
+ }
21
+ return false;
22
+ };
23
+ const FN_NAME_REGEXP = /\s*at (.+) /;
24
+ const LINE_NUM_REGEXP = /:(\d+):\d+\)?$/;
25
+ function getFnNameAndLineNumber(skip) {
26
+ const obj = {};
27
+ if ('captureStackTrace' in Error) {
28
+ Error.captureStackTrace(obj, getFnNameAndLineNumber);
29
+ }
30
+ if (!obj.stack) {
31
+ return null;
32
+ }
33
+ const stackLines = obj.stack
34
+ .split('\n')
35
+ .slice(1)
36
+ .slice(skip);
37
+ const fnNameLine = stackLines[0];
38
+ const callerLine = stackLines[1];
39
+ if (!fnNameLine || !callerLine) {
40
+ return null;
41
+ }
42
+ const fnMatch = FN_NAME_REGEXP.exec(fnNameLine);
43
+ const callerMatch = LINE_NUM_REGEXP.exec(callerLine);
44
+ if (fnMatch && callerMatch) {
45
+ const fn = fnMatch[1];
46
+ const line = parseInt(callerMatch[1], 10);
47
+ return { fn, line };
48
+ }
49
+ return null;
50
+ }
51
+ function isArrayType(type) {
52
+ return typeof type === 'string' && type.endsWith('[]');
53
+ }
54
+ function getElementType(type) {
55
+ return type.slice(0, -2);
56
+ }
57
+ function normalizeType(typeOrName) {
58
+ if (isArrayType(typeOrName)) {
59
+ const itemType = getElementType(typeOrName);
60
+ return {
61
+ kind: 'array',
62
+ itemTypes: [normalizeType(itemType)],
63
+ };
64
+ }
65
+ if (isUid(typeOrName)) {
66
+ return { ambient: false, kind: 'uidRef', uid: typeOrName };
67
+ }
68
+ if (typeof typeOrName === 'string') {
69
+ return { kind: typeOrName };
70
+ }
71
+ if (typeOrName.kind === 'function') {
72
+ return {
73
+ ...typeOrName,
74
+ isFunction: true,
75
+ };
76
+ }
77
+ return typeOrName;
78
+ }
79
+ const BRACES_REGEXP = /\(([^)]+)\)/g;
80
+ function explodePattern(pattern) {
81
+ let result = [];
82
+ let lastIndex = 0;
83
+ for (const match of pattern.matchAll(BRACES_REGEXP)) {
84
+ if (lastIndex !== match.index) {
85
+ if (result.length === 0) {
86
+ result = [pattern.substring(lastIndex, match.index)];
87
+ }
88
+ else {
89
+ const part = pattern.substring(lastIndex, match.index);
90
+ result = result.map((r) => r + part);
91
+ }
92
+ }
93
+ lastIndex = match.index + match[0].length;
94
+ const lastResults = result;
95
+ result = match[1]
96
+ .split('|')
97
+ .flatMap((variant) => lastResults.map((r) => r + variant));
98
+ }
99
+ if (lastIndex !== pattern.length) {
100
+ const part = pattern.substring(lastIndex);
101
+ if (result.length === 0) {
102
+ result = [part];
103
+ }
104
+ else {
105
+ result = result.map((r) => r + part);
106
+ }
107
+ }
108
+ return result;
109
+ }
110
+ function withMatch(patternOrList, value) {
111
+ const loc = getFnNameAndLineNumber(1);
112
+ if (patternOrList instanceof RegExp) {
113
+ return { loc, pattern: patternOrList, ...value };
114
+ }
115
+ const uids = (Array.isArray(patternOrList) ? patternOrList : [patternOrList]).flatMap(explodePattern);
116
+ if (uids.length === 0) {
117
+ return null;
118
+ }
119
+ return { loc, uids, ...value };
120
+ }
121
+ function addMetadata(patternOrList, meta) {
122
+ return withMatch(patternOrList, {
123
+ kind: 'metadata',
124
+ meta,
125
+ });
126
+ }
127
+ function addMember({ uid, name, parent, types, }) {
128
+ const loc = getFnNameAndLineNumber(0);
129
+ return { loc, kind: 'add', uid, name, parent, types };
130
+ }
131
+ function removeMembers(patternOrList, replaceRefsWith) {
132
+ return withMatch(patternOrList, {
133
+ kind: 'remove',
134
+ replaceRefsWith: replaceRefsWith
135
+ ? normalizeType(replaceRefsWith)
136
+ : undefined,
137
+ });
138
+ }
139
+ function replaceTypes(patternOrList, what, types) {
140
+ var _a;
141
+ return withMatch(patternOrList, {
142
+ kind: 'replaceTypes',
143
+ what: (_a = what === null || what === void 0 ? void 0 : what.map(normalizeType)) !== null && _a !== void 0 ? _a : null,
144
+ types: types.map(normalizeType),
145
+ });
146
+ }
147
+ //# sourceMappingURL=mutations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutations.js","sourceRoot":"","sources":["../../../../ts/config/metadata/mutations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare const paths: {
2
+ binDir: string;
3
+ workDir: string;
4
+ jsDir: string;
5
+ artifactsDir: string;
6
+ };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.paths = void 0;
4
+ const node_fs_1 = require("node:fs");
5
+ const node_path_1 = require("node:path");
6
+ function getAllPaths() {
7
+ const workDir = process.cwd();
8
+ const binDir = (0, node_path_1.join)(__dirname, '../../bin');
9
+ const distBinDir = (0, node_path_1.join)(__dirname, '../../dist/bin');
10
+ return {
11
+ binDir: (0, node_fs_1.existsSync)(binDir) ? binDir : distBinDir,
12
+ workDir,
13
+ jsDir: (0, node_path_1.join)(workDir, 'js'),
14
+ artifactsDir: (0, node_path_1.join)(workDir, 'artifacts', 'internal-tools'),
15
+ };
16
+ }
17
+ exports.paths = getAllPaths();
18
+ //# sourceMappingURL=paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../ts/config/paths.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AACrC,yCAAiC;AAEjC,SAAS,WAAW;IAMlB,MAAM,OAAO,GAAW,OAAO,CAAC,GAAG,EAAE,CAAC;IACtC,MAAM,MAAM,GAAW,IAAA,gBAAI,EAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACpD,MAAM,UAAU,GAAW,IAAA,gBAAI,EAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAE7D,OAAO;QACL,MAAM,EAAE,IAAA,oBAAU,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU;QAChD,OAAO;QACP,KAAK,EAAE,IAAA,gBAAI,EAAC,OAAO,EAAE,IAAI,CAAC;QAC1B,YAAY,EAAE,IAAA,gBAAI,EAAC,OAAO,EAAE,WAAW,EAAE,gBAAgB,CAAC;KAC3D,CAAC;AACJ,CAAC;AAEY,QAAA,KAAK,GAAG,WAAW,EAAE,CAAC"}
@@ -0,0 +1,105 @@
1
+ export type EnumLikeType = {
2
+ kind: 'enum';
3
+ id: string;
4
+ valueType: 'string';
5
+ values: string[];
6
+ } | {
7
+ kind: 'enum';
8
+ id: string;
9
+ valueType: 'number';
10
+ values: number[];
11
+ };
12
+ export interface Root {
13
+ members: Member[];
14
+ types: Record<string, TypeDeclaration | EnumLikeType>;
15
+ }
16
+ export type Member = {
17
+ id: string;
18
+ tags: MemberTags;
19
+ optional?: boolean;
20
+ type?: TypeRef;
21
+ optionsType?: string;
22
+ typeParameters?: Record<string, GenericParamDeclaration>;
23
+ location?: {
24
+ file: string;
25
+ };
26
+ };
27
+ export interface MemberTags {
28
+ deprecated?: string[];
29
+ docid?: string[];
30
+ [key: string]: string[];
31
+ }
32
+ export interface TypeRef {
33
+ name: string;
34
+ file?: string;
35
+ }
36
+ export type Typing = ValueTyping | ReferenceTyping | GenericTyping | Union | Intersection | FunctionTyping | LiteralTyping;
37
+ export interface TypingBase {
38
+ array?: boolean;
39
+ kind: (typeof TypingKind)[keyof typeof TypingKind];
40
+ }
41
+ export declare const TypingKind: {
42
+ readonly Value: 0;
43
+ readonly Reference: 1;
44
+ readonly Union: 2;
45
+ readonly Intersection: 3;
46
+ readonly Literal: 4;
47
+ readonly GenericArgument: 5;
48
+ readonly Function: 6;
49
+ };
50
+ export interface NamedTyping extends TypingBase {
51
+ id: string;
52
+ args?: Typing[];
53
+ }
54
+ export interface ValueTyping extends NamedTyping {
55
+ kind: typeof TypingKind.Value;
56
+ }
57
+ export interface ReferenceTyping extends NamedTyping {
58
+ kind: typeof TypingKind.Reference;
59
+ memberId?: string;
60
+ }
61
+ export interface GenericTyping extends NamedTyping {
62
+ kind: typeof TypingKind.GenericArgument;
63
+ memberId?: string;
64
+ }
65
+ interface CompositeTyping extends TypingBase {
66
+ types: Typing[];
67
+ }
68
+ export interface Union extends CompositeTyping {
69
+ kind: typeof TypingKind.Union;
70
+ }
71
+ export interface Intersection extends CompositeTyping {
72
+ kind: typeof TypingKind.Intersection;
73
+ }
74
+ export interface LiteralTyping extends TypingBase {
75
+ kind: typeof TypingKind.Literal;
76
+ value: string | number | null;
77
+ }
78
+ export interface FunctionTyping extends TypingBase {
79
+ kind: typeof TypingKind.Function;
80
+ params?: Record<string, FunctionParam>;
81
+ returnType: Typing;
82
+ }
83
+ interface FunctionParam {
84
+ type: Typing;
85
+ spread?: boolean;
86
+ }
87
+ export interface GenericParamDeclaration {
88
+ defaultValue?: Typing;
89
+ }
90
+ export interface TypeDeclaration {
91
+ kind: 'object';
92
+ typeParams?: Record<string, Typing>;
93
+ props: Record<string, PropDeclaration>;
94
+ }
95
+ export type PropDeclaration = {
96
+ type: Typing;
97
+ } & (OwnProp | InheritedProp);
98
+ interface OwnProp {
99
+ readonly?: boolean;
100
+ optional?: boolean;
101
+ }
102
+ interface InheritedProp {
103
+ inheritedFrom: string;
104
+ }
105
+ export {};
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TypingKind = void 0;
4
+ exports.TypingKind = {
5
+ Value: 0,
6
+ Reference: 1,
7
+ Union: 2,
8
+ Intersection: 3,
9
+ Literal: 4,
10
+ GenericArgument: 5,
11
+ Function: 6,
12
+ };
13
+ //# sourceMappingURL=data-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-model.js","sourceRoot":"","sources":["../../../ts/discoverer/data-model.ts"],"names":[],"mappings":";;;AA2Da,QAAA,UAAU,GAAG;IACxB,KAAK,EAAE,CAAC;IACR,SAAS,EAAE,CAAC;IACZ,KAAK,EAAE,CAAC;IACR,YAAY,EAAE,CAAC;IACf,OAAO,EAAE,CAAC;IACV,eAAe,EAAE,CAAC;IAClB,QAAQ,EAAE,CAAC;CACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Node } from 'typescript';
2
+ export declare class DiscoveringError extends Error {
3
+ constructor(message: string, nodes: Node[]);
4
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DiscoveringError = void 0;
4
+ class DiscoveringError extends Error {
5
+ constructor(message, nodes) {
6
+ const extraData = [];
7
+ for (const node of nodes) {
8
+ const file = node.getSourceFile();
9
+ const { line, character } = file.getLineAndCharacterOfPosition(node.getStart());
10
+ extraData.push(`${file.fileName}:${line}:${character}\n\n${node.getText()}`);
11
+ }
12
+ super(`${message}\n\n${extraData.join('\n')}\n\n`);
13
+ }
14
+ }
15
+ exports.DiscoveringError = DiscoveringError;
16
+ //# sourceMappingURL=discovering-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovering-error.js","sourceRoot":"","sources":["../../../ts/discoverer/discovering-error.ts"],"names":[],"mappings":";;;AAEA,MAAa,gBAAiB,SAAQ,KAAK;IACzC,YAAY,OAAe,EAAE,KAAa;QACxC,MAAM,SAAS,GAAG,EAAE,CAAC;QAErB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YAClC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,6BAA6B,CAC5D,IAAI,CAAC,QAAQ,EAAE,CAChB,CAAC;YACF,SAAS,CAAC,IAAI,CACZ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,IAAI,SAAS,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,CAC7D,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,GAAG,OAAO,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;CACF;AAhBD,4CAgBC"}
@@ -0,0 +1,4 @@
1
+ import type { Root } from './data-model';
2
+ import type { CompilerOptions } from './parsing';
3
+ export declare function discover(targetFiles: string[], targetDir: string, outputFile: string, toolsVersion?: string, compilerOptions?: CompilerOptions): void;
4
+ export declare function discoverMembers(fileNames: string[], baseDir: string, compilerOptions?: CompilerOptions): Root;
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.discover = discover;
4
+ exports.discoverMembers = discoverMembers;
5
+ const node_fs_1 = require("node:fs");
6
+ const parsing_1 = require("./parsing");
7
+ const id_1 = require("../common/id");
8
+ const tags_1 = require("../common/tags");
9
+ const utils_1 = require("../common/utils");
10
+ const logging_1 = require("../logging");
11
+ function discover(targetFiles, targetDir, outputFile, toolsVersion, compilerOptions = {}) {
12
+ (0, logging_1.log)('Discovering members');
13
+ const normalizedResult = discoverMembers(targetFiles, targetDir, compilerOptions);
14
+ (0, logging_1.log)(`${normalizedResult.members.length} members descriptors discovered`);
15
+ (0, node_fs_1.writeFileSync)(outputFile, JSON.stringify({ ToolsVersion: toolsVersion, ...normalizedResult }, null, 2));
16
+ }
17
+ function discoverMembers(fileNames, baseDir, compilerOptions) {
18
+ const [descriptors, types] = (0, parsing_1.parseFiles)(fileNames, baseDir, compilerOptions);
19
+ const members = descriptors
20
+ .filter((e) => Object.entries(e.tags).length > 0)
21
+ .map((descriptor) => {
22
+ const member = {
23
+ id: descriptor[id_1.ID],
24
+ tags: (0, tags_1.buildMemberTags)(descriptor.tags),
25
+ };
26
+ switch (descriptor.kind) {
27
+ case 'option': {
28
+ const { type, optional } = descriptor;
29
+ if (type) {
30
+ member.type = { name: type.name };
31
+ if (type.cat === 'custom' || type.cat === 'custom-generic')
32
+ member.type.file = type.file;
33
+ }
34
+ if (optional)
35
+ member.optional = true;
36
+ break;
37
+ }
38
+ case 'widget':
39
+ member.optionsType = descriptor.optionsType;
40
+ break;
41
+ }
42
+ if (descriptor.location)
43
+ member.location = descriptor.location;
44
+ if (descriptor.typeParameters)
45
+ member.typeParameters = descriptor.typeParameters;
46
+ if (!member.id) {
47
+ throw new Error(`Empty ID discovered: ${JSON.stringify(member)}`);
48
+ }
49
+ return member;
50
+ })
51
+ .sort(compare);
52
+ return {
53
+ members,
54
+ types: (0, utils_1.toSortedRecord)(types),
55
+ };
56
+ }
57
+ function compare(a, b) {
58
+ const result = compareAttrValues(getNameForComparison(a), getNameForComparison(b));
59
+ return result !== 0 ? result : compareAttrValues(a.tags.name, b.tags.name);
60
+ }
61
+ function getNameForComparison(doc) {
62
+ return doc.tags.const || doc.tags.docid;
63
+ }
64
+ function compareAttrValues(a, b) {
65
+ if (a === undefined && b === undefined)
66
+ return 0;
67
+ if (a === undefined)
68
+ return -1;
69
+ if (b === undefined)
70
+ return 1;
71
+ return a[0].localeCompare(b[0]);
72
+ }
73
+ //# sourceMappingURL=discovering.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovering.js","sourceRoot":"","sources":["../../../ts/discoverer/discovering.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { Symbol } from 'typescript';
2
+ import type { EnumLikeType } from '../data-model';
3
+ export declare function createEnumsCollector(baseDir: string): {
4
+ addEnum: (symbol: Symbol) => void;
5
+ toRecord: () => Record<string, EnumLikeType>;
6
+ };
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createEnumsCollector = createEnumsCollector;
4
+ const typescript_1 = require("typescript");
5
+ const id_1 = require("../../common/id");
6
+ const type_resolving_1 = require("../../common/type-resolving");
7
+ const utils_1 = require("../../common/utils");
8
+ const logging_1 = require("../../logging");
9
+ function getValuesFromEnumLikeType(declaration, baseDir) {
10
+ if ((0, typescript_1.isTypeAliasDeclaration)(declaration)) {
11
+ const { type } = declaration;
12
+ const types = (0, typescript_1.isUnionTypeNode)(type) ? [...type.types] : [type];
13
+ if (types && (0, utils_1.everyOf)(types, typescript_1.isLiteralTypeNode)) {
14
+ const literals = types.map(type_resolving_1.resolveLiteralType);
15
+ if ((0, utils_1.everyOf)(literals, type_resolving_1.isStringLiteralMemberType)) {
16
+ return {
17
+ id: (0, id_1.getIdFromNode)(declaration, baseDir),
18
+ kind: 'enum',
19
+ values: literals.map((l) => l.value),
20
+ valueType: 'string',
21
+ };
22
+ }
23
+ if ((0, utils_1.everyOf)(literals, type_resolving_1.isNumberLiteralMemberType)) {
24
+ return {
25
+ id: (0, id_1.getIdFromNode)(declaration, baseDir),
26
+ kind: 'enum',
27
+ values: literals.map((l) => l.value),
28
+ valueType: 'number',
29
+ };
30
+ }
31
+ }
32
+ }
33
+ return undefined;
34
+ }
35
+ function createEnumsCollector(baseDir) {
36
+ const enumLikeTypes = new Map();
37
+ function update(enumName, enumValues) {
38
+ const typeName = `Enums.${enumName}`;
39
+ if (enumLikeTypes.has(typeName)) {
40
+ const enumType = enumLikeTypes.get(typeName);
41
+ if (enumType.valueType === 'string' &&
42
+ enumValues.valueType === 'string') {
43
+ enumType.values = [...enumType.values, ...enumValues.values];
44
+ }
45
+ else if (enumType.valueType === 'number' &&
46
+ enumValues.valueType === 'number') {
47
+ enumType.values = [...enumType.values, ...enumValues.values];
48
+ }
49
+ else {
50
+ (0, logging_1.log)(`Enums with the same name ${enumName}, but different values`, {
51
+ lvl: 'error',
52
+ });
53
+ }
54
+ }
55
+ else {
56
+ enumLikeTypes.set(typeName, enumValues);
57
+ }
58
+ }
59
+ function addEnum(symbol) {
60
+ const enumValues = symbol.declarations
61
+ .filter(typescript_1.isTypeAliasDeclaration)
62
+ .map((declaration) => getValuesFromEnumLikeType(declaration, baseDir))
63
+ .find(Boolean);
64
+ if (!enumValues)
65
+ return;
66
+ const enumName = symbol.escapedName.toString();
67
+ update(enumName, enumValues);
68
+ }
69
+ function toRecord() {
70
+ return Object.fromEntries(enumLikeTypes.entries());
71
+ }
72
+ return { addEnum, toRecord };
73
+ }
74
+ //# sourceMappingURL=enum-collecting.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enum-collecting.js","sourceRoot":"","sources":["../../../../ts/discoverer/parsing/enum-collecting.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { SourceFile, Symbol, TypeChecker } from 'typescript';
2
+ export declare function getDiscoverableSymbols(sourceFile: SourceFile, checker: TypeChecker): Symbol[];
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getDiscoverableSymbols = getDiscoverableSymbols;
4
+ const typescript_1 = require("typescript");
5
+ const ts_utils_1 = require("../../common/ts-utils");
6
+ function getDiscoverableSymbols(sourceFile, checker) {
7
+ var _a, _b, _c, _d;
8
+ const result = new Set();
9
+ const fileSymbol = checker.getSymbolAtLocation(sourceFile);
10
+ if (fileSymbol) {
11
+ for (const symbol of checker.getExportsOfModule(fileSymbol)) {
12
+ result.add(symbol);
13
+ }
14
+ }
15
+ const notExportedSymbolsWithTags = (_d = (_c = (_b = (_a = sourceFile === null || sourceFile === void 0 ? void 0 : sourceFile.statements) === null || _a === void 0 ? void 0 : _a.filter((n) => {
16
+ var _a;
17
+ return (0, ts_utils_1.isStatementWithModifiers)(n)
18
+ ? !((_a = n.modifiers) === null || _a === void 0 ? void 0 : _a.some((m) => m.kind === typescript_1.SyntaxKind.ExportKeyword))
19
+ : false;
20
+ })) === null || _b === void 0 ? void 0 : _b.filter((n) => (0, typescript_1.getJSDocTags)(n).length > 0)) === null || _c === void 0 ? void 0 : _c.map((n) => {
21
+ if ((0, typescript_1.isTypeAliasDeclaration)(n)) {
22
+ return checker.getSymbolAtLocation(n.name);
23
+ }
24
+ return null;
25
+ })) === null || _d === void 0 ? void 0 : _d.filter((s) => s);
26
+ if (notExportedSymbolsWithTags) {
27
+ for (const symbol of notExportedSymbolsWithTags) {
28
+ result.add(symbol);
29
+ }
30
+ }
31
+ return Array.from(result);
32
+ }
33
+ //# sourceMappingURL=file-reader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-reader.js","sourceRoot":"","sources":["../../../../ts/discoverer/parsing/file-reader.ts"],"names":[],"mappings":";;AAMA,wDAoCC;AA1CD,2CAA8E;AAE9E,oDAAiE;AAIjE,SAAgB,sBAAsB,CACpC,UAAsB,EACtB,OAAoB;;IAEpB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IAEjC,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAC3D,IAAI,UAAU,EAAE,CAAC;QACf,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5D,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,MAAM,0BAA0B,GAAG,MAAA,MAAA,MAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,UAAU,0CACrD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;;QACb,OAAA,IAAA,mCAAwB,EAAC,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC,CAAA,MAAA,CAAC,CAAC,SAAS,0CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,uBAAU,CAAC,aAAa,CAAC,CAAA;YAChE,CAAC,CAAC,KAAK,CAAA;KAAA,CACV,0CACC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,yBAAY,EAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,0CACzC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACV,IAAI,IAAA,mCAAsB,EAAC,CAAC,CAAC,EAAE,CAAC;YAC9B,OAAO,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,0CACA,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAErB,IAAI,0BAA0B,EAAE,CAAC;QAC/B,KAAK,MAAM,MAAM,IAAI,0BAA0B,EAAE,CAAC;YAChD,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { Node, TypeChecker } from 'typescript';
2
+ import type { DocTag } from '../../common/tags/types';
3
+ export declare function parseWidgetExtras(node: Node, tags: DocTag[], checker: TypeChecker, baseDir: string): {
4
+ optionsType: string;
5
+ isWidget: true;
6
+ tags: DocTag[];
7
+ } | {
8
+ isWidget: false;
9
+ optionsType?: undefined;
10
+ tags?: undefined;
11
+ };
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseWidgetExtras = parseWidgetExtras;
4
+ const typescript_1 = require("typescript");
5
+ const common_resolving_1 = require("../../common/common-resolving");
6
+ const id_1 = require("../../common/id");
7
+ const tags_1 = require("../../common/tags");
8
+ const ts_utils_1 = require("../../common/ts-utils");
9
+ function parseWidgetExtras(node, tags, checker, baseDir) {
10
+ const optionsTag = tags.find((t) => t.name === tags_1.TAG_OPTIONS);
11
+ if (optionsTag) {
12
+ const optionsType = !optionsTag.value.includes(':')
13
+ ? `${(0, id_1.getNodeFilePrefix)(node, baseDir)}:${optionsTag.value}`
14
+ : optionsTag.value;
15
+ return {
16
+ optionsType,
17
+ isWidget: true,
18
+ tags: tags.filter((t) => t !== optionsTag),
19
+ };
20
+ }
21
+ const optionsTypeSymbol = getOptionsTypeSymbol(node, checker);
22
+ if (optionsTypeSymbol) {
23
+ if (optionsTypeSymbol.declarations.length !== 1) {
24
+ throw new Error(`Partial declaration of options type not expected: ${optionsTypeSymbol.name}`);
25
+ }
26
+ const prefix = (0, id_1.getNodeFilePrefix)(optionsTypeSymbol.declarations[0], baseDir);
27
+ return {
28
+ optionsType: `${prefix}:${optionsTypeSymbol.name}`,
29
+ isWidget: true,
30
+ tags,
31
+ };
32
+ }
33
+ return { isWidget: false };
34
+ }
35
+ function getOptionsTypeSymbol(node, checker) {
36
+ var _a;
37
+ const type = checker.getTypeAtLocation(node);
38
+ if (!((_a = getAllBaseTypes(type)) === null || _a === void 0 ? void 0 : _a.some(isWrappable)))
39
+ return undefined;
40
+ const optionsPropSymbol = type.getProperty('option');
41
+ if (optionsPropSymbol === undefined)
42
+ return undefined;
43
+ const resolvedType = checker.getTypeOfSymbolAtLocation(optionsPropSymbol, optionsPropSymbol.valueDeclaration);
44
+ if (resolvedType === undefined)
45
+ return undefined;
46
+ const returnType = checker
47
+ .getSignaturesOfType(resolvedType, typescript_1.SignatureKind.Call)
48
+ .find((s) => s.parameters.length === 0)
49
+ .getReturnType().symbol;
50
+ if (returnType === undefined)
51
+ return undefined;
52
+ const paramDeclarations = returnType.declarations.filter(typescript_1.isTypeParameterDeclaration);
53
+ if (paramDeclarations.length === returnType.declarations.length) {
54
+ if (paramDeclarations.length !== 1)
55
+ throw new Error('Partial declaration of type parameter not expected');
56
+ return paramDeclarations[0].default
57
+ ? checker.getTypeAtLocation(paramDeclarations[0].default).symbol
58
+ : undefined;
59
+ }
60
+ return returnType;
61
+ }
62
+ function getAllBaseTypes(type) {
63
+ var _a;
64
+ const baseTypes = (0, ts_utils_1.isTypeReference)(type)
65
+ ? type.target.getBaseTypes()
66
+ : type.getBaseTypes();
67
+ return ((_a = baseTypes === null || baseTypes === void 0 ? void 0 : baseTypes.flatMap((baseType) => [
68
+ baseType,
69
+ ...getAllBaseTypes(baseType),
70
+ ])) !== null && _a !== void 0 ? _a : []);
71
+ }
72
+ function isWrappable(type) {
73
+ return (0, common_resolving_1.hasTag)(type.symbol, 'wrappable');
74
+ }
75
+ //# sourceMappingURL=widget-parsing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-parsing.js","sourceRoot":"","sources":["../../../../ts/discoverer/parsing/widget-parsing.ts"],"names":[],"mappings":"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"}