@ianlucas/cs2-lib-inspect 5.0.0 → 5.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.
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { CS2EconomyItem, CS2InventoryItem, type CS2ItemTypeValues } from "@ianlucas/cs2-lib";
1
+ import { type CS2BaseInventoryItem, CS2EconomyInstance, CS2EconomyItem, CS2InventoryItem, type CS2ItemTypeValues } from "@ianlucas/cs2-lib";
2
2
  export declare const CS2PreviewRarity: {
3
3
  "#ded6cc": number;
4
4
  "#b0c3d9": number;
@@ -11,7 +11,49 @@ export declare const CS2PreviewRarity: {
11
11
  };
12
12
  export declare const CS2_PREVIEW_HAS_STICKERS: CS2ItemTypeValues[];
13
13
  export declare const CS2_PREVIEW_INSPECTABLE_ITEMS: CS2ItemTypeValues[];
14
+ export declare const CS2_PREVIEW_ATTRIBUTELESS_ITEMS: CS2ItemTypeValues[];
14
15
  export declare const CS2_PREVIEW_URL = "steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20";
15
- export declare const CS2_PREVIEW_COMMAND = "csgo_econ_action_preview";
16
+ export declare const CS2_PREVIEW_COMMAND = "csgo_econ_action_preview ";
16
17
  export declare function generateInspectLink(item: CS2EconomyItem | CS2InventoryItem): string;
17
18
  export declare function isCommandInspect(inspectLink: string): boolean;
19
+ export declare function isSteamInspectLink(inspectLink: string): boolean;
20
+ export interface CSFloatStickerInfo {
21
+ slot: number;
22
+ stickerId: number;
23
+ wear?: number;
24
+ rotation?: number;
25
+ offsetX?: number;
26
+ offsetY?: number;
27
+ tintId?: number;
28
+ pattern?: number;
29
+ }
30
+ export interface CSFloatItemInfo {
31
+ defindex: number;
32
+ paintindex?: number;
33
+ paintseed?: number;
34
+ floatvalue?: number;
35
+ killeatervalue?: number;
36
+ customname?: string;
37
+ musicindex?: number;
38
+ stickers?: CSFloatStickerInfo[];
39
+ keychains?: CSFloatStickerInfo[];
40
+ origin?: number;
41
+ quality?: number;
42
+ rarity?: number;
43
+ floatid?: number;
44
+ imageurl?: string;
45
+ min?: number;
46
+ max?: number;
47
+ weapon_type?: string;
48
+ item_name?: string;
49
+ rarity_name?: string;
50
+ quality_name?: string;
51
+ wear_name?: string;
52
+ full_item_name?: string;
53
+ s?: string;
54
+ a?: string;
55
+ d?: string;
56
+ m?: string;
57
+ }
58
+ export declare function parseInspectLink(economy: CS2EconomyInstance, inspectLink: string): CS2BaseInventoryItem;
59
+ export declare function parseCSFloatItemInfo(economy: CS2EconomyInstance, itemInfo: CSFloatItemInfo): CS2BaseInventoryItem;
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@
2
2
  * Copyright (c) candyboyz, Ian Lucas. All rights reserved.
3
3
  * Licensed under the MIT License. See License.txt in the project root for license information.
4
4
  *--------------------------------------------------------------------------------------------*/
5
- import { CS2EconomyItem, CS2InventoryItem, CS2ItemType, CS2RarityColor, CS2_MIN_SEED, CS2_MIN_STICKER_WEAR } from "@ianlucas/cs2-lib";
5
+ import { CS2EconomyInstance, CS2EconomyItem, CS2InventoryItem, CS2ItemType, CS2RarityColor, CS2_MIN_SEED, CS2_MIN_STICKER_WEAR, CS2_MIN_WEAR, ensure } from "@ianlucas/cs2-lib";
6
6
  import { Buffer } from "buffer";
7
7
  import CRC32 from "crc-32";
8
8
  import { CEconItemPreviewDataBlock } from "./Protobufs/cstrike15_gcmessages.js";
@@ -18,7 +18,6 @@ export const CS2PreviewRarity = {
18
18
  };
19
19
  export const CS2_PREVIEW_HAS_STICKERS = [
20
20
  CS2ItemType.Graffiti,
21
- CS2ItemType.MusicKit,
22
21
  CS2ItemType.Patch,
23
22
  CS2ItemType.Sticker
24
23
  ];
@@ -35,14 +34,26 @@ export const CS2_PREVIEW_INSPECTABLE_ITEMS = [
35
34
  CS2ItemType.Sticker,
36
35
  CS2ItemType.Weapon
37
36
  ];
37
+ export const CS2_PREVIEW_ATTRIBUTELESS_ITEMS = [
38
+ ...CS2_PREVIEW_HAS_STICKERS,
39
+ CS2ItemType.Collectible,
40
+ CS2ItemType.Keychain,
41
+ CS2ItemType.MusicKit
42
+ ];
38
43
  export const CS2_PREVIEW_URL = "steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20";
39
- export const CS2_PREVIEW_COMMAND = "csgo_econ_action_preview";
44
+ export const CS2_PREVIEW_COMMAND = "csgo_econ_action_preview ";
40
45
  function floatToBytes(floatValue) {
41
46
  const floatArray = new Float32Array(1);
42
47
  floatArray[0] = floatValue;
43
48
  const byteArray = new Uint32Array(floatArray.buffer);
44
49
  return byteArray[0];
45
50
  }
51
+ function bytesToFloat(byteValue) {
52
+ const byteArray = new Uint32Array(1);
53
+ byteArray[0] = byteValue;
54
+ const floatArray = new Float32Array(byteArray.buffer);
55
+ return floatArray[0];
56
+ }
46
57
  function getEconomyItemPreviewData(item) {
47
58
  const { def, index, rarity, type, tint } = item;
48
59
  const hasStickers = CS2_PREVIEW_HAS_STICKERS.includes(type);
@@ -113,11 +124,233 @@ export function generateInspectLink(item) {
113
124
  const hex = generateHex(attributes);
114
125
  // There's a char limit for launching the game using the steam:// protocol.
115
126
  if (CS2_PREVIEW_URL.length + hex.length > 300) {
116
- return `${CS2_PREVIEW_COMMAND} ${hex}`;
127
+ return `${CS2_PREVIEW_COMMAND}${hex}`;
117
128
  }
118
129
  return `${CS2_PREVIEW_URL}${hex}`;
119
130
  }
120
131
  export function isCommandInspect(inspectLink) {
121
132
  return inspectLink.startsWith(CS2_PREVIEW_COMMAND);
122
133
  }
134
+ export function isSteamInspectLink(inspectLink) {
135
+ try {
136
+ const decoded = decodeURI(inspectLink);
137
+ return /^steam:\/\/rungame\/730\/\d+\/[+ ]csgo_econ_action_preview [SM]\d+A\d+D\d+$/.test(decoded);
138
+ }
139
+ catch {
140
+ return false;
141
+ }
142
+ }
143
+ function parseHex(hexString) {
144
+ // Convert hex string to buffer
145
+ const buffer = Buffer.from(hexString.toLowerCase(), "hex");
146
+ // First byte should be 0
147
+ if (buffer[0] !== 0) {
148
+ throw new Error("Invalid format: First byte should be 0");
149
+ }
150
+ // Extract the data and CRC portions
151
+ const payload = buffer.slice(0, -4); // Everything except last 4 bytes
152
+ const providedCrcBuffer = buffer.slice(-4); // Last 4 bytes
153
+ const providedCrc = providedCrcBuffer.readUInt32BE(0);
154
+ // Extract just the attributes data (removing the first byte)
155
+ const attributesData = payload.slice(1);
156
+ // Verify CRC
157
+ const calculatedCrc = CRC32.buf(payload);
158
+ const calculatedXCrc = (calculatedCrc & 0xffff) ^ (attributesData.byteLength * calculatedCrc);
159
+ const finalCalculatedCrc = (calculatedXCrc & 0xffffffff) >>> 0;
160
+ if (finalCalculatedCrc !== providedCrc) {
161
+ throw new Error("CRC verification failed");
162
+ }
163
+ // Convert the binary data back to CEconItemPreviewDataBlock
164
+ return CEconItemPreviewDataBlock.fromBinary(attributesData);
165
+ }
166
+ export function parseInspectLink(economy, inspectLink) {
167
+ const hex = isCommandInspect(inspectLink)
168
+ ? inspectLink.replace(CS2_PREVIEW_COMMAND, "")
169
+ : inspectLink.replace(CS2_PREVIEW_URL, "");
170
+ const attributes = parseHex(hex);
171
+ let economyItem = economy.itemsAsArray.find((item) => item.def === attributes.defindex);
172
+ let baseInventoryItem;
173
+ if (economyItem !== undefined && CS2_PREVIEW_HAS_STICKERS.includes(economyItem.type)) {
174
+ // Collectible comes from the initial assignment.
175
+ if (attributes.stickers.length === 1) {
176
+ // Patch, Sticker, and Graffiti
177
+ economyItem = economy.itemsAsArray.find((item) => item.def === attributes.defindex &&
178
+ item.index === attributes.stickers[0].stickerId &&
179
+ item.tint === attributes.stickers[0].tintId);
180
+ }
181
+ if (economyItem !== undefined) {
182
+ baseInventoryItem = { id: economyItem.id };
183
+ }
184
+ }
185
+ else {
186
+ if (attributes.musicindex !== undefined) {
187
+ // Music Kit
188
+ economyItem = economy.itemsAsArray.find((item) => item.isMusicKit() && item.index === attributes.musicindex);
189
+ if (economyItem !== undefined) {
190
+ baseInventoryItem = { id: economyItem.id, statTrak: attributes.killeatervalue };
191
+ }
192
+ }
193
+ else {
194
+ economyItem = economy.itemsAsArray.find(attributes.paintindex !== undefined
195
+ ? (item) => item.def === attributes.defindex && item.index === attributes.paintindex
196
+ : (item) => item.def === attributes.defindex);
197
+ }
198
+ if (economyItem !== undefined && baseInventoryItem === undefined) {
199
+ if (economyItem.isKeychain()) {
200
+ baseInventoryItem = {
201
+ id: economyItem.id,
202
+ seed: attributes.keychains[0]?.pattern ?? attributes.paintseed
203
+ };
204
+ }
205
+ else {
206
+ baseInventoryItem = {
207
+ id: economyItem.id,
208
+ seed: attributes.paintseed,
209
+ wear: attributes.paintwear !== undefined ? bytesToFloat(attributes.paintwear) : undefined,
210
+ statTrak: attributes.killeatervalue,
211
+ nameTag: attributes.customname,
212
+ keychains: attributes.keychains.length > 0
213
+ ? Object.fromEntries(attributes.keychains.map(({ offsetX, offsetY, pattern, slot, stickerId }) => [
214
+ ensure(slot),
215
+ {
216
+ id: ensure(economy.itemsAsArray.find((item) => item.isKeychain() && item.index === stickerId)?.id),
217
+ seed: pattern,
218
+ x: offsetX,
219
+ y: offsetY
220
+ }
221
+ ]))
222
+ : undefined,
223
+ stickers: !economyItem.isAgent() && attributes.stickers.length > 0
224
+ ? Object.fromEntries(attributes.stickers?.map(({ slot, stickerId, offsetX, offsetY, wear, rotation }) => [
225
+ ensure(slot),
226
+ {
227
+ id: ensure(economy.itemsAsArray.find((item) => item.isSticker() && item.index === stickerId)?.id),
228
+ rotation,
229
+ wear,
230
+ x: offsetX,
231
+ y: offsetY
232
+ }
233
+ ]))
234
+ : undefined,
235
+ patches: economyItem.isAgent() && attributes.stickers.length > 0
236
+ ? Object.fromEntries(attributes.stickers.map(({ slot, stickerId }) => [
237
+ ensure(slot),
238
+ ensure(economy.itemsAsArray.find((item) => item.isPatch() && item.index === stickerId)?.id)
239
+ ]))
240
+ : undefined
241
+ };
242
+ }
243
+ }
244
+ }
245
+ if (baseInventoryItem !== undefined) {
246
+ if (baseInventoryItem.seed === CS2_MIN_SEED) {
247
+ baseInventoryItem.seed = undefined;
248
+ }
249
+ if (baseInventoryItem.wear === CS2_MIN_WEAR) {
250
+ baseInventoryItem.wear = undefined;
251
+ }
252
+ if (baseInventoryItem.stickers !== undefined) {
253
+ for (const sticker of Object.values(baseInventoryItem.stickers)) {
254
+ if (sticker.wear === CS2_MIN_STICKER_WEAR) {
255
+ sticker.wear = undefined;
256
+ }
257
+ }
258
+ }
259
+ }
260
+ return ensure(baseInventoryItem);
261
+ }
262
+ export function parseCSFloatItemInfo(economy, itemInfo) {
263
+ const stickers = itemInfo.stickers ?? [];
264
+ const keychains = itemInfo.keychains ?? [];
265
+ let economyItem = economy.itemsAsArray.find((item) => item.def === itemInfo.defindex);
266
+ let baseInventoryItem;
267
+ if (economyItem !== undefined && CS2_PREVIEW_HAS_STICKERS.includes(economyItem.type)) {
268
+ // Collectible comes from the initial assignment.
269
+ if (stickers.length === 1) {
270
+ // Patch, Sticker, and Graffiti
271
+ economyItem = economy.itemsAsArray.find((item) => item.def === itemInfo.defindex &&
272
+ item.index === stickers[0].stickerId &&
273
+ item.tint === stickers[0].tintId);
274
+ }
275
+ if (economyItem !== undefined) {
276
+ baseInventoryItem = { id: economyItem.id };
277
+ }
278
+ }
279
+ else {
280
+ if (itemInfo.musicindex !== undefined) {
281
+ // Music Kit
282
+ economyItem = economy.itemsAsArray.find((item) => item.isMusicKit() && item.index === itemInfo.musicindex);
283
+ if (economyItem !== undefined) {
284
+ baseInventoryItem = { id: economyItem.id, statTrak: itemInfo.killeatervalue };
285
+ }
286
+ }
287
+ else {
288
+ economyItem = economy.itemsAsArray.find(itemInfo.paintindex !== undefined
289
+ ? (item) => item.def === itemInfo.defindex && item.index === itemInfo.paintindex
290
+ : (item) => item.def === itemInfo.defindex);
291
+ }
292
+ if (economyItem !== undefined && baseInventoryItem === undefined) {
293
+ if (economyItem.isKeychain()) {
294
+ baseInventoryItem = {
295
+ id: economyItem.id,
296
+ seed: keychains[0]?.pattern ?? itemInfo.paintseed
297
+ };
298
+ }
299
+ else {
300
+ baseInventoryItem = {
301
+ id: economyItem.id,
302
+ seed: itemInfo.paintseed,
303
+ wear: itemInfo.floatvalue,
304
+ statTrak: itemInfo.killeatervalue,
305
+ nameTag: itemInfo.customname,
306
+ keychains: keychains.length > 0
307
+ ? Object.fromEntries(keychains.map(({ offsetX, offsetY, pattern, slot, stickerId }) => [
308
+ slot,
309
+ {
310
+ id: ensure(economy.itemsAsArray.find((item) => item.isKeychain() && item.index === stickerId)?.id),
311
+ seed: pattern,
312
+ x: offsetX,
313
+ y: offsetY
314
+ }
315
+ ]))
316
+ : undefined,
317
+ stickers: !economyItem.isAgent() && stickers.length > 0
318
+ ? Object.fromEntries(stickers.map(({ slot, stickerId, offsetX, offsetY, wear, rotation }) => [
319
+ slot,
320
+ {
321
+ id: ensure(economy.itemsAsArray.find((item) => item.isSticker() && item.index === stickerId)?.id),
322
+ rotation,
323
+ wear,
324
+ x: offsetX,
325
+ y: offsetY
326
+ }
327
+ ]))
328
+ : undefined,
329
+ patches: economyItem.isAgent() && stickers.length > 0
330
+ ? Object.fromEntries(stickers.map(({ slot, stickerId }) => [
331
+ slot,
332
+ ensure(economy.itemsAsArray.find((item) => item.isPatch() && item.index === stickerId)?.id)
333
+ ]))
334
+ : undefined
335
+ };
336
+ }
337
+ }
338
+ }
339
+ if (baseInventoryItem !== undefined) {
340
+ if (baseInventoryItem.seed === CS2_MIN_SEED) {
341
+ baseInventoryItem.seed = undefined;
342
+ }
343
+ if (baseInventoryItem.wear === CS2_MIN_WEAR) {
344
+ baseInventoryItem.wear = undefined;
345
+ }
346
+ if (baseInventoryItem.stickers !== undefined) {
347
+ for (const sticker of Object.values(baseInventoryItem.stickers)) {
348
+ if (sticker.wear === CS2_MIN_STICKER_WEAR) {
349
+ sticker.wear = undefined;
350
+ }
351
+ }
352
+ }
353
+ }
354
+ return ensure(baseInventoryItem);
355
+ }
123
356
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,31 +2,46 @@
2
2
  "name": "@ianlucas/cs2-lib-inspect",
3
3
  "description": "An extension for cs2-lib to create Counter-Strike 2 inspect links",
4
4
  "license": "MIT",
5
- "repository": "ianlucas/cs2-lib-inspect",
5
+ "author": "Ian Lucas",
6
+ "homepage": "https://github.com/ianlucas/cs2-lib-inspect#readme",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/ianlucas/cs2-lib-inspect.git"
10
+ },
11
+ "bugs": {
12
+ "url": "https://github.com/ianlucas/cs2-lib-inspect/issues"
13
+ },
6
14
  "type": "module",
7
- "main": "dist/index.js",
15
+ "main": "./dist/index.js",
16
+ "types": "./dist/index.d.ts",
17
+ "sideEffects": false,
8
18
  "scripts": {
9
19
  "docs": "typedoc --out docs src/index.ts",
10
20
  "format": "prettier . --write",
11
21
  "generate:protobufs": "npx protoc --ts_out ./src/Protobufs --proto_path src/Protobufs src/Protobufs/cstrike15_gcmessages.proto",
12
22
  "prepack": "([ -d dist ] && rm -rf dist); tsc",
23
+ "test": "vitest --run --testTimeout 120000",
13
24
  "typecheck": "tsc --noEmit",
14
25
  "upgrade": "npx npm-check-updates@latest --target minor -u"
15
26
  },
16
27
  "dependencies": {
17
- "@protobuf-ts/runtime": "^2.9.4",
28
+ "@protobuf-ts/runtime": "^2.11.1",
18
29
  "buffer": "^6.0.3",
19
- "crc-32": "^1.2.2"
30
+ "crc-32": "^1.2.2",
31
+ "vitest": "^4.1.0"
20
32
  },
21
33
  "peerDependencies": {
22
34
  "@ianlucas/cs2-lib": "^7.0.0"
23
35
  },
24
36
  "devDependencies": {
25
- "@protobuf-ts/plugin": "^2.9.4",
37
+ "@protobuf-ts/plugin": "^2.11.1",
26
38
  "@total-typescript/tsconfig": "^1.0.4",
27
- "prettier": "^3.5.2",
28
- "typedoc": "^0.27.9",
29
- "typescript": "^5.8.2"
39
+ "prettier": "^3.8.1",
40
+ "typedoc": "^0.28.17",
41
+ "typescript": "^5.9.3"
42
+ },
43
+ "engines": {
44
+ "node": ">=20"
30
45
  },
31
- "version": "5.0.0"
46
+ "version": "5.1.0"
32
47
  }