parse-tmx 2.1.0 → 2.2.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.
Files changed (4) hide show
  1. package/README.md +12 -12
  2. package/dist/index.d.ts +147 -153
  3. package/dist/index.js +58258 -43237
  4. package/package.json +13 -13
package/README.md CHANGED
@@ -1,16 +1,9 @@
1
1
  # parse-tmx
2
2
 
3
- <p>
4
- <a href="https://www.npmjs.com/package/parse-tmx">
5
- <img src="https://img.shields.io/npm/v/parse-tmx.svg?style=flat&colorA=18181B&colorB=28CF8D" alt="Version">
6
- </a>
7
- <a href="https://www.npmjs.com/package/parse-tmx">
8
- <img src="https://img.shields.io/npm/dm/parse-tmx.svg?style=flat&colorA=18181B&colorB=28CF8D" alt="Downloads">
9
- </a>
10
- <a href="https://github.com/Esposter/Esposter/blob/main/LICENSE">
11
- <img src="https://img.shields.io/github/license/Esposter/Esposter.svg?style=flat&colorA=18181B&colorB=28CF8D" alt="License">
12
- </a>
13
- </p>
3
+ [![Apache-2.0 licensed][badge-license]][url-license]
4
+ [![NPM version][badge-npm-version]][url-npm]
5
+ [![NPM downloads][badge-npm-downloads]][url-npm]
6
+ [![NPM Unpacked Size (with version)][badge-npm-unpacked-size]][url-npm]
14
7
 
