@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.
- package/Detectors/Abstracts/BaseDetector.d.ts +81 -0
- package/Detectors/Abstracts/BaseDetector.d.ts.map +1 -0
- package/Detectors/Abstracts/BaseDetector.js +137 -0
- package/Detectors/Abstracts/BaseDetector.js.map +1 -0
- package/Detectors/AngularHTMLDetector.d.ts +94 -0
- package/Detectors/AngularHTMLDetector.d.ts.map +1 -0
- package/Detectors/AngularHTMLDetector.js +123 -0
- package/Detectors/AngularHTMLDetector.js.map +1 -0
- package/Detectors/Interfaces/IDetector.d.ts +73 -0
- package/Detectors/Interfaces/IDetector.d.ts.map +1 -0
- package/Detectors/Interfaces/IDetector.js +12 -0
- package/Detectors/Interfaces/IDetector.js.map +1 -0
- package/Detectors/JSXDetector.d.ts +69 -0
- package/Detectors/JSXDetector.d.ts.map +1 -0
- package/Detectors/JSXDetector.js +101 -0
- package/Detectors/JSXDetector.js.map +1 -0
- package/Detectors/JavaScriptDetector.d.ts +74 -0
- package/Detectors/JavaScriptDetector.d.ts.map +1 -0
- package/Detectors/JavaScriptDetector.js +106 -0
- package/Detectors/JavaScriptDetector.js.map +1 -0
- package/Detectors/TSXDetector.d.ts +76 -0
- package/Detectors/TSXDetector.d.ts.map +1 -0
- package/Detectors/TSXDetector.js +101 -0
- package/Detectors/TSXDetector.js.map +1 -0
- package/Detectors/TypeScriptDetector.d.ts +76 -0
- package/Detectors/TypeScriptDetector.d.ts.map +1 -0
- package/Detectors/TypeScriptDetector.js +102 -0
- package/Detectors/TypeScriptDetector.js.map +1 -0
- package/Detectors/Utils.d.ts +41 -0
- package/Detectors/Utils.d.ts.map +1 -0
- package/Detectors/Utils.js +62 -0
- package/Detectors/Utils.js.map +1 -0
- package/Detectors/VueDetector.d.ts +60 -0
- package/Detectors/VueDetector.d.ts.map +1 -0
- package/Detectors/VueDetector.js +108 -0
- package/Detectors/VueDetector.js.map +1 -0
- package/Formatters/Formatters.d.ts +15 -0
- package/Formatters/Formatters.d.ts.map +1 -0
- package/Formatters/Formatters.js +34 -0
- package/Formatters/Formatters.js.map +1 -0
- package/Formatters/Interfaces/IFormatter.d.ts +24 -0
- package/Formatters/Interfaces/IFormatter.d.ts.map +1 -0
- package/Formatters/Interfaces/IFormatter.js +3 -0
- package/Formatters/Interfaces/IFormatter.js.map +1 -0
- package/Formatters/JsonFormatter.d.ts +26 -0
- package/Formatters/JsonFormatter.d.ts.map +1 -0
- package/Formatters/JsonFormatter.js +42 -0
- package/Formatters/JsonFormatter.js.map +1 -0
- package/Formatters/ResxFormatter.d.ts +26 -0
- package/Formatters/ResxFormatter.d.ts.map +1 -0
- package/Formatters/ResxFormatter.js +53 -0
- package/Formatters/ResxFormatter.js.map +1 -0
- package/Index.d.ts +57 -0
- package/Index.d.ts.map +1 -0
- package/Index.js +86 -0
- package/Index.js.map +1 -0
- package/LICENSE +21 -0
- package/Presets/AngularPreset.d.ts +38 -0
- package/Presets/AngularPreset.d.ts.map +1 -0
- package/Presets/AngularPreset.js +59 -0
- package/Presets/AngularPreset.js.map +1 -0
- package/Presets/Interfaces/IFrameworkPreset.d.ts +28 -0
- package/Presets/Interfaces/IFrameworkPreset.d.ts.map +1 -0
- package/Presets/Interfaces/IFrameworkPreset.js +4 -0
- package/Presets/Interfaces/IFrameworkPreset.js.map +1 -0
- package/Presets/LitPreset.d.ts +38 -0
- package/Presets/LitPreset.d.ts.map +1 -0
- package/Presets/LitPreset.js +57 -0
- package/Presets/LitPreset.js.map +1 -0
- package/Presets/Presets.d.ts +25 -0
- package/Presets/Presets.d.ts.map +1 -0
- package/Presets/Presets.js +50 -0
- package/Presets/Presets.js.map +1 -0
- package/Presets/ReactPreset.d.ts +38 -0
- package/Presets/ReactPreset.d.ts.map +1 -0
- package/Presets/ReactPreset.js +61 -0
- package/Presets/ReactPreset.js.map +1 -0
- package/Presets/StencilPreset.d.ts +38 -0
- package/Presets/StencilPreset.d.ts.map +1 -0
- package/Presets/StencilPreset.js +59 -0
- package/Presets/StencilPreset.js.map +1 -0
- package/Presets/VuePreset.d.ts +38 -0
- package/Presets/VuePreset.d.ts.map +1 -0
- package/Presets/VuePreset.js +60 -0
- package/Presets/VuePreset.js.map +1 -0
- package/Resources/Analyzers/ResourceAnalyzer.d.ts +58 -0
- package/Resources/Analyzers/ResourceAnalyzer.d.ts.map +1 -0
- package/Resources/Analyzers/ResourceAnalyzer.js +119 -0
- package/Resources/Analyzers/ResourceAnalyzer.js.map +1 -0
- package/Resources/Analyzers/Tasks/DuplicateKeysTask.d.ts +31 -0
- package/Resources/Analyzers/Tasks/DuplicateKeysTask.d.ts.map +1 -0
- package/Resources/Analyzers/Tasks/DuplicateKeysTask.js +40 -0
- package/Resources/Analyzers/Tasks/DuplicateKeysTask.js.map +1 -0
- package/Resources/Analyzers/Tasks/EmptyValuesTask.d.ts +31 -0
- package/Resources/Analyzers/Tasks/EmptyValuesTask.d.ts.map +1 -0
- package/Resources/Analyzers/Tasks/EmptyValuesTask.js +41 -0
- package/Resources/Analyzers/Tasks/EmptyValuesTask.js.map +1 -0
- package/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask.d.ts +36 -0
- package/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask.d.ts.map +1 -0
- package/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask.js +4 -0
- package/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask.js.map +1 -0
- package/Resources/Analyzers/Tasks/KeyConsistencyTask.d.ts +35 -0
- package/Resources/Analyzers/Tasks/KeyConsistencyTask.d.ts.map +1 -0
- package/Resources/Analyzers/Tasks/KeyConsistencyTask.js +67 -0
- package/Resources/Analyzers/Tasks/KeyConsistencyTask.js.map +1 -0
- package/Resources/Analyzers/Tasks/MissingTranslationsTask.d.ts +31 -0
- package/Resources/Analyzers/Tasks/MissingTranslationsTask.d.ts.map +1 -0
- package/Resources/Analyzers/Tasks/MissingTranslationsTask.js +44 -0
- package/Resources/Analyzers/Tasks/MissingTranslationsTask.js.map +1 -0
- package/Resources/Analyzers/Tasks/MultipleKeyUsageTask.d.ts +31 -0
- package/Resources/Analyzers/Tasks/MultipleKeyUsageTask.d.ts.map +1 -0
- package/Resources/Analyzers/Tasks/MultipleKeyUsageTask.js +48 -0
- package/Resources/Analyzers/Tasks/MultipleKeyUsageTask.js.map +1 -0
- package/Resources/Analyzers/Tasks/UnusedKeysTask.d.ts +31 -0
- package/Resources/Analyzers/Tasks/UnusedKeysTask.d.ts.map +1 -0
- package/Resources/Analyzers/Tasks/UnusedKeysTask.js +49 -0
- package/Resources/Analyzers/Tasks/UnusedKeysTask.js.map +1 -0
- package/Resources/Models/Interfaces/IJsonResourceInfo.d.ts +12 -0
- package/Resources/Models/Interfaces/IJsonResourceInfo.d.ts.map +1 -0
- package/Resources/Models/Interfaces/IJsonResourceInfo.js +4 -0
- package/Resources/Models/Interfaces/IJsonResourceInfo.js.map +1 -0
- package/Resources/Models/Interfaces/IResourceInfo.d.ts +71 -0
- package/Resources/Models/Interfaces/IResourceInfo.d.ts.map +1 -0
- package/Resources/Models/Interfaces/IResourceInfo.js +4 -0
- package/Resources/Models/Interfaces/IResourceInfo.js.map +1 -0
- package/Resources/Models/Interfaces/IResourceModel.d.ts +41 -0
- package/Resources/Models/Interfaces/IResourceModel.d.ts.map +1 -0
- package/Resources/Models/Interfaces/IResourceModel.js +25 -0
- package/Resources/Models/Interfaces/IResourceModel.js.map +1 -0
- package/Resources/Models/Interfaces/IResxResourceInfo.d.ts +12 -0
- package/Resources/Models/Interfaces/IResxResourceInfo.d.ts.map +1 -0
- package/Resources/Models/Interfaces/IResxResourceInfo.js +4 -0
- package/Resources/Models/Interfaces/IResxResourceInfo.js.map +1 -0
- package/Resources/Models/Interfaces/ITypeScriptResourceInfo.d.ts +11 -0
- package/Resources/Models/Interfaces/ITypeScriptResourceInfo.d.ts.map +1 -0
- package/Resources/Models/Interfaces/ITypeScriptResourceInfo.js +4 -0
- package/Resources/Models/Interfaces/ITypeScriptResourceInfo.js.map +1 -0
- package/Resources/Models/Interfaces/ResourceType.d.ts +29 -0
- package/Resources/Models/Interfaces/ResourceType.d.ts.map +1 -0
- package/Resources/Models/Interfaces/ResourceType.js +45 -0
- package/Resources/Models/Interfaces/ResourceType.js.map +1 -0
- package/Resources/Models/JsonResourceInfo.d.ts +111 -0
- package/Resources/Models/JsonResourceInfo.d.ts.map +1 -0
- package/Resources/Models/JsonResourceInfo.js +184 -0
- package/Resources/Models/JsonResourceInfo.js.map +1 -0
- package/Resources/Models/ResxResourceInfo.d.ts +110 -0
- package/Resources/Models/ResxResourceInfo.d.ts.map +1 -0
- package/Resources/Models/ResxResourceInfo.js +171 -0
- package/Resources/Models/ResxResourceInfo.js.map +1 -0
- package/Resources/Models/TypeScriptResourceInfo.d.ts +109 -0
- package/Resources/Models/TypeScriptResourceInfo.d.ts.map +1 -0
- package/Resources/Models/TypeScriptResourceInfo.js +244 -0
- package/Resources/Models/TypeScriptResourceInfo.js.map +1 -0
- package/Resources/ResourceFactory.d.ts +39 -0
- package/Resources/ResourceFactory.d.ts.map +1 -0
- package/Resources/ResourceFactory.js +102 -0
- package/Resources/ResourceFactory.js.map +1 -0
- package/Resources/ResourceMode.d.ts +14 -0
- package/Resources/ResourceMode.d.ts.map +1 -0
- package/Resources/ResourceMode.js +18 -0
- package/Resources/ResourceMode.js.map +1 -0
- package/Resources/ResourceProcessor.d.ts +66 -0
- package/Resources/ResourceProcessor.d.ts.map +1 -0
- package/Resources/ResourceProcessor.js +90 -0
- package/Resources/ResourceProcessor.js.map +1 -0
- package/Resources/Scanners/Adapter/Interfaces/IScannerAdapter.d.ts +17 -0
- package/Resources/Scanners/Adapter/Interfaces/IScannerAdapter.d.ts.map +1 -0
- package/Resources/Scanners/Adapter/Interfaces/IScannerAdapter.js +4 -0
- package/Resources/Scanners/Adapter/Interfaces/IScannerAdapter.js.map +1 -0
- package/Resources/Scanners/Adapter/JsonScannerAdapter.d.ts +28 -0
- package/Resources/Scanners/Adapter/JsonScannerAdapter.d.ts.map +1 -0
- package/Resources/Scanners/Adapter/JsonScannerAdapter.js +62 -0
- package/Resources/Scanners/Adapter/JsonScannerAdapter.js.map +1 -0
- package/Resources/Scanners/Adapter/ResxScannerAdapter.d.ts +28 -0
- package/Resources/Scanners/Adapter/ResxScannerAdapter.d.ts.map +1 -0
- package/Resources/Scanners/Adapter/ResxScannerAdapter.js +62 -0
- package/Resources/Scanners/Adapter/ResxScannerAdapter.js.map +1 -0
- package/Resources/Scanners/ResourceScanner.d.ts +32 -0
- package/Resources/Scanners/ResourceScanner.d.ts.map +1 -0
- package/Resources/Scanners/ResourceScanner.js +59 -0
- package/Resources/Scanners/ResourceScanner.js.map +1 -0
- package/Resources/Sorting/ResourceSorter.d.ts +46 -0
- package/Resources/Sorting/ResourceSorter.d.ts.map +1 -0
- package/Resources/Sorting/ResourceSorter.js +82 -0
- package/Resources/Sorting/ResourceSorter.js.map +1 -0
- package/Resources/Transformers/Adapters/Abstracts/BaseResourceTransformerAdapter.d.ts +20 -0
- package/Resources/Transformers/Adapters/Abstracts/BaseResourceTransformerAdapter.d.ts.map +1 -0
- package/Resources/Transformers/Adapters/Abstracts/BaseResourceTransformerAdapter.js +15 -0
- package/Resources/Transformers/Adapters/Abstracts/BaseResourceTransformerAdapter.js.map +1 -0
- package/Resources/Transformers/Adapters/Interfaces/IResourceTransformerAdapter.d.ts +11 -0
- package/Resources/Transformers/Adapters/Interfaces/IResourceTransformerAdapter.d.ts.map +1 -0
- package/Resources/Transformers/Adapters/Interfaces/IResourceTransformerAdapter.js +4 -0
- package/Resources/Transformers/Adapters/Interfaces/IResourceTransformerAdapter.js.map +1 -0
- package/Resources/Transformers/Adapters/JsonResourceTransformerAdapter.d.ts +26 -0
- package/Resources/Transformers/Adapters/JsonResourceTransformerAdapter.d.ts.map +1 -0
- package/Resources/Transformers/Adapters/JsonResourceTransformerAdapter.js +64 -0
- package/Resources/Transformers/Adapters/JsonResourceTransformerAdapter.js.map +1 -0
- package/Resources/Transformers/Adapters/ResxResourceTransformerAdapter.d.ts +19 -0
- package/Resources/Transformers/Adapters/ResxResourceTransformerAdapter.d.ts.map +1 -0
- package/Resources/Transformers/Adapters/ResxResourceTransformerAdapter.js +30 -0
- package/Resources/Transformers/Adapters/ResxResourceTransformerAdapter.js.map +1 -0
- package/Resources/Transformers/Interfaces/IResourceTransformerResult.d.ts +11 -0
- package/Resources/Transformers/Interfaces/IResourceTransformerResult.d.ts.map +1 -0
- package/Resources/Transformers/Interfaces/IResourceTransformerResult.js +4 -0
- package/Resources/Transformers/Interfaces/IResourceTransformerResult.js.map +1 -0
- package/Resources/Transformers/ResourceTransformer.d.ts +74 -0
- package/Resources/Transformers/ResourceTransformer.d.ts.map +1 -0
- package/Resources/Transformers/ResourceTransformer.js +112 -0
- package/Resources/Transformers/ResourceTransformer.js.map +1 -0
- package/Resources/Transformers/Serializers/Interfaces/IResourceSerializer.d.ts +9 -0
- package/Resources/Transformers/Serializers/Interfaces/IResourceSerializer.d.ts.map +1 -0
- package/Resources/Transformers/Serializers/Interfaces/IResourceSerializer.js +4 -0
- package/Resources/Transformers/Serializers/Interfaces/IResourceSerializer.js.map +1 -0
- package/Resources/Transformers/Serializers/JsonResourceSerializer.d.ts +20 -0
- package/Resources/Transformers/Serializers/JsonResourceSerializer.d.ts.map +1 -0
- package/Resources/Transformers/Serializers/JsonResourceSerializer.js +47 -0
- package/Resources/Transformers/Serializers/JsonResourceSerializer.js.map +1 -0
- package/Resources/Transformers/Serializers/ResxResourceSerializer.d.ts +20 -0
- package/Resources/Transformers/Serializers/ResxResourceSerializer.d.ts.map +1 -0
- package/Resources/Transformers/Serializers/ResxResourceSerializer.js +36 -0
- package/Resources/Transformers/Serializers/ResxResourceSerializer.js.map +1 -0
- package/Resources/Transformers/Serializers/TypescriptResourceSerializer.d.ts +20 -0
- package/Resources/Transformers/Serializers/TypescriptResourceSerializer.d.ts.map +1 -0
- package/Resources/Transformers/Serializers/TypescriptResourceSerializer.js +36 -0
- package/Resources/Transformers/Serializers/TypescriptResourceSerializer.js.map +1 -0
- package/Services/DiffService.d.ts +1 -0
- package/Services/DiffService.d.ts.map +1 -0
- package/Services/DiffService.js +86 -0
- package/Services/DiffService.js.map +1 -0
- package/Services/KeyGenerator.d.ts +21 -0
- package/Services/KeyGenerator.d.ts.map +1 -0
- package/Services/KeyGenerator.js +34 -0
- package/Services/KeyGenerator.js.map +1 -0
- package/Services/LocalizationProcessor.d.ts +83 -0
- package/Services/LocalizationProcessor.d.ts.map +1 -0
- package/Services/LocalizationProcessor.js +90 -0
- package/Services/LocalizationProcessor.js.map +1 -0
- package/package.json +19 -0
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// #region Imports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.StencilPreset = void 0;
|
|
5
|
+
const TSXDetector_js_1 = require("../Detectors/TSXDetector.js");
|
|
6
|
+
const TypeScriptDetector_js_1 = require("../Detectors/TypeScriptDetector.js");
|
|
7
|
+
// #endregion
|
|
8
|
+
/**
|
|
9
|
+
* Preset for Stencil.js applications.
|
|
10
|
+
*
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
class StencilPreset {
|
|
14
|
+
// #region Fields
|
|
15
|
+
_parsers;
|
|
16
|
+
// #endregion
|
|
17
|
+
// #region Ctor
|
|
18
|
+
/**
|
|
19
|
+
* Constructs a new instance of the `StencilPreset` class.
|
|
20
|
+
*
|
|
21
|
+
* @public
|
|
22
|
+
* @param logger - The logger.
|
|
23
|
+
*/
|
|
24
|
+
constructor(logger) {
|
|
25
|
+
this._parsers = {
|
|
26
|
+
'.tsx': new TSXDetector_js_1.TSXDetector(logger),
|
|
27
|
+
'.ts': new TypeScriptDetector_js_1.TypeScriptDetector(logger)
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
// #endregion
|
|
31
|
+
// #region Methods
|
|
32
|
+
/**
|
|
33
|
+
* Returns parsers mapped to file extensions.
|
|
34
|
+
*
|
|
35
|
+
* @returns A mapping of file extensions to parsers.
|
|
36
|
+
*/
|
|
37
|
+
getParsers() {
|
|
38
|
+
return this._parsers;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Returns a parser for a specific file extension.
|
|
42
|
+
*
|
|
43
|
+
* @param extension - The file extension.
|
|
44
|
+
* @returns The parser.
|
|
45
|
+
*/
|
|
46
|
+
getParser(extension) {
|
|
47
|
+
return this._parsers[extension];
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Returns the extensions supported by the preset.
|
|
51
|
+
*
|
|
52
|
+
* @returns An array of supported extensions.
|
|
53
|
+
*/
|
|
54
|
+
getExtensions() {
|
|
55
|
+
return Object.keys(this._parsers);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
exports.StencilPreset = StencilPreset;
|
|
59
|
+
//# sourceMappingURL=StencilPreset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StencilPreset.js","sourceRoot":"","sources":["../../src/Presets/StencilPreset.ts"],"names":[],"mappings":";AAAA,kBAAkB;;;AAIlB,gEAA0D;AAC1D,8EAAwE;AAGxE,aAAa;AAEb;;;;GAIG;AACH,MAAa,aAAa;IAEtB,iBAAiB;IAEA,QAAQ,CAA4B;IAErD,aAAa;IAEb,eAAe;IAEf;;;;;OAKG;IACH,YAAmB,MAAe;QAC9B,IAAI,CAAC,QAAQ,GAAG;YACZ,MAAM,EAAE,IAAI,4BAAW,CAAC,MAAM,CAAC;YAC/B,KAAK,EAAE,IAAI,0CAAkB,CAAC,MAAM,CAAC;SACxC,CAAC;IACN,CAAC;IAED,aAAa;IAEb,kBAAkB;IAElB;;;;OAIG;IACI,UAAU;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACI,SAAS,CAAC,SAAiB;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACI,aAAa;QAChB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;CAIJ;AAzDD,sCAyDC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { IFrameworkPreset } from './Interfaces/IFrameworkPreset.js';
|
|
2
|
+
import type { IDetector } from '../Detectors/Interfaces/IDetector.js';
|
|
3
|
+
import type { ILogger } from '@breadstone-infrastructure/utilities';
|
|
4
|
+
/**
|
|
5
|
+
* Preset for Vue applications.
|
|
6
|
+
*
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
export declare class VuePreset implements IFrameworkPreset {
|
|
10
|
+
private readonly _parsers;
|
|
11
|
+
/**
|
|
12
|
+
* Constructs a new instance of the `VuePreset` class.
|
|
13
|
+
*
|
|
14
|
+
* @public
|
|
15
|
+
* @param logger - The logger.
|
|
16
|
+
*/
|
|
17
|
+
constructor(logger: ILogger);
|
|
18
|
+
/**
|
|
19
|
+
* Returns parsers mapped to file extensions.
|
|
20
|
+
*
|
|
21
|
+
* @returns A mapping of file extensions to parsers.
|
|
22
|
+
*/
|
|
23
|
+
getParsers(): Record<string, IDetector>;
|
|
24
|
+
/**
|
|
25
|
+
* Returns a parser for a specific file extension.
|
|
26
|
+
*
|
|
27
|
+
* @param extension - The file extension.
|
|
28
|
+
* @returns The parser.
|
|
29
|
+
*/
|
|
30
|
+
getParser(extension: string): IDetector;
|
|
31
|
+
/**
|
|
32
|
+
* Returns the extensions supported by the preset.
|
|
33
|
+
*
|
|
34
|
+
* @returns An array of supported extensions.
|
|
35
|
+
*/
|
|
36
|
+
getExtensions(): Array<string>;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=VuePreset.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VuePreset.d.ts","sourceRoot":"","sources":["../../src/Presets/VuePreset.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AAGtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sCAAsC,CAAC;AAIpE;;;;GAIG;AACH,qBAAa,SAAU,YAAW,gBAAgB;IAI9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;IAMrD;;;;;OAKG;gBACgB,MAAM,EAAE,OAAO;IAYlC;;;;OAIG;IACI,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;IAI9C;;;;;OAKG;IACI,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS;IAI9C;;;;OAIG;IACI,aAAa,IAAI,KAAK,CAAC,MAAM,CAAC;CAMxC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// #region Imports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.VuePreset = void 0;
|
|
5
|
+
const TypeScriptDetector_js_1 = require("../Detectors/TypeScriptDetector.js");
|
|
6
|
+
const VueDetector_js_1 = require("../Detectors/VueDetector.js");
|
|
7
|
+
// #endregion
|
|
8
|
+
/**
|
|
9
|
+
* Preset for Vue applications.
|
|
10
|
+
*
|
|
11
|
+
* @public
|
|
12
|
+
*/
|
|
13
|
+
class VuePreset {
|
|
14
|
+
// #region Fields
|
|
15
|
+
_parsers;
|
|
16
|
+
// #endregion
|
|
17
|
+
// #region Ctor
|
|
18
|
+
/**
|
|
19
|
+
* Constructs a new instance of the `VuePreset` class.
|
|
20
|
+
*
|
|
21
|
+
* @public
|
|
22
|
+
* @param logger - The logger.
|
|
23
|
+
*/
|
|
24
|
+
constructor(logger) {
|
|
25
|
+
this._parsers = {
|
|
26
|
+
'.vue': new VueDetector_js_1.VueDetector(logger),
|
|
27
|
+
'.ts': new TypeScriptDetector_js_1.TypeScriptDetector(logger),
|
|
28
|
+
'.js': new TypeScriptDetector_js_1.TypeScriptDetector(logger)
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
// #endregion
|
|
32
|
+
// #region Methods
|
|
33
|
+
/**
|
|
34
|
+
* Returns parsers mapped to file extensions.
|
|
35
|
+
*
|
|
36
|
+
* @returns A mapping of file extensions to parsers.
|
|
37
|
+
*/
|
|
38
|
+
getParsers() {
|
|
39
|
+
return this._parsers;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Returns a parser for a specific file extension.
|
|
43
|
+
*
|
|
44
|
+
* @param extension - The file extension.
|
|
45
|
+
* @returns The parser.
|
|
46
|
+
*/
|
|
47
|
+
getParser(extension) {
|
|
48
|
+
return this._parsers[extension];
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Returns the extensions supported by the preset.
|
|
52
|
+
*
|
|
53
|
+
* @returns An array of supported extensions.
|
|
54
|
+
*/
|
|
55
|
+
getExtensions() {
|
|
56
|
+
return Object.keys(this._parsers);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.VuePreset = VuePreset;
|
|
60
|
+
//# sourceMappingURL=VuePreset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VuePreset.js","sourceRoot":"","sources":["../../src/Presets/VuePreset.ts"],"names":[],"mappings":";AAAA,kBAAkB;;;AAIlB,8EAAwE;AACxE,gEAA0D;AAG1D,aAAa;AAEb;;;;GAIG;AACH,MAAa,SAAS;IAElB,iBAAiB;IAEA,QAAQ,CAA4B;IAErD,aAAa;IAEb,eAAe;IAEf;;;;;OAKG;IACH,YAAmB,MAAe;QAC9B,IAAI,CAAC,QAAQ,GAAG;YACZ,MAAM,EAAE,IAAI,4BAAW,CAAC,MAAM,CAAC;YAC/B,KAAK,EAAE,IAAI,0CAAkB,CAAC,MAAM,CAAC;YACrC,KAAK,EAAE,IAAI,0CAAkB,CAAC,MAAM,CAAC;SACxC,CAAC;IACN,CAAC;IAED,aAAa;IAEb,kBAAkB;IAElB;;;;OAIG;IACI,UAAU;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACI,SAAS,CAAC,SAAiB;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACI,aAAa;QAChB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;CAIJ;AA1DD,8BA0DC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { type ILogger } from '@breadstone-infrastructure/utilities';
|
|
2
|
+
import type { IAnalyzerTask, IAnalyzerTaskExecutionContext, IAnalyzerTaskResult } from './Tasks/Interfaces/IAnalyzerTask';
|
|
3
|
+
/**
|
|
4
|
+
* The `ResourceAnalyzer` class, responsible for managing and executing analyzer tasks.
|
|
5
|
+
*
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
export declare class ResourceAnalyzer {
|
|
9
|
+
private readonly _logger;
|
|
10
|
+
private readonly _tasks;
|
|
11
|
+
/**
|
|
12
|
+
* Constructs a new instance of the `ResourceAnalyzer` class.
|
|
13
|
+
*
|
|
14
|
+
* @public
|
|
15
|
+
*/
|
|
16
|
+
constructor(logger: ILogger);
|
|
17
|
+
/**
|
|
18
|
+
* Registers a new analyzer task.
|
|
19
|
+
*
|
|
20
|
+
* @param name - The name of the task.
|
|
21
|
+
* @param task - The task instance.
|
|
22
|
+
* @throws Error if the task name is already registered.
|
|
23
|
+
*/
|
|
24
|
+
registerTask(name: string, task: IAnalyzerTask): void;
|
|
25
|
+
/**
|
|
26
|
+
* Unregisters an analyzer task.
|
|
27
|
+
*
|
|
28
|
+
* @param name - The name of the task to unregister.
|
|
29
|
+
* @returns `true` if the task was successfully unregistered; otherwise, `false`.
|
|
30
|
+
*/
|
|
31
|
+
unregisterTask(name: string): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Executes the specified analyzer task.
|
|
34
|
+
*
|
|
35
|
+
* @public
|
|
36
|
+
* @param name - The name of the task to execute.
|
|
37
|
+
* @param context - The execution context containing resources and additional parameters.
|
|
38
|
+
* @returns The result of the task execution.
|
|
39
|
+
* @throws Error if the task is not registered.
|
|
40
|
+
*/
|
|
41
|
+
executeTask(name: string, context: IAnalyzerTaskExecutionContext): IAnalyzerTaskResult;
|
|
42
|
+
/**
|
|
43
|
+
* Executes all registered tasks.
|
|
44
|
+
*
|
|
45
|
+
* @public
|
|
46
|
+
* @param context - The execution context containing resources and additional parameters.
|
|
47
|
+
* @returns An array of task results.
|
|
48
|
+
*/
|
|
49
|
+
executeAllTasks(context: IAnalyzerTaskExecutionContext): Array<IAnalyzerTaskResult>;
|
|
50
|
+
/**
|
|
51
|
+
* Lists all registered tasks.
|
|
52
|
+
*
|
|
53
|
+
* @public
|
|
54
|
+
* @returns An array of registered task names.
|
|
55
|
+
*/
|
|
56
|
+
listTasks(): Array<string>;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=ResourceAnalyzer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResourceAnalyzer.d.ts","sourceRoot":"","sources":["../../../src/Resources/Analyzers/ResourceAnalyzer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAQ,KAAK,OAAO,EAAsB,MAAM,sCAAsC,CAAC;AAG9F,OAAO,KAAK,EAAE,aAAa,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAQ1H;;;;GAIG;AACH,qBAAa,gBAAgB;IAIzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;IAMpD;;;;OAIG;gBACgB,MAAM,EAAE,OAAO;IAiBlC;;;;;;OAMG;IACI,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI;IAO5D;;;;;OAKG;IACI,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI5C;;;;;;;;OAQG;IACI,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,6BAA6B,GAAG,mBAAmB;IAe7F;;;;;;OAMG;IACI,eAAe,CAAC,OAAO,EAAE,6BAA6B,GAAG,KAAK,CAAC,mBAAmB,CAAC;IAwB1F;;;;;OAKG;IACI,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC;CAMpC"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// #region Imports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ResourceAnalyzer = void 0;
|
|
5
|
+
const utilities_1 = require("@breadstone-infrastructure/utilities");
|
|
6
|
+
const DuplicateKeysTask_1 = require("./Tasks/DuplicateKeysTask");
|
|
7
|
+
const EmptyValuesTask_1 = require("./Tasks/EmptyValuesTask");
|
|
8
|
+
const KeyConsistencyTask_1 = require("./Tasks/KeyConsistencyTask");
|
|
9
|
+
const MissingTranslationsTask_1 = require("./Tasks/MissingTranslationsTask");
|
|
10
|
+
const MultipleKeyUsageTask_1 = require("./Tasks/MultipleKeyUsageTask");
|
|
11
|
+
const UnusedKeysTask_1 = require("./Tasks/UnusedKeysTask");
|
|
12
|
+
// #endregion
|
|
13
|
+
/**
|
|
14
|
+
* The `ResourceAnalyzer` class, responsible for managing and executing analyzer tasks.
|
|
15
|
+
*
|
|
16
|
+
* @public
|
|
17
|
+
*/
|
|
18
|
+
class ResourceAnalyzer {
|
|
19
|
+
// #region Fields
|
|
20
|
+
_logger;
|
|
21
|
+
_tasks;
|
|
22
|
+
// #endregion
|
|
23
|
+
// #region Ctor
|
|
24
|
+
/**
|
|
25
|
+
* Constructs a new instance of the `ResourceAnalyzer` class.
|
|
26
|
+
*
|
|
27
|
+
* @public
|
|
28
|
+
*/
|
|
29
|
+
constructor(logger) {
|
|
30
|
+
this._logger = logger;
|
|
31
|
+
this._tasks = new Map();
|
|
32
|
+
// pre-defined tasks
|
|
33
|
+
this.registerTask('duplicate-keys', new DuplicateKeysTask_1.DuplicateKeysTask());
|
|
34
|
+
this.registerTask('empty-values', new EmptyValuesTask_1.EmptyValuesTask());
|
|
35
|
+
this.registerTask('key-consistency', new KeyConsistencyTask_1.KeyConsistencyTask());
|
|
36
|
+
this.registerTask('missing-translations', new MissingTranslationsTask_1.MissingTranslationsTask());
|
|
37
|
+
this.registerTask('unused-keys', new UnusedKeysTask_1.UnusedKeysTask());
|
|
38
|
+
this.registerTask('multiple-key-usage', new MultipleKeyUsageTask_1.MultipleKeyUsageTask());
|
|
39
|
+
}
|
|
40
|
+
// #endregion
|
|
41
|
+
// #region Methods
|
|
42
|
+
/**
|
|
43
|
+
* Registers a new analyzer task.
|
|
44
|
+
*
|
|
45
|
+
* @param name - The name of the task.
|
|
46
|
+
* @param task - The task instance.
|
|
47
|
+
* @throws Error if the task name is already registered.
|
|
48
|
+
*/
|
|
49
|
+
registerTask(name, task) {
|
|
50
|
+
if (this._tasks.has(name)) {
|
|
51
|
+
throw new Error(`Task '${name}' is already registered.`);
|
|
52
|
+
}
|
|
53
|
+
this._tasks.set(name, task);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Unregisters an analyzer task.
|
|
57
|
+
*
|
|
58
|
+
* @param name - The name of the task to unregister.
|
|
59
|
+
* @returns `true` if the task was successfully unregistered; otherwise, `false`.
|
|
60
|
+
*/
|
|
61
|
+
unregisterTask(name) {
|
|
62
|
+
return this._tasks.delete(name);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Executes the specified analyzer task.
|
|
66
|
+
*
|
|
67
|
+
* @public
|
|
68
|
+
* @param name - The name of the task to execute.
|
|
69
|
+
* @param context - The execution context containing resources and additional parameters.
|
|
70
|
+
* @returns The result of the task execution.
|
|
71
|
+
* @throws Error if the task is not registered.
|
|
72
|
+
*/
|
|
73
|
+
executeTask(name, context) {
|
|
74
|
+
this._logger.log((0, utilities_1.t) `${(0, utilities_1.magenta)(`Executing task '${name}'...`)}`);
|
|
75
|
+
const task = this._tasks.get(name);
|
|
76
|
+
if (!task) {
|
|
77
|
+
throw new Error(`Task '${name}' is not registered.`);
|
|
78
|
+
}
|
|
79
|
+
const result = task.execute(context);
|
|
80
|
+
this._logger.log((0, utilities_1.t) `${(0, utilities_1.magenta)(`Task '${name}' completed.`)}`);
|
|
81
|
+
return result;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Executes all registered tasks.
|
|
85
|
+
*
|
|
86
|
+
* @public
|
|
87
|
+
* @param context - The execution context containing resources and additional parameters.
|
|
88
|
+
* @returns An array of task results.
|
|
89
|
+
*/
|
|
90
|
+
executeAllTasks(context) {
|
|
91
|
+
this._logger.log((0, utilities_1.t) `${(0, utilities_1.magenta)('Executing all tasks...')}`);
|
|
92
|
+
const results = [];
|
|
93
|
+
for (const [name, task] of this._tasks) {
|
|
94
|
+
const result = task.execute(context);
|
|
95
|
+
if (result.success) {
|
|
96
|
+
this._logger.log((0, utilities_1.t) ` ${(0, utilities_1.symbol)('success')} ${(0, utilities_1.bold)(name)} completed.`);
|
|
97
|
+
this._logger.log((0, utilities_1.t) ` ${result.message}`);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
this._logger.log((0, utilities_1.t) ` ${(0, utilities_1.symbol)('error')} ${(0, utilities_1.bold)(name)} failed.`);
|
|
101
|
+
this._logger.log((0, utilities_1.t) ` ${result.message}`);
|
|
102
|
+
}
|
|
103
|
+
results.push(result);
|
|
104
|
+
}
|
|
105
|
+
this._logger.log((0, utilities_1.t) `${(0, utilities_1.magenta)('All tasks completed.')}`);
|
|
106
|
+
return results;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Lists all registered tasks.
|
|
110
|
+
*
|
|
111
|
+
* @public
|
|
112
|
+
* @returns An array of registered task names.
|
|
113
|
+
*/
|
|
114
|
+
listTasks() {
|
|
115
|
+
return Array.from(this._tasks.keys());
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
exports.ResourceAnalyzer = ResourceAnalyzer;
|
|
119
|
+
//# sourceMappingURL=ResourceAnalyzer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResourceAnalyzer.js","sourceRoot":"","sources":["../../../src/Resources/Analyzers/ResourceAnalyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { IAnalyzerTask, IAnalyzerTaskExecutionContext, IAnalyzerTaskResult } from './Interfaces/IAnalyzerTask';
|
|
2
|
+
/**
|
|
3
|
+
* Represents the result data for duplicate keys analysis.
|
|
4
|
+
*
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export interface IDuplicateKeysTaskData {
|
|
8
|
+
/**
|
|
9
|
+
* The locale of the resource where duplicates were found.
|
|
10
|
+
*/
|
|
11
|
+
locale: string;
|
|
12
|
+
/**
|
|
13
|
+
* The list of duplicate keys in the resource.
|
|
14
|
+
*/
|
|
15
|
+
duplicates: Array<string>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Task to check for duplicate keys in resources.
|
|
19
|
+
*
|
|
20
|
+
* @public
|
|
21
|
+
*/
|
|
22
|
+
export declare class DuplicateKeysTask implements IAnalyzerTask<Array<IDuplicateKeysTaskData>> {
|
|
23
|
+
/**
|
|
24
|
+
* Executes the duplicate keys check.
|
|
25
|
+
*
|
|
26
|
+
* @param context - The execution context containing resources and parameters.
|
|
27
|
+
* @returns The task result with duplicate key information.
|
|
28
|
+
*/
|
|
29
|
+
execute(context: IAnalyzerTaskExecutionContext): IAnalyzerTaskResult<Array<IDuplicateKeysTaskData>>;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=DuplicateKeysTask.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DuplicateKeysTask.d.ts","sourceRoot":"","sources":["../../../../src/Resources/Analyzers/Tasks/DuplicateKeysTask.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAIpH;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IAInC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAI7B;AAED;;;;GAIG;AACH,qBAAa,iBAAkB,YAAW,aAAa,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAElF;;;;;OAKG;IACI,OAAO,CAAC,OAAO,EAAE,6BAA6B,GAAG,mBAAmB,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;CAyB7G"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// #region Imports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.DuplicateKeysTask = void 0;
|
|
5
|
+
/**
|
|
6
|
+
* Task to check for duplicate keys in resources.
|
|
7
|
+
*
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
class DuplicateKeysTask {
|
|
11
|
+
/**
|
|
12
|
+
* Executes the duplicate keys check.
|
|
13
|
+
*
|
|
14
|
+
* @param context - The execution context containing resources and parameters.
|
|
15
|
+
* @returns The task result with duplicate key information.
|
|
16
|
+
*/
|
|
17
|
+
execute(context) {
|
|
18
|
+
const results = [];
|
|
19
|
+
const keys = context.resource.keys();
|
|
20
|
+
const duplicates = keys.filter((key, index, arr) => arr.indexOf(key) !== index);
|
|
21
|
+
if (duplicates.length > 0) {
|
|
22
|
+
results.push({
|
|
23
|
+
locale: context.resource.locale,
|
|
24
|
+
duplicates
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
const success = results.length === 0;
|
|
28
|
+
const message = success
|
|
29
|
+
? `No duplicate keys were found in the resource '${context.resource.locale}'.`
|
|
30
|
+
: `The resource '${context.resource.locale}' contains duplicate keys: ${duplicates.join(', ')}. Duplicate keys can lead to unexpected behavior or conflicts in translations.`;
|
|
31
|
+
return {
|
|
32
|
+
resource: context.resource,
|
|
33
|
+
success,
|
|
34
|
+
message,
|
|
35
|
+
data: results
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.DuplicateKeysTask = DuplicateKeysTask;
|
|
40
|
+
//# sourceMappingURL=DuplicateKeysTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DuplicateKeysTask.js","sourceRoot":"","sources":["../../../../src/Resources/Analyzers/Tasks/DuplicateKeysTask.ts"],"names":[],"mappings":";AAAA,kBAAkB;;;AA6BlB;;;;GAIG;AACH,MAAa,iBAAiB;IAE1B;;;;;OAKG;IACI,OAAO,CAAC,OAAsC;QACjD,MAAM,OAAO,GAAkC,EAAE,CAAC;QAClD,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC;QAEhF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC;gBACT,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAC/B,UAAU;aACb,CAAC,CAAC;QACP,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,OAAO;YACnB,CAAC,CAAC,iDAAiD,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI;YAC9E,CAAC,CAAC,iBAAiB,OAAO,CAAC,QAAQ,CAAC,MAAM,8BAA8B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,gFAAgF,CAAC;QAElL,OAAO;YACH,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO;YACP,OAAO;YACP,IAAI,EAAE,OAAO;SAChB,CAAC;IACN,CAAC;CAEJ;AAjCD,8CAiCC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { IAnalyzerTask, IAnalyzerTaskExecutionContext, IAnalyzerTaskResult } from './Interfaces/IAnalyzerTask';
|
|
2
|
+
/**
|
|
3
|
+
* Represents the result of the EmptyValuesTask execution.
|
|
4
|
+
*
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export interface IEmptyValuesTaskResultData {
|
|
8
|
+
/**
|
|
9
|
+
* The locale of the resource where empty values were found.
|
|
10
|
+
*/
|
|
11
|
+
locale: string;
|
|
12
|
+
/**
|
|
13
|
+
* The list of keys with empty values in the resource.
|
|
14
|
+
*/
|
|
15
|
+
keys: Array<string>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Task to check for empty values in resources.
|
|
19
|
+
*
|
|
20
|
+
* @public
|
|
21
|
+
*/
|
|
22
|
+
export declare class EmptyValuesTask implements IAnalyzerTask<Array<IEmptyValuesTaskResultData>> {
|
|
23
|
+
/**
|
|
24
|
+
* Executes the empty values check.
|
|
25
|
+
*
|
|
26
|
+
* @param context - The execution context containing resources and parameters.
|
|
27
|
+
* @returns The task result containing information about empty values.
|
|
28
|
+
*/
|
|
29
|
+
execute(context: IAnalyzerTaskExecutionContext): IAnalyzerTaskResult<Array<IEmptyValuesTaskResultData>>;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=EmptyValuesTask.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmptyValuesTask.d.ts","sourceRoot":"","sources":["../../../../src/Resources/Analyzers/Tasks/EmptyValuesTask.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAIpH;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IAEvC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAEvB;AAED;;;;GAIG;AACH,qBAAa,eAAgB,YAAW,aAAa,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAEpF;;;;;OAKG;IACI,OAAO,CAAC,OAAO,EAAE,6BAA6B,GAAG,mBAAmB,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;CA2BjH"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// #region Imports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.EmptyValuesTask = void 0;
|
|
5
|
+
/**
|
|
6
|
+
* Task to check for empty values in resources.
|
|
7
|
+
*
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
class EmptyValuesTask {
|
|
11
|
+
/**
|
|
12
|
+
* Executes the empty values check.
|
|
13
|
+
*
|
|
14
|
+
* @param context - The execution context containing resources and parameters.
|
|
15
|
+
* @returns The task result containing information about empty values.
|
|
16
|
+
*/
|
|
17
|
+
execute(context) {
|
|
18
|
+
const results = [];
|
|
19
|
+
const emptyValues = context.resource.entries().filter((entry) => !entry[1]);
|
|
20
|
+
if (emptyValues.length > 0) {
|
|
21
|
+
results.push({
|
|
22
|
+
locale: context.resource.locale,
|
|
23
|
+
keys: emptyValues.map((entry) => entry[0])
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
const success = results.length === 0;
|
|
27
|
+
const message = success
|
|
28
|
+
? `No empty values were found in the resource '${context.resource.locale}'.`
|
|
29
|
+
: `The resource '${context.resource.locale}' contains empty values for the following keys: ${emptyValues
|
|
30
|
+
.map((entry) => entry[0])
|
|
31
|
+
.join(', ')}. Empty values can lead to incomplete or missing translations.`;
|
|
32
|
+
return {
|
|
33
|
+
resource: context.resource,
|
|
34
|
+
success,
|
|
35
|
+
message,
|
|
36
|
+
data: results
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.EmptyValuesTask = EmptyValuesTask;
|
|
41
|
+
//# sourceMappingURL=EmptyValuesTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmptyValuesTask.js","sourceRoot":"","sources":["../../../../src/Resources/Analyzers/Tasks/EmptyValuesTask.ts"],"names":[],"mappings":";AAAA,kBAAkB;;;AAyBlB;;;;GAIG;AACH,MAAa,eAAe;IAExB;;;;;OAKG;IACI,OAAO,CAAC,OAAsC;QACjD,MAAM,OAAO,GAAsC,EAAE,CAAC;QAEtD,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC;gBACT,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAC/B,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAC7C,CAAC,CAAC;QACP,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,OAAO;YACnB,CAAC,CAAC,+CAA+C,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI;YAC5E,CAAC,CAAC,iBAAiB,OAAO,CAAC,QAAQ,CAAC,MAAM,mDAAmD,WAAW;iBACnG,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;iBACxB,IAAI,CAAC,IAAI,CAAC,gEAAgE,CAAC;QAEpF,OAAO;YACH,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO;YACP,OAAO;YACP,IAAI,EAAE,OAAO;SAChB,CAAC;IACN,CAAC;CAEJ;AAnCD,0CAmCC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { IResourceInfo } from '../../../Models/Interfaces/IResourceInfo';
|
|
2
|
+
/**
|
|
3
|
+
* Represents the result of an analysis task.
|
|
4
|
+
*
|
|
5
|
+
* @public
|
|
6
|
+
* @template T - The type of the result data.
|
|
7
|
+
*/
|
|
8
|
+
export interface IAnalyzerTaskResult<T = unknown> {
|
|
9
|
+
resource: IResourceInfo;
|
|
10
|
+
success: boolean;
|
|
11
|
+
message: string;
|
|
12
|
+
data: T;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Represents the context for executing an analyzer task.
|
|
16
|
+
*
|
|
17
|
+
* @public
|
|
18
|
+
*/
|
|
19
|
+
export interface IAnalyzerTaskExecutionContext {
|
|
20
|
+
resource: IResourceInfo;
|
|
21
|
+
parameters: Record<string, unknown>;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* The interface for analyzer tasks.
|
|
25
|
+
*
|
|
26
|
+
* @template TResult - The type of the result data.
|
|
27
|
+
*/
|
|
28
|
+
export interface IAnalyzerTask<TResult = unknown> {
|
|
29
|
+
/**
|
|
30
|
+
* Executes the analysis task.
|
|
31
|
+
*
|
|
32
|
+
* @param context - The execution context.
|
|
33
|
+
*/
|
|
34
|
+
execute(context: IAnalyzerTaskExecutionContext): IAnalyzerTaskResult<TResult>;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=IAnalyzerTask.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IAnalyzerTask.d.ts","sourceRoot":"","sources":["../../../../../src/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAI9E;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC,GAAG,OAAO;IAC5C,QAAQ,EAAE,aAAa,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,CAAC,CAAC;CACX;AAED;;;;GAIG;AACH,MAAM,WAAW,6BAA6B;IAC1C,QAAQ,EAAE,aAAa,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa,CAAC,OAAO,GAAG,OAAO;IAI5C;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,6BAA6B,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;CAIjF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IAnalyzerTask.js","sourceRoot":"","sources":["../../../../../src/Resources/Analyzers/Tasks/Interfaces/IAnalyzerTask.ts"],"names":[],"mappings":";AAAA,kBAAkB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { IAnalyzerTask, IAnalyzerTaskExecutionContext, IAnalyzerTaskResult } from './Interfaces/IAnalyzerTask';
|
|
2
|
+
/**
|
|
3
|
+
* Represents the result data for key consistency analysis.
|
|
4
|
+
*
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export interface IKeyConsistencyTaskResultData {
|
|
8
|
+
/**
|
|
9
|
+
* The locale of the resource being analyzed.
|
|
10
|
+
*/
|
|
11
|
+
locale: string;
|
|
12
|
+
/**
|
|
13
|
+
* A list of keys missing from the locale.
|
|
14
|
+
*/
|
|
15
|
+
missingKeys: Array<string>;
|
|
16
|
+
/**
|
|
17
|
+
* Indicates if the locale is empty.
|
|
18
|
+
*/
|
|
19
|
+
isEmpty: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Task to check key consistency across resources.
|
|
23
|
+
*
|
|
24
|
+
* @public
|
|
25
|
+
*/
|
|
26
|
+
export declare class KeyConsistencyTask implements IAnalyzerTask<Array<IKeyConsistencyTaskResultData>> {
|
|
27
|
+
/**
|
|
28
|
+
* Executes the key consistency check.
|
|
29
|
+
*
|
|
30
|
+
* @param context - The execution context containing resources and parameters.
|
|
31
|
+
* @returns The task result with information about missing keys and empty locales.
|
|
32
|
+
*/
|
|
33
|
+
execute(context: IAnalyzerTaskExecutionContext): IAnalyzerTaskResult<Array<IKeyConsistencyTaskResultData>>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=KeyConsistencyTask.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KeyConsistencyTask.d.ts","sourceRoot":"","sources":["../../../../src/Resources/Analyzers/Tasks/KeyConsistencyTask.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAIpH;;;;GAIG;AACH,MAAM,WAAW,6BAA6B;IAE1C;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3B;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;CAEpB;AAED;;;;GAIG;AACH,qBAAa,kBAAmB,YAAW,aAAa,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAE1F;;;;;OAKG;IACI,OAAO,CAAC,OAAO,EAAE,6BAA6B,GAAG,mBAAmB,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;CAsDpH"}
|