@rhyster/wow-casc-dbc 2.6.19 → 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/dist/adb.d.ts +17 -0
  2. package/dist/adb.d.ts.map +1 -0
  3. package/dist/blte.d.ts +25 -0
  4. package/dist/blte.d.ts.map +1 -0
  5. package/dist/client.d.ts +84 -0
  6. package/dist/client.d.ts.map +1 -0
  7. package/dist/dbd.d.ts +26 -0
  8. package/dist/dbd.d.ts.map +1 -0
  9. package/dist/fetcher.d.ts +21 -0
  10. package/dist/fetcher.d.ts.map +1 -0
  11. package/dist/index.cjs +1 -0
  12. package/dist/index.cjs.map +1 -0
  13. package/dist/index.d.ts +9 -261
  14. package/dist/index.d.ts.map +1 -0
  15. package/dist/index.mjs +1 -0
  16. package/dist/index.mjs.map +1 -0
  17. package/dist/jenkins96.d.ts +3 -0
  18. package/dist/jenkins96.d.ts.map +1 -0
  19. package/dist/parsers/archiveIndex.d.ts +9 -0
  20. package/dist/parsers/archiveIndex.d.ts.map +1 -0
  21. package/dist/parsers/config.d.ts +40 -0
  22. package/dist/parsers/config.d.ts.map +1 -0
  23. package/dist/parsers/encodingFile.d.ts +11 -0
  24. package/dist/parsers/encodingFile.d.ts.map +1 -0
  25. package/dist/parsers/productConfig.d.ts +21 -0
  26. package/dist/parsers/productConfig.d.ts.map +1 -0
  27. package/dist/parsers/rootFile.d.ts +45 -0
  28. package/dist/parsers/rootFile.d.ts.map +1 -0
  29. package/dist/salsa20.d.ts +14 -0
  30. package/dist/salsa20.d.ts.map +1 -0
  31. package/dist/store.d.ts +9 -0
  32. package/dist/store.d.ts.map +1 -0
  33. package/dist/test/salsa20.test.d.ts +2 -0
  34. package/dist/test/salsa20.test.d.ts.map +1 -0
  35. package/dist/utils.d.ts +3 -0
  36. package/dist/utils.d.ts.map +1 -0
  37. package/dist/wdc.d.ts +104 -0
  38. package/dist/wdc.d.ts.map +1 -0
  39. package/package.json +4 -3
  40. package/src/adb.ts +70 -0
  41. package/src/blte.ts +220 -0
  42. package/src/client.ts +411 -0
  43. package/src/dbd.ts +427 -0
  44. package/src/fetcher.ts +223 -0
  45. package/src/index.ts +44 -0
  46. package/src/jenkins96.ts +75 -0
  47. package/src/parsers/archiveIndex.ts +119 -0
  48. package/src/parsers/config.ts +75 -0
  49. package/src/parsers/encodingFile.ts +159 -0
  50. package/src/parsers/productConfig.ts +57 -0
  51. package/src/parsers/rootFile.ts +172 -0
  52. package/src/salsa20.ts +143 -0
  53. package/src/store.ts +37 -0
  54. package/src/test/salsa20.test.ts +522 -0
  55. package/src/utils.ts +77 -0
  56. package/src/wdc.ts +788 -0
