@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,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ResourceType = void 0;
4
+ /**
5
+ * `ResourceType` - Enum which describes possible options.
6
+ */
7
+ var ResourceType;
8
+ (function (ResourceType) {
9
+ /**
10
+ * `json` - Represents a json resource.
11
+ */
12
+ ResourceType["Json"] = "json";
13
+ /**
14
+ * `resx` - Represents a resx resource.
15
+ */
16
+ ResourceType["Resx"] = "resx";
17
+ /**
18
+ * `ts` - Represents a typescript resource.
19
+ */
20
+ ResourceType["TypeScript"] = "ts";
21
+ })(ResourceType || (exports.ResourceType = ResourceType = {}));
22
+ (function (ResourceType) {
23
+ /**
24
+ * Gets the resource type from a file path.
25
+ *
26
+ * @param filePath - The file path.
27
+ * @returns The resource type.
28
+ *
29
+ * @throws Error if the resource type is not supported.
30
+ */
31
+ function formFile(filePath) {
32
+ if (filePath.endsWith('.json')) {
33
+ return ResourceType.Json;
34
+ }
35
+ if (filePath.endsWith('.resx')) {
36
+ return ResourceType.Resx;
37
+ }
38
+ if (filePath.endsWith('.ts')) {
39
+ return ResourceType.TypeScript;
40
+ }
41
+ throw new Error(`Resource type not supported: ${filePath}`);
42
+ }
43
+ ResourceType.formFile = formFile;
44
+ })(ResourceType || (exports.ResourceType = ResourceType = {}));
45
+ //# sourceMappingURL=ResourceType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceType.js","sourceRoot":"","sources":["../../../../src/Resources/Models/Interfaces/ResourceType.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,YAiBX;AAjBD,WAAY,YAAY;IAEpB;;OAEG;IACH,6BAAa,CAAA;IAEb;;OAEG;IACH,6BAAa,CAAA;IAEb;;OAEG;IACH,iCAAiB,CAAA;AAErB,CAAC,EAjBW,YAAY,4BAAZ,YAAY,QAiBvB;AAED,WAAiB,YAAY;IAEzB;;;;;;;OAOG;IACH,SAAgB,QAAQ,CAAC,QAAgB;QACrC,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7B,OAAO,YAAY,CAAC,IAAI,CAAC;QAC7B,CAAC;QACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7B,OAAO,YAAY,CAAC,IAAI,CAAC;QAC7B,CAAC;QACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,YAAY,CAAC,UAAU,CAAC;QACnC,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;IAChE,CAAC;IAZe,qBAAQ,WAYvB,CAAA;AAEL,CAAC,EAxBgB,YAAY,4BAAZ,YAAY,QAwB5B"}
@@ -0,0 +1,111 @@
1
+ import { type JSONObject } from '@breadstone-infrastructure/utilities';
2
+ import type { IJsonResourceInfo } from './Interfaces/IJsonResourceInfo';
3
+ import { ResourceType } from './Interfaces/ResourceType';
4
+ import type { ResourceContentFn } from './Interfaces/IResourceInfo';
5
+ /**
6
+ * Represents a json resource.
7
+ *
8
+ * @public
9
+ */
10
+ export declare class JsonResourceInfo implements IJsonResourceInfo {
11
+ private readonly _name;
12
+ private readonly _path;
13
+ private readonly _language;
14
+ private readonly _type;
15
+ private readonly _content;
16
+ private _cacheContent;
17
+ private _isContentResolved;
18
+ /**
19
+ * Constructs a new instance of the `JsonResourceInfo` class.
20
+ *
21
+ * @param resource - The resource information.
22
+ * @public
23
+ */
24
+ constructor(resource?: Partial<IJsonResourceInfo>);
25
+ /**
26
+ * Gets the `data` property.
27
+ *
28
+ * @public
29
+ * @readonly
30
+ */
31
+ get name(): string;
32
+ /**
33
+ * Gets the `data` property.
34
+ *
35
+ * @public
36
+ * @readonly
37
+ */
38
+ get path(): string;
39
+ /**
40
+ * Gets the `data` property.
41
+ *
42
+ * @public
43
+ * @readonly
44
+ */
45
+ get locale(): string;
46
+ /**
47
+ * Gets the `data` property.
48
+ *
49
+ * @public
50
+ * @readonly
51
+ */
52
+ get type(): ResourceType.Json;
53
+ /**
54
+ * Gets the `data` property.
55
+ *
56
+ * @public
57
+ * @readonly
58
+ */
59
+ get content(): ResourceContentFn<JSONObject>;
60
+ /**
61
+ * Gets the `isVirtual` property.
62
+ *
63
+ * @public
64
+ * @readonly
65
+ */
66
+ get isVirtual(): boolean;
67
+ /**
68
+ * Gets the keys of the resource data.
69
+ *
70
+ * @public
71
+ */
72
+ keys(): Array<string>;
73
+ /**
74
+ * Gets the values of the resource data.
75
+ *
76
+ * @public
77
+ */
78
+ values(): Array<string>;
79
+ /**
80
+ * Gets the entries of the resource data.
81
+ *
82
+ * @public
83
+ */
84
+ entries(): Array<[string, string]>;
85
+ /**
86
+ * Clones the current instance.
87
+ *
88
+ * @public
89
+ */
90
+ clone(): this;
91
+ /**
92
+ * Copies the current instance.
93
+ *
94
+ * @public
95
+ */
96
+ copy(resource: Pick<IJsonResourceInfo, 'name' | 'path' | 'locale' | 'type' | 'content' | 'isVirtual'>): this;
97
+ /**
98
+ * Sorts the resource data.
99
+ *
100
+ * @public
101
+ * @param order - The order to sort the resource data.
102
+ */
103
+ sort(order: 'asc' | 'desc'): this;
104
+ /**
105
+ * Converts the resource to a string.
106
+ *
107
+ * @public
108
+ */
109
+ toString(): string;
110
+ }
111
+ //# sourceMappingURL=JsonResourceInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonResourceInfo.d.ts","sourceRoot":"","sources":["../../../src/Resources/Models/JsonResourceInfo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAIpE;;;;GAIG;AACH,qBAAa,gBAAiB,YAAW,iBAAiB;IAItD,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,CAAoB;IAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgC;IACzD,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,kBAAkB,CAAU;IAMpC;;;;;OAKG;gBACgB,QAAQ,GAAE,OAAO,CAAC,iBAAiB,CAAM;IAwB5D;;;;;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,IAAI,CAEnC;IAED;;;;;OAKG;IACH,IAAW,OAAO,IAAI,iBAAiB,CAAC,UAAU,CAAC,CAElD;IAED;;;;;OAKG;IACH,IAAW,SAAS,IAAI,OAAO,CAE9B;IAMD;;;;OAIG;IACI,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC;IAO5B;;;;OAIG;IACI,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IAO9B;;;;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,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,CAAC,GAAG,IAAI;IAInH;;;;;OAKG;IACI,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI;IAoBxC;;;;OAIG;IACI,QAAQ,IAAI,MAAM;CAQ5B"}
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.JsonResourceInfo = void 0;
5
+ const utilities_1 = require("@breadstone-infrastructure/utilities");
6
+ const ResourceType_1 = require("./Interfaces/ResourceType");
7
+ // #endregion
8
+ /**
9
+ * Represents a json resource.
10
+ *
11
+ * @public
12
+ */
13
+ class JsonResourceInfo {
14
+ // #region Fields
15
+ _name;
16
+ _path;
17
+ _language;
18
+ _type;
19
+ _content;
20
+ _cacheContent;
21
+ _isContentResolved;
22
+ // #endregion
23
+ // #region Ctor
24
+ /**
25
+ * Constructs a new instance of the `JsonResourceInfo` class.
26
+ *
27
+ * @param resource - The resource information.
28
+ * @public
29
+ */
30
+ constructor(resource = {}) {
31
+ this._name = resource.name ?? '';
32
+ this._path = resource.path ?? '';
33
+ this._language = resource.locale ?? '';
34
+ this._type = ResourceType_1.ResourceType.Json;
35
+ this._cacheContent = null;
36
+ this._isContentResolved = false;
37
+ this._content = () => {
38
+ if (!this._isContentResolved) {
39
+ const c = resource.content ?? (() => ({}));
40
+ this._isContentResolved = true;
41
+ this._cacheContent = c();
42
+ return this._cacheContent;
43
+ }
44
+ return this._cacheContent ?? {};
45
+ };
46
+ }
47
+ // #endregion
48
+ // #region Properties
49
+ /**
50
+ * Gets the `data` property.
51
+ *
52
+ * @public
53
+ * @readonly
54
+ */
55
+ get name() {
56
+ return this._name;
57
+ }
58
+ /**
59
+ * Gets the `data` property.
60
+ *
61
+ * @public
62
+ * @readonly
63
+ */
64
+ get path() {
65
+ return this._path;
66
+ }
67
+ /**
68
+ * Gets the `data` property.
69
+ *
70
+ * @public
71
+ * @readonly
72
+ */
73
+ get locale() {
74
+ return this._language;
75
+ }
76
+ /**
77
+ * Gets the `data` property.
78
+ *
79
+ * @public
80
+ * @readonly
81
+ */
82
+ get type() {
83
+ return this._type;
84
+ }
85
+ /**
86
+ * Gets the `data` property.
87
+ *
88
+ * @public
89
+ * @readonly
90
+ */
91
+ get content() {
92
+ return this._content;
93
+ }
94
+ /**
95
+ * Gets the `isVirtual` property.
96
+ *
97
+ * @public
98
+ * @readonly
99
+ */
100
+ get isVirtual() {
101
+ return this._path === '' || this._name === '';
102
+ }
103
+ // #endregion
104
+ // #region Methods
105
+ /**
106
+ * Gets the keys of the resource data.
107
+ *
108
+ * @public
109
+ */
110
+ keys() {
111
+ const content = this._content();
112
+ return Object.keys(content)
113
+ .sort((a, b) => a.localeCompare(b));
114
+ }
115
+ /**
116
+ * Gets the values of the resource data.
117
+ *
118
+ * @public
119
+ */
120
+ values() {
121
+ const content = this._content();
122
+ return Object.values(content)
123
+ .map((value) => value);
124
+ }
125
+ /**
126
+ * Gets the entries of the resource data.
127
+ *
128
+ * @public
129
+ */
130
+ entries() {
131
+ const content = this._content();
132
+ return Object.entries(content)
133
+ .map(([key, value]) => [key, value]);
134
+ }
135
+ /**
136
+ * Clones the current instance.
137
+ *
138
+ * @public
139
+ */
140
+ clone() {
141
+ return this.copy(this);
142
+ }
143
+ /**
144
+ * Copies the current instance.
145
+ *
146
+ * @public
147
+ */
148
+ copy(resource) {
149
+ return new JsonResourceInfo(resource);
150
+ }
151
+ /**
152
+ * Sorts the resource data.
153
+ *
154
+ * @public
155
+ * @param order - The order to sort the resource data.
156
+ */
157
+ sort(order) {
158
+ const content = this._content();
159
+ const sortedContent = Object.keys(content)
160
+ .sort((a, b) => {
161
+ if (order === 'asc') {
162
+ return a.localeCompare(b);
163
+ }
164
+ return b.localeCompare(a);
165
+ })
166
+ .reduce((acc, key) => {
167
+ acc[key] = content[key];
168
+ return acc;
169
+ }, {});
170
+ this._cacheContent = sortedContent;
171
+ return this;
172
+ }
173
+ /**
174
+ * Converts the resource to a string.
175
+ *
176
+ * @public
177
+ */
178
+ toString() {
179
+ const content = this._content();
180
+ return utilities_1.Json.from(content).toString();
181
+ }
182
+ }
183
+ exports.JsonResourceInfo = JsonResourceInfo;
184
+ //# sourceMappingURL=JsonResourceInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonResourceInfo.js","sourceRoot":"","sources":["../../../src/Resources/Models/JsonResourceInfo.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ import { type IResxEntry } from '@breadstone-infrastructure/utilities';
2
+ import { ResourceType } from './Interfaces/ResourceType';
3
+ import type { IResxResourceInfo } from './Interfaces/IResxResourceInfo';
4
+ import type { ResourceContentFn } from './Interfaces/IResourceInfo';
5
+ /**
6
+ * Represents a resx resource.
7
+ *
8
+ * @public
9
+ */
10
+ export declare class ResxResourceInfo implements IResxResourceInfo {
11
+ private readonly _name;
12
+ private readonly _path;
13
+ private readonly _language;
14
+ private readonly _type;
15
+ private readonly _content;
16
+ private _cacheContent;
17
+ /**
18
+ * Constructs a new instance of the `ResxResourceInfo` class.
19
+ *
20
+ * @param resource - The resource information.
21
+ * @public
22
+ */
23
+ constructor(resource?: Partial<IResxResourceInfo>);
24
+ /**
25
+ * Gets the `data` property.
26
+ *
27
+ * @public
28
+ * @readonly
29
+ */
30
+ get name(): string;
31
+ /**
32
+ * Gets the `data` property.
33
+ *
34
+ * @public
35
+ * @readonly
36
+ */
37
+ get path(): string;
38
+ /**
39
+ * Gets the `data` property.
40
+ *
41
+ * @public
42
+ * @readonly
43
+ */
44
+ get locale(): string;
45
+ /**
46
+ * Gets the `data` property.
47
+ *
48
+ * @public
49
+ * @readonly
50
+ */
51
+ get type(): ResourceType.Resx;
52
+ /**
53
+ * Gets the `content` property.
54
+ *
55
+ * @public
56
+ * @readonly
57
+ */
58
+ get content(): ResourceContentFn<Array<IResxEntry>>;
59
+ /**
60
+ * Gets the `isVirtual` property.
61
+ *
62
+ * @public
63
+ * @readonly
64
+ */
65
+ get isVirtual(): boolean;
66
+ /**
67
+ * Gets the keys of the resource.
68
+ *
69
+ * @public
70
+ */
71
+ keys(): Array<string>;
72
+ /**
73
+ * Gets the values of the resource.
74
+ *
75
+ * @public
76
+ */
77
+ values(): Array<string>;
78
+ /**
79
+ * Gets the entries of the resource.
80
+ *
81
+ * @public
82
+ */
83
+ entries(): Array<[string, string]>;
84
+ /**
85
+ * Clones the current instance.
86
+ *
87
+ * @public
88
+ */
89
+ clone(): this;
90
+ /**
91
+ * Copies the current instance.
92
+ *
93
+ * @public
94
+ */
95
+ copy(resource: Pick<IResxResourceInfo, 'name' | 'path' | 'locale' | 'type' | 'content' | 'isVirtual'>): this;
96
+ /**
97
+ * Sorts the resource data.
98
+ *
99
+ * @public
100
+ * @param order - The order to sort the data.
101
+ */
102
+ sort(order: 'asc' | 'desc'): this;
103
+ /**
104
+ * Converts the resource to a string.
105
+ *
106
+ * @public
107
+ */
108
+ toString(): string;
109
+ }
110
+ //# sourceMappingURL=ResxResourceInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResxResourceInfo.d.ts","sourceRoot":"","sources":["../../../src/Resources/Models/ResxResourceInfo.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAIpE;;;;GAIG;AACH,qBAAa,gBAAiB,YAAW,iBAAiB;IAItD,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,CAAoB;IAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;IAChE,OAAO,CAAC,aAAa,CAA2B;IAMhD;;;;;OAKG;gBACgB,QAAQ,GAAE,OAAO,CAAC,iBAAiB,CAAM;IAoB5D;;;;;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,IAAI,CAEnC;IAED;;;;;OAKG;IACH,IAAW,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAEzD;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,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,CAAC,GAAG,IAAI;IAInH;;;;;OAKG;IACI,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI;IAYxC;;;;OAIG;IACI,QAAQ,IAAI,MAAM;CAQ5B"}
@@ -0,0 +1,171 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ResxResourceInfo = void 0;
5
+ const utilities_1 = require("@breadstone-infrastructure/utilities");
6
+ const ResourceType_1 = require("./Interfaces/ResourceType");
7
+ // #endregion
8
+ /**
9
+ * Represents a resx resource.
10
+ *
11
+ * @public
12
+ */
13
+ class ResxResourceInfo {
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 `ResxResourceInfo` 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.Resx;
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 `content` 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
+ * Gets the keys of the resource.
103
+ *
104
+ * @public
105
+ */
106
+ keys() {
107
+ const content = this._content();
108
+ return content.map((entry) => entry.key);
109
+ }
110
+ /**
111
+ * Gets the values of the resource.
112
+ *
113
+ * @public
114
+ */
115
+ values() {
116
+ const content = this._content();
117
+ return content.map((entry) => entry.value);
118
+ }
119
+ /**
120
+ * Gets the entries of the resource.
121
+ *
122
+ * @public
123
+ */
124
+ entries() {
125
+ const content = this._content();
126
+ return content
127
+ .map((entry) => [entry.key, entry.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 ResxResourceInfo(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 sortedContent = content.sort((a, b) => {
154
+ const comparison = a.key.localeCompare(b.key);
155
+ return order === 'asc' ? comparison : -comparison;
156
+ });
157
+ this._cacheContent = sortedContent;
158
+ return this;
159
+ }
160
+ /**
161
+ * Converts the resource to a string.
162
+ *
163
+ * @public
164
+ */
165
+ toString() {
166
+ const content = this._content();
167
+ return utilities_1.Resx.from(content).toString();
168
+ }
169
+ }
170
+ exports.ResxResourceInfo = ResxResourceInfo;
171
+ //# sourceMappingURL=ResxResourceInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResxResourceInfo.js","sourceRoot":"","sources":["../../../src/Resources/Models/ResxResourceInfo.ts"],"names":[],"mappings":"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"}