datapos-connector-file-store-emulator 0.2.280 → 0.2.288
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/README.md +9 -0
- package/dist/datapos-connector-file-store-emulator.es.js +98 -76
- package/dist/datapos-connector-file-store-emulator.es.js.map +1 -1
- package/dist/datapos_connector_file_store_emulator_core-tvgNVoxR.js +94 -0
- package/dist/datapos_connector_file_store_emulator_core-tvgNVoxR.js.map +1 -0
- package/dist/types/src/index.d.ts +3 -0
- package/dist/types/src/rustBridge.d.ts +2 -0
- package/package.json +5 -3
package/README.md
CHANGED
|
@@ -9,6 +9,14 @@
|
|
|
9
9
|
|
|
10
10
|
A TypeScript library that implements the File Store Emulator connector. It provides easy access to a curated set of files for demonstration and evaluation purposes.
|
|
11
11
|
|
|
12
|
+
## Rust WebAssembly Helpers
|
|
13
|
+
|
|
14
|
+
The connector now ships with a lightweight Rust crate located in [rust/datapos-connector-file-store-emulator-core](rust/datapos-connector-file-store-emulator-core). It is compiled to WebAssembly with `wasm-pack` so TypeScript can call native Rust logic.
|
|
15
|
+
|
|
16
|
+
- Run `npm run build:rust` (requires the [`wasm-pack` CLI](https://rustwasm.github.io/wasm-pack/installer/)) whenever you change the Rust sources. The command rebuilds the package into [rust/datapos-connector-file-store-emulator-core/pkg](rust/datapos-connector-file-store-emulator-core/pkg).
|
|
17
|
+
- The async wrapper in [src/rustBridge.ts](src/rustBridge.ts) lazy-loads the generated bindings and surfaces helpers like `addNumbersWithRust()` and `checksumWithRust()`.
|
|
18
|
+
- `FileStoreEmulatorConnector` exposes `addUsingRust()` and `versionChecksumUsingRust()` so consumers can exercise the Rust-backed functionality without dealing with low-level WebAssembly plumbing.
|
|
19
|
+
|
|
12
20
|
## Installation
|
|
13
21
|
|
|
14
22
|
There’s no need to install this connector manually. Once released, it’s uploaded to the Data Positioning Engine cloud and becomes instantly available to all new instances of the browser app. A notification about the new version is also sent to all existing browser apps.
|
|
@@ -48,6 +56,7 @@ The following list details the repository management commands implementation by
|
|
|
48
56
|
| -------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------- |
|
|
49
57
|
| audit | alt+ctrl+shift+a | Audit the project's dependencies for known security vulnerabilities. |
|
|
50
58
|
| build | alt+ctrl+shift+b | Type-check, compile and minify for production. Output in '/dist' directory. |
|
|
59
|
+
| build:rust | | Compile the Rust helper crate to WebAssembly via `wasm-pack`. Requires the `wasm-pack` CLI in your PATH. |
|
|
51
60
|
| buildConnectorConfig | | |
|
|
52
61
|
| bumpVersion | alt+ctrl+shift+v | |
|
|
53
62
|
| check | alt+ctrl+shift+c | List the dependencies in the project that are outdated. |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
let z;
|
|
2
2
|
// @__NO_SIDE_EFFECTS__
|
|
3
|
-
function
|
|
3
|
+
function x(t) {
|
|
4
4
|
return {
|
|
5
5
|
lang: t?.lang ?? z?.lang,
|
|
6
6
|
message: t?.message,
|
|
@@ -8,70 +8,70 @@ function S(t) {
|
|
|
8
8
|
abortPipeEarly: t?.abortPipeEarly ?? z?.abortPipeEarly
|
|
9
9
|
};
|
|
10
10
|
}
|
|
11
|
-
let
|
|
11
|
+
let k;
|
|
12
12
|
// @__NO_SIDE_EFFECTS__
|
|
13
|
-
function
|
|
14
|
-
return
|
|
13
|
+
function T(t) {
|
|
14
|
+
return k?.get(t);
|
|
15
15
|
}
|
|
16
|
-
let
|
|
16
|
+
let O;
|
|
17
17
|
// @__NO_SIDE_EFFECTS__
|
|
18
|
-
function
|
|
19
|
-
return
|
|
18
|
+
function F(t) {
|
|
19
|
+
return O?.get(t);
|
|
20
20
|
}
|
|
21
|
-
let
|
|
21
|
+
let U;
|
|
22
22
|
// @__NO_SIDE_EFFECTS__
|
|
23
|
-
function
|
|
24
|
-
return
|
|
23
|
+
function L(t, e) {
|
|
24
|
+
return U?.get(t)?.get(e);
|
|
25
25
|
}
|
|
26
26
|
// @__NO_SIDE_EFFECTS__
|
|
27
|
-
function
|
|
27
|
+
function w(t) {
|
|
28
28
|
const e = typeof t;
|
|
29
29
|
return e === "string" ? `"${t}"` : e === "number" || e === "bigint" || e === "boolean" ? `${t}` : e === "object" || e === "function" ? (t && Object.getPrototypeOf(t)?.constructor?.name) ?? "null" : e;
|
|
30
30
|
}
|
|
31
|
-
function v(t, e, i, d,
|
|
32
|
-
const
|
|
31
|
+
function v(t, e, i, d, s) {
|
|
32
|
+
const a = s && "input" in s ? s.input : i.value, o = s?.expected ?? t.expects ?? null, r = s?.received ?? /* @__PURE__ */ w(a), n = {
|
|
33
33
|
kind: t.kind,
|
|
34
34
|
type: t.type,
|
|
35
|
-
input:
|
|
35
|
+
input: a,
|
|
36
36
|
expected: o,
|
|
37
37
|
received: r,
|
|
38
38
|
message: `Invalid ${e}: ${o ? `Expected ${o} but r` : "R"}eceived ${r}`,
|
|
39
39
|
requirement: t.requirement,
|
|
40
|
-
path:
|
|
41
|
-
issues:
|
|
40
|
+
path: s?.path,
|
|
41
|
+
issues: s?.issues,
|
|
42
42
|
lang: d.lang,
|
|
43
43
|
abortEarly: d.abortEarly,
|
|
44
44
|
abortPipeEarly: d.abortPipeEarly
|
|
45
|
-
}, l = t.kind === "schema", y =
|
|
45
|
+
}, l = t.kind === "schema", y = s?.message ?? t.message ?? /* @__PURE__ */ L(t.reference, n.lang) ?? (l ? /* @__PURE__ */ F(n.lang) : null) ?? d.message ?? /* @__PURE__ */ T(n.lang);
|
|
46
46
|
y !== void 0 && (n.message = typeof y == "function" ? y(n) : y), l && (i.typed = !1), i.issues ? i.issues.push(n) : i.issues = [n];
|
|
47
47
|
}
|
|
48
48
|
// @__NO_SIDE_EFFECTS__
|
|
49
|
-
function
|
|
49
|
+
function R(t) {
|
|
50
50
|
return {
|
|
51
51
|
version: 1,
|
|
52
52
|
vendor: "valibot",
|
|
53
53
|
validate(e) {
|
|
54
|
-
return t["~run"]({ value: e }, /* @__PURE__ */
|
|
54
|
+
return t["~run"]({ value: e }, /* @__PURE__ */ x());
|
|
55
55
|
}
|
|
56
56
|
};
|
|
57
57
|
}
|
|
58
58
|
// @__NO_SIDE_EFFECTS__
|
|
59
|
-
function
|
|
59
|
+
function N(t, e) {
|
|
60
60
|
const i = [...new Set(t)];
|
|
61
61
|
return i.length > 1 ? `(${i.join(` ${e} `)})` : i[0] ?? "never";
|
|
62
62
|
}
|
|
63
63
|
// @__NO_SIDE_EFFECTS__
|
|
64
|
-
function
|
|
64
|
+
function P(t, e) {
|
|
65
65
|
return {
|
|
66
66
|
kind: "schema",
|
|
67
67
|
type: "literal",
|
|
68
|
-
reference:
|
|
69
|
-
expects: /* @__PURE__ */
|
|
68
|
+
reference: P,
|
|
69
|
+
expects: /* @__PURE__ */ w(t),
|
|
70
70
|
async: !1,
|
|
71
71
|
literal: t,
|
|
72
72
|
message: e,
|
|
73
73
|
get "~standard"() {
|
|
74
|
-
return /* @__PURE__ */
|
|
74
|
+
return /* @__PURE__ */ R(this);
|
|
75
75
|
},
|
|
76
76
|
"~run"(i, d) {
|
|
77
77
|
return i.value === this.literal ? i.typed = !0 : v(this, "type", i, d), i;
|
|
@@ -85,33 +85,33 @@ function g(t) {
|
|
|
85
85
|
return e;
|
|
86
86
|
}
|
|
87
87
|
// @__NO_SIDE_EFFECTS__
|
|
88
|
-
function
|
|
88
|
+
function S(t, e) {
|
|
89
89
|
return {
|
|
90
90
|
kind: "schema",
|
|
91
91
|
type: "union",
|
|
92
|
-
reference:
|
|
93
|
-
expects: /* @__PURE__ */
|
|
92
|
+
reference: S,
|
|
93
|
+
expects: /* @__PURE__ */ N(t.map((i) => i.expects), "|"),
|
|
94
94
|
async: !1,
|
|
95
95
|
options: t,
|
|
96
96
|
message: e,
|
|
97
97
|
get "~standard"() {
|
|
98
|
-
return /* @__PURE__ */
|
|
98
|
+
return /* @__PURE__ */ R(this);
|
|
99
99
|
},
|
|
100
100
|
"~run"(i, d) {
|
|
101
|
-
let
|
|
101
|
+
let s, a, o;
|
|
102
102
|
for (const r of this.options) {
|
|
103
103
|
const n = r["~run"]({ value: i.value }, d);
|
|
104
|
-
if (n.typed) if (n.issues)
|
|
104
|
+
if (n.typed) if (n.issues) a ? a.push(n) : a = [n];
|
|
105
105
|
else {
|
|
106
|
-
|
|
106
|
+
s = n;
|
|
107
107
|
break;
|
|
108
108
|
}
|
|
109
109
|
else o ? o.push(n) : o = [n];
|
|
110
110
|
}
|
|
111
|
-
if (
|
|
112
|
-
if (
|
|
113
|
-
if (
|
|
114
|
-
v(this, "type", i, d, { issues: /* @__PURE__ */ g(
|
|
111
|
+
if (s) return s;
|
|
112
|
+
if (a) {
|
|
113
|
+
if (a.length === 1) return a[0];
|
|
114
|
+
v(this, "type", i, d, { issues: /* @__PURE__ */ g(a) }), i.typed = !0;
|
|
115
115
|
} else {
|
|
116
116
|
if (o?.length === 1) return o[0];
|
|
117
117
|
v(this, "type", i, d, { issues: /* @__PURE__ */ g(o) });
|
|
@@ -120,7 +120,7 @@ function P(t, e) {
|
|
|
120
120
|
}
|
|
121
121
|
};
|
|
122
122
|
}
|
|
123
|
-
const b = (t) => /* @__PURE__ */
|
|
123
|
+
const b = (t) => /* @__PURE__ */ S(t.map((e) => /* @__PURE__ */ P(e)));
|
|
124
124
|
b(["amber", "green", "red", "other"]);
|
|
125
125
|
b([
|
|
126
126
|
"alpha",
|
|
@@ -206,25 +206,25 @@ const c = (t) => new Map(Object.entries(t));
|
|
|
206
206
|
c({ "en-gb": "Delimited Text" }), c({ "en-gb": "Entity/Event" }), c({ "en-gb": "JSON Array" }), c({ "en-gb": "SPSS" }), c({ "en-gb": "XLS" }), c({ "en-gb": "XLSX" }), c({ "en-gb": "XML" });
|
|
207
207
|
c({ "en-gb": "Newline" }), c({ "en-gb": "Carriage Return" }), c({ "en-gb": "Carriage Return/Newline" });
|
|
208
208
|
c({ "en-gb": "Colon" }), c({ "en-gb": "Comma" }), c({ "en-gb": "Exclamation Mark" }), c({ "en-gb": "Record Separator" }), c({ "en-gb": "Semicolon" }), c({ "en-gb": "Space" }), c({ "en-gb": "Tab" }), c({ "en-gb": "Underscore" }), c({ "en-gb": "Unit Separator" }), c({ "en-gb": "Vertical Bar" });
|
|
209
|
-
const
|
|
210
|
-
id:
|
|
211
|
-
label:
|
|
212
|
-
description:
|
|
213
|
-
category:
|
|
214
|
-
categoryId:
|
|
215
|
-
implementations:
|
|
216
|
-
icon:
|
|
217
|
-
iconDark:
|
|
218
|
-
lastUpdatedAt:
|
|
219
|
-
operations:
|
|
220
|
-
status:
|
|
221
|
-
statusId:
|
|
222
|
-
typeId:
|
|
223
|
-
usageId:
|
|
224
|
-
vendorAccountURL:
|
|
225
|
-
vendorDocumentationURL:
|
|
226
|
-
vendorHomeURL:
|
|
227
|
-
version:
|
|
209
|
+
const D = "datapos-connector-file-store-emulator", V = { en: "File Store Emulator" }, G = { "en-gb": "Imitates a cloud-based file storage solution. It hosts a read-only set of files for demonstration, evaluation and testing purposes and is freely available to all users." }, B = null, q = "fileStore", H = { default: { authMethodId: "none", maxConnectionCount: 1 } }, Z = '<svg fill="#000000" height="100%" viewBox="0 0 576 512"><path d="M320 32H64C46.33 32 32 46.33 32 64V448C32 465.7 46.33 480 64 480H296.2C305.1 491.8 317.3 502.3 329.7 511.3C326.6 511.7 323.3 512 320 512H64C28.65 512 0 483.3 0 448V64C0 28.65 28.65 0 64 0H320C355.3 0 384 28.65 384 64V198.6C372.8 201.8 362.1 206 352 211.2V64C352 46.33 337.7 32 320 32V32zM64 144C64 135.2 71.16 128 80 128H304C312.8 128 320 135.2 320 144C320 152.8 312.8 160 304 160H80C71.16 160 64 152.8 64 144zM272 224C280.8 224 288 231.2 288 240C288 248.8 280.8 256 272 256H80C71.16 256 64 248.8 64 240C64 231.2 71.16 224 80 224H272zM208 320C216.8 320 224 327.2 224 336C224 344.8 216.8 352 208 352H80C71.16 352 64 344.8 64 336C64 327.2 71.16 320 80 320H208zM476.7 324.7C482.9 318.4 493.1 318.4 499.3 324.7C505.6 330.9 505.6 341.1 499.3 347.3L427.3 419.3C421.1 425.6 410.9 425.6 404.7 419.3L364.7 379.3C358.4 373.1 358.4 362.9 364.7 356.7C370.9 350.4 381.1 350.4 387.3 356.7L416 385.4L476.7 324.7zM288 368C288 288.5 352.5 224 432 224C511.5 224 576 288.5 576 368C576 447.5 511.5 512 432 512C352.5 512 288 447.5 288 368zM432 480C493.9 480 544 429.9 544 368C544 306.1 493.9 256 432 256C370.1 256 320 306.1 320 368C320 429.9 370.1 480 432 480z"/></svg>', K = '<svg fill="#ffffff" height="100%" viewBox="0 0 576 512"><path d="M320 32H64C46.33 32 32 46.33 32 64V448C32 465.7 46.33 480 64 480H296.2C305.1 491.8 317.3 502.3 329.7 511.3C326.6 511.7 323.3 512 320 512H64C28.65 512 0 483.3 0 448V64C0 28.65 28.65 0 64 0H320C355.3 0 384 28.65 384 64V198.6C372.8 201.8 362.1 206 352 211.2V64C352 46.33 337.7 32 320 32V32zM64 144C64 135.2 71.16 128 80 128H304C312.8 128 320 135.2 320 144C320 152.8 312.8 160 304 160H80C71.16 160 64 152.8 64 144zM272 224C280.8 224 288 231.2 288 240C288 248.8 280.8 256 272 256H80C71.16 256 64 248.8 64 240C64 231.2 71.16 224 80 224H272zM208 320C216.8 320 224 327.2 224 336C224 344.8 216.8 352 208 352H80C71.16 352 64 344.8 64 336C64 327.2 71.16 320 80 320H208zM476.7 324.7C482.9 318.4 493.1 318.4 499.3 324.7C505.6 330.9 505.6 341.1 499.3 347.3L427.3 419.3C421.1 425.6 410.9 425.6 404.7 419.3L364.7 379.3C358.4 373.1 358.4 362.9 364.7 356.7C370.9 350.4 381.1 350.4 387.3 356.7L416 385.4L476.7 324.7zM288 368C288 288.5 352.5 224 432 224C511.5 224 576 288.5 576 368C576 447.5 511.5 512 432 512C352.5 512 288 447.5 288 368zM432 480C493.9 480 544 429.9 544 368C544 306.1 493.9 256 432 256C370.1 256 320 306.1 320 368C320 429.9 370.1 480 432 480z"/></svg>', Q = null, J = ["abortOperation", "findObject", "getReader", "listNodes", "previewObject", "retrieveRecords"], X = null, W = "beta", Y = "connector", $ = "source", ee = null, te = null, ie = null, de = "0.2.288", oe = {
|
|
210
|
+
id: D,
|
|
211
|
+
label: V,
|
|
212
|
+
description: G,
|
|
213
|
+
category: B,
|
|
214
|
+
categoryId: q,
|
|
215
|
+
implementations: H,
|
|
216
|
+
icon: Z,
|
|
217
|
+
iconDark: K,
|
|
218
|
+
lastUpdatedAt: Q,
|
|
219
|
+
operations: J,
|
|
220
|
+
status: X,
|
|
221
|
+
statusId: W,
|
|
222
|
+
typeId: Y,
|
|
223
|
+
usageId: $,
|
|
224
|
+
vendorAccountURL: ee,
|
|
225
|
+
vendorDocumentationURL: te,
|
|
226
|
+
vendorHomeURL: ie,
|
|
227
|
+
version: de
|
|
228
228
|
}, M = {
|
|
229
229
|
"": [{ id: "cpB45vx36UWghglh18MUS", lastModifiedAt: 17435076862165598e-4, name: "ENGAGEMENT_START_EVENTS_202405121858.csv", size: 122800, typeId: "object" }, { id: "GUIHoZJcLIFZ6B7A1bu0r", lastModifiedAt: 1743507686221789e-3, name: "PEOPLE_BIRTH_EVENTS_202405121857.csv", size: 114287, typeId: "object" }, { childCount: 3, name: "AUDATACY Interchange Format", typeId: "folder" }, { childCount: 12, name: "Formula 1", typeId: "folder" }, { childCount: 7, name: "Salesforce API", typeId: "folder" }, { childCount: 156, name: "Salesforce Extract", typeId: "folder" }, { childCount: 20, name: "SAP Employee Central Extract", typeId: "folder" }, { childCount: 7, name: "SAP SuccessFactors API", typeId: "folder" }, { childCount: 12, name: "Test Files", typeId: "folder" }],
|
|
230
230
|
"/AUDATACY Interchange Format": [{ childCount: 11, name: "Coded Data", typeId: "folder" }, { childCount: 1, name: "Human Resources", typeId: "folder" }, { childCount: 1, name: "Party", typeId: "folder" }],
|
|
@@ -243,14 +243,27 @@ const L = "datapos-connector-file-store-emulator", N = { en: "File Store Emulato
|
|
|
243
243
|
"/Test Files/Encoding": [{ id: "VDPKvgp8-hYHAyD5Lspqx", lastModifiedAt: 17435076862472607e-4, name: "big5", size: 614, typeId: "object" }, { id: "BuaHWD5GhE1tR4h50Sgjb", lastModifiedAt: 1743507686247412e-3, name: "euc-jp", size: 3919, typeId: "object" }, { id: "4zP5NrMMQKfEImM1ql9rh", lastModifiedAt: 1743507686247461e-3, name: "euc-kr", size: 2480, typeId: "object" }, { id: "4ddofaJBAo3000bUD4l_-", lastModifiedAt: 17435076862475098e-4, name: "gb18030", size: 1665, typeId: "object" }, { id: "yk7BqZOfbjw1lrOWkYMX8", lastModifiedAt: 17435076862475715e-4, name: "iso-2022-jp", size: 2924, typeId: "object" }, { id: "A52Tx9PVrjFXZAzEyska1", lastModifiedAt: 17435076862476187e-4, name: "iso-8859-2", size: 1600, typeId: "object" }, { id: "CzzBPKwpdex-8NIdpgC0b", lastModifiedAt: 1743507686247666e-3, name: "iso-8859-5", size: 1024, typeId: "object" }, { id: "6LYPo_5Ux6C7olOqf0caX", lastModifiedAt: 17435076862477134e-4, name: "iso-8859-6", size: 2241, typeId: "object" }, { id: "bfAhVWgQoJ4gK1WpgMI-O", lastModifiedAt: 1743507686247772e-3, name: "iso-8859-7", size: 1033, typeId: "object" }, { id: "94cPoDWerynVP5nYqQok5", lastModifiedAt: 17435076862478198e-4, name: "koi8-r", size: 1024, typeId: "object" }, { id: "wZP8uYiw71--vBcvc8mr-", lastModifiedAt: 17435076862478694e-4, name: "shift_jis", size: 2816, typeId: "object" }, { id: "8N1hAcknG5QTCBGAb_DgC", lastModifiedAt: 17435076862479082e-4, name: "utf-16be", size: 1334, typeId: "object" }, { id: "b0wcTK1T3jAS_FMhx74-L", lastModifiedAt: 1743507686247954e-3, name: "utf-16le", size: 1334, typeId: "object" }, { id: "Ar8QcfiznCHcGUZqvc4Xt", lastModifiedAt: 1743507686247995e-3, name: "utf-8", size: 1125, typeId: "object" }, { id: "MFdztx3Hn_W0cZ-FvJAlb", lastModifiedAt: 17435076862480386e-4, name: "windows-1250", size: 1617, typeId: "object" }, { id: "Hh7pKXC0Y-_OyT_zwSmMK", lastModifiedAt: 17435076862480842e-4, name: "windows-1251", size: 1024, typeId: "object" }, { id: "OcIEHmkSVO8lOX7srKkPn", lastModifiedAt: 1743507686248141e-3, name: "windows-1252", size: 2976, typeId: "object" }, { id: "Fr-FOrJwjhwh-RrejQG2y", lastModifiedAt: 1743507686248181e-3, name: "windows-1253", size: 1052, typeId: "object" }, { id: "fJnDU4alQlSZ4x-nojhp1", lastModifiedAt: 17435076862482227e-4, name: "windows-1254", size: 2445, typeId: "object" }, { id: "vI70VbY2bLWPSppUJ27pX", lastModifiedAt: 17435076862482617e-4, name: "windows-1255", size: 2405, typeId: "object" }, { id: "CBX69u7zo_sNZTLSXL_Ok", lastModifiedAt: 17435076862483171e-4, name: "windows-1256", size: 2241, typeId: "object" }],
|
|
244
244
|
"/Test Files/Encoding Test Files": [{ id: "2TJo3wC-qs3eQ4Q1LiC4p", lastModifiedAt: 17435076862436587e-4, name: "ascii.txt", size: 44, typeId: "object" }, { id: "lrrRdBkfNLjxDpgGBJafD", lastModifiedAt: 17435076862436975e-4, name: "big5.txt", size: 37, typeId: "object" }, { id: "kcfwAkKq1bMepTQIMmX-f", lastModifiedAt: 17435076862459814e-4, name: "euc-jp.txt", size: 218, typeId: "object" }, { id: "bciRqR0P6iJyQ_vtOop3Y", lastModifiedAt: 17435076862460261e-4, name: "euc-kr.txt", size: 153, typeId: "object" }, { id: "f4Q9QEcVNnx0hSGJrhOIV", lastModifiedAt: 17435076862460706e-4, name: "gb2312.txt", size: 105, typeId: "object" }, { id: "PcztjI4G2NZOYCdLSD5kA", lastModifiedAt: 17435076862461167e-4, name: "hz-gb-2312.txt", size: 117, typeId: "object" }, { id: "lLzl7OwIayebmkDf_johR", lastModifiedAt: 17435076862461694e-4, name: "ibm855.txt", size: 290, typeId: "object" }, { id: "Mq7D4ZWQsTMRsTX7_CsvU", lastModifiedAt: 17435076862462126e-4, name: "ibm866.txt", size: 290, typeId: "object" }, { id: "We9LB0aWPrd-IODoVKoRt", lastModifiedAt: 1743507686246254e-3, name: "iso-2022-jp.txt", size: 224, typeId: "object" }, { id: "W0qTlIiYoioBujG6zw8_Y", lastModifiedAt: 17435076862462983e-4, name: "iso-2022-kr.txt", size: 198, typeId: "object" }, { id: "I6IMhKsT4Uz4wGEJvW36C", lastModifiedAt: 17435076862463481e-4, name: "iso-8859-2.txt", size: 273, typeId: "object" }, { id: "Xwkvh13qNNKRwu7jYmzjR", lastModifiedAt: 17435076862463884e-4, name: "iso-8859-5-bulgarian.txt", size: 304, typeId: "object" }, { id: "asxDjWbs34mTKaGTkbNfw", lastModifiedAt: 17435076862464302e-4, name: "iso-8859-5-russian.txt", size: 290, typeId: "object" }, { id: "kgbViYQ9OX4w5SpLdskgZ", lastModifiedAt: 17435076862464714e-4, name: "iso-8859-7.txt", size: 319, typeId: "object" }, { id: "Bq0Gn-1G5BrhTxBUOQ7DF", lastModifiedAt: 17435076862465222e-4, name: "iso-8859-8.txt", size: 307, typeId: "object" }, { id: "jCtOU9WWV8jHWMgr_Oq7r", lastModifiedAt: 17435076862465593e-4, name: "koi8-r.txt", size: 290, typeId: "object" }, { id: "--cTZDZwr5BgECFgDGIo2", lastModifiedAt: 17435076862465964e-4, name: "shift_jis.txt", size: 216, typeId: "object" }, { id: "8mdQ36gjXep2wGj_kuQHx", lastModifiedAt: 1743507686246642e-3, name: "tis-620.txt", size: 68, typeId: "object" }, { id: "5rUGdrjGK4v6hZ1qwH2KJ", lastModifiedAt: 17435076862466946e-4, name: "utf-16be.txt", size: 2, typeId: "object" }, { id: "NtUpxZ5XGC1UAa0bJU4Cd", lastModifiedAt: 17435076862467427e-4, name: "utf-16le.txt", size: 84, typeId: "object" }, { id: "djicGUE7J59cQmEz22Lw2", lastModifiedAt: 1743507686246787e-3, name: "utf-32be.txt", size: 4, typeId: "object" }, { id: "E4ewVZr3kM5JfkCNHhaHv", lastModifiedAt: 17435076862468293e-4, name: "utf-32le.txt", size: 18, typeId: "object" }, { id: "T0gS9i2pl9OCYmqJdcEx-", lastModifiedAt: 17435076862468833e-4, name: "utf-8-with-bom.txt", size: 58, typeId: "object" }, { id: "ctcPwumVXy1mYV1fht5yD", lastModifiedAt: 17435076862469265e-4, name: "utf-8-without-bom.txt", size: 58, typeId: "object" }, { id: "V0aG5TkpxwM3_Q1di66Nz", lastModifiedAt: 1743507686246975e-3, name: "windows-1251.txt", size: 290, typeId: "object" }, { id: "LSFzaM5jL_I544Ol4mErA", lastModifiedAt: 17435076862470168e-4, name: "windows-1252.txt", size: 433, typeId: "object" }, { id: "SF10JGkRZ1rVLdm5LVBrl", lastModifiedAt: 17435076862470657e-4, name: "windows-1255.txt", size: 36, typeId: "object" }, { id: "kEx_hKy6rjhn97BwN07Ip", lastModifiedAt: 1743507686247103e-3, name: "x-iso-10646-ucs-4-2143.txt", size: 20, typeId: "object" }, { id: "XFbR4pbjpQwlmlKFmRqDC", lastModifiedAt: 1743507686247142e-3, name: "x-iso-10646-ucs-4-3412.txt", size: 20, typeId: "object" }, { id: "BuqENK-iJAXc1noTneDzz", lastModifiedAt: 17435076862471843e-4, name: "x-mac-cyrillic.txt", size: 290, typeId: "object" }, { childCount: 38, name: "encodings", typeId: "folder" }],
|
|
245
245
|
"/Test Files/Encoding Test Files/encodings": [{ id: "irBUQdMBx4ZhLXyti4t0W", lastModifiedAt: 1743507686243765e-3, name: "big5", size: 614, typeId: "object" }, { id: "BPyMwzoNSnGdUV_dzYEWz", lastModifiedAt: 17435076862438152e-4, name: "euc_jp", size: 3919, typeId: "object" }, { id: "FXjFtwUcRxKmH_ZCAaNz6", lastModifiedAt: 1743507686243867e-3, name: "euc_kr", size: 2480, typeId: "object" }, { id: "5fBDsObvTXORIIgptb-sl", lastModifiedAt: 17435076862439092e-4, name: "gb18030", size: 1665, typeId: "object" }, { id: "7Jt6_ku8bzWNBFjRaagdR", lastModifiedAt: 17435076862439512e-4, name: "iso2022cn", size: 1749, typeId: "object" }, { id: "WLvdjjUGMGnEv3FmDQJ9p", lastModifiedAt: 1743507686243999e-3, name: "iso2022jp", size: 2924, typeId: "object" }, { id: "6CsULI8SIvo4zwFjKAA1_", lastModifiedAt: 17435076862440513e-4, name: "iso2022kr", size: 3172, typeId: "object" }, { id: "SqbmllHEuS76me2jsWjLI", lastModifiedAt: 17435076862440952e-4, name: "iso88591_en", size: 2955, typeId: "object" }, { id: "5oCOldZaxX2XoavVBBgdc", lastModifiedAt: 1743507686244138e-3, name: "iso88592_cs", size: 1600, typeId: "object" }, { id: "UATsUFbSUtqVhVhMJ2sec", lastModifiedAt: 1743507686244182e-3, name: "iso88595_ru", size: 1024, typeId: "object" }, { id: "wC1_pjcjj0NZZWTxqiGaw", lastModifiedAt: 17435076862442336e-4, name: "iso88596_ar", size: 2241, typeId: "object" }, { id: "Pe8RK8l_zBAjLODUX34IB", lastModifiedAt: 1743507686244275e-3, name: "iso88597_el", size: 1033, typeId: "object" }, { id: "Ga6Z1yRgs99Vpa5QrR70_", lastModifiedAt: 17435076862445083e-4, name: "iso88598", size: 2352, typeId: "object" }, { id: "XmtdLSxT84HsoF7OIqye4", lastModifiedAt: 1743507686244566e-3, name: "iso88598_he", size: 2353, typeId: "object" }, { id: "3HCk8XXlua9KEOtc5iseJ", lastModifiedAt: 1743507686244627e-3, name: "iso88599_tr", size: 2424, typeId: "object" }, { id: "zjfA3EHpzaPHAvTkBICWG", lastModifiedAt: 17435076862446736e-4, name: "koi8r", size: 1024, typeId: "object" }, { id: "IRnhQiGe4mxsoQpaJCdRM", lastModifiedAt: 17435076862447236e-4, name: "lang_arabic", size: 4059, typeId: "object" }, { id: "ih-RgplBSErEYOcna-NlI", lastModifiedAt: 17435076862447717e-4, name: "lang_chinese", size: 916, typeId: "object" }, { id: "9EYQqNjgOksavPn--KH46", lastModifiedAt: 17435076862448289e-4, name: "lang_czech", size: 1795, typeId: "object" }, { id: "Xaeq_CiSthaccRyGw22Bx", lastModifiedAt: 17435076862448726e-4, name: "lang_greek", size: 1895, typeId: "object" }, { id: "421DaSaIy8ywB26Rc2GV1", lastModifiedAt: 1743507686244933e-3, name: "lang_hebrew", size: 4124, typeId: "object" }, { id: "N01Ggo186R8phM3c0zLa2", lastModifiedAt: 17435076862449873e-4, name: "lang_japanese", size: 3978, typeId: "object" }, { id: "T8jzTqgGlU30YQd1QvMm3", lastModifiedAt: 17435076862450503e-4, name: "lang_korean", size: 3466, typeId: "object" }, { id: "R-Fkzl2BW0o9Hios70WwI", lastModifiedAt: 17435076862450947e-4, name: "lang_russian", size: 1873, typeId: "object" }, { id: "KiKbYoPDMht0f9ElSfTYZ", lastModifiedAt: 1743507686245141e-3, name: "lang_turkish", size: 2678, typeId: "object" }, { id: "a_RPqwZdZ5DmZOCDUVeiZ", lastModifiedAt: 17435076862451846e-4, name: "shiftjis", size: 2816, typeId: "object" }, { id: "rXd90uYo_IZSqu9U_3Sr6", lastModifiedAt: 1743507686245242e-3, name: "utf16be", size: 1334, typeId: "object" }, { id: "83XbTcV0_WKdvcPEKeuDy", lastModifiedAt: 17435076862452773e-4, name: "utf16le", size: 1334, typeId: "object" }, { id: "Upq9-WDaQTs--Ogg1Qtev", lastModifiedAt: 17435076862453193e-4, name: "utf32be", size: 2664, typeId: "object" }, { id: "mm0RGQoiYeYc7ORPPI2S8", lastModifiedAt: 17435076862453613e-4, name: "utf32le", size: 2664, typeId: "object" }, { id: "J9FIyiit-zK4HquqAwGNE", lastModifiedAt: 17435076862454148e-4, name: "utf8", size: 1125, typeId: "object" }, { id: "pZQOaI1tOrcy2Km0Z7Enb", lastModifiedAt: 17435076862454595e-4, name: "windows_1250", size: 1617, typeId: "object" }, { id: "da-PPmwaWqLyqUz6SRw1v", lastModifiedAt: 1743507686245507e-3, name: "windows_1251", size: 1024, typeId: "object" }, { id: "aw_8vVm1CvdxaiiI3CX-L", lastModifiedAt: 17435076862456494e-4, name: "windows_1252", size: 2976, typeId: "object" }, { id: "-JYzWLdhtRIWC0vwZFj0I", lastModifiedAt: 17435076862456982e-4, name: "windows_1253", size: 1052, typeId: "object" }, { id: "ImvMAQPnb13Mf7mqB7t6m", lastModifiedAt: 17435076862458247e-4, name: "windows_1254", size: 2445, typeId: "object" }, { id: "mYnEtUyasG7Cub5f7WgsT", lastModifiedAt: 17435076862458765e-4, name: "windows_1255", size: 2405, typeId: "object" }, { id: "clQEg9g9e9QiBJcsOcKcs", lastModifiedAt: 17435076862459272e-4, name: "windows_1256", size: 2241, typeId: "object" }]
|
|
246
|
-
},
|
|
247
|
-
|
|
246
|
+
}, se = "0.2.288";
|
|
247
|
+
let h;
|
|
248
|
+
async function _() {
|
|
249
|
+
return h ??= import("./datapos_connector_file_store_emulator_core-tvgNVoxR.js"), h;
|
|
250
|
+
}
|
|
251
|
+
async function ae(t, e) {
|
|
252
|
+
const { add_numbers: i } = await _();
|
|
253
|
+
return i(Math.trunc(t), Math.trunc(e));
|
|
254
|
+
}
|
|
255
|
+
async function ne(t) {
|
|
256
|
+
const { checksum_from_rust: e } = await _();
|
|
257
|
+
return e(t);
|
|
258
|
+
}
|
|
259
|
+
const ce = "Connector failed to abort preview object operation.", le = "Connector failed to abort retrieve all records operation.", re = 4096, pe = 1e3, E = "https://sample-data-eu.datapos.app";
|
|
260
|
+
class be {
|
|
248
261
|
abortController;
|
|
249
262
|
config;
|
|
250
263
|
connectionConfig;
|
|
251
264
|
tools;
|
|
252
265
|
constructor(e, i) {
|
|
253
|
-
this.abortController = void 0, this.config =
|
|
266
|
+
this.abortController = void 0, this.config = oe, this.config.version = se, this.connectionConfig = e, this.tools = i;
|
|
254
267
|
}
|
|
255
268
|
// Operations - Abort operation.
|
|
256
269
|
abortOperation(e) {
|
|
@@ -269,17 +282,19 @@ class ce {
|
|
|
269
282
|
console.log("getReader", "connector", e), console.log("getReader", "settings", i);
|
|
270
283
|
const d = await fetch("https://sample-data-eu.datapos.app/fileStore/ENGAGEMENT_START_EVENTS_202405121858.csv");
|
|
271
284
|
if (console.log("getReader", "response", d), !d.body) throw new Error("ReadableStream not supported by this browser.");
|
|
272
|
-
|
|
285
|
+
await this.addUsingRust(12, 56);
|
|
286
|
+
const s = await this.versionChecksumUsingRust();
|
|
287
|
+
return console.log("sum", s), await Promise.resolve({ readable: d.body });
|
|
273
288
|
} catch (d) {
|
|
274
289
|
throw e.abortController = void 0, d;
|
|
275
290
|
}
|
|
276
291
|
}
|
|
277
292
|
// Operations - List nodes.
|
|
278
293
|
listNodes(e, i) {
|
|
279
|
-
const d = M[i.folderPath] ?? [],
|
|
280
|
-
for (const
|
|
281
|
-
|
|
282
|
-
return Promise.resolve({ cursor: void 0, isMore: !1, connectionNodeConfigs:
|
|
294
|
+
const d = M[i.folderPath] ?? [], s = [];
|
|
295
|
+
for (const a of d)
|
|
296
|
+
a.typeId === "folder" ? s.push(this.constructFolderNodeConfig(i.folderPath, a.name, a.childCount)) : s.push(this.constructObjectNodeConfig(i.folderPath, a.id, a.name, a.lastModifiedAt, a.size));
|
|
297
|
+
return Promise.resolve({ cursor: void 0, isMore: !1, connectionNodeConfigs: s, totalCount: s.length });
|
|
283
298
|
}
|
|
284
299
|
// Operations - Preview object.
|
|
285
300
|
async previewObject(e, i) {
|
|
@@ -287,9 +302,9 @@ class ce {
|
|
|
287
302
|
e.abortController = new AbortController();
|
|
288
303
|
const d = e.abortController.signal;
|
|
289
304
|
d.addEventListener("abort", () => {
|
|
290
|
-
throw new this.tools.dataPos.OperationalError(
|
|
305
|
+
throw new this.tools.dataPos.OperationalError(ce, "datapos-connector-file-store-emulator|Connector|preview.abort");
|
|
291
306
|
});
|
|
292
|
-
const
|
|
307
|
+
const s = `${E}/fileStore${i.path}`, a = { Range: `bytes=0-${i.chunkSize != null || re}` }, o = await fetch(encodeURI(s), { headers: a, signal: d });
|
|
293
308
|
if (o.ok)
|
|
294
309
|
return e.abortController = void 0, { data: new Uint8Array(await o.arrayBuffer()), typeId: "uint8Array" };
|
|
295
310
|
throw await this.tools.dataPos.buildFetchError(o, `Failed to fetch '${i.path}' file.`, "datapos-connector-file-store-emulator|Connector|preview");
|
|
@@ -298,15 +313,15 @@ class ce {
|
|
|
298
313
|
}
|
|
299
314
|
}
|
|
300
315
|
// Operations - Retrieve records.
|
|
301
|
-
async retrieveRecords(e, i, d,
|
|
302
|
-
return new Promise((
|
|
316
|
+
async retrieveRecords(e, i, d, s) {
|
|
317
|
+
return new Promise((a, o) => {
|
|
303
318
|
try {
|
|
304
319
|
e.abortController = new AbortController();
|
|
305
320
|
const r = e.abortController.signal;
|
|
306
321
|
r.addEventListener(
|
|
307
322
|
"abort",
|
|
308
323
|
() => {
|
|
309
|
-
e.abortController = void 0, o(new e.tools.dataPos.OperationalError(
|
|
324
|
+
e.abortController = void 0, o(new e.tools.dataPos.OperationalError(le, "datapos-connector-file-store-emulator|Connector|retrieve.abort"));
|
|
310
325
|
},
|
|
311
326
|
{ once: !0 }
|
|
312
327
|
);
|
|
@@ -321,7 +336,7 @@ class ce {
|
|
|
321
336
|
try {
|
|
322
337
|
let p;
|
|
323
338
|
for (; (p = l.read()) !== null; )
|
|
324
|
-
r.throwIfAborted(), n.push(p), !(n.length <
|
|
339
|
+
r.throwIfAborted(), n.push(p), !(n.length < pe) && (d([]), n = []);
|
|
325
340
|
} catch (p) {
|
|
326
341
|
e.abortController = void 0, o(f(p));
|
|
327
342
|
}
|
|
@@ -329,19 +344,19 @@ class ce {
|
|
|
329
344
|
e.abortController = void 0, o(f(p));
|
|
330
345
|
}), l.on("end", () => {
|
|
331
346
|
try {
|
|
332
|
-
r.throwIfAborted(), e.abortController = void 0, n.length > 0 && (d([]), n = []),
|
|
347
|
+
r.throwIfAborted(), e.abortController = void 0, n.length > 0 && (d([]), n = []), s({
|
|
333
348
|
byteCount: l.info.bytes,
|
|
334
349
|
commentLineCount: l.info.comment_lines,
|
|
335
350
|
emptyLineCount: l.info.empty_lines,
|
|
336
351
|
invalidFieldLengthCount: l.info.invalid_field_length,
|
|
337
352
|
lineCount: l.info.lines,
|
|
338
353
|
recordCount: l.info.records
|
|
339
|
-
}),
|
|
354
|
+
}), a();
|
|
340
355
|
} catch (p) {
|
|
341
356
|
e.abortController = void 0, o(f(p));
|
|
342
357
|
}
|
|
343
358
|
});
|
|
344
|
-
const y = `${
|
|
359
|
+
const y = `${E}/fileStore${i.path}`;
|
|
345
360
|
fetch(encodeURI(y), { signal: r }).then(async (p) => {
|
|
346
361
|
try {
|
|
347
362
|
if (p.ok && p.body) {
|
|
@@ -371,17 +386,24 @@ class ce {
|
|
|
371
386
|
}
|
|
372
387
|
});
|
|
373
388
|
}
|
|
389
|
+
/** Utilities - Rust helpers. */
|
|
390
|
+
async addUsingRust(e, i) {
|
|
391
|
+
return ae(e, i);
|
|
392
|
+
}
|
|
393
|
+
async versionChecksumUsingRust() {
|
|
394
|
+
return ne(this.config.version);
|
|
395
|
+
}
|
|
374
396
|
/** Utilities - Construct folder node configuration. */
|
|
375
397
|
constructFolderNodeConfig(e, i, d) {
|
|
376
398
|
return { id: this.tools.nanoid(), childCount: d, folderPath: e, label: i, name: i, typeId: "folder" };
|
|
377
399
|
}
|
|
378
400
|
/** Utilities - Construct object (file) node configuration. */
|
|
379
|
-
constructObjectNodeConfig(e, i, d,
|
|
380
|
-
const o = this.tools.dataPos.extractNameFromPath(d) ?? "", r = this.tools.dataPos.extractExtensionFromPath(d), n =
|
|
381
|
-
return { id: i, extension: r, folderPath: e, label: d, lastModifiedAt: n, mimeType: l, name: o, size:
|
|
401
|
+
constructObjectNodeConfig(e, i, d, s, a) {
|
|
402
|
+
const o = this.tools.dataPos.extractNameFromPath(d) ?? "", r = this.tools.dataPos.extractExtensionFromPath(d), n = s, l = this.tools.dataPos.lookupMimeTypeForExtension(r);
|
|
403
|
+
return { id: i, extension: r, folderPath: e, label: d, lastModifiedAt: n, mimeType: l, name: o, size: a, typeId: "object" };
|
|
382
404
|
}
|
|
383
405
|
}
|
|
384
406
|
export {
|
|
385
|
-
|
|
407
|
+
be as default
|
|
386
408
|
};
|
|
387
409
|
//# sourceMappingURL=datapos-connector-file-store-emulator.es.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datapos-connector-file-store-emulator.es.js","sources":["../node_modules/@datapos/datapos-shared/dist/datapos-shared.es.js","../src/index.ts"],"sourcesContent":["let j;\n// @__NO_SIDE_EFFECTS__\nfunction H(e) {\n return {\n lang: e?.lang ?? j?.lang,\n message: e?.message,\n abortEarly: e?.abortEarly ?? j?.abortEarly,\n abortPipeEarly: e?.abortPipeEarly ?? j?.abortPipeEarly\n };\n}\nlet K;\n// @__NO_SIDE_EFFECTS__\nfunction W(e) {\n return K?.get(e);\n}\nlet X;\n// @__NO_SIDE_EFFECTS__\nfunction J(e) {\n return X?.get(e);\n}\nlet q;\n// @__NO_SIDE_EFFECTS__\nfunction Q(e, r) {\n return q?.get(e)?.get(r);\n}\n// @__NO_SIDE_EFFECTS__\nfunction U(e) {\n const r = typeof e;\n return r === \"string\" ? `\"${e}\"` : r === \"number\" || r === \"bigint\" || r === \"boolean\" ? `${e}` : r === \"object\" || r === \"function\" ? (e && Object.getPrototypeOf(e)?.constructor?.name) ?? \"null\" : r;\n}\nfunction g(e, r, t, n, s) {\n const o = s && \"input\" in s ? s.input : t.value, i = s?.expected ?? e.expects ?? null, u = s?.received ?? /* @__PURE__ */ U(o), a = {\n kind: e.kind,\n type: e.type,\n input: o,\n expected: i,\n received: u,\n message: `Invalid ${r}: ${i ? `Expected ${i} but r` : \"R\"}eceived ${u}`,\n requirement: e.requirement,\n path: s?.path,\n issues: s?.issues,\n lang: n.lang,\n abortEarly: n.abortEarly,\n abortPipeEarly: n.abortPipeEarly\n }, p = e.kind === \"schema\", d = s?.message ?? e.message ?? /* @__PURE__ */ Q(e.reference, a.lang) ?? (p ? /* @__PURE__ */ J(a.lang) : null) ?? n.message ?? /* @__PURE__ */ W(a.lang);\n d !== void 0 && (a.message = typeof d == \"function\" ? d(a) : d), p && (t.typed = !1), t.issues ? t.issues.push(a) : t.issues = [a];\n}\n// @__NO_SIDE_EFFECTS__\nfunction h(e) {\n return {\n version: 1,\n vendor: \"valibot\",\n validate(r) {\n return e[\"~run\"]({ value: r }, /* @__PURE__ */ H());\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction Y(e, r) {\n return Object.hasOwn(e, r) && r !== \"__proto__\" && r !== \"prototype\" && r !== \"constructor\";\n}\n// @__NO_SIDE_EFFECTS__\nfunction Z(e, r) {\n const t = [...new Set(e)];\n return t.length > 1 ? `(${t.join(` ${r} `)})` : t[0] ?? \"never\";\n}\n// @__NO_SIDE_EFFECTS__\nfunction ee(e, r, t) {\n return typeof e.fallback == \"function\" ? e.fallback(r, t) : e.fallback;\n}\n// @__NO_SIDE_EFFECTS__\nfunction A(e, r, t) {\n return typeof e.default == \"function\" ? e.default(r, t) : e.default;\n}\n// @__NO_SIDE_EFFECTS__\nfunction x(e, r) {\n return {\n kind: \"schema\",\n type: \"array\",\n reference: x,\n expects: \"Array\",\n async: !1,\n item: e,\n message: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n const s = t.value;\n if (Array.isArray(s)) {\n t.typed = !0, t.value = [];\n for (let o = 0; o < s.length; o++) {\n const i = s[o], u = this.item[\"~run\"]({ value: i }, n);\n if (u.issues) {\n const a = {\n type: \"array\",\n origin: \"value\",\n input: s,\n key: o,\n value: i\n };\n for (const p of u.issues)\n p.path ? p.path.unshift(a) : p.path = [a], t.issues?.push(p);\n if (t.issues || (t.issues = u.issues), n.abortEarly) {\n t.typed = !1;\n break;\n }\n }\n u.typed || (t.typed = !1), t.value.push(u.value);\n }\n } else g(this, \"type\", t, n);\n return t;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction B(e) {\n return {\n kind: \"schema\",\n type: \"boolean\",\n reference: B,\n expects: \"boolean\",\n async: !1,\n message: e,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(r, t) {\n return typeof r.value == \"boolean\" ? r.typed = !0 : g(this, \"type\", r, t), r;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction k(e, r) {\n return {\n kind: \"schema\",\n type: \"literal\",\n reference: k,\n expects: /* @__PURE__ */ U(e),\n async: !1,\n literal: e,\n message: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n return t.value === this.literal ? t.typed = !0 : g(this, \"type\", t, n), t;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction y(e, r) {\n return {\n kind: \"schema\",\n type: \"nullable\",\n reference: y,\n expects: `(${e.expects} | null)`,\n async: !1,\n wrapped: e,\n default: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n return t.value === null && (this.default !== void 0 && (t.value = /* @__PURE__ */ A(this, t, n)), t.value === null) ? (t.typed = !0, t) : this.wrapped[\"~run\"](t, n);\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction D(e) {\n return {\n kind: \"schema\",\n type: \"number\",\n reference: D,\n expects: \"number\",\n async: !1,\n message: e,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(r, t) {\n return typeof r.value == \"number\" && !isNaN(r.value) ? r.typed = !0 : g(this, \"type\", r, t), r;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction b(e, r) {\n return {\n kind: \"schema\",\n type: \"object\",\n reference: b,\n expects: \"Object\",\n async: !1,\n entries: e,\n message: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n const s = t.value;\n if (s && typeof s == \"object\") {\n t.typed = !0, t.value = {};\n for (const o in this.entries) {\n const i = this.entries[o];\n if (o in s || (i.type === \"exact_optional\" || i.type === \"optional\" || i.type === \"nullish\") && i.default !== void 0) {\n const u = o in s ? s[o] : /* @__PURE__ */ A(i), a = i[\"~run\"]({ value: u }, n);\n if (a.issues) {\n const p = {\n type: \"object\",\n origin: \"value\",\n input: s,\n key: o,\n value: u\n };\n for (const d of a.issues)\n d.path ? d.path.unshift(p) : d.path = [p], t.issues?.push(d);\n if (t.issues || (t.issues = a.issues), n.abortEarly) {\n t.typed = !1;\n break;\n }\n }\n a.typed || (t.typed = !1), t.value[o] = a.value;\n } else if (i.fallback !== void 0) t.value[o] = /* @__PURE__ */ ee(i);\n else if (i.type !== \"exact_optional\" && i.type !== \"optional\" && i.type !== \"nullish\" && (g(this, \"key\", t, n, {\n input: void 0,\n expected: `\"${o}\"`,\n path: [{\n type: \"object\",\n origin: \"key\",\n input: s,\n key: o,\n value: s[o]\n }]\n }), n.abortEarly))\n break;\n }\n } else g(this, \"type\", t, n);\n return t;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction f(e, r) {\n return {\n kind: \"schema\",\n type: \"optional\",\n reference: f,\n expects: `(${e.expects} | undefined)`,\n async: !1,\n wrapped: e,\n default: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n return t.value === void 0 && (this.default !== void 0 && (t.value = /* @__PURE__ */ A(this, t, n)), t.value === void 0) ? (t.typed = !0, t) : this.wrapped[\"~run\"](t, n);\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction R(e, r, t) {\n return {\n kind: \"schema\",\n type: \"record\",\n reference: R,\n expects: \"Object\",\n async: !1,\n key: e,\n value: r,\n message: t,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(n, s) {\n const o = n.value;\n if (o && typeof o == \"object\") {\n n.typed = !0, n.value = {};\n for (const i in o) if (/* @__PURE__ */ Y(o, i)) {\n const u = o[i], a = this.key[\"~run\"]({ value: i }, s);\n if (a.issues) {\n const d = {\n type: \"object\",\n origin: \"key\",\n input: o,\n key: i,\n value: u\n };\n for (const S of a.issues)\n S.path = [d], n.issues?.push(S);\n if (n.issues || (n.issues = a.issues), s.abortEarly) {\n n.typed = !1;\n break;\n }\n }\n const p = this.value[\"~run\"]({ value: u }, s);\n if (p.issues) {\n const d = {\n type: \"object\",\n origin: \"value\",\n input: o,\n key: i,\n value: u\n };\n for (const S of p.issues)\n S.path ? S.path.unshift(d) : S.path = [d], n.issues?.push(S);\n if (n.issues || (n.issues = p.issues), s.abortEarly) {\n n.typed = !1;\n break;\n }\n }\n (!a.typed || !p.typed) && (n.typed = !1), a.typed && (n.value[a.value] = p.value);\n }\n } else g(this, \"type\", n, s);\n return n;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction l(e) {\n return {\n kind: \"schema\",\n type: \"string\",\n reference: l,\n expects: \"string\",\n async: !1,\n message: e,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(r, t) {\n return typeof r.value == \"string\" ? r.typed = !0 : g(this, \"type\", r, t), r;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction _(e) {\n let r;\n if (e) for (const t of e) r ? r.push(...t.issues) : r = t.issues;\n return r;\n}\n// @__NO_SIDE_EFFECTS__\nfunction G(e, r) {\n return {\n kind: \"schema\",\n type: \"union\",\n reference: G,\n expects: /* @__PURE__ */ Z(e.map((t) => t.expects), \"|\"),\n async: !1,\n options: e,\n message: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n let s, o, i;\n for (const u of this.options) {\n const a = u[\"~run\"]({ value: t.value }, n);\n if (a.typed) if (a.issues) o ? o.push(a) : o = [a];\n else {\n s = a;\n break;\n }\n else i ? i.push(a) : i = [a];\n }\n if (s) return s;\n if (o) {\n if (o.length === 1) return o[0];\n g(this, \"type\", t, n, { issues: /* @__PURE__ */ _(o) }), t.typed = !0;\n } else {\n if (i?.length === 1) return i[0];\n g(this, \"type\", t, n, { issues: /* @__PURE__ */ _(i) });\n }\n return t;\n }\n };\n}\nconst v = (e) => /* @__PURE__ */ G(e.map((r) => /* @__PURE__ */ k(r))), te = /* @__PURE__ */ b({\n \"en-au\": /* @__PURE__ */ l(),\n \"en-gb\": /* @__PURE__ */ l(),\n \"en-us\": /* @__PURE__ */ l(),\n \"es-es\": /* @__PURE__ */ l()\n}), O = /* @__PURE__ */ b({\n \"en-au\": /* @__PURE__ */ f(/* @__PURE__ */ l()),\n \"en-gb\": /* @__PURE__ */ f(/* @__PURE__ */ l()),\n \"en-us\": /* @__PURE__ */ f(/* @__PURE__ */ l()),\n \"es-es\": /* @__PURE__ */ f(/* @__PURE__ */ l())\n}), re = v([\"amber\", \"green\", \"red\", \"other\"]), ne = v([\n \"alpha\",\n \"beta\",\n \"generalAvailability\",\n \"notApplicable\",\n \"preAlpha\",\n \"proposed\",\n \"releaseCandidate\",\n \"unavailable\",\n \"underReview\"\n]), se = v([\n \"app\",\n \"connector\",\n \"connectorConnection\",\n \"context\",\n \"contextModelGroup\",\n \"contextModel\",\n \"contextModelDimensionGroup\",\n \"contextModelDimension\",\n \"contextModelDimensionHierarchy\",\n \"contextModelEntityGroup\",\n \"contextModelEntity\",\n \"contextModelEntityDataItem\",\n \"contextModelEntityEvent\",\n \"contextModelEntityPrimaryMeasure\",\n \"contextModelSecondaryMeasureGroup\",\n \"contextModelSecondaryMeasure\",\n \"dataView\",\n \"dimension\",\n \"engine\",\n \"eventQuery\",\n \"presenter\",\n \"presenterPresentation\",\n \"tool\"\n]);\nv([\"app\", \"engine\", \"connector\", \"context\", \"presenter\", \"tool\"]);\nconst oe = /* @__PURE__ */ b({\n id: /* @__PURE__ */ l(),\n color: re,\n label: /* @__PURE__ */ l()\n}), T = {\n id: /* @__PURE__ */ l(),\n label: O,\n description: O,\n firstCreatedAt: /* @__PURE__ */ f(/* @__PURE__ */ D()),\n icon: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n iconDark: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n lastUpdatedAt: /* @__PURE__ */ y(/* @__PURE__ */ D()),\n status: /* @__PURE__ */ y(oe),\n statusId: ne\n}, De = /* @__PURE__ */ b({\n ...T,\n typeId: se\n}), $ = {\n ...T,\n version: /* @__PURE__ */ l()\n}, P = /* @__PURE__ */ b({\n id: /* @__PURE__ */ l(),\n label: O,\n description: O,\n icon: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n iconDark: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n order: /* @__PURE__ */ D(),\n path: /* @__PURE__ */ l()\n}), E = (e) => {\n const r = Object.entries(e).filter((t) => typeof t[1] == \"string\");\n return new Map(r);\n}, ie = (e, r, t = I) => {\n const n = e.get(r);\n if (n !== void 0) return n;\n if (t !== r)\n return e.get(t);\n}, ae = [\n { id: \"alpha\", color: \"red\", labels: E({ \"en-gb\": \"alpha\" }) },\n { id: \"beta\", color: \"amber\", labels: E({ \"en-gb\": \"beta\" }) },\n { id: \"generalAvailability\", color: \"green\", labels: E({ \"en-gb\": \"\" }) },\n { id: \"notApplicable\", color: \"green\", labels: E({ \"en-gb\": \"not-applicable\" }) },\n { id: \"preAlpha\", color: \"red\", labels: E({ \"en-gb\": \"pre-alpha\" }) },\n { id: \"proposed\", color: \"other\", labels: E({ \"en-gb\": \"proposed\" }) },\n { id: \"releaseCandidate\", color: \"green\", labels: E({ \"en-gb\": \"release-candidate\" }) },\n { id: \"unavailable\", color: \"other\", labels: E({ \"en-gb\": \"unavailable\" }) },\n { id: \"underReview\", color: \"other\", labels: E({ \"en-gb\": \"under-review\" }) }\n], ke = (e, r = I) => {\n const t = ae.find((n) => n.id === e);\n if (t) {\n const n = ie(t.labels, r);\n return { id: t.id, color: t.color, label: n ?? t.id };\n }\n return { id: e, color: \"other\", label: e };\n}, le = v([\"application\", \"curatedDataset\", \"database\", \"fileStore\"]), ce = v([\n \"abortOperation\",\n \"authenticateConnection\",\n \"createObject\",\n \"describeConnection\",\n \"dropObject\",\n \"findObject\",\n \"getReader\",\n \"getRecord\",\n \"listNodes\",\n \"previewObject\",\n \"removeRecords\",\n \"retrieveRecords\",\n \"upsertRecords\"\n]), ue = v([\"bidirectional\", \"destination\", \"source\", \"unknown\"]), pe = v([\"apiKey\", \"disabled\", \"oAuth2\", \"none\"]), de = /* @__PURE__ */ b({\n id: /* @__PURE__ */ l(),\n label: /* @__PURE__ */ l()\n}), fe = /* @__PURE__ */ b({\n authMethodId: pe,\n activeConnectionCount: /* @__PURE__ */ f(/* @__PURE__ */ D()),\n canDescribe: /* @__PURE__ */ f(/* @__PURE__ */ B()),\n id: /* @__PURE__ */ f(/* @__PURE__ */ l()),\n label: /* @__PURE__ */ f(te),\n maxConnectionCount: /* @__PURE__ */ f(/* @__PURE__ */ D()),\n params: /* @__PURE__ */ f(/* @__PURE__ */ x(/* @__PURE__ */ R(/* @__PURE__ */ l(), /* @__PURE__ */ l())))\n}), we = /* @__PURE__ */ b({\n ...$,\n typeId: /* @__PURE__ */ k(\"connector\"),\n category: /* @__PURE__ */ y(de),\n categoryId: le,\n implementations: /* @__PURE__ */ R(/* @__PURE__ */ l(), fe),\n operations: /* @__PURE__ */ x(ce),\n usageId: ue,\n vendorAccountURL: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n vendorDocumentationURL: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n vendorHomeURL: /* @__PURE__ */ y(/* @__PURE__ */ l())\n}), Ie = [\"createObject\", \"dropObject\", \"removeRecords\", \"upsertRecords\"], Me = [\"findObject\", \"getRecord\", \"listNodes\", \"previewObject\", \"retrieveRecords\"], M = (e) => {\n const r = Object.entries(e).filter((t) => typeof t[1] == \"string\");\n return new Map(r);\n};\nM({ \"en-gb\": \"Application\" }), M({ \"en-gb\": \"Curated Dataset\" }), M({ \"en-gb\": \"Database\" }), M({ \"en-gb\": \"File Store\" });\nconst me = v([\"list\"]), be = /* @__PURE__ */ b({\n ...T,\n typeId: /* @__PURE__ */ k(\"contextModelGroup\"),\n modelRefs: /* @__PURE__ */ x(P),\n order: /* @__PURE__ */ D()\n}), Oe = /* @__PURE__ */ b({\n ...$,\n typeId: /* @__PURE__ */ k(\"context\"),\n models: /* @__PURE__ */ x(be),\n operations: /* @__PURE__ */ x(me)\n});\nclass F extends Error {\n locator;\n constructor(r, t, n) {\n super(r, n), this.name = \"DataPosError\", this.locator = t;\n }\n}\nclass w extends F {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"ApplicationError\";\n }\n}\nclass Ce extends w {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"APIError\";\n }\n}\nclass Ne extends w {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"EngineError\";\n }\n}\nclass z extends w {\n body;\n constructor(r, t, n, s) {\n super(r, t, s), this.name = \"FetchError\", this.body = n;\n }\n}\nclass ye extends w {\n componentName;\n info;\n constructor(r, t, n, s, o) {\n super(r, t, o), this.name = \"VueHandledError\", this.info = n, this.componentName = s;\n }\n}\nclass je extends w {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"WindowHandledRuntimeError\";\n }\n}\nclass Ae extends w {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"WindowHandledPromiseRejectionError\";\n }\n}\nclass Re extends F {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"OperationalError\";\n }\n}\nasync function Te(e, r, t) {\n const n = ` - ${e.statusText}`, s = `${r} Response status '${e.status}${e.statusText ? n : \"\"}' received.`, o = await e.text();\n return new z(s, t, o);\n}\nfunction $e(e) {\n return e.map((r) => r.message).join(\" \");\n}\nfunction Fe(e) {\n if (e instanceof Error) return e;\n if (typeof e == \"string\") return new Error(e);\n if (typeof e == \"number\" || typeof e == \"boolean\" || typeof e == \"bigint\") return new Error(String(e));\n if (typeof e == \"symbol\") return new Error(e.description ?? \"Unknown error\");\n if (e && typeof e == \"object\")\n try {\n return new Error(JSON.stringify(e));\n } catch {\n return new Error(\"Unknown error\");\n }\n return new Error(\"Unknown error\");\n}\nfunction Le(e) {\n const r = /* @__PURE__ */ new Set(), t = [];\n let n = e;\n for (; n && !r.has(n); ) {\n r.add(n);\n let s;\n if (n instanceof z)\n s = { body: n.body, locator: n.locator, message: n.message, name: n.name, stack: n.stack }, n = n.cause;\n else if (n instanceof ye)\n s = { componentName: n.componentName, info: n.info, locator: n.locator, message: n.message, name: n.name, stack: n.stack }, n = n.cause;\n else if (n instanceof F)\n s = { locator: n.locator, message: n.message, name: n.name, stack: n.stack }, n = n.cause;\n else if (n instanceof Error) {\n const o = n;\n s = { locator: \"\", message: o.message, name: o.name, stack: o.stack }, n = o.cause;\n } else\n s = { locator: \"\", message: String(n), name: \"Error\" }, n = void 0;\n /(?:\\.{3}|[.!?])$/.test(s.message) || (s.message += \".\"), t.push(s);\n }\n return t;\n}\nconst ge = v([\"list\", \"render\", \"setColorMode\"]), _e = /* @__PURE__ */ b({\n ...$,\n typeId: /* @__PURE__ */ k(\"presenter\"),\n presentations: /* @__PURE__ */ x(P),\n operations: /* @__PURE__ */ x(ge)\n});\nfunction Ue() {\n return { render: he };\n}\nfunction he(e, r, t) {\n t.textContent = \"Cytoscape.js diagram goes here...\";\n}\nfunction Be() {\n return { render: ve };\n}\nfunction ve(e, r) {\n console.log(1111, e), console.log(2222, r), console.log(3333, r.childNodes), console.log(4444, r.children);\n}\nconst V = \"en-US\", C = /* @__PURE__ */ new Map();\nfunction Ge(e) {\n switch (e) {\n case \"Edm.Binary\":\n return \"unknown\";\n // Binary...\n case \"Edm.Boolean\":\n return \"boolean\";\n case \"Edm.Byte\":\n return \"wholeNumber\";\n case \"Edm.DateTime\":\n return \"moment\";\n // DateTime...\n case \"Edm.DateTimeOffset\":\n return \"moment\";\n // DateTimeOffset...\n case \"Edm.Decimal\":\n return \"decimalNumber\";\n case \"Edm.Double\":\n return \"decimalNumber\";\n case \"Edm.Guid\":\n return \"string\";\n case \"Edm.Int16\":\n return \"wholeNumber\";\n case \"Edm.Int32\":\n return \"wholeNumber\";\n case \"Edm.Int64\":\n return \"wholeNumber\";\n case \"Edm.SByte\":\n return \"wholeNumber\";\n case \"Edm.Single\":\n return \"decimalNumber\";\n case \"Edm.String\":\n return \"string\";\n case \"Edm.Time\":\n return \"momentTime\";\n // Time...\n default:\n return \"unknown\";\n }\n}\nfunction Pe(e) {\n if (e) {\n const r = e.lastIndexOf(\"/\"), t = e.lastIndexOf(\".\", r === -1 ? e.length : r);\n return t === -1 ? e : e.slice(0, Math.max(0, t));\n }\n}\nfunction ze(e) {\n if (e) {\n const r = e.lastIndexOf(\".\");\n if (r !== -1) return e.slice(Math.max(0, r + 1));\n }\n}\nfunction m(e, r = 2, t = r, n = V) {\n if (e == null) return \"\";\n const s = `${n}decimal${r}.${t}`;\n let o = C.get(s);\n return o || (o = new Intl.NumberFormat(n, {\n localeMatcher: \"best fit\",\n maximumFractionDigits: r,\n minimumFractionDigits: t,\n minimumIntegerDigits: 1,\n style: \"decimal\",\n useGrouping: !0\n }), C.set(s, o)), o.format(e);\n}\nfunction Ve(e) {\n return e == null ? \"\" : e < 1e3 ? N(e) : e < 1e6 ? `${m(e / 1e3, 2, 0)}K` : e < 1e9 ? `${m(e / 1e6, 2, 0)}M` : e < 1e12 ? `${m(e / 1e9, 2, 0)}B` : `${m(e / 1e12, 2, 0)}T`;\n}\nfunction He(e) {\n return e == null ? \"\" : e === 1 ? \"1 byte\" : e < 1024 ? `${N(e)} bytes` : e < 1048576 ? `${m(e / 1024, 2, 0)} KB` : e < 1073741824 ? `${m(e / 1048576, 2, 0)} MB` : e < 1099511627776 ? `${m(e / 1073741824, 2, 0)} GB` : `${m(e / 1099511627776, 2, 0)} TB`;\n}\nfunction Ke(e) {\n return e == null ? \"\" : e < 1e3 ? `${N(e)} ms` : e === 1e3 ? `${N(e)} sec` : e < 6e4 ? `${m(e / 1e3, 2, 0)} secs` : e === 6e4 ? \"1 min\" : e < 36e5 ? `${m(e / 6e4, 2, 0)} mins` : e === 36e5 ? \"1 hr\" : e < 864e5 ? `${m(e / 36e5, 2, 0)} hrs` : e === 864e5 ? \"1 day\" : `${m(e / 864e5, 2, 0)} days`;\n}\nfunction N(e, r = V) {\n if (e == null) return \"\";\n const t = `${r}decimal0.0`;\n let n = C.get(t);\n return n || (n = new Intl.NumberFormat(r, {\n localeMatcher: \"best fit\",\n maximumFractionDigits: 0,\n minimumFractionDigits: 0,\n minimumIntegerDigits: 1,\n style: \"decimal\",\n useGrouping: !0\n }), C.set(t, n)), n.format(e);\n}\nfunction We(e) {\n switch (e) {\n case \"csv\":\n return \"text/csv\";\n case \"tab\":\n case \"tsv\":\n return \"text/tab-separated-values\";\n case \"xls\":\n return \"application/vnd.ms-excel\";\n case \"xlsx\":\n return \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\";\n default:\n return \"application/octet-stream\";\n }\n}\nconst c = (e) => new Map(Object.entries(e)), L = (e, r, t = I) => {\n const n = e.get(r);\n if (n !== void 0) return n;\n if (t !== r)\n return e.get(t);\n}, Ee = [\n { id: \"dtv\", labels: c({ \"en-gb\": \"Delimited Text\" }) },\n { id: \"e/e\", labels: c({ \"en-gb\": \"Entity/Event\" }) },\n { id: \"jsonArray\", labels: c({ \"en-gb\": \"JSON Array\" }) },\n { id: \"spss\", labels: c({ \"en-gb\": \"SPSS\" }) },\n { id: \"xls\", labels: c({ \"en-gb\": \"XLS\" }) },\n { id: \"xlsx\", labels: c({ \"en-gb\": \"XLSX\" }) },\n { id: \"xml\", labels: c({ \"en-gb\": \"XML\" }) }\n], Xe = (e = I) => {\n const r = [];\n for (const t of Ee) {\n const n = L(t.labels, e);\n r.push({ id: t.id, label: n ?? t.id });\n }\n return r;\n}, xe = [\n { id: `\n`, labels: c({ \"en-gb\": \"Newline\" }) },\n { id: \"\\r\", labels: c({ \"en-gb\": \"Carriage Return\" }) },\n { id: `\\r\n`, labels: c({ \"en-gb\": \"Carriage Return/Newline\" }) }\n], Je = (e = I) => {\n const r = [];\n for (const t of xe) {\n const n = L(t.labels, e);\n r.push({ id: t.id, label: n ?? t.id });\n }\n return r;\n}, Se = [\n { id: \":\", labels: c({ \"en-gb\": \"Colon\" }) },\n { id: \",\", labels: c({ \"en-gb\": \"Comma\" }) },\n { id: \"!\", labels: c({ \"en-gb\": \"Exclamation Mark\" }) },\n // { id: '', label: { 'en-gb': 'Other' } }, // TODO: Maybe set this to a 'not printing' or special ascii character when there is a user supplied delimited, rather than ''?\n { id: \"0x1E\", labels: c({ \"en-gb\": \"Record Separator\" }) },\n { id: \";\", labels: c({ \"en-gb\": \"Semicolon\" }) },\n { id: \" \", labels: c({ \"en-gb\": \"Space\" }) },\n { id: \"\t\", labels: c({ \"en-gb\": \"Tab\" }) },\n { id: \"_\", labels: c({ \"en-gb\": \"Underscore\" }) },\n { id: \"0x1F\", labels: c({ \"en-gb\": \"Unit Separator\" }) },\n { id: \"|\", labels: c({ \"en-gb\": \"Vertical Bar\" }) }\n], qe = (e = I) => {\n const r = [];\n for (const t of Se) {\n const n = L(t.labels, e);\n r.push({ id: t.id, label: n ?? t.id });\n }\n return r;\n}, I = \"en-gb\";\nexport {\n Ce as APIError,\n w as ApplicationError,\n Ie as CONNECTOR_DESTINATION_OPERATIONS,\n Me as CONNECTOR_SOURCE_OPERATIONS,\n I as DEFAULT_LOCALE_CODE,\n Ne as EngineError,\n z as FetchError,\n Re as OperationalError,\n ye as VueError,\n Ae as WindowPromiseRejectionError,\n je as WindowRuntimeError,\n Te as buildFetchError,\n De as componentConfigSchema,\n $e as concatenateSerialisedErrorMessages,\n we as connectorConfigSchema,\n Oe as contextConfigSchema,\n Ge as convertODataTypeIdToUsageTypeId,\n ze as extractExtensionFromPath,\n Pe as extractNameFromPath,\n m as formatNumberAsDecimalNumber,\n Ke as formatNumberAsDuration,\n Ve as formatNumberAsSize,\n He as formatNumberAsStorageSize,\n N as formatNumberAsWholeNumber,\n ke as getComponentStatus,\n Xe as getDataFormats,\n Je as getRecordDelimiters,\n qe as getValueDelimiters,\n We as lookupMimeTypeForExtension,\n Fe as normalizeToError,\n _e as presenterConfigSchema,\n Le as serialiseError,\n Ue as useCytoscapeJS,\n Be as useDataTable\n};\n","/*\n * File store emulator connector class.\n */\n\n// NOTE: Consider Cloudflare R2 Download URL: https://plugins-eu.datapositioning.app/connectors/datapos-connector-file-store-emulator-es.js. This would allow us to secure the bucket?\n\n// Dependencies - Vendor.\nimport type { HeadersInit } from 'undici';\n\n/** Dependencies - Framework. */\nimport { normalizeToError } from '@datapos/datapos-shared';\nimport type {\n ConnectionConfig,\n ConnectionNodeConfig,\n Connector,\n ConnectorConfig,\n ConnectorTools,\n FindResult,\n FindSettings,\n GetReaderResult,\n GetReaderSettings,\n ListResult,\n ListSettings,\n PreviewResult,\n PreviewSettings,\n RetrieveSettings,\n RetrieveSummary\n} from '@datapos/datapos-shared';\n\n/** Dependencies - Data. */\nimport config from '~/config.json';\nimport fileStoreIndex from '@/fileStoreIndex.json';\nimport { version } from '~/package.json';\n\n/** Interfaces/Types - File store index. */\ntype FileStoreIndexItem =\n | ({ typeId: 'folder'; childCount: number } & { name: string })\n | ({ typeId: 'object'; id: string; lastModifiedAt: number; size: number } & { name: string });\ntype FileStoreIndex = Record<string, FileStoreIndexItem[]>;\n\n/** Constants */\nconst CALLBACK_PREVIEW_ABORTED = 'Connector failed to abort preview object operation.';\nconst CALLBACK_RETRIEVE_ABORTED = 'Connector failed to abort retrieve all records operation.';\nconst DEFAULT_PREVIEW_CHUNK_SIZE = 4096;\nconst DEFAULT_RETRIEVE_CHUNK_SIZE = 1000;\nconst URL_PREFIX = 'https://sample-data-eu.datapos.app';\n\n/** Classes - File store emulator connector. */\nexport default class FileStoreEmulatorConnector implements Connector {\n abortController: AbortController | undefined;\n readonly config: ConnectorConfig;\n readonly connectionConfig: ConnectionConfig;\n readonly tools: ConnectorTools;\n\n constructor(connectionConfig: ConnectionConfig, tools: ConnectorTools) {\n this.abortController = undefined;\n this.config = config as ConnectorConfig;\n this.config.version = version;\n this.connectionConfig = connectionConfig;\n this.tools = tools;\n }\n\n // Operations - Abort operation.\n abortOperation(connector: FileStoreEmulatorConnector): void {\n if (!connector.abortController) return;\n connector.abortController.abort();\n connector.abortController = undefined;\n }\n\n // Operations - Find object.\n findObject(connector: FileStoreEmulatorConnector, settings: FindSettings): Promise<FindResult> {\n // Loop through the file store index checking for an object entry with an identifier equal to the object name.\n for (const folderPath in fileStoreIndex) {\n if (Object.prototype.hasOwnProperty.call(fileStoreIndex, folderPath)) {\n // eslint-disable-next-line security/detect-object-injection\n const indexItems = (fileStoreIndex as FileStoreIndex)[folderPath];\n const indexItem = indexItems?.find((indexItem) => indexItem.typeId === 'object' && indexItem.id === settings.objectName);\n if (indexItem) return Promise.resolve({ folderPath }); // Found, return folder path.\n }\n }\n return Promise.resolve({}); // Not found, return undefined folder path.\n }\n\n // Operations - Get reader.\n async getReader(connector: FileStoreEmulatorConnector, settings: GetReaderSettings): Promise<GetReaderResult> {\n try {\n console.log('getReader', 'connector', connector);\n console.log('getReader', 'settings', settings);\n const response = await fetch('https://sample-data-eu.datapos.app/fileStore/ENGAGEMENT_START_EVENTS_202405121858.csv');\n // const response = await fetch('https://sample-data-eu.datapos.app/WDI_Data.csv');\n console.log('getReader', 'response', response);\n if (!response.body) throw new Error('ReadableStream not supported by this browser.');\n\n return await Promise.resolve({ readable: response.body }); // Not found, return undefined folder path.\n } catch (error) {\n connector.abortController = undefined;\n throw error;\n }\n }\n\n // Operations - List nodes.\n listNodes(connector: FileStoreEmulatorConnector, settings: ListSettings): Promise<ListResult> {\n const indexItems = (fileStoreIndex as FileStoreIndex)[settings.folderPath] ?? [];\n const connectionNodeConfigs: ConnectionNodeConfig[] = [];\n for (const indexItem of indexItems) {\n if (indexItem.typeId === 'folder') {\n connectionNodeConfigs.push(this.constructFolderNodeConfig(settings.folderPath, indexItem.name, indexItem.childCount));\n } else {\n connectionNodeConfigs.push(this.constructObjectNodeConfig(settings.folderPath, indexItem.id, indexItem.name, indexItem.lastModifiedAt, indexItem.size));\n }\n }\n return Promise.resolve({ cursor: undefined, isMore: false, connectionNodeConfigs, totalCount: connectionNodeConfigs.length });\n }\n\n // Operations - Preview object.\n async previewObject(connector: FileStoreEmulatorConnector, settings: PreviewSettings): Promise<PreviewResult> {\n try {\n // Create an abort controller. Get the signal for the abort controller and add an abort listener.\n connector.abortController = new AbortController();\n const signal = connector.abortController.signal;\n signal.addEventListener('abort', () => {\n throw new this.tools.dataPos.OperationalError(CALLBACK_PREVIEW_ABORTED, 'datapos-connector-file-store-emulator|Connector|preview.abort');\n });\n\n // Fetch chunk from start of file.\n const url = `${URL_PREFIX}/fileStore${settings.path}`;\n const headers: HeadersInit = { Range: `bytes=0-${settings.chunkSize != null || DEFAULT_PREVIEW_CHUNK_SIZE}` };\n const response = await fetch(encodeURI(url), { headers, signal });\n if (response.ok) {\n connector.abortController = undefined;\n return { data: new Uint8Array(await response.arrayBuffer()), typeId: 'uint8Array' };\n } else {\n throw await this.tools.dataPos.buildFetchError(response, `Failed to fetch '${settings.path}' file.`, 'datapos-connector-file-store-emulator|Connector|preview');\n }\n } catch (error) {\n connector.abortController = undefined;\n throw error;\n }\n }\n\n // Operations - Retrieve records.\n async retrieveRecords(\n connector: FileStoreEmulatorConnector,\n settings: RetrieveSettings,\n chunk: (records: string[][]) => void,\n complete: (result: RetrieveSummary) => void\n ): Promise<void> {\n return new Promise((resolve, reject) => {\n try {\n // Create an abort controller and get the signal. Add an abort listener to the signal.\n connector.abortController = new AbortController();\n const signal = connector.abortController.signal;\n signal.addEventListener(\n 'abort',\n () => {\n connector.abortController = undefined;\n reject(new connector.tools.dataPos.OperationalError(CALLBACK_RETRIEVE_ABORTED, 'datapos-connector-file-store-emulator|Connector|retrieve.abort'));\n },\n { once: true }\n );\n\n // Parser - Declare variables.\n let pendingRows: string[][] = []; // Array to store rows of parsed field values and associated information.\n\n // Parser - Create a parser object for CSV parsing.\n const parser = connector.tools.csvParse({\n delimiter: settings.valueDelimiterId,\n info: true,\n relax_column_count: true,\n relax_quotes: true\n });\n\n // Parser - Event listener for the 'readable' (data available) event.\n parser.on('readable', () => {\n try {\n let data: string[] | null;\n while ((data = parser.read() as string[] | null) !== null) {\n signal.throwIfAborted(); // Check if the abort signal has been triggered.\n pendingRows.push(data); // Append the row of parsed values and associated information to the pending rows array.\n if (pendingRows.length < DEFAULT_RETRIEVE_CHUNK_SIZE) continue; // Continue with next iteration if the pending rows array is not yet full.\n chunk([]); // Pass the pending rows to the engine using the 'chunk' callback.\n pendingRows = []; // Clear the pending rows array in preparation for the next batch of data.\n }\n } catch (error) {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n }\n });\n\n // Parser - Event listener for the 'error' event.\n parser.on('error', (error) => {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n });\n\n // Parser - Event listener for the 'end' (end of data) event.\n parser.on('end', () => {\n try {\n signal.throwIfAborted(); // Check if the abort signal has been triggered.\n connector.abortController = undefined; // Clear the abort controller.\n if (pendingRows.length > 0) {\n chunk([]);\n pendingRows = [];\n }\n complete({\n byteCount: parser.info.bytes,\n commentLineCount: parser.info.comment_lines,\n emptyLineCount: parser.info.empty_lines,\n invalidFieldLengthCount: parser.info.invalid_field_length,\n lineCount: parser.info.lines,\n recordCount: parser.info.records\n });\n resolve();\n } catch (error) {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n }\n });\n\n // Fetch, decode and forward the contents of the file to the parser.\n const url = `${URL_PREFIX}/fileStore${settings.path}`;\n fetch(encodeURI(url), { signal })\n .then(async (response) => {\n try {\n if (response.ok && response.body) {\n const stream = response.body.pipeThrough(new TextDecoderStream(settings.encodingId));\n const decodedStreamReader = stream.getReader();\n let result = await decodedStreamReader.read();\n while (!result.done) {\n signal.throwIfAborted(); // Check if the abort signal has been triggered.\n // Write the decoded data to the parser and terminate if there is an error.\n parser.write(result.value, (error) => {\n if (error) {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n }\n });\n result = await decodedStreamReader.read();\n }\n parser.end(); // Signal no more data will be written.\n } else {\n const error = await connector.tools.dataPos.buildFetchError(\n response,\n `Failed to fetch '${settings.path}' file.`,\n 'datapos-connector-file-store-emulator|Connector|retrieve'\n );\n connector.abortController = undefined;\n reject(error);\n }\n } catch (error) {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n }\n })\n .catch((error: unknown) => {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n });\n } catch (error) {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n }\n });\n }\n\n /** Utilities - Construct folder node configuration. */\n private constructFolderNodeConfig(folderPath: string, name: string, childCount: number): ConnectionNodeConfig {\n return { id: this.tools.nanoid(), childCount, folderPath, label: name, name, typeId: 'folder' };\n }\n\n /** Utilities - Construct object (file) node configuration. */\n private constructObjectNodeConfig(folderPath: string, id: string, fullName: string, lastModifiedAt: number, size: number): ConnectionNodeConfig {\n const name = this.tools.dataPos.extractNameFromPath(fullName) ?? '';\n const extension = this.tools.dataPos.extractExtensionFromPath(fullName);\n const lastModifiedAtTimestamp = lastModifiedAt;\n const mimeType = this.tools.dataPos.lookupMimeTypeForExtension(extension);\n return { id, extension, folderPath, label: fullName, lastModifiedAt: lastModifiedAtTimestamp, mimeType, name, size, typeId: 'object' };\n }\n}\n"],"names":["j","H","e","K","W","X","J","q","Q","r","U","g","t","n","s","o","i","u","a","p","d","h","Z","k","_","G","v","E","M","Fe","CALLBACK_PREVIEW_ABORTED","CALLBACK_RETRIEVE_ABORTED","DEFAULT_PREVIEW_CHUNK_SIZE","DEFAULT_RETRIEVE_CHUNK_SIZE","URL_PREFIX","FileStoreEmulatorConnector","connectionConfig","tools","config","version","connector","settings","folderPath","fileStoreIndex","indexItem","response","error","indexItems","connectionNodeConfigs","signal","url","headers","chunk","complete","resolve","reject","pendingRows","parser","data","normalizeToError","decodedStreamReader","result","name","childCount","id","fullName","lastModifiedAt","size","extension","lastModifiedAtTimestamp","mimeType"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"datapos-connector-file-store-emulator.es.js","sources":["../node_modules/@datapos/datapos-shared/dist/datapos-shared.es.js","../src/rustBridge.ts","../src/index.ts"],"sourcesContent":["let j;\n// @__NO_SIDE_EFFECTS__\nfunction H(e) {\n return {\n lang: e?.lang ?? j?.lang,\n message: e?.message,\n abortEarly: e?.abortEarly ?? j?.abortEarly,\n abortPipeEarly: e?.abortPipeEarly ?? j?.abortPipeEarly\n };\n}\nlet K;\n// @__NO_SIDE_EFFECTS__\nfunction W(e) {\n return K?.get(e);\n}\nlet X;\n// @__NO_SIDE_EFFECTS__\nfunction J(e) {\n return X?.get(e);\n}\nlet q;\n// @__NO_SIDE_EFFECTS__\nfunction Q(e, r) {\n return q?.get(e)?.get(r);\n}\n// @__NO_SIDE_EFFECTS__\nfunction U(e) {\n const r = typeof e;\n return r === \"string\" ? `\"${e}\"` : r === \"number\" || r === \"bigint\" || r === \"boolean\" ? `${e}` : r === \"object\" || r === \"function\" ? (e && Object.getPrototypeOf(e)?.constructor?.name) ?? \"null\" : r;\n}\nfunction g(e, r, t, n, s) {\n const o = s && \"input\" in s ? s.input : t.value, i = s?.expected ?? e.expects ?? null, u = s?.received ?? /* @__PURE__ */ U(o), a = {\n kind: e.kind,\n type: e.type,\n input: o,\n expected: i,\n received: u,\n message: `Invalid ${r}: ${i ? `Expected ${i} but r` : \"R\"}eceived ${u}`,\n requirement: e.requirement,\n path: s?.path,\n issues: s?.issues,\n lang: n.lang,\n abortEarly: n.abortEarly,\n abortPipeEarly: n.abortPipeEarly\n }, p = e.kind === \"schema\", d = s?.message ?? e.message ?? /* @__PURE__ */ Q(e.reference, a.lang) ?? (p ? /* @__PURE__ */ J(a.lang) : null) ?? n.message ?? /* @__PURE__ */ W(a.lang);\n d !== void 0 && (a.message = typeof d == \"function\" ? d(a) : d), p && (t.typed = !1), t.issues ? t.issues.push(a) : t.issues = [a];\n}\n// @__NO_SIDE_EFFECTS__\nfunction h(e) {\n return {\n version: 1,\n vendor: \"valibot\",\n validate(r) {\n return e[\"~run\"]({ value: r }, /* @__PURE__ */ H());\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction Y(e, r) {\n return Object.hasOwn(e, r) && r !== \"__proto__\" && r !== \"prototype\" && r !== \"constructor\";\n}\n// @__NO_SIDE_EFFECTS__\nfunction Z(e, r) {\n const t = [...new Set(e)];\n return t.length > 1 ? `(${t.join(` ${r} `)})` : t[0] ?? \"never\";\n}\n// @__NO_SIDE_EFFECTS__\nfunction ee(e, r, t) {\n return typeof e.fallback == \"function\" ? e.fallback(r, t) : e.fallback;\n}\n// @__NO_SIDE_EFFECTS__\nfunction A(e, r, t) {\n return typeof e.default == \"function\" ? e.default(r, t) : e.default;\n}\n// @__NO_SIDE_EFFECTS__\nfunction x(e, r) {\n return {\n kind: \"schema\",\n type: \"array\",\n reference: x,\n expects: \"Array\",\n async: !1,\n item: e,\n message: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n const s = t.value;\n if (Array.isArray(s)) {\n t.typed = !0, t.value = [];\n for (let o = 0; o < s.length; o++) {\n const i = s[o], u = this.item[\"~run\"]({ value: i }, n);\n if (u.issues) {\n const a = {\n type: \"array\",\n origin: \"value\",\n input: s,\n key: o,\n value: i\n };\n for (const p of u.issues)\n p.path ? p.path.unshift(a) : p.path = [a], t.issues?.push(p);\n if (t.issues || (t.issues = u.issues), n.abortEarly) {\n t.typed = !1;\n break;\n }\n }\n u.typed || (t.typed = !1), t.value.push(u.value);\n }\n } else g(this, \"type\", t, n);\n return t;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction B(e) {\n return {\n kind: \"schema\",\n type: \"boolean\",\n reference: B,\n expects: \"boolean\",\n async: !1,\n message: e,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(r, t) {\n return typeof r.value == \"boolean\" ? r.typed = !0 : g(this, \"type\", r, t), r;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction k(e, r) {\n return {\n kind: \"schema\",\n type: \"literal\",\n reference: k,\n expects: /* @__PURE__ */ U(e),\n async: !1,\n literal: e,\n message: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n return t.value === this.literal ? t.typed = !0 : g(this, \"type\", t, n), t;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction y(e, r) {\n return {\n kind: \"schema\",\n type: \"nullable\",\n reference: y,\n expects: `(${e.expects} | null)`,\n async: !1,\n wrapped: e,\n default: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n return t.value === null && (this.default !== void 0 && (t.value = /* @__PURE__ */ A(this, t, n)), t.value === null) ? (t.typed = !0, t) : this.wrapped[\"~run\"](t, n);\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction D(e) {\n return {\n kind: \"schema\",\n type: \"number\",\n reference: D,\n expects: \"number\",\n async: !1,\n message: e,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(r, t) {\n return typeof r.value == \"number\" && !isNaN(r.value) ? r.typed = !0 : g(this, \"type\", r, t), r;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction b(e, r) {\n return {\n kind: \"schema\",\n type: \"object\",\n reference: b,\n expects: \"Object\",\n async: !1,\n entries: e,\n message: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n const s = t.value;\n if (s && typeof s == \"object\") {\n t.typed = !0, t.value = {};\n for (const o in this.entries) {\n const i = this.entries[o];\n if (o in s || (i.type === \"exact_optional\" || i.type === \"optional\" || i.type === \"nullish\") && i.default !== void 0) {\n const u = o in s ? s[o] : /* @__PURE__ */ A(i), a = i[\"~run\"]({ value: u }, n);\n if (a.issues) {\n const p = {\n type: \"object\",\n origin: \"value\",\n input: s,\n key: o,\n value: u\n };\n for (const d of a.issues)\n d.path ? d.path.unshift(p) : d.path = [p], t.issues?.push(d);\n if (t.issues || (t.issues = a.issues), n.abortEarly) {\n t.typed = !1;\n break;\n }\n }\n a.typed || (t.typed = !1), t.value[o] = a.value;\n } else if (i.fallback !== void 0) t.value[o] = /* @__PURE__ */ ee(i);\n else if (i.type !== \"exact_optional\" && i.type !== \"optional\" && i.type !== \"nullish\" && (g(this, \"key\", t, n, {\n input: void 0,\n expected: `\"${o}\"`,\n path: [{\n type: \"object\",\n origin: \"key\",\n input: s,\n key: o,\n value: s[o]\n }]\n }), n.abortEarly))\n break;\n }\n } else g(this, \"type\", t, n);\n return t;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction f(e, r) {\n return {\n kind: \"schema\",\n type: \"optional\",\n reference: f,\n expects: `(${e.expects} | undefined)`,\n async: !1,\n wrapped: e,\n default: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n return t.value === void 0 && (this.default !== void 0 && (t.value = /* @__PURE__ */ A(this, t, n)), t.value === void 0) ? (t.typed = !0, t) : this.wrapped[\"~run\"](t, n);\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction R(e, r, t) {\n return {\n kind: \"schema\",\n type: \"record\",\n reference: R,\n expects: \"Object\",\n async: !1,\n key: e,\n value: r,\n message: t,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(n, s) {\n const o = n.value;\n if (o && typeof o == \"object\") {\n n.typed = !0, n.value = {};\n for (const i in o) if (/* @__PURE__ */ Y(o, i)) {\n const u = o[i], a = this.key[\"~run\"]({ value: i }, s);\n if (a.issues) {\n const d = {\n type: \"object\",\n origin: \"key\",\n input: o,\n key: i,\n value: u\n };\n for (const S of a.issues)\n S.path = [d], n.issues?.push(S);\n if (n.issues || (n.issues = a.issues), s.abortEarly) {\n n.typed = !1;\n break;\n }\n }\n const p = this.value[\"~run\"]({ value: u }, s);\n if (p.issues) {\n const d = {\n type: \"object\",\n origin: \"value\",\n input: o,\n key: i,\n value: u\n };\n for (const S of p.issues)\n S.path ? S.path.unshift(d) : S.path = [d], n.issues?.push(S);\n if (n.issues || (n.issues = p.issues), s.abortEarly) {\n n.typed = !1;\n break;\n }\n }\n (!a.typed || !p.typed) && (n.typed = !1), a.typed && (n.value[a.value] = p.value);\n }\n } else g(this, \"type\", n, s);\n return n;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction l(e) {\n return {\n kind: \"schema\",\n type: \"string\",\n reference: l,\n expects: \"string\",\n async: !1,\n message: e,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(r, t) {\n return typeof r.value == \"string\" ? r.typed = !0 : g(this, \"type\", r, t), r;\n }\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction _(e) {\n let r;\n if (e) for (const t of e) r ? r.push(...t.issues) : r = t.issues;\n return r;\n}\n// @__NO_SIDE_EFFECTS__\nfunction G(e, r) {\n return {\n kind: \"schema\",\n type: \"union\",\n reference: G,\n expects: /* @__PURE__ */ Z(e.map((t) => t.expects), \"|\"),\n async: !1,\n options: e,\n message: r,\n get \"~standard\"() {\n return /* @__PURE__ */ h(this);\n },\n \"~run\"(t, n) {\n let s, o, i;\n for (const u of this.options) {\n const a = u[\"~run\"]({ value: t.value }, n);\n if (a.typed) if (a.issues) o ? o.push(a) : o = [a];\n else {\n s = a;\n break;\n }\n else i ? i.push(a) : i = [a];\n }\n if (s) return s;\n if (o) {\n if (o.length === 1) return o[0];\n g(this, \"type\", t, n, { issues: /* @__PURE__ */ _(o) }), t.typed = !0;\n } else {\n if (i?.length === 1) return i[0];\n g(this, \"type\", t, n, { issues: /* @__PURE__ */ _(i) });\n }\n return t;\n }\n };\n}\nconst v = (e) => /* @__PURE__ */ G(e.map((r) => /* @__PURE__ */ k(r))), te = /* @__PURE__ */ b({\n \"en-au\": /* @__PURE__ */ l(),\n \"en-gb\": /* @__PURE__ */ l(),\n \"en-us\": /* @__PURE__ */ l(),\n \"es-es\": /* @__PURE__ */ l()\n}), O = /* @__PURE__ */ b({\n \"en-au\": /* @__PURE__ */ f(/* @__PURE__ */ l()),\n \"en-gb\": /* @__PURE__ */ f(/* @__PURE__ */ l()),\n \"en-us\": /* @__PURE__ */ f(/* @__PURE__ */ l()),\n \"es-es\": /* @__PURE__ */ f(/* @__PURE__ */ l())\n}), re = v([\"amber\", \"green\", \"red\", \"other\"]), ne = v([\n \"alpha\",\n \"beta\",\n \"generalAvailability\",\n \"notApplicable\",\n \"preAlpha\",\n \"proposed\",\n \"releaseCandidate\",\n \"unavailable\",\n \"underReview\"\n]), se = v([\n \"app\",\n \"connector\",\n \"connectorConnection\",\n \"context\",\n \"contextModelGroup\",\n \"contextModel\",\n \"contextModelDimensionGroup\",\n \"contextModelDimension\",\n \"contextModelDimensionHierarchy\",\n \"contextModelEntityGroup\",\n \"contextModelEntity\",\n \"contextModelEntityDataItem\",\n \"contextModelEntityEvent\",\n \"contextModelEntityPrimaryMeasure\",\n \"contextModelSecondaryMeasureGroup\",\n \"contextModelSecondaryMeasure\",\n \"dataView\",\n \"dimension\",\n \"engine\",\n \"eventQuery\",\n \"presenter\",\n \"presenterPresentation\",\n \"tool\"\n]);\nv([\"app\", \"engine\", \"connector\", \"context\", \"presenter\", \"tool\"]);\nconst oe = /* @__PURE__ */ b({\n id: /* @__PURE__ */ l(),\n color: re,\n label: /* @__PURE__ */ l()\n}), T = {\n id: /* @__PURE__ */ l(),\n label: O,\n description: O,\n firstCreatedAt: /* @__PURE__ */ f(/* @__PURE__ */ D()),\n icon: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n iconDark: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n lastUpdatedAt: /* @__PURE__ */ y(/* @__PURE__ */ D()),\n status: /* @__PURE__ */ y(oe),\n statusId: ne\n}, De = /* @__PURE__ */ b({\n ...T,\n typeId: se\n}), $ = {\n ...T,\n version: /* @__PURE__ */ l()\n}, P = /* @__PURE__ */ b({\n id: /* @__PURE__ */ l(),\n label: O,\n description: O,\n icon: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n iconDark: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n order: /* @__PURE__ */ D(),\n path: /* @__PURE__ */ l()\n}), E = (e) => {\n const r = Object.entries(e).filter((t) => typeof t[1] == \"string\");\n return new Map(r);\n}, ie = (e, r, t = I) => {\n const n = e.get(r);\n if (n !== void 0) return n;\n if (t !== r)\n return e.get(t);\n}, ae = [\n { id: \"alpha\", color: \"red\", labels: E({ \"en-gb\": \"alpha\" }) },\n { id: \"beta\", color: \"amber\", labels: E({ \"en-gb\": \"beta\" }) },\n { id: \"generalAvailability\", color: \"green\", labels: E({ \"en-gb\": \"\" }) },\n { id: \"notApplicable\", color: \"green\", labels: E({ \"en-gb\": \"not-applicable\" }) },\n { id: \"preAlpha\", color: \"red\", labels: E({ \"en-gb\": \"pre-alpha\" }) },\n { id: \"proposed\", color: \"other\", labels: E({ \"en-gb\": \"proposed\" }) },\n { id: \"releaseCandidate\", color: \"green\", labels: E({ \"en-gb\": \"release-candidate\" }) },\n { id: \"unavailable\", color: \"other\", labels: E({ \"en-gb\": \"unavailable\" }) },\n { id: \"underReview\", color: \"other\", labels: E({ \"en-gb\": \"under-review\" }) }\n], ke = (e, r = I) => {\n const t = ae.find((n) => n.id === e);\n if (t) {\n const n = ie(t.labels, r);\n return { id: t.id, color: t.color, label: n ?? t.id };\n }\n return { id: e, color: \"other\", label: e };\n}, le = v([\"application\", \"curatedDataset\", \"database\", \"fileStore\"]), ce = v([\n \"abortOperation\",\n \"authenticateConnection\",\n \"createObject\",\n \"describeConnection\",\n \"dropObject\",\n \"findObject\",\n \"getReader\",\n \"getRecord\",\n \"listNodes\",\n \"previewObject\",\n \"removeRecords\",\n \"retrieveRecords\",\n \"upsertRecords\"\n]), ue = v([\"bidirectional\", \"destination\", \"source\", \"unknown\"]), pe = v([\"apiKey\", \"disabled\", \"oAuth2\", \"none\"]), de = /* @__PURE__ */ b({\n id: /* @__PURE__ */ l(),\n label: /* @__PURE__ */ l()\n}), fe = /* @__PURE__ */ b({\n authMethodId: pe,\n activeConnectionCount: /* @__PURE__ */ f(/* @__PURE__ */ D()),\n canDescribe: /* @__PURE__ */ f(/* @__PURE__ */ B()),\n id: /* @__PURE__ */ f(/* @__PURE__ */ l()),\n label: /* @__PURE__ */ f(te),\n maxConnectionCount: /* @__PURE__ */ f(/* @__PURE__ */ D()),\n params: /* @__PURE__ */ f(/* @__PURE__ */ x(/* @__PURE__ */ R(/* @__PURE__ */ l(), /* @__PURE__ */ l())))\n}), we = /* @__PURE__ */ b({\n ...$,\n typeId: /* @__PURE__ */ k(\"connector\"),\n category: /* @__PURE__ */ y(de),\n categoryId: le,\n implementations: /* @__PURE__ */ R(/* @__PURE__ */ l(), fe),\n operations: /* @__PURE__ */ x(ce),\n usageId: ue,\n vendorAccountURL: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n vendorDocumentationURL: /* @__PURE__ */ y(/* @__PURE__ */ l()),\n vendorHomeURL: /* @__PURE__ */ y(/* @__PURE__ */ l())\n}), Ie = [\"createObject\", \"dropObject\", \"removeRecords\", \"upsertRecords\"], Me = [\"findObject\", \"getRecord\", \"listNodes\", \"previewObject\", \"retrieveRecords\"], M = (e) => {\n const r = Object.entries(e).filter((t) => typeof t[1] == \"string\");\n return new Map(r);\n};\nM({ \"en-gb\": \"Application\" }), M({ \"en-gb\": \"Curated Dataset\" }), M({ \"en-gb\": \"Database\" }), M({ \"en-gb\": \"File Store\" });\nconst me = v([\"list\"]), be = /* @__PURE__ */ b({\n ...T,\n typeId: /* @__PURE__ */ k(\"contextModelGroup\"),\n modelRefs: /* @__PURE__ */ x(P),\n order: /* @__PURE__ */ D()\n}), Oe = /* @__PURE__ */ b({\n ...$,\n typeId: /* @__PURE__ */ k(\"context\"),\n models: /* @__PURE__ */ x(be),\n operations: /* @__PURE__ */ x(me)\n});\nclass F extends Error {\n locator;\n constructor(r, t, n) {\n super(r, n), this.name = \"DataPosError\", this.locator = t;\n }\n}\nclass w extends F {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"ApplicationError\";\n }\n}\nclass Ce extends w {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"APIError\";\n }\n}\nclass Ne extends w {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"EngineError\";\n }\n}\nclass z extends w {\n body;\n constructor(r, t, n, s) {\n super(r, t, s), this.name = \"FetchError\", this.body = n;\n }\n}\nclass ye extends w {\n componentName;\n info;\n constructor(r, t, n, s, o) {\n super(r, t, o), this.name = \"VueHandledError\", this.info = n, this.componentName = s;\n }\n}\nclass je extends w {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"WindowHandledRuntimeError\";\n }\n}\nclass Ae extends w {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"WindowHandledPromiseRejectionError\";\n }\n}\nclass Re extends F {\n constructor(r, t, n) {\n super(r, t, n), this.name = \"OperationalError\";\n }\n}\nasync function Te(e, r, t) {\n const n = ` - ${e.statusText}`, s = `${r} Response status '${e.status}${e.statusText ? n : \"\"}' received.`, o = await e.text();\n return new z(s, t, o);\n}\nfunction $e(e) {\n return e.map((r) => r.message).join(\" \");\n}\nfunction Fe(e) {\n if (e instanceof Error) return e;\n if (typeof e == \"string\") return new Error(e);\n if (typeof e == \"number\" || typeof e == \"boolean\" || typeof e == \"bigint\") return new Error(String(e));\n if (typeof e == \"symbol\") return new Error(e.description ?? \"Unknown error\");\n if (e && typeof e == \"object\")\n try {\n return new Error(JSON.stringify(e));\n } catch {\n return new Error(\"Unknown error\");\n }\n return new Error(\"Unknown error\");\n}\nfunction Le(e) {\n const r = /* @__PURE__ */ new Set(), t = [];\n let n = e;\n for (; n && !r.has(n); ) {\n r.add(n);\n let s;\n if (n instanceof z)\n s = { body: n.body, locator: n.locator, message: n.message, name: n.name, stack: n.stack }, n = n.cause;\n else if (n instanceof ye)\n s = { componentName: n.componentName, info: n.info, locator: n.locator, message: n.message, name: n.name, stack: n.stack }, n = n.cause;\n else if (n instanceof F)\n s = { locator: n.locator, message: n.message, name: n.name, stack: n.stack }, n = n.cause;\n else if (n instanceof Error) {\n const o = n;\n s = { locator: \"\", message: o.message, name: o.name, stack: o.stack }, n = o.cause;\n } else\n s = { locator: \"\", message: String(n), name: \"Error\" }, n = void 0;\n /(?:\\.{3}|[.!?])$/.test(s.message) || (s.message += \".\"), t.push(s);\n }\n return t;\n}\nconst ge = v([\"list\", \"render\", \"setColorMode\"]), _e = /* @__PURE__ */ b({\n ...$,\n typeId: /* @__PURE__ */ k(\"presenter\"),\n presentations: /* @__PURE__ */ x(P),\n operations: /* @__PURE__ */ x(ge)\n});\nfunction Ue() {\n return { render: he };\n}\nfunction he(e, r, t) {\n t.textContent = \"Cytoscape.js diagram goes here...\";\n}\nfunction Be() {\n return { render: ve };\n}\nfunction ve(e, r) {\n console.log(1111, e), console.log(2222, r), console.log(3333, r.childNodes), console.log(4444, r.children);\n}\nconst V = \"en-US\", C = /* @__PURE__ */ new Map();\nfunction Ge(e) {\n switch (e) {\n case \"Edm.Binary\":\n return \"unknown\";\n // Binary...\n case \"Edm.Boolean\":\n return \"boolean\";\n case \"Edm.Byte\":\n return \"wholeNumber\";\n case \"Edm.DateTime\":\n return \"moment\";\n // DateTime...\n case \"Edm.DateTimeOffset\":\n return \"moment\";\n // DateTimeOffset...\n case \"Edm.Decimal\":\n return \"decimalNumber\";\n case \"Edm.Double\":\n return \"decimalNumber\";\n case \"Edm.Guid\":\n return \"string\";\n case \"Edm.Int16\":\n return \"wholeNumber\";\n case \"Edm.Int32\":\n return \"wholeNumber\";\n case \"Edm.Int64\":\n return \"wholeNumber\";\n case \"Edm.SByte\":\n return \"wholeNumber\";\n case \"Edm.Single\":\n return \"decimalNumber\";\n case \"Edm.String\":\n return \"string\";\n case \"Edm.Time\":\n return \"momentTime\";\n // Time...\n default:\n return \"unknown\";\n }\n}\nfunction Pe(e) {\n if (e) {\n const r = e.lastIndexOf(\"/\"), t = e.lastIndexOf(\".\", r === -1 ? e.length : r);\n return t === -1 ? e : e.slice(0, Math.max(0, t));\n }\n}\nfunction ze(e) {\n if (e) {\n const r = e.lastIndexOf(\".\");\n if (r !== -1) return e.slice(Math.max(0, r + 1));\n }\n}\nfunction m(e, r = 2, t = r, n = V) {\n if (e == null) return \"\";\n const s = `${n}decimal${r}.${t}`;\n let o = C.get(s);\n return o || (o = new Intl.NumberFormat(n, {\n localeMatcher: \"best fit\",\n maximumFractionDigits: r,\n minimumFractionDigits: t,\n minimumIntegerDigits: 1,\n style: \"decimal\",\n useGrouping: !0\n }), C.set(s, o)), o.format(e);\n}\nfunction Ve(e) {\n return e == null ? \"\" : e < 1e3 ? N(e) : e < 1e6 ? `${m(e / 1e3, 2, 0)}K` : e < 1e9 ? `${m(e / 1e6, 2, 0)}M` : e < 1e12 ? `${m(e / 1e9, 2, 0)}B` : `${m(e / 1e12, 2, 0)}T`;\n}\nfunction He(e) {\n return e == null ? \"\" : e === 1 ? \"1 byte\" : e < 1024 ? `${N(e)} bytes` : e < 1048576 ? `${m(e / 1024, 2, 0)} KB` : e < 1073741824 ? `${m(e / 1048576, 2, 0)} MB` : e < 1099511627776 ? `${m(e / 1073741824, 2, 0)} GB` : `${m(e / 1099511627776, 2, 0)} TB`;\n}\nfunction Ke(e) {\n return e == null ? \"\" : e < 1e3 ? `${N(e)} ms` : e === 1e3 ? `${N(e)} sec` : e < 6e4 ? `${m(e / 1e3, 2, 0)} secs` : e === 6e4 ? \"1 min\" : e < 36e5 ? `${m(e / 6e4, 2, 0)} mins` : e === 36e5 ? \"1 hr\" : e < 864e5 ? `${m(e / 36e5, 2, 0)} hrs` : e === 864e5 ? \"1 day\" : `${m(e / 864e5, 2, 0)} days`;\n}\nfunction N(e, r = V) {\n if (e == null) return \"\";\n const t = `${r}decimal0.0`;\n let n = C.get(t);\n return n || (n = new Intl.NumberFormat(r, {\n localeMatcher: \"best fit\",\n maximumFractionDigits: 0,\n minimumFractionDigits: 0,\n minimumIntegerDigits: 1,\n style: \"decimal\",\n useGrouping: !0\n }), C.set(t, n)), n.format(e);\n}\nfunction We(e) {\n switch (e) {\n case \"csv\":\n return \"text/csv\";\n case \"tab\":\n case \"tsv\":\n return \"text/tab-separated-values\";\n case \"xls\":\n return \"application/vnd.ms-excel\";\n case \"xlsx\":\n return \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\";\n default:\n return \"application/octet-stream\";\n }\n}\nconst c = (e) => new Map(Object.entries(e)), L = (e, r, t = I) => {\n const n = e.get(r);\n if (n !== void 0) return n;\n if (t !== r)\n return e.get(t);\n}, Ee = [\n { id: \"dtv\", labels: c({ \"en-gb\": \"Delimited Text\" }) },\n { id: \"e/e\", labels: c({ \"en-gb\": \"Entity/Event\" }) },\n { id: \"jsonArray\", labels: c({ \"en-gb\": \"JSON Array\" }) },\n { id: \"spss\", labels: c({ \"en-gb\": \"SPSS\" }) },\n { id: \"xls\", labels: c({ \"en-gb\": \"XLS\" }) },\n { id: \"xlsx\", labels: c({ \"en-gb\": \"XLSX\" }) },\n { id: \"xml\", labels: c({ \"en-gb\": \"XML\" }) }\n], Xe = (e = I) => {\n const r = [];\n for (const t of Ee) {\n const n = L(t.labels, e);\n r.push({ id: t.id, label: n ?? t.id });\n }\n return r;\n}, xe = [\n { id: `\n`, labels: c({ \"en-gb\": \"Newline\" }) },\n { id: \"\\r\", labels: c({ \"en-gb\": \"Carriage Return\" }) },\n { id: `\\r\n`, labels: c({ \"en-gb\": \"Carriage Return/Newline\" }) }\n], Je = (e = I) => {\n const r = [];\n for (const t of xe) {\n const n = L(t.labels, e);\n r.push({ id: t.id, label: n ?? t.id });\n }\n return r;\n}, Se = [\n { id: \":\", labels: c({ \"en-gb\": \"Colon\" }) },\n { id: \",\", labels: c({ \"en-gb\": \"Comma\" }) },\n { id: \"!\", labels: c({ \"en-gb\": \"Exclamation Mark\" }) },\n // { id: '', label: { 'en-gb': 'Other' } }, // TODO: Maybe set this to a 'not printing' or special ascii character when there is a user supplied delimited, rather than ''?\n { id: \"0x1E\", labels: c({ \"en-gb\": \"Record Separator\" }) },\n { id: \";\", labels: c({ \"en-gb\": \"Semicolon\" }) },\n { id: \" \", labels: c({ \"en-gb\": \"Space\" }) },\n { id: \"\t\", labels: c({ \"en-gb\": \"Tab\" }) },\n { id: \"_\", labels: c({ \"en-gb\": \"Underscore\" }) },\n { id: \"0x1F\", labels: c({ \"en-gb\": \"Unit Separator\" }) },\n { id: \"|\", labels: c({ \"en-gb\": \"Vertical Bar\" }) }\n], qe = (e = I) => {\n const r = [];\n for (const t of Se) {\n const n = L(t.labels, e);\n r.push({ id: t.id, label: n ?? t.id });\n }\n return r;\n}, I = \"en-gb\";\nexport {\n Ce as APIError,\n w as ApplicationError,\n Ie as CONNECTOR_DESTINATION_OPERATIONS,\n Me as CONNECTOR_SOURCE_OPERATIONS,\n I as DEFAULT_LOCALE_CODE,\n Ne as EngineError,\n z as FetchError,\n Re as OperationalError,\n ye as VueError,\n Ae as WindowPromiseRejectionError,\n je as WindowRuntimeError,\n Te as buildFetchError,\n De as componentConfigSchema,\n $e as concatenateSerialisedErrorMessages,\n we as connectorConfigSchema,\n Oe as contextConfigSchema,\n Ge as convertODataTypeIdToUsageTypeId,\n ze as extractExtensionFromPath,\n Pe as extractNameFromPath,\n m as formatNumberAsDecimalNumber,\n Ke as formatNumberAsDuration,\n Ve as formatNumberAsSize,\n He as formatNumberAsStorageSize,\n N as formatNumberAsWholeNumber,\n ke as getComponentStatus,\n Xe as getDataFormats,\n Je as getRecordDelimiters,\n qe as getValueDelimiters,\n We as lookupMimeTypeForExtension,\n Fe as normalizeToError,\n _e as presenterConfigSchema,\n Le as serialiseError,\n Ue as useCytoscapeJS,\n Be as useDataTable\n};\n","// type RustBindings = typeof import('../rust/datapos-connector-file-store-emulator-core/pkg/datapos_connector_file_store_emulator_core.js');\nimport type * as RustModule from '../rust/datapos-connector-file-store-emulator-core/pkg/datapos_connector_file_store_emulator_core.js';\n\ntype RustBindings = typeof RustModule;\n\nlet rustBindingsPromise: Promise<RustBindings> | undefined;\n\nasync function loadRustBindings(): Promise<RustBindings> {\n rustBindingsPromise ??= import('../rust/datapos-connector-file-store-emulator-core/pkg/datapos_connector_file_store_emulator_core.js');\n return rustBindingsPromise;\n}\n\nexport async function addNumbersWithRust(left: number, right: number): Promise<number> {\n const { add_numbers } = await loadRustBindings();\n return add_numbers(Math.trunc(left), Math.trunc(right));\n}\n\nexport async function checksumWithRust(input: string): Promise<number> {\n const { checksum_from_rust } = await loadRustBindings();\n return checksum_from_rust(input);\n}\n","/*\n * File store emulator connector class.\n */\n\n// NOTE: Consider Cloudflare R2 Download URL: https://plugins-eu.datapositioning.app/connectors/datapos-connector-file-store-emulator-es.js. This would allow us to secure the bucket?\n\n// Dependencies - Vendor.\nimport type { HeadersInit } from 'undici';\n\n/** Dependencies - Framework. */\nimport { normalizeToError } from '@datapos/datapos-shared';\nimport type {\n ConnectionConfig,\n ConnectionNodeConfig,\n Connector,\n ConnectorConfig,\n ConnectorTools,\n FindResult,\n FindSettings,\n GetReaderResult,\n GetReaderSettings,\n ListResult,\n ListSettings,\n PreviewResult,\n PreviewSettings,\n RetrieveSettings,\n RetrieveSummary\n} from '@datapos/datapos-shared';\n\n/** Dependencies - Data. */\nimport config from '~/config.json';\nimport fileStoreIndex from '@/fileStoreIndex.json';\nimport { version } from '~/package.json';\nimport { addNumbersWithRust, checksumWithRust } from '@/rustBridge';\n\n/** Interfaces/Types - File store index. */\ntype FileStoreIndexItem =\n | ({ typeId: 'folder'; childCount: number } & { name: string })\n | ({ typeId: 'object'; id: string; lastModifiedAt: number; size: number } & { name: string });\ntype FileStoreIndex = Record<string, FileStoreIndexItem[]>;\n\n/** Constants */\nconst CALLBACK_PREVIEW_ABORTED = 'Connector failed to abort preview object operation.';\nconst CALLBACK_RETRIEVE_ABORTED = 'Connector failed to abort retrieve all records operation.';\nconst DEFAULT_PREVIEW_CHUNK_SIZE = 4096;\nconst DEFAULT_RETRIEVE_CHUNK_SIZE = 1000;\nconst URL_PREFIX = 'https://sample-data-eu.datapos.app';\n\n/** Classes - File store emulator connector. */\nexport default class FileStoreEmulatorConnector implements Connector {\n abortController: AbortController | undefined;\n readonly config: ConnectorConfig;\n readonly connectionConfig: ConnectionConfig;\n readonly tools: ConnectorTools;\n\n constructor(connectionConfig: ConnectionConfig, tools: ConnectorTools) {\n this.abortController = undefined;\n this.config = config as ConnectorConfig;\n this.config.version = version;\n this.connectionConfig = connectionConfig;\n this.tools = tools;\n }\n\n // Operations - Abort operation.\n abortOperation(connector: FileStoreEmulatorConnector): void {\n if (!connector.abortController) return;\n connector.abortController.abort();\n connector.abortController = undefined;\n }\n\n // Operations - Find object.\n findObject(connector: FileStoreEmulatorConnector, settings: FindSettings): Promise<FindResult> {\n // Loop through the file store index checking for an object entry with an identifier equal to the object name.\n for (const folderPath in fileStoreIndex) {\n if (Object.prototype.hasOwnProperty.call(fileStoreIndex, folderPath)) {\n // eslint-disable-next-line security/detect-object-injection\n const indexItems = (fileStoreIndex as FileStoreIndex)[folderPath];\n const indexItem = indexItems?.find((indexItem) => indexItem.typeId === 'object' && indexItem.id === settings.objectName);\n if (indexItem) return Promise.resolve({ folderPath }); // Found, return folder path.\n }\n }\n return Promise.resolve({}); // Not found, return undefined folder path.\n }\n\n // Operations - Get reader.\n async getReader(connector: FileStoreEmulatorConnector, settings: GetReaderSettings): Promise<GetReaderResult> {\n try {\n console.log('getReader', 'connector', connector);\n console.log('getReader', 'settings', settings);\n const response = await fetch('https://sample-data-eu.datapos.app/fileStore/ENGAGEMENT_START_EVENTS_202405121858.csv');\n // const response = await fetch('https://sample-data-eu.datapos.app/WDI_Data.csv');\n console.log('getReader', 'response', response);\n if (!response.body) throw new Error('ReadableStream not supported by this browser.');\n\n await this.addUsingRust(12, 56);\n const sum = await this.versionChecksumUsingRust();\n console.log('sum', sum);\n\n return await Promise.resolve({ readable: response.body }); // Not found, return undefined folder path.\n } catch (error) {\n connector.abortController = undefined;\n throw error;\n }\n }\n\n // Operations - List nodes.\n listNodes(connector: FileStoreEmulatorConnector, settings: ListSettings): Promise<ListResult> {\n const indexItems = (fileStoreIndex as FileStoreIndex)[settings.folderPath] ?? [];\n const connectionNodeConfigs: ConnectionNodeConfig[] = [];\n for (const indexItem of indexItems) {\n if (indexItem.typeId === 'folder') {\n connectionNodeConfigs.push(this.constructFolderNodeConfig(settings.folderPath, indexItem.name, indexItem.childCount));\n } else {\n connectionNodeConfigs.push(this.constructObjectNodeConfig(settings.folderPath, indexItem.id, indexItem.name, indexItem.lastModifiedAt, indexItem.size));\n }\n }\n return Promise.resolve({ cursor: undefined, isMore: false, connectionNodeConfigs, totalCount: connectionNodeConfigs.length });\n }\n\n // Operations - Preview object.\n async previewObject(connector: FileStoreEmulatorConnector, settings: PreviewSettings): Promise<PreviewResult> {\n try {\n // Create an abort controller. Get the signal for the abort controller and add an abort listener.\n connector.abortController = new AbortController();\n const signal = connector.abortController.signal;\n signal.addEventListener('abort', () => {\n throw new this.tools.dataPos.OperationalError(CALLBACK_PREVIEW_ABORTED, 'datapos-connector-file-store-emulator|Connector|preview.abort');\n });\n\n // Fetch chunk from start of file.\n const url = `${URL_PREFIX}/fileStore${settings.path}`;\n const headers: HeadersInit = { Range: `bytes=0-${settings.chunkSize != null || DEFAULT_PREVIEW_CHUNK_SIZE}` };\n const response = await fetch(encodeURI(url), { headers, signal });\n if (response.ok) {\n connector.abortController = undefined;\n return { data: new Uint8Array(await response.arrayBuffer()), typeId: 'uint8Array' };\n } else {\n throw await this.tools.dataPos.buildFetchError(response, `Failed to fetch '${settings.path}' file.`, 'datapos-connector-file-store-emulator|Connector|preview');\n }\n } catch (error) {\n connector.abortController = undefined;\n throw error;\n }\n }\n\n // Operations - Retrieve records.\n async retrieveRecords(\n connector: FileStoreEmulatorConnector,\n settings: RetrieveSettings,\n chunk: (records: string[][]) => void,\n complete: (result: RetrieveSummary) => void\n ): Promise<void> {\n return new Promise((resolve, reject) => {\n try {\n // Create an abort controller and get the signal. Add an abort listener to the signal.\n connector.abortController = new AbortController();\n const signal = connector.abortController.signal;\n signal.addEventListener(\n 'abort',\n () => {\n connector.abortController = undefined;\n reject(new connector.tools.dataPos.OperationalError(CALLBACK_RETRIEVE_ABORTED, 'datapos-connector-file-store-emulator|Connector|retrieve.abort'));\n },\n { once: true }\n );\n\n // Parser - Declare variables.\n let pendingRows: string[][] = []; // Array to store rows of parsed field values and associated information.\n\n // Parser - Create a parser object for CSV parsing.\n const parser = connector.tools.csvParse({\n delimiter: settings.valueDelimiterId,\n info: true,\n relax_column_count: true,\n relax_quotes: true\n });\n\n // Parser - Event listener for the 'readable' (data available) event.\n parser.on('readable', () => {\n try {\n let data: string[] | null;\n while ((data = parser.read() as string[] | null) !== null) {\n signal.throwIfAborted(); // Check if the abort signal has been triggered.\n pendingRows.push(data); // Append the row of parsed values and associated information to the pending rows array.\n if (pendingRows.length < DEFAULT_RETRIEVE_CHUNK_SIZE) continue; // Continue with next iteration if the pending rows array is not yet full.\n chunk([]); // Pass the pending rows to the engine using the 'chunk' callback.\n pendingRows = []; // Clear the pending rows array in preparation for the next batch of data.\n }\n } catch (error) {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n }\n });\n\n // Parser - Event listener for the 'error' event.\n parser.on('error', (error) => {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n });\n\n // Parser - Event listener for the 'end' (end of data) event.\n parser.on('end', () => {\n try {\n signal.throwIfAborted(); // Check if the abort signal has been triggered.\n connector.abortController = undefined; // Clear the abort controller.\n if (pendingRows.length > 0) {\n chunk([]);\n pendingRows = [];\n }\n complete({\n byteCount: parser.info.bytes,\n commentLineCount: parser.info.comment_lines,\n emptyLineCount: parser.info.empty_lines,\n invalidFieldLengthCount: parser.info.invalid_field_length,\n lineCount: parser.info.lines,\n recordCount: parser.info.records\n });\n resolve();\n } catch (error) {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n }\n });\n\n // Fetch, decode and forward the contents of the file to the parser.\n const url = `${URL_PREFIX}/fileStore${settings.path}`;\n fetch(encodeURI(url), { signal })\n .then(async (response) => {\n try {\n if (response.ok && response.body) {\n const stream = response.body.pipeThrough(new TextDecoderStream(settings.encodingId));\n const decodedStreamReader = stream.getReader();\n let result = await decodedStreamReader.read();\n while (!result.done) {\n signal.throwIfAborted(); // Check if the abort signal has been triggered.\n // Write the decoded data to the parser and terminate if there is an error.\n parser.write(result.value, (error) => {\n if (error) {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n }\n });\n result = await decodedStreamReader.read();\n }\n parser.end(); // Signal no more data will be written.\n } else {\n const error = await connector.tools.dataPos.buildFetchError(\n response,\n `Failed to fetch '${settings.path}' file.`,\n 'datapos-connector-file-store-emulator|Connector|retrieve'\n );\n connector.abortController = undefined;\n reject(error);\n }\n } catch (error) {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n }\n })\n .catch((error: unknown) => {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n });\n } catch (error) {\n connector.abortController = undefined;\n reject(normalizeToError(error));\n }\n });\n }\n\n /** Utilities - Rust helpers. */\n private async addUsingRust(left: number, right: number): Promise<number> {\n return addNumbersWithRust(left, right);\n }\n\n private async versionChecksumUsingRust(): Promise<number> {\n return checksumWithRust(this.config.version);\n }\n\n /** Utilities - Construct folder node configuration. */\n private constructFolderNodeConfig(folderPath: string, name: string, childCount: number): ConnectionNodeConfig {\n return { id: this.tools.nanoid(), childCount, folderPath, label: name, name, typeId: 'folder' };\n }\n\n /** Utilities - Construct object (file) node configuration. */\n private constructObjectNodeConfig(folderPath: string, id: string, fullName: string, lastModifiedAt: number, size: number): ConnectionNodeConfig {\n const name = this.tools.dataPos.extractNameFromPath(fullName) ?? '';\n const extension = this.tools.dataPos.extractExtensionFromPath(fullName);\n const lastModifiedAtTimestamp = lastModifiedAt;\n const mimeType = this.tools.dataPos.lookupMimeTypeForExtension(extension);\n return { id, extension, folderPath, label: fullName, lastModifiedAt: lastModifiedAtTimestamp, mimeType, name, size, typeId: 'object' };\n }\n}\n"],"names":["j","H","e","K","W","X","J","q","Q","r","U","g","t","n","o","i","u","a","p","d","h","Z","k","_","G","v","E","M","Fe","rustBindingsPromise","loadRustBindings","addNumbersWithRust","left","right","add_numbers","checksumWithRust","input","checksum_from_rust","CALLBACK_PREVIEW_ABORTED","CALLBACK_RETRIEVE_ABORTED","DEFAULT_PREVIEW_CHUNK_SIZE","DEFAULT_RETRIEVE_CHUNK_SIZE","URL_PREFIX","FileStoreEmulatorConnector","connectionConfig","tools","config","version","connector","settings","folderPath","fileStoreIndex","indexItem","response","sum","error","indexItems","connectionNodeConfigs","signal","url","headers","chunk","complete","resolve","reject","pendingRows","parser","data","normalizeToError","decodedStreamReader","result","name","childCount","id","fullName","lastModifiedAt","size","extension","lastModifiedAtTimestamp","mimeType"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
const Y = "data:application/wasm;base64,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LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3dhc20tYmluZGdlbi0wLjIuMTA2L3NyYy9leHRlcm5yZWYucnMAL3J1c3QvZGVwcy9kbG1hbGxvYy0wLjIuMTAvc3JjL2RsbWFsbG9jLnJzAGFzc2VydGlvbiBmYWlsZWQ6IHBzaXplID49IHNpemUgKyBtaW5fb3ZlcmhlYWQAkgAQACoAAACxBAAACQAAAGFzc2VydGlvbiBmYWlsZWQ6IHBzaXplIDw9IHNpemUgKyBtYXhfb3ZlcmhlYWQAAJIAEAAqAAAAtwQAAA0AAAAgABAAcQAAAH8AAAARAAAAIAAQAHEAAACMAAAAEQBB3ILAAAsBBABwCXByb2R1Y2VycwIIbGFuZ3VhZ2UBBFJ1c3QADHByb2Nlc3NlZC1ieQMFcnVzdGMdMS45MS4xIChlZDYxZTdkN2UgMjAyNS0xMS0wNykGd2FscnVzBjAuMjQuNAx3YXNtLWJpbmRnZW4HMC4yLjEwNgBrD3RhcmdldF9mZWF0dXJlcwYrD211dGFibGUtZ2xvYmFscysTbm9udHJhcHBpbmctZnB0b2ludCsLYnVsay1tZW1vcnkrCHNpZ24tZXh0Kw9yZWZlcmVuY2UtdHlwZXMrCm11bHRpdmFsdWU=", t = async (A = {}, I) => {
|
|
2
|
+
let Q;
|
|
3
|
+
if (I.startsWith("data:")) {
|
|
4
|
+
const B = I.replace(/^data:.*?base64,/, "");
|
|
5
|
+
let C;
|
|
6
|
+
if (typeof Buffer == "function" && typeof Buffer.from == "function")
|
|
7
|
+
C = Buffer.from(B, "base64");
|
|
8
|
+
else if (typeof atob == "function") {
|
|
9
|
+
const i = atob(B);
|
|
10
|
+
C = new Uint8Array(i.length);
|
|
11
|
+
for (let g = 0; g < i.length; g++)
|
|
12
|
+
C[g] = i.charCodeAt(g);
|
|
13
|
+
} else
|
|
14
|
+
throw new Error("Cannot decode base64-encoded data URL");
|
|
15
|
+
Q = await WebAssembly.instantiate(C, A);
|
|
16
|
+
} else {
|
|
17
|
+
const B = await fetch(I), C = B.headers.get("Content-Type") || "";
|
|
18
|
+
if ("instantiateStreaming" in WebAssembly && C.startsWith("application/wasm"))
|
|
19
|
+
Q = await WebAssembly.instantiateStreaming(B, A);
|
|
20
|
+
else {
|
|
21
|
+
const i = await B.arrayBuffer();
|
|
22
|
+
Q = await WebAssembly.instantiate(i, A);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return Q.instance.exports;
|
|
26
|
+
};
|
|
27
|
+
let w;
|
|
28
|
+
function G(A) {
|
|
29
|
+
w = A;
|
|
30
|
+
}
|
|
31
|
+
let D = null;
|
|
32
|
+
function h() {
|
|
33
|
+
return (D === null || D.byteLength === 0) && (D = new Uint8Array(w.memory.buffer)), D;
|
|
34
|
+
}
|
|
35
|
+
function F(A, I, Q) {
|
|
36
|
+
if (Q === void 0) {
|
|
37
|
+
const E = o.encode(A), s = I(E.length, 1) >>> 0;
|
|
38
|
+
return h().subarray(s, s + E.length).set(E), N = E.length, s;
|
|
39
|
+
}
|
|
40
|
+
let B = A.length, C = I(B, 1) >>> 0;
|
|
41
|
+
const i = h();
|
|
42
|
+
let g = 0;
|
|
43
|
+
for (; g < B; g++) {
|
|
44
|
+
const E = A.charCodeAt(g);
|
|
45
|
+
if (E > 127) break;
|
|
46
|
+
i[C + g] = E;
|
|
47
|
+
}
|
|
48
|
+
if (g !== B) {
|
|
49
|
+
g !== 0 && (A = A.slice(g)), C = Q(C, B, B = g + A.length * 3, 1) >>> 0;
|
|
50
|
+
const E = h().subarray(C + g, C + B), s = o.encodeInto(A, E);
|
|
51
|
+
g += s.written, C = Q(C, B, g, 1) >>> 0;
|
|
52
|
+
}
|
|
53
|
+
return N = g, C;
|
|
54
|
+
}
|
|
55
|
+
const o = new TextEncoder();
|
|
56
|
+
"encodeInto" in o || (o.encodeInto = function(A, I) {
|
|
57
|
+
const Q = o.encode(A);
|
|
58
|
+
return I.set(Q), {
|
|
59
|
+
read: A.length,
|
|
60
|
+
written: Q.length
|
|
61
|
+
};
|
|
62
|
+
});
|
|
63
|
+
let N = 0;
|
|
64
|
+
function d(A, I) {
|
|
65
|
+
return w.add_numbers(A, I);
|
|
66
|
+
}
|
|
67
|
+
function S(A) {
|
|
68
|
+
const I = F(A, w.__wbindgen_malloc, w.__wbindgen_realloc), Q = N;
|
|
69
|
+
return w.checksum_from_rust(I, Q) >>> 0;
|
|
70
|
+
}
|
|
71
|
+
function n() {
|
|
72
|
+
const A = w.__wbindgen_externrefs, I = A.grow(4);
|
|
73
|
+
A.set(0, void 0), A.set(I + 0, void 0), A.set(I + 1, null), A.set(I + 2, !0), A.set(I + 3, !1);
|
|
74
|
+
}
|
|
75
|
+
URL = globalThis.URL;
|
|
76
|
+
const c = await t({ "./datapos_connector_file_store_emulator_core_bg.js": { __wbindgen_init_externref_table: n } }, Y), y = c.memory, a = c.add_numbers, R = c.checksum_from_rust, b = c.__wbindgen_externrefs, r = c.__wbindgen_malloc, H = c.__wbindgen_realloc, e = c.__wbindgen_start, f = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
77
|
+
__proto__: null,
|
|
78
|
+
__wbindgen_externrefs: b,
|
|
79
|
+
__wbindgen_malloc: r,
|
|
80
|
+
__wbindgen_realloc: H,
|
|
81
|
+
__wbindgen_start: e,
|
|
82
|
+
add_numbers: a,
|
|
83
|
+
checksum_from_rust: R,
|
|
84
|
+
memory: y
|
|
85
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
86
|
+
G(f);
|
|
87
|
+
e();
|
|
88
|
+
export {
|
|
89
|
+
G as __wbg_set_wasm,
|
|
90
|
+
n as __wbindgen_init_externref_table,
|
|
91
|
+
d as add_numbers,
|
|
92
|
+
S as checksum_from_rust
|
|
93
|
+
};
|
|
94
|
+
//# sourceMappingURL=datapos_connector_file_store_emulator_core-tvgNVoxR.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datapos_connector_file_store_emulator_core-tvgNVoxR.js","sources":["../rust/datapos-connector-file-store-emulator-core/pkg/datapos_connector_file_store_emulator_core_bg.wasm?url","../../../../../../../__vite-plugin-wasm-helper","../rust/datapos-connector-file-store-emulator-core/pkg/datapos_connector_file_store_emulator_core_bg.js","../rust/datapos-connector-file-store-emulator-core/pkg/datapos_connector_file_store_emulator_core_bg.wasm","../rust/datapos-connector-file-store-emulator-core/pkg/datapos_connector_file_store_emulator_core.js"],"sourcesContent":["export default \"data:application/wasm;base64,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LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3dhc20tYmluZGdlbi0wLjIuMTA2L3NyYy9leHRlcm5yZWYucnMAL3J1c3QvZGVwcy9kbG1hbGxvYy0wLjIuMTAvc3JjL2RsbWFsbG9jLnJzAGFzc2VydGlvbiBmYWlsZWQ6IHBzaXplID49IHNpemUgKyBtaW5fb3ZlcmhlYWQAkgAQACoAAACxBAAACQAAAGFzc2VydGlvbiBmYWlsZWQ6IHBzaXplIDw9IHNpemUgKyBtYXhfb3ZlcmhlYWQAAJIAEAAqAAAAtwQAAA0AAAAgABAAcQAAAH8AAAARAAAAIAAQAHEAAACMAAAAEQBB3ILAAAsBBABwCXByb2R1Y2VycwIIbGFuZ3VhZ2UBBFJ1c3QADHByb2Nlc3NlZC1ieQMFcnVzdGMdMS45MS4xIChlZDYxZTdkN2UgMjAyNS0xMS0wNykGd2FscnVzBjAuMjQuNAx3YXNtLWJpbmRnZW4HMC4yLjEwNgBrD3RhcmdldF9mZWF0dXJlcwYrD211dGFibGUtZ2xvYmFscysTbm9udHJhcHBpbmctZnB0b2ludCsLYnVsay1tZW1vcnkrCHNpZ24tZXh0Kw9yZWZlcmVuY2UtdHlwZXMrCm11bHRpdmFsdWU=\"","export default async (opts = {}, url) => {\n let result;\n if (url.startsWith(\"data:\")) {\n const urlContent = url.replace(/^data:.*?base64,/, \"\");\n let bytes;\n if (typeof Buffer === \"function\" && typeof Buffer.from === \"function\") {\n bytes = Buffer.from(urlContent, \"base64\");\n }\n else if (typeof atob === \"function\") {\n const binaryString = atob(urlContent);\n bytes = new Uint8Array(binaryString.length);\n for (let i = 0; i < binaryString.length; i++) {\n bytes[i] = binaryString.charCodeAt(i);\n }\n }\n else {\n throw new Error(\"Cannot decode base64-encoded data URL\");\n }\n result = await WebAssembly.instantiate(bytes, opts);\n }\n else {\n // https://github.com/mdn/webassembly-examples/issues/5\n // WebAssembly.instantiateStreaming requires the server to provide the\n // correct MIME type for .wasm files, which unfortunately doesn't work for\n // a lot of static file servers, so we just work around it by getting the\n // raw buffer.\n // @ts-ignore\n const response = await fetch(url);\n const contentType = response.headers.get(\"Content-Type\") || \"\";\n if (\"instantiateStreaming\" in WebAssembly && contentType.startsWith(\"application/wasm\")) {\n result = await WebAssembly.instantiateStreaming(response, opts);\n }\n else {\n const buffer = await response.arrayBuffer();\n result = await WebAssembly.instantiate(buffer, opts);\n }\n }\n return result.instance.exports;\n}","let wasm;\nexport function __wbg_set_wasm(val) {\n wasm = val;\n}\n\nlet cachedUint8ArrayMemory0 = null;\nfunction getUint8ArrayMemory0() {\n if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {\n cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8ArrayMemory0;\n}\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8ArrayMemory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);\n const ret = cachedTextEncoder.encodeInto(arg, view);\n\n offset += ret.written;\n ptr = realloc(ptr, len, offset, 1) >>> 0;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nconst cachedTextEncoder = new TextEncoder();\n\nif (!('encodeInto' in cachedTextEncoder)) {\n cachedTextEncoder.encodeInto = function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n }\n}\n\nlet WASM_VECTOR_LEN = 0;\n\n/**\n * Adds two signed 32-bit integers using native Rust arithmetic.\n * @param {number} left\n * @param {number} right\n * @returns {number}\n */\nexport function add_numbers(left, right) {\n const ret = wasm.add_numbers(left, right);\n return ret;\n}\n\n/**\n * Computes a simple checksum by summing every byte in the input string.\n * @param {string} input\n * @returns {number}\n */\nexport function checksum_from_rust(input) {\n const ptr0 = passStringToWasm0(input, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.checksum_from_rust(ptr0, len0);\n return ret >>> 0;\n}\n\nexport function __wbindgen_init_externref_table() {\n const table = wasm.__wbindgen_externrefs;\n const offset = table.grow(4);\n table.set(0, undefined);\n table.set(offset + 0, undefined);\n table.set(offset + 1, null);\n table.set(offset + 2, true);\n table.set(offset + 3, false);\n};\n","\nURL = globalThis.URL\nimport __vite__wasmUrl from \"/Users/jonathanterrell/Data Positioning/GitHub/connectors/datapos-connector-file-store-emulator/rust/datapos-connector-file-store-emulator-core/pkg/datapos_connector_file_store_emulator_core_bg.wasm?url\"\nimport __vite__initWasm from \"/__vite-plugin-wasm-helper\"\nimport * as __vite__wasmImport_0 from \"./datapos_connector_file_store_emulator_core_bg.js\";\nconst __vite__wasmModule = await __vite__initWasm({ \"./datapos_connector_file_store_emulator_core_bg.js\": { \"__wbindgen_init_externref_table\": __vite__wasmImport_0[\"__wbindgen_init_externref_table\"] } }, __vite__wasmUrl);\nexport const memory = __vite__wasmModule.memory;\nexport const add_numbers = __vite__wasmModule.add_numbers;\nexport const checksum_from_rust = __vite__wasmModule.checksum_from_rust;\nexport const __wbindgen_externrefs = __vite__wasmModule.__wbindgen_externrefs;\nexport const __wbindgen_malloc = __vite__wasmModule.__wbindgen_malloc;\nexport const __wbindgen_realloc = __vite__wasmModule.__wbindgen_realloc;\nexport const __wbindgen_start = __vite__wasmModule.__wbindgen_start;\n","import * as wasm from \"./datapos_connector_file_store_emulator_core_bg.wasm\";\nexport * from \"./datapos_connector_file_store_emulator_core_bg.js\";\nimport { __wbg_set_wasm } from \"./datapos_connector_file_store_emulator_core_bg.js\";\n__wbg_set_wasm(wasm);\nwasm.__wbindgen_start();\n"],"names":["__vite__wasmUrl","__vite__initWasm","opts","url","result","urlContent","bytes","binaryString","i","response","contentType","buffer","wasm","__wbg_set_wasm","val","cachedUint8ArrayMemory0","getUint8ArrayMemory0","passStringToWasm0","arg","malloc","realloc","buf","cachedTextEncoder","ptr","WASM_VECTOR_LEN","len","mem","offset","code","view","ret","add_numbers","left","right","checksum_from_rust","input","ptr0","len0","__wbindgen_init_externref_table","table","__vite__wasmModule","__vite__wasmImport_0[\"__wbindgen_init_externref_table\"]","memory","__wbindgen_externrefs","__wbindgen_malloc","__wbindgen_realloc","__wbindgen_start","wasm.__wbindgen_start"],"mappings":"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"}
|
|
@@ -12,6 +12,9 @@ export default class FileStoreEmulatorConnector implements Connector {
|
|
|
12
12
|
listNodes(connector: FileStoreEmulatorConnector, settings: ListSettings): Promise<ListResult>;
|
|
13
13
|
previewObject(connector: FileStoreEmulatorConnector, settings: PreviewSettings): Promise<PreviewResult>;
|
|
14
14
|
retrieveRecords(connector: FileStoreEmulatorConnector, settings: RetrieveSettings, chunk: (records: string[][]) => void, complete: (result: RetrieveSummary) => void): Promise<void>;
|
|
15
|
+
/** Utilities - Rust helpers. */
|
|
16
|
+
private addUsingRust;
|
|
17
|
+
private versionChecksumUsingRust;
|
|
15
18
|
/** Utilities - Construct folder node configuration. */
|
|
16
19
|
private constructFolderNodeConfig;
|
|
17
20
|
/** Utilities - Construct object (file) node configuration. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "datapos-connector-file-store-emulator",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.288",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"author": "Jonathan Terrell <terrell.jm@gmail.com>",
|
|
6
6
|
"private": false,
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
],
|
|
27
27
|
"prettier": "@datapos/datapos-development/prettierrc",
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@datapos/datapos-development": "^0.3.
|
|
30
|
-
"@datapos/datapos-shared": "^0.3.
|
|
29
|
+
"@datapos/datapos-development": "^0.3.396",
|
|
30
|
+
"@datapos/datapos-shared": "^0.3.330",
|
|
31
31
|
"@datapos/eslint-config-datapos": "^1.0.27",
|
|
32
32
|
"@types/node": "^25.0.3",
|
|
33
33
|
"@typescript-eslint/eslint-plugin": "^8.50.0",
|
|
@@ -52,12 +52,14 @@
|
|
|
52
52
|
"sonda": "^0.10.1",
|
|
53
53
|
"typescript": "^5.9.3",
|
|
54
54
|
"vite": "^7.3.0",
|
|
55
|
+
"vite-plugin-wasm": "^3.5.0",
|
|
55
56
|
"vite-plugin-dts": "^4.5.4",
|
|
56
57
|
"vitest": "^4.0.16"
|
|
57
58
|
},
|
|
58
59
|
"scripts": {
|
|
59
60
|
"audit": "op run --env-file=.env -- node -e \"import('@datapos/datapos-development').then(m => m.auditDependencies())\"",
|
|
60
61
|
"build": "node -e \"import('@datapos/datapos-development').then(m => m.buildProject())\"",
|
|
62
|
+
"build:rust": "wasm-pack build ./rust/datapos-connector-file-store-emulator-core --release --target bundler --out-dir pkg",
|
|
61
63
|
"check": "node -e \"import('@datapos/datapos-development').then(m => m.checkDependencies())\"",
|
|
62
64
|
"document": "op run --env-file=.env -- node -e \"import('@datapos/datapos-development').then(m => m.documentDependencies(['MIT']))\"",
|
|
63
65
|
"format": "node -e \"import('@datapos/datapos-development').then(m => m.formatCode())\"",
|