@unyt/datex 0.0.6 → 0.0.8

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 (62) hide show
  1. package/README.md +6 -4
  2. package/esm/_dnt.shims.d.ts +1 -1
  3. package/esm/datex-core/datex_core_js.internal.d.ts +283 -212
  4. package/esm/datex-core/datex_core_js.internal.d.ts.map +1 -1
  5. package/esm/datex-core/datex_core_js.internal.js +857 -571
  6. package/esm/datex-core/datex_core_js.wasm +0 -0
  7. package/esm/default.d.ts +12 -0
  8. package/esm/default.d.ts.map +1 -0
  9. package/esm/default.js +23 -0
  10. package/esm/deno.json +30 -6
  11. package/esm/dif/builders.d.ts +11 -0
  12. package/esm/dif/builders.d.ts.map +1 -0
  13. package/esm/dif/builders.js +23 -0
  14. package/esm/dif/core.d.ts +35 -0
  15. package/esm/dif/core.d.ts.map +1 -0
  16. package/esm/dif/core.js +50 -0
  17. package/esm/dif/definitions.d.ts +81 -0
  18. package/esm/dif/definitions.d.ts.map +1 -0
  19. package/esm/dif/definitions.js +19 -0
  20. package/esm/dif/dif-handler.d.ts +217 -0
  21. package/esm/dif/dif-handler.d.ts.map +1 -0
  22. package/esm/dif/dif-handler.js +689 -0
  23. package/esm/dif/display.d.ts +8 -0
  24. package/esm/dif/display.d.ts.map +1 -0
  25. package/esm/dif/display.js +72 -0
  26. package/esm/dif/mod.d.ts +5 -0
  27. package/esm/dif/mod.d.ts.map +1 -0
  28. package/esm/dif/mod.js +4 -0
  29. package/esm/mod.d.ts +4 -6
  30. package/esm/mod.d.ts.map +1 -1
  31. package/esm/mod.js +4 -24
  32. package/esm/network/com-hub.d.ts +1 -0
  33. package/esm/network/com-hub.d.ts.map +1 -1
  34. package/esm/network/com-hub.js +3 -0
  35. package/esm/network/interface-impls/base.d.ts +11 -0
  36. package/esm/network/interface-impls/base.d.ts.map +1 -0
  37. package/esm/network/interface-impls/base.js +21 -0
  38. package/esm/network/interface-impls/serial.d.ts +6 -0
  39. package/esm/network/interface-impls/serial.d.ts.map +1 -0
  40. package/esm/network/interface-impls/serial.js +6 -0
  41. package/esm/network/interface-impls/webrtc.d.ts +12 -0
  42. package/esm/network/interface-impls/webrtc.d.ts.map +1 -0
  43. package/esm/network/interface-impls/webrtc.js +24 -0
  44. package/esm/network/interface-impls/websocket-client.d.ts +6 -0
  45. package/esm/network/interface-impls/websocket-client.d.ts.map +1 -0
  46. package/esm/network/interface-impls/websocket-client.js +6 -0
  47. package/esm/network/interface-impls/websocket-server-deno.d.ts +9 -0
  48. package/esm/network/interface-impls/websocket-server-deno.d.ts.map +1 -0
  49. package/esm/network/interface-impls/websocket-server-deno.js +45 -0
  50. package/esm/network/mod.d.ts +3 -0
  51. package/esm/network/mod.d.ts.map +1 -0
  52. package/esm/network/mod.js +2 -0
  53. package/esm/refs/ref.d.ts +27 -0
  54. package/esm/refs/ref.d.ts.map +1 -0
  55. package/esm/refs/ref.js +58 -0
  56. package/esm/runtime/runtime.d.ts +97 -5
  57. package/esm/runtime/runtime.d.ts.map +1 -1
  58. package/esm/runtime/runtime.js +69 -13
  59. package/esm/runtime/special-core-types.d.ts +10 -0
  60. package/esm/runtime/special-core-types.d.ts.map +1 -0
  61. package/esm/runtime/special-core-types.js +51 -0
  62. package/package.json +19 -1
