wgge 2.0.12 → 2.0.14

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.
@@ -5,7 +5,7 @@ import ModelBase from "./ModelBase";
5
5
  export default class ObjectModel extends ModelBase {
6
6
 
7
7
  /**
8
- * @type Dictionary<DirtyValue>
8
+ * @type {Dictionary<ModelBase>}
9
9
  */
10
10
  properties;
11
11
 
@@ -110,4 +110,14 @@ export default class ObjectModel extends ModelBase {
110
110
  return [];
111
111
  }
112
112
 
113
+ /**
114
+ * Use this to release all event handlers that might be registered.
115
+ * Object won't be usable after calling this.
116
+ * Not calling this might lead to memory leaks e.g. when using NullableNode
117
+ */
118
+ dispose() {
119
+ this.eventManager.reset();
120
+ this.properties.reset();
121
+ }
122
+
113
123
  }
@@ -62,7 +62,7 @@ export default class ModelNodeTable extends ModelNodeCollection {
62
62
  */
63
63
  remove(node) {
64
64
  const removed = super.remove(node);
65
- if (removed) this.cache.set(node.id.get(), undefined);
65
+ if (removed) this.cache.delete(node.id.get());
66
66
  return removed;
67
67
  }
68
68
 
@@ -39,4 +39,8 @@ export default class EventManager {
39
39
  handlers.forEach((item) => item(param));
40
40
  }
41
41
 
42
+ reset() {
43
+ this.handlers = [];
44
+ }
45
+
42
46
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wgge",
3
- "version": "2.0.12",
3
+ "version": "2.0.14",
4
4
  "description": "Web GL Game Engine",
5
5
  "main": "index.js",
6
6
  "devDependencies": {
@@ -3,7 +3,7 @@
3
3
  @m-3: 20px;
4
4
 
5
5
  .d-none, .hidden {
6
- display: none !important;
6
+ display: none !important;
7
7
  }
8
8
 
9
9
  .container-host {
@@ -19,27 +19,35 @@
19
19
  }
20
20
 
21
21
  .row {
22
- display: flex;
23
- flex-direction: row;
22
+ display: flex;
23
+ flex-direction: row;
24
24
  }
25
25
 
26
26
  .row-reverse {
27
- display: flex;
28
- flex-direction: row-reverse;
27
+ display: flex;
28
+ flex-direction: row-reverse;
29
29
  }
30
30
 
31
- .col, .column {
32
- display: flex;
33
- flex-direction: column;
31
+ .column {
32
+ display: flex;
33
+ flex-direction: column;
34
34
  }
35
35
 
36
- .col-rev, .column-reverse {
37
- display: flex;
38
- flex-direction: column-reverse;
36
+ .col {
37
+ .column();
38
+ }
39
+
40
+ .column-reverse {
41
+ display: flex;
42
+ flex-direction: column-reverse;
43
+ }
44
+
45
+ .col-rev {
46
+ .column-reverse();
39
47
  }
40
48
 
41
49
  .flex-1 {
42
- flex: 1;
50
+ flex: 1;
43
51
  }
44
52
 
45
53
  .overflow-hidden {
@@ -47,21 +55,21 @@
47
55
  }
48
56
 
49
57
  .space-between {
50
- justify-content: space-between;
51
- align-content: space-between;
58
+ justify-content: space-between;
59
+ align-content: space-between;
52
60
  }
53
61
 
54
62
  .space-around {
55
- justify-content: space-around;
56
- align-content: space-around;
63
+ justify-content: space-around;
64
+ align-content: space-around;
57
65
  }
58
66
 
59
67
  .center {
60
- text-align: center;
61
- align-items: center;
62
- align-content: center;
63
- justify-items: center;
64
- justify-content: center;
68
+ text-align: center;
69
+ align-items: center;
70
+ align-content: center;
71
+ justify-items: center;
72
+ justify-content: center;
65
73
  }
66
74
 
67
75
  .stretch {
@@ -70,11 +78,11 @@
70
78
  }
71
79
 
72
80
  .left {
73
- text-align: left;
81
+ text-align: left;
74
82
  }
75
83
 
76
84
  .small {
77
- font-size: 75%;
85
+ font-size: 75%;
78
86
  }
79
87
 
80
88
  .no-text-select {
@@ -100,129 +108,129 @@
100
108
  }
101
109
 
102
110
  .m-0, .mt-0, .my-0 {
103
- margin-top: 0;
111
+ margin-top: 0;
104
112
  }
105
113
 
106
114
  .m-0, .ml-0, .mx-0 {
107
- margin-left: 0;
115
+ margin-left: 0;
108
116
  }
109
117
 
110
118
  .m-0, .mb-0, .my-0 {
111
- margin-bottom: 0;
119
+ margin-bottom: 0;
112
120
  }
113
121
 
114
122
  .m-0, .mr-0, .mx-0 {
115
- margin-right: 0;
123
+ margin-right: 0;
116
124
  }
117
125
 
118
126
  .p-0, .pt-0, .py-0 {
119
- padding-top: 0;
127
+ padding-top: 0;
120
128
  }
121
129
 
122
130
  .p-0, .pl-0, .px-0 {
123
- padding-left: 0;
131
+ padding-left: 0;
124
132
  }
125
133
 
126
134
  .p-0, .pb-0, .py-0 {
127
- padding-bottom: 0;
135
+ padding-bottom: 0;
128
136
  }
129
137
 
130
138
  .p-0, .pr-0, .px-0 {
131
- padding-right: 0;
139
+ padding-right: 0;
132
140
  }
133
141
 
134
142
  .m-1, .mt-1, .my-1 {
135
- margin-top: @m-1;
143
+ margin-top: @m-1;
136
144
  }
137
145
 
138
146
  .m-1, .ml-1, .mx-1 {
139
- margin-left: @m-1;
147
+ margin-left: @m-1;
140
148
  }
141
149
 
142
150
  .m-1, .mb-1, .my-1 {
143
- margin-bottom: @m-1;
151
+ margin-bottom: @m-1;
144
152
  }
145
153
 
146
154
  .m-1, .mr-1, .mx-1 {
147
- margin-right: @m-1;
155
+ margin-right: @m-1;
148
156
  }
149
157
 
150
158
  .p-1, .pt-1, .py-1 {
151
- padding-top: @m-1;
159
+ padding-top: @m-1;
152
160
  }
153
161
 
154
162
  .p-1, .pl-1, .px-1 {
155
- padding-left: @m-1;
163
+ padding-left: @m-1;
156
164
  }
157
165
 
158
166
  .p-1, .pb-1, .py-1 {
159
- padding-bottom: @m-1;
167
+ padding-bottom: @m-1;
160
168
  }
161
169
 
162
170
  .p-1, .pr-1, .px-1 {
163
- padding-right: @m-1;
171
+ padding-right: @m-1;
164
172
  }
165
173
 
166
174
  .m-2, .mt-2, .my-2 {
167
- margin-top: @m-2;
175
+ margin-top: @m-2;
168
176
  }
169
177
 
170
178
  .m-2, .ml-2, .mx-2 {
171
- margin-left: @m-2;
179
+ margin-left: @m-2;
172
180
  }
173
181
 
174
182
  .m-2, .mb-2, .my-2 {
175
- margin-bottom: @m-2;
183
+ margin-bottom: @m-2;
176
184
  }
177
185
 
178
186
  .m-2, .mr-2, .mx-2 {
179
- margin-right: @m-2;
187
+ margin-right: @m-2;
180
188
  }
181
189
 
182
190
  .p-2, .pt-2, .py-2 {
183
- padding-top: @m-2;
191
+ padding-top: @m-2;
184
192
  }
185
193
 
186
194
  .p-2, .pl-2, .px-2 {
187
- padding-left: @m-2;
195
+ padding-left: @m-2;
188
196
  }
189
197
 
190
198
  .p-2, .pb-2, .py-2 {
191
- padding-bottom: @m-2;
199
+ padding-bottom: @m-2;
192
200
  }
193
201
 
194
202
  .p-2, .pr-2, .px-2 {
195
- padding-right: @m-2;
203
+ padding-right: @m-2;
196
204
  }
197
205
 
198
206
  .m-3, .mt-3, .my-3 {
199
- margin-top: @m-3;
207
+ margin-top: @m-3;
200
208
  }
201
209
 
202
210
  .m-3, .ml-3, .mx-3 {
203
- margin-left: @m-3;
211
+ margin-left: @m-3;
204
212
  }
205
213
 
206
214
  .m-3, .mb-3, .my-3 {
207
- margin-bottom: @m-3;
215
+ margin-bottom: @m-3;
208
216
  }
209
217
 
210
218
  .m-3, .mr-3, .mx-3 {
211
- margin-right: @m-3;
219
+ margin-right: @m-3;
212
220
  }
213
221
 
214
222
  .p-3, .pt-3, .py-3 {
215
- padding-top: @m-3;
223
+ padding-top: @m-3;
216
224
  }
217
225
 
218
226
  .p-3, .pl-3, .px-3 {
219
- padding-left: @m-3;
227
+ padding-left: @m-3;
220
228
  }
221
229
 
222
230
  .p-3, .pb-3, .py-3 {
223
- padding-bottom: @m-3;
231
+ padding-bottom: @m-3;
224
232
  }
225
233
 
226
234
  .p-3, .pr-3, .px-3 {
227
- padding-right: @m-3;
235
+ padding-right: @m-3;
228
236
  }