@iebh/tera-fy 2.3.7 → 2.3.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +35 -0
- package/dist/lib/projectFile.js +118 -6
- package/dist/lib/projectFile.js.map +1 -1
- package/dist/lib/syncro/entities.d.ts +7 -1
- package/dist/lib/syncro/entities.js +79 -95
- package/dist/lib/syncro/entities.js.map +1 -1
- package/dist/lib/syncro/keyed.js +24 -23
- package/dist/lib/syncro/keyed.js.map +1 -1
- package/dist/lib/syncro/syncro.d.ts +15 -2
- package/dist/lib/syncro/syncro.js +124 -43
- package/dist/lib/syncro/syncro.js.map +1 -1
- package/dist/lib/terafy.bootstrapper.js +11 -11
- package/dist/lib/terafy.bootstrapper.js.map +1 -1
- package/dist/lib/terafy.client.js +157 -158
- package/dist/lib/terafy.client.js.map +1 -1
- package/dist/lib/terafy.proxy.js +32 -27
- package/dist/lib/terafy.proxy.js.map +1 -1
- package/dist/lib/terafy.server.js +52 -54
- package/dist/lib/terafy.server.js.map +1 -1
- package/dist/plugin.vue2.es2019.js +27 -27
- package/dist/plugins/firebase.js +22 -10
- package/dist/plugins/firebase.js.map +1 -1
- package/dist/plugins/vue2.d.ts +1 -2
- package/dist/plugins/vue2.js +24 -17
- package/dist/plugins/vue2.js.map +1 -1
- package/dist/plugins/vue3.d.ts +1 -2
- package/dist/plugins/vue3.js +7 -11
- package/dist/plugins/vue3.js.map +1 -1
- package/dist/terafy.bootstrapper.es2019.js +2 -2
- package/dist/terafy.bootstrapper.js +2 -2
- package/dist/terafy.es2019.js +2 -2
- package/dist/terafy.js +1 -1
- package/lib/syncro/entities.ts +94 -103
- package/lib/syncro/keyed.ts +1 -0
- package/lib/syncro/syncro.ts +44 -8
- package/lib/terafy.client.ts +0 -1
- package/lib/terafy.server.ts +6 -7
- package/package.json +4 -3
- package/plugins/vue2.ts +2 -3
- package/plugins/vue3.ts +2 -4
- package/tsconfig.json +3 -3
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import { DocumentReference, Firestore } from 'firebase/firestore';
|
|
2
2
|
import { FirebaseApp } from 'firebase/app';
|
|
3
3
|
import { BoundSupabaseyFunction } from '@iebh/supabasey';
|
|
4
|
+
import type { PostgresSql } from './entities.js';
|
|
5
|
+
interface ThrottleOptions<T = any> {
|
|
6
|
+
limit: number;
|
|
7
|
+
interval: number;
|
|
8
|
+
strict: boolean;
|
|
9
|
+
}
|
|
4
10
|
interface ReactiveWrapper<T = any> {
|
|
5
11
|
doc: T;
|
|
6
12
|
setState: (newState: T) => void;
|
|
7
13
|
getState: () => T;
|
|
8
14
|
watch: (cb: (newState: T) => void) => void;
|
|
15
|
+
throttle?: ThrottleOptions | true;
|
|
9
16
|
}
|
|
10
17
|
interface PathSplitResult {
|
|
11
18
|
fsCollection: string;
|
|
@@ -40,6 +47,12 @@ export default class Syncro {
|
|
|
40
47
|
*/
|
|
41
48
|
static supabasey: BoundSupabaseyFunction;
|
|
42
49
|
/**
|
|
50
|
+
* Postgres SQL instance in use (injected by the Cloudflare Worker runtime via Hyperdrive)
|
|
51
|
+
*
|
|
52
|
+
* @type {PostgresSql}
|
|
53
|
+
*/
|
|
54
|
+
static db: PostgresSql;
|
|
55
|
+
/**
|
|
43
56
|
* The current user session, should be unique for the user + browser tab
|
|
44
57
|
* Used by the heartbeat system
|
|
45
58
|
*
|
|
@@ -134,7 +147,7 @@ export default class Syncro {
|
|
|
134
147
|
* Actions to preform when we are destroying this instance
|
|
135
148
|
* This is an array of function callbacks to execute in parallel when `destroy()` is called
|
|
136
149
|
*
|
|
137
|
-
* @type {Array<
|
|
150
|
+
* @type {Array<Function<Promise>>}
|
|
138
151
|
*/
|
|
139
152
|
_destroyActions: Array<() => void>;
|
|
140
153
|
/**
|
|
@@ -264,7 +277,7 @@ export default class Syncro {
|
|
|
264
277
|
*
|
|
265
278
|
* @param {Object} [options] Additional options to mutate behaviour
|
|
266
279
|
* @param {Boolean} [options.immediate=false] Fire a heartbeat as soon as this function is called, this is only really useful on mount
|
|
267
|
-
* @returns Promise that resolves
|
|
280
|
+
* @returns {Promise|Void} A promise that resolves when completed (if `{immediate:true}`) or void
|
|
268
281
|
*/
|
|
269
282
|
setHeartbeat(enable?: boolean, options?: any): Promise<void> | void;
|
|
270
283
|
/**
|
|
@@ -5,6 +5,7 @@ import { doc as FirestoreDocRef, getDoc as FirestoreGetDoc, onSnapshot as Firest
|
|
|
5
5
|
// @ts-expect-error No declaration file for marshal
|
|
6
6
|
import marshal from '@momsfriendlydevco/marshal';
|
|
7
7
|
import { nanoid } from 'nanoid';
|
|
8
|
+
import PromiseThrottle from 'p-throttle';
|
|
8
9
|
import PromiseRetry from 'p-retry';
|
|
9
10
|
import { FirebaseError } from 'firebase/app';
|
|
10
11
|
/**
|
|
@@ -14,6 +15,91 @@ import { FirebaseError } from 'firebase/app';
|
|
|
14
15
|
* This class tries to be as independent as possible to help with adapting it to various front-end TERA-fy plugin frameworks
|
|
15
16
|
*/
|
|
16
17
|
export default class Syncro {
|
|
18
|
+
/**
|
|
19
|
+
* Firebase instance in use
|
|
20
|
+
*
|
|
21
|
+
* @type {FirebaseApp}
|
|
22
|
+
*/
|
|
23
|
+
static firebase;
|
|
24
|
+
/**
|
|
25
|
+
* Firestore instance in use
|
|
26
|
+
*
|
|
27
|
+
* @type {Firestore}
|
|
28
|
+
*/
|
|
29
|
+
static firestore;
|
|
30
|
+
/**
|
|
31
|
+
* Supabasey instance in use
|
|
32
|
+
*
|
|
33
|
+
* @type {Supabasey}
|
|
34
|
+
*/
|
|
35
|
+
static supabasey;
|
|
36
|
+
/**
|
|
37
|
+
* Postgres SQL instance in use (injected by the Cloudflare Worker runtime via Hyperdrive)
|
|
38
|
+
*
|
|
39
|
+
* @type {PostgresSql}
|
|
40
|
+
*/
|
|
41
|
+
static db;
|
|
42
|
+
/**
|
|
43
|
+
* The current user session, should be unique for the user + browser tab
|
|
44
|
+
* Used by the heartbeat system
|
|
45
|
+
*
|
|
46
|
+
* @type {String}
|
|
47
|
+
*/
|
|
48
|
+
static session;
|
|
49
|
+
/**
|
|
50
|
+
* OPTIONAL SyncroEntries from './entities.ts' if its required
|
|
51
|
+
* This only gets populated if `config.forceLocalInit` is truthy and we've mounted at least one Syncro
|
|
52
|
+
*
|
|
53
|
+
* @type {Record<string, any>}
|
|
54
|
+
*/
|
|
55
|
+
static SyncroEntities;
|
|
56
|
+
/**
|
|
57
|
+
* This instances fully formed string path
|
|
58
|
+
*
|
|
59
|
+
* @type {String}
|
|
60
|
+
*/
|
|
61
|
+
path;
|
|
62
|
+
/**
|
|
63
|
+
* The Firestore docHandle when calling various Firestore functions
|
|
64
|
+
*
|
|
65
|
+
* @type {DocumentReference | undefined}
|
|
66
|
+
*/
|
|
67
|
+
docRef;
|
|
68
|
+
/**
|
|
69
|
+
* The reactive object managed by this Syncro instance
|
|
70
|
+
* The nature of this varies by framework and what `getReactive()` provides
|
|
71
|
+
*
|
|
72
|
+
* @type {any}
|
|
73
|
+
*/
|
|
74
|
+
value;
|
|
75
|
+
/**
|
|
76
|
+
* Default throttle to apply for writes
|
|
77
|
+
*
|
|
78
|
+
* @type {Number} Throttle time in milliseconds
|
|
79
|
+
*/
|
|
80
|
+
throttle = 250;
|
|
81
|
+
/**
|
|
82
|
+
* Various Misc config for the Syncro instance
|
|
83
|
+
*
|
|
84
|
+
* @type {Object}
|
|
85
|
+
* @property {Number} heartbeatInterval Time in milliseconds between heartbeat beacons
|
|
86
|
+
* @property {String} syncroRegistryUrl The prefix Sync worker URL, used to populate Syncros and determine their active status
|
|
87
|
+
* @property {Object} context Additional named parameters to pass to callbacks like initState
|
|
88
|
+
*/
|
|
89
|
+
config = {
|
|
90
|
+
heartbeatInterval: 120_000, //~= 120s / 2m
|
|
91
|
+
syncroRegistryUrl: 'https://tera-tools.com/api/sync',
|
|
92
|
+
context: {},
|
|
93
|
+
};
|
|
94
|
+
/**
|
|
95
|
+
* Whether the next heartbeat should be marked as 'dirty'
|
|
96
|
+
* This indicates that at least one change has occurred since the last heartbeat and the server should perform a flush (but not a clean)
|
|
97
|
+
* This flag is only transmitted once in the next heartbeat before being reset
|
|
98
|
+
*
|
|
99
|
+
* @see markDirty()
|
|
100
|
+
* @type {Boolean}
|
|
101
|
+
*/
|
|
102
|
+
isDirty = false;
|
|
17
103
|
/**
|
|
18
104
|
* @interface
|
|
19
105
|
* Debugging printer for this instance
|
|
@@ -30,7 +116,7 @@ export default class Syncro {
|
|
|
30
116
|
* @param {*...} [msg] The message to output
|
|
31
117
|
*/
|
|
32
118
|
debugError(...msg) {
|
|
33
|
-
console.
|
|
119
|
+
console.warn(`[Syncro ${this.path}]`, ...msg);
|
|
34
120
|
}
|
|
35
121
|
/**
|
|
36
122
|
* Instance constructor
|
|
@@ -39,41 +125,6 @@ export default class Syncro {
|
|
|
39
125
|
* @param {Object} [options] Additional instance setters (mutates instance directly), note that the `config` subkey is merged with the existing config rather than assigned
|
|
40
126
|
*/
|
|
41
127
|
constructor(path, options) {
|
|
42
|
-
/**
|
|
43
|
-
* Default throttle to apply for writes
|
|
44
|
-
*
|
|
45
|
-
* @type {Number} Throttle time in milliseconds
|
|
46
|
-
*/
|
|
47
|
-
this.throttle = 250;
|
|
48
|
-
/**
|
|
49
|
-
* Various Misc config for the Syncro instance
|
|
50
|
-
*
|
|
51
|
-
* @type {Object}
|
|
52
|
-
* @property {Number} heartbeatInterval Time in milliseconds between heartbeat beacons
|
|
53
|
-
* @property {String} syncroRegistryUrl The prefix Sync worker URL, used to populate Syncros and determine their active status
|
|
54
|
-
* @property {Object} context Additional named parameters to pass to callbacks like initState
|
|
55
|
-
*/
|
|
56
|
-
this.config = {
|
|
57
|
-
heartbeatInterval: 120000, //~= 120s / 2m
|
|
58
|
-
syncroRegistryUrl: 'https://tera-tools.com/api/sync',
|
|
59
|
-
context: {},
|
|
60
|
-
};
|
|
61
|
-
/**
|
|
62
|
-
* Whether the next heartbeat should be marked as 'dirty'
|
|
63
|
-
* This indicates that at least one change has occurred since the last heartbeat and the server should perform a flush (but not a clean)
|
|
64
|
-
* This flag is only transmitted once in the next heartbeat before being reset
|
|
65
|
-
*
|
|
66
|
-
* @see markDirty()
|
|
67
|
-
* @type {Boolean}
|
|
68
|
-
*/
|
|
69
|
-
this.isDirty = false;
|
|
70
|
-
/**
|
|
71
|
-
* Actions to preform when we are destroying this instance
|
|
72
|
-
* This is an array of function callbacks to execute in parallel when `destroy()` is called
|
|
73
|
-
*
|
|
74
|
-
* @type {Array<function>}
|
|
75
|
-
*/
|
|
76
|
-
this._destroyActions = [];
|
|
77
128
|
this.path = path;
|
|
78
129
|
Object.assign(this, {
|
|
79
130
|
...options,
|
|
@@ -93,11 +144,19 @@ export default class Syncro {
|
|
|
93
144
|
*/
|
|
94
145
|
destroy() {
|
|
95
146
|
this.debug('Destroy!');
|
|
96
|
-
return Promise.
|
|
97
|
-
.
|
|
147
|
+
return Promise.resolve()
|
|
148
|
+
.then(() => Promise.all(this._destroyActions // eslint-disable @typescript-eslint/await-thenable
|
|
149
|
+
.map(fn => fn())))
|
|
98
150
|
.then(() => this._destroyActions = []); // Reset list of actions to perform when terminating
|
|
99
151
|
}
|
|
100
152
|
/**
|
|
153
|
+
* Actions to preform when we are destroying this instance
|
|
154
|
+
* This is an array of function callbacks to execute in parallel when `destroy()` is called
|
|
155
|
+
*
|
|
156
|
+
* @type {Array<Function<Promise>>}
|
|
157
|
+
*/
|
|
158
|
+
_destroyActions = [];
|
|
159
|
+
/**
|
|
101
160
|
* Function to return whatever the local framework uses as a reactive object
|
|
102
161
|
* This should respond with an object of mandatory functions to watch for changes and re-merge them
|
|
103
162
|
*
|
|
@@ -376,6 +435,22 @@ export default class Syncro {
|
|
|
376
435
|
reactive = this.getReactive(initialState);
|
|
377
436
|
if (!reactive.doc || !reactive.setState || !reactive.getState || !reactive.watch)
|
|
378
437
|
throw new Error('Syncro.getReactive() requires a returned `doc`, `setState()`, `getState()` + `watch()`');
|
|
438
|
+
// Accept throttling for reactiveWrapper if present
|
|
439
|
+
if (reactive.throttle) { // Wanting to throttle - handed either truthy or an object of throttle settings
|
|
440
|
+
let throttleSettings = {
|
|
441
|
+
limit: 2,
|
|
442
|
+
interval: 100, // i.e. 2 calls within 100ms, otherwise throttle
|
|
443
|
+
strict: false,
|
|
444
|
+
...(typeof reactive.throttle == 'object' && reactive.throttle), // Import throttle settings if any
|
|
445
|
+
};
|
|
446
|
+
// Wrap original reactive.setState() in a throttle function
|
|
447
|
+
let originalSetState = reactive.setState;
|
|
448
|
+
reactive.setState = PromiseThrottle({
|
|
449
|
+
limit: throttleSettings.limit,
|
|
450
|
+
interval: throttleSettings.interval,
|
|
451
|
+
onDelay: () => this.debug('Throttling excessive Syncro.setState() writes'),
|
|
452
|
+
})(originalSetState);
|
|
453
|
+
}
|
|
379
454
|
this.value = doc = reactive.doc;
|
|
380
455
|
this.debug('Initial state', { doc });
|
|
381
456
|
// Subscribe to remote updates
|
|
@@ -405,7 +480,7 @@ export default class Syncro {
|
|
|
405
480
|
reactive.watch(throttle((newState) => {
|
|
406
481
|
this.debug('Local change', { newState });
|
|
407
482
|
this.markDirty();
|
|
408
|
-
this.setFirestoreState(newState, { method: 'merge' });
|
|
483
|
+
this.setFirestoreState(newState, { method: 'merge' }); // eslint-disable-line @typescript-eslint/no-floating-promises
|
|
409
484
|
}, this.throttle));
|
|
410
485
|
await this.setHeartbeat(true, {
|
|
411
486
|
immediate: true,
|
|
@@ -486,7 +561,7 @@ export default class Syncro {
|
|
|
486
561
|
*
|
|
487
562
|
* @param {Object} [options] Additional options to mutate behaviour
|
|
488
563
|
* @param {Boolean} [options.immediate=false] Fire a heartbeat as soon as this function is called, this is only really useful on mount
|
|
489
|
-
* @returns Promise that resolves
|
|
564
|
+
* @returns {Promise|Void} A promise that resolves when completed (if `{immediate:true}`) or void
|
|
490
565
|
*/
|
|
491
566
|
setHeartbeat(enable = true, options) {
|
|
492
567
|
const settings = {
|
|
@@ -501,7 +576,7 @@ export default class Syncro {
|
|
|
501
576
|
await this.heartbeat();
|
|
502
577
|
// If we're enabled - schedule the next heartbeat timer
|
|
503
578
|
if (enable)
|
|
504
|
-
this.setHeartbeat(true); //
|
|
579
|
+
this.setHeartbeat(true); // eslint-disable-line @typescript-eslint/no-floating-promises
|
|
505
580
|
};
|
|
506
581
|
this._heartbeatTimer = setTimeout(heartbeatAction, this.config.heartbeatInterval);
|
|
507
582
|
if (settings.immediate)
|
|
@@ -624,6 +699,12 @@ export default class Syncro {
|
|
|
624
699
|
? null
|
|
625
700
|
: Promise.reject(response.statusText || 'An error occurred'));
|
|
626
701
|
}
|
|
702
|
+
/**
|
|
703
|
+
* Timer handle for heartbeats
|
|
704
|
+
*
|
|
705
|
+
* @type {any}
|
|
706
|
+
*/
|
|
707
|
+
_heartbeatTimer; // Using any for simplicity with NodeJS.Timeout / number
|
|
627
708
|
}
|
|
628
709
|
/**
|
|
629
710
|
* Build a chaotic random tree structure based on dice rolls
|
|
@@ -639,8 +720,8 @@ export function randomBranch(depth = 0) {
|
|
|
639
720
|
: random(0, 11 - depth, false); // Subsequent rolls bias downwards based on depth (to avoid recursion)
|
|
640
721
|
return (dice == 0 ? false
|
|
641
722
|
: dice == 1 ? true
|
|
642
|
-
: dice == 2 ? random(1,
|
|
643
|
-
: dice == 3 ? (new Date(random(
|
|
723
|
+
: dice == 2 ? random(1, 10_000)
|
|
724
|
+
: dice == 3 ? (new Date(random(1_000_000_000_000, 1_777_777_777_777))).toISOString()
|
|
644
725
|
: dice == 5 ? Array.from({ length: random(1, 10) }, () => random(1, 10)) // Added return type hint
|
|
645
726
|
: dice == 6 ? null
|
|
646
727
|
: dice < 8 ? Array.from({ length: random(1, 10) }, () => randomBranch(depth + 1)) // Added return type hint
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncro.js","sourceRoot":"","sources":["../../../lib/syncro/syncro.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"syncro.js","sourceRoot":"","sources":["../../../lib/syncro/syncro.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,10 @@ import { merge } from 'lodash-es';
|
|
|
6
6
|
* @class TeraFy
|
|
7
7
|
*/
|
|
8
8
|
export default class TeraFy {
|
|
9
|
+
settings = {
|
|
10
|
+
client: 'tera-fy', // Client name within https://tera-tools.com/api/tera-fy/<NAME>.js to load
|
|
11
|
+
clientType: 'esm',
|
|
12
|
+
};
|
|
9
13
|
/**
|
|
10
14
|
* Download the remote TERA-fy client, initialize it and mix it in with this class instance
|
|
11
15
|
*
|
|
@@ -58,6 +62,13 @@ export default class TeraFy {
|
|
|
58
62
|
.then(() => this); // Ensure the promise chain resolves with `this`
|
|
59
63
|
}
|
|
60
64
|
/**
|
|
65
|
+
* Methods to call post-init when the main TeraFyClient has loaded
|
|
66
|
+
* These are setup during construction
|
|
67
|
+
*
|
|
68
|
+
* @type {Array<Object>}
|
|
69
|
+
*/
|
|
70
|
+
bootstrapperDeferredMethods = [];
|
|
71
|
+
/**
|
|
61
72
|
* Go fetch a remote URL, inject it as a <script> element and resolve to the exported default
|
|
62
73
|
* This is a fix for the fact that regular import() can't accept URLs
|
|
63
74
|
*
|
|
@@ -103,17 +114,6 @@ export default class TeraFy {
|
|
|
103
114
|
* @param {String} [options] Optional settings to merge
|
|
104
115
|
*/
|
|
105
116
|
constructor(options) {
|
|
106
|
-
this.settings = {
|
|
107
|
-
client: 'tera-fy', // Client name within https://tera-tools.com/api/tera-fy/<NAME>.js to load
|
|
108
|
-
clientType: 'esm',
|
|
109
|
-
};
|
|
110
|
-
/**
|
|
111
|
-
* Methods to call post-init when the main TeraFyClient has loaded
|
|
112
|
-
* These are setup during construction
|
|
113
|
-
*
|
|
114
|
-
* @type {Array<Object>}
|
|
115
|
-
*/
|
|
116
|
-
this.bootstrapperDeferredMethods = [];
|
|
117
117
|
// Merge options if provided
|
|
118
118
|
if (options)
|
|
119
119
|
merge(this.settings, options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terafy.bootstrapper.js","sourceRoot":"","sources":["../../lib/terafy.bootstrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,WAAW,CAAC;AAYhC;;;;;EAKE;AACF,MAAM,CAAC,OAAO,OAAO,MAAM;
|
|
1
|
+
{"version":3,"file":"terafy.bootstrapper.js","sourceRoot":"","sources":["../../lib/terafy.bootstrapper.ts"],"names":[],"mappings":"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"}
|