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