@lycoristech/azurapi 0.1.0 → 0.1.2

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.
@@ -1,14 +1,26 @@
1
1
  import type { Ship } from "../schema/output/ship.js";
2
+ import type { IdMap } from "../schema/output/ship.js";
2
3
  /**
3
- * Write a name/alias → canonical id map to disk.
4
+ * Build the name/alias → canonical id map.
4
5
  *
5
6
  * Shape: Record<string, string>
6
7
  *
7
8
  * For each ship: emits names.en → id, names.cn → id, names.jp → id, names.code → id
8
9
  * For each groupRow: emits padded code → group_type string (legacy AzurAPI lookup)
9
10
  *
10
- * Last-writer-wins for duplicate names.
11
+ * Collisions: first-writer-wins, with ships visited in ascending numeric id order.
12
+ * Core factions have 5-digit ids, META 6-digit (97xxxx) and collabs 7-digit, so a
13
+ * shared display name resolves to the core-faction ship: "Enterprise" → USS
14
+ * Enterprise (10706) not HMS Enterprise (20232), "Neptune" → HMS Neptune (29901)
15
+ * not the Neptunia collab (1010001), likewise Fubuki and Kasumi. The other ship
16
+ * stays reachable through its names.code ("HMS Enterprise", "HDN Neptune", ...)
17
+ * or its id. Code names never shadow another ship's display name.
11
18
  */
