@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,26 @@
1
+ import type { IJsonResourceInfo } from '../../Models/Interfaces/IJsonResourceInfo';
2
+ import type { IResourceModel } from '../../Models/Interfaces/IResourceModel';
3
+ import { BaseResourceTransformerAdapter } from './Abstracts/BaseResourceTransformerAdapter';
4
+ /**
5
+ * Class to transform JSON resources.
6
+ *
7
+ * @public
8
+ */
9
+ export declare class JsonResourceTransformerAdapter extends BaseResourceTransformerAdapter<IJsonResourceInfo> {
10
+ /**
11
+ * Transforms the given resource into an array of transform models.
12
+ *
13
+ * @public
14
+ * @param resource - The resource to transform.
15
+ * @returns The transformed resource.
16
+ */
17
+ transform(resource: IJsonResourceInfo): Array<IResourceModel>;
18
+ /**
19
+ * Sets a value in a nested object structure based on a dotted key.
20
+ * @param tree - The object to set the value in.
21
+ * @param memberKey - The dotted key representing the path to the value.
22
+ * @param memberValue - The value to set.
23
+ */
24
+ private setMemberValue;
25
+ }
26
+ //# sourceMappingURL=JsonResourceTransformerAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonResourceTransformerAdapter.d.ts","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Adapters/JsonResourceTransformerAdapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,4CAA4C,CAAC;AAI5F;;;;GAIG;AACH,qBAAa,8BAA+B,SAAQ,8BAA8B,CAAC,iBAAiB,CAAC;IAIjG;;;;;;OAMG;IACI,SAAS,CAAC,QAAQ,EAAE,iBAAiB,GAAG,KAAK,CAAC,cAAc,CAAC;IAuBpE;;;;;OAKG;IACH,OAAO,CAAC,cAAc;CAkBzB"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.JsonResourceTransformerAdapter = void 0;
5
+ const BaseResourceTransformerAdapter_1 = require("./Abstracts/BaseResourceTransformerAdapter");
6
+ // #endregion
7
+ /**
8
+ * Class to transform JSON resources.
9
+ *
10
+ * @public
11
+ */
12
+ class JsonResourceTransformerAdapter extends BaseResourceTransformerAdapter_1.BaseResourceTransformerAdapter {
13
+ // #region Methods
14
+ /**
15
+ * Transforms the given resource into an array of transform models.
16
+ *
17
+ * @public
18
+ * @param resource - The resource to transform.
19
+ * @returns The transformed resource.
20
+ */
21
+ transform(resource) {
22
+ const models = [];
23
+ const traverse = (obj, parentKey = '') => {
24
+ Object.entries(obj).forEach(([key, value]) => {
25
+ const fullKey = parentKey ? `${parentKey}.${key}` : key;
26
+ if (typeof value === 'object' && value !== null) {
27
+ traverse(value, fullKey);
28
+ }
29
+ else {
30
+ models.push({
31
+ key: fullKey,
32
+ value: String(value),
33
+ comment: ''
34
+ });
35
+ }
36
+ });
37
+ };
38
+ traverse(resource.content());
39
+ return models;
40
+ }
41
+ /**
42
+ * Sets a value in a nested object structure based on a dotted key.
43
+ * @param tree - The object to set the value in.
44
+ * @param memberKey - The dotted key representing the path to the value.
45
+ * @param memberValue - The value to set.
46
+ */
47
+ setMemberValue(tree, memberKey, memberValue) {
48
+ const members = memberKey.split('.');
49
+ let current = tree;
50
+ members.forEach((member, index) => {
51
+ if (index === members.length - 1) {
52
+ current[member] = memberValue;
53
+ }
54
+ else {
55
+ if (!current[member]) {
56
+ current[member] = {};
57
+ }
58
+ current = current[member];
59
+ }
60
+ });
61
+ }
62
+ }
63
+ exports.JsonResourceTransformerAdapter = JsonResourceTransformerAdapter;
64
+ //# sourceMappingURL=JsonResourceTransformerAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonResourceTransformerAdapter.js","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Adapters/JsonResourceTransformerAdapter.ts"],"names":[],"mappings":";AAAA,kBAAkB;;;AAIlB,+FAA4F;AAE5F,aAAa;AAEb;;;;GAIG;AACH,MAAa,8BAA+B,SAAQ,+DAAiD;IAEjG,kBAAkB;IAElB;;;;;;OAMG;IACI,SAAS,CAAC,QAA2B;QACxC,MAAM,MAAM,GAA0B,EAAE,CAAC;QAEzC,MAAM,QAAQ,GAAG,CAAC,GAAwB,EAAE,SAAS,GAAG,EAAE,EAAQ,EAAE;YAChE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBACzC,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;gBAExD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBAC9C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACJ,MAAM,CAAC,IAAI,CAAC;wBACR,GAAG,EAAE,OAAO;wBACZ,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;wBACpB,OAAO,EAAE,EAAE;qBACd,CAAC,CAAC;gBACP,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QAEF,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7B,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACK,cAAc,CAAC,IAA6B,EAAE,SAAiB,EAAE,WAAmB;QACxF,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,OAAO,GAA4B,IAAI,CAAC;QAE5C,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC9B,IAAI,KAAK,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBACnB,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;gBACzB,CAAC;gBACD,OAAO,GAAG,OAAO,CAAC,MAAM,CAA4B,CAAC;YACzD,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;CAIJ;AA1DD,wEA0DC"}
@@ -0,0 +1,19 @@
1
+ import type { IResxResourceInfo } from '../../Models/Interfaces/IResxResourceInfo';
2
+ import type { IResourceModel } from '../../Models/Interfaces/IResourceModel';
3
+ import { BaseResourceTransformerAdapter } from './Abstracts/BaseResourceTransformerAdapter';
4
+ /**
5
+ * Class to transform ResX resources.
6
+ *
7
+ * @public
8
+ */
9
+ export declare class ResxResourceTransformerAdapter extends BaseResourceTransformerAdapter<IResxResourceInfo> {
10
+ /**
11
+ * Transforms the given resource into an array of transform models.
12
+ *
13
+ * @public
14
+ * @param resource - The resource to transform.
15
+ * @returns The transformed resource.
16
+ */
17
+ transform(resource: IResxResourceInfo): Array<IResourceModel>;
18
+ }
19
+ //# sourceMappingURL=ResxResourceTransformerAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResxResourceTransformerAdapter.d.ts","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Adapters/ResxResourceTransformerAdapter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,4CAA4C,CAAC;AAI5F;;;;GAIG;AACH,qBAAa,8BAA+B,SAAQ,8BAA8B,CAAC,iBAAiB,CAAC;IAIjG;;;;;;OAMG;IACI,SAAS,CAAC,QAAQ,EAAE,iBAAiB,GAAG,KAAK,CAAC,cAAc,CAAC;CAUvE"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ResxResourceTransformerAdapter = void 0;
5
+ const BaseResourceTransformerAdapter_1 = require("./Abstracts/BaseResourceTransformerAdapter");
6
+ // #endregion
7
+ /**
8
+ * Class to transform ResX resources.
9
+ *
10
+ * @public
11
+ */
12
+ class ResxResourceTransformerAdapter extends BaseResourceTransformerAdapter_1.BaseResourceTransformerAdapter {
13
+ // #region Imports
14
+ /**
15
+ * Transforms the given resource into an array of transform models.
16
+ *
17
+ * @public
18
+ * @param resource - The resource to transform.
19
+ * @returns The transformed resource.
20
+ */
21
+ transform(resource) {
22
+ return resource.content().map((entry) => ({
23
+ key: entry.key,
24
+ value: entry.value,
25
+ comment: entry.comment
26
+ }));
27
+ }
28
+ }
29
+ exports.ResxResourceTransformerAdapter = ResxResourceTransformerAdapter;
30
+ //# sourceMappingURL=ResxResourceTransformerAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResxResourceTransformerAdapter.js","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Adapters/ResxResourceTransformerAdapter.ts"],"names":[],"mappings":";AAAA,kBAAkB;;;AAIlB,+FAA4F;AAE5F,aAAa;AAEb;;;;GAIG;AACH,MAAa,8BAA+B,SAAQ,+DAAiD;IAEjG,kBAAkB;IAElB;;;;;;OAMG;IACI,SAAS,CAAC,QAA2B;QACxC,OAAO,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACtC,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO;SACzB,CAAC,CAAC,CAAC;IACR,CAAC;CAIJ;AArBD,wEAqBC"}
@@ -0,0 +1,11 @@
1
+ import type { IResourceInfo } from '../../Models/Interfaces/IResourceInfo';
2
+ /**
3
+ * Represents the `IResourceTransformerResult` interface.
4
+ *
5
+ * @public
6
+ */
7
+ export interface IResourceTransformerResult {
8
+ originalResource: IResourceInfo;
9
+ transformedResource: IResourceInfo;
10
+ }
11
+ //# sourceMappingURL=IResourceTransformerResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IResourceTransformerResult.d.ts","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Interfaces/IResourceTransformerResult.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAI3E;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IAIvC,gBAAgB,EAAE,aAAa,CAAC;IAEhC,mBAAmB,EAAE,aAAa,CAAC;CAItC"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=IResourceTransformerResult.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IResourceTransformerResult.js","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Interfaces/IResourceTransformerResult.ts"],"names":[],"mappings":";AAAA,kBAAkB"}
@@ -0,0 +1,74 @@
1
+ import type { ILogger } from '@breadstone-infrastructure/utilities';
2
+ import type { IResourceInfo } from '../Models/Interfaces/IResourceInfo';
3
+ import type { IResourceModel } from '../Models/Interfaces/IResourceModel';
4
+ import { ResourceType } from '../Models/Interfaces/ResourceType';
5
+ import type { IResourceTransformerAdapter } from './Adapters/Interfaces/IResourceTransformerAdapter';
6
+ import type { IResourceSerializer } from './Serializers/Interfaces/IResourceSerializer';
7
+ /**
8
+ * Handles the transformation of resources by applying adapters and serializers dynamically.
9
+ *
10
+ * @public
11
+ */
12
+ export declare class ResourceTransformer {
13
+ private readonly _logger;
14
+ private readonly _adapters;
15
+ private readonly _serializers;
16
+ /**
17
+ * Constructs a new instance of the `ResourceTransformer` class.
18
+ *
19
+ * @public
20
+ */
21
+ constructor(logger: ILogger);
22
+ /**
23
+ * Registers a transformer adapter for a specific resource type.
24
+ *
25
+ * @public
26
+ * @param resourceType - The type of resource the adapter handles.
27
+ * @param adapter - The adapter to register.
28
+ */
29
+ registerAdapter(resourceType: ResourceType | string, adapter: IResourceTransformerAdapter<IResourceInfo>): void;
30
+ /**
31
+ * Unregisters a transformer adapter for a specific resource type.
32
+ *
33
+ * @public
34
+ * @param resourceType - The type of resource to unregister.
35
+ */
36
+ unregisterAdapter(resourceType: ResourceType | string): void;
37
+ /**
38
+ * Registers a serializer for a specific resource type.
39
+ *
40
+ * @public
41
+ * @param resourceType - The type of resource the serializer handles.
42
+ * @param serializer - The serializer to register.
43
+ */
44
+ registerSerializer(resourceType: ResourceType | string, serializer: IResourceSerializer<IResourceInfo>): void;
45
+ /**
46
+ * Unregisters a serializer for a specific resource type.
47
+ *
48
+ * @public
49
+ * @param resourceType - The type of resource to unregister.
50
+ */
51
+ unregisterSerializer(resourceType: ResourceType | string): void;
52
+ /**
53
+ * Transforms a resource info object into a collection of transform models.
54
+ *
55
+ * @public
56
+ * @param resource - The resource to transform.
57
+ * @returns The transformed models.
58
+ * @throws Error if no adapter is registered for the resource type
59
+ */
60
+ transform(resource: IResourceInfo): Array<IResourceModel>;
61
+ /**
62
+ * Serializes a collection of transform models into a resource info object.
63
+ *
64
+ * @public
65
+ * @param models - The models to serialize.
66
+ * @param meta - The resource metadata.
67
+ * @returns The serialized resource info.
68
+ * @throws Error if no serializer is registered for the target resource
69
+ */
70
+ serialize(models: Array<IResourceModel>, meta: Pick<IResourceInfo, 'name' | 'path' | 'locale'> & {
71
+ target: ResourceType | string;
72
+ }): IResourceInfo;
73
+ }
74
+ //# sourceMappingURL=ResourceTransformer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceTransformer.d.ts","sourceRoot":"","sources":["../../../src/Resources/Transformers/ResourceTransformer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,mDAAmD,CAAC;AAGrG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAOxF;;;;GAIG;AACH,qBAAa,mBAAmB;IAI5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyE;IACnG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiE;IAM9F;;;;OAIG;gBACgB,MAAM,EAAE,OAAO;IAiBlC;;;;;;OAMG;IACI,eAAe,CAAC,YAAY,EAAE,YAAY,GAAG,MAAM,EAAE,OAAO,EAAE,2BAA2B,CAAC,aAAa,CAAC,GAAG,IAAI;IAItH;;;;;OAKG;IACI,iBAAiB,CAAC,YAAY,EAAE,YAAY,GAAG,MAAM,GAAG,IAAI;IAInE;;;;;;OAMG;IACI,kBAAkB,CAAC,YAAY,EAAE,YAAY,GAAG,MAAM,EAAE,UAAU,EAAE,mBAAmB,CAAC,aAAa,CAAC,GAAG,IAAI;IAIpH;;;;;OAKG;IACI,oBAAoB,CAAC,YAAY,EAAE,YAAY,GAAG,MAAM,GAAG,IAAI;IAItE;;;;;;;OAOG;IACI,SAAS,CAAC,QAAQ,EAAE,aAAa,GAAG,KAAK,CAAC,cAAc,CAAC;IAUhE;;;;;;;;OAQG;IACI,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,GAAG;QAAE,MAAM,EAAE,YAAY,GAAG,MAAM,CAAA;KAAE,GAAG,aAAa;CAY5J"}
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ResourceTransformer = void 0;
5
+ const ResourceType_1 = require("../Models/Interfaces/ResourceType");
6
+ const JsonResourceTransformerAdapter_1 = require("./Adapters/JsonResourceTransformerAdapter");
7
+ const ResxResourceTransformerAdapter_1 = require("./Adapters/ResxResourceTransformerAdapter");
8
+ const JsonResourceSerializer_1 = require("./Serializers/JsonResourceSerializer");
9
+ const ResxResourceSerializer_1 = require("./Serializers/ResxResourceSerializer");
10
+ const TypescriptResourceSerializer_1 = require("./Serializers/TypescriptResourceSerializer");
11
+ // #endregion
12
+ /**
13
+ * Handles the transformation of resources by applying adapters and serializers dynamically.
14
+ *
15
+ * @public
16
+ */
17
+ class ResourceTransformer {
18
+ // #region Fields
19
+ _logger;
20
+ _adapters;
21
+ _serializers;
22
+ // #endregion
23
+ // #region Constructor
24
+ /**
25
+ * Constructs a new instance of the `ResourceTransformer` class.
26
+ *
27
+ * @public
28
+ */
29
+ constructor(logger) {
30
+ this._logger = logger;
31
+ this._adapters = new Map()
32
+ .set(ResourceType_1.ResourceType.Json, new JsonResourceTransformerAdapter_1.JsonResourceTransformerAdapter())
33
+ .set(ResourceType_1.ResourceType.Resx, new ResxResourceTransformerAdapter_1.ResxResourceTransformerAdapter());
34
+ this._serializers = new Map()
35
+ .set(ResourceType_1.ResourceType.Json, new JsonResourceSerializer_1.JsonResourceSerializer())
36
+ .set(ResourceType_1.ResourceType.Resx, new ResxResourceSerializer_1.ResxResourceSerializer())
37
+ .set(ResourceType_1.ResourceType.TypeScript, new TypescriptResourceSerializer_1.TypescriptResourceSerializer());
38
+ }
39
+ // #endregion
40
+ // #region Methods
41
+ /**
42
+ * Registers a transformer adapter for a specific resource type.
43
+ *
44
+ * @public
45
+ * @param resourceType - The type of resource the adapter handles.
46
+ * @param adapter - The adapter to register.
47
+ */
48
+ registerAdapter(resourceType, adapter) {
49
+ this._adapters.set(resourceType, adapter);
50
+ }
51
+ /**
52
+ * Unregisters a transformer adapter for a specific resource type.
53
+ *
54
+ * @public
55
+ * @param resourceType - The type of resource to unregister.
56
+ */
57
+ unregisterAdapter(resourceType) {
58
+ this._adapters.delete(resourceType);
59
+ }
60
+ /**
61
+ * Registers a serializer for a specific resource type.
62
+ *
63
+ * @public
64
+ * @param resourceType - The type of resource the serializer handles.
65
+ * @param serializer - The serializer to register.
66
+ */
67
+ registerSerializer(resourceType, serializer) {
68
+ this._serializers.set(resourceType, serializer);
69
+ }
70
+ /**
71
+ * Unregisters a serializer for a specific resource type.
72
+ *
73
+ * @public
74
+ * @param resourceType - The type of resource to unregister.
75
+ */
76
+ unregisterSerializer(resourceType) {
77
+ this._serializers.delete(resourceType);
78
+ }
79
+ /**
80
+ * Transforms a resource info object into a collection of transform models.
81
+ *
82
+ * @public
83
+ * @param resource - The resource to transform.
84
+ * @returns The transformed models.
85
+ * @throws Error if no adapter is registered for the resource type
86
+ */
87
+ transform(resource) {
88
+ const adapter = this._adapters.get(resource.type);
89
+ if (!adapter) {
90
+ throw new Error(`No adapter registered for resource type: ${resource.type}`);
91
+ }
92
+ return adapter.transform(resource);
93
+ }
94
+ /**
95
+ * Serializes a collection of transform models into a resource info object.
96
+ *
97
+ * @public
98
+ * @param models - The models to serialize.
99
+ * @param meta - The resource metadata.
100
+ * @returns The serialized resource info.
101
+ * @throws Error if no serializer is registered for the target resource
102
+ */
103
+ serialize(models, meta) {
104
+ const serializer = this._serializers.get(meta.target);
105
+ if (!serializer) {
106
+ throw new Error(`No serializer registered for target resource type: ${meta.target}`);
107
+ }
108
+ return serializer.serialize(models, meta);
109
+ }
110
+ }
111
+ exports.ResourceTransformer = ResourceTransformer;
112
+ //# sourceMappingURL=ResourceTransformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceTransformer.js","sourceRoot":"","sources":["../../../src/Resources/Transformers/ResourceTransformer.ts"],"names":[],"mappings":";AAAA,kBAAkB;;;AAKlB,oEAAiE;AAEjE,8FAA2F;AAC3F,8FAA2F;AAE3F,iFAA8E;AAC9E,iFAA8E;AAC9E,6FAA0F;AAE1F,aAAa;AAEb;;;;GAIG;AACH,MAAa,mBAAmB;IAE5B,iBAAiB;IAEA,OAAO,CAAU;IACjB,SAAS,CAAyE;IAClF,YAAY,CAAiE;IAE9F,aAAa;IAEb,sBAAsB;IAEtB;;;;OAIG;IACH,YAAmB,MAAe;QAC9B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QAEtB,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,EAAE;aACrB,GAAG,CAAC,2BAAY,CAAC,IAAI,EAAE,IAAI,+DAA8B,EAAE,CAAC;aAC5D,GAAG,CAAC,2BAAY,CAAC,IAAI,EAAE,IAAI,+DAA8B,EAAE,CAAC,CAAC;QAElE,IAAI,CAAC,YAAY,GAAG,IAAI,GAAG,EAAE;aACxB,GAAG,CAAC,2BAAY,CAAC,IAAI,EAAE,IAAI,+CAAsB,EAAE,CAAC;aACpD,GAAG,CAAC,2BAAY,CAAC,IAAI,EAAE,IAAI,+CAAsB,EAAE,CAAC;aACpD,GAAG,CAAC,2BAAY,CAAC,UAAU,EAAE,IAAI,2DAA4B,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,aAAa;IAEb,kBAAkB;IAElB;;;;;;OAMG;IACI,eAAe,CAAC,YAAmC,EAAE,OAAmD;QAC3G,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACI,iBAAiB,CAAC,YAAmC;QACxD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;OAMG;IACI,kBAAkB,CAAC,YAAmC,EAAE,UAA8C;QACzG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACpD,CAAC;IAED;;;;;OAKG;IACI,oBAAoB,CAAC,YAAmC;QAC3D,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;;OAOG;IACI,SAAS,CAAC,QAAuB;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAElD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,4CAA4C,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACjF,CAAC;QAED,OAAO,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;IAED;;;;;;;;OAQG;IACI,SAAS,CAAC,MAA6B,EAAE,IAAyF;QACrI,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEtD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,sDAAsD,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACzF,CAAC;QAED,OAAO,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;CAIJ;AAnHD,kDAmHC"}
@@ -0,0 +1,9 @@
1
+ import type { IResourceInfo } from '../../../Models/Interfaces/IResourceInfo';
2
+ import type { IResourceModel } from '../../../Models/Interfaces/IResourceModel';
3
+ /**
4
+ * Interface for resource serializers.
5
+ */
6
+ export interface IResourceSerializer<T extends IResourceInfo> {
7
+ serialize(models: Array<IResourceModel>, info: Pick<T, 'name' | 'path' | 'locale'>): T;
8
+ }
9
+ //# sourceMappingURL=IResourceSerializer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IResourceSerializer.d.ts","sourceRoot":"","sources":["../../../../../src/Resources/Transformers/Serializers/Interfaces/IResourceSerializer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAIhF;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,aAAa;IAIxD,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;CAI1F"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=IResourceSerializer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IResourceSerializer.js","sourceRoot":"","sources":["../../../../../src/Resources/Transformers/Serializers/Interfaces/IResourceSerializer.ts"],"names":[],"mappings":";AAAA,kBAAkB"}
@@ -0,0 +1,20 @@
1
+ import type { IJsonResourceInfo } from '../../Models/Interfaces/IJsonResourceInfo';
2
+ import type { IResourceModel } from '../../Models/Interfaces/IResourceModel';
3
+ import type { IResourceSerializer } from './Interfaces/IResourceSerializer';
4
+ /**
5
+ * A class responsible for serializing an array of transform models into a JSON resource.
6
+ *
7
+ * @public
8
+ */
9
+ export declare class JsonResourceSerializer implements IResourceSerializer<IJsonResourceInfo> {
10
+ /**
11
+ * Serializes an array of transform models into a JSON resource.
12
+ *
13
+ * @public
14
+ * @param models - The array of transform models to serialize.
15
+ * @param info - The resource info.
16
+ * @returns An instance of `IJsonResourceInfo` representing the serialized data.
17
+ */
18
+ serialize(models: Array<IResourceModel>, info: Pick<IJsonResourceInfo, 'name' | 'path' | 'locale'>): IJsonResourceInfo;
19
+ }
20
+ //# sourceMappingURL=JsonResourceSerializer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonResourceSerializer.d.ts","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Serializers/JsonResourceSerializer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAE7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAI5E;;;;GAIG;AACH,qBAAa,sBAAuB,YAAW,mBAAmB,CAAC,iBAAiB,CAAC;IAIjF;;;;;;;OAOG;IACI,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,GAAG,iBAAiB;CA4BhI"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.JsonResourceSerializer = void 0;
5
+ const JsonResourceInfo_1 = require("../../Models/JsonResourceInfo");
6
+ // #endregion
7
+ /**
8
+ * A class responsible for serializing an array of transform models into a JSON resource.
9
+ *
10
+ * @public
11
+ */
12
+ class JsonResourceSerializer {
13
+ // #region Methods
14
+ /**
15
+ * Serializes an array of transform models into a JSON resource.
16
+ *
17
+ * @public
18
+ * @param models - The array of transform models to serialize.
19
+ * @param info - The resource info.
20
+ * @returns An instance of `IJsonResourceInfo` representing the serialized data.
21
+ */
22
+ serialize(models, info) {
23
+ const output = {};
24
+ models.forEach((model) => {
25
+ const keys = model.key.split('.');
26
+ let current = output;
27
+ keys.forEach((key, index) => {
28
+ if (index === keys.length - 1) {
29
+ current[key] = model.value;
30
+ }
31
+ else {
32
+ // eslint-disable-next-line logical-assignment-operators
33
+ current[key] = current[key] || {};
34
+ current = current[key];
35
+ }
36
+ });
37
+ });
38
+ return new JsonResourceInfo_1.JsonResourceInfo({
39
+ name: info.name,
40
+ path: info.path,
41
+ locale: info.locale,
42
+ content: () => output
43
+ });
44
+ }
45
+ }
46
+ exports.JsonResourceSerializer = JsonResourceSerializer;
47
+ //# sourceMappingURL=JsonResourceSerializer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonResourceSerializer.js","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Serializers/JsonResourceSerializer.ts"],"names":[],"mappings":";AAAA,kBAAkB;;;AAIlB,oEAAiE;AAGjE,aAAa;AAEb;;;;GAIG;AACH,MAAa,sBAAsB;IAE/B,kBAAkB;IAElB;;;;;;;OAOG;IACI,SAAS,CAAC,MAA6B,EAAE,IAAyD;QACrG,MAAM,MAAM,GAAwB,EAAE,CAAC;QAEvC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACrB,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,OAAO,GAAG,MAAM,CAAC;YAErB,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gBACxB,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;gBAC/B,CAAC;qBAAM,CAAC;oBACJ,wDAAwD;oBACxD,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;oBAClC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC3B,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,mCAAgB,CAAC;YACxB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM;SACxB,CAAC,CAAC;IACP,CAAC;CAIJ;AAxCD,wDAwCC"}
@@ -0,0 +1,20 @@
1
+ import type { IResxResourceInfo } from '../../Models/Interfaces/IResxResourceInfo';
2
+ import type { IResourceModel } from '../../Models/Interfaces/IResourceModel';
3
+ import type { IResourceSerializer } from './Interfaces/IResourceSerializer';
4
+ /**
5
+ * A class responsible for serializing an array of transform models into a ResX resource format.
6
+ *
7
+ * @public
8
+ */
9
+ export declare class ResxResourceSerializer implements IResourceSerializer<IResxResourceInfo> {
10
+ /**
11
+ * Serializes an array of transform models into a ResX resource.
12
+ *
13
+ * @public
14
+ * @param models - The array of transform models to serialize.
15
+ * @param info - The resource info.
16
+ * @returns An instance of `IResxResourceInfo` representing the serialized data.
17
+ */
18
+ serialize(models: Array<IResourceModel>, info: Pick<IResxResourceInfo, 'name' | 'path' | 'locale'>): IResxResourceInfo;
19
+ }
20
+ //# sourceMappingURL=ResxResourceSerializer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResxResourceSerializer.d.ts","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Serializers/ResxResourceSerializer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAE7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAI5E;;;;GAIG;AACH,qBAAa,sBAAuB,YAAW,mBAAmB,CAAC,iBAAiB,CAAC;IAIjF;;;;;;;OAOG;IACI,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,GAAG,iBAAiB;CAiBhI"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ResxResourceSerializer = void 0;
5
+ const ResxResourceInfo_1 = require("../../Models/ResxResourceInfo");
6
+ // #endregion
7
+ /**
8
+ * A class responsible for serializing an array of transform models into a ResX resource format.
9
+ *
10
+ * @public
11
+ */
12
+ class ResxResourceSerializer {
13
+ // #region Methods
14
+ /**
15
+ * Serializes an array of transform models into a ResX resource.
16
+ *
17
+ * @public
18
+ * @param models - The array of transform models to serialize.
19
+ * @param info - The resource info.
20
+ * @returns An instance of `IResxResourceInfo` representing the serialized data.
21
+ */
22
+ serialize(models, info) {
23
+ const output = [];
24
+ models.forEach((model) => {
25
+ output.push(model);
26
+ });
27
+ return new ResxResourceInfo_1.ResxResourceInfo({
28
+ name: info.name,
29
+ path: info.path,
30
+ locale: info.locale,
31
+ content: () => output
32
+ });
33
+ }
34
+ }
35
+ exports.ResxResourceSerializer = ResxResourceSerializer;
36
+ //# sourceMappingURL=ResxResourceSerializer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResxResourceSerializer.js","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Serializers/ResxResourceSerializer.ts"],"names":[],"mappings":";AAAA,kBAAkB;;;AAIlB,oEAAiE;AAGjE,aAAa;AAEb;;;;GAIG;AACH,MAAa,sBAAsB;IAE/B,kBAAkB;IAElB;;;;;;;OAOG;IACI,SAAS,CAAC,MAA6B,EAAE,IAAyD;QACrG,MAAM,MAAM,GAA0B,EAAE,CAAC;QAEzC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACrB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,mCAAgB,CAAC;YACxB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM;SACxB,CAAC,CAAC;IACP,CAAC;CAIJ;AA7BD,wDA6BC"}
@@ -0,0 +1,20 @@
1
+ import type { IResourceModel } from '../../Models/Interfaces/IResourceModel';
2
+ import type { IResourceSerializer } from './Interfaces/IResourceSerializer';
3
+ import type { ITypeScriptResourceInfo } from '../../Models/Interfaces/ITypeScriptResourceInfo';
4
+ /**
5
+ * A class responsible for serializing an array of transform models into a TypeScript resource format.
6
+ *
7
+ * @public
8
+ */
9
+ export declare class TypescriptResourceSerializer implements IResourceSerializer<ITypeScriptResourceInfo> {
10
+ /**
11
+ * Serializes an array of transform models into a TypeScript resource.
12
+ *
13
+ * @public
14
+ * @param models - The array of transform models to serialize.
15
+ * @param info - The resource info.
16
+ * @returns An instance of `ITypeScriptResourceInfo` representing the serialized data.
17
+ */
18
+ serialize(models: Array<IResourceModel>, info: Pick<ITypeScriptResourceInfo, 'name' | 'path' | 'locale'>): ITypeScriptResourceInfo;
19
+ }
20
+ //# sourceMappingURL=TypescriptResourceSerializer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypescriptResourceSerializer.d.ts","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Serializers/TypescriptResourceSerializer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAE5E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iDAAiD,CAAC;AAI/F;;;;GAIG;AACH,qBAAa,4BAA6B,YAAW,mBAAmB,CAAC,uBAAuB,CAAC;IAI7F;;;;;;;OAOG;IACI,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,uBAAuB,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC,GAAG,uBAAuB;CAiB5I"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.TypescriptResourceSerializer = void 0;
5
+ const TypeScriptResourceInfo_1 = require("../../Models/TypeScriptResourceInfo");
6
+ // #endregion
7
+ /**
8
+ * A class responsible for serializing an array of transform models into a TypeScript resource format.
9
+ *
10
+ * @public
11
+ */
12
+ class TypescriptResourceSerializer {
13
+ // #region Methods
14
+ /**
15
+ * Serializes an array of transform models into a TypeScript resource.
16
+ *
17
+ * @public
18
+ * @param models - The array of transform models to serialize.
19
+ * @param info - The resource info.
20
+ * @returns An instance of `ITypeScriptResourceInfo` representing the serialized data.
21
+ */
22
+ serialize(models, info) {
23
+ const output = {};
24
+ models.forEach((model) => {
25
+ output[model.key] = model.value;
26
+ });
27
+ return new TypeScriptResourceInfo_1.TypeScriptResourceInfo({
28
+ name: info.name,
29
+ path: info.path,
30
+ locale: info.locale,
31
+ content: () => output
32
+ });
33
+ }
34
+ }
35
+ exports.TypescriptResourceSerializer = TypescriptResourceSerializer;
36
+ //# sourceMappingURL=TypescriptResourceSerializer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypescriptResourceSerializer.js","sourceRoot":"","sources":["../../../../src/Resources/Transformers/Serializers/TypescriptResourceSerializer.ts"],"names":[],"mappings":";AAAA,kBAAkB;;;AAIlB,gFAA6E;AAG7E,aAAa;AAEb;;;;GAIG;AACH,MAAa,4BAA4B;IAErC,kBAAkB;IAElB;;;;;;;OAOG;IACI,SAAS,CAAC,MAA6B,EAAE,IAA+D;QAC3G,MAAM,MAAM,GAA2B,EAAE,CAAC;QAE1C,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACrB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,+CAAsB,CAAC;YAC9B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM;SACxB,CAAC,CAAC;IACP,CAAC;CAIJ;AA7BD,oEA6BC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=DiffService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DiffService.d.ts","sourceRoot":"","sources":["../../src/Services/DiffService.ts"],"names":[],"mappings":""}