@butr/vortexextensionnative 2.0.195 → 2.0.197

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 (63) hide show
  1. package/dist/Bannerlord.LauncherManager.Native.dll +0 -0
  2. package/dist/launchermanager.node +0 -0
  3. package/dist/main/BannerlordModuleManager.d.ts +25 -0
  4. package/dist/main/BannerlordModuleManager.js +90 -0
  5. package/dist/main/BannerlordModuleManager.js.map +1 -0
  6. package/dist/main/Common.d.ts +3 -0
  7. package/dist/main/Common.js +19 -0
  8. package/dist/main/Common.js.map +1 -0
  9. package/dist/main/FetchBannerlordVersion.d.ts +8 -0
  10. package/dist/main/FetchBannerlordVersion.js +26 -0
  11. package/dist/main/FetchBannerlordVersion.js.map +1 -0
  12. package/dist/main/LauncherManager.d.ts +38 -0
  13. package/dist/main/LauncherManager.js +101 -0
  14. package/dist/main/LauncherManager.js.map +1 -0
  15. package/dist/main/Utils.d.ts +14 -0
  16. package/dist/main/Utils.js +38 -0
  17. package/dist/main/Utils.js.map +1 -0
  18. package/dist/main/types/BannerlordModuleManager.d.ts +118 -0
  19. package/dist/main/types/BannerlordModuleManager.js +33 -0
  20. package/dist/main/types/BannerlordModuleManager.js.map +1 -0
  21. package/dist/main/types/FetchBannerlordVersion.d.ts +5 -0
  22. package/dist/main/types/FetchBannerlordVersion.js +3 -0
  23. package/dist/main/types/FetchBannerlordVersion.js.map +1 -0
  24. package/dist/main/types/LauncherManager.d.ts +92 -0
  25. package/dist/main/types/LauncherManager.js +3 -0
  26. package/dist/main/types/LauncherManager.js.map +1 -0
  27. package/dist/main/types/Utils.d.ts +11 -0
  28. package/dist/main/types/Utils.js +3 -0
  29. package/dist/main/types/Utils.js.map +1 -0
  30. package/dist/main/types/index.d.ts +13 -0
  31. package/dist/main/types/index.js +21 -0
  32. package/dist/main/types/index.js.map +1 -0
  33. package/dist/module/BannerlordModuleManager.d.ts +25 -0
  34. package/dist/module/BannerlordModuleManager.js +86 -0
  35. package/dist/module/BannerlordModuleManager.js.map +1 -0
  36. package/dist/module/Common.d.ts +3 -0
  37. package/dist/module/Common.js +13 -0
  38. package/dist/module/Common.js.map +1 -0
  39. package/dist/module/FetchBannerlordVersion.d.ts +8 -0
  40. package/dist/module/FetchBannerlordVersion.js +22 -0
  41. package/dist/module/FetchBannerlordVersion.js.map +1 -0
  42. package/dist/module/LauncherManager.d.ts +38 -0
  43. package/dist/module/LauncherManager.js +97 -0
  44. package/dist/module/LauncherManager.js.map +1 -0
  45. package/dist/module/Utils.d.ts +14 -0
  46. package/dist/module/Utils.js +34 -0
  47. package/dist/module/Utils.js.map +1 -0
  48. package/dist/module/types/BannerlordModuleManager.d.ts +118 -0
  49. package/dist/module/types/BannerlordModuleManager.js +30 -0
  50. package/dist/module/types/BannerlordModuleManager.js.map +1 -0
  51. package/dist/module/types/FetchBannerlordVersion.d.ts +5 -0
  52. package/dist/module/types/FetchBannerlordVersion.js +2 -0
  53. package/dist/module/types/FetchBannerlordVersion.js.map +1 -0
  54. package/dist/module/types/LauncherManager.d.ts +92 -0
  55. package/dist/module/types/LauncherManager.js +2 -0
  56. package/dist/module/types/LauncherManager.js.map +1 -0
  57. package/dist/module/types/Utils.d.ts +11 -0
  58. package/dist/module/types/Utils.js +2 -0
  59. package/dist/module/types/Utils.js.map +1 -0
  60. package/dist/module/types/index.d.ts +13 -0
  61. package/dist/module/types/index.js +5 -0
  62. package/dist/module/types/index.js.map +1 -0
  63. package/package.json +3 -5
