@skyux/docs-tools 5.0.0-beta.9 → 6.0.0-beta.2

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 (176) hide show
  1. package/README.md +8 -0
  2. package/esm2020/docs-tools.module.mjs +40 -0
  3. package/esm2020/modules/anatomy/anatomy-item.component.mjs +17 -0
  4. package/esm2020/modules/anatomy/anatomy.component.mjs +24 -0
  5. package/esm2020/modules/anatomy/anatomy.module.mjs +21 -0
  6. package/{esm2015/modules/code-examples/code-example-module-dependencies.js → esm2020/modules/code-examples/code-example-module-dependencies.mjs} +0 -0
  7. package/{esm2015/modules/code-examples/code-example-theme.js → esm2020/modules/code-examples/code-example-theme.mjs} +1 -1
  8. package/esm2020/modules/code-examples/code-example.component.mjs +68 -0
  9. package/esm2020/modules/code-examples/code-example.mjs +2 -0
  10. package/esm2020/modules/code-examples/code-examples-editor.service.mjs +295 -0
  11. package/esm2020/modules/code-examples/code-examples.component.mjs +97 -0
  12. package/esm2020/modules/code-examples/code-examples.module.mjs +43 -0
  13. package/{esm2015/modules/demo/demo-content-alignment.js → esm2020/modules/demo/demo-content-alignment.mjs} +0 -0
  14. package/{esm2015/modules/demo/demo-control-panel-change.js → esm2020/modules/demo/demo-control-panel-change.mjs} +0 -0
  15. package/esm2020/modules/demo/demo-control-panel-checkbox.component.mjs +80 -0
  16. package/{esm2015/modules/demo/demo-control-panel-radio-choice.js → esm2020/modules/demo/demo-control-panel-radio-choice.mjs} +1 -1
  17. package/esm2020/modules/demo/demo-control-panel-radio-group.component.mjs +75 -0
  18. package/esm2020/modules/demo/demo-control-panel-section.component.mjs +22 -0
  19. package/esm2020/modules/demo/demo-control-panel.component.mjs +85 -0
  20. package/esm2020/modules/demo/demo.component.mjs +53 -0
  21. package/esm2020/modules/demo/demo.module.mjs +69 -0
  22. package/esm2020/modules/demo-page/demo-page-dom-adapter.service.mjs +75 -0
  23. package/{esm2015/modules/demo-page/demo-page-module-info.component.js → esm2020/modules/demo-page/demo-page-module-info.component.mjs} +5 -5
  24. package/esm2020/modules/demo-page/demo-page-section.component.mjs +43 -0
  25. package/esm2020/modules/demo-page/demo-page-summary.component.mjs +21 -0
  26. package/esm2020/modules/demo-page/demo-page-title.service.mjs +28 -0
  27. package/esm2020/modules/demo-page/demo-page-type-definitions.component.mjs +35 -0
  28. package/esm2020/modules/demo-page/demo-page.component.mjs +134 -0
  29. package/esm2020/modules/demo-page/demo-page.module.mjs +88 -0
  30. package/esm2020/modules/design-guidelines/design-guideline-thumbnail.component.mjs +27 -0
  31. package/esm2020/modules/design-guidelines/design-guideline.component.mjs +33 -0
  32. package/esm2020/modules/design-guidelines/design-guidelines.component.mjs +11 -0
  33. package/esm2020/modules/design-guidelines/design-guidelines.module.mjs +34 -0
  34. package/esm2020/modules/heading-anchor/heading-anchor.component.mjs +21 -0
  35. package/esm2020/modules/heading-anchor/heading-anchor.module.mjs +20 -0
  36. package/esm2020/modules/markdown/markdown.module.mjs +17 -0
  37. package/esm2020/modules/markdown/markdown.pipe.mjs +20 -0
  38. package/esm2020/modules/module-info/module-info.component.mjs +77 -0
  39. package/esm2020/modules/module-info/module-info.module.mjs +42 -0
  40. package/esm2020/modules/safe-html/safe-html.component.mjs +20 -0
  41. package/esm2020/modules/safe-html/safe-html.module.mjs +18 -0
  42. package/{esm2015/modules/shared/docs-tools-component-info.js → esm2020/modules/shared/docs-tools-component-info.mjs} +0 -0
  43. package/{esm2015/modules/shared/docs-tools-options.js → esm2020/modules/shared/docs-tools-options.mjs} +1 -1
  44. package/esm2020/modules/shared/docs-tools-supportal.service.mjs +23 -0
  45. package/esm2020/modules/shared/sky-docs-tools-resources.module.mjs +53 -0
  46. package/{esm2015/modules/source-code/source-code-file.js → esm2020/modules/source-code/source-code-file.mjs} +1 -1
  47. package/{esm2015/modules/source-code/source-code-provider.js → esm2020/modules/source-code/source-code-provider.mjs} +5 -5
  48. package/esm2020/modules/source-code/source-code.service.mjs +42 -0
  49. package/esm2020/modules/thumbnail/thumbnail.component.mjs +28 -0
  50. package/esm2020/modules/thumbnail/thumbnail.module.mjs +19 -0
  51. package/{esm2015/modules/type-definitions/anchor-link-service-config.js → esm2020/modules/type-definitions/anchor-link-service-config.mjs} +0 -0
  52. package/{esm2015/modules/type-definitions/anchor-link-service-format.js → esm2020/modules/type-definitions/anchor-link-service-format.mjs} +0 -0
  53. package/{esm2015/modules/type-definitions/anchor-link.js → esm2020/modules/type-definitions/anchor-link.mjs} +0 -0
  54. package/esm2020/modules/type-definitions/anchor-link.service.mjs +106 -0
  55. package/esm2020/modules/type-definitions/call-signature-definition.component.mjs +45 -0
  56. package/esm2020/modules/type-definitions/call-signature-definition.mjs +2 -0
  57. package/esm2020/modules/type-definitions/class-definition.component.mjs +20 -0
  58. package/esm2020/modules/type-definitions/class-definition.mjs +2 -0
  59. package/esm2020/modules/type-definitions/comment-tags.mjs +2 -0
  60. package/esm2020/modules/type-definitions/directive-definition.component.mjs +20 -0
  61. package/esm2020/modules/type-definitions/directive-definition.mjs +2 -0
  62. package/esm2020/modules/type-definitions/entry-child-definition.mjs +2 -0
  63. package/{esm2015/modules/type-definitions/entry-definition.js → esm2020/modules/type-definitions/entry-definition.mjs} +1 -1
  64. package/esm2020/modules/type-definitions/enumeration-definition.component.mjs +19 -0
  65. package/esm2020/modules/type-definitions/enumeration-definition.mjs +2 -0
  66. package/{esm2015/modules/type-definitions/enumeration-member-definition.js → esm2020/modules/type-definitions/enumeration-member-definition.mjs} +1 -1
  67. package/esm2020/modules/type-definitions/index-signature-definition.mjs +2 -0
  68. package/esm2020/modules/type-definitions/interface-definition.component.mjs +36 -0
  69. package/esm2020/modules/type-definitions/interface-definition.mjs +2 -0
  70. package/esm2020/modules/type-definitions/interface-property-definition.mjs +2 -0
  71. package/esm2020/modules/type-definitions/method-definition.mjs +2 -0
  72. package/esm2020/modules/type-definitions/method-definitions.component.mjs +56 -0
  73. package/esm2020/modules/type-definitions/parameter-definition.mjs +2 -0
  74. package/esm2020/modules/type-definitions/pipe-definition.component.mjs +20 -0
  75. package/esm2020/modules/type-definitions/pipe-definition.mjs +2 -0
  76. package/{esm2015/modules/type-definitions/property-decorator.js → esm2020/modules/type-definitions/property-decorator.mjs} +1 -1
  77. package/esm2020/modules/type-definitions/property-definition.mjs +2 -0
  78. package/esm2020/modules/type-definitions/property-definitions.component.mjs +62 -0
  79. package/esm2020/modules/type-definitions/type-alias-definition.component.mjs +36 -0
  80. package/esm2020/modules/type-definitions/type-alias-definition.mjs +2 -0
  81. package/esm2020/modules/type-definitions/type-anchor-links.pipe.mjs +27 -0
  82. package/esm2020/modules/type-definitions/type-definition.mjs +2 -0
  83. package/esm2020/modules/type-definitions/type-definitions-format.service.mjs +242 -0
  84. package/{esm2015/modules/type-definitions/type-definitions-provider.js → esm2020/modules/type-definitions/type-definitions-provider.mjs} +4 -4
  85. package/esm2020/modules/type-definitions/type-definitions.mjs +2 -0
  86. package/esm2020/modules/type-definitions/type-definitions.module.mjs +102 -0
  87. package/esm2020/modules/type-definitions/type-definitions.service.mjs +103 -0
  88. package/esm2020/modules/type-definitions/type-parameter-definition.mjs +2 -0
  89. package/esm2020/modules/type-definitions/typedoc-adapter.service.mjs +522 -0
  90. package/esm2020/modules/type-definitions/typedoc-types.mjs +2 -0
  91. package/{esm2015/public-api.js → esm2020/public-api.mjs} +1 -1
  92. package/{esm2015/skyux-docs-tools.js → esm2020/skyux-docs-tools.mjs} +0 -0
  93. package/fesm2015/skyux-docs-tools.mjs +3091 -0
  94. package/fesm2015/skyux-docs-tools.mjs.map +1 -0
  95. package/fesm2020/skyux-docs-tools.mjs +3074 -0
  96. package/fesm2020/skyux-docs-tools.mjs.map +1 -0
  97. package/modules/type-definitions/method-definition.d.ts +1 -0
  98. package/modules/type-definitions/typedoc-types.d.ts +6 -3
  99. package/package.json +39 -26
  100. package/bundles/skyux-docs-tools.umd.js +0 -3705
  101. package/bundles/skyux-docs-tools.umd.js.map +0 -1
  102. package/documentation.json +0 -10784
  103. package/esm2015/docs-tools.module.js +0 -40
  104. package/esm2015/modules/anatomy/anatomy-item.component.js +0 -22
  105. package/esm2015/modules/anatomy/anatomy.component.js +0 -29
  106. package/esm2015/modules/anatomy/anatomy.module.js +0 -39
  107. package/esm2015/modules/code-examples/code-example.component.js +0 -68
  108. package/esm2015/modules/code-examples/code-example.js +0 -2
  109. package/esm2015/modules/code-examples/code-examples-editor.service.js +0 -289
  110. package/esm2015/modules/code-examples/code-examples.component.js +0 -102
  111. package/esm2015/modules/code-examples/code-examples.module.js +0 -51
  112. package/esm2015/modules/demo/demo-control-panel-checkbox.component.js +0 -84
  113. package/esm2015/modules/demo/demo-control-panel-radio-group.component.js +0 -80
  114. package/esm2015/modules/demo/demo-control-panel-section.component.js +0 -27
  115. package/esm2015/modules/demo/demo-control-panel.component.js +0 -86
  116. package/esm2015/modules/demo/demo.component.js +0 -58
  117. package/esm2015/modules/demo/demo.module.js +0 -69
  118. package/esm2015/modules/demo-page/demo-page-dom-adapter.service.js +0 -75
  119. package/esm2015/modules/demo-page/demo-page-section.component.js +0 -47
  120. package/esm2015/modules/demo-page/demo-page-summary.component.js +0 -26
  121. package/esm2015/modules/demo-page/demo-page-title.service.js +0 -28
  122. package/esm2015/modules/demo-page/demo-page-type-definitions.component.js +0 -39
  123. package/esm2015/modules/demo-page/demo-page.component.js +0 -142
  124. package/esm2015/modules/demo-page/demo-page.module.js +0 -88
  125. package/esm2015/modules/design-guidelines/design-guideline-thumbnail.component.js +0 -32
  126. package/esm2015/modules/design-guidelines/design-guideline.component.js +0 -38
  127. package/esm2015/modules/design-guidelines/design-guidelines.component.js +0 -15
  128. package/esm2015/modules/design-guidelines/design-guidelines.module.js +0 -44
  129. package/esm2015/modules/heading-anchor/heading-anchor.component.js +0 -26
  130. package/esm2015/modules/heading-anchor/heading-anchor.module.js +0 -34
  131. package/esm2015/modules/markdown/markdown.module.js +0 -25
  132. package/esm2015/modules/markdown/markdown.pipe.js +0 -20
  133. package/esm2015/modules/module-info/module-info.component.js +0 -82
  134. package/esm2015/modules/module-info/module-info.module.js +0 -46
  135. package/esm2015/modules/safe-html/safe-html.component.js +0 -24
  136. package/esm2015/modules/safe-html/safe-html.module.js +0 -26
  137. package/esm2015/modules/shared/docs-tools-supportal.service.js +0 -23
  138. package/esm2015/modules/shared/sky-docs-tools-resources.module.js +0 -41
  139. package/esm2015/modules/source-code/source-code.service.js +0 -42
  140. package/esm2015/modules/thumbnail/thumbnail.component.js +0 -33
  141. package/esm2015/modules/thumbnail/thumbnail.module.js +0 -30
  142. package/esm2015/modules/type-definitions/anchor-link.service.js +0 -98
  143. package/esm2015/modules/type-definitions/call-signature-definition.component.js +0 -51
  144. package/esm2015/modules/type-definitions/call-signature-definition.js +0 -2
  145. package/esm2015/modules/type-definitions/class-definition.component.js +0 -25
  146. package/esm2015/modules/type-definitions/class-definition.js +0 -2
  147. package/esm2015/modules/type-definitions/comment-tags.js +0 -2
  148. package/esm2015/modules/type-definitions/directive-definition.component.js +0 -25
  149. package/esm2015/modules/type-definitions/directive-definition.js +0 -2
  150. package/esm2015/modules/type-definitions/entry-child-definition.js +0 -2
  151. package/esm2015/modules/type-definitions/enumeration-definition.component.js +0 -23
  152. package/esm2015/modules/type-definitions/enumeration-definition.js +0 -2
  153. package/esm2015/modules/type-definitions/index-signature-definition.js +0 -2
  154. package/esm2015/modules/type-definitions/interface-definition.component.js +0 -38
  155. package/esm2015/modules/type-definitions/interface-definition.js +0 -2
  156. package/esm2015/modules/type-definitions/interface-property-definition.js +0 -2
  157. package/esm2015/modules/type-definitions/method-definition.js +0 -2
  158. package/esm2015/modules/type-definitions/method-definitions.component.js +0 -62
  159. package/esm2015/modules/type-definitions/parameter-definition.js +0 -2
  160. package/esm2015/modules/type-definitions/pipe-definition.component.js +0 -25
  161. package/esm2015/modules/type-definitions/pipe-definition.js +0 -2
  162. package/esm2015/modules/type-definitions/property-definition.js +0 -2
  163. package/esm2015/modules/type-definitions/property-definitions.component.js +0 -69
  164. package/esm2015/modules/type-definitions/type-alias-definition.component.js +0 -39
  165. package/esm2015/modules/type-definitions/type-alias-definition.js +0 -2
  166. package/esm2015/modules/type-definitions/type-anchor-links.pipe.js +0 -27
  167. package/esm2015/modules/type-definitions/type-definition.js +0 -2
  168. package/esm2015/modules/type-definitions/type-definitions-format.service.js +0 -241
  169. package/esm2015/modules/type-definitions/type-definitions.js +0 -2
  170. package/esm2015/modules/type-definitions/type-definitions.module.js +0 -102
  171. package/esm2015/modules/type-definitions/type-definitions.service.js +0 -103
  172. package/esm2015/modules/type-definitions/type-parameter-definition.js +0 -2
  173. package/esm2015/modules/type-definitions/typedoc-adapter.service.js +0 -477
  174. package/esm2015/modules/type-definitions/typedoc-types.js +0 -2
  175. package/fesm2015/skyux-docs-tools.js +0 -3215
  176. package/fesm2015/skyux-docs-tools.js.map +0 -1
