warframe-worldstate-data 2.24.10 → 3.0.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 (284) hide show
  1. package/.lintstagedrc.yml +5 -5
  2. package/.mocharc.yml +7 -1
  3. package/biome.json +51 -0
  4. package/data/languages.json +9 -0
  5. package/data/synthTargets.json +1 -1
  6. package/dist/data/arcanes.json +461 -0
  7. package/dist/data/archonShards.json +224 -0
  8. package/dist/data/conclaveData.json +425 -0
  9. package/dist/data/cs/arcanes.json +461 -0
  10. package/dist/data/cs/archonShards.json +224 -0
  11. package/dist/data/cs/conclaveData.json +425 -0
  12. package/dist/data/cs/eventsData.json +27 -0
  13. package/dist/data/cs/factionsData.json +26 -0
  14. package/dist/data/cs/fissureModifiers.json +26 -0
  15. package/dist/data/cs/languages.json +19240 -0
  16. package/dist/data/cs/missionTypes.json +77 -0
  17. package/dist/data/cs/operationTypes.json +6 -0
  18. package/dist/data/cs/persistentEnemyData.json +21 -0
  19. package/dist/data/cs/solNodes.json +2237 -0
  20. package/dist/data/cs/sortieData.json +4253 -0
  21. package/dist/data/cs/steelPath.json +114 -0
  22. package/dist/data/cs/syndicatesData.json +86 -0
  23. package/dist/data/cs/synthTargets.json +1262 -0
  24. package/dist/data/cs/tutorials.json +17 -0
  25. package/dist/data/cs/upgradeTypes.json +14 -0
  26. package/dist/data/de/arcanes.json +461 -0
  27. package/dist/data/de/archonShards.json +224 -0
  28. package/dist/data/de/conclaveData.json +425 -0
  29. package/dist/data/de/eventsData.json +27 -0
  30. package/dist/data/de/factionsData.json +26 -0
  31. package/dist/data/de/fissureModifiers.json +26 -0
  32. package/dist/data/de/languages.json +19240 -0
  33. package/dist/data/de/missionTypes.json +77 -0
  34. package/dist/data/de/operationTypes.json +6 -0
  35. package/dist/data/de/persistentEnemyData.json +21 -0
  36. package/dist/data/de/solNodes.json +2237 -0
  37. package/dist/data/de/sortieData.json +4253 -0
  38. package/dist/data/de/steelPath.json +114 -0
  39. package/dist/data/de/syndicatesData.json +86 -0
  40. package/dist/data/de/synthTargets.json +1262 -0
  41. package/dist/data/de/tutorials.json +17 -0
  42. package/dist/data/de/upgradeTypes.json +14 -0
  43. package/dist/data/es/arcanes.json +461 -0
  44. package/dist/data/es/archonShards.json +224 -0
  45. package/dist/data/es/conclaveData.json +425 -0
  46. package/dist/data/es/eventsData.json +27 -0
  47. package/dist/data/es/factionsData.json +26 -0
  48. package/dist/data/es/fissureModifiers.json +26 -0
  49. package/dist/data/es/languages.json +19240 -0
  50. package/dist/data/es/missionTypes.json +77 -0
  51. package/dist/data/es/operationTypes.json +6 -0
  52. package/dist/data/es/persistentEnemyData.json +21 -0
  53. package/dist/data/es/solNodes.json +2237 -0
  54. package/dist/data/es/sortieData.json +4253 -0
  55. package/dist/data/es/steelPath.json +114 -0
  56. package/dist/data/es/syndicatesData.json +86 -0
  57. package/dist/data/es/synthTargets.json +1262 -0
  58. package/dist/data/es/tutorials.json +17 -0
  59. package/dist/data/es/upgradeTypes.json +14 -0
  60. package/dist/data/eventsData.json +27 -0
  61. package/dist/data/factionsData.json +26 -0
  62. package/dist/data/fissureModifiers.json +26 -0
  63. package/dist/data/fr/arcanes.json +461 -0
  64. package/dist/data/fr/archonShards.json +224 -0
  65. package/dist/data/fr/conclaveData.json +425 -0
  66. package/dist/data/fr/eventsData.json +27 -0
  67. package/dist/data/fr/factionsData.json +26 -0
  68. package/dist/data/fr/fissureModifiers.json +26 -0
  69. package/dist/data/fr/languages.json +19240 -0
  70. package/dist/data/fr/missionTypes.json +77 -0
  71. package/dist/data/fr/operationTypes.json +6 -0
  72. package/dist/data/fr/persistentEnemyData.json +21 -0
  73. package/dist/data/fr/solNodes.json +2237 -0
  74. package/dist/data/fr/sortieData.json +4253 -0
  75. package/dist/data/fr/steelPath.json +114 -0
  76. package/dist/data/fr/syndicatesData.json +86 -0
  77. package/dist/data/fr/synthTargets.json +1262 -0
  78. package/dist/data/fr/tutorials.json +17 -0
  79. package/dist/data/fr/upgradeTypes.json +14 -0
  80. package/dist/data/index.html +13 -0
  81. package/dist/data/it/arcanes.json +461 -0
  82. package/dist/data/it/archonShards.json +224 -0
  83. package/dist/data/it/conclaveData.json +425 -0
  84. package/dist/data/it/eventsData.json +27 -0
  85. package/dist/data/it/factionsData.json +26 -0
  86. package/dist/data/it/fissureModifiers.json +26 -0
  87. package/dist/data/it/languages.json +19240 -0
  88. package/dist/data/it/missionTypes.json +77 -0
  89. package/dist/data/it/operationTypes.json +6 -0
  90. package/dist/data/it/persistentEnemyData.json +21 -0
  91. package/dist/data/it/solNodes.json +2237 -0
  92. package/dist/data/it/sortieData.json +4253 -0
  93. package/dist/data/it/steelPath.json +114 -0
  94. package/dist/data/it/syndicatesData.json +86 -0
  95. package/dist/data/it/synthTargets.json +1262 -0
  96. package/dist/data/it/tutorials.json +17 -0
  97. package/dist/data/it/upgradeTypes.json +14 -0
  98. package/dist/data/ko/arcanes.json +461 -0
  99. package/dist/data/ko/archonShards.json +224 -0
  100. package/dist/data/ko/conclaveData.json +425 -0
  101. package/dist/data/ko/eventsData.json +27 -0
  102. package/dist/data/ko/factionsData.json +26 -0
  103. package/dist/data/ko/fissureModifiers.json +26 -0
  104. package/dist/data/ko/languages.json +19240 -0
  105. package/dist/data/ko/missionTypes.json +77 -0
  106. package/dist/data/ko/operationTypes.json +6 -0
  107. package/dist/data/ko/persistentEnemyData.json +21 -0
  108. package/dist/data/ko/solNodes.json +2237 -0
  109. package/dist/data/ko/sortieData.json +4253 -0
  110. package/dist/data/ko/steelPath.json +114 -0
  111. package/dist/data/ko/syndicatesData.json +86 -0
  112. package/dist/data/ko/synthTargets.json +1262 -0
  113. package/dist/data/ko/tutorials.json +17 -0
  114. package/dist/data/ko/upgradeTypes.json +14 -0
  115. package/dist/data/languages.json +19249 -0
  116. package/dist/data/missionTypes.json +77 -0
  117. package/dist/data/operationTypes.json +6 -0
  118. package/dist/data/persistentEnemyData.json +21 -0
  119. package/dist/data/pl/arcanes.json +461 -0
  120. package/dist/data/pl/archonShards.json +224 -0
  121. package/dist/data/pl/conclaveData.json +425 -0
  122. package/dist/data/pl/eventsData.json +27 -0
  123. package/dist/data/pl/factionsData.json +26 -0
  124. package/dist/data/pl/fissureModifiers.json +26 -0
  125. package/dist/data/pl/languages.json +19240 -0
  126. package/dist/data/pl/missionTypes.json +77 -0
  127. package/dist/data/pl/operationTypes.json +6 -0
  128. package/dist/data/pl/persistentEnemyData.json +21 -0
  129. package/dist/data/pl/solNodes.json +2237 -0
  130. package/dist/data/pl/sortieData.json +4253 -0
  131. package/dist/data/pl/steelPath.json +114 -0
  132. package/dist/data/pl/syndicatesData.json +86 -0
  133. package/dist/data/pl/synthTargets.json +1262 -0
  134. package/dist/data/pl/tutorials.json +17 -0
  135. package/dist/data/pl/upgradeTypes.json +14 -0
  136. package/dist/data/pt/arcanes.json +461 -0
  137. package/dist/data/pt/archonShards.json +224 -0
  138. package/dist/data/pt/conclaveData.json +425 -0
  139. package/dist/data/pt/eventsData.json +27 -0
  140. package/dist/data/pt/factionsData.json +26 -0
  141. package/dist/data/pt/fissureModifiers.json +26 -0
  142. package/dist/data/pt/languages.json +19240 -0
  143. package/dist/data/pt/missionTypes.json +77 -0
  144. package/dist/data/pt/operationTypes.json +6 -0
  145. package/dist/data/pt/persistentEnemyData.json +21 -0
  146. package/dist/data/pt/solNodes.json +2237 -0
  147. package/dist/data/pt/sortieData.json +4253 -0
  148. package/dist/data/pt/steelPath.json +114 -0
  149. package/dist/data/pt/syndicatesData.json +86 -0
  150. package/dist/data/pt/synthTargets.json +1262 -0
  151. package/dist/data/pt/tutorials.json +17 -0
  152. package/dist/data/pt/upgradeTypes.json +14 -0
  153. package/dist/data/ru/arcanes.json +461 -0
  154. package/dist/data/ru/archonShards.json +224 -0
  155. package/dist/data/ru/conclaveData.json +425 -0
  156. package/dist/data/ru/eventsData.json +27 -0
  157. package/dist/data/ru/factionsData.json +26 -0
  158. package/dist/data/ru/fissureModifiers.json +26 -0
  159. package/dist/data/ru/languages.json +19240 -0
  160. package/dist/data/ru/missionTypes.json +77 -0
  161. package/dist/data/ru/operationTypes.json +6 -0
  162. package/dist/data/ru/persistentEnemyData.json +21 -0
  163. package/dist/data/ru/solNodes.json +2237 -0
  164. package/dist/data/ru/sortieData.json +4253 -0
  165. package/dist/data/ru/steelPath.json +114 -0
  166. package/dist/data/ru/syndicatesData.json +86 -0
  167. package/dist/data/ru/synthTargets.json +1262 -0
  168. package/dist/data/ru/tutorials.json +17 -0
  169. package/dist/data/ru/upgradeTypes.json +14 -0
  170. package/dist/data/solNodes.json +2237 -0
  171. package/dist/data/sortieData.json +4253 -0
  172. package/dist/data/sr/arcanes.json +461 -0
  173. package/dist/data/sr/archonShards.json +224 -0
  174. package/dist/data/sr/conclaveData.json +425 -0
  175. package/dist/data/sr/eventsData.json +27 -0
  176. package/dist/data/sr/factionsData.json +26 -0
  177. package/dist/data/sr/fissureModifiers.json +26 -0
  178. package/dist/data/sr/languages.json +19240 -0
  179. package/dist/data/sr/missionTypes.json +77 -0
  180. package/dist/data/sr/operationTypes.json +6 -0
  181. package/dist/data/sr/persistentEnemyData.json +21 -0
  182. package/dist/data/sr/solNodes.json +2237 -0
  183. package/dist/data/sr/sortieData.json +4253 -0
  184. package/dist/data/sr/steelPath.json +114 -0
  185. package/dist/data/sr/syndicatesData.json +86 -0
  186. package/dist/data/sr/synthTargets.json +1262 -0
  187. package/dist/data/sr/tutorials.json +17 -0
  188. package/dist/data/sr/upgradeTypes.json +14 -0
  189. package/dist/data/steelPath.json +33 -0
  190. package/dist/data/syndicatesData.json +86 -0
  191. package/dist/data/synthTargets.json +1262 -0
  192. package/dist/data/tr/arcanes.json +461 -0
  193. package/dist/data/tr/archonShards.json +224 -0
  194. package/dist/data/tr/conclaveData.json +425 -0
  195. package/dist/data/tr/eventsData.json +27 -0
  196. package/dist/data/tr/factionsData.json +26 -0
  197. package/dist/data/tr/fissureModifiers.json +26 -0
  198. package/dist/data/tr/languages.json +19240 -0
  199. package/dist/data/tr/missionTypes.json +77 -0
  200. package/dist/data/tr/operationTypes.json +6 -0
  201. package/dist/data/tr/persistentEnemyData.json +21 -0
  202. package/dist/data/tr/solNodes.json +2237 -0
  203. package/dist/data/tr/sortieData.json +4253 -0
  204. package/dist/data/tr/steelPath.json +114 -0
  205. package/dist/data/tr/syndicatesData.json +86 -0
  206. package/dist/data/tr/synthTargets.json +1262 -0
  207. package/dist/data/tr/tutorials.json +17 -0
  208. package/dist/data/tr/upgradeTypes.json +14 -0
  209. package/dist/data/tutorials.json +17 -0
  210. package/dist/data/uk/arcanes.json +461 -0
  211. package/dist/data/uk/archonShards.json +224 -0
  212. package/dist/data/uk/conclaveData.json +425 -0
  213. package/dist/data/uk/eventsData.json +27 -0
  214. package/dist/data/uk/factionsData.json +26 -0
  215. package/dist/data/uk/fissureModifiers.json +26 -0
  216. package/dist/data/uk/languages.json +19240 -0
  217. package/dist/data/uk/missionTypes.json +77 -0
  218. package/dist/data/uk/operationTypes.json +6 -0
  219. package/dist/data/uk/persistentEnemyData.json +21 -0
  220. package/dist/data/uk/solNodes.json +2237 -0
  221. package/dist/data/uk/sortieData.json +4253 -0
  222. package/dist/data/uk/steelPath.json +114 -0
  223. package/dist/data/uk/syndicatesData.json +86 -0
  224. package/dist/data/uk/synthTargets.json +1262 -0
  225. package/dist/data/uk/tutorials.json +17 -0
  226. package/dist/data/uk/upgradeTypes.json +14 -0
  227. package/dist/data/upgradeTypes.json +14 -0
  228. package/dist/data/zh/arcanes.json +461 -0
  229. package/dist/data/zh/archonShards.json +224 -0
  230. package/dist/data/zh/conclaveData.json +425 -0
  231. package/dist/data/zh/eventsData.json +27 -0
  232. package/dist/data/zh/factionsData.json +26 -0
  233. package/dist/data/zh/fissureModifiers.json +26 -0
  234. package/dist/data/zh/languages.json +19240 -0
  235. package/dist/data/zh/missionTypes.json +77 -0
  236. package/dist/data/zh/operationTypes.json +6 -0
  237. package/dist/data/zh/persistentEnemyData.json +21 -0
  238. package/dist/data/zh/solNodes.json +2237 -0
  239. package/dist/data/zh/sortieData.json +4253 -0
  240. package/dist/data/zh/steelPath.json +114 -0
  241. package/dist/data/zh/syndicatesData.json +86 -0
  242. package/dist/data/zh/synthTargets.json +1262 -0
  243. package/dist/data/zh/tutorials.json +17 -0
  244. package/dist/data/zh/upgradeTypes.json +14 -0
  245. package/dist/exports-D0bYygo0.d.ts +122 -0
  246. package/dist/exports-DOwA1rwv.js +78 -0
  247. package/dist/exports.d.ts +3 -0
  248. package/dist/exports.js +4 -0
  249. package/dist/integrity-Cp6DXUCT.js +15 -0
  250. package/dist/integrity-hhdd4nAB.d.ts +9 -0
  251. package/dist/safeImport-BXmqy9V4.js +21 -0
  252. package/dist/safeImport.d.ts +10 -0
  253. package/dist/safeImport.js +3 -0
  254. package/dist/timeDate-B78E0z0S.js +74 -0
  255. package/dist/timeDate-BZaZFq86.d.ts +48 -0
  256. package/dist/tools/integrity.d.ts +2 -0
  257. package/dist/tools/integrity.js +3 -0
  258. package/dist/tools/timeDate.d.ts +2 -0
  259. package/dist/tools/timeDate.js +3 -0
  260. package/dist/tools/translation.d.ts +4 -0
  261. package/dist/tools/translation.js +5 -0
  262. package/dist/tools/utilities.d.ts +6 -0
  263. package/dist/tools/utilities.js +7 -0
  264. package/dist/translation-BbEpzl6v.js +342 -0
  265. package/dist/translation-CMA-O2tP.d.ts +292 -0
  266. package/dist/types-Clh1x9kB.d.ts +94 -0
  267. package/dist/types.d.ts +2 -0
  268. package/dist/types.js +0 -0
  269. package/exports.ts +153 -0
  270. package/package.json +31 -18
  271. package/{safeImport.js → safeImport.ts} +8 -4
  272. package/tools/integrity.ts +16 -0
  273. package/tools/sortLanguages.ts +44 -0
  274. package/tools/{timeDate.js → timeDate.ts} +12 -8
  275. package/tools/{translation.js → translation.ts} +79 -52
  276. package/tools/utilities.ts +3 -0
  277. package/tsconfig.json +13 -0
  278. package/tsdown.config.ts +15 -0
  279. package/types.ts +69 -0
  280. package/.eslintignore +0 -3
  281. package/.eslintrc.yml +0 -19
  282. package/exports.js +0 -144
  283. package/tools/integrity.js +0 -15
  284. package/tools/utilities.js +0 -3
