parse-tmx 2.38.1 → 2.39.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 +74 -75
- package/dist/index.js +10 -10
- package/package.json +11 -13
package/dist/index.d.ts
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
//#region src/models/tmx/parsed/TMXEditorSettingsParsed.d.ts
|
|
2
|
-
interface TMXEditorSettingsParsed extends Record<string, unknown> {}
|
|
2
|
+
export interface TMXEditorSettingsParsed extends Record<string, unknown> {}
|
|
3
3
|
//#endregion
|
|
4
4
|
//#region src/models/tmx/parsed/TMXFlipsParsed.d.ts
|
|
5
|
-
interface TMXFlipsParsed {
|
|
5
|
+
export interface TMXFlipsParsed {
|
|
6
6
|
Diagonal: boolean;
|
|
7
7
|
Horizontal: boolean;
|
|
8
8
|
Vertical: boolean;
|
|
9
9
|
}
|
|
10
10
|
//#endregion
|
|
11
11
|
//#region src/models/tmx/shared/TMXImageShared.d.ts
|
|
12
|
-
interface TMXImageShared {
|
|
12
|
+
export interface TMXImageShared {
|
|
13
13
|
height: number;
|
|
14
14
|
source: string;
|
|
15
15
|
width: number;
|
|
16
16
|
}
|
|
17
17
|
//#endregion
|
|
18
18
|
//#region src/models/tmx/parsed/TMXImageParsed.d.ts
|
|
19
|
-
interface TMXImageParsed extends TMXImageShared {}
|
|
19
|
+
export interface TMXImageParsed extends TMXImageShared {}
|
|
20
20
|
//#endregion
|
|
21
21
|
//#region src/models/Shape.d.ts
|
|
22
|
-
declare enum Shape {
|
|
22
|
+
export declare enum Shape {
|
|
23
23
|
Ellipse = "ellipse",
|
|
24
24
|
Point = "point",
|
|
25
25
|
Polygon = "polygon",
|
|
@@ -27,10 +27,10 @@ declare enum Shape {
|
|
|
27
27
|
}
|
|
28
28
|
//#endregion
|
|
29
29
|
//#region src/models/tmx/parsed/TMXPropertiesParsed.d.ts
|
|
30
|
-
type TMXPropertiesParsed = Record<string, unknown>[];
|
|
30
|
+
export type TMXPropertiesParsed = Record<string, unknown>[];
|
|
31
31
|
//#endregion
|
|
32
32
|
//#region src/models/tmx/shared/TMXObjectShared.d.ts
|
|
33
|
-
interface TMXObjectShared {
|
|
33
|
+
export interface TMXObjectShared {
|
|
34
34
|
gid: number;
|
|
35
35
|
height: number;
|
|
36
36
|
id: number;
|
|
@@ -41,7 +41,7 @@ interface TMXObjectShared {
|
|
|
41
41
|
}
|
|
42
42
|
//#endregion
|
|
43
43
|
//#region src/models/tmx/parsed/TMXObjectParsed.d.ts
|
|
44
|
-
interface TMXObjectParsed extends TMXObjectShared {
|
|
44
|
+
export interface TMXObjectParsed extends TMXObjectShared {
|
|
45
45
|
flips?: TMXFlipsParsed;
|
|
46
46
|
name: string;
|
|
47
47
|
points?: [number, number][];
|
|
@@ -52,7 +52,7 @@ interface TMXObjectParsed extends TMXObjectShared {
|
|
|
52
52
|
}
|
|
53
53
|
//#endregion
|
|
54
54
|
//#region src/models/tmx/shared/TMXLayerShared.d.ts
|
|
55
|
-
interface TMXLayerShared {
|
|
55
|
+
export interface TMXLayerShared {
|
|
56
56
|
height: number;
|
|
57
57
|
id: number;
|
|
58
58
|
locked?: number;
|
|
@@ -71,7 +71,7 @@ interface TMXLayerShared {
|
|
|
71
71
|
}
|
|
72
72
|
//#endregion
|
|
73
73
|
//#region src/models/tmx/parsed/TMXLayerParsed.d.ts
|
|
74
|
-
interface TMXLayerParsed extends TMXLayerShared {
|
|
74
|
+
export interface TMXLayerParsed extends TMXLayerShared {
|
|
75
75
|
data?: number[];
|
|
76
76
|
flips?: TMXFlipsParsed[];
|
|
77
77
|
image?: TMXImageParsed;
|
|
@@ -80,27 +80,27 @@ interface TMXLayerParsed extends TMXLayerShared {
|
|
|
80
80
|
}
|
|
81
81
|
//#endregion
|
|
82
82
|
//#region src/models/tmx/shared/TMXGroupLayerShared.d.ts
|
|
83
|
-
interface TMXGroupLayerShared {
|
|
83
|
+
export interface TMXGroupLayerShared {
|
|
84
84
|
id: number;
|
|
85
85
|
name: string;
|
|
86
86
|
type: string;
|
|
87
87
|
}
|
|
88
88
|
//#endregion
|
|
89
89
|
//#region src/models/tmx/parsed/TMXGroupLayerParsed.d.ts
|
|
90
|
-
interface TMXGroupLayerParsed extends TMXGroupLayerShared {
|
|
90
|
+
export interface TMXGroupLayerParsed extends TMXGroupLayerShared {
|
|
91
91
|
layers: TMXLayerParsed[];
|
|
92
92
|
properties?: TMXPropertiesParsed;
|
|
93
93
|
}
|
|
94
94
|
//#endregion
|
|
95
95
|
//#region src/models/tmx/shared/TMXTileShared.d.ts
|
|
96
|
-
interface TMXTileShared {
|
|
96
|
+
export interface TMXTileShared {
|
|
97
97
|
gid?: number;
|
|
98
98
|
id: number;
|
|
99
99
|
probability?: number;
|
|
100
100
|
}
|
|
101
101
|
//#endregion
|
|
102
102
|
//#region src/models/tmx/parsed/TMXTileParsed.d.ts
|
|
103
|
-
interface TMXTileParsed extends TMXTileShared {
|
|
103
|
+
export interface TMXTileParsed extends TMXTileShared {
|
|
104
104
|
animation?: {
|
|
105
105
|
frames: number[];
|
|
106
106
|
};
|
|
@@ -111,12 +111,12 @@ interface TMXTileParsed extends TMXTileShared {
|
|
|
111
111
|
}
|
|
112
112
|
//#endregion
|
|
113
113
|
//#region src/models/tmx/shared/TMXBaseTilesetShared.d.ts
|
|
114
|
-
interface TMXBaseTilesetShared {
|
|
114
|
+
export interface TMXBaseTilesetShared {
|
|
115
115
|
firstgid: number;
|
|
116
116
|
}
|
|
117
117
|
//#endregion
|
|
118
118
|
//#region src/models/tmx/shared/TMXEmbeddedTilesetShared.d.ts
|
|
119
|
-
interface TMXEmbeddedTilesetShared extends TMXBaseTilesetShared {
|
|
119
|
+
export interface TMXEmbeddedTilesetShared extends TMXBaseTilesetShared {
|
|
120
120
|
columns: number;
|
|
121
121
|
imageheight: number;
|
|
122
122
|
imagewidth: number;
|
|
@@ -129,24 +129,24 @@ interface TMXEmbeddedTilesetShared extends TMXBaseTilesetShared {
|
|
|
129
129
|
}
|
|
130
130
|
//#endregion
|
|
131
131
|
//#region src/models/tmx/parsed/TMXEmbeddedTilesetParsed.d.ts
|
|
132
|
-
interface TMXEmbeddedTilesetParsed extends TMXEmbeddedTilesetShared {
|
|
132
|
+
export interface TMXEmbeddedTilesetParsed extends TMXEmbeddedTilesetShared {
|
|
133
133
|
image: TMXImageParsed;
|
|
134
134
|
tiles: TMXTileParsed[];
|
|
135
135
|
}
|
|
136
136
|
//#endregion
|
|
137
137
|
//#region src/models/tmx/shared/TMXExternalTilesetShared.d.ts
|
|
138
|
-
interface TMXExternalTilesetShared extends TMXBaseTilesetShared {
|
|
138
|
+
export interface TMXExternalTilesetShared extends TMXBaseTilesetShared {
|
|
139
139
|
source: string;
|
|
140
140
|
}
|
|
141
141
|
//#endregion
|
|
142
142
|
//#region src/models/tmx/parsed/TMXExternalTilesetParsed.d.ts
|
|
143
|
-
interface TMXExternalTilesetParsed extends TMXExternalTilesetShared {}
|
|
143
|
+
export interface TMXExternalTilesetParsed extends TMXExternalTilesetShared {}
|
|
144
144
|
//#endregion
|
|
145
145
|
//#region src/models/tmx/parsed/TMXTilesetParsed.d.ts
|
|
146
|
-
type TMXTilesetParsed = TMXEmbeddedTilesetParsed | TMXExternalTilesetParsed;
|
|
146
|
+
export type TMXTilesetParsed = TMXEmbeddedTilesetParsed | TMXExternalTilesetParsed;
|
|
147
147
|
//#endregion
|
|
148
148
|
//#region src/models/tmx/shared/TMXMapShared.d.ts
|
|
149
|
-
declare class TMXMapShared {
|
|
149
|
+
export declare class TMXMapShared {
|
|
150
150
|
height: number;
|
|
151
151
|
infinite: number;
|
|
152
152
|
nextlayerid: number;
|
|
@@ -161,7 +161,7 @@ declare class TMXMapShared {
|
|
|
161
161
|
}
|
|
162
162
|
//#endregion
|
|
163
163
|
//#region src/models/tmx/parsed/TMXMapParsed.d.ts
|
|
164
|
-
declare class TMXMapParsed extends TMXMapShared {
|
|
164
|
+
export declare class TMXMapParsed extends TMXMapShared {
|
|
165
165
|
editorsettings: TMXEditorSettingsParsed;
|
|
166
166
|
layers: (TMXGroupLayerParsed | TMXLayerParsed)[];
|
|
167
167
|
properties: TMXPropertiesParsed;
|
|
@@ -170,36 +170,39 @@ declare class TMXMapParsed extends TMXMapShared {
|
|
|
170
170
|
}
|
|
171
171
|
//#endregion
|
|
172
172
|
//#region src/models/tmx/parsed/TMXParsed.d.ts
|
|
173
|
-
declare class TMXParsed {
|
|
173
|
+
export declare class TMXParsed {
|
|
174
174
|
map: TMXMapParsed;
|
|
175
175
|
constructor(map?: TMXMapParsed);
|
|
176
176
|
}
|
|
177
177
|
//#endregion
|
|
178
178
|
//#region src/parseTmx.d.ts
|
|
179
|
-
declare const parseTmx: (xmlString: string, translateFlips?: boolean) => Promise<TMXParsed>;
|
|
179
|
+
export declare const parseTmx: (xmlString: string, translateFlips?: boolean) => Promise<TMXParsed>;
|
|
180
180
|
//#endregion
|
|
181
181
|
//#region src/models/Compression.d.ts
|
|
182
|
-
declare enum Compression {
|
|
182
|
+
export declare enum Compression {
|
|
183
183
|
Gzip = "gzip",
|
|
184
184
|
Zlib = "zlib"
|
|
185
185
|
}
|
|
186
186
|
//#endregion
|
|
187
187
|
//#region src/models/Encoding.d.ts
|
|
188
|
-
declare enum Encoding {
|
|
188
|
+
export declare enum Encoding {
|
|
189
189
|
Base64 = "base64",
|
|
190
190
|
Csv = "csv"
|
|
191
191
|
}
|
|
192
192
|
//#endregion
|
|
193
193
|
//#region src/models/Flipped.d.ts
|
|
194
|
-
declare enum Flipped {
|
|
194
|
+
export declare enum Flipped {
|
|
195
195
|
Diagonally = 536870912,
|
|
196
196
|
Vertically = 1073741824,
|
|
197
197
|
Horizontally = 2147483648
|
|
198
198
|
}
|
|
199
|
-
declare const Flippeds: readonly Flipped[];
|
|
199
|
+
export declare const Flippeds: readonly Flipped[];
|
|
200
|
+
//#endregion
|
|
201
|
+
//#region src/util/checkIsExternalTileset.d.ts
|
|
202
|
+
export declare const checkIsExternalTileset: (tileset: TMXEmbeddedTilesetShared | TMXExternalTilesetShared) => tileset is TMXExternalTilesetShared;
|
|
200
203
|
//#endregion
|
|
201
204
|
//#region src/models/tmx/node/TMXNodeType.d.ts
|
|
202
|
-
declare enum TMXNodeType {
|
|
205
|
+
export declare enum TMXNodeType {
|
|
203
206
|
Data = "data",
|
|
204
207
|
EditorSettings = "editorsettings",
|
|
205
208
|
Export = "export",
|
|
@@ -215,28 +218,19 @@ declare enum TMXNodeType {
|
|
|
215
218
|
}
|
|
216
219
|
//#endregion
|
|
217
220
|
//#region src/models/tmx/node/BaseTMXNode.d.ts
|
|
218
|
-
declare class BaseTMXNode<T> {
|
|
221
|
+
export declare class BaseTMXNode<T> {
|
|
219
222
|
[key: string]: unknown;
|
|
220
223
|
readonly "#name": TMXNodeType;
|
|
221
224
|
$: T;
|
|
222
225
|
}
|
|
223
226
|
//#endregion
|
|
224
|
-
//#region src/util/cloneNodeWithType.d.ts
|
|
225
|
-
declare const cloneNodeWithType: <TParsed>(node: BaseTMXNode<unknown>) => TParsed;
|
|
226
|
-
//#endregion
|
|
227
|
-
//#region src/util/getDecompressedBytes.d.ts
|
|
228
|
-
declare const getDecompressedBytes: (bytes: Uint8Array<ArrayBuffer>, compression: Compression.Gzip | Compression.Zlib) => Promise<Uint8Array<ArrayBuffer>>;
|
|
229
|
-
//#endregion
|
|
230
|
-
//#region src/util/isExternalTileset.d.ts
|
|
231
|
-
declare const isExternalTileset: (tileset: TMXEmbeddedTilesetShared | TMXExternalTilesetShared) => tileset is TMXExternalTilesetShared;
|
|
232
|
-
//#endregion
|
|
233
227
|
//#region src/models/tmx/node/TMXNode.d.ts
|
|
234
|
-
type TMXNode<T, TChildNode extends BaseTMXNode<unknown> | undefined = undefined> = BaseTMXNode<T> & {
|
|
228
|
+
export type TMXNode<T, TChildNode extends BaseTMXNode<unknown> | undefined = undefined> = BaseTMXNode<T> & {
|
|
235
229
|
$$: TChildNode extends undefined ? undefined : TChildNode[];
|
|
236
230
|
};
|
|
237
231
|
//#endregion
|
|
238
232
|
//#region src/models/tmx/node/TMXDataNode.d.ts
|
|
239
|
-
interface TMXDataNode extends TMXNode<{
|
|
233
|
+
export interface TMXDataNode extends TMXNode<{
|
|
240
234
|
compression?: Compression;
|
|
241
235
|
encoding: Encoding;
|
|
242
236
|
}> {
|
|
@@ -244,10 +238,10 @@ interface TMXDataNode extends TMXNode<{
|
|
|
244
238
|
}
|
|
245
239
|
//#endregion
|
|
246
240
|
//#region src/models/tmx/node/TMXImageNode.d.ts
|
|
247
|
-
interface TMXImageNode extends TMXNode<TMXImageShared> {}
|
|
241
|
+
export interface TMXImageNode extends TMXNode<TMXImageShared> {}
|
|
248
242
|
//#endregion
|
|
249
243
|
//#region src/models/tmx/node/TMXPropertyNode.d.ts
|
|
250
|
-
interface TMXPropertyNode extends TMXNode<{
|
|
244
|
+
export interface TMXPropertyNode extends TMXNode<{
|
|
251
245
|
name: string;
|
|
252
246
|
value?: string;
|
|
253
247
|
}> {
|
|
@@ -255,10 +249,10 @@ interface TMXPropertyNode extends TMXNode<{
|
|
|
255
249
|
}
|
|
256
250
|
//#endregion
|
|
257
251
|
//#region src/models/tmx/node/TMXPropertiesNode.d.ts
|
|
258
|
-
interface TMXPropertiesNode extends TMXNode<Record<string, never>, TMXPropertyNode> {}
|
|
252
|
+
export interface TMXPropertiesNode extends TMXNode<Record<string, never>, TMXPropertyNode> {}
|
|
259
253
|
//#endregion
|
|
260
254
|
//#region src/models/tmx/node/TMXObjectNode.d.ts
|
|
261
|
-
interface TMXObjectNode extends TMXNode<TMXObjectShared, TMXDataNode | TMXPropertiesNode> {
|
|
255
|
+
export interface TMXObjectNode extends TMXNode<TMXObjectShared, TMXDataNode | TMXPropertiesNode> {
|
|
262
256
|
polygon?: TMXNode<{
|
|
263
257
|
points: string;
|
|
264
258
|
}>[];
|
|
@@ -269,7 +263,7 @@ interface TMXObjectNode extends TMXNode<TMXObjectShared, TMXDataNode | TMXProper
|
|
|
269
263
|
}
|
|
270
264
|
//#endregion
|
|
271
265
|
//#region src/models/tmx/node/TMXTileNode.d.ts
|
|
272
|
-
interface TMXTileNode extends TMXNode<TMXTileShared, TMXPropertiesNode> {
|
|
266
|
+
export interface TMXTileNode extends TMXNode<TMXTileShared, TMXPropertiesNode> {
|
|
273
267
|
animation?: Record<string, TMXNode<number>[]>[];
|
|
274
268
|
objectgroup?: Record<string, TMXObjectNode[]>[];
|
|
275
269
|
properties?: {
|
|
@@ -278,18 +272,24 @@ interface TMXTileNode extends TMXNode<TMXTileShared, TMXPropertiesNode> {
|
|
|
278
272
|
}
|
|
279
273
|
//#endregion
|
|
280
274
|
//#region src/models/tmx/node/TMXEmbeddedTilesetNode.d.ts
|
|
281
|
-
interface TMXEmbeddedTilesetNode extends TMXNode<TMXEmbeddedTilesetShared, TMXImageNode | TMXTileNode> {
|
|
275
|
+
export interface TMXEmbeddedTilesetNode extends TMXNode<TMXEmbeddedTilesetShared, TMXImageNode | TMXTileNode> {
|
|
282
276
|
tile?: TMXTileNode[];
|
|
283
277
|
}
|
|
284
278
|
//#endregion
|
|
285
|
-
//#region src/util/
|
|
286
|
-
declare const
|
|
279
|
+
//#region src/util/checkIsTMXEmbeddedTilesetNode.d.ts
|
|
280
|
+
export declare const checkIsTMXEmbeddedTilesetNode: (node: TMXDataNode | TMXEmbeddedTilesetNode) => node is TMXEmbeddedTilesetNode;
|
|
281
|
+
//#endregion
|
|
282
|
+
//#region src/util/cloneNodeWithType.d.ts
|
|
283
|
+
export declare const cloneNodeWithType: <TParsed>(node: BaseTMXNode<unknown>) => TParsed;
|
|
284
|
+
//#endregion
|
|
285
|
+
//#region src/util/getDecompressedBytes.d.ts
|
|
286
|
+
export declare const getDecompressedBytes: (bytes: Uint8Array<ArrayBuffer>, compression: Compression.Gzip | Compression.Zlib) => Promise<Uint8Array<ArrayBuffer>>;
|
|
287
287
|
//#endregion
|
|
288
288
|
//#region src/util/parseFlips.d.ts
|
|
289
|
-
declare const parseFlips: (gid: number) => TMXFlipsParsed;
|
|
289
|
+
export declare const parseFlips: (gid: number) => TMXFlipsParsed;
|
|
290
290
|
//#endregion
|
|
291
291
|
//#region src/models/tmx/node/TMXLayerNode.d.ts
|
|
292
|
-
interface TMXLayerNode extends TMXNode<TMXLayerShared, TMXDataNode | TMXEmbeddedTilesetNode | TMXPropertiesNode> {
|
|
292
|
+
export interface TMXLayerNode extends TMXNode<TMXLayerShared, TMXDataNode | TMXEmbeddedTilesetNode | TMXPropertiesNode> {
|
|
293
293
|
data?: TMXDataNode[] | TMXEmbeddedTilesetNode[];
|
|
294
294
|
image?: TMXImageNode[];
|
|
295
295
|
object?: TMXObjectNode[];
|
|
@@ -299,80 +299,79 @@ interface TMXLayerNode extends TMXNode<TMXLayerShared, TMXDataNode | TMXEmbedded
|
|
|
299
299
|
}
|
|
300
300
|
//#endregion
|
|
301
301
|
//#region src/models/tmx/node/TMXGroupLayerNode.d.ts
|
|
302
|
-
interface TMXGroupLayerNode extends TMXNode<TMXGroupLayerShared, TMXLayerNode> {
|
|
302
|
+
export interface TMXGroupLayerNode extends TMXNode<TMXGroupLayerShared, TMXLayerNode> {
|
|
303
303
|
properties?: {
|
|
304
304
|
property: TMXPropertyNode[];
|
|
305
305
|
}[];
|
|
306
306
|
}
|
|
307
307
|
//#endregion
|
|
308
308
|
//#region src/util/parseGroup.d.ts
|
|
309
|
-
declare const parseGroup: (node: TMXGroupLayerNode, expectedCount: number, translateFlips: boolean) => Promise<TMXGroupLayerParsed>;
|
|
309
|
+
export declare const parseGroup: (node: TMXGroupLayerNode, expectedCount: number, translateFlips: boolean) => Promise<TMXGroupLayerParsed>;
|
|
310
310
|
//#endregion
|
|
311
311
|
//#region src/util/parseLayer.d.ts
|
|
312
|
-
declare const parseLayer: (node: TMXLayerNode) => TMXLayerParsed;
|
|
312
|
+
export declare const parseLayer: (node: TMXLayerNode) => TMXLayerParsed;
|
|
313
313
|
//#endregion
|
|
314
314
|
//#region src/util/parseNode.d.ts
|
|
315
|
-
declare const parseNode: <TNode extends TMXGroupLayerNode | TMXLayerNode, TParsedNode = TNode extends TMXLayerNode ? TMXLayerParsed : TMXGroupLayerParsed>(node: TNode, expectedCount: number, translateFlips: boolean) => Promise<TParsedNode>;
|
|
315
|
+
export declare const parseNode: <TNode extends TMXGroupLayerNode | TMXLayerNode, TParsedNode = TNode extends TMXLayerNode ? TMXLayerParsed : TMXGroupLayerParsed>(node: TNode, expectedCount: number, translateFlips: boolean) => Promise<TParsedNode>;
|
|
316
316
|
//#endregion
|
|
317
317
|
//#region src/util/parseObject.d.ts
|
|
318
|
-
declare const parseObject: (node: TMXObjectNode) => TMXObjectParsed;
|
|
318
|
+
export declare const parseObject: (node: TMXObjectNode) => TMXObjectParsed;
|
|
319
319
|
//#endregion
|
|
320
320
|
//#region src/util/parseObjectShape.d.ts
|
|
321
|
-
declare const parseObjectShape: (node: TMXObjectNode) => Shape;
|
|
321
|
+
export declare const parseObjectShape: (node: TMXObjectNode) => Shape;
|
|
322
322
|
//#endregion
|
|
323
323
|
//#region src/util/parseProperties.d.ts
|
|
324
|
-
declare const parseProperties: (properties: {
|
|
324
|
+
export declare const parseProperties: (properties: {
|
|
325
325
|
property: TMXPropertyNode[];
|
|
326
326
|
}[]) => TMXPropertiesParsed;
|
|
327
327
|
//#endregion
|
|
328
328
|
//#region src/util/parseTile.d.ts
|
|
329
|
-
declare const parseTile: (node: TMXTileNode) => TMXTileParsed;
|
|
329
|
+
export declare const parseTile: (node: TMXTileNode) => TMXTileParsed;
|
|
330
330
|
//#endregion
|
|
331
331
|
//#region src/util/parseTileId.d.ts
|
|
332
|
-
declare const parseTileId: (gid: number) => number;
|
|
332
|
+
export declare const parseTileId: (gid: number) => number;
|
|
333
333
|
//#endregion
|
|
334
334
|
//#region src/util/parseTileLayer.d.ts
|
|
335
|
-
declare const parseTileLayer: (node: TMXLayerNode, expectedCount: number, translateFlips: boolean) => Promise<TMXLayerParsed>;
|
|
335
|
+
export declare const parseTileLayer: (node: TMXLayerNode, expectedCount: number, translateFlips: boolean) => Promise<TMXLayerParsed>;
|
|
336
336
|
//#endregion
|
|
337
337
|
//#region src/models/tmx/node/TMXExternalTilesetNode.d.ts
|
|
338
|
-
interface TMXExternalTilesetNode extends TMXNode<TMXExternalTilesetShared> {}
|
|
338
|
+
export interface TMXExternalTilesetNode extends TMXNode<TMXExternalTilesetShared> {}
|
|
339
339
|
//#endregion
|
|
340
340
|
//#region src/models/tmx/node/TMXTilesetNode.d.ts
|
|
341
|
-
type TMXTilesetNode = TMXEmbeddedTilesetNode | TMXExternalTilesetNode;
|
|
341
|
+
export type TMXTilesetNode = TMXEmbeddedTilesetNode | TMXExternalTilesetNode;
|
|
342
342
|
//#endregion
|
|
343
343
|
//#region src/util/parseTileset.d.ts
|
|
344
|
-
declare const parseTileset: (node: TMXTilesetNode) => TMXTilesetParsed;
|
|
344
|
+
export declare const parseTileset: (node: TMXTilesetNode) => TMXTilesetParsed;
|
|
345
345
|
//#endregion
|
|
346
346
|
//#region src/util/parseXmlString.d.ts
|
|
347
|
-
declare const parseXmlString: <T extends object>(xmlString: string) => Promise<T>;
|
|
347
|
+
export declare const parseXmlString: <T extends object>(xmlString: string) => Promise<T>;
|
|
348
348
|
//#endregion
|
|
349
349
|
//#region src/util/parseXmlValue.d.ts
|
|
350
|
-
declare const parseXmlValue: (value: string) => boolean | number | string;
|
|
350
|
+
export declare const parseXmlValue: (value: string) => boolean | number | string;
|
|
351
351
|
//#endregion
|
|
352
352
|
//#region src/util/unpackTileBytes.d.ts
|
|
353
|
-
declare const unpackTileBytes: (bytes: Uint8Array, expectedCount: number) => number[];
|
|
353
|
+
export declare const unpackTileBytes: (bytes: Uint8Array, expectedCount: number) => number[];
|
|
354
354
|
//#endregion
|
|
355
355
|
//#region src/models/tmx/shared/TMXExportShared.d.ts
|
|
356
|
-
interface TMXExportShared {
|
|
356
|
+
export interface TMXExportShared {
|
|
357
357
|
format: string;
|
|
358
358
|
target: string;
|
|
359
359
|
}
|
|
360
360
|
//#endregion
|
|
361
361
|
//#region src/models/tmx/node/TMXExportNode.d.ts
|
|
362
|
-
interface TMXExportNode extends TMXNode<TMXExportShared> {}
|
|
362
|
+
export interface TMXExportNode extends TMXNode<TMXExportShared> {}
|
|
363
363
|
//#endregion
|
|
364
364
|
//#region src/models/tmx/node/TMXEditorSettingsNode.d.ts
|
|
365
|
-
interface TMXEditorSettingsNode extends TMXNode<Record<string, never>, TMXExportNode> {}
|
|
365
|
+
export interface TMXEditorSettingsNode extends TMXNode<Record<string, never>, TMXExportNode> {}
|
|
366
366
|
//#endregion
|
|
367
367
|
//#region src/models/tmx/node/TMXMapNode.d.ts
|
|
368
|
-
interface TMXMapNode extends TMXNode<TMXMapShared, TMXEditorSettingsNode | TMXGroupLayerNode | TMXPropertiesNode | TMXTilesetNode> {}
|
|
368
|
+
export interface TMXMapNode extends TMXNode<TMXMapShared, TMXEditorSettingsNode | TMXGroupLayerNode | TMXPropertiesNode | TMXTilesetNode> {}
|
|
369
369
|
//#endregion
|
|
370
370
|
//#region src/models/tmx/node/TMX.d.ts
|
|
371
|
-
interface TMX {
|
|
371
|
+
export interface TMX {
|
|
372
372
|
map: TMXMapNode;
|
|
373
373
|
}
|
|
374
374
|
//#endregion
|
|
375
375
|
//#region src/models/tmx/parsed/TMXExportParsed.d.ts
|
|
376
|
-
interface TMXExportParsed extends TMXExportShared {}
|
|
377
|
-
//#endregion
|
|
378
|
-
export { BaseTMXNode, Compression, Encoding, Flipped, Flippeds, Shape, TMX, TMXBaseTilesetShared, TMXDataNode, TMXEditorSettingsNode, TMXEditorSettingsParsed, TMXEmbeddedTilesetNode, TMXEmbeddedTilesetParsed, TMXEmbeddedTilesetShared, TMXExportNode, TMXExportParsed, TMXExportShared, TMXExternalTilesetNode, TMXExternalTilesetParsed, TMXExternalTilesetShared, TMXFlipsParsed, TMXGroupLayerNode, TMXGroupLayerParsed, TMXGroupLayerShared, TMXImageNode, TMXImageParsed, TMXImageShared, TMXLayerNode, TMXLayerParsed, TMXLayerShared, TMXMapNode, TMXMapParsed, TMXMapShared, TMXNode, TMXNodeType, TMXObjectNode, TMXObjectParsed, TMXObjectShared, TMXParsed, TMXPropertiesNode, TMXPropertiesParsed, TMXPropertyNode, TMXTileNode, TMXTileParsed, TMXTileShared, TMXTilesetNode, TMXTilesetParsed, cloneNodeWithType, getDecompressedBytes, isExternalTileset, isTMXEmbeddedTilesetNode, parseFlips, parseGroup, parseLayer, parseNode, parseObject, parseObjectShape, parseProperties, parseTile, parseTileId, parseTileLayer, parseTileset, parseTmx, parseXmlString, parseXmlValue, unpackTileBytes };
|
|
376
|
+
export interface TMXExportParsed extends TMXExportShared {}
|
|
377
|
+
//#endregion
|
package/dist/index.js
CHANGED
|
@@ -164,6 +164,9 @@ let Encoding = /* @__PURE__ */ function(Encoding) {
|
|
|
164
164
|
return Encoding;
|
|
165
165
|
}({});
|
|
166
166
|
//#endregion
|
|
167
|
+
//#region src/util/checkIsTMXEmbeddedTilesetNode.ts
|
|
168
|
+
const checkIsTMXEmbeddedTilesetNode = (node) => "tile" in node;
|
|
169
|
+
//#endregion
|
|
167
170
|
//#region src/util/getDecompressedBytes.ts
|
|
168
171
|
const getDecompressedBytes = async (bytes, compression) => {
|
|
169
172
|
const format = compression === "gzip" ? "gzip" : "deflate";
|
|
@@ -173,13 +176,10 @@ const getDecompressedBytes = async (bytes, compression) => {
|
|
|
173
176
|
return new Uint8Array(await new Response(decompressedTileStream).arrayBuffer());
|
|
174
177
|
};
|
|
175
178
|
//#endregion
|
|
176
|
-
//#region src/util/isTMXEmbeddedTilesetNode.ts
|
|
177
|
-
const isTMXEmbeddedTilesetNode = (node) => "tile" in node;
|
|
178
|
-
//#endregion
|
|
179
179
|
//#region src/util/unpackTileBytes.ts
|
|
180
180
|
const unpackTileBytes = (bytes, expectedCount) => {
|
|
181
181
|
const unpackedTiles = [];
|
|
182
|
-
if (bytes.byteLength !== expectedCount) throw new
|
|
182
|
+
if (bytes.byteLength !== expectedCount) throw new InvalidOperationError(Operation.Read, "TMXLayer", `expected ${expectedCount} bytes of tile data, received ${bytes.byteLength}`);
|
|
183
183
|
const dataView = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
|
|
184
184
|
for (let i = 0; i < expectedCount; i += 4) unpackedTiles.push(dataView.getUint32(i, true));
|
|
185
185
|
return unpackedTiles;
|
|
@@ -188,11 +188,11 @@ const unpackTileBytes = (bytes, expectedCount) => {
|
|
|
188
188
|
//#region src/util/parseTileLayer.ts
|
|
189
189
|
const parseTileLayer = async (node, expectedCount, translateFlips) => {
|
|
190
190
|
const { data, properties } = node;
|
|
191
|
-
if (!data) throw new
|
|
191
|
+
if (!data) throw new InvalidOperationError(Operation.Read, "TMXLayer", "data is missing");
|
|
192
192
|
const layer = cloneNodeWithType(node);
|
|
193
193
|
if (properties) layer.properties = parseProperties(properties);
|
|
194
194
|
const nodeData = takeOne(data);
|
|
195
|
-
if (
|
|
195
|
+
if (checkIsTMXEmbeddedTilesetNode(nodeData)) layer.data = nodeData.tile?.map(({ $ }) => $.gid ?? 0) ?? [];
|
|
196
196
|
else {
|
|
197
197
|
const { $, _ } = nodeData;
|
|
198
198
|
const { compression, encoding } = $;
|
|
@@ -238,8 +238,8 @@ const parseNode = (node, expectedCount, translateFlips) => {
|
|
|
238
238
|
}
|
|
239
239
|
};
|
|
240
240
|
//#endregion
|
|
241
|
-
//#region src/util/
|
|
242
|
-
const
|
|
241
|
+
//#region src/util/checkIsExternalTileset.ts
|
|
242
|
+
const checkIsExternalTileset = (tileset) => "source" in tileset;
|
|
243
243
|
//#endregion
|
|
244
244
|
//#region src/util/parseTile.ts
|
|
245
245
|
const parseTile = (node) => {
|
|
@@ -253,7 +253,7 @@ const parseTile = (node) => {
|
|
|
253
253
|
//#endregion
|
|
254
254
|
//#region src/util/parseTileset.ts
|
|
255
255
|
const parseTileset = (node) => {
|
|
256
|
-
if (
|
|
256
|
+
if (checkIsExternalTileset(node.$)) return structuredClone(node.$);
|
|
257
257
|
const { $, $$, tile } = node;
|
|
258
258
|
for (const childNode of $$) {
|
|
259
259
|
if (childNode["#name"] !== "image") continue;
|
|
@@ -331,4 +331,4 @@ var BaseTMXNode = class {
|
|
|
331
331
|
$;
|
|
332
332
|
};
|
|
333
333
|
//#endregion
|
|
334
|
-
export { BaseTMXNode, Compression, Encoding, Flipped, Flippeds, Shape, TMXMapParsed, TMXMapShared, TMXNodeType, TMXParsed,
|
|
334
|
+
export { BaseTMXNode, Compression, Encoding, Flipped, Flippeds, Shape, TMXMapParsed, TMXMapShared, TMXNodeType, TMXParsed, checkIsExternalTileset, checkIsTMXEmbeddedTilesetNode, cloneNodeWithType, getDecompressedBytes, parseFlips, parseGroup, parseLayer, parseNode, parseObject, parseObjectShape, parseProperties, parseTile, parseTileId, parseTileLayer, parseTileset, parseTmx, parseXmlString, parseXmlValue, unpackTileBytes };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "parse-tmx",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.39.0",
|
|
4
4
|
"description": "A parser for tmx.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"game-development",
|
|
@@ -42,31 +42,29 @@
|
|
|
42
42
|
"access": "public"
|
|
43
43
|
},
|
|
44
44
|
"scripts": {
|
|
45
|
-
"build": "
|
|
46
|
-
"export:gen": "
|
|
45
|
+
"build": "tsdown",
|
|
46
|
+
"export:gen": "generate-exports",
|
|
47
47
|
"format": "oxfmt",
|
|
48
48
|
"format:check": "oxfmt --check",
|
|
49
49
|
"lint": "eslint .",
|
|
50
50
|
"lint:fix": "eslint --fix .",
|
|
51
51
|
"test": "vitest",
|
|
52
|
-
"typecheck": "
|
|
52
|
+
"typecheck": "tsc"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@esposter/shared": "2.
|
|
56
|
-
"@esposter/xml2js": "2.
|
|
57
|
-
"data-urls": "^7.0.0"
|
|
58
|
-
"dayjs": "^1.11.23"
|
|
55
|
+
"@esposter/shared": "2.39.0",
|
|
56
|
+
"@esposter/xml2js": "2.39.0",
|
|
57
|
+
"data-urls": "^7.0.0"
|
|
59
58
|
},
|
|
60
59
|
"devDependencies": {
|
|
61
60
|
"@arethetypeswrong/core": "^0.18.5",
|
|
62
|
-
"@esposter/configuration": "2.
|
|
61
|
+
"@esposter/configuration": "2.39.0",
|
|
63
62
|
"@types/data-urls": "^3.0.5",
|
|
64
63
|
"@types/xml2js": "^0.4.14",
|
|
65
|
-
"ctix": "^2.8.2",
|
|
66
64
|
"publint": "^0.3.24",
|
|
67
|
-
"tsdown": "^0.
|
|
68
|
-
"type-fest": "^5.
|
|
65
|
+
"tsdown": "^0.23.0",
|
|
66
|
+
"type-fest": "^5.9.0",
|
|
69
67
|
"vitest": "^4.1.11"
|
|
70
68
|
},
|
|
71
|
-
"gitHead": "
|
|
69
|
+
"gitHead": "98f89a176510bb274865731121f990e48c6d056a"
|
|
72
70
|
}
|