@needle-tools/engine 4.5.0 → 4.5.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.
Files changed (48) hide show
  1. package/dist/{needle-engine.bundle-8e64768b.js → needle-engine.bundle-99bb72c3.js} +7 -7
  2. package/dist/{needle-engine.bundle-4e21a0eb.min.js → needle-engine.bundle-ac883b5a.min.js} +2 -2
  3. package/dist/{needle-engine.bundle-0293e87a.light.js → needle-engine.bundle-adcbea18.light.js} +7 -7
  4. package/dist/{needle-engine.bundle-1679a09a.light.min.js → needle-engine.bundle-b57b2055.light.min.js} +2 -2
  5. package/dist/{needle-engine.bundle-2f187b48.light.umd.cjs → needle-engine.bundle-bcb5a31b.light.umd.cjs} +4 -4
  6. package/dist/{needle-engine.bundle-4366d297.umd.cjs → needle-engine.bundle-caf79082.umd.cjs} +4 -4
  7. package/dist/needle-engine.js +2 -2
  8. package/dist/needle-engine.light.js +2 -2
  9. package/dist/needle-engine.light.min.js +1 -1
  10. package/dist/needle-engine.light.umd.cjs +1 -1
  11. package/dist/needle-engine.min.js +1 -1
  12. package/dist/needle-engine.umd.cjs +1 -1
  13. package/lib/engine/engine_loaders.callbacks.d.ts +1 -0
  14. package/lib/engine/engine_loaders.callbacks.js +1 -0
  15. package/lib/engine/engine_loaders.callbacks.js.map +1 -1
  16. package/lib/engine/engine_utils_format.js +2 -2
  17. package/lib/engine/engine_utils_format.js.map +1 -1
  18. package/package.json +1 -1
  19. package/plugins/vite/build-pipeline.js +22 -6
  20. package/src/engine/engine_loaders.callbacks.ts +1 -0
  21. package/src/engine/engine_utils_format.ts +2 -2
  22. package/lib/engine/engine.d.ts +0 -4
  23. package/lib/engine/engine.js +0 -12
  24. package/lib/engine/engine.js.map +0 -1
  25. package/lib/engine/engine_element.d.ts +0 -113
  26. package/lib/engine/engine_element.js +0 -833
  27. package/lib/engine/engine_element.js.map +0 -1
  28. package/lib/engine/engine_element_attributes.d.ts +0 -72
  29. package/lib/engine/engine_element_attributes.js +0 -2
  30. package/lib/engine/engine_element_attributes.js.map +0 -1
  31. package/lib/engine/engine_element_extras.d.ts +0 -6
  32. package/lib/engine/engine_element_extras.js +0 -14
  33. package/lib/engine/engine_element_extras.js.map +0 -1
  34. package/lib/engine/engine_element_loading.d.ts +0 -44
  35. package/lib/engine/engine_element_loading.js +0 -350
  36. package/lib/engine/engine_element_loading.js.map +0 -1
  37. package/lib/engine/engine_element_overlay.d.ts +0 -21
  38. package/lib/engine/engine_element_overlay.js +0 -167
  39. package/lib/engine/engine_element_overlay.js.map +0 -1
  40. package/lib/engine/engine_scenetools.d.ts +0 -50
  41. package/lib/engine/engine_scenetools.js +0 -322
  42. package/lib/engine/engine_scenetools.js.map +0 -1
  43. package/lib/engine/engine_web_api.d.ts +0 -12
  44. package/lib/engine/engine_web_api.js +0 -113
  45. package/lib/engine/engine_web_api.js.map +0 -1
  46. package/lib/engine-components/FlyControls.d.ts +0 -10
  47. package/lib/engine-components/FlyControls.js +0 -29
  48. package/lib/engine-components/FlyControls.js.map +0 -1
