@breadstone-tools/localizator-core 0.0.12-beta.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 (238) hide show
  1. package/Detectors/Abstracts/BaseDetector.d.ts +81 -0
  2. package/Detectors/Abstracts/BaseDetector.d.ts.map +1 -0
  3. package/Detectors/Abstracts/BaseDetector.js +137 -0
  4. package/Detectors/Abstracts/BaseDetector.js.map +1 -0
  5. package/Detectors/AngularHTMLDetector.d.ts +94 -0
  6. package/Detectors/AngularHTMLDetector.d.ts.map +1 -0
  7. package/Detectors/AngularHTMLDetector.js +123 -0
  8. package/Detectors/AngularHTMLDetector.js.map +1 -0
  9. package/Detectors/Interfaces/IDetector.d.ts +73 -0
  10. package/Detectors/Interfaces/IDetector.d.ts.map +1 -0
  11. package/Detectors/Interfaces/IDetector.js +12 -0
  12. package/Detectors/Interfaces/IDetector.js.map +1 -0
  13. package/Detectors/JSXDetector.d.ts +69 -0
  14. package/Detectors/JSXDetector.d.ts.map +1 -0
  15. package/Detectors/JSXDetector.js +101 -0
  16. package/Detectors/JSXDetector.js.map +1 -0
  17. package/Detectors/JavaScriptDetector.d.ts +74 -0
  18. package/Detectors/JavaScriptDetector.d.ts.map +1 -0
  19. package/Detectors/JavaScriptDetector.js +106 -0
  20. package/Detectors/JavaScriptDetector.js.map +1 -0
  21. package/Detectors/TSXDetector.d.ts +76 -0
  22. package/Detectors/TSXDetector.d.ts.map +1 -0
  23. package/Detectors/TSXDetector.js +101 -0
  24. package/Detectors/TSXDetector.js.map +1 -0
  25. package/Detectors/TypeScriptDetector.d.ts +76 -0
  26. package/Detectors/TypeScriptDetector.d.ts.map +1 -0
  27. package/Detectors/TypeScriptDetector.js +102 -0
  28. package/Detectors/TypeScriptDetector.js.map +1 -0
  29. package/Detectors/Utils.d.ts +41 -0
  30. package/Detectors/Utils.d.ts.map +1 -0
  31. package/Detectors/Utils.js +62 -0
  32. package/Detectors/Utils.js.map +1 -0
  33. package/Detectors/VueDetector.d.ts +60 -0
  34. package/Detectors/VueDetector.d.ts.map +1 -0
  35. package/Detectors/VueDetector.js +108 -0
  36. package/Detectors/VueDetector.js.map +1 -0
  37. package/Formatters/Formatters.d.ts +15 -0
  38. package/Formatters/Formatters.d.ts.map +1 -0
  39. package/Formatters/Formatters.js +34 -0
  40. package/Formatters/Formatters.js.map +1 -0
  41. package/Formatters/Interfaces/IFormatter.d.ts +24 -0
  42. package/Formatters/Interfaces/IFormatter.d.ts.map +1 -0
  43. package/Formatters/Interfaces/IFormatter.js +3 -0
  44. package/Formatters/Interfaces/IFormatter.js.map +1 -0
  45. package/Formatters/JsonFormatter.d.ts +26 -0
  46. package/Formatters/JsonFormatter.d.ts.map +1 -0
  47. package/Formatters/JsonFormatter.js +42 -0
  48. package/Formatters/JsonFormatter.js.map +1 -0
  49. package/Formatters/ResxFormatter.d.ts +26 -0
  50. package/Formatters/ResxFormatter.d.ts.map +1 -0
  51. package/Formatters/ResxFormatter.js +53 -0
  52. package/Formatters/ResxFormatter.js.map +1 -0
  53. package/Index.d.ts +57 -0
  54. package/Index.d.ts.map +1 -0
  55. package/Index.js +86 -0
  56. package/Index.js.map +1 -0
  57. package/LICENSE +21 -0
  58. package/Presets/AngularPreset.d.ts +38 -0
  59. package/Presets/AngularPreset.d.ts.map +1 -0
  60. package/Presets/AngularPreset.js +59 -0
  61. package/Presets/AngularPreset.js.map +1 -0
  62. package/Presets/Interfaces/IFrameworkPreset.d.ts +28 -0
  63. package/Presets/Interfaces/IFrameworkPreset.d.ts.map +1 -0
  64. package/Presets/Interfaces/IFrameworkPreset.js +4 -0
  65. package/Presets/Interfaces/IFrameworkPreset.js.map +1 -0
  66. package/Presets/LitPreset.d.ts +38 -0
  67. package/Presets/LitPreset.d.ts.map +1 -0
  68. package/Presets/LitPreset.js +57 -0
  69. package/Presets/LitPreset.js.map +1 -0
  70. package/Presets/Presets.d.ts +25 -0
  71. package/Presets/Presets.d.ts.map +1 -0
  72. package/Presets/Presets.js +50 -0
  73. package/Presets/Presets.js.map +1 -0
  74. package/Presets/ReactPreset.d.ts +38 -0
  75. package/Presets/ReactPreset.d.ts.map +1 -0
  76. package/Presets/ReactPreset.js +61 -0
  77. package/Presets/ReactPreset.js.map +1 -0
  78. package/Presets/StencilPreset.d.ts +38 -0
  79. package/Presets/StencilPreset.d.ts.map +1 -0
  80. package/Presets/StencilPreset.js +59 -0
  81. package/Presets/StencilPreset.js.map +1 -0
  82. package/Presets/VuePreset.d.ts +38 -0
  83. package/Presets/VuePreset.d.ts.map +1 -0
  84. package/Presets/VuePreset.js +60 -0
  85. package/Presets/VuePreset.js.map +1 -0
  86. package/Resources/Analyzers/ResourceAnalyzer.d.ts +58 -0
  87. package/Resources/Analyzers/ResourceAnalyzer.d.ts.map +1 -0
  88. package/Resources/Analyzers/ResourceAnalyzer.js +119 -0
  89. package/Resources/Analyzers/ResourceAnalyzer.js.map +1 -0
  90. package/Resources/Analyzers/Tasks/DuplicateKeysTask.d.ts +31 -0
  91. package/Resources/Analyzers/Tasks/DuplicateKeysTask.d.ts.map +1 -0
  92. package/Resources/Analyzers/Tasks/DuplicateKeysTask.js +40 -0
  93. package/Resources/Analyzers/Tasks/DuplicateKeysTask.js.map +1 -0
  94. package/Resources/Analyzers/Tasks/EmptyValuesTask.d.ts +31 -0
  95. package/Resources/Analyzers/Tasks/EmptyValuesTask.d.ts.map +1 -0
  96. package/Resources/Analyzers/Tasks/EmptyValuesTask.js +41 -0
  97. package/Resources/Analyzers/Tasks/EmptyValuesTask.js.map +1 -0
  98. package/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask.d.ts +36 -0
  99. package/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask.d.ts.map +1 -0
  100. package/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask.js +4 -0
  101. package/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask.js.map +1 -0
  102. package/Resources/Analyzers/Tasks/KeyConsistencyTask.d.ts +35 -0
  103. package/Resources/Analyzers/Tasks/KeyConsistencyTask.d.ts.map +1 -0
  104. package/Resources/Analyzers/Tasks/KeyConsistencyTask.js +67 -0
  105. package/Resources/Analyzers/Tasks/KeyConsistencyTask.js.map +1 -0
  106. package/Resources/Analyzers/Tasks/MissingTranslationsTask.d.ts +31 -0
  107. package/Resources/Analyzers/Tasks/MissingTranslationsTask.d.ts.map +1 -0
  108. package/Resources/Analyzers/Tasks/MissingTranslationsTask.js +44 -0
  109. package/Resources/Analyzers/Tasks/MissingTranslationsTask.js.map +1 -0
  110. package/Resources/Analyzers/Tasks/MultipleKeyUsageTask.d.ts +31 -0
  111. package/Resources/Analyzers/Tasks/MultipleKeyUsageTask.d.ts.map +1 -0
  112. package/Resources/Analyzers/Tasks/MultipleKeyUsageTask.js +48 -0
  113. package/Resources/Analyzers/Tasks/MultipleKeyUsageTask.js.map +1 -0
  114. package/Resources/Analyzers/Tasks/UnusedKeysTask.d.ts +31 -0
  115. package/Resources/Analyzers/Tasks/UnusedKeysTask.d.ts.map +1 -0
  116. package/Resources/Analyzers/Tasks/UnusedKeysTask.js +49 -0
  117. package/Resources/Analyzers/Tasks/UnusedKeysTask.js.map +1 -0
  118. package/Resources/Models/Interfaces/IJsonResourceInfo.d.ts +12 -0
  119. package/Resources/Models/Interfaces/IJsonResourceInfo.d.ts.map +1 -0
  120. package/Resources/Models/Interfaces/IJsonResourceInfo.js +4 -0
  121. package/Resources/Models/Interfaces/IJsonResourceInfo.js.map +1 -0
  122. package/Resources/Models/Interfaces/IResourceInfo.d.ts +71 -0
  123. package/Resources/Models/Interfaces/IResourceInfo.d.ts.map +1 -0
  124. package/Resources/Models/Interfaces/IResourceInfo.js +4 -0
  125. package/Resources/Models/Interfaces/IResourceInfo.js.map +1 -0
  126. package/Resources/Models/Interfaces/IResourceModel.d.ts +41 -0
  127. package/Resources/Models/Interfaces/IResourceModel.d.ts.map +1 -0
  128. package/Resources/Models/Interfaces/IResourceModel.js +25 -0
  129. package/Resources/Models/Interfaces/IResourceModel.js.map +1 -0
  130. package/Resources/Models/Interfaces/IResxResourceInfo.d.ts +12 -0
  131. package/Resources/Models/Interfaces/IResxResourceInfo.d.ts.map +1 -0
  132. package/Resources/Models/Interfaces/IResxResourceInfo.js +4 -0
  133. package/Resources/Models/Interfaces/IResxResourceInfo.js.map +1 -0
  134. package/Resources/Models/Interfaces/ITypeScriptResourceInfo.d.ts +11 -0
  135. package/Resources/Models/Interfaces/ITypeScriptResourceInfo.d.ts.map +1 -0
  136. package/Resources/Models/Interfaces/ITypeScriptResourceInfo.js +4 -0
  137. package/Resources/Models/Interfaces/ITypeScriptResourceInfo.js.map +1 -0
  138. package/Resources/Models/Interfaces/ResourceType.d.ts +29 -0
  139. package/Resources/Models/Interfaces/ResourceType.d.ts.map +1 -0
  140. package/Resources/Models/Interfaces/ResourceType.js +45 -0
  141. package/Resources/Models/Interfaces/ResourceType.js.map +1 -0
  142. package/Resources/Models/JsonResourceInfo.d.ts +111 -0
  143. package/Resources/Models/JsonResourceInfo.d.ts.map +1 -0
  144. package/Resources/Models/JsonResourceInfo.js +184 -0
  145. package/Resources/Models/JsonResourceInfo.js.map +1 -0
  146. package/Resources/Models/ResxResourceInfo.d.ts +110 -0
  147. package/Resources/Models/ResxResourceInfo.d.ts.map +1 -0
  148. package/Resources/Models/ResxResourceInfo.js +171 -0
  149. package/Resources/Models/ResxResourceInfo.js.map +1 -0
  150. package/Resources/Models/TypeScriptResourceInfo.d.ts +109 -0
  151. package/Resources/Models/TypeScriptResourceInfo.d.ts.map +1 -0
  152. package/Resources/Models/TypeScriptResourceInfo.js +244 -0
  153. package/Resources/Models/TypeScriptResourceInfo.js.map +1 -0
  154. package/Resources/ResourceFactory.d.ts +39 -0
  155. package/Resources/ResourceFactory.d.ts.map +1 -0
  156. package/Resources/ResourceFactory.js +102 -0
  157. package/Resources/ResourceFactory.js.map +1 -0
  158. package/Resources/ResourceMode.d.ts +14 -0
  159. package/Resources/ResourceMode.d.ts.map +1 -0
  160. package/Resources/ResourceMode.js +18 -0
  161. package/Resources/ResourceMode.js.map +1 -0
  162. package/Resources/ResourceProcessor.d.ts +66 -0
  163. package/Resources/ResourceProcessor.d.ts.map +1 -0
  164. package/Resources/ResourceProcessor.js +90 -0
  165. package/Resources/ResourceProcessor.js.map +1 -0
  166. package/Resources/Scanners/Adapter/Interfaces/IScannerAdapter.d.ts +17 -0
  167. package/Resources/Scanners/Adapter/Interfaces/IScannerAdapter.d.ts.map +1 -0
  168. package/Resources/Scanners/Adapter/Interfaces/IScannerAdapter.js +4 -0
  169. package/Resources/Scanners/Adapter/Interfaces/IScannerAdapter.js.map +1 -0
  170. package/Resources/Scanners/Adapter/JsonScannerAdapter.d.ts +28 -0
  171. package/Resources/Scanners/Adapter/JsonScannerAdapter.d.ts.map +1 -0
  172. package/Resources/Scanners/Adapter/JsonScannerAdapter.js +62 -0
  173. package/Resources/Scanners/Adapter/JsonScannerAdapter.js.map +1 -0
  174. package/Resources/Scanners/Adapter/ResxScannerAdapter.d.ts +28 -0
  175. package/Resources/Scanners/Adapter/ResxScannerAdapter.d.ts.map +1 -0
  176. package/Resources/Scanners/Adapter/ResxScannerAdapter.js +62 -0
  177. package/Resources/Scanners/Adapter/ResxScannerAdapter.js.map +1 -0
  178. package/Resources/Scanners/ResourceScanner.d.ts +32 -0
  179. package/Resources/Scanners/ResourceScanner.d.ts.map +1 -0
  180. package/Resources/Scanners/ResourceScanner.js +59 -0
  181. package/Resources/Scanners/ResourceScanner.js.map +1 -0
  182. package/Resources/Sorting/ResourceSorter.d.ts +46 -0
  183. package/Resources/Sorting/ResourceSorter.d.ts.map +1 -0
  184. package/Resources/Sorting/ResourceSorter.js +82 -0
  185. package/Resources/Sorting/ResourceSorter.js.map +1 -0
  186. package/Resources/Transformers/Adapters/Abstracts/BaseResourceTransformerAdapter.d.ts +20 -0
  187. package/Resources/Transformers/Adapters/Abstracts/BaseResourceTransformerAdapter.d.ts.map +1 -0
  188. package/Resources/Transformers/Adapters/Abstracts/BaseResourceTransformerAdapter.js +15 -0
  189. package/Resources/Transformers/Adapters/Abstracts/BaseResourceTransformerAdapter.js.map +1 -0
  190. package/Resources/Transformers/Adapters/Interfaces/IResourceTransformerAdapter.d.ts +11 -0
  191. package/Resources/Transformers/Adapters/Interfaces/IResourceTransformerAdapter.d.ts.map +1 -0
  192. package/Resources/Transformers/Adapters/Interfaces/IResourceTransformerAdapter.js +4 -0
  193. package/Resources/Transformers/Adapters/Interfaces/IResourceTransformerAdapter.js.map +1 -0
  194. package/Resources/Transformers/Adapters/JsonResourceTransformerAdapter.d.ts +26 -0
  195. package/Resources/Transformers/Adapters/JsonResourceTransformerAdapter.d.ts.map +1 -0
  196. package/Resources/Transformers/Adapters/JsonResourceTransformerAdapter.js +64 -0
  197. package/Resources/Transformers/Adapters/JsonResourceTransformerAdapter.js.map +1 -0
  198. package/Resources/Transformers/Adapters/ResxResourceTransformerAdapter.d.ts +19 -0
  199. package/Resources/Transformers/Adapters/ResxResourceTransformerAdapter.d.ts.map +1 -0
  200. package/Resources/Transformers/Adapters/ResxResourceTransformerAdapter.js +30 -0
  201. package/Resources/Transformers/Adapters/ResxResourceTransformerAdapter.js.map +1 -0
  202. package/Resources/Transformers/Interfaces/IResourceTransformerResult.d.ts +11 -0
  203. package/Resources/Transformers/Interfaces/IResourceTransformerResult.d.ts.map +1 -0
  204. package/Resources/Transformers/Interfaces/IResourceTransformerResult.js +4 -0
  205. package/Resources/Transformers/Interfaces/IResourceTransformerResult.js.map +1 -0
  206. package/Resources/Transformers/ResourceTransformer.d.ts +74 -0
  207. package/Resources/Transformers/ResourceTransformer.d.ts.map +1 -0
  208. package/Resources/Transformers/ResourceTransformer.js +112 -0
  209. package/Resources/Transformers/ResourceTransformer.js.map +1 -0
  210. package/Resources/Transformers/Serializers/Interfaces/IResourceSerializer.d.ts +9 -0
  211. package/Resources/Transformers/Serializers/Interfaces/IResourceSerializer.d.ts.map +1 -0
  212. package/Resources/Transformers/Serializers/Interfaces/IResourceSerializer.js +4 -0
  213. package/Resources/Transformers/Serializers/Interfaces/IResourceSerializer.js.map +1 -0
  214. package/Resources/Transformers/Serializers/JsonResourceSerializer.d.ts +20 -0
  215. package/Resources/Transformers/Serializers/JsonResourceSerializer.d.ts.map +1 -0
  216. package/Resources/Transformers/Serializers/JsonResourceSerializer.js +47 -0
  217. package/Resources/Transformers/Serializers/JsonResourceSerializer.js.map +1 -0
  218. package/Resources/Transformers/Serializers/ResxResourceSerializer.d.ts +20 -0
  219. package/Resources/Transformers/Serializers/ResxResourceSerializer.d.ts.map +1 -0
  220. package/Resources/Transformers/Serializers/ResxResourceSerializer.js +36 -0
  221. package/Resources/Transformers/Serializers/ResxResourceSerializer.js.map +1 -0
  222. package/Resources/Transformers/Serializers/TypescriptResourceSerializer.d.ts +20 -0
  223. package/Resources/Transformers/Serializers/TypescriptResourceSerializer.d.ts.map +1 -0
  224. package/Resources/Transformers/Serializers/TypescriptResourceSerializer.js +36 -0
  225. package/Resources/Transformers/Serializers/TypescriptResourceSerializer.js.map +1 -0
  226. package/Services/DiffService.d.ts +1 -0
  227. package/Services/DiffService.d.ts.map +1 -0
  228. package/Services/DiffService.js +86 -0
  229. package/Services/DiffService.js.map +1 -0
  230. package/Services/KeyGenerator.d.ts +21 -0
  231. package/Services/KeyGenerator.d.ts.map +1 -0
  232. package/Services/KeyGenerator.js +34 -0
  233. package/Services/KeyGenerator.js.map +1 -0
  234. package/Services/LocalizationProcessor.d.ts +83 -0
  235. package/Services/LocalizationProcessor.d.ts.map +1 -0
  236. package/Services/LocalizationProcessor.js +90 -0
  237. package/Services/LocalizationProcessor.js.map +1 -0
  238. package/package.json +19 -0
