@ianlucas/cs2-lib-inspect 5.5.0 → 5.5.1

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/package.json CHANGED
@@ -28,7 +28,7 @@
28
28
  "@protobuf-ts/runtime": "^2.11.1",
29
29
  "buffer": "^6.0.3",
30
30
  "crc-32": "^1.2.2",
31
- "vitest": "^4.1.0"
31
+ "vitest": "^4.1.4"
32
32
  },
33
33
  "peerDependencies": {
34
34
  "@ianlucas/cs2-lib": "^7.0.0"
@@ -36,12 +36,12 @@
36
36
  "devDependencies": {
37
37
  "@protobuf-ts/plugin": "^2.11.1",
38
38
  "@total-typescript/tsconfig": "^1.0.4",
39
- "prettier": "^3.8.1",
40
- "typedoc": "^0.28.17",
41
- "typescript": "^5.9.3"
39
+ "prettier": "^3.8.3",
40
+ "typedoc": "^0.28.19",
41
+ "typescript": "^6.0.3"
42
42
  },
43
43
  "engines": {
44
44
  "node": ">=20"
45
45
  },
46
- "version": "5.5.0"
46
+ "version": "5.5.1"
47
47
  }
@@ -1,165 +0,0 @@
1
- import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
2
- import type { IBinaryWriter } from "@protobuf-ts/runtime";
3
- import type { BinaryReadOptions } from "@protobuf-ts/runtime";
4
- import type { IBinaryReader } from "@protobuf-ts/runtime";
5
- import type { PartialMessage } from "@protobuf-ts/runtime";
6
- import { MessageType } from "@protobuf-ts/runtime";
7
- /**
8
- * @generated from protobuf message CEconItemPreviewDataBlock
9
- */
10
- export interface CEconItemPreviewDataBlock {
11
- /**
12
- * @generated from protobuf field: optional uint32 accountid = 1
13
- */
14
- accountid?: number;
15
- /**
16
- * @generated from protobuf field: optional uint64 itemid = 2
17
- */
18
- itemid?: bigint;
19
- /**
20
- * @generated from protobuf field: optional uint32 defindex = 3
21
- */
22
- defindex?: number;
23
- /**
24
- * @generated from protobuf field: optional uint32 paintindex = 4
25
- */
26
- paintindex?: number;
27
- /**
28
- * @generated from protobuf field: optional uint32 rarity = 5
29
- */
30
- rarity?: number;
31
- /**
32
- * @generated from protobuf field: optional uint32 quality = 6
33
- */
34
- quality?: number;
35
- /**
36
- * @generated from protobuf field: optional uint32 paintwear = 7
37
- */
38
- paintwear?: number;
39
- /**
40
- * @generated from protobuf field: optional uint32 paintseed = 8
41
- */
42
- paintseed?: number;
43
- /**
44
- * @generated from protobuf field: optional uint32 killeaterscoretype = 9
45
- */
46
- killeaterscoretype?: number;
47
- /**
48
- * @generated from protobuf field: optional uint32 killeatervalue = 10
49
- */
50
- killeatervalue?: number;
51
- /**
52
- * @generated from protobuf field: optional string customname = 11
53
- */
54
- customname?: string;
55
- /**
56
- * @generated from protobuf field: repeated CEconItemPreviewDataBlock.Sticker stickers = 12
57
- */
58
- stickers: CEconItemPreviewDataBlock_Sticker[];
59
- /**
60
- * @generated from protobuf field: optional uint32 inventory = 13
61
- */
62
- inventory?: number;
63
- /**
64
- * @generated from protobuf field: optional uint32 origin = 14
65
- */
66
- origin?: number;
67
- /**
68
- * @generated from protobuf field: optional uint32 questid = 15
69
- */
70
- questid?: number;
71
- /**
72
- * @generated from protobuf field: optional uint32 dropreason = 16
73
- */
74
- dropreason?: number;
75
- /**
76
- * @generated from protobuf field: optional uint32 musicindex = 17
77
- */
78
- musicindex?: number;
79
- /**
80
- * @generated from protobuf field: optional int32 entindex = 18
81
- */
82
- entindex?: number;
83
- /**
84
- * @generated from protobuf field: optional uint32 petindex = 19
85
- */
86
- petindex?: number;
87
- /**
88
- * @generated from protobuf field: repeated CEconItemPreviewDataBlock.Sticker keychains = 20
89
- */
90
- keychains: CEconItemPreviewDataBlock_Sticker[];
91
- }
92
- /**
93
- * @generated from protobuf message CEconItemPreviewDataBlock.Sticker
94
- */
95
- export interface CEconItemPreviewDataBlock_Sticker {
96
- /**
97
- * @generated from protobuf field: optional uint32 slot = 1
98
- */
99
- slot?: number;
100
- /**
101
- * @generated from protobuf field: optional uint32 sticker_id = 2
102
- */
103
- stickerId?: number;
104
- /**
105
- * @generated from protobuf field: optional float wear = 3
106
- */
107
- wear?: number;
108
- /**
109
- * @generated from protobuf field: optional float scale = 4
110
- */
111
- scale?: number;
112
- /**
113
- * @generated from protobuf field: optional float rotation = 5
114
- */
115
- rotation?: number;
116
- /**
117
- * @generated from protobuf field: optional uint32 tint_id = 6
118
- */
119
- tintId?: number;
120
- /**
121
- * @generated from protobuf field: optional float offset_x = 7
122
- */
123
- offsetX?: number;
124
- /**
125
- * @generated from protobuf field: optional float offset_y = 8
126
- */
127
- offsetY?: number;
128
- /**
129
- * @generated from protobuf field: optional float offset_z = 9
130
- */
131
- offsetZ?: number;
132
- /**
133
- * @generated from protobuf field: optional uint32 pattern = 10
134
- */
135
- pattern?: number;
136
- /**
137
- * @generated from protobuf field: optional uint32 highlight_reel = 11
138
- */
139
- highlightReel?: number;
140
- /**
141
- * @generated from protobuf field: optional uint32 wrapped_sticker = 12
142
- */
143
- wrappedSticker?: number;
144
- }
145
- declare class CEconItemPreviewDataBlock$Type extends MessageType<CEconItemPreviewDataBlock> {
146
- constructor();
147
- create(value?: PartialMessage<CEconItemPreviewDataBlock>): CEconItemPreviewDataBlock;
148
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CEconItemPreviewDataBlock): CEconItemPreviewDataBlock;
149
- internalBinaryWrite(message: CEconItemPreviewDataBlock, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
150
- }
151
- /**
152
- * @generated MessageType for protobuf message CEconItemPreviewDataBlock
153
- */
154
- export declare const CEconItemPreviewDataBlock: CEconItemPreviewDataBlock$Type;
155
- declare class CEconItemPreviewDataBlock_Sticker$Type extends MessageType<CEconItemPreviewDataBlock_Sticker> {
156
- constructor();
157
- create(value?: PartialMessage<CEconItemPreviewDataBlock_Sticker>): CEconItemPreviewDataBlock_Sticker;
158
- internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CEconItemPreviewDataBlock_Sticker): CEconItemPreviewDataBlock_Sticker;
159
- internalBinaryWrite(message: CEconItemPreviewDataBlock_Sticker, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
160
- }
161
- /**
162
- * @generated MessageType for protobuf message CEconItemPreviewDataBlock.Sticker
163
- */
164
- export declare const CEconItemPreviewDataBlock_Sticker: CEconItemPreviewDataBlock_Sticker$Type;
165
- export {};
@@ -1,309 +0,0 @@
1
- import { WireType } from "@protobuf-ts/runtime";
2
- import { UnknownFieldHandler } from "@protobuf-ts/runtime";
3
- import { reflectionMergePartial } from "@protobuf-ts/runtime";
4
- import { MessageType } from "@protobuf-ts/runtime";
5
- // @generated message type with reflection information, may provide speed optimized methods
6
- class CEconItemPreviewDataBlock$Type extends MessageType {
7
- constructor() {
8
- super("CEconItemPreviewDataBlock", [
9
- { no: 1, name: "accountid", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
10
- { no: 2, name: "itemid", kind: "scalar", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },
11
- { no: 3, name: "defindex", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
12
- { no: 4, name: "paintindex", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
13
- { no: 5, name: "rarity", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
14
- { no: 6, name: "quality", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
15
- { no: 7, name: "paintwear", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
16
- { no: 8, name: "paintseed", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
17
- { no: 9, name: "killeaterscoretype", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
18
- { no: 10, name: "killeatervalue", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
19
- { no: 11, name: "customname", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/ },
20
- { no: 12, name: "stickers", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => CEconItemPreviewDataBlock_Sticker },
21
- { no: 13, name: "inventory", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
22
- { no: 14, name: "origin", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
23
- { no: 15, name: "questid", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
24
- { no: 16, name: "dropreason", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
25
- { no: 17, name: "musicindex", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
26
- { no: 18, name: "entindex", kind: "scalar", opt: true, T: 5 /*ScalarType.INT32*/ },
27
- { no: 19, name: "petindex", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
28
- { no: 20, name: "keychains", kind: "message", repeat: 2 /*RepeatType.UNPACKED*/, T: () => CEconItemPreviewDataBlock_Sticker }
29
- ]);
30
- }
31
- create(value) {
32
- const message = globalThis.Object.create((this.messagePrototype));
33
- message.stickers = [];
34
- message.keychains = [];
35
- if (value !== undefined)
36
- reflectionMergePartial(this, message, value);
37
- return message;
38
- }
39
- internalBinaryRead(reader, length, options, target) {
40
- let message = target ?? this.create(), end = reader.pos + length;
41
- while (reader.pos < end) {
42
- let [fieldNo, wireType] = reader.tag();
43
- switch (fieldNo) {
44
- case /* optional uint32 accountid */ 1:
45
- message.accountid = reader.uint32();
46
- break;
47
- case /* optional uint64 itemid */ 2:
48
- message.itemid = reader.uint64().toBigInt();
49
- break;
50
- case /* optional uint32 defindex */ 3:
51
- message.defindex = reader.uint32();
52
- break;
53
- case /* optional uint32 paintindex */ 4:
54
- message.paintindex = reader.uint32();
55
- break;
56
- case /* optional uint32 rarity */ 5:
57
- message.rarity = reader.uint32();
58
- break;
59
- case /* optional uint32 quality */ 6:
60
- message.quality = reader.uint32();
61
- break;
62
- case /* optional uint32 paintwear */ 7:
63
- message.paintwear = reader.uint32();
64
- break;
65
- case /* optional uint32 paintseed */ 8:
66
- message.paintseed = reader.uint32();
67
- break;
68
- case /* optional uint32 killeaterscoretype */ 9:
69
- message.killeaterscoretype = reader.uint32();
70
- break;
71
- case /* optional uint32 killeatervalue */ 10:
72
- message.killeatervalue = reader.uint32();
73
- break;
74
- case /* optional string customname */ 11:
75
- message.customname = reader.string();
76
- break;
77
- case /* repeated CEconItemPreviewDataBlock.Sticker stickers */ 12:
78
- message.stickers.push(CEconItemPreviewDataBlock_Sticker.internalBinaryRead(reader, reader.uint32(), options));
79
- break;
80
- case /* optional uint32 inventory */ 13:
81
- message.inventory = reader.uint32();
82
- break;
83
- case /* optional uint32 origin */ 14:
84
- message.origin = reader.uint32();
85
- break;
86
- case /* optional uint32 questid */ 15:
87
- message.questid = reader.uint32();
88
- break;
89
- case /* optional uint32 dropreason */ 16:
90
- message.dropreason = reader.uint32();
91
- break;
92
- case /* optional uint32 musicindex */ 17:
93
- message.musicindex = reader.uint32();
94
- break;
95
- case /* optional int32 entindex */ 18:
96
- message.entindex = reader.int32();
97
- break;
98
- case /* optional uint32 petindex */ 19:
99
- message.petindex = reader.uint32();
100
- break;
101
- case /* repeated CEconItemPreviewDataBlock.Sticker keychains */ 20:
102
- message.keychains.push(CEconItemPreviewDataBlock_Sticker.internalBinaryRead(reader, reader.uint32(), options));
103
- break;
104
- default:
105
- let u = options.readUnknownField;
106
- if (u === "throw")
107
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
108
- let d = reader.skip(wireType);
109
- if (u !== false)
110
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
111
- }
112
- }
113
- return message;
114
- }
115
- internalBinaryWrite(message, writer, options) {
116
- /* optional uint32 accountid = 1; */
117
- if (message.accountid !== undefined)
118
- writer.tag(1, WireType.Varint).uint32(message.accountid);
119
- /* optional uint64 itemid = 2; */
120
- if (message.itemid !== undefined)
121
- writer.tag(2, WireType.Varint).uint64(message.itemid);
122
- /* optional uint32 defindex = 3; */
123
- if (message.defindex !== undefined)
124
- writer.tag(3, WireType.Varint).uint32(message.defindex);
125
- /* optional uint32 paintindex = 4; */
126
- if (message.paintindex !== undefined)
127
- writer.tag(4, WireType.Varint).uint32(message.paintindex);
128
- /* optional uint32 rarity = 5; */
129
- if (message.rarity !== undefined)
130
- writer.tag(5, WireType.Varint).uint32(message.rarity);
131
- /* optional uint32 quality = 6; */
132
- if (message.quality !== undefined)
133
- writer.tag(6, WireType.Varint).uint32(message.quality);
134
- /* optional uint32 paintwear = 7; */
135
- if (message.paintwear !== undefined)
136
- writer.tag(7, WireType.Varint).uint32(message.paintwear);
137
- /* optional uint32 paintseed = 8; */
138
- if (message.paintseed !== undefined)
139
- writer.tag(8, WireType.Varint).uint32(message.paintseed);
140
- /* optional uint32 killeaterscoretype = 9; */
141
- if (message.killeaterscoretype !== undefined)
142
- writer.tag(9, WireType.Varint).uint32(message.killeaterscoretype);
143
- /* optional uint32 killeatervalue = 10; */
144
- if (message.killeatervalue !== undefined)
145
- writer.tag(10, WireType.Varint).uint32(message.killeatervalue);
146
- /* optional string customname = 11; */
147
- if (message.customname !== undefined)
148
- writer.tag(11, WireType.LengthDelimited).string(message.customname);
149
- /* repeated CEconItemPreviewDataBlock.Sticker stickers = 12; */
150
- for (let i = 0; i < message.stickers.length; i++)
151
- CEconItemPreviewDataBlock_Sticker.internalBinaryWrite(message.stickers[i], writer.tag(12, WireType.LengthDelimited).fork(), options).join();
152
- /* optional uint32 inventory = 13; */
153
- if (message.inventory !== undefined)
154
- writer.tag(13, WireType.Varint).uint32(message.inventory);
155
- /* optional uint32 origin = 14; */
156
- if (message.origin !== undefined)
157
- writer.tag(14, WireType.Varint).uint32(message.origin);
158
- /* optional uint32 questid = 15; */
159
- if (message.questid !== undefined)
160
- writer.tag(15, WireType.Varint).uint32(message.questid);
161
- /* optional uint32 dropreason = 16; */
162
- if (message.dropreason !== undefined)
163
- writer.tag(16, WireType.Varint).uint32(message.dropreason);
164
- /* optional uint32 musicindex = 17; */
165
- if (message.musicindex !== undefined)
166
- writer.tag(17, WireType.Varint).uint32(message.musicindex);
167
- /* optional int32 entindex = 18; */
168
- if (message.entindex !== undefined)
169
- writer.tag(18, WireType.Varint).int32(message.entindex);
170
- /* optional uint32 petindex = 19; */
171
- if (message.petindex !== undefined)
172
- writer.tag(19, WireType.Varint).uint32(message.petindex);
173
- /* repeated CEconItemPreviewDataBlock.Sticker keychains = 20; */
174
- for (let i = 0; i < message.keychains.length; i++)
175
- CEconItemPreviewDataBlock_Sticker.internalBinaryWrite(message.keychains[i], writer.tag(20, WireType.LengthDelimited).fork(), options).join();
176
- let u = options.writeUnknownFields;
177
- if (u !== false)
178
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
179
- return writer;
180
- }
181
- }
182
- /**
183
- * @generated MessageType for protobuf message CEconItemPreviewDataBlock
184
- */
185
- export const CEconItemPreviewDataBlock = new CEconItemPreviewDataBlock$Type();
186
- // @generated message type with reflection information, may provide speed optimized methods
187
- class CEconItemPreviewDataBlock_Sticker$Type extends MessageType {
188
- constructor() {
189
- super("CEconItemPreviewDataBlock.Sticker", [
190
- { no: 1, name: "slot", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
191
- { no: 2, name: "sticker_id", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
192
- { no: 3, name: "wear", kind: "scalar", opt: true, T: 2 /*ScalarType.FLOAT*/ },
193
- { no: 4, name: "scale", kind: "scalar", opt: true, T: 2 /*ScalarType.FLOAT*/ },
194
- { no: 5, name: "rotation", kind: "scalar", opt: true, T: 2 /*ScalarType.FLOAT*/ },
195
- { no: 6, name: "tint_id", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
196
- { no: 7, name: "offset_x", kind: "scalar", opt: true, T: 2 /*ScalarType.FLOAT*/ },
197
- { no: 8, name: "offset_y", kind: "scalar", opt: true, T: 2 /*ScalarType.FLOAT*/ },
198
- { no: 9, name: "offset_z", kind: "scalar", opt: true, T: 2 /*ScalarType.FLOAT*/ },
199
- { no: 10, name: "pattern", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
200
- { no: 11, name: "highlight_reel", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ },
201
- { no: 12, name: "wrapped_sticker", kind: "scalar", opt: true, T: 13 /*ScalarType.UINT32*/ }
202
- ]);
203
- }
204
- create(value) {
205
- const message = globalThis.Object.create((this.messagePrototype));
206
- if (value !== undefined)
207
- reflectionMergePartial(this, message, value);
208
- return message;
209
- }
210
- internalBinaryRead(reader, length, options, target) {
211
- let message = target ?? this.create(), end = reader.pos + length;
212
- while (reader.pos < end) {
213
- let [fieldNo, wireType] = reader.tag();
214
- switch (fieldNo) {
215
- case /* optional uint32 slot */ 1:
216
- message.slot = reader.uint32();
217
- break;
218
- case /* optional uint32 sticker_id */ 2:
219
- message.stickerId = reader.uint32();
220
- break;
221
- case /* optional float wear */ 3:
222
- message.wear = reader.float();
223
- break;
224
- case /* optional float scale */ 4:
225
- message.scale = reader.float();
226
- break;
227
- case /* optional float rotation */ 5:
228
- message.rotation = reader.float();
229
- break;
230
- case /* optional uint32 tint_id */ 6:
231
- message.tintId = reader.uint32();
232
- break;
233
- case /* optional float offset_x */ 7:
234
- message.offsetX = reader.float();
235
- break;
236
- case /* optional float offset_y */ 8:
237
- message.offsetY = reader.float();
238
- break;
239
- case /* optional float offset_z */ 9:
240
- message.offsetZ = reader.float();
241
- break;
242
- case /* optional uint32 pattern */ 10:
243
- message.pattern = reader.uint32();
244
- break;
245
- case /* optional uint32 highlight_reel */ 11:
246
- message.highlightReel = reader.uint32();
247
- break;
248
- case /* optional uint32 wrapped_sticker */ 12:
249
- message.wrappedSticker = reader.uint32();
250
- break;
251
- default:
252
- let u = options.readUnknownField;
253
- if (u === "throw")
254
- throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
255
- let d = reader.skip(wireType);
256
- if (u !== false)
257
- (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
258
- }
259
- }
260
- return message;
261
- }
262
- internalBinaryWrite(message, writer, options) {
263
- /* optional uint32 slot = 1; */
264
- if (message.slot !== undefined)
265
- writer.tag(1, WireType.Varint).uint32(message.slot);
266
- /* optional uint32 sticker_id = 2; */
267
- if (message.stickerId !== undefined)
268
- writer.tag(2, WireType.Varint).uint32(message.stickerId);
269
- /* optional float wear = 3; */
270
- if (message.wear !== undefined)
271
- writer.tag(3, WireType.Bit32).float(message.wear);
272
- /* optional float scale = 4; */
273
- if (message.scale !== undefined)
274
- writer.tag(4, WireType.Bit32).float(message.scale);
275
- /* optional float rotation = 5; */
276
- if (message.rotation !== undefined)
277
- writer.tag(5, WireType.Bit32).float(message.rotation);
278
- /* optional uint32 tint_id = 6; */
279
- if (message.tintId !== undefined)
280
- writer.tag(6, WireType.Varint).uint32(message.tintId);
281
- /* optional float offset_x = 7; */
282
- if (message.offsetX !== undefined)
283
- writer.tag(7, WireType.Bit32).float(message.offsetX);
284
- /* optional float offset_y = 8; */
285
- if (message.offsetY !== undefined)
286
- writer.tag(8, WireType.Bit32).float(message.offsetY);
287
- /* optional float offset_z = 9; */
288
- if (message.offsetZ !== undefined)
289
- writer.tag(9, WireType.Bit32).float(message.offsetZ);
290
- /* optional uint32 pattern = 10; */
291
- if (message.pattern !== undefined)
292
- writer.tag(10, WireType.Varint).uint32(message.pattern);
293
- /* optional uint32 highlight_reel = 11; */
294
- if (message.highlightReel !== undefined)
295
- writer.tag(11, WireType.Varint).uint32(message.highlightReel);
296
- /* optional uint32 wrapped_sticker = 12; */
297
- if (message.wrappedSticker !== undefined)
298
- writer.tag(12, WireType.Varint).uint32(message.wrappedSticker);
299
- let u = options.writeUnknownFields;
300
- if (u !== false)
301
- (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
302
- return writer;
303
- }
304
- }
305
- /**
306
- * @generated MessageType for protobuf message CEconItemPreviewDataBlock.Sticker
307
- */
308
- export const CEconItemPreviewDataBlock_Sticker = new CEconItemPreviewDataBlock_Sticker$Type();
309
- //# sourceMappingURL=cstrike15_gcmessages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cstrike15_gcmessages.js","sourceRoot":"","sources":["../../src/Protobufs/cstrike15_gcmessages.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- import { type CS2ItemTypeValues } from "@ianlucas/cs2-lib";
2
- export declare const CS2PreviewRarity: {
3
- "#ded6cc": number;
4
- "#b0c3d9": number;
5
- "#5e98d9": number;
6
- "#4b69ff": number;
7
- "#8847ff": number;
8
- "#d32ce6": number;
9
- "#eb4b4b": number;
10
- "#e4ae39": number;
11
- };
12
- export declare const CS2_PREVIEW_HAS_STICKERS: CS2ItemTypeValues[];
13
- export declare const CS2_PREVIEW_INSPECTABLE_ITEMS: CS2ItemTypeValues[];
14
- export declare const CS2_PREVIEW_ATTRIBUTELESS_ITEMS: CS2ItemTypeValues[];
15
- export declare const CS2_PREVIEW_URL = "steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20";
16
- export declare const CS2_PREVIEW_COMMAND = "csgo_econ_action_preview ";
package/dist/constants.js DELETED
@@ -1,42 +0,0 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) candyboyz, Ian Lucas. All rights reserved.
3
- * Licensed under the MIT License. See License.txt in the project root for license information.
4
- *--------------------------------------------------------------------------------------------*/
5
- import { CS2ItemType, CS2RarityColor } from "@ianlucas/cs2-lib";
6
- export const CS2PreviewRarity = {
7
- [CS2RarityColor.Default]: 0,
8
- [CS2RarityColor.Common]: 1,
9
- [CS2RarityColor.Uncommon]: 2,
10
- [CS2RarityColor.Rare]: 3,
11
- [CS2RarityColor.Mythical]: 4,
12
- [CS2RarityColor.Legendary]: 5,
13
- [CS2RarityColor.Ancient]: 6,
14
- [CS2RarityColor.Immortal]: 7
15
- };
16
- export const CS2_PREVIEW_HAS_STICKERS = [
17
- CS2ItemType.Graffiti,
18
- CS2ItemType.Patch,
19
- CS2ItemType.Sticker
20
- ];
21
- export const CS2_PREVIEW_INSPECTABLE_ITEMS = [
22
- CS2ItemType.Agent,
23
- CS2ItemType.Collectible,
24
- CS2ItemType.Container,
25
- CS2ItemType.Gloves,
26
- CS2ItemType.Graffiti,
27
- CS2ItemType.Keychain,
28
- CS2ItemType.Melee,
29
- CS2ItemType.MusicKit,
30
- CS2ItemType.Patch,
31
- CS2ItemType.Sticker,
32
- CS2ItemType.Weapon
33
- ];
34
- export const CS2_PREVIEW_ATTRIBUTELESS_ITEMS = [
35
- ...CS2_PREVIEW_HAS_STICKERS,
36
- CS2ItemType.Collectible,
37
- CS2ItemType.Keychain,
38
- CS2ItemType.MusicKit
39
- ];
40
- export const CS2_PREVIEW_URL = "steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20";
41
- export const CS2_PREVIEW_COMMAND = "csgo_econ_action_preview ";
42
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,WAAW,EAA0B,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExF,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3B,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;IAC1B,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC5B,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;IACxB,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC5B,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,CAAC;IAC7B,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3B,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;CAC/B,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAwB;IACzD,WAAW,CAAC,QAAQ;IACpB,WAAW,CAAC,KAAK;IACjB,WAAW,CAAC,OAAO;CACtB,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAwB;IAC9D,WAAW,CAAC,KAAK;IACjB,WAAW,CAAC,WAAW;IACvB,WAAW,CAAC,SAAS;IACrB,WAAW,CAAC,MAAM;IAClB,WAAW,CAAC,QAAQ;IACpB,WAAW,CAAC,QAAQ;IACpB,WAAW,CAAC,KAAK;IACjB,WAAW,CAAC,QAAQ;IACpB,WAAW,CAAC,KAAK;IACjB,WAAW,CAAC,OAAO;IACnB,WAAW,CAAC,MAAM;CACrB,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAwB;IAChE,GAAG,wBAAwB;IAC3B,WAAW,CAAC,WAAW;IACvB,WAAW,CAAC,QAAQ;IACpB,WAAW,CAAC,QAAQ;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,oEAAoE,CAAC;AACpG,MAAM,CAAC,MAAM,mBAAmB,GAAG,2BAA2B,CAAC"}
@@ -1,2 +0,0 @@
1
- import { CS2EconomyItem, CS2InventoryItem } from "@ianlucas/cs2-lib";
2
- export declare function generateInspectLink(item: CS2EconomyItem | CS2InventoryItem): string;
@@ -1,90 +0,0 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) candyboyz, Ian Lucas. All rights reserved.
3
- * Licensed under the MIT License. See License.txt in the project root for license information.
4
- *--------------------------------------------------------------------------------------------*/
5
- import { CS2EconomyItem, CS2InventoryItem, CS2_MIN_SEED, CS2_MIN_STICKER_WEAR } from "@ianlucas/cs2-lib";
6
- import { Buffer } from "buffer";
7
- import CRC32 from "crc-32";
8
- import { CS2PreviewRarity, CS2_PREVIEW_COMMAND, CS2_PREVIEW_HAS_STICKERS, CS2_PREVIEW_URL } from "./constants.js";
9
- import { CEconItemPreviewDataBlock } from "./Protobufs/cstrike15_gcmessages.js";
10
- import { floatToBytes } from "./utils.js";
11
- function getEconomyItemPreviewData(item) {
12
- const { def, index, rarity, type, tint } = item;
13
- const hasStickers = CS2_PREVIEW_HAS_STICKERS.includes(type);
14
- const hasPaintIndex = !hasStickers && !item.isMusicKit();
15
- const hasKeychains = item.isKeychain();
16
- return {
17
- defindex: def,
18
- keychains: hasKeychains ? [{ stickerId: index, slot: 0, wrappedSticker: item.stickerIndex }] : [],
19
- musicindex: item.isMusicKit() ? index : undefined,
20
- paintindex: hasPaintIndex ? index : undefined,
21
- paintseed: item.hasSeed() ? CS2_MIN_SEED : undefined,
22
- paintwear: item.hasWear() ? floatToBytes(item.getMinimumWear()) : undefined,
23
- rarity: CS2PreviewRarity[rarity] ?? 0,
24
- stickers: hasStickers ? [{ tintId: tint, stickerId: index, slot: 0 }] : []
25
- };
26
- }
27
- function getInventoryItemPreviewData(item) {
28
- const { nameTag, seed, statTrak, stickers, patches, keychains } = item;
29
- const baseAttributes = getEconomyItemPreviewData(item);
30
- return {
31
- ...baseAttributes,
32
- customname: nameTag,
33
- killeaterscoretype: statTrak !== undefined ? 0 : undefined,
34
- killeatervalue: statTrak,
35
- paintseed: item.hasSeed() ? (seed ?? CS2_MIN_SEED) : undefined,
36
- paintwear: item.hasWear() ? floatToBytes(item.getWear()) : undefined,
37
- stickers: stickers !== undefined
38
- ? item.someStickers().map(([slot, { id, wear, rotation, x, y, schema }]) => ({
39
- offsetX: x,
40
- offsetY: y,
41
- rotation,
42
- slot: schema ?? slot,
43
- stickerId: item.economy.getById(id).index,
44
- wear: wear ?? CS2_MIN_STICKER_WEAR
45
- }))
46
- : patches !== undefined
47
- ? item
48
- .somePatches()
49
- .map(([slot, patchId]) => ({ slot, stickerId: item.economy.getById(patchId).index }))
50
- : baseAttributes.stickers,
51
- keychains: keychains !== undefined
52
- ? item.someKeychains().map(([slot, { id, x, y, z, seed }]) => {
53
- const keychainItem = item.economy.getById(id);
54
- return {
55
- offsetX: x,
56
- offsetY: y,
57
- offsetZ: z,
58
- pattern: seed,
59
- slot,
60
- stickerId: keychainItem.index,
61
- wrappedSticker: keychainItem.stickerIndex
62
- };
63
- })
64
- : item.isKeychain()
65
- ? baseAttributes.keychains.map((keychain) => {
66
- keychain.pattern = seed;
67
- return keychain;
68
- })
69
- : baseAttributes.keychains
70
- };
71
- }
72
- function generateHex(attributes) {
73
- const payload = Buffer.concat([Uint8Array.from([0]), CEconItemPreviewDataBlock.toBinary(attributes)]);
74
- const crc = CRC32.buf(payload);
75
- const xCrc = (crc & 0xffff) ^ (CEconItemPreviewDataBlock.toBinary(attributes).byteLength * crc);
76
- const crcBuffer = Buffer.alloc(4);
77
- crcBuffer.writeUInt32BE((xCrc & 0xffffffff) >>> 0, 0);
78
- const buffer = Buffer.concat([payload, crcBuffer]);
79
- return buffer.toString("hex").toUpperCase();
80
- }
81
- export function generateInspectLink(item) {
82
- const attributes = item instanceof CS2InventoryItem ? getInventoryItemPreviewData(item) : getEconomyItemPreviewData(item);
83
- const hex = generateHex(attributes);
84
- // There's a char limit for launching the game using the steam:// protocol.
85
- if (CS2_PREVIEW_URL.length + hex.length > 300) {
86
- return `${CS2_PREVIEW_COMMAND}${hex}`;
87
- }
88
- return `${CS2_PREVIEW_URL}${hex}`;
89
- }
90
- //# sourceMappingURL=generate-inspect-link.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-inspect-link.js","sourceRoot":"","sources":["../src/generate-inspect-link.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzG,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,KAAK,MAAM,QAAQ,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAClH,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,SAAS,yBAAyB,CAAC,IAAoB;IACnD,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAChD,MAAM,WAAW,GAAG,wBAAwB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;IACzD,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IACvC,OAAO;QACH,QAAQ,EAAE,GAAG;QACb,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;QACjG,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;QACjD,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;QAC7C,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;QACpD,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;QAC3E,MAAM,EAAE,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC;QACrC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;KAC7E,CAAC;AACN,CAAC;AAED,SAAS,2BAA2B,CAAC,IAAsB;IACvD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IACvE,MAAM,cAAc,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACvD,OAAO;QACH,GAAG,cAAc;QACjB,UAAU,EAAE,OAAO;QACnB,kBAAkB,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;QAC1D,cAAc,EAAE,QAAQ;QACxB,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS;QAC9D,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;QACpE,QAAQ,EACJ,QAAQ,KAAK,SAAS;YAClB,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBACvE,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;gBACV,QAAQ;gBACR,IAAI,EAAE,MAAM,IAAI,IAAI;gBACpB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK;gBACzC,IAAI,EAAE,IAAI,IAAI,oBAAoB;aACrC,CAAC,CAAC;YACL,CAAC,CAAC,OAAO,KAAK,SAAS;gBACrB,CAAC,CAAC,IAAI;qBACC,WAAW,EAAE;qBACb,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC3F,CAAC,CAAC,cAAc,CAAC,QAAQ;QACnC,SAAS,EACL,SAAS,KAAK,SAAS;YACnB,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;gBACvD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC9C,OAAO;oBACH,OAAO,EAAE,CAAC;oBACV,OAAO,EAAE,CAAC;oBACV,OAAO,EAAE,CAAC;oBACV,OAAO,EAAE,IAAI;oBACb,IAAI;oBACJ,SAAS,EAAE,YAAY,CAAC,KAAK;oBAC7B,cAAc,EAAE,YAAY,CAAC,YAAY;iBAC5C,CAAC;YACN,CAAC,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE;gBACjB,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;oBACtC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;oBACxB,OAAO,QAAQ,CAAC;gBACpB,CAAC,CAAC;gBACJ,CAAC,CAAC,cAAc,CAAC,SAAS;KACvC,CAAC;AACN,CAAC;AAED,SAAS,WAAW,CAAC,UAAqC;IACtD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,yBAAyB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACtG,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,IAAI,GAAG,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;IAChG,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAClC,SAAS,CAAC,aAAa,CAAC,CAAC,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;IACnD,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAuC;IACvE,MAAM,UAAU,GACZ,IAAI,YAAY,gBAAgB,CAAC,CAAC,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC3G,MAAM,GAAG,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IACpC,2EAA2E;IAC3E,IAAI,eAAe,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAC5C,OAAO,GAAG,mBAAmB,GAAG,GAAG,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO,GAAG,eAAe,GAAG,GAAG,EAAE,CAAC;AACtC,CAAC"}
package/dist/index.d.ts DELETED
@@ -1,5 +0,0 @@
1
- export { CS2_PREVIEW_ATTRIBUTELESS_ITEMS, CS2_PREVIEW_COMMAND, CS2_PREVIEW_HAS_STICKERS, CS2_PREVIEW_INSPECTABLE_ITEMS, CS2_PREVIEW_URL, CS2PreviewRarity } from "./constants.js";
2
- export { generateInspectLink } from "./generate-inspect-link.js";
3
- export { parseCSFloatItemInfo } from "./parse-csfloat-item-info.js";
4
- export type { CSFloatItemInfo, CSFloatStickerInfo } from "./parse-csfloat-item-info.js";
5
- export { isCommandInspect, isSteamInspectLink, parseInspectLink } from "./parse-inspect-link.js";
package/dist/index.js DELETED
@@ -1,9 +0,0 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) candyboyz, Ian Lucas. All rights reserved.
3
- * Licensed under the MIT License. See License.txt in the project root for license information.
4
- *--------------------------------------------------------------------------------------------*/
5
- export { CS2_PREVIEW_ATTRIBUTELESS_ITEMS, CS2_PREVIEW_COMMAND, CS2_PREVIEW_HAS_STICKERS, CS2_PREVIEW_INSPECTABLE_ITEMS, CS2_PREVIEW_URL, CS2PreviewRarity } from "./constants.js";
6
- export { generateInspectLink } from "./generate-inspect-link.js";
7
- export { parseCSFloatItemInfo } from "./parse-csfloat-item-info.js";
8
- export { isCommandInspect, isSteamInspectLink, parseInspectLink } from "./parse-inspect-link.js";
9
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EACH,+BAA+B,EAC/B,mBAAmB,EACnB,wBAAwB,EACxB,6BAA6B,EAC7B,eAAe,EACf,gBAAgB,EACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -1,42 +0,0 @@
1
- import { type CS2BaseInventoryItem, CS2EconomyInstance } from "@ianlucas/cs2-lib";
2
- export interface CSFloatStickerInfo {
3
- slot: number;
4
- stickerId: number;
5
- wear?: number;
6
- rotation?: number;
7
- offset_x?: number;
8
- offset_y?: number;
9
- offset_z?: number;
10
- tintId?: number;
11
- pattern?: number;
12
- wrapped_sticker?: number;
13
- }
14
- export interface CSFloatItemInfo {
15
- defindex: number;
16
- paintindex?: number;
17
- paintseed?: number;
18
- floatvalue?: number;
19
- killeatervalue?: number;
20
- customname?: string;
21
- musicindex?: number;
22
- stickers?: CSFloatStickerInfo[];
23
- keychains?: CSFloatStickerInfo[];
24
- origin?: number;
25
- quality?: number;
26
- rarity?: number;
27
- floatid?: number;
28
- imageurl?: string;
29
- min?: number;
30
- max?: number;
31
- weapon_type?: string;
32
- item_name?: string;
33
- rarity_name?: string;
34
- quality_name?: string;
35
- wear_name?: string;
36
- full_item_name?: string;
37
- s?: string;
38
- a?: string;
39
- d?: string;
40
- m?: string;
41
- }
42
- export declare function parseCSFloatItemInfo(economy: CS2EconomyInstance, itemInfo: CSFloatItemInfo): CS2BaseInventoryItem;
@@ -1,31 +0,0 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) candyboyz, Ian Lucas. All rights reserved.
3
- * Licensed under the MIT License. See License.txt in the project root for license information.
4
- *--------------------------------------------------------------------------------------------*/
5
- import { CS2EconomyInstance } from "@ianlucas/cs2-lib";
6
- import { parseGCInventoryItem } from "./parse-gc-inventory-item.js";
7
- export function parseCSFloatItemInfo(economy, itemInfo) {
8
- return parseGCInventoryItem(economy, {
9
- defindex: itemInfo.defindex,
10
- paintindex: itemInfo.paintindex,
11
- paintseed: itemInfo.paintseed,
12
- floatvalue: itemInfo.floatvalue,
13
- killeatervalue: itemInfo.killeatervalue,
14
- customname: itemInfo.customname,
15
- musicindex: itemInfo.musicindex,
16
- stickers: (itemInfo.stickers ?? []).map(({ offset_x, offset_y, offset_z, ...rest }) => ({
17
- ...rest,
18
- offsetX: offset_x,
19
- offsetY: offset_y,
20
- offsetZ: offset_z
21
- })),
22
- keychains: (itemInfo.keychains ?? []).map(({ offset_x, offset_y, offset_z, wrapped_sticker, ...rest }) => ({
23
- ...rest,
24
- offsetX: offset_x,
25
- offsetY: offset_y,
26
- offsetZ: offset_z,
27
- wrappedSticker: wrapped_sticker
28
- }))
29
- });
30
- }
31
- //# sourceMappingURL=parse-csfloat-item-info.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-csfloat-item-info.js","sourceRoot":"","sources":["../src/parse-csfloat-item-info.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAA6B,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AA4CpE,MAAM,UAAU,oBAAoB,CAAC,OAA2B,EAAE,QAAyB;IACvF,OAAO,oBAAoB,CAAC,OAAO,EAAE;QACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,QAAQ,EAAE,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACpF,GAAG,IAAI;YACP,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,QAAQ;SACpB,CAAC,CAAC;QACH,SAAS,EAAE,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACvG,GAAG,IAAI;YACP,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,QAAQ;YACjB,cAAc,EAAE,eAAe;SAClC,CAAC,CAAC;KACN,CAAC,CAAC;AACP,CAAC"}
@@ -1,25 +0,0 @@
1
- import { type CS2BaseInventoryItem, CS2EconomyInstance } from "@ianlucas/cs2-lib";
2
- export interface CS2GCInventoryItemSticker {
3
- slot?: number;
4
- stickerId?: number;
5
- wear?: number;
6
- rotation?: number;
7
- offsetX?: number;
8
- offsetY?: number;
9
- offsetZ?: number;
10
- tintId?: number;
11
- pattern?: number;
12
- wrappedSticker?: number;
13
- }
14
- export interface CS2GCInventoryItem {
15
- defindex: number;
16
- paintindex?: number;
17
- paintseed?: number;
18
- floatvalue?: number;
19
- killeatervalue?: number;
20
- customname?: string;
21
- musicindex?: number;
22
- stickers: CS2GCInventoryItemSticker[];
23
- keychains: CS2GCInventoryItemSticker[];
24
- }
25
- export declare function parseGCInventoryItem(economy: CS2EconomyInstance, data: CS2GCInventoryItem): CS2BaseInventoryItem;
@@ -1,105 +0,0 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) candyboyz, Ian Lucas. All rights reserved.
3
- * Licensed under the MIT License. See License.txt in the project root for license information.
4
- *--------------------------------------------------------------------------------------------*/
5
- import { CS2EconomyInstance, CS2_MIN_KEYCHAIN_SEED, CS2_MIN_SEED, CS2_MIN_STICKER_WEAR, CS2_MIN_WEAR, CS2_STICKER_WEAR_FACTOR, CS2_WEAR_FACTOR, assert, ensure } from "@ianlucas/cs2-lib";
6
- import { CS2_PREVIEW_HAS_STICKERS } from "./constants.js";
7
- import { truncate } from "./utils.js";
8
- export function parseGCInventoryItem(economy, data) {
9
- const { defindex, paintindex, paintseed, floatvalue, killeatervalue, customname, musicindex, stickers, keychains } = data;
10
- let economyItem = economy.itemsAsArray.find((item) => item.def === defindex);
11
- if (economyItem !== undefined && CS2_PREVIEW_HAS_STICKERS.includes(economyItem.type)) {
12
- if (stickers.length === 1) {
13
- // Patch, Sticker, and Graffiti
14
- economyItem = economy.itemsAsArray.find((item) => item.def === defindex && item.index === stickers[0].stickerId && item.tint === stickers[0].tintId);
15
- }
16
- return ensure(economyItem !== undefined ? { id: economyItem.id } : undefined);
17
- }
18
- else if (musicindex !== undefined) {
19
- // Music Kit
20
- economyItem = economy.itemsAsArray.find((item) => item.isMusicKit() && item.index === musicindex);
21
- return ensure(economyItem !== undefined ? stripMinValues({ id: economyItem.id, statTrak: killeatervalue }) : undefined);
22
- }
23
- else {
24
- if (economyItem?.isKeychain() && keychains.length > 0) {
25
- economyItem = economy.itemsAsArray.find((item) => item.def === defindex &&
26
- item.index === keychains[0].stickerId &&
27
- item.stickerIndex === keychains[0].wrappedSticker);
28
- }
29
- else if (paintindex !== undefined) {
30
- economyItem = economy.itemsAsArray.find((item) => item.def === defindex && item.index === paintindex);
31
- }
32
- assert(economyItem !== undefined);
33
- if (economyItem.isKeychain()) {
34
- return stripMinValues({
35
- id: economyItem.id,
36
- seed: keychains[0]?.pattern ?? paintseed
37
- });
38
- }
39
- return stripMinValues({
40
- id: economyItem.id,
41
- seed: economyItem.hasSeed() ? paintseed : undefined,
42
- wear: economyItem.hasWear() && floatvalue !== undefined ? truncate(floatvalue, CS2_WEAR_FACTOR) : undefined,
43
- statTrak: economyItem.hasStatTrak() ? killeatervalue : undefined,
44
- nameTag: economyItem.hasNametag() ? customname : undefined,
45
- keychains: economyItem.hasKeychains() && keychains.length > 0
46
- ? Object.fromEntries(keychains.map(({ offsetX, offsetY, offsetZ, pattern, slot, stickerId, wrappedSticker }) => [
47
- slot,
48
- {
49
- id: ensure(economy.itemsAsArray.find((item) => item.isKeychain() &&
50
- item.index === stickerId &&
51
- item.stickerIndex === wrappedSticker)?.id),
52
- seed: pattern,
53
- x: offsetX,
54
- y: offsetY,
55
- z: offsetZ
56
- }
57
- ]))
58
- : undefined,
59
- stickers: economyItem.hasStickers() && stickers.length > 0
60
- ? Object.fromEntries(stickers.map(({ slot, stickerId, offsetX, offsetY, wear, rotation }, index) => [
61
- index,
62
- {
63
- id: ensure(economy.itemsAsArray.find((item) => item.isSticker() && item.index === stickerId)
64
- ?.id),
65
- rotation: rotation !== undefined ? ((Math.trunc(rotation) % 360) + 360) % 360 : undefined,
66
- schema: slot,
67
- wear: wear !== undefined ? truncate(wear, CS2_STICKER_WEAR_FACTOR) : undefined,
68
- x: offsetX,
69
- y: offsetY
70
- }
71
- ]))
72
- : undefined,
73
- patches: economyItem.hasPatches() && stickers.length > 0
74
- ? Object.fromEntries(stickers.map(({ slot, stickerId }) => [
75
- slot,
76
- ensure(economy.itemsAsArray.find((item) => item.isPatch() && item.index === stickerId)?.id)
77
- ]))
78
- : undefined
79
- });
80
- }
81
- }
82
- function stripMinValues(item) {
83
- if (item.seed === CS2_MIN_SEED) {
84
- item.seed = undefined;
85
- }
86
- if (item.wear === CS2_MIN_WEAR) {
87
- item.wear = undefined;
88
- }
89
- if (item.stickers !== undefined) {
90
- for (const sticker of Object.values(item.stickers)) {
91
- if (sticker.wear === CS2_MIN_STICKER_WEAR) {
92
- sticker.wear = undefined;
93
- }
94
- }
95
- }
96
- if (item.keychains !== undefined) {
97
- for (const keychain of Object.values(item.keychains)) {
98
- if (keychain.seed === CS2_MIN_KEYCHAIN_SEED) {
99
- keychain.seed = undefined;
100
- }
101
- }
102
- }
103
- return item;
104
- }
105
- //# sourceMappingURL=parse-gc-inventory-item.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-gc-inventory-item.js","sourceRoot":"","sources":["../src/parse-gc-inventory-item.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,OAAO,EAEH,kBAAkB,EAClB,qBAAqB,EACrB,YAAY,EACZ,oBAAoB,EACpB,YAAY,EACZ,uBAAuB,EACvB,eAAe,EACf,MAAM,EACN,MAAM,EACT,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AA2BtC,MAAM,UAAU,oBAAoB,CAAC,OAA2B,EAAE,IAAwB;IACtF,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,GAC9G,IAAI,CAAC;IACT,IAAI,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC;IAC7E,IAAI,WAAW,KAAK,SAAS,IAAI,wBAAwB,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QACnF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,+BAA+B;YAC/B,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CACnC,CAAC,IAAI,EAAE,EAAE,CACL,IAAI,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CACxG,CAAC;QACN,CAAC;QACD,OAAO,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAClF,CAAC;SAAM,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAClC,YAAY;QACZ,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC;QAClG,OAAO,MAAM,CACT,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAC3G,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,IAAI,WAAW,EAAE,UAAU,EAAE,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpD,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CACnC,CAAC,IAAI,EAAE,EAAE,CACL,IAAI,CAAC,GAAG,KAAK,QAAQ;gBACrB,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;gBACrC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,cAAc,CACxD,CAAC;QACN,CAAC;aAAM,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC;QAC1G,CAAC;QACD,MAAM,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC;QAClC,IAAI,WAAW,CAAC,UAAU,EAAE,EAAE,CAAC;YAC3B,OAAO,cAAc,CAAC;gBAClB,EAAE,EAAE,WAAW,CAAC,EAAE;gBAClB,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,SAAS;aAC3C,CAAC,CAAC;QACP,CAAC;QACD,OAAO,cAAc,CAAC;YAClB,EAAE,EAAE,WAAW,CAAC,EAAE;YAClB,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;YACnD,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,IAAI,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS;YAC3G,QAAQ,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;YAChE,OAAO,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YAC1D,SAAS,EACL,WAAW,CAAC,YAAY,EAAE,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;gBAC9C,CAAC,CAAC,MAAM,CAAC,WAAW,CACd,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;oBACvF,IAAI;oBACJ;wBACI,EAAE,EAAE,MAAM,CACN,OAAO,CAAC,YAAY,CAAC,IAAI,CACrB,CAAC,IAAI,EAAE,EAAE,CACL,IAAI,CAAC,UAAU,EAAE;4BACjB,IAAI,CAAC,KAAK,KAAK,SAAS;4BACxB,IAAI,CAAC,YAAY,KAAK,cAAc,CAC3C,EAAE,EAAE,CACR;wBACD,IAAI,EAAE,OAAO;wBACb,CAAC,EAAE,OAAO;wBACV,CAAC,EAAE,OAAO;wBACV,CAAC,EAAE,OAAO;qBACb;iBACJ,CAAC,CACL;gBACH,CAAC,CAAC,SAAS;YACnB,QAAQ,EACJ,WAAW,CAAC,WAAW,EAAE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAC5C,CAAC,CAAC,MAAM,CAAC,WAAW,CACd,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;oBAC3E,KAAK;oBACL;wBACI,EAAE,EAAE,MAAM,CACN,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC;4BAC7E,EAAE,EAAE,CACX;wBACD,QAAQ,EACJ,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS;wBACnF,MAAM,EAAE,IAAI;wBACZ,IAAI,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,SAAS;wBAC9E,CAAC,EAAE,OAAO;wBACV,CAAC,EAAE,OAAO;qBACb;iBACJ,CAAC,CACL;gBACH,CAAC,CAAC,SAAS;YACnB,OAAO,EACH,WAAW,CAAC,UAAU,EAAE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAC3C,CAAC,CAAC,MAAM,CAAC,WAAW,CACd,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;oBAClC,IAAI;oBACJ,MAAM,CACF,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,EAAE,EAAE,CACtF;iBACJ,CAAC,CACL;gBACH,CAAC,CAAC,SAAS;SACtB,CAAC,CAAC;IACP,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CAAC,IAA0B;IAC9C,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;IAC1B,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;IAC1B,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC9B,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjD,IAAI,OAAO,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;gBACxC,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;YAC7B,CAAC;QACL,CAAC;IACL,CAAC;IACD,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC/B,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YACnD,IAAI,QAAQ,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;gBAC1C,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC;YAC9B,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC"}
@@ -1,4 +0,0 @@
1
- import { type CS2BaseInventoryItem, CS2EconomyInstance } from "@ianlucas/cs2-lib";
2
- export declare function isCommandInspect(inspectLink: string): boolean;
3
- export declare function isSteamInspectLink(inspectLink: string): boolean;
4
- export declare function parseInspectLink(economy: CS2EconomyInstance, inspectLink: string): CS2BaseInventoryItem;
@@ -1,65 +0,0 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) candyboyz, Ian Lucas. All rights reserved.
3
- * Licensed under the MIT License. See License.txt in the project root for license information.
4
- *--------------------------------------------------------------------------------------------*/
5
- import { CS2EconomyInstance } from "@ianlucas/cs2-lib";
6
- import { Buffer } from "buffer";
7
- import CRC32 from "crc-32";
8
- import { CS2_PREVIEW_COMMAND, CS2_PREVIEW_URL } from "./constants.js";
9
- import { parseGCInventoryItem } from "./parse-gc-inventory-item.js";
10
- import { CEconItemPreviewDataBlock } from "./Protobufs/cstrike15_gcmessages.js";
11
- import { bytesToFloat } from "./utils.js";
12
- export function isCommandInspect(inspectLink) {
13
- return inspectLink.startsWith(CS2_PREVIEW_COMMAND);
14
- }
15
- export function isSteamInspectLink(inspectLink) {
16
- try {
17
- const decoded = decodeURI(inspectLink);
18
- return /^steam:\/\/rungame\/730\/\d+\/[+ ]csgo_econ_action_preview [SM]\d+A\d+D\d+$/.test(decoded);
19
- }
20
- catch {
21
- return false;
22
- }
23
- }
24
- function parseHex(hexString) {
25
- // Convert hex string to buffer
26
- const buffer = Buffer.from(hexString.toLowerCase(), "hex");
27
- // XOR bytes 1..N-1 with the first byte (CS2 native format; no-op when first byte is 0)
28
- const xorKey = buffer[0];
29
- for (let i = 1; i < buffer.length; i++) {
30
- buffer[i] ^= xorKey;
31
- }
32
- // Extract the data and CRC portions
33
- const payload = buffer.slice(0, -4); // Everything except last 4 bytes
34
- const providedCrcBuffer = buffer.slice(-4); // Last 4 bytes
35
- const providedCrc = providedCrcBuffer.readUInt32BE(0);
36
- // Extract just the attributes data (removing the first byte)
37
- const attributesData = payload.slice(1);
38
- // Verify CRC
39
- const calculatedCrc = CRC32.buf(payload);
40
- const calculatedXCrc = (calculatedCrc & 0xffff) ^ (attributesData.byteLength * calculatedCrc);
41
- const finalCalculatedCrc = (calculatedXCrc & 0xffffffff) >>> 0;
42
- if (finalCalculatedCrc !== providedCrc) {
43
- throw new Error("CRC verification failed");
44
- }
45
- // Convert the binary data back to CEconItemPreviewDataBlock
46
- return CEconItemPreviewDataBlock.fromBinary(attributesData);
47
- }
48
- export function parseInspectLink(economy, inspectLink) {
49
- const hex = isCommandInspect(inspectLink)
50
- ? inspectLink.replace(CS2_PREVIEW_COMMAND, "")
51
- : inspectLink.replace(CS2_PREVIEW_URL, "");
52
- const attributes = parseHex(hex);
53
- return parseGCInventoryItem(economy, {
54
- defindex: attributes.defindex ?? 0,
55
- paintindex: attributes.paintindex,
56
- paintseed: attributes.paintseed,
57
- floatvalue: attributes.paintwear !== undefined ? bytesToFloat(attributes.paintwear) : undefined,
58
- killeatervalue: attributes.killeatervalue,
59
- customname: attributes.customname,
60
- musicindex: attributes.musicindex,
61
- stickers: attributes.stickers,
62
- keychains: attributes.keychains
63
- });
64
- }
65
- //# sourceMappingURL=parse-inspect-link.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse-inspect-link.js","sourceRoot":"","sources":["../src/parse-inspect-link.ts"],"names":[],"mappings":"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"}
package/dist/utils.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export declare function floatToBytes(floatValue: number): number;
2
- export declare function bytesToFloat(byteValue: number): number;
3
- export declare function truncate(value: number, factor: number): number;
package/dist/utils.js DELETED
@@ -1,20 +0,0 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) candyboyz, Ian Lucas. All rights reserved.
3
- * Licensed under the MIT License. See License.txt in the project root for license information.
4
- *--------------------------------------------------------------------------------------------*/
5
- export function floatToBytes(floatValue) {
6
- const floatArray = new Float32Array(1);
7
- floatArray[0] = floatValue;
8
- const byteArray = new Uint32Array(floatArray.buffer);
9
- return byteArray[0];
10
- }
11
- export function bytesToFloat(byteValue) {
12
- const byteArray = new Uint32Array(1);
13
- byteArray[0] = byteValue;
14
- const floatArray = new Float32Array(byteArray.buffer);
15
- return floatArray[0];
16
- }
17
- export function truncate(value, factor) {
18
- return parseFloat(String(value).substring(0, String(factor).length));
19
- }
20
- //# sourceMappingURL=utils.js.map
package/dist/utils.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAEhG,MAAM,UAAU,YAAY,CAAC,UAAkB;IAC3C,MAAM,UAAU,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IACvC,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;IAC3B,MAAM,SAAS,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACrD,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,SAAiB;IAC1C,MAAM,SAAS,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;IACrC,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IACzB,MAAM,UAAU,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACtD,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAa,EAAE,MAAc;IAClD,OAAO,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AACzE,CAAC"}