typed-factorio 0.14.1 → 0.17.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/Changelog.md +30 -6
- package/README.md +8 -3
- package/generated/classes.d.ts +13802 -8167
- package/generated/concepts.d.ts +98 -13
- package/generated/events.d.ts +201 -201
- package/generated/index.d.ts +1 -1
- package/generator/typescript-internal.d.ts +9 -0
- package/package.json +3 -3
- package/runtime/pairs.d.ts +8 -7
- package/runtime/util.d.ts +1 -5
package/Changelog.md
CHANGED
@@ -1,3 +1,27 @@
|
|
1
|
+
# v0.17.1
|
2
|
+
|
3
|
+
- Fixed documentation links for events
|
4
|
+
|
5
|
+
# v0.17.0
|
6
|
+
|
7
|
+
- Updated to factorio version 1.1.52
|
8
|
+
|
9
|
+
# v0.16.0
|
10
|
+
|
11
|
+
- `LuaCustomTable` can be iterated on in a for-of loop directly (without using `pairs`). This requires TSTL v1.3.0 or later.
|
12
|
+
- TSTL dependency minimum version is now v1.3.0.
|
13
|
+
|
14
|
+
# v0.15.0
|
15
|
+
|
16
|
+
- Table or array concepts are now declared in table form wherever it is an "read" position.
|
17
|
+
- This works with setter overloading for applicable properties: `player.color.x; player.color = [1, 1, 1]` is now valid!
|
18
|
+
- This also applies to concepts/complex types which contain table_or_array properties.
|
19
|
+
- Some concepts now also have a special form where it is known to be in a "read" position, where all table_or_array concepts are declared in table form. These concepts are suffixed with "Read", e.g. `ScriptAreaRead`.
|
20
|
+
- Arrays which are known to be in a "write" only form (e.g. method parameters) now are marked readonly. This means you can now pass readonly-only arrays to these methods.
|
21
|
+
- `MapPosition` is now a table or array concept.
|
22
|
+
- Classes with subclasses are now declared with all properties, instead of an intersection of subclasses (reversion)
|
23
|
+
- Subclass specializations added for some missing classes
|
24
|
+
|
1
25
|
# v0.14.1
|
2
26
|
|
3
27
|
- LuaStyle: `extra_margin/padding_when_activated` is now for subclass scroll_pane
|
@@ -7,17 +31,17 @@
|
|
7
31
|
- LuaStyle size, margin/padding setters now have more specific array types. These array types are `SizeArray` and `StyleValuesArray` for size and margin/padding, respectively.
|
8
32
|
- `@noSelf` annotation is now only present when necessary.
|
9
33
|
- For classes with subclasses:
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
34
|
+
- The original class name (e.g. `LuaItemStack`) still contains attributes of all subclasses (same as before).
|
35
|
+
- There is now a `Base` type (e.g. `BaseItemStack`) which only includes attributes common to all subclasses.
|
36
|
+
- There is a separate type definition for each subclass, e.g. `BlueprintItem`. Note that one instance may still belong to multiple subclasses (the subclasses are not mutually exclusive).
|
37
|
+
- The above two can be optionally used for stricter types.
|
14
38
|
|
15
39
|
# v0.13.2
|
16
40
|
|
17
41
|
- Fix: resize_to_sprite property should not be on subclass sprite-button
|
18
42
|
- Fix: ChooseElemButtonSpec filters should be named elem_filters
|
19
43
|
- Switch back to `/latest` api docs link
|
20
|
-
|
44
|
+
- New version of web api docs is now active
|
21
45
|
|
22
46
|
# v0.13.0
|
23
47
|
|
@@ -53,7 +77,7 @@
|
|
53
77
|
# v0.7.3
|
54
78
|
|
55
79
|
- Update to factorio version 1.1.42
|
56
|
-
|
80
|
+
- No api changes, but improvements to descriptions
|
57
81
|
|
58
82
|
# v0.7.2
|
59
83
|
|
package/README.md
CHANGED
@@ -73,7 +73,7 @@ The `global` table is just a lua table which can have any shape the mod desires,
|
|
73
73
|
|
74
74
|
Typed-factorio has 100% complete types for the runtime stage. Description-only concepts and some not documented types are filled in manually.
|
75
75
|
|
76
|
-
Here are some details on particular type features
|
76
|
+
Here are some details on particular type features:
|
77
77
|
|
78
78
|
### Lua features
|
79
79
|
|
@@ -96,6 +96,7 @@ The type for a specific variant is prefixed with the variant name, or with "Othe
|
|
96
96
|
### Types with subclasses
|
97
97
|
|
98
98
|
Some classes have attributes that are documented to only work on particular subclasses. For these classes, e.g. `LuaEntity`, there are also these other types that you can _optionally_ use:
|
99
|
+
|
99
100
|
- a "Base" type, e.g. `BaseEntity`, which only contains members usable by all subclasses
|
100
101
|
- individual subclass types, e.g. `CraftingMachineEntity`, which extends the base type with members specific to that subclass
|
101
102
|
|
@@ -111,9 +112,13 @@ You can pass a type parameter to `script.generate_event_name<T>()`, and it will
|
|
111
112
|
|
112
113
|
Classes that have an index operator, a length operator, and have an array-like structure, inherit from `(Readonly)Array`. These are `LuaInventory`, `LuaFluidBox`, `LuaTransportLine`. This allows you to use these classes like arrays, meaning having array methods, and `.length` translating to the lua length operator. However, this also means, like typescript arrays, they are **0-indexed, not 1-indexed**.
|
113
114
|
|
114
|
-
### Table or array types
|
115
|
+
### Table or array types, and "Read" concepts
|
116
|
+
|
117
|
+
For table-or-array types (e.g. Position), there also are types such as `PositionTable` and `PositionArray` that refer to the table or array form.
|
118
|
+
|
119
|
+
Table-or-array types will appear in the Table form when known to be in a read position. This also applies to other concepts/complex types that have table-or-array attributes.
|
115
120
|
|
116
|
-
For
|
121
|
+
For some concepts, there is also a special form for when the concept is used in a "read" position, where all table-or-array types are in Table form. These types are suffixed with `Read`, e.g. `ScriptPositionRead`.
|
117
122
|
|
118
123
|
### LuaGuiElement
|
119
124
|
|