@axiapps/bridge-metrics 0.1.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 (86) hide show
  1. package/dist/aggregationTypes.cjs +18 -0
  2. package/dist/aggregationTypes.d.cts +21 -0
  3. package/dist/aggregationTypes.d.ts +21 -0
  4. package/dist/aggregationTypes.js +1 -0
  5. package/dist/boonGeneration.cjs +308 -0
  6. package/dist/boonGeneration.d.cts +65 -0
  7. package/dist/boonGeneration.d.ts +65 -0
  8. package/dist/boonGeneration.js +16 -0
  9. package/dist/chunk-42DVJJLC.js +106 -0
  10. package/dist/chunk-4F55Q6K2.js +0 -0
  11. package/dist/chunk-ELKDB763.js +349 -0
  12. package/dist/chunk-FU74LJEM.js +77 -0
  13. package/dist/chunk-J3YCFY3C.js +37 -0
  14. package/dist/chunk-JP2ZL44R.js +18 -0
  15. package/dist/chunk-K2SRAMGC.js +0 -0
  16. package/dist/chunk-KRHODGVU.js +48 -0
  17. package/dist/chunk-LIGIXSSA.js +1383 -0
  18. package/dist/chunk-M2WR3JBQ.js +0 -0
  19. package/dist/chunk-PMVLNDZZ.js +279 -0
  20. package/dist/chunk-R5EJF5AW.js +147 -0
  21. package/dist/chunk-RGXSI3AI.js +298 -0
  22. package/dist/chunk-UFJJ6WLD.js +197 -0
  23. package/dist/chunk-WW5XFXGC.js +234 -0
  24. package/dist/chunk-ZFZS7JFU.js +10 -0
  25. package/dist/combatMetrics.cjs +251 -0
  26. package/dist/combatMetrics.d.cts +26 -0
  27. package/dist/combatMetrics.d.ts +26 -0
  28. package/dist/combatMetrics.js +21 -0
  29. package/dist/computePlayerAggregation.cjs +2042 -0
  30. package/dist/computePlayerAggregation.d.cts +249 -0
  31. package/dist/computePlayerAggregation.d.ts +249 -0
  32. package/dist/computePlayerAggregation.js +30 -0
  33. package/dist/conditionsMetrics.cjs +328 -0
  34. package/dist/conditionsMetrics.d.cts +67 -0
  35. package/dist/conditionsMetrics.d.ts +67 -0
  36. package/dist/conditionsMetrics.js +18 -0
  37. package/dist/constants.cjs +36 -0
  38. package/dist/constants.d.cts +18 -0
  39. package/dist/constants.d.ts +18 -0
  40. package/dist/constants.js +10 -0
  41. package/dist/dashboardMetrics.cjs +226 -0
  42. package/dist/dashboardMetrics.d.cts +29 -0
  43. package/dist/dashboardMetrics.d.ts +29 -0
  44. package/dist/dashboardMetrics.js +42 -0
  45. package/dist/dpsReportTypes.cjs +18 -0
  46. package/dist/dpsReportTypes.d.cts +294 -0
  47. package/dist/dpsReportTypes.d.ts +294 -0
  48. package/dist/dpsReportTypes.js +1 -0
  49. package/dist/index.cjs +2902 -0
  50. package/dist/index.d.cts +13 -0
  51. package/dist/index.d.ts +13 -0
  52. package/dist/index.js +152 -0
  53. package/dist/metrics-methods.json +38 -0
  54. package/dist/metricsSettings.cjs +75 -0
  55. package/dist/metricsSettings.d.cts +23 -0
  56. package/dist/metricsSettings.d.ts +23 -0
  57. package/dist/metricsSettings.js +8 -0
  58. package/dist/professionUtils.cjs +265 -0
  59. package/dist/professionUtils.d.cts +10 -0
  60. package/dist/professionUtils.d.ts +10 -0
  61. package/dist/professionUtils.js +20 -0
  62. package/dist/reportMetrics.cjs +224 -0
  63. package/dist/reportMetrics.d.cts +85 -0
  64. package/dist/reportMetrics.d.ts +85 -0
  65. package/dist/reportMetrics.js +12 -0
  66. package/dist/resUtility.cjs +52 -0
  67. package/dist/resUtility.d.cts +5 -0
  68. package/dist/resUtility.d.ts +5 -0
  69. package/dist/resUtility.js +8 -0
  70. package/dist/roles.cjs +18 -0
  71. package/dist/roles.d.cts +17 -0
  72. package/dist/roles.d.ts +17 -0
  73. package/dist/roles.js +1 -0
  74. package/dist/rollup.cjs +378 -0
  75. package/dist/rollup.d.cts +103 -0
  76. package/dist/rollup.d.ts +103 -0
  77. package/dist/rollup.js +16 -0
  78. package/dist/statsMetrics.cjs +153 -0
  79. package/dist/statsMetrics.d.cts +39 -0
  80. package/dist/statsMetrics.d.ts +39 -0
  81. package/dist/statsMetrics.js +22 -0
  82. package/dist/timestampUtils.cjs +63 -0
  83. package/dist/timestampUtils.d.cts +12 -0
  84. package/dist/timestampUtils.d.ts +12 -0
  85. package/dist/timestampUtils.js +9 -0
  86. package/package.json +44 -0