@@ -0,0 +1,242 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * Formats type definitions into HTML-compatible strings.
5
+ */
6
+ export class SkyDocsTypeDefinitionsFormatService {
7
+ /**
8
+ * Returns an HTML-formatted representation of the provided interface config.
9
+ */
10
+ getInterfaceSourceCode(definition) {
11
+ const typeParameters = this.getFormattedTypeParameters(definition.typeParameters);
12
+ const config = {
13
+ escapeSpecialCharacters: false,
14
+ };
15
+ let signature = `interface ${definition.name}${typeParameters} {`;
16
+ signature += this.getFormattedInterfaceProperties(definition, config);
17
+ signature += '\n}';
18
+ return signature;
19
+ }
20
+ /**
21
+ * Returns an HTML-formatted representation of the provided method config.
22
+ */
23
+ getMethodSourceCode(definition) {
24
+ const config = {
25
+ escapeSpecialCharacters: false,
26
+ };
27
+ const typeArguments = this.getFormattedTypeArguments(definition.type, config);
28
+ const callSignature = definition.type.callSignature;
29
+ const returnType = this.getFormattedType(callSignature.returnType, config);
30
+ let params = '';
31
+ if (callSignature.parameters) {
32
+ params += callSignature.parameters
33
+ .map((p) => this.getFormattedParameterName(p, config))
34
+ .join(', ');
35
+ }
36
+ return `public ${definition.isStatic ? 'static ' : ''}${definition.name}${typeArguments}(${params}): ${returnType}`;
37
+ }
38
+ /**
39
+ * Returns an HTML-formatted representation of the provided type alias config.
40
+ */
41
+ getTypeAliasSourceCode(definition) {
42
+ const config = {
43
+ escapeSpecialCharacters: false,
44
+ };
45
+ const typeParameters = this.getFormattedTypeParameters(definition.typeParameters);
46
+ let signature = `type ${definition.name}${typeParameters} = `;
47
+ if (definition.type.callSignature) {
48
+ signature += this.getFormattedCallSignature(definition.type.callSignature, {
49
+ escapeSpecialCharacters: false,
50
+ });
51
+ }
52
+ else if (definition.type.indexSignature) {
53
+ const indexSignature = definition.type.indexSignature;
54
+ const type = this.getFormattedType(indexSignature.type, {
55
+ escapeSpecialCharacters: false,
56
+ });
57
+ signature += `{\n [${indexSignature.key.name}: string]: ${type};\n}`;
58
+ }
59
+ else {
60
+ /*istanbul ignore else */
61
+ if (definition.type.type === 'union') {
62
+ signature += this.getFormattedUnion(definition.type, config);
63
+ }
64
+ }
65
+ return signature;
66
+ }
67
+ /**
68
+ * Returns a formatted string representing a parameter's name and value. For example: `'foo: string'`.
69
+ */
70
+ getFormattedParameterName(parameter, config = {
71
+ escapeSpecialCharacters: true,
72
+ }) {
73
+ const optionalMarker = parameter.isOptional ? '?' : '';
74
+ const parameterType = this.getFormattedType(parameter.type, config);
75
+ let signature = `${parameter.name}${optionalMarker}: ${parameterType}`;
76
+ if (config.escapeSpecialCharacters) {
77
+ signature = this.escapeSpecialCharacters(signature);
78
+ }
79
+ return signature;
80
+ }
81
+ /**
82
+ * Returns a formatted string representing a property (or method's) name and value. For example: `'public foo: string'`.
83
+ */
84
+ getFormattedPropertyName(property) {
85
+ let signature = '';
86
+ if (property.decorator?.name) {
87
+ signature += `@${property.decorator.name}()<br>`;
88
+ }
89
+ const indexSignature = property.type?.indexSignature;
90
+ let name;
91
+ if (indexSignature) {
92
+ name = `[${indexSignature.key.name}: ${this.getFormattedType(indexSignature.key.type)}]`;
93
+ }
94
+ else {
95
+ name = property.name;
96
+ }
97
+ if (property.deprecationWarning !== undefined) {
98
+ signature += `<strike>${name}</strike>`;
99
+ }
100
+ else {
101
+ signature += name;
102
+ }
103
+ if (property.isOptional && !indexSignature) {
104
+ signature += '?';
105
+ }
106
+ if (indexSignature) {
107
+ signature += `: ${this.getFormattedType(indexSignature.type)}`;
108
+ }
109
+ else if (property.type) {
110
+ signature += `: ${this.getFormattedType(property.type)}`;
111
+ }
112
+ return signature;
113
+ }
114
+ /**
115
+ * Returns an HTML-formatted method name to be used on the properties table.
116
+ */
117
+ getFormattedMethodName(definition) {
118
+ let formatted = '';
119
+ if (definition.deprecationWarning !== undefined) {
120
+ formatted += `<strike>${definition.name}</strike>`;
121
+ }
122
+ else {
123
+ formatted += definition.name;
124
+ }
125
+ return `${formatted}()`;
126
+ }
127
+ /**
128
+ * Returns a formatted string representing the provided type.
129
+ */
130
+ getFormattedType(type, config = {
131
+ escapeSpecialCharacters: true,
132
+ }) {
133
+ let formatted = 'any';
134
+ if (!type) {
135
+ return formatted;
136
+ }
137
+ if (type.callSignature) {
138
+ return this.getFormattedCallSignature(type.callSignature, config);
139
+ }
140
+ if (type.unionTypes) {
141
+ return this.getFormattedUnion(type, config);
142
+ }
143
+ if (type.name) {
144
+ formatted = type.name;
145
+ }
146
+ if (type.typeArguments) {
147
+ formatted += this.getFormattedTypeArguments(type, config);
148
+ }
149
+ if (type.type === 'array') {
150
+ formatted += '[]';
151
+ }
152
+ if (type.typeLiteral) {
153
+ const formattedTypeLiteral = this.getFormattedInterfaceProperties(type.typeLiteral, config)
154
+ .replace(/\n/g, ' ')
155
+ .replace(/\s\s+/g, ' ');
156
+ formatted = `{${formattedTypeLiteral} }`;
157
+ }
158
+ if (config.escapeSpecialCharacters) {
159
+ return this.escapeSpecialCharacters(formatted);
160
+ }
161
+ return formatted;
162
+ }
163
+ escapeSpecialCharacters(value) {
164
+ return value.replace(/</g, '&lt;').replace(/>/g, '&gt;');
165
+ }
166
+ getFormattedCallSignature(callSignature, config = {
167
+ escapeSpecialCharacters: true,
168
+ }) {
169
+ const returnType = this.getFormattedType(callSignature.returnType, config);
170
+ if (!callSignature.parameters) {
171
+ return `() => ${returnType}`;
172
+ }
173
+ const formattedParams = callSignature.parameters
174
+ .map((p) => this.getFormattedParameterName(p, config))
175
+ .join(', ');
176
+ return `(${formattedParams}) => ${returnType}`;
177
+ }
178
+ getFormattedUnion(typeConfig, config) {
179
+ return typeConfig.unionTypes
180
+ .map((t) => {
181
+ return this.getFormattedType(t, config);
182
+ })
183
+ .join(' | ');
184
+ }
185
+ /**
186
+ * Parse any type arguments e.g. `<T, F>`.
187
+ */
188
+ getFormattedTypeArguments(typeConfig, config) {
189
+ if (!typeConfig.typeArguments) {
190
+ return '';
191
+ }
192
+ const typeArguments = typeConfig.typeArguments.map((typeArgument) => {
193
+ if (typeArgument.type === 'array') {
194
+ return `${typeArgument.name}[]`;
195
+ }
196
+ if (typeArgument.unionTypes) {
197
+ return this.getFormattedUnion(typeArgument, config);
198
+ }
199
+ return typeArgument.name;
200
+ });
201
+ return `<${typeArguments.join(', ')}>`;
202
+ }
203
+ getFormattedTypeParameters(typeParameters) {
204
+ if (!typeParameters) {
205
+ return '';
206
+ }
207
+ const formatted = typeParameters.map((typeParameter) => {
208
+ let result = typeParameter.name;
209
+ if (typeParameter.type && typeParameter.type.type === 'reference') {
210
+ result += ` extends ${typeParameter.type.name}`;
211
+ }
212
+ return result;
213
+ });
214
+ return `<${formatted.join(', ')}>`;
215
+ }
216
+ getFormattedInterfaceProperties(definition, config) {
217
+ let signature = '';
218
+ definition.properties.forEach((property) => {
219
+ const indexSignature = property.type.indexSignature;
220
+ const optionalIndicator = property.isOptional && !indexSignature ? '?' : '';
221
+ const propertyType = this.getFormattedType(property.type, config);
222
+ let name;
223
+ if (indexSignature) {
224
+ name = `[${indexSignature.key.name}: string]`;
225
+ }
226
+ else {
227
+ name = property.name;
228
+ }
229
+ signature += `\n ${name}${optionalIndicator}: ${propertyType};`;
230
+ });
231
+ return signature;
232
+ }
233
+ }
234
+ SkyDocsTypeDefinitionsFormatService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsFormatService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
235
+ SkyDocsTypeDefinitionsFormatService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsFormatService, providedIn: 'root' });
236
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsFormatService, decorators: [{
237
+ type: Injectable,
238
+ args: [{
239
+ providedIn: 'root',
240
+ }]
241
+ }] });
242
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1kZWZpbml0aW9ucy1mb3JtYXQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RvY3MtdG9vbHMvc3JjL21vZHVsZXMvdHlwZS1kZWZpbml0aW9ucy90eXBlLWRlZmluaXRpb25zLWZvcm1hdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBd0IzQzs7R0FFRztBQUlILE1BQU0sT0FBTyxtQ0FBbUM7SUFDOUM7O09BRUc7SUFDSSxzQkFBc0IsQ0FDM0IsVUFBc0M7UUFFdEMsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLDBCQUEwQixDQUNwRCxVQUFVLENBQUMsY0FBYyxDQUMxQixDQUFDO1FBQ0YsTUFBTSxNQUFNLEdBQUc7WUFDYix1QkFBdUIsRUFBRSxLQUFLO1NBQy9CLENBQUM7UUFFRixJQUFJLFNBQVMsR0FBVyxhQUFhLFVBQVUsQ0FBQyxJQUFJLEdBQUcsY0FBYyxJQUFJLENBQUM7UUFDMUUsU0FBUyxJQUFJLElBQUksQ0FBQywrQkFBK0IsQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDdEUsU0FBUyxJQUFJLEtBQUssQ0FBQztRQUVuQixPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxtQkFBbUIsQ0FBQyxVQUF3QztRQUNqRSxNQUFNLE1BQU0sR0FBRztZQUNiLHVCQUF1QixFQUFFLEtBQUs7U0FDL0IsQ0FBQztRQUVGLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FDbEQsVUFBVSxDQUFDLElBQUksRUFDZixNQUFNLENBQ1AsQ0FBQztRQUNGLE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3BELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsVUFBVSxF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QUFDO1FBRTNCLFVBQVUsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDekMsTUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUM7WUFDcEQsTUFBTSxpQkFBaUIsR0FDckIsUUFBUSxDQUFDLFVBQVUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDcEQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFFbEUsSUFBSSxJQUFZLENBQUM7WUFDakIsSUFBSSxjQUFjLEVBQUU7Z0JBQ2xCLElBQUksR0FBRyxJQUFJLGNBQWMsQ0FBQyxHQUFHLENBQUMsSUFBSSxXQUFXLENBQUM7YUFDL0M7aUJBQU07Z0JBQ0wsSUFBSSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUM7YUFDdEI7WUFFRCxTQUFTLElBQUksT0FBTyxJQUFJLEdBQUcsaUJBQWlCLEtBQUssWUFBWSxHQUFHLENBQUM7UUFDbkUsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDOztpSUFqVVUsbUNBQW1DO3FJQUFuQyxtQ0FBbUMsY0FGbEMsTUFBTTs0RkFFUCxtQ0FBbUM7a0JBSC9DLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTa3lEb2NzQ2FsbFNpZ25hdHVyZURlZmluaXRpb24gfSBmcm9tICcuL2NhbGwtc2lnbmF0dXJlLWRlZmluaXRpb24nO1xuXG5pbXBvcnQgeyBTa3lEb2NzQ2xhc3NQcm9wZXJ0eURlZmluaXRpb24gfSBmcm9tICcuL3Byb3BlcnR5LWRlZmluaXRpb24nO1xuXG5pbXBvcnQgeyBTa3lEb2NzSW50ZXJmYWNlRGVmaW5pdGlvbiB9IGZyb20gJy4vaW50ZXJmYWNlLWRlZmluaXRpb24nO1xuXG5pbXBvcnQgeyBTa3lEb2NzQ2xhc3NNZXRob2REZWZpbml0aW9uIH0gZnJvbSAnLi9tZXRob2QtZGVmaW5pdGlvbic7XG5cbmltcG9ydCB7IFNreURvY3NQYXJhbWV0ZXJEZWZpbml0aW9uIH0gZnJvbSAnLi9wYXJhbWV0ZXItZGVmaW5pdGlvbic7XG5cbmltcG9ydCB7IFNreURvY3NUeXBlQWxpYXNEZWZpbml0aW9uIH0gZnJvbSAnLi90eXBlLWFsaWFzLWRlZmluaXRpb24nO1xuXG5pbXBvcnQgeyBTa3lEb2NzVHlwZURlZmluaXRpb24gfSBmcm9tICcuL3R5cGUtZGVmaW5pdGlvbic7XG5cbmltcG9ydCB7IFNreURvY3NUeXBlUGFyYW1ldGVyRGVmaW5pdGlvbiB9IGZyb20gJy4vdHlwZS1wYXJhbWV0ZXItZGVmaW5pdGlvbic7XG5cbmltcG9ydCB7IFNreURvY3NJbnRlcmZhY2VQcm9wZXJ0eURlZmluaXRpb24gfSBmcm9tICcuL2ludGVyZmFjZS1wcm9wZXJ0eS1kZWZpbml0aW9uJztcblxuaW50ZXJmYWNlIEdldEZvcm1hdHRlZFR5cGVDb25maWcge1xuICBlc2NhcGVTcGVjaWFsQ2hhcmFjdGVyczogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBGb3JtYXRzIHR5cGUgZGVmaW5pdGlvbnMgaW50byBIVE1MLWNvbXBhdGlibGUgc3RyaW5ncy5cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNreURvY3NUeXBlRGVmaW5pdGlvbnNGb3JtYXRTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIFJldHVybnMgYW4gSFRNTC1mb3JtYXR0ZWQgcmVwcmVzZW50YXRpb24gb2YgdGhlIHByb3ZpZGVkIGludGVyZmFjZSBjb25maWcuXG4gICAqL1xuICBwdWJsaWMgZ2V0SW50ZXJmYWNlU291cmNlQ29kZShcbiAgICBkZWZpbml0aW9uOiBTa3lEb2NzSW50ZXJmYWNlRGVmaW5pdGlvblxuICApOiBzdHJpbmcge1xuICAgIGNvbnN0IHR5cGVQYXJhbWV0ZXJzID0gdGhpcy5nZXRGb3JtYXR0ZWRUeXBlUGFyYW1ldGVycyhcbiAgICAgIGRlZmluaXRpb24udHlwZVBhcmFtZXRlcnNcbiAgICApO1xuICAgIGNvbnN0IGNvbmZpZyA9IHtcbiAgICAgIGVzY2FwZVNwZWNpYWxDaGFyYWN0ZXJzOiBmYWxzZSxcbiAgICB9O1xuXG4gICAgbGV0IHNpZ25hdHVyZTogc3RyaW5nID0gYGludGVyZmFjZSAke2RlZmluaXRpb24ubmFtZX0ke3R5cGVQYXJhbWV0ZXJzfSB7YDtcbiAgICBzaWduYXR1cmUgKz0gdGhpcy5nZXRGb3JtYXR0ZWRJbnRlcmZhY2VQcm9wZXJ0aWVzKGRlZmluaXRpb24sIGNvbmZpZyk7XG4gICAgc2lnbmF0dXJlICs9ICdcXG59JztcblxuICAgIHJldHVybiBzaWduYXR1cmU7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhbiBIVE1MLWZvcm1hdHRlZCByZXByZXNlbnRhdGlvbiBvZiB0aGUgcHJvdmlkZWQgbWV0aG9kIGNvbmZpZy5cbiAgICovXG4gIHB1YmxpYyBnZXRNZXRob2RTb3VyY2VDb2RlKGRlZmluaXRpb246IFNreURvY3NDbGFzc01ldGhvZERlZmluaXRpb24pOiBzdHJpbmcge1xuICAgIGNvbnN0IGNvbmZpZyA9IHtcbiAgICAgIGVzY2FwZVNwZWNpYWxDaGFyYWN0ZXJzOiBmYWxzZSxcbiAgICB9O1xuXG4gICAgY29uc3QgdHlwZUFyZ3VtZW50cyA9IHRoaXMuZ2V0Rm9ybWF0dGVkVHlwZUFyZ3VtZW50cyhcbiAgICAgIGRlZmluaXRpb24udHlwZSxcbiAgICAgIGNvbmZpZ1xuICAgICk7XG4gICAgY29uc3QgY2FsbFNpZ25hdHVyZSA9IGRlZmluaXRpb24udHlwZS5jYWxsU2lnbmF0dXJlO1xuICAgIGNvbnN0IHJldHVyblR5cGUgPSB0aGlzLmdldEZvcm1hdHRlZFR5cGUoY2FsbFNpZ25hdHVyZS5yZXR1cm5UeXBlLCBjb25maWcpO1xuXG4gICAgbGV0IHBhcmFtczogc3RyaW5nID0gJyc7XG4gICAgaWYgKGNhbGxTaWduYXR1cmUucGFyYW1ldGVycykge1xuICAgICAgcGFyYW1zICs9IGNhbGxTaWduYXR1cmUucGFyYW1ldGVyc1xuICAgICAgICAubWFwKChwKSA9PiB0aGlzLmdldEZvcm1hdHRlZFBhcmFtZXRlck5hbWUocCwgY29uZmlnKSlcbiAgICAgICAgLmpvaW4oJywgJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGBwdWJsaWMgJHtkZWZpbml0aW9uLmlzU3RhdGljID8gJ3N0YXRpYyAnIDogJyd9JHtcbiAgICAgIGRlZmluaXRpb24ubmFtZVxuICAgIH0ke3R5cGVBcmd1bWVudHN9KCR7cGFyYW1zfSk6ICR7cmV0dXJuVHlwZX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gSFRNTC1mb3JtYXR0ZWQgcmVwcmVzZW50YXRpb24gb2YgdGhlIHByb3ZpZGVkIHR5cGUgYWxpYXMgY29uZmlnLlxuICAgKi9cbiAgcHVibGljIGdldFR5cGVBbGlhc1NvdXJjZUNvZGUoXG4gICAgZGVmaW5pdGlvbjogU2t5RG9jc1R5cGVBbGlhc0RlZmluaXRpb25cbiAgKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb25maWcgPSB7XG4gICAgICBlc2NhcGVTcGVjaWFsQ2hhcmFjdGVyczogZmFsc2UsXG4gICAgfTtcblxuICAgIGNvbnN0IHR5cGVQYXJhbWV0ZXJzID0gdGhpcy5nZXRGb3JtYXR0ZWRUeXBlUGFyYW1ldGVycyhcbiAgICAgIGRlZmluaXRpb24udHlwZVBhcmFtZXRlcnNcbiAgICApO1xuXG4gICAgbGV0IHNpZ25hdHVyZSA9IGB0eXBlICR7ZGVmaW5pdGlvbi5uYW1lfSR7dHlwZVBhcmFtZXRlcnN9ID0gYDtcblxuICAgIGlmIChkZWZpbml0aW9uLnR5cGUuY2FsbFNpZ25hdHVyZSkge1xuICAgICAgc2lnbmF0dXJlICs9IHRoaXMuZ2V0Rm9ybWF0dGVkQ2FsbFNpZ25hdHVyZShcbiAgICAgICAgZGVmaW5pdGlvbi50eXBlLmNhbGxTaWduYXR1cmUsXG4gICAgICAgIHtcbiAgICAgICAgICBlc2NhcGVTcGVjaWFsQ2hhcmFjdGVyczogZmFsc2UsXG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChkZWZpbml0aW9uLnR5cGUuaW5kZXhTaWduYXR1cmUpIHtcbiAgICAgIGNvbnN0IGluZGV4U2lnbmF0dXJlID0gZGVmaW5pdGlvbi50eXBlLmluZGV4U2lnbmF0dXJlO1xuICAgICAgY29uc3QgdHlwZSA9IHRoaXMuZ2V0Rm9ybWF0dGVkVHlwZShpbmRleFNpZ25hdHVyZS50eXBlLCB7XG4gICAgICAgIGVzY2FwZVNwZWNpYWxDaGFyYWN0ZXJzOiBmYWxzZSxcbiAgICAgIH0pO1xuICAgICAgc2lnbmF0dXJlICs9IGB7XFxuICBbJHtpbmRleFNpZ25hdHVyZS5rZXkubmFtZX06IHN0cmluZ106ICR7dHlwZX07XFxufWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8qaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIGlmIChkZWZpbml0aW9uLnR5cGUudHlwZSA9PT0gJ3VuaW9uJykge1xuICAgICAgICBzaWduYXR1cmUgKz0gdGhpcy5nZXRGb3JtYXR0ZWRVbmlvbihkZWZpbml0aW9uLnR5cGUsIGNvbmZpZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHNpZ25hdHVyZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgZm9ybWF0dGVkIHN0cmluZyByZXByZXNlbnRpbmcgYSBwYXJhbWV0ZXIncyBuYW1lIGFuZCB2YWx1ZS4gRm9yIGV4YW1wbGU6IGAnZm9vOiBzdHJpbmcnYC5cbiAgICovXG4gIHB1YmxpYyBnZXRGb3JtYXR0ZWRQYXJhbWV0ZXJOYW1lKFxuICAgIHBhcmFtZXRlcjogU2t5RG9jc1BhcmFtZXRlckRlZmluaXRpb24sXG4gICAgY29uZmlnOiBHZXRGb3JtYXR0ZWRUeXBlQ29uZmlnID0ge1xuICAgICAgZXNjYXBlU3BlY2lhbENoYXJhY3RlcnM6IHRydWUsXG4gICAgfVxuICApOiBzdHJpbmcge1xuICAgIGNvbnN0IG9wdGlvbmFsTWFya2VyID0gcGFyYW1ldGVyLmlzT3B0aW9uYWwgPyAnPycgOiAnJztcbiAgICBjb25zdCBwYXJhbWV0ZXJUeXBlID0gdGhpcy5nZXRGb3JtYXR0ZWRUeXBlKHBhcmFtZXRlci50eXBlLCBjb25maWcpO1xuXG4gICAgbGV0IHNpZ25hdHVyZSA9IGAke3BhcmFtZXRlci5uYW1lfSR7b3B0aW9uYWxNYXJrZXJ9OiAke3BhcmFtZXRlclR5cGV9YDtcbiAgICBpZiAoY29uZmlnLmVzY2FwZVNwZWNpYWxDaGFyYWN0ZXJzKSB7XG4gICAgICBzaWduYXR1cmUgPSB0aGlzLmVzY2FwZVNwZWNpYWxDaGFyYWN0ZXJzKHNpZ25hdHVyZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHNpZ25hdHVyZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgZm9ybWF0dGVkIHN0cmluZyByZXByZXNlbnRpbmcgYSBwcm9wZXJ0eSAob3IgbWV0aG9kJ3MpIG5hbWUgYW5kIHZhbHVlLiBGb3IgZXhhbXBsZTogYCdwdWJsaWMgZm9vOiBzdHJpbmcnYC5cbiAgICovXG4gIHB1YmxpYyBnZXRGb3JtYXR0ZWRQcm9wZXJ0eU5hbWUoXG4gICAgcHJvcGVydHk6IFNreURvY3NDbGFzc1Byb3BlcnR5RGVmaW5pdGlvblxuICApOiBzdHJpbmcge1xuICAgIGxldCBzaWduYXR1cmUgPSAnJztcblxuICAgIGlmIChwcm9wZXJ0eS5kZWNvcmF0b3I/Lm5hbWUpIHtcbiAgICAgIHNpZ25hdHVyZSArPSBgQCR7cHJvcGVydHkuZGVjb3JhdG9yLm5hbWV9KCk8YnI+YDtcbiAgICB9XG5cbiAgICBjb25zdCBpbmRleFNpZ25hdHVyZSA9IHByb3BlcnR5LnR5cGU/LmluZGV4U2lnbmF0dXJlO1xuICAgIGxldCBuYW1lOiBzdHJpbmc7XG4gICAgaWYgKGluZGV4U2lnbmF0dXJlKSB7XG4gICAgICBuYW1lID0gYFske2luZGV4U2lnbmF0dXJlLmtleS5uYW1lfTogJHt0aGlzLmdldEZvcm1hdHRlZFR5cGUoXG4gICAgICAgIGluZGV4U2lnbmF0dXJlLmtleS50eXBlXG4gICAgICApfV1gO1xuICAgIH0gZWxzZSB7XG4gICAgICBuYW1lID0gcHJvcGVydHkubmFtZTtcbiAgICB9XG5cbiAgICBpZiAocHJvcGVydHkuZGVwcmVjYXRpb25XYXJuaW5nICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHNpZ25hdHVyZSArPSBgPHN0cmlrZT4ke25hbWV9PC9zdHJpa2U+YDtcbiAgICB9IGVsc2Uge1xuICAgICAgc2lnbmF0dXJlICs9IG5hbWU7XG4gICAgfVxuXG4gICAgaWYgKHByb3BlcnR5LmlzT3B0aW9uYWwgJiYgIWluZGV4U2lnbmF0dXJlKSB7XG4gICAgICBzaWduYXR1cmUgKz0gJz8nO1xuICAgIH1cblxuICAgIGlmIChpbmRleFNpZ25hdHVyZSkge1xuICAgICAgc2lnbmF0dXJlICs9IGA6ICR7dGhpcy5nZXRGb3JtYXR0ZWRUeXBlKGluZGV4U2lnbmF0dXJlLnR5cGUpfWA7XG4gICAgfSBlbHNlIGlmIChwcm9wZXJ0eS50eXBlKSB7XG4gICAgICBzaWduYXR1cmUgKz0gYDogJHt0aGlzLmdldEZvcm1hdHRlZFR5cGUocHJvcGVydHkudHlwZSl9YDtcbiAgICB9XG5cbiAgICByZXR1cm4gc2lnbmF0dXJlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gSFRNTC1mb3JtYXR0ZWQgbWV0aG9kIG5hbWUgdG8gYmUgdXNlZCBvbiB0aGUgcHJvcGVydGllcyB0YWJsZS5cbiAgICovXG4gIHB1YmxpYyBnZXRGb3JtYXR0ZWRNZXRob2ROYW1lKFxuICAgIGRlZmluaXRpb246IFNreURvY3NDbGFzc01ldGhvZERlZmluaXRpb25cbiAgKTogc3RyaW5nIHtcbiAgICBsZXQgZm9ybWF0dGVkID0gJyc7XG5cbiAgICBpZiAoZGVmaW5pdGlvbi5kZXByZWNhdGlvbldhcm5pbmcgIT09IHVuZGVmaW5lZCkge1xuICAgICAgZm9ybWF0dGVkICs9IGA8c3RyaWtlPiR7ZGVmaW5pdGlvbi5uYW1lfTwvc3RyaWtlPmA7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZvcm1hdHRlZCArPSBkZWZpbml0aW9uLm5hbWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGAke2Zvcm1hdHRlZH0oKWA7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIGZvcm1hdHRlZCBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBwcm92aWRlZCB0eXBlLlxuICAgKi9cbiAgcHVibGljIGdldEZvcm1hdHRlZFR5cGUoXG4gICAgdHlwZTogU2t5RG9jc1R5cGVEZWZpbml0aW9uLFxuICAgIGNvbmZpZzogR2V0Rm9ybWF0dGVkVHlwZUNvbmZpZyA9IHtcbiAgICAgIGVzY2FwZVNwZWNpYWxDaGFyYWN0ZXJzOiB0cnVlLFxuICAgIH1cbiAgKTogc3RyaW5nIHtcbiAgICBsZXQgZm9ybWF0dGVkID0gJ2FueSc7XG5cbiAgICBpZiAoIXR5cGUpIHtcbiAgICAgIHJldHVybiBmb3JtYXR0ZWQ7XG4gICAgfVxuXG4gICAgaWYgKHR5cGUuY2FsbFNpZ25hdHVyZSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0Rm9ybWF0dGVkQ2FsbFNpZ25hdHVyZSh0eXBlLmNhbGxTaWduYXR1cmUsIGNvbmZpZyk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGUudW5pb25UeXBlcykge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0Rm9ybWF0dGVkVW5pb24odHlwZSwgY29uZmlnKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZS5uYW1lKSB7XG4gICAgICBmb3JtYXR0ZWQgPSB0eXBlLm5hbWU7XG4gICAgfVxuXG4gICAgaWYgKHR5cGUudHlwZUFyZ3VtZW50cykge1xuICAgICAgZm9ybWF0dGVkICs9IHRoaXMuZ2V0Rm9ybWF0dGVkVHlwZUFyZ3VtZW50cyh0eXBlLCBjb25maWcpO1xuICAgIH1cblxuICAgIGlmICh0eXBlLnR5cGUgPT09ICdhcnJheScpIHtcbiAgICAgIGZvcm1hdHRlZCArPSAnW10nO1xuICAgIH1cblxuICAgIGlmICh0eXBlLnR5cGVMaXRlcmFsKSB7XG4gICAgICBjb25zdCBmb3JtYXR0ZWRUeXBlTGl0ZXJhbCA9IHRoaXMuZ2V0Rm9ybWF0dGVkSW50ZXJmYWNlUHJvcGVydGllcyhcbiAgICAgICAgdHlwZS50eXBlTGl0ZXJhbCxcbiAgICAgICAgY29uZmlnXG4gICAgICApXG4gICAgICAgIC5yZXBsYWNlKC9cXG4vZywgJyAnKVxuICAgICAgICAucmVwbGFjZSgvXFxzXFxzKy9nLCAnICcpO1xuICAgICAgZm9ybWF0dGVkID0gYHske2Zvcm1hdHRlZFR5cGVMaXRlcmFsfSB9YDtcbiAgICB9XG5cbiAgICBpZiAoY29uZmlnLmVzY2FwZVNwZWNpYWxDaGFyYWN0ZXJzKSB7XG4gICAgICByZXR1cm4gdGhpcy5lc2NhcGVTcGVjaWFsQ2hhcmFjdGVycyhmb3JtYXR0ZWQpO1xuICAgIH1cblxuICAgIHJldHVybiBmb3JtYXR0ZWQ7XG4gIH1cblxuICBwdWJsaWMgZXNjYXBlU3BlY2lhbENoYXJhY3RlcnModmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoLzwvZywgJyZsdDsnKS5yZXBsYWNlKC8+L2csICcmZ3Q7Jyk7XG4gIH1cblxuICBwcml2YXRlIGdldEZvcm1hdHRlZENhbGxTaWduYXR1cmUoXG4gICAgY2FsbFNpZ25hdHVyZTogU2t5RG9jc0NhbGxTaWduYXR1cmVEZWZpbml0aW9uLFxuICAgIGNvbmZpZzogR2V0Rm9ybWF0dGVkVHlwZUNvbmZpZyA9IHtcbiAgICAgIGVzY2FwZVNwZWNpYWxDaGFyYWN0ZXJzOiB0cnVlLFxuICAgIH1cbiAgKTogc3RyaW5nIHtcbiAgICBjb25zdCByZXR1cm5UeXBlID0gdGhpcy5nZXRGb3JtYXR0ZWRUeXBlKGNhbGxTaWduYXR1cmUucmV0dXJuVHlwZSwgY29uZmlnKTtcblxuICAgIGlmICghY2FsbFNpZ25hdHVyZS5wYXJhbWV0ZXJzKSB7XG4gICAgICByZXR1cm4gYCgpID0+ICR7cmV0dXJuVHlwZX1gO1xuICAgIH1cblxuICAgIGNvbnN0IGZvcm1hdHRlZFBhcmFtcyA9IGNhbGxTaWduYXR1cmUucGFyYW1ldGVyc1xuICAgICAgLm1hcCgocCkgPT4gdGhpcy5nZXRGb3JtYXR0ZWRQYXJhbWV0ZXJOYW1lKHAsIGNvbmZpZykpXG4gICAgICAuam9pbignLCAnKTtcblxuICAgIHJldHVybiBgKCR7Zm9ybWF0dGVkUGFyYW1zfSkgPT4gJHtyZXR1cm5UeXBlfWA7XG4gIH1cblxuICBwcml2YXRlIGdldEZvcm1hdHRlZFVuaW9uKFxuICAgIHR5cGVDb25maWc6IFNreURvY3NUeXBlRGVmaW5pdGlvbixcbiAgICBjb25maWc6IEdldEZvcm1hdHRlZFR5cGVDb25maWdcbiAgKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdHlwZUNvbmZpZy51bmlvblR5cGVzXG4gICAgICAubWFwKCh0KSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEZvcm1hdHRlZFR5cGUodCwgY29uZmlnKTtcbiAgICAgIH0pXG4gICAgICAuam9pbignIHwgJyk7XG4gIH1cblxuICAvKipcbiAgICogUGFyc2UgYW55IHR5cGUgYXJndW1lbnRzIGUuZy4gYDxULCBGPmAuXG4gICAqL1xuICBwcml2YXRlIGdldEZvcm1hdHRlZFR5cGVBcmd1bWVudHMoXG4gICAgdHlwZUNvbmZpZzogU2t5RG9jc1R5cGVEZWZpbml0aW9uLFxuICAgIGNvbmZpZzogR2V0Rm9ybWF0dGVkVHlwZUNvbmZpZ1xuICApOiBzdHJpbmcge1xuICAgIGlmICghdHlwZUNvbmZpZy50eXBlQXJndW1lbnRzKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgY29uc3QgdHlwZUFyZ3VtZW50cyA9IHR5cGVDb25maWcudHlwZUFyZ3VtZW50cy5tYXAoKHR5cGVBcmd1bWVudCkgPT4ge1xuICAgICAgaWYgKHR5cGVBcmd1bWVudC50eXBlID09PSAnYXJyYXknKSB7XG4gICAgICAgIHJldHVybiBgJHt0eXBlQXJndW1lbnQubmFtZX1bXWA7XG4gICAgICB9XG5cbiAgICAgIGlmICh0eXBlQXJndW1lbnQudW5pb25UeXBlcykge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRGb3JtYXR0ZWRVbmlvbih0eXBlQXJndW1lbnQsIGNvbmZpZyk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0eXBlQXJndW1lbnQubmFtZTtcbiAgICB9KTtcblxuICAgIHJldHVybiBgPCR7dHlwZUFyZ3VtZW50cy5qb2luKCcsICcpfT5gO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGb3JtYXR0ZWRUeXBlUGFyYW1ldGVycyhcbiAgICB0eXBlUGFyYW1ldGVyczogU2t5RG9jc1R5cGVQYXJhbWV0ZXJEZWZpbml0aW9uW11cbiAgKTogc3RyaW5nIHtcbiAgICBpZiAoIXR5cGVQYXJhbWV0ZXJzKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgY29uc3QgZm9ybWF0dGVkID0gdHlwZVBhcmFtZXRlcnMubWFwKCh0eXBlUGFyYW1ldGVyKSA9PiB7XG4gICAgICBsZXQgcmVzdWx0ID0gdHlwZVBhcmFtZXRlci5uYW1lO1xuICAgICAgaWYgKHR5cGVQYXJhbWV0ZXIudHlwZSAmJiB0eXBlUGFyYW1ldGVyLnR5cGUudHlwZSA9PT0gJ3JlZmVyZW5jZScpIHtcbiAgICAgICAgcmVzdWx0ICs9IGAgZXh0ZW5kcyAke3R5cGVQYXJhbWV0ZXIudHlwZS5uYW1lfWA7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gYDwke2Zvcm1hdHRlZC5qb2luKCcsICcpfT5gO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGb3JtYXR0ZWRJbnRlcmZhY2VQcm9wZXJ0aWVzKFxuICAgIGRlZmluaXRpb246IHtcbiAgICAgIHByb3BlcnRpZXM/OiBTa3lEb2NzSW50ZXJmYWNlUHJvcGVydHlEZWZpbml0aW9uW107XG4gICAgfSxcbiAgICBjb25maWc/OiBHZXRGb3JtYXR0ZWRUeXBlQ29uZmlnXG4gICk6IHN0cmluZyB7XG4gICAgbGV0IHNpZ25hdHVyZTogc3RyaW5nID0gJyc7XG5cbiAgICBkZWZpbml0aW9uLnByb3BlcnRpZXMuZm9yRWFjaCgocHJvcGVydHkpID0+IHtcbiAgICAgIGNvbnN0IGluZGV4U2lnbmF0dXJlID0gcHJvcGVydHkudHlwZS5pbmRleFNpZ25hdHVyZTtcbiAgICAgIGNvbnN0IG9wdGlvbmFsSW5kaWNhdG9yID1cbiAgICAgICAgcHJvcGVydHkuaXNPcHRpb25hbCAmJiAhaW5kZXhTaWduYXR1cmUgPyAnPycgOiAnJztcbiAgICAgIGNvbnN0IHByb3BlcnR5VHlwZSA9IHRoaXMuZ2V0Rm9ybWF0dGVkVHlwZShwcm9wZXJ0eS50eXBlLCBjb25maWcpO1xuXG4gICAgICBsZXQgbmFtZTogc3RyaW5nO1xuICAgICAgaWYgKGluZGV4U2lnbmF0dXJlKSB7XG4gICAgICAgIG5hbWUgPSBgWyR7aW5kZXhTaWduYXR1cmUua2V5Lm5hbWV9OiBzdHJpbmddYDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG5hbWUgPSBwcm9wZXJ0eS5uYW1lO1xuICAgICAgfVxuXG4gICAgICBzaWduYXR1cmUgKz0gYFxcbiAgJHtuYW1lfSR7b3B0aW9uYWxJbmRpY2F0b3J9OiAke3Byb3BlcnR5VHlwZX07YDtcbiAgICB9KTtcblxuICAgIHJldHVybiBzaWduYXR1cmU7XG4gIH1cbn1cbiJdfQ==
@@ -2,9 +2,9 @@ import { Injectable } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class SkyDocsTypeDefinitionsProvider {
4
4
  }