15
8
  Inspired by [tmx-map-parser](https://github.com/praghus/tmx-map-parser).
16
9
  A parser for [Tiled Map Editor](http://www.mapeditor.org/) \*.tmx files.
@@ -122,4 +115,11 @@ const loadMap = async () => {
122
115
 
123
116
  ## <a name="license">⚖️ License</a>
124
117
 
125
- [Apache-2.0 licensed](https://github.com/Esposter/Esposter/blob/main/LICENSE)
118
+ This project is licensed under the [Apache-2.0 license](https://github.com/Esposter/Esposter/blob/main/LICENSE).
119
+
120
+ [badge-license]: https://img.shields.io/github/license/Esposter/Esposter.svg?color=blue
121
+ [url-license]: https://github.com/Esposter/Esposter/blob/main/LICENSE
122
+ [badge-npm-version]: https://img.shields.io/npm/v/parse-tmx/latest?color=brightgreen
123
+ [url-npm]: https://www.npmjs.com/package/parse-tmx/v/latest
124
+ [badge-npm-unpacked-size]: https://img.shields.io/npm/unpacked-size/parse-tmx/latest?label=npm
125
+ [badge-npm-downloads]: https://img.shields.io/npm/dm/parse-tmx.svg
package/dist/index.d.ts CHANGED
@@ -4,17 +4,17 @@ interface TMXEditorSettingsParsed extends Record<string, unknown> {}
4
4
  //#endregion
5
5
  //#region src/models/tmx/parsed/TMXFlipsParsed.d.ts
6
6
  interface TMXFlipsParsed {
7
- D: boolean;
8
- H: boolean;
9
- V: boolean;
7
+ D: boolean;
8
+ H: boolean;
9
+ V: boolean;
10
10
  }
11
11
 
12
12
  //#endregion
13
13
  //#region src/models/tmx/shared/TMXImageShared.d.ts
14
14
  interface TMXImageShared {
15
- height: number;
16
- source: string;
17
- width: number;
15
+ height: number;
16
+ source: string;
17
+ width: number;
18
18
  }
19
19
 
20
20
  //#endregion
@@ -24,10 +24,10 @@ interface TMXImageParsed extends TMXImageShared {}
24
24
  //#endregion
25
25
  //#region src/models/Shape.d.ts
26
26
  declare enum Shape {
27
- Ellipse = "ellipse",
28
- Point = "point",
29
- Polygon = "polygon",
30
- Rectangle = "rectangle"
27
+ Ellipse = "ellipse",
28
+ Point = "point",
29
+ Polygon = "polygon",
30
+ Rectangle = "rectangle",
31
31
  }
32
32
 
33
33
  //#endregion
@@ -37,123 +37,123 @@ type TMXPropertiesParsed = Record<string, unknown>[];
37
37
  //#endregion
38
38
  //#region src/models/tmx/shared/TMXObjectShared.d.ts
39
39
  interface TMXObjectShared {
40
- gid: number;
41
- height: number;
42
- id: number;
43
- type: string;
44
- width: number;
45
- x: number;
46
- y: number;
40
+ gid: number;
41
+ height: number;
42
+ id: number;
43
+ type: string;
44
+ width: number;
45
+ x: number;
46
+ y: number;
47
47
  }
48
48
 
49
49
  //#endregion
50
50
  //#region src/models/tmx/parsed/TMXObjectParsed.d.ts
51
51
  interface TMXObjectParsed extends TMXObjectShared {
52
- flips?: TMXFlipsParsed;
53
- name: string;
54
- points?: [number, number][];
55
- properties?: TMXPropertiesParsed;
56
- shape: Shape;
57
- text?: string;
58
- value: string;
52
+ flips?: TMXFlipsParsed;
53
+ name: string;
54
+ points?: [number, number][];
55
+ properties?: TMXPropertiesParsed;
56
+ shape: Shape;
57
+ text?: string;
58
+ value: string;
59
59
  }
60
60
 
61
61
  //#endregion
62
62
  //#region src/models/tmx/shared/TMXLayerShared.d.ts
63
63
  interface TMXLayerShared {
64
- height: number;
65
- id: number;
66
- locked?: number;
67
- name: string;
68
- offsetx?: number;
69
- offsety?: number;
70
- opacity?: number;
71
- parallaxx?: number;
72
- parallaxy?: number;
73
- tintcolor?: string;
74
- type: string;
75
- visible?: number;
76
- width: number;
77
- x?: number;
78
- y?: number;
64
+ height: number;
65
+ id: number;
66
+ locked?: number;
67
+ name: string;
68
+ offsetx?: number;
69
+ offsety?: number;
70
+ opacity?: number;
71
+ parallaxx?: number;
72
+ parallaxy?: number;
73
+ tintcolor?: string;
74
+ type: string;
75
+ visible?: number;
76
+ width: number;
77
+ x?: number;
78
+ y?: number;
79
79
  }
80
80
 
81
81
  //#endregion
82
82
  //#region src/models/tmx/parsed/TMXLayerParsed.d.ts
83
83
  interface TMXLayerParsed extends TMXLayerShared {
84
- data?: number[];
85
- flips?: TMXFlipsParsed[];
86
- image?: TMXImageParsed;
87
- objects?: TMXObjectParsed[];
88
- properties?: TMXPropertiesParsed;
84
+ data?: number[];
85
+ flips?: TMXFlipsParsed[];
86
+ image?: TMXImageParsed;
87
+ objects?: TMXObjectParsed[];
88
+ properties?: TMXPropertiesParsed;
89
89
  }
90
90
 
91
91
  //#endregion
92
92
  //#region src/models/tmx/shared/TMXGroupLayerShared.d.ts
93
93
  interface TMXGroupLayerShared {
94
- id: number;
95
- name: string;
96
- type: string;
94
+ id: number;
95
+ name: string;
96
+ type: string;
97
97
  }
98
98
 
99
99
  //#endregion
100
100
  //#region src/models/tmx/parsed/TMXGroupLayerParsed.d.ts
101
101
  interface TMXGroupLayerParsed extends TMXGroupLayerShared {
102
- layers: TMXLayerParsed[];
103
- properties?: TMXPropertiesParsed;
102
+ layers: TMXLayerParsed[];
103
+ properties?: TMXPropertiesParsed;
104
104
  }
105
105
 
106
106
  //#endregion
107
107
  //#region src/models/tmx/shared/TMXTileShared.d.ts
108
108
  interface TMXTileShared {
109
- gid?: number;
110
- id: number;
111
- probability?: number;
109
+ gid?: number;
110
+ id: number;
111
+ probability?: number;
112
112
  }
113
113
 
114
114
  //#endregion
115
115
  //#region src/models/tmx/parsed/TMXTileParsed.d.ts
116
116
  interface TMXTileParsed extends TMXTileShared {
117
- animation?: {
118
- frames: number[]
119
- };
120
- id: number;
121
- objects?: TMXObjectParsed[];
122
- properties?: TMXPropertiesParsed;
123
- type: string;
117
+ animation?: {
118
+ frames: number[];
119
+ };
120
+ id: number;
121
+ objects?: TMXObjectParsed[];
122
+ properties?: TMXPropertiesParsed;
123
+ type: string;
124
124
  }
125
125
 
126
126
  //#endregion
127
127
  //#region src/models/tmx/shared/TMXBaseTilesetShared.d.ts
128
128
  interface TMXBaseTilesetShared {
129
- firstgid: number;
129
+ firstgid: number;
130
130
  }
131
131
 
132
132
  //#endregion
133
133
  //#region src/models/tmx/shared/TMXEmbeddedTilesetShared.d.ts
134
134
  interface TMXEmbeddedTilesetShared extends TMXBaseTilesetShared {
135
- columns: number;
136
- imageheight: number;
137
- imagewidth: number;
138
- margin?: number;
139
- name: string;
140
- spacing?: number;
141
- tilecount: number;
142
- tileheight: number;
143
- tilewidth: number;
135
+ columns: number;
136
+ imageheight: number;
137
+ imagewidth: number;
138
+ margin?: number;
139
+ name: string;
140
+ spacing?: number;
141
+ tilecount: number;
142
+ tileheight: number;
143
+ tilewidth: number;
144
144
  }
145
145
 
146
146
  //#endregion
147
147
  //#region src/models/tmx/parsed/TMXEmbeddedTilesetParsed.d.ts
148
148
  interface TMXEmbeddedTilesetParsed extends TMXEmbeddedTilesetShared {
149
- image: TMXImageParsed;
150
- tiles: TMXTileParsed[];
149
+ image: TMXImageParsed;
150
+ tiles: TMXTileParsed[];
151
151
  }
152
152
 
153
153
  //#endregion
154
154
  //#region src/models/tmx/shared/TMXExternalTilesetShared.d.ts
155
155
  interface TMXExternalTilesetShared extends TMXBaseTilesetShared {
156
- source: string;
156
+ source: string;
157
157
  }
158
158
 
159
159
  //#endregion
@@ -167,34 +167,34 @@ type TMXTilesetParsed = TMXEmbeddedTilesetParsed | TMXExternalTilesetParsed;
167
167
  //#endregion
168
168
  //#region src/models/tmx/shared/TMXMapShared.d.ts
169
169
  declare class TMXMapShared {
170
- height: number;
171
- infinite: number;
172
- nextlayerid: number;
173
- nextobjectid: number;
174
- orientation: string;
175
- renderorder: string;
176
- tiledversion: string;
177
- tileheight: number;
178
- tilewidth: number;
179
- version: number;
180
- width: number;
170
+ height: number;
171
+ infinite: number;
172
+ nextlayerid: number;
173
+ nextobjectid: number;
174
+ orientation: string;
175
+ renderorder: string;
176
+ tiledversion: string;
177
+ tileheight: number;
178
+ tilewidth: number;
179
+ version: number;
180
+ width: number;
181
181
  }
182
182
 
183
183
  //#endregion
184
184
  //#region src/models/tmx/parsed/TMXMapParsed.d.ts
185
185
  declare class TMXMapParsed extends TMXMapShared {
186
- editorsettings: TMXEditorSettingsParsed;
187
- layers: (TMXGroupLayerParsed | TMXLayerParsed)[];
188
- properties: TMXPropertiesParsed;
189
- tilesets: TMXTilesetParsed[];
190
- constructor(init?: Partial<TMXMapParsed>);
186
+ editorsettings: TMXEditorSettingsParsed;
187
+ layers: (TMXGroupLayerParsed | TMXLayerParsed)[];
188
+ properties: TMXPropertiesParsed;
189
+ tilesets: TMXTilesetParsed[];
190
+ constructor(init?: Partial<TMXMapParsed>);
191
191
  }
192
192
 
193
193
  //#endregion
194
194
  //#region src/models/tmx/parsed/TMXParsed.d.ts
195
195
  declare class TMXParsed {
196
- map: TMXMapParsed;
197
- constructor(map?: TMXMapParsed);
196
+ map: TMXMapParsed;
197
+ constructor(map?: TMXMapParsed);
198
198
  }
199
199
 
200
200
  //#endregion
@@ -204,23 +204,23 @@ declare const parseTmx: (xmlString: string, translateFlips?: boolean) => Promise
204
204
  //#endregion
205
205
  //#region src/models/Compression.d.ts
206
206
  declare enum Compression {
207
- Gzip = "gzip",
208
- Zlib = "zlib"
207
+ Gzip = "gzip",
208
+ Zlib = "zlib",
209
209
  }
210
210
 
211
211
  //#endregion
212
212
  //#region src/models/Encoding.d.ts
213
213
  declare enum Encoding {
214
- Base64 = "base64",
215
- Csv = "csv"
214
+ Base64 = "base64",
215
+ Csv = "csv",
216
216
  }
217
217
 
218
218
  //#endregion
219
219
  //#region src/models/Flipped.d.ts
220
220
  declare enum Flipped {
221
- Diagonally = 536870912,
222
- Horizontally = 2147483648,
223
- Vertically = 1073741824
221
+ Diagonally = 536870912,
222
+ Horizontally = 2147483648,
223
+ Vertically = 1073741824,
224
224
  }
225
225
 
226
226
  //#endregion
@@ -230,27 +230,24 @@ declare const isExternalTileset: (tileset: TMXEmbeddedTilesetShared | TMXExterna
230
230
  //#endregion
231
231
  //#region src/models/tmx/node/BaseTMXNode.d.ts
232
232
  declare class BaseTMXNode<T> {
233
- #private;
234
- [key: string]: unknown;
235
- $: T;
233
+ #private;
234
+ [key: string]: unknown;
235
+ $: T;
236
236
  }
237
237
 
238
238
  //#endregion
239
239
  //#region src/models/tmx/node/TMXNode.d.ts
240
- type TMXNode<
241
- T,
242
- TChildNode extends BaseTMXNode<unknown> | undefined = undefined
243
- > = BaseTMXNode<T> & {
244
- $$: TChildNode extends undefined ? undefined : TChildNode[]
240
+ type TMXNode<T, TChildNode extends BaseTMXNode<unknown> | undefined = undefined> = BaseTMXNode<T> & {
241
+ $$: TChildNode extends undefined ? undefined : TChildNode[];
245
242
  };
246
243
 
247
244
  //#endregion
248
245
  //#region src/models/tmx/node/TMXDataNode.d.ts
249
246
  interface TMXDataNode extends TMXNode<{
250
- compression?: Compression | null
251
- encoding: Encoding
247
+ compression?: Compression | null;
248
+ encoding: Encoding;
252
249
  }> {
253
- _: string;
250
+ _: string;
254
251
  }
255
252
 
256
253
  //#endregion
@@ -260,10 +257,10 @@ interface TMXImageNode extends TMXNode<TMXImageShared> {}
260
257
  //#endregion
261
258
  //#region src/models/tmx/node/TMXPropertyNode.d.ts
262
259
  interface TMXPropertyNode extends TMXNode<{
263
- name: string
264
- value?: string
260
+ name: string;
261
+ value?: string;
265
262
  }> {
266
- _: string;
263
+ _: string;
267
264
  }
268
265
 
269
266
  //#endregion
@@ -273,29 +270,29 @@ interface TMXPropertiesNode extends TMXNode<Record<string, never>, TMXPropertyNo
273
270
  //#endregion
274
271
  //#region src/models/tmx/node/TMXObjectNode.d.ts
275
272
  interface TMXObjectNode extends TMXNode<TMXObjectShared, TMXDataNode | TMXPropertiesNode> {
276
- polygon?: TMXNode<{
277
- points: string
278
- }>[];
279
- properties?: {
280
- property: TMXPropertyNode[]
281
- }[];
282
- text?: TMXDataNode[];
273
+ polygon?: TMXNode<{
274
+ points: string;
275
+ }>[];
276
+ properties?: {
277
+ property: TMXPropertyNode[];
278
+ }[];
279
+ text?: TMXDataNode[];
283
280
  }
284
281
 
285
282
  //#endregion
286
283
  //#region src/models/tmx/node/TMXTileNode.d.ts
287
284
  interface TMXTileNode extends TMXNode<TMXTileShared, TMXPropertiesNode> {
288
- animation?: Record<string, TMXNode<number>[]>[];
289
- objectgroup?: Record<string, TMXObjectNode[]>[];
290
- properties?: {
291
- property: TMXPropertyNode[]
292
- }[];
285
+ animation?: Record<string, TMXNode<number>[]>[];
286
+ objectgroup?: Record<string, TMXObjectNode[]>[];
287
+ properties?: {
288
+ property: TMXPropertyNode[];
289
+ }[];
293
290
  }
294
291
 
295
292
  //#endregion
296
293
  //#region src/models/tmx/node/TMXEmbeddedTilesetNode.d.ts
297
294
  interface TMXEmbeddedTilesetNode extends TMXNode<TMXEmbeddedTilesetShared, TMXImageNode | TMXTileNode> {
298
- tile?: TMXTileNode[];
295
+ tile?: TMXTileNode[];
299
296
  }
300
297
 
301
298
  //#endregion
@@ -309,20 +306,20 @@ declare const parseFlips: (gid: number) => TMXFlipsParsed;
309
306
  //#endregion
310
307
  //#region src/models/tmx/node/TMXLayerNode.d.ts
311
308
  interface TMXLayerNode extends TMXNode<TMXLayerShared, TMXDataNode | TMXEmbeddedTilesetNode | TMXPropertiesNode> {
312
- data?: TMXDataNode[] | TMXEmbeddedTilesetNode[];
313
- image?: TMXImageNode[];
314
- object?: TMXObjectNode[];
315
- properties?: {
316
- property: TMXPropertyNode[]
317
- }[];
309
+ data?: TMXDataNode[] | TMXEmbeddedTilesetNode[];
310
+ image?: TMXImageNode[];
311
+ object?: TMXObjectNode[];
312
+ properties?: {
313
+ property: TMXPropertyNode[];
314
+ }[];
318
315
  }
319
316
 
320
317
  //#endregion
321
318
  //#region src/models/tmx/node/TMXGroupLayerNode.d.ts
322
319
  interface TMXGroupLayerNode extends TMXNode<TMXGroupLayerShared, TMXLayerNode> {
323
- properties?: {
324
- property: TMXPropertyNode[]
325
- }[];
320
+ properties?: {
321
+ property: TMXPropertyNode[];
322
+ }[];
326
323
  }
327
324
 
328
325
  //#endregion
@@ -335,10 +332,7 @@ declare const parseLayer: (node: TMXLayerNode) => TMXLayerParsed;
335
332
 
336
333
  //#endregion
337
334
  //#region src/util/parseNode.d.ts
338
- declare const parseNode: <
339
- TNode extends TMXGroupLayerNode | TMXLayerNode,
340
- TParsedNode = TNode extends TMXLayerNode ? TMXLayerParsed : TMXGroupLayerParsed
341
- >(node: TNode, expectedCount: number, translateFlips: boolean) => Promise<TParsedNode> | TParsedNode;
335
+ declare const parseNode: <TNode extends TMXGroupLayerNode | TMXLayerNode, TParsedNode = (TNode extends TMXLayerNode ? TMXLayerParsed : TMXGroupLayerParsed)>(node: TNode, expectedCount: number, translateFlips: boolean) => Promise<TParsedNode> | TParsedNode;
342
336
 
343
337
  //#endregion
344
338
  //#region src/util/parseObject.d.ts
@@ -351,7 +345,7 @@ declare const parseObjectShape: (node: TMXObjectNode) => Shape;
351
345
  //#endregion
352
346
  //#region src/util/parseProperties.d.ts
353
347
  declare const parseProperties: (properties: {
354
- property: TMXPropertyNode[]
348
+ property: TMXPropertyNode[];
355
349
  }[]) => TMXPropertiesParsed;
356
350
 
357
351
  //#endregion
@@ -393,8 +387,8 @@ declare const unpackTileBytes: (buffer: Buffer, expectedCount: number) => number
393
387
  //#endregion
394
388
  //#region src/models/tmx/shared/TMXExportShared.d.ts
395
389
  interface TMXExportShared {
396
- format: string;
397
- target: string;
390
+ format: string;
391
+ target: string;
398
392
  }
399
393
 
400
394
  //#endregion
@@ -412,24 +406,24 @@ interface TMXMapNode extends TMXNode<TMXMapShared, TMXEditorSettingsNode | TMXGr
412
406
  //#endregion
413
407
  //#region src/models/tmx/node/TMX.d.ts
414
408
  interface TMX {
415
- map: TMXMapNode;
409
+ map: TMXMapNode;
416
410
  }
417
411
 
418
412
  //#endregion
419
413
  //#region src/models/tmx/node/TMXNodeType.d.ts
420
414
  declare enum TMXNodeType {
421
- Data = "data",
422
- EditorSettings = "editorsettings",
423
- Export = "export",
424
- Group = "group",
425
- Image = "image",
426
- ImageLayer = "imagelayer",
427
- Layer = "layer",
428
- Object = "object",
429
- Objectgroup = "objectgroup",
430
- Properties = "properties",
431
- Property = "property",
432
- Tileset = "tileset"
415
+ Data = "data",
416
+ EditorSettings = "editorsettings",
417
+ Export = "export",
418
+ Group = "group",
419
+ Image = "image",
420
+ ImageLayer = "imagelayer",
421
+ Layer = "layer",
422
+ Object = "object",
423
+ Objectgroup = "objectgroup",
424
+ Properties = "properties",
425
+ Property = "property",
426
+ Tileset = "tileset",
433
427
  }
434
428
 
435
429
  //#endregion