@@ -0,0 +1,294 @@
1
+ interface DamageModifierInfo {
2
+ name: string;
3
+ icon: string;
4
+ description: string;
5
+ nonMultiplier?: boolean;
6
+ skillBased?: boolean;
7
+ approximate?: boolean;
8
+ incoming: boolean;
9
+ }
10
+ interface DamageModifierData {
11
+ id: number;
12
+ damageModifiers: Array<{
13
+ hitCount: number;
14
+ totalHitCount: number;
15
+ damageGain: number;
16
+ totalDamage: number;
17
+ }>;
18
+ }
19
+ interface DPSReportJSON {
20
+ evtc: {
21
+ type: string;
22
+ version: string;
23
+ bossId: number;
24
+ };
25
+ encounterDuration: string;
26
+ recordedBy: string;
27
+ uploadTime: number;
28
+ players: Player[];
29
+ targets: Target[];
30
+ durationMS: number;
31
+ fightName: string;
32
+ success: boolean;
33
+ skillMap?: {
34
+ [key: string]: {
35
+ name: string;
36
+ icon: string;
37
+ autoAttack?: boolean;
38
+ isTraitProc?: boolean;
39
+ isGearProc?: boolean;
40
+ isUnconditionalProc?: boolean;
41
+ };
42
+ };
43
+ buffMap?: {
44
+ [key: string]: {
45
+ name: string;
46
+ stacking: boolean;
47
+ icon?: string;
48
+ classification?: string;
49
+ };
50
+ };
51
+ combatReplayMetaData?: {
52
+ inchToPixel?: number;
53
+ pollingRate?: number;
54
+ sizes?: [number, number];
55
+ maps?: Array<{
56
+ url?: string;
57
+ }>;
58
+ };
59
+ wvWMapData?: {
60
+ redTeamID?: number;
61
+ greenTeamID?: number;
62
+ blueTeamID?: number;
63
+ redShardID?: number;
64
+ greenShardID?: number;
65
+ blueShardID?: number;
66
+ };
67
+ damageModMap?: Record<string, DamageModifierInfo>;
68
+ personalDamageMods?: Record<string, number[]>;
69
+ }
70
+ interface Target {
71
+ id: number;
72
+ name: string;
73
+ isFake: boolean;
74
+ dpsAll: StatsAll[];
75
+ statsAll: StatsAll[];
76
+ defenses: Defenses[];
77
+ totalHealth: number;
78
+ healthPercentBurned: number;
79
+ enemyPlayer: boolean;
80
+ teamID?: number;
81
+ }
82
+ interface Player {
83
+ name: string;
84
+ display_name: string;
85
+ character_name: string;
86
+ profession: string;
87
+ teamID?: number;
88
+ elite_spec: number;
89
+ group: number;
90
+ dpsAll: StatsAll[];
91
+ statsAll?: StatsAll[];
92
+ dpsTargets?: StatsTarget[][];
93
+ defenses: Defenses[];
94
+ support: Support[];
95
+ rotation?: Array<{
96
+ id: number;
97
+ /** Per-instance cast events for this skill. castTime is ms from fight start. */
98
+ skills?: Array<{
99
+ castTime: number;
100
+ duration: number;
101
+ timeGained?: number;
102
+ quickness?: number;
103
+ }>;
104
+ }>;
105
+ extHealingStats?: {
106
+ outgoingHealingAllies?: {
107
+ healing: number;
108
+ downedHealing?: number;
109
+ }[][];
110
+ totalHealingDist?: Array<Array<{
111
+ id: number;
112
+ totalHealing: number;
113
+ totalDownedHealing?: number;
114
+ hits: number;
115
+ min: number;
116
+ max: number;
117
+ indirectHealing?: boolean;
118
+ }>>;
119
+ /** Cumulative total outgoing healing per second (to all targets). Shape: [phase][time]. Diff to get per-second. */
120
+ healing1S?: number[][];
121
+ /** Cumulative healing received per second (from all sources). Shape: [phase][time]. Diff to get per-second. */
122
+ healingReceived1S?: number[][];
123
+ };
124
+ extBarrierStats?: {
125
+ outgoingBarrierAllies?: {
126
+ barrier: number;
127
+ }[][];
128
+ totalBarrierDist?: Array<Array<{
129
+ id: number;
130
+ totalBarrier: number;
131
+ hits: number;
132
+ min: number;
133
+ max: number;
134
+ indirectBarrier?: boolean;
135
+ }>>;
136
+ };
137
+ squadBuffVolumes?: SquadBuffVolume[];
138
+ selfBuffs?: BuffGeneration[];
139
+ groupBuffs?: BuffGeneration[];
140
+ squadBuffs?: BuffGeneration[];
141
+ selfBuffsActive?: BuffGeneration[];
142
+ groupBuffsActive?: BuffGeneration[];
143
+ squadBuffsActive?: BuffGeneration[];
144
+ buffUptimes?: BuffUptimesEntry[];
145
+ totalDamageDist?: TotalDamageDist[][];
146
+ targetDamageDist?: TotalDamageDist[][][];
147
+ totalDamageTaken?: TotalDamageTaken[][];
148
+ statsTargets?: StatsTarget[][];
149
+ combatReplayData?: {
150
+ positions?: Array<[number, number]>;
151
+ dead?: Array<[number, number]>;
152
+ down?: Array<[number, number]>;
153
+ start?: number;
154
+ };
155
+ healthPercents?: Array<[number, number]>;
156
+ hasCommanderTag?: boolean;
157
+ notInSquad?: boolean;
158
+ account?: string;
159
+ stabGeneration?: number;
160
+ activeTimes?: number[];
161
+ damageModifiers?: DamageModifierData[];
162
+ incomingDamageModifiers?: DamageModifierData[];
163
+ damage1S?: number[][];
164
+ targetDamage1S?: number[][][];
165
+ /** Cumulative incoming damage per second. Shape: [phase][time]. Diff adjacent entries to get per-second values. */
166
+ damageTaken1S?: number[][];
167
+ }
168
+ interface StatsAll {
169
+ dps: number;
170
+ damage: number;
171
+ breakbarDamage: number;
172
+ downContribution?: number;
173
+ stackDist?: number;
174
+ distToCom?: number;
175
+ appliedCrowdControl?: number;
176
+ appliedCrowdControlDuration?: number;
177
+ }
178
+ interface Defenses {
179
+ downCount: number;
180
+ deadCount: number;
181
+ missedCount: number;
182
+ blockedCount: number;
183
+ evadedCount: number;
184
+ dodgeCount: number;
185
+ interruptedCount: number;
186
+ damageTaken: number;
187
+ /** Boons stripped from this player by enemies. */
188
+ boonStrips?: number;
189
+ boonStripsTime?: number;
190
+ /** Conditions cleansed from this player (by self or allies). */
191
+ conditionCleanses?: number;
192
+ conditionCleansesTime?: number;
193
+ /** Number of condition damage hits received. */
194
+ conditionDamageTakenCount?: number;
195
+ receivedCrowdControl?: number;
196
+ receivedCrowdControlDuration?: number;
197
+ }
198
+ interface SquadBuffVolume {
199
+ id: number;
200
+ buffVolumeData: {
201
+ outgoing: number;
202
+ }[];
203
+ }
204
+ interface BuffGeneration {
205
+ id: number;
206
+ buffData?: {
207
+ generation?: number;
208
+ wasted?: number;
209
+ }[];
210
+ }
211
+ /** @deprecated Use BuffUptimesEntry */
212
+ interface BuffUptimes {
213
+ id: number;
214
+ buffData: {
215
+ uptime: number;
216
+ }[];
217
+ statesPerSource: {
218
+ [key: string]: number[][];
219
+ };
220
+ }
221
+ /**
222
+ * Per-player per-buff entry in the `buffUptimes` array.
223
+ * `states` is an array of `[timeMs, stackCount]` pairs recording state-change
224
+ * events throughout the fight. The value at any given millisecond is the last
225
+ * `stackCount` whose `timeMs` is ≤ the queried time.
226
+ */
227
+ interface BuffUptimesEntry {
228
+ id: number;
229
+ buffData: {
230
+ uptime: number;
231
+ presence?: number;
232
+ }[];
233
+ /** `[timeMs, stackCount]` state-change pairs, sorted by time ascending. */
234
+ states?: Array<[number, number]>;
235
+ statesPerSource?: {
236
+ [key: string]: Array<[number, number]>;
237
+ };
238
+ }
239
+ interface TotalDamageDist {
240
+ id: number;
241
+ hits: number;
242
+ connectedHits: number;
243
+ flank: number;
244
+ crit: number;
245
+ glance: number;
246
+ totalDamage: number;
247
+ missed: number;
248
+ interrupted: number;
249
+ evaded: number;
250
+ blocked: number;
251
+ min: number;
252
+ max: number;
253
+ downContribution?: number;
254
+ }
255
+ interface TotalDamageTaken {
256
+ id: number;
257
+ hits: number;
258
+ connectedHits: number;
259
+ flank: number;
260
+ crit: number;
261
+ glance: number;
262
+ totalDamage: number;
263
+ missed: number;
264
+ interrupted: number;
265
+ evaded: number;
266
+ blocked: number;
267
+ min: number;
268
+ max: number;
269
+ indirectDamage: boolean;
270
+ }
271
+ interface StatsTarget {
272
+ killed: number;
273
+ downed: number;
274
+ downContribution: number;
275
+ againstDownedCount: number;
276
+ againstDownedDamage: number;
277
+ interrupts?: number;
278
+ }
279
+ interface Support {
280
+ condiCleanse: number;
281
+ condiCleanseTime?: number;
282
+ condiCleanseSelf: number;
283
+ condiCleanseTimeSelf?: number;
284
+ boonStrips: number;
285
+ boonStripsTime?: number;
286
+ boonStripDownContribution?: number;
287
+ boonStripDownContributionTime?: number;
288
+ stunBreak?: number;
289
+ removedStunDuration?: number;
290
+ resurrects: number;
291
+ resurrectTime?: number;
292
+ }
293
+
294
+ export type { BuffGeneration, BuffUptimes, BuffUptimesEntry, DPSReportJSON, DamageModifierData, DamageModifierInfo, Defenses, Player, SquadBuffVolume, StatsAll, StatsTarget, Support, Target, TotalDamageDist, TotalDamageTaken };
@@ -0,0 +1 @@
1
+ import "./chunk-K2SRAMGC.js";