@auxilium/datalynk-client 1.3.3 → 1.3.5

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/dist/index.mjs CHANGED
@@ -334,6 +334,12 @@ class PromiseProgress extends Promise {
334
334
  return this.from(super.finally(res));
335
335
  }
336
336
  }
337
+ function sleep(ms) {
338
+ return new Promise((res) => setTimeout(res, ms));
339
+ }
340
+ async function sleepWhile(fn2, checkInterval = 100) {
341
+ while (await fn2()) await sleep(checkInterval);
342
+ }
337
343
  class TypedEmitter {
338
344
  constructor() {
339
345
  __publicField2(this, "listeners", {});
@@ -2129,7 +2135,7 @@ class Auth {
2129
2135
  var _a;
2130
2136
  if (!token) return null;
2131
2137
  else if (token == ((_a = this.user) == null ? void 0 : _a.token)) return this.user;
2132
- else if (typeof navigator != "undefined" && !navigator.onLine && typeof localStorage != "undefined" && localStorage.getItem("datalynk-user"))
2138
+ else if (!this.api.online && typeof localStorage != "undefined" && localStorage.getItem("datalynk-user"))
2133
2139
  return JSON.parse(localStorage.getItem("datalynk-user"));
2134
2140
  return this.api.request([{ "$/auth/current": {} }, { "$/env/me": {} }], { token }).then((resp) => resp[0] || resp[1] ? { ...resp[0], ...resp[1] } : null);
2135
2141
  }
@@ -2305,6 +2311,9 @@ class PWA {
2305
2311
  this.api = api;
2306
2312
  }
2307
2313
  // Holds the beforeinstallprompt event
2314
+ get headless() {
2315
+ return typeof window == "undefined";
2316
+ }
2308
2317
  get iframe() {
2309
2318
  return (parent == null ? void 0 : parent.location) != location;
2310
2319
  }
@@ -2388,7 +2397,7 @@ class PWA {
2388
2397
  link.href = `${base}/manifest?json=${encodeURIComponent(JSON.stringify(manifestObj))}`;
2389
2398
  document.head.append(link);
2390
2399
  }
2391
- if (!this.iframe && !this.pwa && this.platform != "mac") setTimeout(() => {
2400
+ if (!this.headless && !this.iframe && !this.pwa && this.platform != "mac") setTimeout(() => {
2392
2401
  const dismissedDate = localStorage.getItem(`${this.api.options.name}:pwa`);
2393
2402
  if (settings.dismissExpiry > 0 && dismissedDate) {
2394
2403
  const diffDays = (Date.now() - new Date(dismissedDate).getTime()) / (1e3 * 60 * 60 * 24);
@@ -3063,6 +3072,7 @@ class Slice {
3063
3072
  constructor(slice, api) {
3064
3073
  __publicField(this, "table");
3065
3074
  __publicField(this, "info");
3075
+ __publicField(this, "loaded", false);
3066
3076
  __publicField(this, "pendingInsert", 0);
3067
3077
  /** Unsubscribe from changes, undefined if not subscribed */
3068
3078
  __publicField(this, "unsubscribe");
@@ -3073,7 +3083,7 @@ class Slice {
3073
3083
  this.api = api;
3074
3084
  if (this.offlineEnabled) {
3075
3085
  this.table = (_a = api.database) == null ? void 0 : _a.table(slice.toString());
3076
- this.table.getAll().then((resp) => this.cache = resp);
3086
+ this.table.getAll().then((resp) => this.cache = resp).finally(() => this.loaded = true);
3077
3087
  this.cache$.pipe(skip(1)).subscribe(async (cache) => {
3078
3088
  var _a2;
3079
3089
  await ((_a2 = this.table) == null ? void 0 : _a2.clear());
@@ -3088,6 +3098,8 @@ class Slice {
3088
3098
  if (this.api.expired) await lastValueFrom(this.api.auth.user$.pipe(skip(1), takeWhile((u) => !u || this.api.expired, true)));
3089
3099
  this.pushChanges();
3090
3100
  });
3101
+ } else {
3102
+ this.loaded = true;
3091
3103
  }
3092
3104
  }
3093
3105
  /** Cached slice data */
@@ -3109,7 +3121,7 @@ class Slice {
3109
3121
  }
3110
3122
  execWrapper(call) {
3111
3123
  const onlineExec = call.exec.bind(call);
3112
- return () => {
3124
+ return async () => {
3113
3125
  if (this.offlineEnabled && navigator && !(navigator == null ? void 0 : navigator.onLine)) {
3114
3126
  const where = (row, condition) => {
3115
3127
  if (Array.isArray(condition) ? !condition.length : condition == null) return true;
@@ -3127,6 +3139,7 @@ class Slice {
3127
3139
  if (condition[0] == "$mod") return where(row, condition[1]) % where(row, condition[2]);
3128
3140
  return condition[0];
3129
3141
  };
3142
+ await sleepWhile(() => !this.loaded);
3130
3143
  let request = call.raw, resp = {};
3131
3144
  if (request["$/slice/delete"]) {
3132
3145
  const found = this.cache.filter((r) => where(r, request["$/slice/delete"]["where"])).map((r) => r.id);
@@ -3181,17 +3194,16 @@ class Slice {
3181
3194
  tx: null
3182
3195
  };
3183
3196
  }
3184
- if (request["$pop"]) {
3197
+ if (request["$pop"])
3185
3198
  resp = request["$pop"].split(":").reduce((acc, key) => acc[JSONAttemptParse(key)], resp);
3186
- }
3187
- return Promise.resolve(resp);
3199
+ return resp;
3188
3200
  } else {
3189
3201
  return onlineExec();
3190
3202
  }
3191
3203
  };
3192
3204
  }
3193
3205
  async pushChanges() {
3194
- if (this.offlineEnabled && navigator && navigator.onLine) {
3206
+ if (this.offlineEnabled && this.api.online) {
3195
3207
  await Promise.allSettled(
3196
3208
  this.cache.values().map((value) => {
3197
3209
  if (value._sync == "delete") {
@@ -3254,7 +3266,10 @@ class Slice {
3254
3266
  */
3255
3267
  sync(on = true) {
3256
3268
  if (on) {
3257
- this.pushChanges().then(() => this.select().rows().exec().then((rows) => this.cache = rows));
3269
+ this.pushChanges().then(() => this.select().rows().exec().then((rows) => {
3270
+ this.cache = rows;
3271
+ this.loaded = true;
3272
+ }));
3258
3273
  if (!this.unsubscribe) this.unsubscribe = this.api.socket.sliceEvents(this.slice, (event) => {
3259
3274
  const ids = [...event.data.new, ...event.data.changed];
3260
3275
  this.select(ids).rows().exec().then((rows) => this.cache = [...this.cache.filter((c) => c.id != null && !ids.includes(c.id)), ...rows]);
@@ -3371,7 +3386,7 @@ class Socket {
3371
3386
  this.close();
3372
3387
  this.connect();
3373
3388
  }, timeout * 1e3);
3374
- if (navigator.onLine) {
3389
+ if (this.api.online) {
3375
3390
  this.socket = new WebSocket(this.options.url + (this.api.token ? `?token=${this.api.token}&origin=${location.href}` : ""));
3376
3391
  this.socket.onopen = () => clearTimeout(this.retry);
3377
3392
  this.socket.onclose = () => {
@@ -3450,7 +3465,7 @@ class Superuser {
3450
3465
  } });
3451
3466
  }
3452
3467
  }
3453
- const version = "1.3.3";
3468
+ const version = "1.3.5";
3454
3469
  class WebRtc {
3455
3470
  constructor(api) {
3456
3471
  __publicField(this, "ice");
@@ -3588,6 +3603,12 @@ const _Api = class _Api {
3588
3603
  __publicField(this, "bundle", []);
3589
3604
  /** Bundle lifecycle tracking */
3590
3605
  __publicField(this, "bundleOngoing", false);
3606
+ /** Track online state */
3607
+ __publicField(this, "heartbeat", {
3608
+ interval: null,
3609
+ target: "version.php",
3610
+ timeout: 6e4
3611
+ });
3591
3612
  /** LocalStorage key for persisting logins */
3592
3613
  __publicField(this, "localStorageKey", "datalynk-token");
3593
3614
  /** Pending requests cache */
@@ -3617,6 +3638,8 @@ const _Api = class _Api {
3617
3638
  __publicField(this, "url");
3618
3639
  /** Client library version */
3619
3640
  __publicField(this, "version", version);
3641
+ __publicField(this, "onlineOverride", false);
3642
+ __publicField(this, "_online", typeof navigator == "undefined" ? true : navigator.onLine);
3620
3643
  /** API Session token */
3621
3644
  __publicField(this, "token$", new BehaviorSubject(void 0));
3622
3645
  var _a, _b;
@@ -3638,7 +3661,7 @@ const _Api = class _Api {
3638
3661
  }
3639
3662
  };
3640
3663
  if (this.options.saveSession) {
3641
- if (localStorage == void 0) return;
3664
+ if (typeof localStorage == "undefined") return;
3642
3665
  this.token = localStorage.getItem(this.localStorageKey) || null;
3643
3666
  this.token$.pipe(distinctUntilChanged()).subscribe((token) => {
3644
3667
  if (token) localStorage.setItem(this.localStorageKey, token);
@@ -3652,25 +3675,70 @@ const _Api = class _Api {
3652
3675
  this.pwa = new PWA(this);
3653
3676
  this.superuser = new Superuser(this);
3654
3677
  this.webrtc = new WebRtc(this);
3678
+ if (typeof window !== "undefined") {
3679
+ const handleOffline = (state) => {
3680
+ this._online = state;
3681
+ this.offlineBanner();
3682
+ };
3683
+ window.addEventListener("online", () => handleOffline(true));
3684
+ window.addEventListener("offline", () => handleOffline(false));
3685
+ this.startHeartbeat();
3686
+ this.offlineBanner();
3687
+ }
3655
3688
  if ((_a = this.options.offline) == null ? void 0 : _a.length) {
3656
3689
  this.pwa.setup();
3657
3690
  if (typeof indexedDB == "undefined") throw new Error("Cannot enable offline support, indexedDB is not available in this environment");
3658
3691
  this.database = new Database("datalynk", this.options.offline);
3659
3692
  (_b = this.options.offline) == null ? void 0 : _b.forEach((id) => this.slice(id));
3660
3693
  if (this.options.serviceWorker && typeof navigator["serviceWorker"] != "undefined") {
3661
- navigator.serviceWorker.getRegistration(this.options.serviceWorker).then((reg) => reg ?? navigator.serviceWorker.register(this.options.serviceWorker, { scope: "/", type: "module" }));
3694
+ (async () => {
3695
+ const init = () => {
3696
+ var _a2;
3697
+ (_a2 = navigator.serviceWorker.controller) == null ? void 0 : _a2.postMessage({ options: { ...this.options, url: this.url } });
3698
+ this.token$.subscribe((token) => {
3699
+ var _a3;
3700
+ return (_a3 = navigator.serviceWorker.controller) == null ? void 0 : _a3.postMessage({ token });
3701
+ });
3702
+ };
3703
+ await navigator.serviceWorker.getRegistration(this.options.serviceWorker).then((reg) => reg ?? navigator.serviceWorker.register(this.options.serviceWorker, { scope: "/", type: "module" }));
3704
+ navigator.serviceWorker.ready.then(() => {
3705
+ if (navigator.serviceWorker.controller) navigator.serviceWorker.ready.then(() => init());
3706
+ else navigator.serviceWorker.addEventListener("controllerchange", () => init(), { once: true });
3707
+ });
3708
+ })();
3662
3709
  }
3663
3710
  }
3664
3711
  }
3712
+ /** Is token expired */
3713
+ get expired() {
3714
+ var _a;
3715
+ return (((_a = this.jwtPayload) == null ? void 0 : _a.exp) ?? Infinity) * 1e3 <= Date.now();
3716
+ }
3665
3717
  /** Get session info from JWT payload */
3666
3718
  get jwtPayload() {
3667
3719
  if (!this.token) return null;
3668
3720
  return decodeJwt(this.token);
3669
3721
  }
3670
- /** Is token expired */
3671
- get expired() {
3672
- var _a;
3673
- return (((_a = this.jwtPayload) == null ? void 0 : _a.exp) ?? Infinity) * 1e3 <= Date.now();
3722
+ /** Check if we are connected */
3723
+ get online() {
3724
+ return this._online;
3725
+ }
3726
+ get offline() {
3727
+ return !this._online;
3728
+ }
3729
+ /** Override connection status */
3730
+ set online(value) {
3731
+ if (value == null) {
3732
+ this.onlineOverride = false;
3733
+ this._online = typeof navigator == "undefined" ? true : navigator.onLine;
3734
+ } else {
3735
+ this.onlineOverride = true;
3736
+ if (value == this.online) return;
3737
+ this._online = value;
3738
+ if (value) this.startHeartbeat();
3739
+ else this.stopHeartbeat();
3740
+ }
3741
+ this.offlineBanner();
3674
3742
  }
3675
3743
  /** Logged in spoke */
3676
3744
  get spoke() {
@@ -3694,12 +3762,54 @@ const _Api = class _Api {
3694
3762
  }),
3695
3763
  body: JSON.stringify(_Api.translateTokens(req))
3696
3764
  }).then(async (resp) => {
3765
+ this.online = true;
3697
3766
  let data = JSONAttemptParse(await resp.text());
3698
3767
  if (!resp.ok || (data == null ? void 0 : data.error)) throw Object.assign(errorFromCode(resp.status, data.error), data);
3699
3768
  if (!options.raw) data = _Api.translateTokens(data);
3700
3769
  return data;
3701
3770
  });
3702
3771
  }
3772
+ async checkConnection() {
3773
+ if (typeof navigator != "undefined" && !navigator.onLine) {
3774
+ this._online = false;
3775
+ return;
3776
+ }
3777
+ if (this.onlineOverride) return;
3778
+ const controller = new AbortController();
3779
+ const timeout = setTimeout(() => controller.abort(), this.heartbeat.timeout);
3780
+ try {
3781
+ const response = await fetch(this.url + this.heartbeat.target, { signal: controller.signal });
3782
+ this._online = response.ok;
3783
+ } catch (error) {
3784
+ this._online = false;
3785
+ } finally {
3786
+ clearTimeout(timeout);
3787
+ }
3788
+ }
3789
+ offlineBanner() {
3790
+ if (this.options.offlineBanner === false || typeof document == "undefined") return;
3791
+ const banner = document.querySelector(".datalynk-offline-banner");
3792
+ if (this.online) {
3793
+ banner == null ? void 0 : banner.remove();
3794
+ } else if (!banner) {
3795
+ const b = document.createElement("div");
3796
+ b.className = "datalynk-offline-banner";
3797
+ Object.assign(b.style, { position: "fixed", [this.options.offlineBanner === "top" ? "top" : "bottom"]: "0", left: "0", right: "0", padding: ".75rem", fontSize: "1rem", fontWeight: "bolder", backgroundColor: "#dc3545", color: "#fff", textAlign: "center", zIndex: "9999" });
3798
+ b.innerHTML = "⚠️ You are offline, please reconnect to sync changes";
3799
+ document.body.appendChild(b);
3800
+ }
3801
+ }
3802
+ startHeartbeat() {
3803
+ this.stopHeartbeat();
3804
+ this.heartbeat.interval = setInterval(() => this.checkConnection(), this.heartbeat.timeout / 2);
3805
+ this.checkConnection();
3806
+ }
3807
+ stopHeartbeat() {
3808
+ if (this.heartbeat.interval) {
3809
+ clearInterval(this.heartbeat.interval);
3810
+ this.heartbeat.interval = null;
3811
+ }
3812
+ }
3703
3813
  /**
3704
3814
  * Get list of slices
3705
3815
  * @return {Promise<number[]>}
package/dist/pwa.d.ts CHANGED
@@ -2,6 +2,7 @@ import { Api } from './api';
2
2
  export declare class PWA {
3
3
  private readonly api;
4
4
  deferredPrompt: any;
5
+ get headless(): boolean;
5
6
  get iframe(): boolean;
6
7
  get mobile(): boolean;
7
8
  get platform(): 'android' | 'ios' | 'mac' | 'windows' | 'linux' | 'unknown';
package/dist/pwa.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pwa.d.ts","sourceRoot":"","sources":["../src/pwa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAE1B,qBAAa,GAAG;IAqBH,OAAO,CAAC,QAAQ,CAAC,GAAG;IApBzB,cAAc,EAAE,GAAG,CAAQ;IAElC,IAAI,MAAM,IAAI,OAAO,CAAyC;IAE9D,IAAI,MAAM,IAAI,OAAO,CAAuD;IAE5E,IAAI,QAAQ,IAAI,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAQ1E;IAED,IAAI,GAAG,IAAI,OAAO,CAEjB;gBAE4B,GAAG,EAAE,GAAG;IAErC,OAAO,CAAC,iBAAiB;IAezB,oBAAoB;IACd,KAAK,CAAC,QAAQ,GAAE,GAAQ;IAmE9B,qCAAqC;IAC/B,MAAM,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,KAAK;CAgJzC"}
1
+ {"version":3,"file":"pwa.d.ts","sourceRoot":"","sources":["../src/pwa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAE1B,qBAAa,GAAG;IAuBH,OAAO,CAAC,QAAQ,CAAC,GAAG;IAtBzB,cAAc,EAAE,GAAG,CAAQ;IAElC,IAAI,QAAQ,IAAI,OAAO,CAAwC;IAE/D,IAAI,MAAM,IAAI,OAAO,CAAyC;IAE9D,IAAI,MAAM,IAAI,OAAO,CAAuD;IAE5E,IAAI,QAAQ,IAAI,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAQ1E;IAED,IAAI,GAAG,IAAI,OAAO,CAEjB;gBAE4B,GAAG,EAAE,GAAG;IAErC,OAAO,CAAC,iBAAiB;IAezB,oBAAoB;IACd,KAAK,CAAC,QAAQ,GAAE,GAAQ;IAmE9B,qCAAqC;IAC/B,MAAM,CAAC,QAAQ,CAAC,EAAE,SAAS,GAAG,KAAK;CAgJzC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=service.worker.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.worker.d.mts","sourceRoot":"","sources":["../src/service.worker.mjs"],"names":[],"mappings":""}
package/dist/slice.d.ts CHANGED
@@ -233,6 +233,7 @@ export declare class Slice<T extends Meta = any> {
233
233
  private api;
234
234
  private table?;
235
235
  private info?;
236
+ private loaded;
236
237
  private pendingInsert;
237
238
  /** Unsubscribe from changes, undefined if not subscribed */
238
239
  unsubscribe?: Unsubscribe | null;
@@ -1 +1 @@
1
- {"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../src/slice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../src/slice.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@auxilium/datalynk-client",
3
3
  "description": "Datalynk client library",
4
4
  "repository": "https://gitlab.auxiliumgroup.com/auxilium/datalynk/datalynk-client",
5
- "version": "1.3.3",
5
+ "version": "1.3.5",
6
6
  "author": "Zak Timson <zaktimson@gmail.com>",
7
7
  "private": false,
8
8
  "main": "./dist/index.cjs",