@@ -0,0 +1,109 @@
1
+ import type { ResourceContentFn } from './Interfaces/IResourceInfo';
2
+ import type { ITypeScriptResourceInfo } from './Interfaces/ITypeScriptResourceInfo';
3
+ import { ResourceType } from './Interfaces/ResourceType';
4
+ /**
5
+ * Represents a typescript resource.
6
+ *
7
+ * @public
8
+ */
9
+ export declare class TypeScriptResourceInfo implements ITypeScriptResourceInfo {
10
+ private readonly _name;
11
+ private readonly _path;
12
+ private readonly _language;
13
+ private readonly _type;
14
+ private readonly _content;
15
+ private _cacheContent;
16
+ /**
17
+ * Constructs a new instance of the `TypeScriptResourceInfo` class.
18
+ *
19
+ * @param resource - The resource information.
20
+ * @public
21
+ */
22
+ constructor(resource?: Partial<ITypeScriptResourceInfo>);
23
+ /**
24
+ * Gets the `data` property.
25
+ *
26
+ * @public
27
+ * @readonly
28
+ */
29
+ get name(): string;
30
+ /**
31
+ * Gets the `data` property.
32
+ *
33
+ * @public
34
+ * @readonly
35
+ */
36
+ get path(): string;
37
+ /**
38
+ * Gets the `data` property.
39
+ *
40
+ * @public
41
+ * @readonly
42
+ */
43
+ get locale(): string;
44
+ /**
45
+ * Gets the `data` property.
46
+ *
47
+ * @public
48
+ * @readonly
49
+ */
50
+ get type(): ResourceType.TypeScript;
51
+ /**
52
+ * Gets the `dacontentta` property.
53
+ *
54
+ * @public
55
+ * @readonly
56
+ */
57
+ get content(): ResourceContentFn<Record<string, string>>;
58
+ /**
59
+ * Gets the `isVirtual` property.
60
+ *
61
+ * @public
62
+ * @readonly
63
+ */
64
+ get isVirtual(): boolean;
65
+ /**
66
+ * Returns the keys of the resource.
67
+ *
68
+ * @public
69
+ */
70
+ keys(): Array<string>;
71
+ /**
72
+ * Returns the values of the resource.
73
+ *
74
+ * @public
75
+ */
76
+ values(): Array<string>;
77
+ /**
78
+ * Returns the entries of the resource.
79
+ *
80
+ * @public
81
+ */
82
+ entries(): Array<[string, string]>;
83
+ /**
84
+ * Clones the current instance.
85
+ *
86
+ * @public
87
+ */
88
+ clone(): this;
89
+ /**
90
+ * Copies the current instance.
91
+ *
92
+ * @public
93
+ */
94
+ copy(resource: this): this;
95
+ /**
96
+ * Sorts the resource data.
97
+ *
98
+ * @public
99
+ * @param order - The order to sort the data.
100
+ */
101
+ sort(order: 'asc' | 'desc'): this;
102
+ /**
103
+ * Converts the resource to a string.
104
+ *
105
+ * @public
106
+ */
107
+ toString(): string;
108
+ }
109
+ //# sourceMappingURL=TypeScriptResourceInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeScriptResourceInfo.d.ts","sourceRoot":"","sources":["../../../src/Resources/Models/TypeScriptResourceInfo.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAKzD;;;;GAIG;AACH,qBAAa,sBAAuB,YAAW,uBAAuB;IAIlE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0B;IAChD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4C;IACrE,OAAO,CAAC,aAAa,CAAgC;IAMrD;;;;;OAKG;gBACgB,QAAQ,GAAE,OAAO,CAAC,uBAAuB,CAAM;IAoBlE;;;;;OAKG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;IAED;;;;;OAKG;IACH,IAAW,IAAI,IAAI,MAAM,CAExB;IAED;;;;;OAKG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED;;;;;OAKG;IACH,IAAW,IAAI,IAAI,YAAY,CAAC,UAAU,CAEzC;IAED;;;;;OAKG;IACH,IAAW,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAE9D;IAED;;;;;OAKG;IACH,IAAW,SAAS,IAAI,OAAO,CAE9B;IAMD;;;;OAIG;IACI,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC;IAM5B;;;;OAIG;IACI,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IAM9B;;;;OAIG;IACI,OAAO,IAAI,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAOzC;;;;OAIG;IACI,KAAK,IAAI,IAAI;IAIpB;;;;OAIG;IACI,IAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAIjC;;;;;OAKG;IACI,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI;IAcxC;;;;OAIG;IACI,QAAQ,IAAI,MAAM;CAkF5B"}
@@ -0,0 +1,244 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.TypeScriptResourceInfo = void 0;
5
+ const ResourceType_1 = require("./Interfaces/ResourceType");
6
+ const ts_morph_1 = require("ts-morph");
7
+ // #endregion
8
+ /**
9
+ * Represents a typescript resource.
10
+ *
11
+ * @public
12
+ */
13
+ class TypeScriptResourceInfo {
14
+ // #region Fields
15
+ _name;
16
+ _path;
17
+ _language;
18
+ _type;
19
+ _content;
20
+ _cacheContent;
21
+ // #endregion
22
+ // #region Ctor
23
+ /**
24
+ * Constructs a new instance of the `TypeScriptResourceInfo` class.
25
+ *
26
+ * @param resource - The resource information.
27
+ * @public
28
+ */
29
+ constructor(resource = {}) {
30
+ this._name = resource.name ?? '';
31
+ this._path = resource.path ?? '';
32
+ this._language = resource.locale ?? '';
33
+ this._type = ResourceType_1.ResourceType.TypeScript;
34
+ this._cacheContent = null;
35
+ this._content = () => {
36
+ if (!this._cacheContent) {
37
+ const c = resource.content ?? (() => ({}));
38
+ return this._cacheContent = c();
39
+ }
40
+ return this._cacheContent;
41
+ };
42
+ }
43
+ // #endregion
44
+ // #region Properties
45
+ /**
46
+ * Gets the `data` property.
47
+ *
48
+ * @public
49
+ * @readonly
50
+ */
51
+ get name() {
52
+ return this._name;
53
+ }
54
+ /**
55
+ * Gets the `data` property.
56
+ *
57
+ * @public
58
+ * @readonly
59
+ */
60
+ get path() {
61
+ return this._path;
62
+ }
63
+ /**
64
+ * Gets the `data` property.
65
+ *
66
+ * @public
67
+ * @readonly
68
+ */
69
+ get locale() {
70
+ return this._language;
71
+ }
72
+ /**
73
+ * Gets the `data` property.
74
+ *
75
+ * @public
76
+ * @readonly
77
+ */
78
+ get type() {
79
+ return this._type;
80
+ }
81
+ /**
82
+ * Gets the `dacontentta` property.
83
+ *
84
+ * @public
85
+ * @readonly
86
+ */
87
+ get content() {
88
+ return this._content;
89
+ }
90
+ /**
91
+ * Gets the `isVirtual` property.
92
+ *
93
+ * @public
94
+ * @readonly
95
+ */
96
+ get isVirtual() {
97
+ return this._path === '' || this._name === '';
98
+ }
99
+ // #endregion
100
+ // #region Methods
101
+ /**
102
+ * Returns the keys of the resource.
103
+ *
104
+ * @public
105
+ */
106
+ keys() {
107
+ const content = this._content();
108
+ return Object.keys(content);
109
+ }
110
+ /**
111
+ * Returns the values of the resource.
112
+ *
113
+ * @public
114
+ */
115
+ values() {
116
+ const content = this._content();
117
+ return Object.values(content);
118
+ }
119
+ /**
120
+ * Returns the entries of the resource.
121
+ *
122
+ * @public
123
+ */
124
+ entries() {
125
+ const content = this._content();
126
+ return Object.entries(content)
127
+ .map(([key, value]) => [key, value]);
128
+ }
129
+ /**
130
+ * Clones the current instance.
131
+ *
132
+ * @public
133
+ */
134
+ clone() {
135
+ return this.copy(this);
136
+ }
137
+ /**
138
+ * Copies the current instance.
139
+ *
140
+ * @public
141
+ */
142
+ copy(resource) {
143
+ return new TypeScriptResourceInfo(resource);
144
+ }
145
+ /**
146
+ * Sorts the resource data.
147
+ *
148
+ * @public
149
+ * @param order - The order to sort the data.
150
+ */
151
+ sort(order) {
152
+ const content = this._content();
153
+ const sortedKeys = Object.keys(content).sort((a, b) => order === 'asc'
154
+ ? a.localeCompare(b)
155
+ : b.localeCompare(a));
156
+ this._cacheContent = sortedKeys.reduce((sorted, key) => {
157
+ sorted[key] = content[key];
158
+ return sorted;
159
+ }, {});
160
+ return this;
161
+ }
162
+ /**
163
+ * Converts the resource to a string.
164
+ *
165
+ * @public
166
+ */
167
+ toString() {
168
+ const content = this._content();
169
+ const project = new ts_morph_1.Project();
170
+ const sourceFile = project.createSourceFile(`${this.name}.ts`, '', { overwrite: true });
171
+ const className = `${this._name.split('.')[0]}_${this._language}`;
172
+ sourceFile.addStatements((writer) => {
173
+ writer.writeLine('/* eslint-disable @stylistic/quotes */')
174
+ .writeLine('/* eslint-disable @typescript-eslint/explicit-member-accessibility */')
175
+ .writeLine('/* eslint-disable camelcase */')
176
+ .writeLine('/* eslint-disable @typescript-eslint/naming-convention */')
177
+ .writeLine('/* eslint-disable @typescript-eslint/class-literal-property-style */')
178
+ .writeLine('');
179
+ });
180
+ sourceFile.addStatements((writer) => {
181
+ writer.writeLine('// ------------------------------------------------------------------------------')
182
+ .writeLine('// <auto-generated>')
183
+ .writeLine('// This code was generated by a tool.')
184
+ .writeLine('// Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.')
185
+ .writeLine('// </auto-generated>')
186
+ .writeLine('// ------------------------------------------------------------------------------')
187
+ .writeLine('');
188
+ });
189
+ sourceFile.addClass({
190
+ name: className,
191
+ isExported: true,
192
+ properties: Object.entries(content).map(([key, value]) => ({
193
+ name: `'${key}'`,
194
+ type: 'string',
195
+ isStatic: true,
196
+ isReadonly: true,
197
+ hasQuestionToken: false,
198
+ initializer: JSON.stringify(value)
199
+ })),
200
+ methods: [
201
+ {
202
+ docs: [{
203
+ description: 'Returns all propertys of the class as key value array.',
204
+ tags: [{
205
+ tagName: 'public'
206
+ }, {
207
+ tagName: 'static'
208
+ }]
209
+ }],
210
+ name: 'entries',
211
+ isStatic: true,
212
+ returnType: 'Array<[string, string]>',
213
+ statements: (writer) => writer
214
+ .writeLine('const map = new Map<string, string>();')
215
+ .writeLine(`Object.entries(${className}).forEach(([key, value]) => map.set(key, value));`)
216
+ .writeLine('return Array.from(map.entries());')
217
+ },
218
+ {
219
+ docs: [{
220
+ description: 'Returns all propertys of the class as key value object.',
221
+ tags: [{
222
+ tagName: 'public'
223
+ }, {
224
+ tagName: 'static'
225
+ }]
226
+ }],
227
+ name: 'toObject',
228
+ isStatic: true,
229
+ returnType: 'Record<string, string>',
230
+ statements: (writer) => writer
231
+ .writeLine(`return Object.keys(${className}).reduce<Record<string, string>>((obj, key) => {`)
232
+ .indent(() => {
233
+ writer.writeLine(`obj[key] = (${className} as any)[key];`);
234
+ writer.writeLine('return obj;');
235
+ })
236
+ .writeLine('}, {});')
237
+ }
238
+ ]
239
+ });
240
+ return sourceFile.getFullText();
241
+ }
242
+ }
243
+ exports.TypeScriptResourceInfo = TypeScriptResourceInfo;
244
+ //# sourceMappingURL=TypeScriptResourceInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeScriptResourceInfo.js","sourceRoot":"","sources":["../../../src/Resources/Models/TypeScriptResourceInfo.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { type IFileSystem } from '@breadstone-infrastructure/utilities';
2
+ import type { IResourceInfo } from './Models/Interfaces/IResourceInfo';
3
+ import { ResourceType } from './Models/Interfaces/ResourceType';
4
+ /**
5
+ * The `Name` class.
6
+ *
7
+ * @public
8
+ */
9
+ export declare class ResourceFactory {
10
+ private readonly _fileSystem;
11
+ /**
12
+ * Constructs a new instance of the `ResourceFactory` class.
13
+ *
14
+ * @public
15
+ */
16
+ constructor(fileSystem: IFileSystem);
17
+ /**
18
+ * Gets a resource from a path.
19
+ *
20
+ * @public
21
+ * @param filePath - The path of the resource.
22
+ * @returns The resource
23
+ * @throws Error if the file does not exist
24
+ */
25
+ getResourceFromPath(filePath: string): IResourceInfo;
26
+ /**
27
+ * Creates a resource from content.
28
+ *
29
+ * @public
30
+ * @param content - The content of the resource.
31
+ * @param type - The type of the resource.
32
+ * @param locale - The locale of the resource.
33
+ * @param name - The name of the resource.
34
+ * @returns The resource
35
+ * @throws Error if the resource type is not supported
36
+ */
37
+ createResourceFromContent(content: string, type: ResourceType, locale: string): IResourceInfo;
38
+ }
39
+ //# sourceMappingURL=ResourceFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceFactory.d.ts","sourceRoot":"","sources":["../../src/Resources/ResourceFactory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,WAAW,EAAc,MAAM,sCAAsC,CAAC;AACpF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAMhE;;;;GAIG;AACH,qBAAa,eAAe;IAIxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAM1C;;;;OAIG;gBACgB,UAAU,EAAE,WAAW;IAQ1C;;;;;;;OAOG;IACI,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa;IA6B3D;;;;;;;;;;OAUG;IACI,yBAAyB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,aAAa;CA4BvG"}
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ResourceFactory = void 0;
5
+ const utilities_1 = require("@breadstone-infrastructure/utilities");
6
+ const ResourceType_1 = require("./Models/Interfaces/ResourceType");
7
+ const JsonResourceInfo_1 = require("./Models/JsonResourceInfo");
8
+ const Index_1 = require("../Index");
9
+ // #endregion
10
+ /**
11
+ * The `Name` class.
12
+ *
13
+ * @public
14
+ */
15
+ class ResourceFactory {
16
+ // #region Fields
17
+ _fileSystem;
18
+ // #endregion
19
+ // #region Ctor
20
+ /**
21
+ * Constructs a new instance of the `ResourceFactory` class.
22
+ *
23
+ * @public
24
+ */
25
+ constructor(fileSystem) {
26
+ this._fileSystem = fileSystem;
27
+ }
28
+ // #endregion
29
+ // #region Methods
30
+ /**
31
+ * Gets a resource from a path.
32
+ *
33
+ * @public
34
+ * @param filePath - The path of the resource.
35
+ * @returns The resource
36
+ * @throws Error if the file does not exist
37
+ */
38
+ getResourceFromPath(filePath) {
39
+ if (!this._fileSystem.exists(filePath)) {
40
+ throw new Error(`File not found: ${filePath}`);
41
+ }
42
+ const resourceType = ResourceType_1.ResourceType.formFile(filePath);
43
+ switch (resourceType) {
44
+ case ResourceType_1.ResourceType.Json:
45
+ return new JsonResourceInfo_1.JsonResourceInfo({
46
+ type: ResourceType_1.ResourceType.Json,
47
+ content: () => this._fileSystem.readAllJson(filePath),
48
+ locale: this._fileSystem.getLocale(filePath),
49
+ name: this._fileSystem.getFileName(filePath),
50
+ path: filePath
51
+ });
52
+ case ResourceType_1.ResourceType.Resx:
53
+ return new Index_1.ResxResourceInfo({
54
+ type: ResourceType_1.ResourceType.Resx,
55
+ content: () => this._fileSystem.readAllResx(filePath),
56
+ locale: this._fileSystem.getLocale(filePath),
57
+ name: this._fileSystem.getFileName(filePath)
58
+ });
59
+ case ResourceType_1.ResourceType.TypeScript:
60
+ default:
61
+ throw new Error(`Resource type not supported: ${resourceType}`);
62
+ }
63
+ }
64
+ /**
65
+ * Creates a resource from content.
66
+ *
67
+ * @public
68
+ * @param content - The content of the resource.
69
+ * @param type - The type of the resource.
70
+ * @param locale - The locale of the resource.
71
+ * @param name - The name of the resource.
72
+ * @returns The resource
73
+ * @throws Error if the resource type is not supported
74
+ */
75
+ createResourceFromContent(content, type, locale) {
76
+ switch (type) {
77
+ case ResourceType_1.ResourceType.Json:
78
+ return new JsonResourceInfo_1.JsonResourceInfo({
79
+ type: ResourceType_1.ResourceType.Json,
80
+ content: () => {
81
+ const p = utilities_1.Json.parse(content).entries;
82
+ return p;
83
+ },
84
+ locale: locale
85
+ });
86
+ case ResourceType_1.ResourceType.Resx:
87
+ return new Index_1.ResxResourceInfo({
88
+ type: ResourceType_1.ResourceType.Resx,
89
+ content: () => {
90
+ const p = utilities_1.Resx.parse(content).entries;
91
+ return p;
92
+ },
93
+ locale: locale
94
+ });
95
+ case ResourceType_1.ResourceType.TypeScript:
96
+ default:
97
+ throw new Error(`Resource type not supported: ${type}`);
98
+ }
99
+ }
100
+ }
101
+ exports.ResourceFactory = ResourceFactory;
102
+ //# sourceMappingURL=ResourceFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceFactory.js","sourceRoot":"","sources":["../../src/Resources/ResourceFactory.ts"],"names":[],"mappings":";AAAA,kBAAkB;;;AAElB,oEAAoF;AAEpF,mEAAgE;AAChE,gEAA6D;AAC7D,oCAA4C;AAE5C,aAAa;AAEb;;;;GAIG;AACH,MAAa,eAAe;IAExB,iBAAiB;IAEA,WAAW,CAAc;IAE1C,aAAa;IAEb,eAAe;IAEf;;;;OAIG;IACH,YAAmB,UAAuB;QACtC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAClC,CAAC;IAED,aAAa;IAEb,kBAAkB;IAElB;;;;;;;OAOG;IACI,mBAAmB,CAAC,QAAgB;QACvC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,MAAM,YAAY,GAAG,2BAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAErD,QAAQ,YAAY,EAAE,CAAC;YACnB,KAAK,2BAAY,CAAC,IAAI;gBAClB,OAAO,IAAI,mCAAgB,CAAC;oBACxB,IAAI,EAAE,2BAAY,CAAC,IAAI;oBACvB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC;oBACrD,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC;oBAC5C,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC;oBAC5C,IAAI,EAAE,QAAQ;iBACjB,CAAC,CAAC;YACP,KAAK,2BAAY,CAAC,IAAI;gBAClB,OAAO,IAAI,wBAAgB,CAAC;oBACxB,IAAI,EAAE,2BAAY,CAAC,IAAI;oBACvB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC;oBACrD,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC;oBAC5C,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC;iBAC/C,CAAC,CAAC;YACP,KAAK,2BAAY,CAAC,UAAU,CAAC;YAC7B;gBACI,MAAM,IAAI,KAAK,CAAC,gCAAgC,YAAY,EAAE,CAAC,CAAC;QACxE,CAAC;IACL,CAAC;IAED;;;;;;;;;;OAUG;IACI,yBAAyB,CAAC,OAAe,EAAE,IAAkB,EAAE,MAAc;QAChF,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,2BAAY,CAAC,IAAI;gBAClB,OAAO,IAAI,mCAAgB,CAAC;oBACxB,IAAI,EAAE,2BAAY,CAAC,IAAI;oBACvB,OAAO,EAAE,GAAG,EAAE;wBACV,MAAM,CAAC,GAAG,gBAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;wBACtC,OAAO,CAAC,CAAC;oBACb,CAAC;oBACD,MAAM,EAAE,MAAM;iBACjB,CAAC,CAAC;YACP,KAAK,2BAAY,CAAC,IAAI;gBAClB,OAAO,IAAI,wBAAgB,CAAC;oBACxB,IAAI,EAAE,2BAAY,CAAC,IAAI;oBACvB,OAAO,EAAE,GAAG,EAAE;wBACV,MAAM,CAAC,GAAG,gBAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;wBACtC,OAAO,CAAC,CAAC;oBACb,CAAC;oBACD,MAAM,EAAE,MAAM;iBACjB,CAAC,CAAC;YACP,KAAK,2BAAY,CAAC,UAAU,CAAC;YAC7B;gBACI,MAAM,IAAI,KAAK,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;QAChE,CAAC;IACL,CAAC;CAIJ;AAnGD,0CAmGC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * `ResourceMode` - Enum which describes possible options.
3
+ */
4
+ export declare enum ResourceMode {
5
+ /**
6
+ * `json` - JSON mode.
7
+ */
8
+ Json = "json",
9
+ /**
10
+ * `resx` - RESX mode.
11
+ */
12
+ Resx = "resx"
13
+ }
14
+ //# sourceMappingURL=ResourceMode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceMode.d.ts","sourceRoot":"","sources":["../../src/Resources/ResourceMode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,YAAY;IAEpB;;OAEG;IACH,IAAI,SAAS;IAEb;;OAEG;IACH,IAAI,SAAS;CAEhB"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ResourceMode = void 0;
4
+ /**
5
+ * `ResourceMode` - Enum which describes possible options.
6
+ */
7
+ var ResourceMode;
8
+ (function (ResourceMode) {
9
+ /**
10
+ * `json` - JSON mode.
11
+ */
12
+ ResourceMode["Json"] = "json";
13
+ /**
14
+ * `resx` - RESX mode.
15
+ */
16
+ ResourceMode["Resx"] = "resx";
17
+ })(ResourceMode || (exports.ResourceMode = ResourceMode = {}));
18
+ //# sourceMappingURL=ResourceMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceMode.js","sourceRoot":"","sources":["../../src/Resources/ResourceMode.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,YAYX;AAZD,WAAY,YAAY;IAEpB;;OAEG;IACH,6BAAa,CAAA;IAEb;;OAEG;IACH,6BAAa,CAAA;AAEjB,CAAC,EAZW,YAAY,4BAAZ,YAAY,QAYvB"}
@@ -0,0 +1,66 @@
1
+ import type { ILogger } from '@breadstone-infrastructure/utilities';
2
+ import type { ResourceAnalyzer } from './Analyzers/ResourceAnalyzer';
3
+ import type { IAnalyzerTaskExecutionContext, IAnalyzerTaskResult } from './Analyzers/Tasks/Interfaces/IAnalyzerTask';
4
+ import type { IResourceInfo } from './Models/Interfaces/IResourceInfo';
5
+ import type { ResourceType } from './Models/Interfaces/ResourceType';
6
+ import type { ResourceMode } from './ResourceMode';
7
+ import type { ResourceScanner } from './Scanners/ResourceScanner';
8
+ import type { ResourceSorter } from './Sorting/ResourceSorter';
9
+ import type { IResourceTransformerResult } from './Transformers/Interfaces/IResourceTransformerResult';
10
+ import type { ResourceTransformer } from './Transformers/ResourceTransformer';
11
+ /**
12
+ * The `ResourceProcessor` class.
13
+ *
14
+ * @public
15
+ */
16
+ export declare class ResourceProcessor {
17
+ private readonly _logger;
18
+ private readonly _scanner;
19
+ private readonly _transformer;
20
+ private readonly _analyzer;
21
+ private readonly _sorter;
22
+ /**
23
+ * Constructs a new instance of the `ResourceProcessor` class.
24
+ *
25
+ * @public
26
+ */
27
+ constructor(logger: ILogger, scanner: ResourceScanner, transformer: ResourceTransformer, analyzer: ResourceAnalyzer, sorter: ResourceSorter);
28
+ /**
29
+ * Scans the specified path for resources.
30
+ *
31
+ * @public
32
+ * @param path - The path to scan.
33
+ * @param type - The type of resources to scan.
34
+ * @returns The resource information.
35
+ */
36
+ scan(path: string, type: ResourceMode): Array<IResourceInfo>;
37
+ /**
38
+ * Transforms an input resource dynamically by determining the appropriate adapter and serializer.
39
+ *
40
+ * @public
41
+ * @param resource - The input resource to transform.
42
+ * @param meta - The metadata for the transformation.
43
+ * @returns The transformed resource information.
44
+ * @throws Error if no adapter or serializer is registered for the specified resource type.
45
+ */
46
+ transform(resource: IResourceInfo, meta: Pick<IResourceInfo, 'name' | 'path' | 'locale'> & {
47
+ target: ResourceType;
48
+ }): IResourceTransformerResult;
49
+ /**
50
+ * Executes all registered tasks using the provided context.
51
+ *
52
+ * @public
53
+ * @param rules - The name of rules to execute. If not specified, all rules are executed
54
+ * @param context - The execution context.
55
+ */
56
+ analyze(rules: Array<string>, context: IAnalyzerTaskExecutionContext): Array<IAnalyzerTaskResult>;
57
+ /**
58
+ * Sorts the specified resources.
59
+ *
60
+ * @public
61
+ * @param resources - The resources to sort.
62
+ * @returns The sorted resources.
63
+ */
64
+ sort(resources: Array<IResourceInfo>): Array<IResourceInfo>;
65
+ }
66
+ //# sourceMappingURL=ResourceProcessor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceProcessor.d.ts","sourceRoot":"","sources":["../../src/Resources/ResourceProcessor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACrH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AACvG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAI9E;;;;GAIG;AACH,qBAAa,iBAAiB;IAI1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkB;IAC3C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmB;IAC7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IAMzC;;;;OAIG;gBACgB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,mBAAmB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,cAAc;IAYlJ;;;;;;;OAOG;IACI,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,KAAK,CAAC,aAAa,CAAC;IAInE;;;;;;;;OAQG;IACI,SAAS,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,GAAG;QAAE,MAAM,EAAE,YAAY,CAAA;KAAE,GAAG,0BAA0B;IAUvJ;;;;;;OAMG;IACI,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,6BAA6B,GAAG,KAAK,CAAC,mBAAmB,CAAC;IAYxG;;;;;;OAMG;IACI,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC;CAMrE"}