Compensate for lack of mod id in litemod claritas resolution.
More tweaks to Claritas.
This commit is contained in:
Binary file not shown.
@@ -8,6 +8,7 @@ import { LiteMod } from '../../../liteloader/litemod'
|
|||||||
import { ToggleableModuleStructure } from './toggleablemodule.struct'
|
import { ToggleableModuleStructure } from './toggleablemodule.struct'
|
||||||
import { MinecraftVersion } from '../../../../util/MinecraftVersion'
|
import { MinecraftVersion } from '../../../../util/MinecraftVersion'
|
||||||
import { LibraryType } from '../../../claritas/ClaritasLibraryType'
|
import { LibraryType } from '../../../claritas/ClaritasLibraryType'
|
||||||
|
import { MetadataUtil } from '../../../../util/MetadataUtil'
|
||||||
|
|
||||||
export class LiteModStructure extends ToggleableModuleStructure {
|
export class LiteModStructure extends ToggleableModuleStructure {
|
||||||
|
|
||||||
@@ -28,7 +29,8 @@ export class LiteModStructure extends ToggleableModuleStructure {
|
|||||||
|
|
||||||
protected async getModuleId(name: string, path: string): Promise<string> {
|
protected async getModuleId(name: string, path: string): Promise<string> {
|
||||||
const liteModData = await this.getLiteModMetadata(name, path)
|
const liteModData = await this.getLiteModMetadata(name, path)
|
||||||
return this.generateMavenIdentifier(this.getClaritasGroup(path), liteModData.name, `${liteModData.version}-${liteModData.mcversion}`)
|
return this.generateMavenIdentifier(
|
||||||
|
MetadataUtil.completeGroupInference(this.getClaritasGroup(path), liteModData.name), liteModData.name, `${liteModData.version}-${liteModData.mcversion}`)
|
||||||
}
|
}
|
||||||
protected async getModuleName(name: string, path: string): Promise<string> {
|
protected async getModuleName(name: string, path: string): Promise<string> {
|
||||||
return capitalize((await this.getLiteModMetadata(name, path)).name)
|
return capitalize((await this.getLiteModMetadata(name, path)).name)
|
||||||
|
|||||||
21
src/util/MetadataUtil.ts
Normal file
21
src/util/MetadataUtil.ts
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
export class MetadataUtil {
|
||||||
|
|
||||||
|
public static completeGroupInference(partial: string, id: string): string {
|
||||||
|
|
||||||
|
const bits = partial.split('.')
|
||||||
|
|
||||||
|
let isBadTerm = true
|
||||||
|
while(isBadTerm && bits.length > 2) {
|
||||||
|
const term = bits[bits.length-1]
|
||||||
|
if(term !== id) {
|
||||||
|
isBadTerm = false
|
||||||
|
} else {
|
||||||
|
bits.pop()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return bits.join('.')
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user