@@ -0,0 +1,118 @@
1
+ export interface ModuleInfoExtended {
2
+ id: string;
3
+ name: string;
4
+ isOfficial: boolean;
5
+ version: ApplicationVersion;
6
+ isSingleplayerModule: boolean;
7
+ isMultiplayerModule: boolean;
8
+ subModules: Array<SubModuleInfoExtended>;
9
+ dependentModules: Array<DependentModule>;
10
+ modulesToLoadAfterThis: Array<DependentModule>;
11
+ incompatibleModules: Array<DependentModule>;
12
+ url: string;
13
+ dependentModuleMetadatas: Array<DependentModuleMetadata>;
14
+ }
15
+ export interface ModuleInfoExtendedWithPath extends ModuleInfoExtended {
16
+ path: string;
17
+ }
18
+ export interface ModuleInfoExtendedWithMetadata extends ModuleInfoExtended {
19
+ moduleProviderType: ModuleProviderType;
20
+ path: string;
21
+ }
22
+ export declare enum ModuleProviderType {
23
+ Default = "Default",
24
+ Steam = "Steam"
25
+ }
26
+ export interface ApplicationVersion {
27
+ applicationVersionType: ApplicationVersionType;
28
+ major: number;
29
+ minor: number;
30
+ revision: number;
31
+ changeSet: number;
32
+ }
33
+ export declare enum ApplicationVersionType {
34
+ Alpha = "Alpha",
35
+ Beta = "Beta",
36
+ EarlyAccess = "EarlyAccess",
37
+ Release = "Release",
38
+ Development = "Development",
39
+ Invalid = "Invalid"
40
+ }
41
+ export interface SubModuleInfoExtended {
42
+ name: string;
43
+ dLLName: string;
44
+ assemblies: Array<string>;
45
+ subModuleClassType: string;
46
+ tags: Map<string, Array<string>>;
47
+ }
48
+ export interface DependentModule {
49
+ id: string;
50
+ version: ApplicationVersion;
51
+ isOptional: boolean;
52
+ }
53
+ export interface DependentModuleMetadata {
54
+ id: string;
55
+ loadType: LoadType;
56
+ isOptional: boolean;
57
+ isIncompatible: boolean;
58
+ version: ApplicationVersion;
59
+ versionRange: ApplicationVersionRange;
60
+ }
61
+ export declare enum LoadType {
62
+ None = "None",
63
+ LoadAfterThis = "LoadAfterThis",
64
+ LoadBeforeThis = "LoadBeforeThis"
65
+ }
66
+ export interface ApplicationVersionRange {
67
+ min: ApplicationVersion;
68
+ max: ApplicationVersion;
69
+ }
70
+ export interface ModuleSorterOptions {
71
+ skipOptionals: boolean;
72
+ skipExternalDependencies: boolean;
73
+ }
74
+ export interface ModuleIssue {
75
+ target: ModuleInfoExtended;
76
+ sourceId: string;
77
+ type: ModuleIssueType;
78
+ reason: string;
79
+ sourceVersion: ApplicationVersionRange;
80
+ }
81
+ export declare enum ModuleIssueType {
82
+ MissingDependencies = "MissingDependencies",
83
+ DependencyMissingDependencies = "DependencyMissingDependencies",
84
+ DependencyValidationError = "DependencyValidationError",
85
+ VersionMismatch = "VersionMismatch",
86
+ Incompatible = "Incompatible",
87
+ DependencyConflict = "DependencyConflict"
88
+ }
89
+ export interface IValidationManager {
90
+ isSelected(moduleId: string): boolean;
91
+ }
92
+ export interface IEnableDisableManager {
93
+ getSelected(moduleId: string): boolean;
94
+ setSelected(moduleId: string, value: boolean): void;
95
+ getDisabled(moduleId: string): boolean;
96
+ setDisabled(moduleId: string, value: boolean): void;
97
+ }
98
+ export interface IBannerlordModuleManager {
99
+ sort(unsorted: Array<ModuleInfoExtended>): Array<ModuleInfoExtended>;
100
+ sortWithOptions(unsorted: Array<ModuleInfoExtended>, options: ModuleSorterOptions): Array<ModuleInfoExtended>;
101
+ areAllDependenciesOfModulePresent(unsorted: Array<ModuleInfoExtended>, module: ModuleInfoExtended): boolean;
102
+ getDependentModulesOf(source: Array<ModuleInfoExtended>, module: ModuleInfoExtended): Array<ModuleInfoExtended>;
103
+ getDependentModulesOfWithOptions(source: Array<ModuleInfoExtended>, module: ModuleInfoExtended, options: ModuleSorterOptions): Array<ModuleInfoExtended>;
104
+ validateLoadOrder(source: Array<ModuleInfoExtended>, targetModule: ModuleInfoExtended): Array<ModuleIssue>;
105
+ validateModule(modules: Array<ModuleInfoExtended>, targetModule: ModuleInfoExtended, manager: IValidationManager): Array<ModuleIssue>;
106
+ enableModule(modules: Array<ModuleInfoExtended>, targetModule: ModuleInfoExtended, manager: IEnableDisableManager): Array<ModuleIssue>;
107
+ disableModule(modules: Array<ModuleInfoExtended>, targetModule: ModuleInfoExtended, manager: IEnableDisableManager): Array<ModuleIssue>;
108
+ getModuleInfo(xml: string): ModuleInfoExtended | undefined;
109
+ getModuleInfoWithPath(xml: string, path: string): ModuleInfoExtendedWithPath | undefined;
110
+ getModuleInfoWithMetadata(xml: string, type: ModuleProviderType, path: string): ModuleInfoExtendedWithMetadata | undefined;
111
+ getSubModuleInfo(xml: string): SubModuleInfoExtended | undefined;
112
+ parseApplicationVersion(content: string): ApplicationVersion;
113
+ compareVersions(x: ApplicationVersion, y: ApplicationVersion): number;
114
+ getDependenciesAll(module: ModuleInfoExtended): DependentModuleMetadata[];
115
+ getDependenciesToLoadBeforeThis(module: ModuleInfoExtended): DependentModuleMetadata[];
116
+ getDependenciesToLoadAfterThis(module: ModuleInfoExtended): DependentModuleMetadata[];
117
+ getDependenciesIncompatibles(module: ModuleInfoExtended): DependentModuleMetadata[];
118
+ }
@@ -0,0 +1,30 @@
1
+ export var ModuleProviderType;
2
+ (function (ModuleProviderType) {
3
+ ModuleProviderType["Default"] = "Default";
4
+ ModuleProviderType["Steam"] = "Steam";
5
+ })(ModuleProviderType || (ModuleProviderType = {}));
6
+ export var ApplicationVersionType;
7
+ (function (ApplicationVersionType) {
8
+ ApplicationVersionType["Alpha"] = "Alpha";
9
+ ApplicationVersionType["Beta"] = "Beta";
10
+ ApplicationVersionType["EarlyAccess"] = "EarlyAccess";
11
+ ApplicationVersionType["Release"] = "Release";
12
+ ApplicationVersionType["Development"] = "Development";
13
+ ApplicationVersionType["Invalid"] = "Invalid";
14
+ })(ApplicationVersionType || (ApplicationVersionType = {}));
15
+ export var LoadType;
16
+ (function (LoadType) {
17
+ LoadType["None"] = "None";
18
+ LoadType["LoadAfterThis"] = "LoadAfterThis";
19
+ LoadType["LoadBeforeThis"] = "LoadBeforeThis";
20
+ })(LoadType || (LoadType = {}));
21
+ export var ModuleIssueType;
22
+ (function (ModuleIssueType) {
23
+ ModuleIssueType["MissingDependencies"] = "MissingDependencies";
24
+ ModuleIssueType["DependencyMissingDependencies"] = "DependencyMissingDependencies";
25
+ ModuleIssueType["DependencyValidationError"] = "DependencyValidationError";
26
+ ModuleIssueType["VersionMismatch"] = "VersionMismatch";
27
+ ModuleIssueType["Incompatible"] = "Incompatible";
28
+ ModuleIssueType["DependencyConflict"] = "DependencyConflict";
29
+ })(ModuleIssueType || (ModuleIssueType = {}));
30
+ //# sourceMappingURL=BannerlordModuleManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BannerlordModuleManager.js","sourceRoot":"","sources":["../../../src/types/BannerlordModuleManager.ts"],"names":[],"mappings":"AAqBA,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC1B,yCAAmB,CAAA;IACnB,qCAAe,CAAA;AACnB,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAQD,MAAM,CAAN,IAAY,sBAOX;AAPD,WAAY,sBAAsB;IAC9B,yCAAe,CAAA;IACf,uCAAa,CAAA;IACb,qDAA2B,CAAA;IAC3B,6CAAmB,CAAA;IACnB,qDAA2B,CAAA;IAC3B,6CAAmB,CAAA;AACvB,CAAC,EAPW,sBAAsB,KAAtB,sBAAsB,QAOjC;AAqBD,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAChB,yBAAa,CAAA;IACb,2CAA+B,CAAA;IAC/B,6CAAiC,CAAA;AACrC,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB;AAgBD,MAAM,CAAN,IAAY,eAOX;AAPD,WAAY,eAAe;IACvB,8DAA2C,CAAA;IAC3C,kFAA+D,CAAA;IAC/D,0EAAuD,CAAA;IACvD,sDAAmC,CAAA;IACnC,gDAA6B,CAAA;IAC7B,4DAAyC,CAAA;AAC7C,CAAC,EAPW,eAAe,KAAf,eAAe,QAO1B"}
@@ -0,0 +1,5 @@
1
+ export interface IFetchBannerlordVersion {
2
+ getChangeSet(gameFolderPath: string, libAssembly: string): number;
3
+ getVersion(gameFolderPath: string, libAssembly: string): string;
4
+ getVersionType(gameFolderPath: string, libAssembly: string): number;
5
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=FetchBannerlordVersion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FetchBannerlordVersion.js","sourceRoot":"","sources":["../../../src/types/FetchBannerlordVersion.ts"],"names":[],"mappings":""}
@@ -0,0 +1,92 @@
1
+ import { ModuleInfoExtended, ModuleInfoExtendedWithMetadata } from "./BannerlordModuleManager";
2
+ export interface INativeExtension {
3
+ LauncherManager: new (setGameParametersAsync: (executable: string, gameParameters: string[]) => Promise<void>, sendNotificationAsync: (id: string, type: NotificationType, message: string, delayMS: number) => Promise<void>, sendDialogAsync: (type: DialogType, title: string, message: string, filters: FileFilter[]) => Promise<string>, getInstallPathAsync: () => Promise<string>, readFileContentAsync: (filePath: string, offset: number, length: number) => Promise<Uint8Array | null>, writeFileContentAsync: (filePath: string, data: Uint8Array) => Promise<void>, readDirectoryFileListAsync: (directoryPath: string) => Promise<string[] | null>, readDirectoryListAsync: (directoryPath: string) => Promise<string[] | null>, getAllModuleViewModelsAsync: () => Promise<ModuleViewModel[] | null>, getModuleViewModelsAsync: () => Promise<ModuleViewModel[] | null>, setModuleViewModelsAsync: (moduleViewModels: ModuleViewModel[]) => Promise<void>, getOptionsAsync: () => Promise<LauncherOptions>, getStateAsync: () => Promise<LauncherState>) => LauncherManager;
4
+ }
5
+ export interface LoadOrderEntry {
6
+ id: string;
7
+ name: string;
8
+ isSelected: boolean;
9
+ isDisabled: boolean;
10
+ index: number;
11
+ }
12
+ export interface LoadOrder {
13
+ [id: string]: LoadOrderEntry;
14
+ }
15
+ export interface ModuleViewModel {
16
+ moduleInfoExtended: ModuleInfoExtendedWithMetadata;
17
+ isValid: boolean;
18
+ isSelected: boolean;
19
+ isDisabled: boolean;
20
+ index: number;
21
+ }
22
+ export interface LauncherOptions {
23
+ betaSorting: boolean;
24
+ }
25
+ export interface LauncherState {
26
+ isSingleplayer: boolean;
27
+ }
28
+ export interface SaveMetadata {
29
+ [key: string]: string;
30
+ Name: string;
31
+ }
32
+ export type GameStore = 'Steam' | 'GOG' | 'Epic' | 'Xbox' | 'Unknown';
33
+ export type GamePlatform = 'Win64' | 'Xbox' | 'Unknown';
34
+ export type NotificationType = 'hint' | 'info' | 'warning' | 'error';
35
+ export type DialogType = 'warning' | 'fileOpen' | 'fileSave';
36
+ export type InstructionType = 'Copy' | 'ModuleInfo' | 'CopyStore';
37
+ export interface InstallInstruction {
38
+ type: InstructionType;
39
+ store?: GameStore;
40
+ moduleInfo?: ModuleInfoExtended;
41
+ source?: string;
42
+ destination?: string;
43
+ }
44
+ export interface InstallResult {
45
+ instructions: InstallInstruction[];
46
+ }
47
+ export interface SupportedResult {
48
+ supported: boolean;
49
+ requiredFiles: string[];
50
+ }
51
+ export interface OrderByLoadOrderResult {
52
+ result: boolean;
53
+ issues?: string[];
54
+ orderedModuleViewModels?: ModuleViewModel[];
55
+ }
56
+ export interface FileFilter {
57
+ name: string;
58
+ extensions: string[];
59
+ }
60
+ export type LauncherManager = {
61
+ constructor(): LauncherManager;
62
+ checkForRootHarmonyAsync(): Promise<void>;
63
+ getGamePlatformAsync(): Promise<GamePlatform>;
64
+ getGameVersionAsync(): Promise<string>;
65
+ getModulesAsync(): Promise<ModuleInfoExtendedWithMetadata[]>;
66
+ getAllModulesAsync(): Promise<ModuleInfoExtendedWithMetadata[]>;
67
+ getSaveFilePathAsync(saveFile: string): Promise<string>;
68
+ getSaveFilesAsync(): Promise<SaveMetadata[]>;
69
+ getSaveMetadataAsync(saveFile: string, data: Uint8Array): Promise<SaveMetadata>;
70
+ installModule(files: string[], moduleInfos: ModuleInfoExtendedWithMetadata[]): InstallResult;
71
+ isObfuscatedAsync(module: ModuleInfoExtendedWithMetadata): Promise<boolean>;
72
+ isSorting(): boolean;
73
+ moduleListHandlerExportAsync(): Promise<void>;
74
+ moduleListHandlerExportSaveFileAsync(saveFile: string): Promise<void>;
75
+ moduleListHandlerImportAsync(): Promise<boolean>;
76
+ moduleListHandlerImportSaveFileAsync(saveFile: string): Promise<boolean>;
77
+ orderByLoadOrderAsync(loadOrder: LoadOrder): Promise<OrderByLoadOrderResult>;
78
+ refreshModulesAsync(): Promise<void>;
79
+ refreshGameParametersAsync(): Promise<void>;
80
+ setGameParameterExecutableAsync(executable: string): Promise<void>;
81
+ setGameParameterSaveFileAsync(saveName: string): Promise<void>;
82
+ setGameParameterContinueLastSaveFileAsync(value: boolean): Promise<void>;
83
+ setGameStore(gameStore: GameStore): void;
84
+ sortAsync(): Promise<void>;
85
+ sortHelperChangeModulePositionAsync(moduleViewModel: ModuleViewModel, insertIndex: number): Promise<boolean>;
86
+ sortHelperToggleModuleSelectionAsync(moduleViewModel: ModuleViewModel): Promise<ModuleViewModel>;
87
+ sortHelperValidateModuleAsync(moduleViewModel: ModuleViewModel): Promise<string[]>;
88
+ testModule(files: string[]): SupportedResult;
89
+ dialogTestWarningAsync(): Promise<string>;
90
+ dialogTestFileOpenAsync(): Promise<string>;
91
+ setGameParameterLoadOrderAsync(loadOrder: LoadOrder): Promise<void>;
92
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=LauncherManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LauncherManager.js","sourceRoot":"","sources":["../../../src/types/LauncherManager.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import { ModuleInfoExtended, ModuleIssue } from "./BannerlordModuleManager";
2
+ export interface IUtils {
3
+ isLoadOrderCorrect(modules: Array<ModuleInfoExtended>): Array<string>;
4
+ getDependencyHint(module: ModuleInfoExtended): string;
5
+ renderModuleIssue(moduleIssue: ModuleIssue): string;
6
+ loadLocalization(xml: string): void;
7
+ setLanguage(language: string): void;
8
+ localizeString(template: string, values: {
9
+ [value: string]: string;
10
+ }): string;
11
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../src/types/Utils.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ export * from './BannerlordModuleManager';
2
+ export * from './FetchBannerlordVersion';
3
+ export * from './LauncherManager';
4
+ export * from './Utils';
5
+ import { IBannerlordModuleManager } from './BannerlordModuleManager';
6
+ import { IFetchBannerlordVersion } from './FetchBannerlordVersion';
7
+ import { INativeExtension } from './LauncherManager';
8
+ import { IUtils } from './Utils';
9
+ export interface IExtension extends IBannerlordModuleManager, IFetchBannerlordVersion, IUtils, INativeExtension {
10
+ allocWithOwnership(length: number): Buffer | null;
11
+ allocWithoutOwnership(length: number): Buffer | null;
12
+ allocAliveCount(): number;
13
+ }
@@ -0,0 +1,5 @@
1
+ export * from './BannerlordModuleManager';
2
+ export * from './FetchBannerlordVersion';
3
+ export * from './LauncherManager';
4
+ export * from './Utils';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,SAAS,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@butr/vortexextensionnative",
3
- "version": "2.0.195",
3
+ "version": "2.0.197",
4
4
  "description": "Package of native bindings bundled with TS declarations",
5
5
  "main": "dist/main/index.js",
6
6
  "typings": "dist/main/index.d.ts",
@@ -53,10 +53,8 @@
53
53
  "typescript": "^5.7.3"
54
54
  },
55
55
  "files": [
56
- "dist/main/index.*",
57
- "dist/main/lib",
58
- "dist/module/index.*",
59
- "dist/module/lib",
56
+ "dist/main",
57
+ "dist/module",
60
58
  "dist/Bannerlord.LauncherManager.Native.dll",
61
59
  "dist/launchermanager.node",
62
60
  "CHANGELOG.md",