@@ -9,13 +9,15 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
9
9
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
11
  };
12
- var _Runtime_runtime, _Runtime_memory, _Runtime_comHub;
12
+ var _Runtime_instances, _Runtime_runtime, _Runtime_comHub, _Runtime_difHandler, _Runtime_executeInternal, _Runtime_executeSyncInternal, _Runtime_getScriptAndValues;
13
13
  import { create_runtime, execute_internal, } from "../datex-core.js";
14
14
  import { ComHub } from "../network/com-hub.js";
15
+ import { DIFHandler } from "../dif/dif-handler.js";
15
16
  // auto-generated version - do not edit:
16
- const VERSION = "0.0.6";
17
+ const VERSION = "0.0.8";
17
18
  export class Runtime {
18
19
  constructor(config, debug_flags) {
20
+ _Runtime_instances.add(this);
19
21
  Object.defineProperty(this, "js_version", {
20
22
  enumerable: true,
21
23
  configurable: true,
@@ -23,11 +25,11 @@ export class Runtime {
23
25
  value: VERSION
24
26
  });
25
27
  _Runtime_runtime.set(this, void 0);
26
- _Runtime_memory.set(this, void 0);
27
28
  _Runtime_comHub.set(this, void 0);
29
+ _Runtime_difHandler.set(this, void 0);
28
30
  __classPrivateFieldSet(this, _Runtime_runtime, create_runtime(JSON.stringify(config), debug_flags), "f");
29
- __classPrivateFieldSet(this, _Runtime_memory, __classPrivateFieldGet(this, _Runtime_runtime, "f").memory, "f");
30
31
  __classPrivateFieldSet(this, _Runtime_comHub, new ComHub(__classPrivateFieldGet(this, _Runtime_runtime, "f").com_hub), "f");
32
+ __classPrivateFieldSet(this, _Runtime_difHandler, new DIFHandler(__classPrivateFieldGet(this, _Runtime_runtime, "f")), "f");
31
33
  }
32
34
  static async create(config, debug_flags) {
33
35
  const runtime = new Runtime(config, debug_flags);
@@ -49,8 +51,8 @@ export class Runtime {
49
51
  get version() {
50
52
  return __classPrivateFieldGet(this, _Runtime_runtime, "f").version;
51
53
  }
52
- get memory() {
53
- return __classPrivateFieldGet(this, _Runtime_memory, "f");
54
+ get dif() {
55
+ return __classPrivateFieldGet(this, _Runtime_difHandler, "f");
54
56
  }
55
57
  get comHub() {
56
58
  return __classPrivateFieldGet(this, _Runtime_comHub, "f");
@@ -61,14 +63,68 @@ export class Runtime {
61
63
  get _runtime() {
62
64
  return __classPrivateFieldGet(this, _Runtime_runtime, "f");
63
65
  }
64
- execute(datex_script, formatted = false) {
65
- return __classPrivateFieldGet(this, _Runtime_runtime, "f").execute(datex_script, formatted);
66
+ executeWithStringResult(datexScript, values = [], decompileOptions = null) {
67
+ return __classPrivateFieldGet(this, _Runtime_runtime, "f").execute_with_string_result(datexScript, __classPrivateFieldGet(this, _Runtime_difHandler, "f").convertToDIFValues(values), decompileOptions);
66
68
  }
67
- execute_sync(datex_script, formatted = false) {
68
- return __classPrivateFieldGet(this, _Runtime_runtime, "f").execute_sync(datex_script, formatted);
69
+ executeSyncWithStringResult(datexScript, values = [], decompileOptions = null) {
70
+ return __classPrivateFieldGet(this, _Runtime_runtime, "f").execute_sync_with_string_result(datexScript, __classPrivateFieldGet(this, _Runtime_difHandler, "f").convertToDIFValues(values), decompileOptions);
69
71
  }
70
- _execute_internal(datex_script) {
71
- return execute_internal(datex_script);
72
+ execute(datexScriptOrTemplateStrings, ...values) {
73
+ const { datexScript, valuesArray } = __classPrivateFieldGet(this, _Runtime_instances, "m", _Runtime_getScriptAndValues).call(this, datexScriptOrTemplateStrings, ...values);
74
+ return __classPrivateFieldGet(this, _Runtime_instances, "m", _Runtime_executeInternal).call(this, datexScript, valuesArray);
75
+ }
76
+ executeSync(datexScriptOrTemplateStrings, ...values) {
77
+ // determine datexScript and valuesArray based on the type of datexScriptOrTemplateStrings
78
+ const { datexScript, valuesArray } = __classPrivateFieldGet(this, _Runtime_instances, "m", _Runtime_getScriptAndValues).call(this, datexScriptOrTemplateStrings, ...values);
79
+ return __classPrivateFieldGet(this, _Runtime_instances, "m", _Runtime_executeSyncInternal).call(this, datexScript, valuesArray);
80
+ }
81
+ valueToString(value, decompileOptions = null) {
82
+ return __classPrivateFieldGet(this, _Runtime_runtime, "f").value_to_string(__classPrivateFieldGet(this, _Runtime_difHandler, "f").convertJSValueToDIFValue(value), decompileOptions);
83
+ }
84
+ _execute_internal(datexScript) {
85
+ return execute_internal(datexScript);
86
+ }
87
+ /**
88
+ * Creates a new pointer containg the given JS value.
89
+ * The returned value is a proxy object that behaves like the original object,
90
+ * but also propagates changes between JS and the DATEX runtime.
91
+ */
92
+ createPointer(
93
+ // deno-lint-ignore ban-types
94
+ value, allowedType, mutability) {
95
+ return __classPrivateFieldGet(this, _Runtime_difHandler, "f").createPointerFromJSValue(value, allowedType, mutability);
72
96
  }
73
97
  }
74
- _Runtime_runtime = new WeakMap(), _Runtime_memory = new WeakMap(), _Runtime_comHub = new WeakMap();
98
+ _Runtime_runtime = new WeakMap(), _Runtime_comHub = new WeakMap(), _Runtime_difHandler = new WeakMap(), _Runtime_instances = new WeakSet(), _Runtime_executeInternal = async function _Runtime_executeInternal(datexScript, values = []) {
99
+ const difValueContainer = await __classPrivateFieldGet(this, _Runtime_difHandler, "f").executeDIF(datexScript, values);
100
+ if (difValueContainer === null) {
101
+ return undefined;
102
+ }
103
+ return __classPrivateFieldGet(this, _Runtime_difHandler, "f").resolveDIFValueContainer(difValueContainer);
104
+ }, _Runtime_executeSyncInternal = function _Runtime_executeSyncInternal(datexScript, values = []) {
105
+ const difValue = __classPrivateFieldGet(this, _Runtime_difHandler, "f").executeSyncDIF(datexScript, values);
106
+ if (difValue === null) {
107
+ return undefined;
108
+ }
109
+ const result = __classPrivateFieldGet(this, _Runtime_difHandler, "f").resolveDIFValueContainer(difValue);
110
+ if (result instanceof Promise) {
111
+ throw new Error("executeSync cannot return a Promise. Use execute() instead.");
112
+ }
113
+ return result;
114
+ }, _Runtime_getScriptAndValues = function _Runtime_getScriptAndValues(datexScriptOrTemplateStrings, ...values) {
115
+ let datexScript;
116
+ let valuesArray;
117
+ if (typeof datexScriptOrTemplateStrings === "string") {
118
+ datexScript = datexScriptOrTemplateStrings;
119
+ valuesArray = values[0] ?? [];
120
+ }
121
+ else if (Array.isArray(datexScriptOrTemplateStrings)) {
122
+ // if it's a TemplateStringsArray, join the strings and interpolate the values
123
+ datexScript = datexScriptOrTemplateStrings.join("?");
124
+ valuesArray = values;
125
+ }
126
+ else {
127
+ throw new Error("Invalid argument type for executeSync");
128
+ }
129
+ return { datexScript, valuesArray };
130
+ };
@@ -0,0 +1,10 @@
1
+ import * as dntShim from "../_dnt.shims.js";
2
+ export declare class Endpoint {
3
+ #private;
4
+ static endpoints: Map<string, dntShim.WeakRef<Endpoint>>;
5
+ private constructor();
6
+ static registerEndpoint(endpoint: Endpoint): void;
7
+ static get(endpoint: string): Endpoint;
8
+ toString(): string;
9
+ }
10
+ //# sourceMappingURL=special-core-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"special-core-types.d.ts","sourceRoot":"","sources":["../../src/runtime/special-core-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAC5C,qBAAa,QAAQ;;IAIjB,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAa;IAErE,OAAO;WAKO,gBAAgB,CAAC,QAAQ,EAAE,QAAQ;WASnC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ;IAatC,QAAQ,IAAI,MAAM;CAG5B"}
@@ -0,0 +1,51 @@
1
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
+ if (kind === "m") throw new TypeError("Private method is not writable");
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
+ };
7
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
+ };
12
+ var _Endpoint_endpoint;
13
+ import * as dntShim from "../_dnt.shims.js";
14
+ export class Endpoint {
15
+ constructor(endpoint) {
16
+ _Endpoint_endpoint.set(this, void 0);
17
+ __classPrivateFieldSet(this, _Endpoint_endpoint, endpoint, "f");
18
+ Endpoint.registerEndpoint(this);
19
+ }
20
+ static registerEndpoint(endpoint) {
21
+ // set as a weak reference in the static map
22
+ const weakRef = new dntShim.WeakRef(endpoint);
23
+ Endpoint.endpoints.set(endpoint.toString(), weakRef);
24
+ new FinalizationRegistry((key) => {
25
+ Endpoint.endpoints.delete(key);
26
+ }).register(endpoint, endpoint.toString());
27
+ }
28
+ static get(endpoint) {
29
+ if (Endpoint.endpoints.has(endpoint)) {
30
+ const weakRef = Endpoint.endpoints.get(endpoint);
31
+ if (weakRef) {
32
+ const existingEndpoint = weakRef.deref();
33
+ if (existingEndpoint) {
34
+ return existingEndpoint;
35
+ }
36
+ }
37
+ }
38
+ return new Endpoint(endpoint);
39
+ }
40
+ toString() {
41
+ return __classPrivateFieldGet(this, _Endpoint_endpoint, "f");
42
+ }
43
+ }
44
+ _Endpoint_endpoint = new WeakMap();
45
+ // map with weak values that keeps track of all currently instantiated endpoints
46
+ Object.defineProperty(Endpoint, "endpoints", {
47
+ enumerable: true,
48
+ configurable: true,
49
+ writable: true,
50
+ value: new Map()
51
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unyt/datex",
3
- "version": "0.0.6",
3
+ "version": "0.0.8",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/unyt-org/datex-core-js.git"
@@ -13,6 +13,24 @@
13
13
  "exports": {
14
14
  ".": {
15
15
  "import": "./esm/mod.js"
16
+ },
17
+ "./default": {
18
+ "import": "./esm/default.js"
19
+ },
20
+ "./interface-impls/base": {
21
+ "import": "./esm/network/interface-impls/base.js"
22
+ },
23
+ "./interface-impls/websocket-client": {
24
+ "import": "./esm/network/interface-impls/websocket-client.js"
25
+ },
26
+ "./interface-impls/websocket-server-deno": {
27
+ "import": "./esm/network/interface-impls/websocket-server-deno.js"
28
+ },
29
+ "./interface-impls/serial": {
30
+ "import": "./esm/network/interface-impls/serial.js"
31
+ },
32
+ "./interface-impls/webrtc": {
33
+ "import": "./esm/network/interface-impls/webrtc.js"
16
34
  }
17
35
  },
18
36
  "scripts": {},