5
- SkyDocsTypeDefinitionsProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDocsTypeDefinitionsProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
6
- SkyDocsTypeDefinitionsProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDocsTypeDefinitionsProvider });
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.14", ngImport: i0, type: SkyDocsTypeDefinitionsProvider, decorators: [{
5
+ SkyDocsTypeDefinitionsProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
6
+ SkyDocsTypeDefinitionsProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsProvider });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsProvider, decorators: [{
8
8
  type: Injectable
9
9
  }] });
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1kZWZpbml0aW9ucy1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RvY3MtdG9vbHMvc3JjL21vZHVsZXMvdHlwZS1kZWZpbml0aW9ucy90eXBlLWRlZmluaXRpb25zLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1gsTUFBTSxlQUFlLENBQUM7O0FBT3ZCLE1BQU0sT0FBTyw4QkFBOEI7OzRIQUE5Qiw4QkFBOEI7Z0lBQTlCLDhCQUE4Qjs0RkFBOUIsOEJBQThCO2tCQUQxQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0YWJsZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgVHlwZURvY0VudHJ5XG59IGZyb20gJy4vdHlwZWRvYy10eXBlcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lEb2NzVHlwZURlZmluaXRpb25zUHJvdmlkZXIge1xuXG4gIHB1YmxpYyByZWFkb25seSBhbmNob3JJZHM6IHtbXzogc3RyaW5nXTogc3RyaW5nfTtcblxuICBwdWJsaWMgcmVhZG9ubHkgdHlwZURlZmluaXRpb25zOiBUeXBlRG9jRW50cnlbXTtcblxufVxuIl19
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1kZWZpbml0aW9ucy1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RvY3MtdG9vbHMvc3JjL21vZHVsZXMvdHlwZS1kZWZpbml0aW9ucy90eXBlLWRlZmluaXRpb25zLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyw4QkFBOEI7OzRIQUE5Qiw4QkFBOEI7Z0lBQTlCLDhCQUE4Qjs0RkFBOUIsOEJBQThCO2tCQUQxQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBUeXBlRG9jRW50cnkgfSBmcm9tICcuL3R5cGVkb2MtdHlwZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2t5RG9jc1R5cGVEZWZpbml0aW9uc1Byb3ZpZGVyIHtcbiAgcHVibGljIHJlYWRvbmx5IGFuY2hvcklkczogeyBbXzogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgcHVibGljIHJlYWRvbmx5IHR5cGVEZWZpbml0aW9uczogVHlwZURvY0VudHJ5W107XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1kZWZpbml0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RvY3MtdG9vbHMvc3JjL21vZHVsZXMvdHlwZS1kZWZpbml0aW9ucy90eXBlLWRlZmluaXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lEb2NzQ2xhc3NEZWZpbml0aW9uIH0gZnJvbSAnLi9jbGFzcy1kZWZpbml0aW9uJztcblxuaW1wb3J0IHsgU2t5RG9jc0RpcmVjdGl2ZURlZmluaXRpb24gfSBmcm9tICcuL2RpcmVjdGl2ZS1kZWZpbml0aW9uJztcblxuaW1wb3J0IHsgU2t5RG9jc0VudW1lcmF0aW9uRGVmaW5pdGlvbiB9IGZyb20gJy4vZW51bWVyYXRpb24tZGVmaW5pdGlvbic7XG5cbmltcG9ydCB7IFNreURvY3NJbnRlcmZhY2VEZWZpbml0aW9uIH0gZnJvbSAnLi9pbnRlcmZhY2UtZGVmaW5pdGlvbic7XG5cbmltcG9ydCB7IFNreURvY3NQaXBlRGVmaW5pdGlvbiB9IGZyb20gJy4vcGlwZS1kZWZpbml0aW9uJztcblxuaW1wb3J0IHsgU2t5RG9jc1R5cGVBbGlhc0RlZmluaXRpb24gfSBmcm9tICcuL3R5cGUtYWxpYXMtZGVmaW5pdGlvbic7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2t5RG9jc1R5cGVEZWZpbml0aW9ucyB7XG4gIGNsYXNzZXM6IFNreURvY3NDbGFzc0RlZmluaXRpb25bXTtcblxuICBjb21wb25lbnRzOiBTa3lEb2NzRGlyZWN0aXZlRGVmaW5pdGlvbltdO1xuXG4gIGRpcmVjdGl2ZXM6IFNreURvY3NEaXJlY3RpdmVEZWZpbml0aW9uW107XG5cbiAgZW51bWVyYXRpb25zOiBTa3lEb2NzRW51bWVyYXRpb25EZWZpbml0aW9uW107XG5cbiAgaW50ZXJmYWNlczogU2t5RG9jc0ludGVyZmFjZURlZmluaXRpb25bXTtcblxuICBwaXBlczogU2t5RG9jc1BpcGVEZWZpbml0aW9uW107XG5cbiAgc2VydmljZXM6IFNreURvY3NDbGFzc0RlZmluaXRpb25bXTtcblxuICB0eXBlQWxpYXNlczogU2t5RG9jc1R5cGVBbGlhc0RlZmluaXRpb25bXTtcbn1cbiJdfQ==
@@ -0,0 +1,102 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { RouterModule } from '@angular/router';
4
+ import { SkyCodeBlockModule, SkyCodeModule, } from '@blackbaud/skyux-lib-code-block';
5
+ import { SkyIconModule } from '@skyux/indicators';
6
+ import { SkyDefinitionListModule } from '@skyux/layout';
7
+ import { SkyDocsHeadingAnchorModule } from '../heading-anchor/heading-anchor.module';
8
+ import { SkyDocsMarkdownModule } from '../markdown/markdown.module';
9
+ import { SkyDocsSafeHtmlModule } from '../safe-html/safe-html.module';
10
+ import { SkyDocsCallSignatureDefinitionComponent } from './call-signature-definition.component';
11
+ import { SkyDocsDirectiveDefinitionComponent } from './directive-definition.component';
12
+ import { SkyDocsEnumerationDefinitionComponent } from './enumeration-definition.component';
13
+ import { SkyDocsInterfaceDefinitionComponent } from './interface-definition.component';
14
+ import { SkyDocsMethodDefinitionsComponent } from './method-definitions.component';
15
+ import { SkyDocsPipeDefinitionComponent } from './pipe-definition.component';
16
+ import { SkyDocsPropertyDefinitionsComponent } from './property-definitions.component';
17
+ import { SkyDocsClassDefinitionComponent } from './class-definition.component';
18
+ import { SkyDocsTypeAliasDefinitionComponent } from './type-alias-definition.component';
19
+ import { SkyDocsTypeAnchorLinksPipe } from './type-anchor-links.pipe';
20
+ import * as i0 from "@angular/core";
21
+ export class SkyDocsTypeDefinitionsModule {
22
+ }
23
+ SkyDocsTypeDefinitionsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
24
+ SkyDocsTypeDefinitionsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsModule, declarations: [SkyDocsCallSignatureDefinitionComponent,
25
+ SkyDocsClassDefinitionComponent,
26
+ SkyDocsDirectiveDefinitionComponent,
27
+ SkyDocsEnumerationDefinitionComponent,
28
+ SkyDocsInterfaceDefinitionComponent,
29
+ SkyDocsMethodDefinitionsComponent,
30
+ SkyDocsPipeDefinitionComponent,
31
+ SkyDocsPropertyDefinitionsComponent,
32
+ SkyDocsTypeAliasDefinitionComponent,
33
+ SkyDocsTypeAnchorLinksPipe], imports: [CommonModule,
34
+ RouterModule,
35
+ SkyCodeBlockModule,
36
+ SkyCodeModule,
37
+ SkyDefinitionListModule,
38
+ SkyDocsHeadingAnchorModule,
39
+ SkyDocsMarkdownModule,
40
+ SkyDocsSafeHtmlModule,
41
+ SkyIconModule], exports: [SkyDocsCallSignatureDefinitionComponent,
42
+ SkyDocsClassDefinitionComponent,
43
+ SkyDocsDirectiveDefinitionComponent,
44
+ SkyDocsEnumerationDefinitionComponent,
45
+ SkyDocsInterfaceDefinitionComponent,
46
+ SkyDocsMethodDefinitionsComponent,
47
+ SkyDocsPipeDefinitionComponent,
48
+ SkyDocsPropertyDefinitionsComponent,
49
+ SkyDocsTypeAliasDefinitionComponent,
50
+ SkyDocsTypeAnchorLinksPipe] });
51
+ SkyDocsTypeDefinitionsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsModule, imports: [[
52
+ CommonModule,
53
+ RouterModule,
54
+ SkyCodeBlockModule,
55
+ SkyCodeModule,
56
+ SkyDefinitionListModule,
57
+ SkyDocsHeadingAnchorModule,
58
+ SkyDocsMarkdownModule,
59
+ SkyDocsSafeHtmlModule,
60
+ SkyIconModule,
61
+ ]] });
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsModule, decorators: [{
63
+ type: NgModule,
64
+ args: [{
65
+ imports: [
66
+ CommonModule,
67
+ RouterModule,
68
+ SkyCodeBlockModule,
69
+ SkyCodeModule,
70
+ SkyDefinitionListModule,
71
+ SkyDocsHeadingAnchorModule,
72
+ SkyDocsMarkdownModule,
73
+ SkyDocsSafeHtmlModule,
74
+ SkyIconModule,
75
+ ],
76
+ declarations: [
77
+ SkyDocsCallSignatureDefinitionComponent,
78
+ SkyDocsClassDefinitionComponent,
79
+ SkyDocsDirectiveDefinitionComponent,
80
+ SkyDocsEnumerationDefinitionComponent,
81
+ SkyDocsInterfaceDefinitionComponent,
82
+ SkyDocsMethodDefinitionsComponent,
83
+ SkyDocsPipeDefinitionComponent,
84
+ SkyDocsPropertyDefinitionsComponent,
85
+ SkyDocsTypeAliasDefinitionComponent,
86
+ SkyDocsTypeAnchorLinksPipe,
87
+ ],
88
+ exports: [
89
+ SkyDocsCallSignatureDefinitionComponent,
90
+ SkyDocsClassDefinitionComponent,
91
+ SkyDocsDirectiveDefinitionComponent,
92
+ SkyDocsEnumerationDefinitionComponent,
93
+ SkyDocsInterfaceDefinitionComponent,
94
+ SkyDocsMethodDefinitionsComponent,
95
+ SkyDocsPipeDefinitionComponent,
96
+ SkyDocsPropertyDefinitionsComponent,
97
+ SkyDocsTypeAliasDefinitionComponent,
98
+ SkyDocsTypeAnchorLinksPipe,
99
+ ],
100
+ }]
101
+ }] });
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1kZWZpbml0aW9ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kb2NzLXRvb2xzL3NyYy9tb2R1bGVzL3R5cGUtZGVmaW5pdGlvbnMvdHlwZS1kZWZpbml0aW9ucy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsYUFBYSxHQUNkLE1BQU0saUNBQWlDLENBQUM7QUFFekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWxELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUVyRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVwRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUV0RSxPQUFPLEVBQUUsdUNBQXVDLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUVoRyxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUV2RixPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUUzRixPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUV2RixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUVuRixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUU3RSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUV2RixPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUUvRSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV4RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUF1Q3RFLE1BQU0sT0FBTyw0QkFBNEI7OzBIQUE1Qiw0QkFBNEI7MkhBQTVCLDRCQUE0QixpQkF4QnJDLHVDQUF1QztRQUN2QywrQkFBK0I7UUFDL0IsbUNBQW1DO1FBQ25DLHFDQUFxQztRQUNyQyxtQ0FBbUM7UUFDbkMsaUNBQWlDO1FBQ2pDLDhCQUE4QjtRQUM5QixtQ0FBbUM7UUFDbkMsbUNBQW1DO1FBQ25DLDBCQUEwQixhQXBCMUIsWUFBWTtRQUNaLFlBQVk7UUFDWixrQkFBa0I7UUFDbEIsYUFBYTtRQUNiLHVCQUF1QjtRQUN2QiwwQkFBMEI7UUFDMUIscUJBQXFCO1FBQ3JCLHFCQUFxQjtRQUNyQixhQUFhLGFBZWIsdUNBQXVDO1FBQ3ZDLCtCQUErQjtRQUMvQixtQ0FBbUM7UUFDbkMscUNBQXFDO1FBQ3JDLG1DQUFtQztRQUNuQyxpQ0FBaUM7UUFDakMsOEJBQThCO1FBQzlCLG1DQUFtQztRQUNuQyxtQ0FBbUM7UUFDbkMsMEJBQTBCOzJIQUdqQiw0QkFBNEIsWUFwQzlCO1lBQ1AsWUFBWTtZQUNaLFlBQVk7WUFDWixrQkFBa0I7WUFDbEIsYUFBYTtZQUNiLHVCQUF1QjtZQUN2QiwwQkFBMEI7WUFDMUIscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixhQUFhO1NBQ2Q7NEZBMEJVLDRCQUE0QjtrQkFyQ3hDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2IsdUJBQXVCO3dCQUN2QiwwQkFBMEI7d0JBQzFCLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixhQUFhO3FCQUNkO29CQUNELFlBQVksRUFBRTt3QkFDWix1Q0FBdUM7d0JBQ3ZDLCtCQUErQjt3QkFDL0IsbUNBQW1DO3dCQUNuQyxxQ0FBcUM7d0JBQ3JDLG1DQUFtQzt3QkFDbkMsaUNBQWlDO3dCQUNqQyw4QkFBOEI7d0JBQzlCLG1DQUFtQzt3QkFDbkMsbUNBQW1DO3dCQUNuQywwQkFBMEI7cUJBQzNCO29CQUNELE9BQU8sRUFBRTt3QkFDUCx1Q0FBdUM7d0JBQ3ZDLCtCQUErQjt3QkFDL0IsbUNBQW1DO3dCQUNuQyxxQ0FBcUM7d0JBQ3JDLG1DQUFtQzt3QkFDbkMsaUNBQWlDO3dCQUNqQyw4QkFBOEI7d0JBQzlCLG1DQUFtQzt3QkFDbkMsbUNBQW1DO3dCQUNuQywwQkFBMEI7cUJBQzNCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHtcbiAgU2t5Q29kZUJsb2NrTW9kdWxlLFxuICBTa3lDb2RlTW9kdWxlLFxufSBmcm9tICdAYmxhY2tiYXVkL3NreXV4LWxpYi1jb2RlLWJsb2NrJztcblxuaW1wb3J0IHsgU2t5SWNvbk1vZHVsZSB9IGZyb20gJ0Bza3l1eC9pbmRpY2F0b3JzJztcblxuaW1wb3J0IHsgU2t5RGVmaW5pdGlvbkxpc3RNb2R1bGUgfSBmcm9tICdAc2t5dXgvbGF5b3V0JztcblxuaW1wb3J0IHsgU2t5RG9jc0hlYWRpbmdBbmNob3JNb2R1bGUgfSBmcm9tICcuLi9oZWFkaW5nLWFuY2hvci9oZWFkaW5nLWFuY2hvci5tb2R1bGUnO1xuXG5pbXBvcnQgeyBTa3lEb2NzTWFya2Rvd25Nb2R1bGUgfSBmcm9tICcuLi9tYXJrZG93bi9tYXJrZG93bi5tb2R1bGUnO1xuXG5pbXBvcnQgeyBTa3lEb2NzU2FmZUh0bWxNb2R1bGUgfSBmcm9tICcuLi9zYWZlLWh0bWwvc2FmZS1odG1sLm1vZHVsZSc7XG5cbmltcG9ydCB7IFNreURvY3NDYWxsU2lnbmF0dXJlRGVmaW5pdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY2FsbC1zaWduYXR1cmUtZGVmaW5pdGlvbi5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBTa3lEb2NzRGlyZWN0aXZlRGVmaW5pdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vZGlyZWN0aXZlLWRlZmluaXRpb24uY29tcG9uZW50JztcblxuaW1wb3J0IHsgU2t5RG9jc0VudW1lcmF0aW9uRGVmaW5pdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vZW51bWVyYXRpb24tZGVmaW5pdGlvbi5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBTa3lEb2NzSW50ZXJmYWNlRGVmaW5pdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vaW50ZXJmYWNlLWRlZmluaXRpb24uY29tcG9uZW50JztcblxuaW1wb3J0IHsgU2t5RG9jc01ldGhvZERlZmluaXRpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9tZXRob2QtZGVmaW5pdGlvbnMuY29tcG9uZW50JztcblxuaW1wb3J0IHsgU2t5RG9jc1BpcGVEZWZpbml0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9waXBlLWRlZmluaXRpb24uY29tcG9uZW50JztcblxuaW1wb3J0IHsgU2t5RG9jc1Byb3BlcnR5RGVmaW5pdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL3Byb3BlcnR5LWRlZmluaXRpb25zLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IFNreURvY3NDbGFzc0RlZmluaXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NsYXNzLWRlZmluaXRpb24uY29tcG9uZW50JztcblxuaW1wb3J0IHsgU2t5RG9jc1R5cGVBbGlhc0RlZmluaXRpb25Db21wb25lbnQgfSBmcm9tICcuL3R5cGUtYWxpYXMtZGVmaW5pdGlvbi5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBTa3lEb2NzVHlwZUFuY2hvckxpbmtzUGlwZSB9IGZyb20gJy4vdHlwZS1hbmNob3ItbGlua3MucGlwZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICAgIFNreUNvZGVCbG9ja01vZHVsZSxcbiAgICBTa3lDb2RlTW9kdWxlLFxuICAgIFNreURlZmluaXRpb25MaXN0TW9kdWxlLFxuICAgIFNreURvY3NIZWFkaW5nQW5jaG9yTW9kdWxlLFxuICAgIFNreURvY3NNYXJrZG93bk1vZHVsZSxcbiAgICBTa3lEb2NzU2FmZUh0bWxNb2R1bGUsXG4gICAgU2t5SWNvbk1vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU2t5RG9jc0NhbGxTaWduYXR1cmVEZWZpbml0aW9uQ29tcG9uZW50LFxuICAgIFNreURvY3NDbGFzc0RlZmluaXRpb25Db21wb25lbnQsXG4gICAgU2t5RG9jc0RpcmVjdGl2ZURlZmluaXRpb25Db21wb25lbnQsXG4gICAgU2t5RG9jc0VudW1lcmF0aW9uRGVmaW5pdGlvbkNvbXBvbmVudCxcbiAgICBTa3lEb2NzSW50ZXJmYWNlRGVmaW5pdGlvbkNvbXBvbmVudCxcbiAgICBTa3lEb2NzTWV0aG9kRGVmaW5pdGlvbnNDb21wb25lbnQsXG4gICAgU2t5RG9jc1BpcGVEZWZpbml0aW9uQ29tcG9uZW50LFxuICAgIFNreURvY3NQcm9wZXJ0eURlZmluaXRpb25zQ29tcG9uZW50LFxuICAgIFNreURvY3NUeXBlQWxpYXNEZWZpbml0aW9uQ29tcG9uZW50LFxuICAgIFNreURvY3NUeXBlQW5jaG9yTGlua3NQaXBlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgU2t5RG9jc0NhbGxTaWduYXR1cmVEZWZpbml0aW9uQ29tcG9uZW50LFxuICAgIFNreURvY3NDbGFzc0RlZmluaXRpb25Db21wb25lbnQsXG4gICAgU2t5RG9jc0RpcmVjdGl2ZURlZmluaXRpb25Db21wb25lbnQsXG4gICAgU2t5RG9jc0VudW1lcmF0aW9uRGVmaW5pdGlvbkNvbXBvbmVudCxcbiAgICBTa3lEb2NzSW50ZXJmYWNlRGVmaW5pdGlvbkNvbXBvbmVudCxcbiAgICBTa3lEb2NzTWV0aG9kRGVmaW5pdGlvbnNDb21wb25lbnQsXG4gICAgU2t5RG9jc1BpcGVEZWZpbml0aW9uQ29tcG9uZW50LFxuICAgIFNreURvY3NQcm9wZXJ0eURlZmluaXRpb25zQ29tcG9uZW50LFxuICAgIFNreURvY3NUeXBlQWxpYXNEZWZpbml0aW9uQ29tcG9uZW50LFxuICAgIFNreURvY3NUeXBlQW5jaG9yTGlua3NQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lEb2NzVHlwZURlZmluaXRpb25zTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,103 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "./type-definitions-provider";
4
+ import * as i2 from "./typedoc-adapter.service";
5
+ /**
6
+ * Handles all type definitions that have been converted from the third-party documentation generator.
7
+ */
8
+ export class SkyDocsTypeDefinitionsService {
9
+ constructor(typeDefinitionsProvider, adapter) {
10
+ this.typeDefinitionsProvider = typeDefinitionsProvider;
11
+ this.adapter = adapter;
12
+ }
13
+ /**
14
+ * Returns type definitions from a specific source code location.
15
+ * @param sourceCodePath The directory of the source code you wish to pull type definitions from,
16
+ * relative to the application's root directory.
17
+ */
18
+ getTypeDefinitions(sourceCodePath, additionalSourceCodePaths) {
19
+ if (!sourceCodePath) {
20
+ throw new Error('The `sourceCodePath` parameter is required');
21
+ }
22
+ const sourceCodePaths = additionalSourceCodePaths && additionalSourceCodePaths.length > 0
23
+ ? [sourceCodePath].concat(additionalSourceCodePaths)
24
+ : [sourceCodePath];
25
+ sourceCodePaths.forEach((path) => {
26
+ if (!path.endsWith('/') && !path.endsWith('.ts')) {
27
+ throw new Error('Source code paths must end with a forward slash (`/`) or `.ts`.');
28
+ }
29
+ });
30
+ const allDefinitions = this.typeDefinitionsProvider.typeDefinitions;
31
+ const types = {
32
+ classes: [],
33
+ components: [],
34
+ directives: [],
35
+ enumerations: [],
36
+ interfaces: [],
37
+ pipes: [],
38
+ services: [],
39
+ typeAliases: [],
40
+ };
41
+ if (!allDefinitions) {
42
+ console.warn(`No types were found for this project!`);
43
+ return types;
44
+ }
45
+ sourceCodePaths.forEach((path) => {
46
+ const requestedDir = path
47
+ .replace(/src\/app\/public\//, '')
48
+ .replace(/^\//, ''); // remove first slash.
49
+ // Only process types that match the requested source code location.
50
+ const typeDefinitions = allDefinitions.filter((i) => i.sources && i.sources[0].fileName.match(requestedDir));
51
+ if (typeDefinitions.length === 0) {
52
+ console.warn(`Type definitions were not found for location: ${requestedDir}`);
53
+ }
54
+ typeDefinitions.forEach((item) => {
55
+ const decorator = item.decorators && item.decorators[0].name;
56
+ const kindString = item.kindString;
57
+ switch (decorator) {
58
+ case 'Component':
59
+ types.components.push(this.adapter.toDirectiveDefinition(item));
60
+ break;
61
+ case 'Directive':
62
+ types.directives.push(this.adapter.toDirectiveDefinition(item));
63
+ break;
64
+ case 'Injectable':
65
+ types.services.push(this.adapter.toClassDefinition(item));
66
+ break;
67
+ case 'NgModule':
68
+ // Don't document modules.
69
+ break;
70
+ case 'Pipe':
71
+ types.pipes.push(this.adapter.toPipeDefinition(item));
72
+ break;
73
+ default:
74
+ /*tslint:disable-next-line:switch-default*/
75
+ switch (kindString) {
76
+ case 'Class':
77
+ types.classes.push(this.adapter.toClassDefinition(item));
78
+ break;
79
+ case 'Interface':
80
+ types.interfaces.push(this.adapter.toInterfaceDefinition(item));
81
+ break;
82
+ case 'Enumeration':
83
+ types.enumerations.push(this.adapter.toEnumerationDefinition(item));
84
+ break;
85
+ case 'Type alias':
86
+ types.typeAliases.push(this.adapter.toTypeAliasDefinition(item));
87
+ break;
88
+ }
89
+ }
90
+ });
91
+ });
92
+ return types;
93
+ }
94
+ }
95
+ SkyDocsTypeDefinitionsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsService, deps: [{ token: i1.SkyDocsTypeDefinitionsProvider }, { token: i2.SkyDocsTypeDocAdapterService }], target: i0.ɵɵFactoryTarget.Injectable });
96
+ SkyDocsTypeDefinitionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsService, providedIn: 'any' });
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: SkyDocsTypeDefinitionsService, decorators: [{
98
+ type: Injectable,
99
+ args: [{
100
+ providedIn: 'any',
101
+ }]
102
+ }], ctorParameters: function () { return [{ type: i1.SkyDocsTypeDefinitionsProvider }, { type: i2.SkyDocsTypeDocAdapterService }]; } });
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1kZWZpbml0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZG9jcy10b29scy9zcmMvbW9kdWxlcy90eXBlLWRlZmluaXRpb25zL3R5cGUtZGVmaW5pdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBUTNDOztHQUVHO0FBSUgsTUFBTSxPQUFPLDZCQUE2QjtJQUN4QyxZQUNVLHVCQUF1RCxFQUN2RCxPQUFxQztRQURyQyw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQWdDO1FBQ3ZELFlBQU8sR0FBUCxPQUFPLENBQThCO0lBQzVDLENBQUM7SUFFSjs7OztPQUlHO0lBQ0ksa0JBQWtCLENBQ3ZCLGNBQXNCLEVBQ3RCLHlCQUFvQztRQUVwQyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ25CLE1BQU0sSUFBSSxLQUFLLENBQUMsNENBQTRDLENBQUMsQ0FBQztTQUMvRDtRQUVELE1BQU0sZUFBZSxHQUNuQix5QkFBeUIsSUFBSSx5QkFBeUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQztZQUMvRCxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxNQUFNLENBQUMseUJBQXlCLENBQUM7WUFDcEQsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFdkIsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQy9CLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDaEQsTUFBTSxJQUFJLEtBQUssQ0FDYixpRUFBaUUsQ0FDbEUsQ0FBQzthQUNIO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMs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LElBQUksQ0FBQyxDQUMzQyxDQUFDO2dDQUNGLE1BQU07NEJBQ1IsS0FBSyxZQUFZO2dDQUNmLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUN6QyxDQUFDO2dDQUNGLE1BQU07eUJBQ1Q7aUJBQ0o7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzsySEE3R1UsNkJBQTZCOytIQUE3Qiw2QkFBNkIsY0FGNUIsS0FBSzs0RkFFTiw2QkFBNkI7a0JBSHpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLEtBQUs7aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTa3lEb2NzVHlwZURlZmluaXRpb25zIH0gZnJvbSAnLi90eXBlLWRlZmluaXRpb25zJztcblxuaW1wb3J0IHsgU2t5RG9jc1R5cGVEZWZpbml0aW9uc1Byb3ZpZGVyIH0gZnJvbSAnLi90eXBlLWRlZmluaXRpb25zLXByb3ZpZGVyJztcblxuaW1wb3J0IHsgU2t5RG9jc1R5cGVEb2NBZGFwdGVyU2VydmljZSB9IGZyb20gJy4vdHlwZWRvYy1hZGFwdGVyLnNlcnZpY2UnO1xuXG4vKipcbiAqIEhhbmRsZXMgYWxsIHR5cGUgZGVmaW5pdGlvbnMgdGhhdCBoYXZlIGJlZW4gY29udmVydGVkIGZyb20gdGhlIHRoaXJkLXBhcnR5IGRvY3VtZW50YXRpb24gZ2VuZXJhdG9yLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdhbnknLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lEb2NzVHlwZURlZmluaXRpb25zU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgdHlwZURlZmluaXRpb25zUHJvdmlkZXI6IFNreURvY3NUeXBlRGVmaW5pdGlvbnNQcm92aWRlcixcbiAgICBwcml2YXRlIGFkYXB0ZXI6IFNreURvY3NUeXBlRG9jQWRhcHRlclNlcnZpY2VcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHR5cGUgZGVmaW5pdGlvbnMgZnJvbSBhIHNwZWNpZmljIHNvdXJjZSBjb2RlIGxvY2F0aW9uLlxuICAgKiBAcGFyYW0gc291cmNlQ29kZVBhdGggVGhlIGRpcmVjdG9yeSBvZiB0aGUgc291cmNlIGNvZGUgeW91IHdpc2ggdG8gcHVsbCB0eXBlIGRlZmluaXRpb25zIGZyb20sXG4gICAqIHJlbGF0aXZlIHRvIHRoZSBhcHBsaWNhdGlvbidzIHJvb3QgZGlyZWN0b3J5LlxuICAgKi9cbiAgcHVibGljIGdldFR5cGVEZWZpbml0aW9ucyhcbiAgICBzb3VyY2VDb2RlUGF0aDogc3RyaW5nLFxuICAgIGFkZGl0aW9uYWxTb3VyY2VDb2RlUGF0aHM/OiBzdHJpbmdbXVxuICApOiBTa3lEb2NzVHlwZURlZmluaXRpb25zIHtcbiAgICBpZiAoIXNvdXJjZUNvZGVQYXRoKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBgc291cmNlQ29kZVBhdGhgIHBhcmFtZXRlciBpcyByZXF1aXJlZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHNvdXJjZUNvZGVQYXRoczogc3RyaW5nW10gPVxuICAgICAgYWRkaXRpb25hbFNvdXJjZUNvZGVQYXRocyAmJiBhZGRpdGlvbmFsU291cmNlQ29kZVBhdGhzLmxlbmd0aCA+IDBcbiAgICAgICAgPyBbc291cmNlQ29kZVBhdGhdLmNvbmNhdChhZGRpdGlvbmFsU291cmNlQ29kZVBhdGhzKVxuICAgICAgICA6IFtzb3VyY2VDb2RlUGF0aF07XG5cbiAgICBzb3VyY2VDb2RlUGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgaWYgKCFwYXRoLmVuZHNXaXRoKCcvJykgJiYgIXBhdGguZW5kc1dpdGgoJy50cycpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAnU291cmNlIGNvZGUgcGF0aHMgbXVzdCBlbmQgd2l0aCBhIGZvcndhcmQgc2xhc2ggKGAvYCkgb3IgYC50c2AuJ1xuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29uc3QgYWxsRGVmaW5pdGlvbnMgPSB0aGlzLnR5cGVEZWZpbml0aW9uc1Byb3ZpZGVyLnR5cGVEZWZpbml0aW9ucztcbiAgICBjb25zdCB0eXBlczogU2t5RG9jc1R5cGVEZWZpbml0aW9ucyA9IHtcbiAgICAgIGNsYXNzZXM6IFtdLFxuICAgICAgY29tcG9uZW50czogW10sXG4gICAgICBkaXJlY3RpdmVzOiBbXSxcbiAgICAgIGVudW1lcmF0aW9uczogW10sXG4gICAgICBpbnRlcmZhY2VzOiBbXSxcbiAgICAgIHBpcGVzOiBbXSxcbiAgICAgIHNlcnZpY2VzOiBbXSxcbiAgICAgIHR5cGVBbGlhc2VzOiBbXSxcbiAgICB9O1xuXG4gICAgaWYgKCFhbGxEZWZpbml0aW9ucykge1xuICAgICAgY29uc29sZS53YXJuKGBObyB0eXBlcyB3ZXJlIGZvdW5kIGZvciB0aGlzIHByb2plY3QhYCk7XG4gICAgICByZXR1cm4gdHlwZXM7XG4gICAgfVxuXG4gICAgc291cmNlQ29kZVBhdGhzLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgIGNvbnN0IHJlcXVlc3RlZERpciA9IHBhdGhcbiAgICAgICAgLnJlcGxhY2UoL3NyY1xcL2FwcFxcL3B1YmxpY1xcLy8sICcnKVxuICAgICAgICAucmVwbGFjZSgvXlxcLy8sICcnKTsgLy8gcmVtb3ZlIGZpcnN0IHNsYXNoLlxuXG4gICAgICAvLyBPbmx5IHByb2Nlc3MgdHlwZXMgdGhhdCBtYXRjaCB0aGUgcmVxdWVzdGVkIHNvdXJjZSBjb2RlIGxvY2F0aW9uLlxuICAgICAgY29uc3QgdHlwZURlZmluaXRpb25zID0gYWxsRGVmaW5pdGlvbnMuZmlsdGVyKFxuICAgICAgICAoaSkgPT4gaS5zb3VyY2VzICYmIGkuc291cmNlc1swXS5maWxlTmFtZS5tYXRjaChyZXF1ZXN0ZWREaXIpXG4gICAgICApO1xuICAgICAgaWYgKHR5cGVEZWZpbml0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgIGBUeXBlIGRlZmluaXRpb25zIHdlcmUgbm90IGZvdW5kIGZvciBsb2NhdGlvbjogJHtyZXF1ZXN0ZWREaXJ9YFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICB0eXBlRGVmaW5pdGlvbnMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICBjb25zdCBkZWNvcmF0b3IgPSBpdGVtLmRlY29yYXRvcnMgJiYgaXRlbS5kZWNvcmF0b3JzWzBdLm5hbWU7XG4gICAgICAgIGNvbnN0IGtpbmRTdHJpbmcgPSBpdGVtLmtpbmRTdHJpbmc7XG5cbiAgICAgICAgc3dpdGNoIChkZWNvcmF0b3IpIHtcbiAgICAgICAgICBjYXNlICdDb21wb25lbnQnOlxuICAgICAgICAgICAgdHlwZXMuY29tcG9uZW50cy5wdXNoKHRoaXMuYWRhcHRlci50b0RpcmVjdGl2ZURlZmluaXRpb24oaXRlbSkpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnRGlyZWN0aXZlJzpcbiAgICAgICAgICAgIHR5cGVzLmRpcmVjdGl2ZXMucHVzaCh0aGlzLmFkYXB0ZXIudG9EaXJlY3RpdmVEZWZpbml0aW9uKGl0ZW0pKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ0luamVjdGFibGUnOlxuICAgICAgICAgICAgdHlwZXMuc2VydmljZXMucHVzaCh0aGlzLmFkYXB0ZXIudG9DbGFzc0RlZmluaXRpb24oaXRlbSkpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnTmdNb2R1bGUnOlxuICAgICAgICAgICAgLy8gRG9uJ3QgZG9jdW1lbnQgbW9kdWxlcy5cbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ1BpcGUnOlxuICAgICAgICAgICAgdHlwZXMucGlwZXMucHVzaCh0aGlzLmFkYXB0ZXIudG9QaXBlRGVmaW5pdGlvbihpdGVtKSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgLyp0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6c3dpdGNoLWRlZmF1bHQqL1xuICAgICAgICAgICAgc3dpdGNoIChraW5kU3RyaW5nKSB7XG4gICAgICAgICAgICAgIGNhc2UgJ0NsYXNzJzpcbiAgICAgICAgICAgICAgICB0eXBlcy5jbGFzc2VzLnB1c2godGhpcy5hZGFwdGVyLnRvQ2xhc3NEZWZpbml0aW9uKGl0ZW0pKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgY2FzZSAnSW50ZXJmYWNlJzpcbiAgICAgICAgICAgICAgICB0eXBlcy5pbnRlcmZhY2VzLnB1c2godGhpcy5hZGFwdGVyLnRvSW50ZXJmYWNlRGVmaW5pdGlvbihpdGVtKSk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgIGNhc2UgJ0VudW1lcmF0aW9uJzpcbiAgICAgICAgICAgICAgICB0eXBlcy5lbnVtZXJhdGlvbnMucHVzaChcbiAgICAgICAgICAgICAgICAgIHRoaXMuYWRhcHRlci50b0VudW1lcmF0aW9uRGVmaW5pdGlvbihpdGVtKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgIGNhc2UgJ1R5cGUgYWxpYXMnOlxuICAgICAgICAgICAgICAgIHR5cGVzLnR5cGVBbGlhc2VzLnB1c2goXG4gICAgICAgICAgICAgICAgICB0aGlzLmFkYXB0ZXIudG9UeXBlQWxpYXNEZWZpbml0aW9uKGl0ZW0pXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gdHlwZXM7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1wYXJhbWV0ZXItZGVmaW5pdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RvY3MtdG9vbHMvc3JjL21vZHVsZXMvdHlwZS1kZWZpbml0aW9ucy90eXBlLXBhcmFtZXRlci1kZWZpbml0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lEb2NzVHlwZURlZmluaXRpb24gfSBmcm9tICcuL3R5cGUtZGVmaW5pdGlvbic7XG5cbi8qKlxuICogRGVzY3JpYmVzIGEgdHlwZSBwYXJhbWV0ZXIsIGUuZy4gYDxUPmAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2t5RG9jc1R5cGVQYXJhbWV0ZXJEZWZpbml0aW9uIHtcbiAgbmFtZTogc3RyaW5nO1xuXG4gIHR5cGU/OiBTa3lEb2NzVHlwZURlZmluaXRpb247XG59XG4iXX0=