@@ -1,113 +0,0 @@
1
- // workaround for this is not a function when deployed
2
- // see https://github.com/pvorb/node-md5/issues/52
3
- import md5 from "md5";
4
- export class Upload_Result {
5
- success;
6
- filename;
7
- hash;
8
- size;
9
- url;
10
- constructor(success, filename, hash, size) {
11
- this.success = success;
12
- this.filename = filename;
13
- this.hash = hash;
14
- this.size = size;
15
- }
16
- }
17
- export async function upload_file(file, url) {
18
- const buffer = await file.arrayBuffer();
19
- const hashString = hash(buffer);
20
- const ext = file.name.split('.').pop();
21
- const filename = hashString + "." + ext;
22
- const alias = file.name.split('.').shift();
23
- console.assert(alias !== undefined);
24
- const body = { alias: alias, filename: filename };
25
- const exists = await fetch(url + '/exists', { method: "POST", body: JSON.stringify(body) });
26
- const answer = await exists.json();
27
- if (!answer.success) {
28
- console.warn("exists check did fail");
29
- }
30
- if (answer.exists) {
31
- console.log("file already exists", hashString);
32
- return new Upload_Result(true, filename, hashString, file.size);
33
- }
34
- console.log("begin uploading file", alias, file.size);
35
- const formData = new FormData();
36
- formData.append("file", file);
37
- const headers = {};
38
- headers["filesize"] = file.size;
39
- if (alias)
40
- headers["alias"] = alias;
41
- const upload_res_raw = await fetch(url + '/upload/file', { method: "POST", body: formData, headers: headers });
42
- const upload_res = await upload_res_raw.json();
43
- if (upload_res?.success === false) {
44
- if (upload_res.message !== undefined) {
45
- console.error("Upload failed:", upload_res.message);
46
- }
47
- else {
48
- console.error("Upload failed");
49
- }
50
- return null;
51
- }
52
- console.assert(upload_res.hash_sum === hashString, "hash sum did not match", "received:", upload_res.hash_sum, "expected:", hashString);
53
- if (upload_res.success)
54
- console.log("successfully uploaded", hashString, upload_res.id);
55
- const res = new Upload_Result(upload_res.success, filename, hashString, file.size);
56
- res.url = url;
57
- return res;
58
- }
59
- export function hash(buffer) {
60
- return md5(new Uint8Array(buffer));
61
- }
62
- ;
63
- export async function download_file(filename, expectedHash, expectedSize, serverUrl, skipChecks = false) {
64
- try {
65
- const download_res = await fetch(serverUrl + '/download/file', { method: "POST", body: filename });
66
- if (download_res.status !== 200) {
67
- // const res = await download_res.json();
68
- console.error("download failed", download_res);
69
- return null;
70
- }
71
- const bin = await download_res.blob();
72
- const buffer = await bin.arrayBuffer();
73
- if (!skipChecks)
74
- console.assert(bin.size === expectedSize, "size mismatch", "expected:", expectedSize, "got:", bin.size);
75
- const result_hash = hash(buffer);
76
- if (!skipChecks)
77
- console.assert(result_hash === expectedHash, "hash mismatch, downloaded file is invalid");
78
- return bin.arrayBuffer();
79
- }
80
- catch (err) {
81
- console.error(err);
82
- }
83
- return null;
84
- }
85
- export async function download(url, progressCallback) {
86
- const response = await fetch(url);
87
- const reader = response.body?.getReader();
88
- const contentLength = response.headers.get('Content-Length');
89
- const total = contentLength ? parseInt(contentLength) : 0;
90
- if (!reader)
91
- return null;
92
- let received = 0;
93
- const chunks = [];
94
- while (true) {
95
- const { done, value } = await reader.read();
96
- if (value) {
97
- chunks.push(value);
98
- received += value.length;
99
- progressCallback.call(null, new ProgressEvent('progress', { loaded: received, total: total }));
100
- }
101
- if (done) {
102
- break;
103
- }
104
- }
105
- const final = new Uint8Array(received);
106
- let position = 0;
107
- for (const chunk of chunks) {
108
- final.set(chunk, position);
109
- position += chunk.length;
110
- }
111
- return final;
112
- }
113
- //# sourceMappingURL=engine_web_api.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"engine_web_api.js","sourceRoot":"","sources":["../../src/engine/engine_web_api.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import { Behaviour } from "./Component.js";
2
- /**
3
- * @deprecated The FlyControls component is deprecated and will be removed in the future.
4
- */
5
- export declare class FlyControls extends Behaviour {
6
- private _controls;
7
- onEnable(): void;
8
- onDisable(): void;
9
- update(): void;
10
- }
@@ -1,29 +0,0 @@
1
- import { FlyControls as ThreeFlyControls } from "three/examples/jsm/controls/FlyControls.js";
2
- import { Camera } from "./Camera.js";
3
- import { Behaviour, GameObject } from "./Component.js";
4
- /**
5
- * @deprecated The FlyControls component is deprecated and will be removed in the future.
6
- */
7
- export class FlyControls extends Behaviour {
8
- _controls = null;
9
- onEnable() {
10
- const cam = GameObject.getComponent(this.gameObject, Camera)?.threeCamera;
11
- if (!cam) {
12
- console.warn("FlyControls: Requires a Camera component on the same object as this component.");
13
- return;
14
- }
15
- this._controls = new ThreeFlyControls(cam, this.context.renderer.domElement);
16
- this._controls.rollSpeed = .5;
17
- this._controls.movementSpeed = 3;
18
- this._controls.dragToLook = true;
19
- }
20
- onDisable() {
21
- this._controls?.dispose();
22
- this._controls = null;
23
- }
24
- update() {
25
- if (this._controls)
26
- this._controls.update(this.context.time.deltaTime);
27
- }
28
- }
29
- //# sourceMappingURL=FlyControls.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FlyControls.js","sourceRoot":"","sources":["../../src/engine-components/FlyControls.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAE7F,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEvD;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,SAAS;IAC9B,SAAS,GAA4B,IAAI,CAAC;IAElD,QAAQ;QACJ,MAAM,GAAG,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,WAAW,CAAC;QAC1E,IAAI,CAAC,GAAG,EAAE;YACN,OAAO,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAC;YAC/F,OAAO;SACV;QAED,IAAI,CAAC,SAAS,GAAG,IAAI,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7E,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC;IAErC,CAAC;IAED,SAAS;QACL,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,MAAM;QACF,IAAI,IAAI,CAAC,SAAS;YACd,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3D,CAAC;CAEJ"}