@@ -0,0 +1,17 @@
1
+ [
2
+ {
3
+ "regex": "focus",
4
+ "name": "专精",
5
+ "url": "https://youtu.be/IMltFZ97oXc"
6
+ },
7
+ {
8
+ "regex": "mods?",
9
+ "name": "Mods",
10
+ "url": "https://youtu.be/ZuYfEJzpR4A"
11
+ },
12
+ {
13
+ "regex": "dojos?",
14
+ "name": "道场",
15
+ "url": "https://youtu.be/M28grdARKoQ"
16
+ }
17
+ ]
@@ -0,0 +1,14 @@
1
+ {
2
+ "GAMEPLAY_KILL_XP_AMOUNT": {
3
+ "value": "任務擊殺經驗"
4
+ },
5
+ "GAMEPLAY_PICKUP_AMOUNT": {
6
+ "value": "資源掉落加成"
7
+ },
8
+ "GAMEPLAY_MONEY_REWARD_AMOUNT": {
9
+ "value": "現金掉落機會"
10
+ },
11
+ "GAMEPLAY_MONEY_PICKUP_AMOUNT": {
12
+ "value": "現金掉落加成"
13
+ }
14
+ }
@@ -0,0 +1,122 @@
1
+ import { Arcane, ArchonShard, Conclave, Events, SolNode, SortieData, SteelPath, SynthesisTarget } from "./types-Clh1x9kB.js";
2
+
3
+ //#region exports.d.ts
4
+ type Locale = 'de' | 'en' | 'es' | 'fr' | 'it' | 'ko' | 'pl' | 'pt' | 'ru' | 'zh' | 'cs' | 'sr' | 'uk';
5
+ /**
6
+ * Bundles all the data for a particular language
7
+ */
8
+ interface WorldstateLangBundle {
9
+ /**
10
+ * Deprecated: Array of arcane data
11
+ */
12
+ arcanes: Arcane[];
13
+ /**
14
+ * Data for Archon shard colors
15
+ */
16
+ archonShards: Record<string, ArchonShard>;
17
+ /**
18
+ * Data for translating PvP categories and types
19
+ */
20
+ conclave: Conclave;
21
+ /**
22
+ * Deprecated: Data for converting event tags to useable event data.
23
+ * Deprecated in favor of keeping values in languages.json
24
+ */
25
+ events: Events;
26
+ /**
27
+ * Faction universal name to plain-usage name
28
+ */
29
+ factions: Record<string, {
30
+ value: string;
31
+ }>;
32
+ /**
33
+ * Map of fissures to "Warframeified" tier names and numbers
34
+ */
35
+ fissureModifiers: Record<string, {
36
+ value: string;
37
+ num: number;
38
+ }>;
39
+ /**
40
+ * Map of "internal" Warframe strings to useable language strings
41
+ */
42
+ languages: Record<string, {
43
+ value: string;
44
+ desc: string;
45
+ }>;
46
+ /**
47
+ * Map of Mission Type identifiers to their corresponding values
48
+ */
49
+ missionTypes: Record<string, {
50
+ value: string;
51
+ }>;
52
+ /**
53
+ * Global modifiers for applying operations to things like
54
+ * credits, affinity, etc.
55
+ */
56
+ operationTypes: Record<string, {
57
+ value: string;
58
+ symbol: string;
59
+ }>;
60
+ /**
61
+ * Region mapping for indicies to planets
62
+ */
63
+ persistentEnemy: {
64
+ regions: string[];
65
+ };
66
+ /**
67
+ * Nodes in the Sol system, with enemy type and node information
68
+ */
69
+ solNodes: Record<string, SolNode>;
70
+ /**
71
+ * Sortie-specific mapping for modifier type, description, and boss
72
+ */
73
+ sortie: SortieData;
74
+ /**
75
+ * Steel Path mission type translations
76
+ */
77
+ steelPath: SteelPath;
78
+ /**
79
+ * Syndicate data
80
+ */
81
+ syndicates: Record<string, {
82
+ name: string;
83
+ }>;
84
+ /**
85
+ * Synthesis target data for optimal locations to find targets.
86
+ */
87
+ synthTargets: SynthesisTarget[];
88
+ /**
89
+ * Official tutorials.
90
+ * Not many have been released in a long time.
91
+ */
92
+ tutorials: {
93
+ regex: string;
94
+ name: string;
95
+ url: string;
96
+ }[];
97
+ /**
98
+ * Global upgrade types that are modified by #operationTypes
99
+ */
100
+ upgradeTypes: Record<string, {
101
+ value: string;
102
+ }>;
103
+ }
104
+ declare const _default: WorldstateLangBundle & {
105
+ de?: WorldstateLangBundle | undefined;
106
+ en?: WorldstateLangBundle | undefined;
107
+ es?: WorldstateLangBundle | undefined;
108
+ fr?: WorldstateLangBundle | undefined;
109
+ it?: WorldstateLangBundle | undefined;
110
+ ko?: WorldstateLangBundle | undefined;
111
+ pl?: WorldstateLangBundle | undefined;
112
+ pt?: WorldstateLangBundle | undefined;
113
+ ru?: WorldstateLangBundle | undefined;
114
+ zh?: WorldstateLangBundle | undefined;
115
+ cs?: WorldstateLangBundle | undefined;
116
+ sr?: WorldstateLangBundle | undefined;
117
+ uk?: WorldstateLangBundle | undefined;
118
+ } & {
119
+ locales: Locale[];
120
+ };
121
+ //#endregion
122
+ export { Locale, WorldstateLangBundle, _default };
@@ -0,0 +1,78 @@
1
+ import { safeImport_default } from "./safeImport-BXmqy9V4.js";
2
+
3
+ //#region exports.ts
4
+ const locales = [
5
+ "de",
6
+ "es",
7
+ "fr",
8
+ "it",
9
+ "ko",
10
+ "pl",
11
+ "pt",
12
+ "ru",
13
+ "zh",
14
+ "cs",
15
+ "sr",
16
+ "uk"
17
+ ];
18
+ const makeBundle = async () => {
19
+ /**
20
+ * English United States translations bundle,
21
+ * default translations
22
+ * @type {WorldstateLangBundle}
23
+ */
24
+ const enUS = {
25
+ arcanes: await safeImport_default("./data/arcanes.json"),
26
+ archonShards: await safeImport_default("./data/archonShards.json"),
27
+ conclave: await safeImport_default("./data/conclaveData.json"),
28
+ events: await safeImport_default("./data/eventsData.json"),
29
+ factions: await safeImport_default("./data/factionsData.json"),
30
+ fissureModifiers: await safeImport_default("./data/fissureModifiers.json"),
31
+ languages: await safeImport_default("./data/languages.json"),
32
+ missionTypes: await safeImport_default("./data/missionTypes.json"),
33
+ operationTypes: await safeImport_default("./data/operationTypes.json"),
34
+ persistentEnemy: await safeImport_default("./data/persistentEnemyData.json"),
35
+ solNodes: await safeImport_default("./data/solNodes.json"),
36
+ sortie: await safeImport_default("./data/sortieData.json"),
37
+ syndicates: await safeImport_default("./data/syndicatesData.json"),
38
+ tutorials: await safeImport_default("./data/tutorials.json"),
39
+ upgradeTypes: await safeImport_default("./data/upgradeTypes.json"),
40
+ synthTargets: await safeImport_default("./data/synthTargets.json"),
41
+ steelPath: await safeImport_default("./data/steelPath.json")
42
+ };
43
+ const bundle = {
44
+ en: enUS,
45
+ ...enUS,
46
+ locales
47
+ };
48
+ for await (const locale of locales)
49
+ /**
50
+ * Translations bundle for $locale
51
+ * @type {WorldstateLangBundle}
52
+ */
53
+ bundle[locale] = {
54
+ arcanes: await safeImport_default(`./data/${locale}/arcanes.json`, enUS.arcanes),
55
+ archonShards: await safeImport_default(`./data/${locale}/archonShards.json`, enUS.archonShards),
56
+ conclave: await safeImport_default(`./data/${locale}/conclaveData.json`, enUS.conclave),
57
+ events: await safeImport_default(`./data/${locale}/eventsData.json`, enUS.events),
58
+ factions: await safeImport_default(`./data/${locale}/factionsData.json`, enUS.factions),
59
+ fissureModifiers: await safeImport_default(`./data/${locale}/fissureModifiers.json`, enUS.fissureModifiers),
60
+ languages: await safeImport_default(`./data/${locale}/languages.json`, enUS.languages),
61
+ missionTypes: await safeImport_default(`./data/${locale}/missionTypes.json`, enUS.missionTypes),
62
+ operationTypes: await safeImport_default(`./data/${locale}/operationTypes.json`, enUS.operationTypes),
63
+ persistentEnemy: await safeImport_default(`./data/${locale}/persistentEnemyData.json`, enUS.persistentEnemy),
64
+ solNodes: await safeImport_default(`./data/${locale}/solNodes.json`, enUS.solNodes),
65
+ sortie: await safeImport_default(`./data/${locale}/sortieData.json`, enUS.sortie),
66
+ syndicates: await safeImport_default(`./data/${locale}/syndicatesData.json`, enUS.syndicates),
67
+ tutorials: await safeImport_default(`./data/${locale}/tutorials.json`, enUS.tutorials),
68
+ upgradeTypes: await safeImport_default(`./data/${locale}/upgradeTypes.json`, enUS.upgradeTypes),
69
+ synthTargets: await safeImport_default(`./data/${locale}/synthTargets.json`, enUS.synthTargets),
70
+ steelPath: await safeImport_default(`./data/${locale}/steelPath.json`, enUS.steelPath)
71
+ };
72
+ locales.push("en");
73
+ return bundle;
74
+ };
75
+ var exports_default = await makeBundle();
76
+
77
+ //#endregion
78
+ export { exports_default };
@@ -0,0 +1,3 @@
1
+ import "./types-Clh1x9kB.js";
2
+ import { Locale, WorldstateLangBundle, _default } from "./exports-D0bYygo0.js";
3
+ export { Locale, WorldstateLangBundle, _default as default };
@@ -0,0 +1,4 @@
1
+ import "./safeImport-BXmqy9V4.js";
2
+ import { exports_default } from "./exports-DOwA1rwv.js";
3
+
4
+ export { exports_default as default };
@@ -0,0 +1,15 @@
1
+ //#region tools/integrity.ts
2
+ /**
3
+ * @description Insist that the provided data has the required properties.
4
+ * @param thing to encourage to have data
5
+ * @param args arguments to ensure
6
+ */
7
+ const insist = (thing, ...args) => {
8
+ if (!thing || !Object.keys(thing).length) throw new TypeError("The provided data does not have the required properties.");
9
+ args.forEach((arg) => {
10
+ if (!thing[arg]) throw new TypeError("The provided data does not have the required properties.");
11
+ });
12
+ };
13
+
14
+ //#endregion
15
+ export { insist };
@@ -0,0 +1,9 @@
1
+ //#region tools/integrity.d.ts
2
+ /**
3
+ * @description Insist that the provided data has the required properties.
4
+ * @param thing to encourage to have data
5
+ * @param args arguments to ensure
6
+ */
7
+ declare const insist: (thing: Record<string, unknown>, ...args: string[]) => void;
8
+ //#endregion
9
+ export { insist };
@@ -0,0 +1,21 @@
1
+ //#region safeImport.ts
2
+ /**
3
+ * Safely require path, fall back to fallback if module cannot load
4
+ * @param {string} path Path to attempt to load
5
+ * @param {Object} fallback fallback response if error or no module
6
+ * @returns {Promise<any>} module or the default object
7
+ */
8
+ const safeImport = async (path, fallback = {}) => {
9
+ try {
10
+ const mod = await import(path, path.includes(".json") ? { with: { type: "json" } } : {});
11
+ if (mod?.default) return mod.default;
12
+ return mod;
13
+ } catch (error) {
14
+ if ((process.env.LOG_LEVEL || "ERROR").toUpperCase() === "DEBUG") console.debug(`Failed to load module at ${path} ... returning fallback`);
15
+ return fallback;
16
+ }
17
+ };
18
+ var safeImport_default = safeImport;
19
+
20
+ //#endregion
21
+ export { safeImport_default };
@@ -0,0 +1,10 @@
1
+ //#region safeImport.d.ts
2
+ /**
3
+ * Safely require path, fall back to fallback if module cannot load
4
+ * @param {string} path Path to attempt to load
5
+ * @param {Object} fallback fallback response if error or no module
6
+ * @returns {Promise<any>} module or the default object
7
+ */
8
+ declare const safeImport: <T>(path: string, fallback?: T) => Promise<T>;
9
+ //#endregion
10
+ export { safeImport as default };
@@ -0,0 +1,3 @@
1
+ import { safeImport_default } from "./safeImport-BXmqy9V4.js";
2
+
3
+ export { safeImport_default as default };
@@ -0,0 +1,74 @@
1
+ //#region tools/timeDate.ts
2
+ const epochZero = { $date: { $numberLong: 0 } };
3
+ const pieceIsSmoller = (seconds, ceiling, label, timePieces) => {
4
+ if (seconds >= ceiling) {
5
+ timePieces.push(`${Math.floor(seconds / ceiling)}${label}`);
6
+ seconds = Math.floor(seconds) % ceiling;
7
+ }
8
+ return {
9
+ seconds,
10
+ timePieces
11
+ };
12
+ };
13
+ /**
14
+ * @param {number} millis The number of milliseconds in the time delta
15
+ * @returns {string} formatted time delta
16
+ */
17
+ const timeDeltaToString = (millis) => {
18
+ if (typeof millis !== "number") throw new TypeError("millis should be a number");
19
+ let timePieces = [];
20
+ const prefix = millis < 0 ? "-" : "";
21
+ let seconds = Math.abs(millis / 1e3);
22
+ ({seconds, timePieces} = pieceIsSmoller(seconds, 86400, "d", timePieces));
23
+ ({seconds, timePieces} = pieceIsSmoller(seconds, 3600, "h", timePieces));
24
+ ({seconds, timePieces} = pieceIsSmoller(seconds, 60, "m", timePieces));
25
+ /* istanbul ignore else */
26
+ if (seconds >= 0) timePieces.push(`${Math.floor(seconds)}s`);
27
+ return `${prefix}${timePieces.join(" ")}`;
28
+ };
29
+ /**
30
+ * Returns the number of milliseconds between now and a given date
31
+ * @param {Date} d The date from which the current time will be subtracted
32
+ * @param {function} [now] A function that returns the current UNIX time in milliseconds
33
+ * @returns {number} The number of milliseconds after the given date to now
34
+ */
35
+ const fromNow = (d, now = Date.now) => {
36
+ return d.getTime() - now();
37
+ };
38
+ /**
39
+ * Returns the number of milliseconds between a given date and now
40
+ * @param {Date} d The date that the current time will be subtracted from
41
+ * @param {function} [now] A function that returns the current UNIX time in milliseconds
42
+ * @returns {number} The number of milliseconds after now to the given date
43
+ */
44
+ const toNow = (d, now = Date.now) => {
45
+ return now() - d.getTime();
46
+ };
47
+ /**
48
+ * Returns a new Date constructed from a worldState date object
49
+ * @param {Object} d The worldState date object
50
+ * @returns {Date} parsed date from DE date format
51
+ */
52
+ const parseDate = (d) => {
53
+ const safeD = d || epochZero;
54
+ const dt = safeD.$date || epochZero.$date;
55
+ return new Date(safeD.$date ? Number(dt.$numberLong) : 1e3 * d.sec);
56
+ };
57
+ /**
58
+ * An object containing functions to format dates and times
59
+ * @typedef {Record<string, Function>} TimeDateFunctions
60
+ * @property {Function} timeDeltaToString - Converts a time difference to a string
61
+ * @property {Function} fromNow - Returns the number of milliseconds between now and
62
+ * a given date
63
+ * @property {Function} toNow - Returns the number of milliseconds between a given
64
+ * date and now
65
+ */
66
+ var timeDate_default = {
67
+ timeDeltaToString,
68
+ fromNow,
69
+ toNow,
70
+ parseDate
71
+ };
72
+
73
+ //#endregion
74
+ export { fromNow, parseDate, timeDate_default, timeDeltaToString, toNow };
@@ -0,0 +1,48 @@
1
+ //#region tools/timeDate.d.ts
2
+ /**
3
+ * @param {number} millis The number of milliseconds in the time delta
4
+ * @returns {string} formatted time delta
5
+ */
6
+ declare const timeDeltaToString: (millis: number) => string;
7
+ /**
8
+ * Returns the number of milliseconds between now and a given date
9
+ * @param {Date} d The date from which the current time will be subtracted
10
+ * @param {function} [now] A function that returns the current UNIX time in milliseconds
11
+ * @returns {number} The number of milliseconds after the given date to now
12
+ */
13
+ declare const fromNow: (d: Date, now?: () => number) => number;
14
+ /**
15
+ * Returns the number of milliseconds between a given date and now
16
+ * @param {Date} d The date that the current time will be subtracted from
17
+ * @param {function} [now] A function that returns the current UNIX time in milliseconds
18
+ * @returns {number} The number of milliseconds after now to the given date
19
+ */
20
+ declare const toNow: (d: Date, now?: () => number) => number;
21
+ interface WorldStateDate {
22
+ $date?: {
23
+ $numberLong: number;
24
+ };
25
+ }
26
+ /**
27
+ * Returns a new Date constructed from a worldState date object
28
+ * @param {Object} d The worldState date object
29
+ * @returns {Date} parsed date from DE date format
30
+ */
31
+ declare const parseDate: (d?: WorldStateDate) => Date;
32
+ /**
33
+ * An object containing functions to format dates and times
34
+ * @typedef {Record<string, Function>} TimeDateFunctions
35
+ * @property {Function} timeDeltaToString - Converts a time difference to a string
36
+ * @property {Function} fromNow - Returns the number of milliseconds between now and
37
+ * a given date
38
+ * @property {Function} toNow - Returns the number of milliseconds between a given
39
+ * date and now
40
+ */
41
+ declare const _default: {
42
+ timeDeltaToString: (millis: number) => string;
43
+ fromNow: (d: Date, now?: () => number) => number;
44
+ toNow: (d: Date, now?: () => number) => number;
45
+ parseDate: (d?: WorldStateDate) => Date;
46
+ };
47
+ //#endregion
48
+ export { WorldStateDate, _default, fromNow, parseDate, timeDeltaToString, toNow };
@@ -0,0 +1,2 @@
1
+ import { insist } from "../integrity-hhdd4nAB.js";
2
+ export { insist };
@@ -0,0 +1,3 @@
1
+ import { insist } from "../integrity-Cp6DXUCT.js";
2
+
3
+ export { insist };
@@ -0,0 +1,2 @@
1
+ import { WorldStateDate, _default, fromNow, parseDate, timeDeltaToString, toNow } from "../timeDate-BZaZFq86.js";
2
+ export { WorldStateDate, _default as default, fromNow, parseDate, timeDeltaToString, toNow };
@@ -0,0 +1,3 @@
1
+ import { fromNow, parseDate, timeDate_default, timeDeltaToString, toNow } from "../timeDate-B78E0z0S.js";
2
+
3
+ export { timeDate_default as default, fromNow, parseDate, timeDeltaToString, toNow };
@@ -0,0 +1,4 @@
1
+ import "../types-Clh1x9kB.js";
2
+ import "../exports-D0bYygo0.js";
3
+ import { _default, archonShard, archonShardColor, archonShardUpgradeType, conclaveCategory, conclaveChallenge, conclaveMode, faction, fissureModifier, fissureTier, languageDesc, languageString, lastResourceName, missionType, node, nodeEnemy, nodeMissionType, operation, operationSymbol, region, sortieBoss, sortieFaction, sortieModDesc, sortieModifier, splitResourceName, steelPath, syndicate, toTitleCase, translateCalendarEvent, translateFocus, translatePolarity, translateSeason, upgrade } from "../translation-CMA-O2tP.js";
4
+ export { archonShard, archonShardColor, archonShardUpgradeType, conclaveCategory, conclaveChallenge, conclaveMode, _default as default, faction, fissureModifier, fissureTier, languageDesc, languageString, lastResourceName, missionType, node, nodeEnemy, nodeMissionType, operation, operationSymbol, region, sortieBoss, sortieFaction, sortieModDesc, sortieModifier, splitResourceName, steelPath, syndicate, toTitleCase, translateCalendarEvent, translateFocus, translatePolarity, translateSeason, upgrade };
@@ -0,0 +1,5 @@
1
+ import "../safeImport-BXmqy9V4.js";
2
+ import "../exports-DOwA1rwv.js";
3
+ import { archonShard, archonShardColor, archonShardUpgradeType, conclaveCategory, conclaveChallenge, conclaveMode, faction, fissureModifier, fissureTier, languageDesc, languageString, lastResourceName, missionType, node, nodeEnemy, nodeMissionType, operation, operationSymbol, region, sortieBoss, sortieFaction, sortieModDesc, sortieModifier, splitResourceName, steelPath, syndicate, toTitleCase, translateCalendarEvent, translateFocus, translatePolarity, translateSeason, translation_default, upgrade } from "../translation-BbEpzl6v.js";
4
+
5
+ export { archonShard, archonShardColor, archonShardUpgradeType, conclaveCategory, conclaveChallenge, conclaveMode, translation_default as default, faction, fissureModifier, fissureTier, languageDesc, languageString, lastResourceName, missionType, node, nodeEnemy, nodeMissionType, operation, operationSymbol, region, sortieBoss, sortieFaction, sortieModDesc, sortieModifier, splitResourceName, steelPath, syndicate, toTitleCase, translateCalendarEvent, translateFocus, translatePolarity, translateSeason, upgrade };
@@ -0,0 +1,6 @@
1
+ import "../types-Clh1x9kB.js";
2
+ import "../exports-D0bYygo0.js";
3
+ import { insist } from "../integrity-hhdd4nAB.js";
4
+ import { WorldStateDate, fromNow, parseDate, timeDeltaToString, toNow } from "../timeDate-BZaZFq86.js";
5
+ import { archonShard, archonShardColor, archonShardUpgradeType, conclaveCategory, conclaveChallenge, conclaveMode, faction, fissureModifier, fissureTier, languageDesc, languageString, lastResourceName, missionType, node, nodeEnemy, nodeMissionType, operation, operationSymbol, region, sortieBoss, sortieFaction, sortieModDesc, sortieModifier, splitResourceName, steelPath, syndicate, toTitleCase, translateCalendarEvent, translateFocus, translatePolarity, translateSeason, upgrade } from "../translation-CMA-O2tP.js";
6
+ export { WorldStateDate, archonShard, archonShardColor, archonShardUpgradeType, conclaveCategory, conclaveChallenge, conclaveMode, faction, fissureModifier, fissureTier, fromNow, insist, languageDesc, languageString, lastResourceName, missionType, node, nodeEnemy, nodeMissionType, operation, operationSymbol, parseDate, region, sortieBoss, sortieFaction, sortieModDesc, sortieModifier, splitResourceName, steelPath, syndicate, timeDeltaToString, toNow, toTitleCase, translateCalendarEvent, translateFocus, translatePolarity, translateSeason, upgrade };
@@ -0,0 +1,7 @@
1
+ import "../safeImport-BXmqy9V4.js";
2
+ import "../exports-DOwA1rwv.js";
3
+ import { insist } from "../integrity-Cp6DXUCT.js";
4
+ import { fromNow, parseDate, timeDeltaToString, toNow } from "../timeDate-B78E0z0S.js";
5
+ import { archonShard, archonShardColor, archonShardUpgradeType, conclaveCategory, conclaveChallenge, conclaveMode, faction, fissureModifier, fissureTier, languageDesc, languageString, lastResourceName, missionType, node, nodeEnemy, nodeMissionType, operation, operationSymbol, region, sortieBoss, sortieFaction, sortieModDesc, sortieModifier, splitResourceName, steelPath, syndicate, toTitleCase, translateCalendarEvent, translateFocus, translatePolarity, translateSeason, upgrade } from "../translation-BbEpzl6v.js";
6
+
7
+ export { archonShard, archonShardColor, archonShardUpgradeType, conclaveCategory, conclaveChallenge, conclaveMode, faction, fissureModifier, fissureTier, fromNow, insist, languageDesc, languageString, lastResourceName, missionType, node, nodeEnemy, nodeMissionType, operation, operationSymbol, parseDate, region, sortieBoss, sortieFaction, sortieModDesc, sortieModifier, splitResourceName, steelPath, syndicate, timeDeltaToString, toNow, toTitleCase, translateCalendarEvent, translateFocus, translatePolarity, translateSeason, upgrade };