lexgui 8.1.0 → 8.1.2

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 CHANGED
@@ -2,7 +2,22 @@
2
2
 
3
3
  ## dev
4
4
 
5
- ## 8.1.0 (master)
5
+ ## 8.1.2 (master)
6
+
7
+ Removed legacy code `CurvesTimeline` from `editor.html` example.
8
+
9
+ VideoEditor:
10
+ - Forced area to have position relative so cropArea is correctly positioned.
11
+
12
+ Timeline:
13
+ - Autmatically calls `updateTheme` color on instance creation.
14
+
15
+ ## 8.1.1
16
+
17
+ Fixed Table Component bug when there's a filter but no custom filters.
18
+ Fixed AssetView `onEnterFolder` not allowing async callbacks.
19
+
20
+ ## 8.1.0
6
21
 
7
22
  AssetView:
8
23
  - Added CreateFolder implementation to the MoveItem dialog button.
@@ -201,6 +201,19 @@
201
201
  }
202
202
  ];
203
203
 
204
+ const fakeServerRequest = function( payload, delay = 800 ) {
205
+ return new Promise(resolve => {
206
+ setTimeout(() => {
207
+ // 70% chance to allow the action
208
+ const ok = Math.random() > 0.3;
209
+ resolve({
210
+ ok,
211
+ reason: ok ? undefined : "Server rejected the operation"
212
+ });
213
+ }, delay);
214
+ });
215
+ }
216
+
204
217
  // Click events
205
218
  {
206
219
  assetView.on( "select", ( event, resolve ) => {
@@ -214,9 +227,42 @@
214
227
 
215
228
  // Folder events
216
229
  {
217
- assetView.on( "enterFolder", ( event ) => {
230
+ assetView.on( "enterFolder", async ( event ) => {
218
231
  console.log(`Entered ${ event.to.id } folder` );
219
- } );
232
+
233
+ // const r = await (() => { return new Promise(resolve => {
234
+ // setTimeout(() => {
235
+ // resolve({
236
+ // ok: true
237
+ // });
238
+ // }, 2000);
239
+ // }) })();
240
+
241
+ // if( r?.ok )
242
+ // {
243
+ // event.to.children = [
244
+ // {
245
+ // id: "brow_lowerer.png",
246
+ // type: "clip",
247
+ // src: "../data/brow_lowerer.png",
248
+ // metadata: {
249
+ // lastModified: 1740181312813
250
+ // }
251
+ // },
252
+ // {
253
+ // id: "brow_lowerer.png",
254
+ // type: "clip",
255
+ // src: "../data/brow_lowerer.png",
256
+ // metadata: {
257
+ // lastModified: 1740181312813
258
+ // }
259
+ // }
260
+ // ]
261
+ // }
262
+
263
+ // return true;
264
+
265
+ });
220
266
 
221
267
  assetView.on( "beforeCreateFolder", ( event, resolve ) => {
222
268
  LX.prompt("Perform CreateFolder Action?", "Server Message", () => {
@@ -258,12 +258,10 @@
258
258
 
259
259
  var kfTimeline = null;
260
260
  var clipsTimeline = null;
261
- var curvesTimeline = null;
262
261
 
263
262
  bottom.onresize = bounding => {
264
263
  if (kfTimeline) kfTimeline.resize([bounding.width, bounding.height]);
265
264
  if (clipsTimeline) clipsTimeline.resize([bounding.width, bounding.height]);
266
- if (curvesTimeline) curvesTimeline.resize([bounding.width, bounding.height]);
267
265
  }
268
266
 
269
267
  // another menu bar
@@ -275,9 +273,6 @@
275
273
  if (el)
276
274
  el.style.display = 'none';
277
275
  el = document.getElementById('clips-timeline');
278
- if (el)
279
- el.style.display = 'none';
280
- el = document.getElementById('curves-timeline');
281
276
  if (el)
282
277
  el.style.display = 'none';
283
278
  var bottomPanel = document.getElementById('bottom-panel');
@@ -291,9 +286,6 @@
291
286
  if (el)
292
287
  el.style.display = 'none';
293
288
  el = document.getElementById('clips-timeline');
294
- if (el)
295
- el.style.display = 'none';
296
- el = document.getElementById('curves-timeline');
297
289
  if (el)
298
290
  el.style.display = 'none';
299
291
  var timeline = document.getElementById('kf-timeline');
@@ -330,9 +322,6 @@
330
322
  el.style.display = 'none';
331
323
 
332
324
  el = document.getElementById('kf-timeline');
333
- if (el)
334
- el.style.display = 'none';
335
- el = document.getElementById('curves-timeline');
336
325
  if (el)
337
326
  el.style.display = 'none';
338
327
  var ctimeline = document.getElementById('clips-timeline');
@@ -360,35 +349,7 @@
360
349
  clipsTimeline.draw(0);
361
350
  }
362
351
  }
363
- },
364
- {
365
- name: "Curves Timeline", callback: e => {
366
- console.log(e);
367
- let el = document.getElementById('bottom-panel');
368
- if (el)
369
- el.style.display = 'none';
370
- el = document.getElementById('kf-timeline');
371
- if (el)
372
- el.style.display = 'none';
373
- el = document.getElementById('clips-timeline');
374
- if (el)
375
- el.style.display = 'none';
376
-
377
- var timeline = document.getElementById('curves-timeline');
378
- if (timeline) {
379
- timeline.style.display = 'block';
380
- curvesTimeline.resize();
381
- }
382
- else {
383
- curvesTimeline = new LX.CurvesTimeline("curves-timeline");
384
- curvesTimeline.setAnimationClip({ tracks: [{ name: "Item 1.position", values: [0, 1, 0, -1], times: [0, 0.1, 0.2, 0.3] }, { name: "Item 1.scale", values: [0, 1, 0, 0.5], times: [0, 0.1, 0.2, 0.3] }, { name: "Item 2", values: [0, 1, 0, 1], times: [0.1, 0.2, 0.3, 0.8] }, { name: "Item 3.position", values: [0, 0, 0, 1], times: [0, 0.1, 0.2, 0.3] }, { name: "Item 3.scale", values: [0, 1, 0], times: [0, 0.1, 0.2, 0.3] }], duration: 1 });
385
- curvesTimeline.setSelectedItems(["Item 1", "Item 2", "Item 3"]);
386
- bottom.attach(curvesTimeline.mainArea);
387
- curvesTimeline.resize();
388
- curvesTimeline.draw(0);
389
- }
390
- }
391
- },
352
+ }
392
353
 
393
354
  ]);
394
355
 
@@ -398,9 +359,6 @@
398
359
 
399
360
  if (kfTimeline)
400
361
  kfTimeline.resize();
401
-
402
- if (curvesTimeline)
403
- curvesTimeline.resize();
404
362
  }
405
363
 
406
364
  var bottomPanel = bottom.addPanel({ id: "bottom-panel" });
@@ -550,9 +508,6 @@
550
508
  if (clipsTimeline)
551
509
  clipsTimeline.draw();
552
510
 
553
- if (curvesTimeline)
554
- curvesTimeline.draw();
555
-
556
511
  requestAnimationFrame(loop);
557
512
  }
558
513
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lexgui",
3
- "version": "8.1.0",
3
+ "version": "8.1.2",
4
4
  "description": "JS library to create web graphical user interfaces",
5
5
  "type": "module",
6
6
  "main": "./build/lexgui.js",