package/dist/adb.d.ts ADDED
@@ -0,0 +1,17 @@
1
+ export interface HotfixEntry {
2
+ regionID: number;
3
+ pushID: number;
4
+ uniqueID: number;
5
+ tableHash: number;
6
+ recordID: number;
7
+ dataSize: number;
8
+ recordState: number;
9
+ data: Buffer;
10
+ }
11
+ export default class ADBReader {
12
+ build: number;
13
+ entries: HotfixEntry[];
14
+ tableEntries: Map<number, HotfixEntry[]>;
15
+ constructor(buffer: Buffer);
16
+ }
17
+ //# sourceMappingURL=adb.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adb.d.ts","sourceRoot":"","sources":["../src/adb.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,CAAC,OAAO,OAAO,SAAS;IACnB,KAAK,EAAE,MAAM,CAAC;IAEd,OAAO,EAAE,WAAW,EAAE,CAAM;IAE5B,YAAY,6BAAoC;gBAE3C,MAAM,EAAE,MAAM;CA+C7B"}
package/dist/blte.d.ts ADDED
@@ -0,0 +1,25 @@
1
+ interface Block {
2
+ compressedSize: number;
3
+ decompressedSize: number;
4
+ hash: string;
5
+ }
6
+ interface MissingKeyBlock {
7
+ offset: number;
8
+ size: number;
9
+ blockIndex: number;
10
+ keyName: string;
11
+ }
12
+ export default class BLTEReader {
13
+ buffer: Buffer;
14
+ readonly blte: Buffer;
15
+ readonly blocks: Block[];
16
+ readonly keys: Map<string, Uint8Array>;
17
+ private processedBlock;
18
+ private processedOffset;
19
+ constructor(buffer: Buffer, eKey: string, keys?: Map<string, Uint8Array<ArrayBufferLike>>);
20
+ private processBlock;
21
+ processBytes(allowMissingKey?: false, size?: number): undefined;
22
+ processBytes(allowMissingKey: true, size?: number): MissingKeyBlock[];
23
+ }
24
+ export type { MissingKeyBlock };
25
+ //# sourceMappingURL=blte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blte.d.ts","sourceRoot":"","sources":["../src/blte.ts"],"names":[],"mappings":"AAMA,UAAU,KAAK;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,eAAe;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACnB;AAMD,MAAM,CAAC,OAAO,OAAO,UAAU;IACpB,MAAM,EAAE,MAAM,CAAC;IAEtB,SAAgB,IAAI,EAAE,MAAM,CAAC;IAE7B,SAAgB,MAAM,EAAE,KAAK,EAAE,CAAM;IAErC,SAAgB,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAE9C,OAAO,CAAC,cAAc,CAAK;IAE3B,OAAO,CAAC,eAAe,CAAK;gBAEhB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,2CAAgC;IA0D9E,OAAO,CAAC,YAAY;IA+DpB,YAAY,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS;IAC/D,YAAY,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,eAAe,EAAE;CA2DxE;AAED,YAAY,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,84 @@
1
+ import type ADBReader from './adb.ts';
2
+ import type { MissingKeyBlock } from './blte.ts';
3
+ import type { ArchiveIndex } from './parsers/archiveIndex.ts';
4
+ import type { EncodingData } from './parsers/encodingFile.ts';
5
+ import type { Version } from './parsers/productConfig.ts';
6
+ import type { FileInfo, RootData } from './parsers/rootFile.ts';
7
+ interface ClientPreloadData {
8
+ prefixes: string[];
9
+ archives: Map<string, ArchiveIndex>;
10
+ encoding: EncodingData;
11
+ rootFile: RootData;
12
+ }
13
+ interface FileFetchResultFull {
14
+ type: 'full';
15
+ buffer: Buffer;
16
+ blocks: undefined;
17
+ }
18
+ interface FileFetchResultPartial {
19
+ type: 'partial';
20
+ buffer: Buffer;
21
+ blocks: MissingKeyBlock[];
22
+ }
23
+ type FileFetchResult = FileFetchResultFull | FileFetchResultPartial;
24
+ declare enum LogLevel {
25
+ error = 0,
26
+ warn = 1,
27
+ info = 2,
28
+ debug = 3
29
+ }
30
+ export default class CASCClient {
31
+ readonly region: string;
32
+ readonly product: string;
33
+ readonly version: Version;
34
+ readonly name2FileDataID: Map<string, number>;
35
+ readonly keys: Map<string, Uint8Array<ArrayBufferLike>>;
36
+ preload?: ClientPreloadData;
37
+ static getProductVersion(region: string, product: string): Promise<Version | undefined>;
38
+ static LocaleFlags: {
39
+ readonly enUS: 2;
40
+ readonly koKR: 4;
41
+ readonly frFR: 16;
42
+ readonly deDE: 32;
43
+ readonly zhCN: 64;
44
+ readonly esES: 128;
45
+ readonly zhTW: 256;
46
+ readonly enGB: 512;
47
+ readonly esMX: 4096;
48
+ readonly ruRU: 8192;
49
+ readonly ptBR: 16384;
50
+ readonly itIT: 32768;
51
+ readonly ptPT: 65536;
52
+ };
53
+ static ContentFlags: {
54
+ readonly Install: 4;
55
+ readonly LoadOnWindows: 8;
56
+ readonly LoadOnMacOS: 16;
57
+ readonly x86_32: 32;
58
+ readonly x86_64: 64;
59
+ readonly LowViolence: 128;
60
+ readonly DoNotLoad: 256;
61
+ readonly UpdatePlugin: 2048;
62
+ readonly ARM64: 32768;
63
+ readonly Encrypted: 134217728;
64
+ readonly NoNameHash: 268435456;
65
+ readonly UncommonResolution: 536870912;
66
+ readonly Bundle: 1073741824;
67
+ readonly NoCompression: 2147483648;
68
+ };
69
+ static LogLevel: typeof LogLevel;
70
+ logLevel: LogLevel;
71
+ constructor(region: string, product: string, version: Version, logLevel?: LogLevel);
72
+ private log;
73
+ init(): Promise<void>;
74
+ loadRemoteListFile(): Promise<void>;
75
+ loadRemoteTACTKeys(): Promise<void>;
76
+ loadTACTKeys(): Promise<void>;
77
+ loadBroadcastTACTKeys(adb: ADBReader): void;
78
+ getFileDataIDByName(name: string): number | undefined;
79
+ getContentKeysByFileDataID(fileDataID: number): FileInfo[] | undefined;
80
+ getFileByContentKey(cKey: string, allowMissingKey?: false): Promise<FileFetchResultFull>;
81
+ getFileByContentKey(cKey: string, allowMissingKey: true): Promise<FileFetchResult>;
82
+ }
83
+ export type { Version, ClientPreloadData, ArchiveIndex, EncodingData, RootData, FileInfo, FileFetchResultFull, FileFetchResultPartial, FileFetchResult, MissingKeyBlock, };
84
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,SAAS,MAAM,UAAU,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEhE,UAAU,iBAAiB;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACpC,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,QAAQ,CAAC;CACtB;AAED,UAAU,mBAAmB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,SAAS,CAAC;CACrB;AAED,UAAU,sBAAsB;IAC5B,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,KAAK,eAAe,GAAG,mBAAmB,GAAG,sBAAsB,CAAC;AAEpE,aAAK,QAAQ;IACT,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;CACZ;AASD,MAAM,CAAC,OAAO,OAAO,UAAU;IAC3B,SAAgB,MAAM,EAAE,MAAM,CAAC;IAE/B,SAAgB,OAAO,EAAE,MAAM,CAAC;IAEhC,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC,SAAgB,eAAe,sBAA6B;IAE5D,SAAgB,IAAI,2CAAiC;IAE9C,OAAO,CAAC,EAAE,iBAAiB,CAAC;WAEtB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAO7F,OAAc,WAAW;;;;;;;;;;;;;;MAAe;IAGxC,OAAc,YAAY;;;;;;;;;;;;;;;MAAgB;IAG1C,OAAc,QAAQ,kBAAY;IAE3B,QAAQ,EAAE,QAAQ,CAAC;gBAEd,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,WAAgB;IAOvF,OAAO,CAAC,GAAG;IAUL,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA+GrB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAWnC,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBnC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAqCnC,qBAAqB,CAAC,GAAG,EAAE,SAAS,GAAG,IAAI;IAkC3C,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAUrD,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,EAAE,GAAG,SAAS;IAQhE,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,mBAAmB,CAAC;IACxF,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,GAAG,OAAO,CAAC,eAAe,CAAC;CAyD3F;AAED,YAAY,EACR,OAAO,EACP,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,mBAAmB,EACnB,sBAAsB,EACtB,eAAe,EACf,eAAe,GAClB,CAAC"}
package/dist/dbd.d.ts ADDED
@@ -0,0 +1,26 @@
1
+ import type WDCReader from './wdc.ts';
2
+ interface Column {
3
+ name: string;
4
+ type: string;
5
+ isID: boolean;
6
+ isInline: boolean;
7
+ isRelation: boolean;
8
+ isSigned: boolean;
9
+ size?: number;
10
+ arraySize?: number;
11
+ }
12
+ type BasicColumnData = number | bigint | string | undefined;
13
+ type ColumnData = BasicColumnData | BasicColumnData[];
14
+ export default class DBDParser {
15
+ readonly wdc: WDCReader;
16
+ readonly definitions: Map<string, string>;
17
+ columns: Column[];
18
+ private cache;
19
+ private constructor();
20
+ private init;
21
+ static parse(wdc: WDCReader): Promise<DBDParser>;
22
+ getAllIDs(): number[];
23
+ getRowData(id: number): Record<string, ColumnData> | undefined;
24
+ }
25
+ export type { Column, ColumnData, BasicColumnData, };
26
+ //# sourceMappingURL=dbd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dbd.d.ts","sourceRoot":"","sources":["../src/dbd.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,SAAS,MAAM,UAAU,CAAC;AAStC,UAAU,MAAM;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,KAAK,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;AAE5D,KAAK,UAAU,GAAG,eAAe,GAAG,eAAe,EAAE,CAAC;AA8DtD,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,SAAgB,GAAG,EAAE,SAAS,CAAC;IAE/B,SAAgB,WAAW,sBAA6B;IAEjD,OAAO,EAAE,MAAM,EAAE,CAAM;IAE9B,OAAO,CAAC,KAAK,CAAiD;IAE9D,OAAO;YAIO,IAAI;WAqFL,KAAK,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAQtD,SAAS,IAAI,MAAM,EAAE;IAIrB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,SAAS;CAgOjE;AAED,YAAY,EACR,MAAM,EACN,UAAU,EACV,eAAe,GAClB,CAAC"}
@@ -0,0 +1,21 @@
1
+ declare const CACHE_DIRS: {
2
+ build: string;
3
+ indexes: string;
4
+ data: string;
5
+ dbd: string;
6
+ };
7
+ export declare const getDataFile: (prefixes: string[], key: string, type: keyof typeof CACHE_DIRS, buildCKey: string, { name, partialOffset, partialLength, showProgress, showAttemptFail, }?: {
8
+ name?: string;
9
+ partialOffset?: number;
10
+ partialLength?: number;
11
+ showProgress?: boolean;
12
+ showAttemptFail?: boolean;
13
+ }) => Promise<Buffer>;
14
+ export declare const getConfigFile: (prefixes: string[], key: string, { showProgress, showAttemptFail, }?: {
15
+ showProgress?: boolean;
16
+ showAttemptFail?: boolean;
17
+ }) => Promise<string>;
18
+ export declare const getProductVersions: (region: string, product: string) => Promise<string>;
19
+ export declare const getProductCDNs: (region: string, product: string) => Promise<string>;
20
+ export {};
21
+ //# sourceMappingURL=fetcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetcher.d.ts","sourceRoot":"","sources":["../src/fetcher.ts"],"names":[],"mappings":"AAYA,QAAA,MAAM,UAAU;;;;;CAKf,CAAC;AA0HF,eAAO,MAAM,WAAW,aACV,MAAM,EAAE,OACb,MAAM,QACL,MAAM,OAAO,UAAU,aAClB,MAAM,2EAOd;IACC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC7B,KACF,OAAO,CAAC,MAAM,CA0BhB,CAAC;AAEF,eAAO,MAAM,aAAa,aACZ,MAAM,EAAE,OACb,MAAM,uCAGR;IACC,YAAY,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAC;CACrD,KACF,OAAO,CAAC,MAAM,CAGhB,CAAC;AAEF,eAAO,MAAM,kBAAkB,WACnB,MAAM,WACL,MAAM,KAChB,OAAO,CAAC,MAAM,CAQhB,CAAC;AAEF,eAAO,MAAM,cAAc,WACf,MAAM,WACL,MAAM,KAChB,OAAO,CAAC,MAAM,CAQhB,CAAC"}
package/dist/index.cjs CHANGED
@@ -2070,3 +2070,4 @@ exports.ADBReader = ADBReader;
2070
2070
  exports.CASCClient = CASCClient;
2071
2071
  exports.DBDParser = DBDParser;
2072
2072
  exports.WDCReader = WDCReader;
2073
+ //# sourceMappingURL=index.cjs.map