19
+ export declare function buildIdMap(ships: Ship[], groupRows: Array<{
20
+ code: number;
21
+ group_type: number;
22
+ }>): IdMap;
23
+ /** Write the id map (see buildIdMap) to disk. */
12
24
  export declare function writeIdMap(ships: Ship[], groupRows: Array<{
13
25
  code: number;
14
26
  group_type: number;
@@ -1 +1 @@
1
- {"version":3,"file":"writeIdMap.d.ts","sourceRoot":"","sources":["../../src/output/writeIdMap.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAOrD;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,IAAI,EAAE,EACb,SAAS,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,EACtD,UAAU,SAAqB,GAC9B,IAAI,CA+BN"}
1
+ {"version":3,"file":"writeIdMap.d.ts","sourceRoot":"","sources":["../../src/output/writeIdMap.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAMtD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,IAAI,EAAE,EACb,SAAS,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,GACrD,KAAK,CA2BP;AAED,iDAAiD;AACjD,wBAAgB,UAAU,CACxB,KAAK,EAAE,IAAI,EAAE,EACb,SAAS,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,EACtD,UAAU,SAAqB,GAC9B,IAAI,CAMN"}
@@ -4,27 +4,33 @@ import path from "path";
4
4
  // writeIdMap
5
5
  // ---------------------------------------------------------------------------
6
6
  /**
7
- * Write a name/alias → canonical id map to disk.
7
+ * Build the name/alias → canonical id map.
8
8
  *
9
9
  * Shape: Record<string, string>
10
10
  *
11
11
  * For each ship: emits names.en → id, names.cn → id, names.jp → id, names.code → id
12
12
  * For each groupRow: emits padded code → group_type string (legacy AzurAPI lookup)
13
13
  *
14
- * Last-writer-wins for duplicate names.
14
+ * Collisions: first-writer-wins, with ships visited in ascending numeric id order.
15
+ * Core factions have 5-digit ids, META 6-digit (97xxxx) and collabs 7-digit, so a
16
+ * shared display name resolves to the core-faction ship: "Enterprise" → USS
17
+ * Enterprise (10706) not HMS Enterprise (20232), "Neptune" → HMS Neptune (29901)
18
+ * not the Neptunia collab (1010001), likewise Fubuki and Kasumi. The other ship
19
+ * stays reachable through its names.code ("HMS Enterprise", "HDN Neptune", ...)
20
+ * or its id. Code names never shadow another ship's display name.
15
21
  */
16
- export function writeIdMap(ships, groupRows, outputPath = "data/id-map.json") {
22
+ export function buildIdMap(ships, groupRows) {
17
23
  const map = {};
24
+ const ordered = [...ships].sort((a, b) => Number(a.id) - Number(b.id));
18
25
  // Collect all EN names first so we don't let names.code overwrite a real ship name
19
26
  const enNames = new Set();
20
- for (const ship of ships) {
27
+ for (const ship of ordered) {
21
28
  if (ship.names.en !== undefined)
22
29
  enNames.add(ship.names.en);
23
30
  }
24
- // Per-ship name entries (first-writer-wins for code names to avoid collisions)
25
- for (const ship of ships) {
31
+ for (const ship of ordered) {
26
32
  const { id, names } = ship;
27
- if (names.en !== undefined)
33
+ if (names.en !== undefined && !(names.en in map))
28
34
  map[names.en] = id;
29
35
  if (names.cn !== undefined && !(names.cn in map))
30
36
  map[names.cn] = id;
@@ -39,7 +45,11 @@ export function writeIdMap(ships, groupRows, outputPath = "data/id-map.json") {
39
45
  const paddedCode = String(row.code).padStart(3, "0");
40
46
  map[paddedCode] = String(row.group_type);
41
47
  }
42
- const json = JSON.stringify(map, null, 2);
48
+ return map;
49
+ }
50
+ /** Write the id map (see buildIdMap) to disk. */
51
+ export function writeIdMap(ships, groupRows, outputPath = "data/id-map.json") {
52
+ const json = JSON.stringify(buildIdMap(ships, groupRows), null, 2);
43
53
  const dir = path.dirname(path.resolve(outputPath));
44
54
  fs.mkdirSync(dir, { recursive: true });
45
55
  fs.writeFileSync(outputPath, json, "utf-8");
@@ -1 +1 @@
1
- {"version":3,"file":"writeIdMap.js","sourceRoot":"","sources":["../../src/output/writeIdMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CACxB,KAAa,EACb,SAAsD,EACtD,UAAU,GAAG,kBAAkB;IAE/B,MAAM,GAAG,GAAU,EAAE,CAAC;IAEtB,mFAAmF;IACnF,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,+EAA+E;IAC/E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAC3B,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS;YAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAC/C,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,CAAC;YAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QACrE,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,CAAC;YAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QACrE,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED,0DAA0D;IAC1D,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACrD,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAE1C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IACnD,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC"}
1
+ {"version":3,"file":"writeIdMap.js","sourceRoot":"","sources":["../../src/output/writeIdMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAIxB,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,UAAU,CACxB,KAAa,EACb,SAAsD;IAEtD,MAAM,GAAG,GAAU,EAAE,CAAC;IACtB,MAAM,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvE,mFAAmF;IACnF,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAC3B,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,CAAC;YAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QACrE,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,CAAC;YAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QACrE,IAAI,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,CAAC;YAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QACrE,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED,0DAA0D;IAC1D,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACrD,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,iDAAiD;AACjD,MAAM,UAAU,UAAU,CACxB,KAAa,EACb,SAAsD,EACtD,UAAU,GAAG,kBAAkB;IAE/B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAEnE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IACnD,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9C,CAAC"}
@@ -10,7 +10,14 @@ export declare const RARITY_MAP: Record<number, "Normal" | "Rare" | "Elite" | "S
10
10
  * - else → RARITY_MAP[rarity] ?? "Normal"
11
11
  */
12
12
  export declare function rarityName(rarity: number, isResearch: boolean): string;
13
- /** Nationality int → display string. Matches Azur Lane wiki convention. */
13
+ /**
14
+ * Nationality int → display string. Matches Azur Lane wiki convention.
15
+ *
16
+ * Codes verified against upstream ship_data_group.json + ship_data_statistics.json
17
+ * (AzurLaneTools/AzurLaneData 4cca5c24, 2026-05-08) and the game's own faction list in
18
+ * sharecfgdata/gametip.lua (EN 9.3.384); see tests/translate/enums.test.ts.
19
+ * Each collab has its own code from 101 upward, in release order.
20
+ */
14
21
  export declare const NATIONALITY_MAP: Record<number, string>;
15
22
  /** Look up a nationality code; falls back to "Universal". */
16
23
  export declare function nationalityName(code: number): string;
@@ -1 +1 @@
1
- {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../src/translate/enums.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAM1D,kDAAkD;AAClD,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,YAAY,GAAG,YAAY,CAOhG,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,CAMtE;AAMD,2EAA2E;AAC3E,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA4BlD,CAAC;AAEF,6DAA6D;AAC7D,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAMD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAKrE,CAAC;AAEF,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAElE;AAMD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,SAAS,GAAG,SAAS,CAa3E,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAatD,CAAC"}
1
+ {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../src/translate/enums.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAM1D,kDAAkD;AAClD,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,YAAY,GAAG,YAAY,CAOhG,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,CAMtE;AAMD;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAiClD,CAAC;AAEF,6DAA6D;AAC7D,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAMD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAKrE,CAAC;AAEF,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAElE;AAMD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,SAAS,GAAG,SAAS,CAa3E,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAatD,CAAC"}
@@ -30,7 +30,14 @@ export function rarityName(rarity, isResearch) {
30
30
  // ---------------------------------------------------------------------------
31
31
  // Nationality
32
32
  // ---------------------------------------------------------------------------
33
- /** Nationality int → display string. Matches Azur Lane wiki convention. */
33
+ /**
34
+ * Nationality int → display string. Matches Azur Lane wiki convention.
35
+ *
36
+ * Codes verified against upstream ship_data_group.json + ship_data_statistics.json
37
+ * (AzurLaneTools/AzurLaneData 4cca5c24, 2026-05-08) and the game's own faction list in
38
+ * sharecfgdata/gametip.lua (EN 9.3.384); see tests/translate/enums.test.ts.
39
+ * Each collab has its own code from 101 upward, in release order.
40
+ */
34
41
  export const NATIONALITY_MAP = {
35
42
  0: "Universal",
36
43
  1: "Eagle Union",
@@ -44,21 +51,26 @@ export const NATIONALITY_MAP = {
44
51
  9: "Vichya Dominion",
45
52
  10: "Iris Orthodoxy",
46
53
  11: "Kingdom of Tulipa",
47
- 96: "Universal",
48
- 97: "Tempesta",
49
- 98: "Universal",
50
- 101: "META",
51
- 102: "Universal",
52
- 103: "Universal",
53
- 104: "Universal",
54
- 105: "Neptunia",
55
- 106: "KizunaAI",
56
- 107: "Hololive",
57
- 108: "Venus Vacation",
58
- 109: "The Idolmaster",
59
- 110: "SSSS",
60
- 111: "Atelier Ryza",
61
- 112: "Senran Kagura",
54
+ 12: "Liga de Pedrería", // Valparaíso (new faction, EN 9.3.384)
55
+ 96: "Tempesta", // MOT Royal Fortune, Golden Hind, ...
56
+ 97: "META", // Hunter.META, Fortune.META, ...
57
+ 98: "Universal", // Bulins
58
+ 101: "Neptunia", // HDN Neptune, Noire, Blanc, ...
59
+ 102: "Bilibili", // 22, 33 (CN only)
60
+ 103: "Utawarerumono", // Kuon, Nekone, Rurutie, ... (CN/JP only)
61
+ 104: "KizunaAI",
62
+ 105: "Hololive", // Shirakami Fubuki, Tokino Sora, ...
63
+ 106: "Venus Vacation", // Marie Rose, Honoka, ...
64
+ 107: "The Idolmaster", // Haruka Amami, ...
65
+ 108: "SSSS", // Rikka Takarada, ...
66
+ 109: "Atelier Ryza", // Reisalin Stout, ...
67
+ 110: "Senran Kagura", // Asuka, Ikaruga, ...
68
+ 111: "To LOVE-Ru", // Lala Satalin Deviluke, ...
69
+ 112: "Black Rock Shooter", // BLACK★ROCK SHOOTER, DEAD MASTER
70
+ 113: "Atelier Yumia", // Yumia Liessfeldt, ...
71
+ 114: "DanMachi", // Hestia, Ryu Lion
72
+ 115: "Date A Live", // Tohka Yatogami, ...
73
+ 117: "NieR:Automata", // A2, 2B (EN 9.3.384)
62
74
  };
63
75
  /** Look up a nationality code; falls back to "Universal". */
64
76
  export function nationalityName(code) {
@@ -1 +1 @@
1
- {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/translate/enums.ts"],"names":[],"mappings":"AAEA,8EAA8E;AAC9E,SAAS;AACT,8EAA8E;AAE9E,kDAAkD;AAClD,MAAM,CAAC,MAAM,UAAU,GAA8E;IACnG,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,YAAY;CAChB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,UAAmB;IAC5D,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,MAAM,KAAK,CAAC;YAAE,OAAO,UAAU,CAAC;QACpC,IAAI,MAAM,KAAK,CAAC;YAAE,OAAO,UAAU,CAAC;IACtC,CAAC;IACD,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC;AACxC,CAAC;AAED,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E,2EAA2E;AAC3E,MAAM,CAAC,MAAM,eAAe,GAA2B;IACrD,CAAC,EAAE,WAAW;IACd,CAAC,EAAE,aAAa;IAChB,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,eAAe;IAClB,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,eAAe;IAClB,CAAC,EAAE,iBAAiB;IACpB,CAAC,EAAE,qBAAqB;IACxB,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,iBAAiB;IACpB,EAAE,EAAE,gBAAgB;IACpB,EAAE,EAAE,mBAAmB;IACvB,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,WAAW;IACf,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,eAAe;CACrB,CAAC;AAEF,6DAA6D;AAC7D,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC;AAC9C,CAAC;AAED,8EAA8E;AAC9E,cAAc;AACd,8EAA8E;AAE9E;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,eAAe,GAA8C;IACxE,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,QAAQ;CACZ,CAAC;AAEF,0EAA0E;AAC1E,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC;AACzC,CAAC;AAED,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAgD;IAC9E,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,WAAW;IACd,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,SAAS,EAAI,yBAAyB;IACzC,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,SAAS,EAAI,2BAA2B;IAC3C,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,OAAO;IACV,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,SAAS,EAAG,6BAA6B;CAC9C,CAAC;AAEF,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAA2B;IACzD,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,WAAW;IACd,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,cAAc;IACjB,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,SAAS;IACZ,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,SAAS;CACd,CAAC"}
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/translate/enums.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lycoristech/azurapi",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -17,6 +17,7 @@
17
17
  ],
18
18
  "scripts": {
19
19
  "build": "tsc -p tsconfig.build.json && tsc -p tsconfig.cjs.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json",
20
+ "convert:lua": "python3 -I scripts/lua2json.py upstream/azurlane-lua upstream/azurlane-data --regions EN,CN,JP",
20
21
  "build:data": "tsx scripts/build-data.ts",
21
22
  "verify": "tsx scripts/verify.ts",
22
23
  "test": "vitest run",