@iebh/tera-fy 2.3.7 → 2.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/dist/lib/projectFile.js +118 -6
- package/dist/lib/projectFile.js.map +1 -1
- package/dist/lib/syncro/keyed.js +23 -23
- package/dist/lib/syncro/keyed.js.map +1 -1
- package/dist/lib/syncro/syncro.d.ts +8 -2
- package/dist/lib/syncro/syncro.js +118 -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/syncro.ts +35 -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
|
@@ -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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"}
|
|
@@ -8,6 +8,157 @@ import ProjectFile from './projectFile.js';
|
|
|
8
8
|
* @class TeraFy
|
|
9
9
|
*/
|
|
10
10
|
export default class TeraFy {
|
|
11
|
+
/**
|
|
12
|
+
* Various settings to configure behaviour
|
|
13
|
+
*
|
|
14
|
+
* @type {Object}
|
|
15
|
+
* @property {String} session Unique session signature for this instance of TeraFy, used to sign server messages, if falsy `getEntropicString(16)` is used to populate
|
|
16
|
+
* @property {Boolean} devMode Operate in Dev-Mode - i.e. force outer refresh when encountering an existing TeraFy instance + be more tolerant of weird iframe origins
|
|
17
|
+
* @property {Number} verbosity Verbosity level, the higher the more chatty TeraFY will be. Set to zero to disable all `debug()` call output
|
|
18
|
+
* @property {'detect'|'parent'|'child'|'popup'} mode How to communicate with TERA. 'parent' assumes that the parent of the current document is TERA, 'child' spawns an iFrame and uses TERA there, 'detect' tries parent and switches to `modeFallback` if communication fails
|
|
19
|
+
* @property {String} modeFallback Method to use when all method detection fails
|
|
20
|
+
* @property {Object<Object<Function>>} modeOverrides Functions to run when switching to specific modes, these are typically used to augment config. Called as `(config:Object)`
|
|
21
|
+
* @property {Number} modeTimeout How long entities have in 'detect' mode to identify themselves
|
|
22
|
+
* @property {String} siteUrl The TERA URL to connect to
|
|
23
|
+
* @property {String} restrictOrigin URL to restrict communications to
|
|
24
|
+
* @property {Array<String>} List of sandbox allowables for the embedded if in embed mode
|
|
25
|
+
* @property {Number} handshakeInterval Interval in milliseconds when scanning for a handshake
|
|
26
|
+
* @property {Number} handshakeTimeout Interval in milliseconds for when to give up trying to handshake
|
|
27
|
+
* @property {Array<String|Array<String>>} [debugPaths] List of paths (in either dotted or array notation) to enter debugging mode if a change is detected in dev mode e.g. `{debugPaths: ['foo.bar.baz']}`. This really slows down state writes so should only be used for debugging
|
|
28
|
+
*/
|
|
29
|
+
settings = {
|
|
30
|
+
session: null,
|
|
31
|
+
// client: 'tera-fy', // Reserved by terafy.bootstrapper.js
|
|
32
|
+
// clientType: 'esm', // Reserved by terafy.bootstrapper.js
|
|
33
|
+
devMode: false,
|
|
34
|
+
verbosity: 1,
|
|
35
|
+
mode: 'detect',
|
|
36
|
+
modeTimeout: 300,
|
|
37
|
+
modeFallback: 'child', // ENUM: 'child' (use iframes), 'popup' (use popup windows)
|
|
38
|
+
modeOverrides: {
|
|
39
|
+
child(config) {
|
|
40
|
+
if (config.siteUrl == 'https://tera-tools.com/embed') { // Only if we're using the default URL...
|
|
41
|
+
config.siteUrl = 'https://dev.tera-tools.com/embed'; // Repoint URL to dev site
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
// eslint-disable-next-line no-unused-vars
|
|
45
|
+
},
|
|
46
|
+
siteUrl: 'https://tera-tools.com/embed',
|
|
47
|
+
restrictOrigin: '*',
|
|
48
|
+
frameSandbox: [
|
|
49
|
+
'allow-forms',
|
|
50
|
+
'allow-modals',
|
|
51
|
+
'allow-orientation-lock',
|
|
52
|
+
'allow-pointer-lock',
|
|
53
|
+
'allow-popups',
|
|
54
|
+
'allow-popups-to-escape-sandbox',
|
|
55
|
+
'allow-presentation',
|
|
56
|
+
'allow-same-origin',
|
|
57
|
+
'allow-scripts',
|
|
58
|
+
'allow-top-navigation',
|
|
59
|
+
],
|
|
60
|
+
handshakeInterval: 1000, // ~1s
|
|
61
|
+
handshakeTimeout: 10_000, // ~10s
|
|
62
|
+
debugPaths: null, // Transformed into a Array<String> (in Lodash dotted notation) on init()
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* Event emitter subscription endpoint
|
|
66
|
+
* @type {Mitt}
|
|
67
|
+
*/
|
|
68
|
+
// @ts-ignore - Because mitt is exported as cjs typescript has trouble resolving default export
|
|
69
|
+
events = Mitt();
|
|
70
|
+
/**
|
|
71
|
+
* DOMElements for this TeraFy instance
|
|
72
|
+
*
|
|
73
|
+
* @type {Object}
|
|
74
|
+
* @property {DOMElement} el The main tera-fy div wrapper
|
|
75
|
+
* @property {DOMElement} iframe The internal iFrame element (if `settings.mode == 'child'`)
|
|
76
|
+
* @property {Window} popup The popup window context (if `settings.mode == 'popup'`)
|
|
77
|
+
* @property {DOMElement} stylesheet The corresponding stylesheet
|
|
78
|
+
*/
|
|
79
|
+
dom = {
|
|
80
|
+
el: null,
|
|
81
|
+
iframe: null,
|
|
82
|
+
popup: null,
|
|
83
|
+
stylesheet: null,
|
|
84
|
+
};
|
|
85
|
+
/**
|
|
86
|
+
* List of function stubs mapped from the server to here
|
|
87
|
+
* This array is forms the reference of `TeraFy.METHOD()` objects to provide locally which will be mapped via `TeraFy.rpc(METHOD, ...args)`
|
|
88
|
+
*
|
|
89
|
+
* @type {Array<String>}
|
|
90
|
+
*/
|
|
91
|
+
methods = [
|
|
92
|
+
// Messages
|
|
93
|
+
'handshake',
|
|
94
|
+
'setServerVerbosity',
|
|
95
|
+
// Session
|
|
96
|
+
'getUser',
|
|
97
|
+
'requireUser',
|
|
98
|
+
'getCredentials',
|
|
99
|
+
'getKindeToken',
|
|
100
|
+
// Projects
|
|
101
|
+
'bindProject',
|
|
102
|
+
'getProject',
|
|
103
|
+
'getProjects',
|
|
104
|
+
'setActiveProject',
|
|
105
|
+
'requireProject',
|
|
106
|
+
'selectProject',
|
|
107
|
+
// Project namespaces
|
|
108
|
+
// 'mountNamespace', // Handled by this library
|
|
109
|
+
// 'unmountNamespace', // Handled by this library
|
|
110
|
+
'getNamespace',
|
|
111
|
+
'setNamespace',
|
|
112
|
+
'listNamespaces',
|
|
113
|
+
// Project State
|
|
114
|
+
'getProjectState',
|
|
115
|
+
'setProjectState',
|
|
116
|
+
'setProjectStateDefaults',
|
|
117
|
+
'setProjectStateRefresh',
|
|
118
|
+
// Project files
|
|
119
|
+
// 'selectProjectFile', - Handled below (requires return collection mapped to ProjectFile)
|
|
120
|
+
// 'getProjectFiles', - Handled below (requires return collection mapped to ProjectFile)
|
|
121
|
+
// 'getProjectFile', - Handled below (requires return mapped to ProjectFile)
|
|
122
|
+
'getProjectFileContents',
|
|
123
|
+
// 'createProjectFile', - Handled below (requires return mapped to ProjectFile)
|
|
124
|
+
// 'moveProjectFile', - Handled below (requires return mapped to ProjectFile)
|
|
125
|
+
'deleteProjectFile',
|
|
126
|
+
'setProjectFileContents',
|
|
127
|
+
// Project folders
|
|
128
|
+
'createProjectFolder',
|
|
129
|
+
'deleteProjectFolder',
|
|
130
|
+
// Project Libraries
|
|
131
|
+
'selectProjectLibrary',
|
|
132
|
+
'getProjectLibrary',
|
|
133
|
+
'setProjectLibrary',
|
|
134
|
+
// Project Logging
|
|
135
|
+
'projectLog',
|
|
136
|
+
// Webpages
|
|
137
|
+
'setPage',
|
|
138
|
+
// UI
|
|
139
|
+
'uiAlert',
|
|
140
|
+
'uiConfirm',
|
|
141
|
+
'uiJson',
|
|
142
|
+
'uiPanic',
|
|
143
|
+
'uiProgress',
|
|
144
|
+
'uiPrompt',
|
|
145
|
+
'uiThrow',
|
|
146
|
+
'uiSplat',
|
|
147
|
+
'uiWindow',
|
|
148
|
+
];
|
|
149
|
+
/**
|
|
150
|
+
* Loaded plugins via Use()
|
|
151
|
+
* @type {Array<TeraFyPlugin>}
|
|
152
|
+
*/
|
|
153
|
+
plugins = [];
|
|
154
|
+
/**
|
|
155
|
+
* Active namespaces we are subscribed to
|
|
156
|
+
* Each key is the namespace name with the value as the local reactive \ observer \ object equivalent
|
|
157
|
+
* The key string is always of the form `${ENTITY}::${ID}` e.g. `projects:1234`
|
|
158
|
+
*
|
|
159
|
+
* @type {Object<Object>}
|
|
160
|
+
*/
|
|
161
|
+
namespaces = {};
|
|
11
162
|
// Messages - send(), sendRaw(), rpc(), acceptMessage() {{{
|
|
12
163
|
/**
|
|
13
164
|
* Send a message + wait for a response object
|
|
@@ -139,6 +290,10 @@ export default class TeraFy {
|
|
|
139
290
|
return Promise.resolve();
|
|
140
291
|
}
|
|
141
292
|
}
|
|
293
|
+
/**
|
|
294
|
+
* Listening postboxes, these correspond to outgoing message IDs that expect a response
|
|
295
|
+
*/
|
|
296
|
+
acceptPostboxes = {};
|
|
142
297
|
// }}}
|
|
143
298
|
// Project namespace - mountNamespace(), unmountNamespace() {{{
|
|
144
299
|
/**
|
|
@@ -205,166 +360,10 @@ export default class TeraFy {
|
|
|
205
360
|
* @param {Object} [options] Additional options to merge into `settings` via `set`
|
|
206
361
|
*/
|
|
207
362
|
constructor(options) {
|
|
208
|
-
/**
|
|
209
|
-
* Various settings to configure behaviour
|
|
210
|
-
*
|
|
211
|
-
* @type {Object}
|
|
212
|
-
* @property {String} session Unique session signature for this instance of TeraFy, used to sign server messages, if falsy `getEntropicString(16)` is used to populate
|
|
213
|
-
* @property {Boolean} devMode Operate in Dev-Mode - i.e. force outer refresh when encountering an existing TeraFy instance + be more tolerant of weird iframe origins
|
|
214
|
-
* @property {Number} verbosity Verbosity level, the higher the more chatty TeraFY will be. Set to zero to disable all `debug()` call output
|
|
215
|
-
* @property {'detect'|'parent'|'child'|'popup'} mode How to communicate with TERA. 'parent' assumes that the parent of the current document is TERA, 'child' spawns an iFrame and uses TERA there, 'detect' tries parent and switches to `modeFallback` if communication fails
|
|
216
|
-
* @property {String} modeFallback Method to use when all method detection fails
|
|
217
|
-
* @property {Object<Object<Function>>} modeOverrides Functions to run when switching to specific modes, these are typically used to augment config. Called as `(config:Object)`
|
|
218
|
-
* @property {Number} modeTimeout How long entities have in 'detect' mode to identify themselves
|
|
219
|
-
* @property {String} siteUrl The TERA URL to connect to
|
|
220
|
-
* @property {String} restrictOrigin URL to restrict communications to
|
|
221
|
-
* @property {Array<String>} List of sandbox allowables for the embedded if in embed mode
|
|
222
|
-
* @property {Number} handshakeInterval Interval in milliseconds when scanning for a handshake
|
|
223
|
-
* @property {Number} handshakeTimeout Interval in milliseconds for when to give up trying to handshake
|
|
224
|
-
* @property {Array<String|Array<String>>} [debugPaths] List of paths (in either dotted or array notation) to enter debugging mode if a change is detected in dev mode e.g. `{debugPaths: ['foo.bar.baz']}`. This really slows down state writes so should only be used for debugging
|
|
225
|
-
*/
|
|
226
|
-
this.settings = {
|
|
227
|
-
session: null,
|
|
228
|
-
// client: 'tera-fy', // Reserved by terafy.bootstrapper.js
|
|
229
|
-
// clientType: 'esm', // Reserved by terafy.bootstrapper.js
|
|
230
|
-
devMode: false,
|
|
231
|
-
verbosity: 1,
|
|
232
|
-
mode: 'detect',
|
|
233
|
-
modeTimeout: 300,
|
|
234
|
-
modeFallback: 'child', // ENUM: 'child' (use iframes), 'popup' (use popup windows)
|
|
235
|
-
modeOverrides: {
|
|
236
|
-
child(config) {
|
|
237
|
-
if (config.siteUrl == 'https://tera-tools.com/embed') { // Only if we're using the default URL...
|
|
238
|
-
config.siteUrl = 'https://dev.tera-tools.com/embed'; // Repoint URL to dev site
|
|
239
|
-
}
|
|
240
|
-
},
|
|
241
|
-
// eslint-disable-next-line no-unused-vars
|
|
242
|
-
},
|
|
243
|
-
siteUrl: 'https://tera-tools.com/embed',
|
|
244
|
-
restrictOrigin: '*',
|
|
245
|
-
frameSandbox: [
|
|
246
|
-
'allow-forms',
|
|
247
|
-
'allow-modals',
|
|
248
|
-
'allow-orientation-lock',
|
|
249
|
-
'allow-pointer-lock',
|
|
250
|
-
'allow-popups',
|
|
251
|
-
'allow-popups-to-escape-sandbox',
|
|
252
|
-
'allow-presentation',
|
|
253
|
-
'allow-same-origin',
|
|
254
|
-
'allow-scripts',
|
|
255
|
-
'allow-top-navigation',
|
|
256
|
-
],
|
|
257
|
-
handshakeInterval: 1000, // ~1s
|
|
258
|
-
handshakeTimeout: 10000, // ~10s
|
|
259
|
-
debugPaths: null, // Transformed into a Array<String> (in Lodash dotted notation) on init()
|
|
260
|
-
};
|
|
261
|
-
/**
|
|
262
|
-
* Event emitter subscription endpoint
|
|
263
|
-
* @type {Mitt}
|
|
264
|
-
*/
|
|
265
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
266
|
-
// @ts-ignore - Because mitt is exported as cjs typescript has trouble resolving default export
|
|
267
|
-
this.events = Mitt();
|
|
268
|
-
/**
|
|
269
|
-
* DOMElements for this TeraFy instance
|
|
270
|
-
*
|
|
271
|
-
* @type {Object}
|
|
272
|
-
* @property {DOMElement} el The main tera-fy div wrapper
|
|
273
|
-
* @property {DOMElement} iframe The internal iFrame element (if `settings.mode == 'child'`)
|
|
274
|
-
* @property {Window} popup The popup window context (if `settings.mode == 'popup'`)
|
|
275
|
-
* @property {DOMElement} stylesheet The corresponding stylesheet
|
|
276
|
-
*/
|
|
277
|
-
this.dom = {
|
|
278
|
-
el: null,
|
|
279
|
-
iframe: null,
|
|
280
|
-
popup: null,
|
|
281
|
-
stylesheet: null,
|
|
282
|
-
};
|
|
283
|
-
/**
|
|
284
|
-
* List of function stubs mapped from the server to here
|
|
285
|
-
* This array is forms the reference of `TeraFy.METHOD()` objects to provide locally which will be mapped via `TeraFy.rpc(METHOD, ...args)`
|
|
286
|
-
*
|
|
287
|
-
* @type {Array<String>}
|
|
288
|
-
*/
|
|
289
|
-
this.methods = [
|
|
290
|
-
// Messages
|
|
291
|
-
'handshake',
|
|
292
|
-
'setServerVerbosity',
|
|
293
|
-
// Session
|
|
294
|
-
'getUser',
|
|
295
|
-
'requireUser',
|
|
296
|
-
'getCredentials',
|
|
297
|
-
'getKindeToken',
|
|
298
|
-
// Projects
|
|
299
|
-
'bindProject',
|
|
300
|
-
'getProject',
|
|
301
|
-
'getProjects',
|
|
302
|
-
'setActiveProject',
|
|
303
|
-
'requireProject',
|
|
304
|
-
'selectProject',
|
|
305
|
-
// Project namespaces
|
|
306
|
-
// 'mountNamespace', // Handled by this library
|
|
307
|
-
// 'unmountNamespace', // Handled by this library
|
|
308
|
-
'getNamespace',
|
|
309
|
-
'setNamespace',
|
|
310
|
-
'listNamespaces',
|
|
311
|
-
// Project State
|
|
312
|
-
'getProjectState',
|
|
313
|
-
'setProjectState',
|
|
314
|
-
'setProjectStateDefaults',
|
|
315
|
-
'setProjectStateRefresh',
|
|
316
|
-
// Project files
|
|
317
|
-
// 'selectProjectFile', - Handled below (requires return collection mapped to ProjectFile)
|
|
318
|
-
// 'getProjectFiles', - Handled below (requires return collection mapped to ProjectFile)
|
|
319
|
-
// 'getProjectFile', - Handled below (requires return mapped to ProjectFile)
|
|
320
|
-
'getProjectFileContents',
|
|
321
|
-
// 'createProjectFile', - Handled below (requires return mapped to ProjectFile)
|
|
322
|
-
// 'moveProjectFile', - Handled below (requires return mapped to ProjectFile)
|
|
323
|
-
'deleteProjectFile',
|
|
324
|
-
'setProjectFileContents',
|
|
325
|
-
// Project folders
|
|
326
|
-
'createProjectFolder',
|
|
327
|
-
'deleteProjectFolder',
|
|
328
|
-
// Project Libraries
|
|
329
|
-
'selectProjectLibrary',
|
|
330
|
-
'getProjectLibrary',
|
|
331
|
-
'setProjectLibrary',
|
|
332
|
-
// Project Logging
|
|
333
|
-
'projectLog',
|
|
334
|
-
// Webpages
|
|
335
|
-
'setPage',
|
|
336
|
-
// UI
|
|
337
|
-
'uiAlert',
|
|
338
|
-
'uiConfirm',
|
|
339
|
-
'uiJson',
|
|
340
|
-
'uiPanic',
|
|
341
|
-
'uiProgress',
|
|
342
|
-
'uiPrompt',
|
|
343
|
-
'uiThrow',
|
|
344
|
-
'uiSplat',
|
|
345
|
-
'uiWindow',
|
|
346
|
-
];
|
|
347
|
-
/**
|
|
348
|
-
* Loaded plugins via Use()
|
|
349
|
-
* @type {Array<TeraFyPlugin>}
|
|
350
|
-
*/
|
|
351
|
-
this.plugins = [];
|
|
352
|
-
/**
|
|
353
|
-
* Active namespaces we are subscribed to
|
|
354
|
-
* Each key is the namespace name with the value as the local reactive \ observer \ object equivalent
|
|
355
|
-
* The key string is always of the form `${ENTITY}::${ID}` e.g. `projects:1234`
|
|
356
|
-
*
|
|
357
|
-
* @type {Object<Object>}
|
|
358
|
-
*/
|
|
359
|
-
this.namespaces = {};
|
|
360
|
-
/**
|
|
361
|
-
* Listening postboxes, these correspond to outgoing message IDs that expect a response
|
|
362
|
-
*/
|
|
363
|
-
this.acceptPostboxes = {};
|
|
364
|
-
this.initPromise = null;
|
|
365
363
|
if (options)
|
|
366
364
|
this.set(options);
|
|
367
365
|
}
|
|
366
|
+
initPromise = null;
|
|
368
367
|
/**
|
|
369
368
|
* Initialize the TERA client singleton
|
|
370
369
|
* This function can only be called once and will return the existing init() worker Promise if its called against
|
|
@@ -382,7 +381,7 @@ export default class TeraFy {
|
|
|
382
381
|
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
383
382
|
const context = this;
|
|
384
383
|
this.initPromise = Promise.resolve()
|
|
385
|
-
.then(() =>
|
|
384
|
+
.then(() => this.settings.session ||= 'tfy-' + this.getEntropicString(16))
|
|
386
385
|
.then(() => this.debug('INFO', 4, '[0/6] Init', 'Session', this.settings.session, 'against', this.settings.siteUrl))
|
|
387
386
|
.then(() => {
|
|
388
387
|
if (!this.settings.devMode)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terafy.client.js","sourceRoot":"","sources":["../../lib/terafy.client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"terafy.client.js","sourceRoot":"","sources":["../../lib/terafy.client.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/terafy.proxy.js
CHANGED
|
@@ -2,6 +2,38 @@ import { create as createDomain } from 'node:domain';
|
|
|
2
2
|
import detectPort from 'detect-port';
|
|
3
3
|
import Proxy from 'http-proxy';
|
|
4
4
|
export class TeraProxy {
|
|
5
|
+
/**
|
|
6
|
+
* Setup a local loopback proxy for TERA-tools.com
|
|
7
|
+
*
|
|
8
|
+
* @param {Object} [options] Additional options to mutate behaviour
|
|
9
|
+
* @param {Boolean} [options.force=false] Restart the server even if its apparently running
|
|
10
|
+
* @param {Boolean} [options.autoStart=true] Automatically start the proxy without calling `Plugin.start()`
|
|
11
|
+
* @param {String} [options.host='0.0.0.0'] Host IP to listen on
|
|
12
|
+
* @param {Number} [options.port=7334] Host port to listen on
|
|
13
|
+
* @param {String} [options.targetProtocol='https'] Target protocol to forward to
|
|
14
|
+
* @param {String} [options.targetHost='tera-tools.com'] Target host to forward to
|
|
15
|
+
* @param {Number} [options.targetPort=443] Target port to forward to
|
|
16
|
+
* @param {'ignore'|'throw'} [options.portConflict='ignore'] Action to take when something is already listening on the allocated port
|
|
17
|
+
* @param {Function} [options.onLog=console.log] Function to call with any logging output. Defaults to using console.log. Called as `(level:'INFO|'WARN', ...msg:any)`
|
|
18
|
+
*
|
|
19
|
+
* @returns {VitePlugin}
|
|
20
|
+
*/
|
|
21
|
+
settings = {
|
|
22
|
+
autoStart: true,
|
|
23
|
+
force: false,
|
|
24
|
+
host: '0.0.0.0',
|
|
25
|
+
port: 7334,
|
|
26
|
+
targetProtocol: 'https',
|
|
27
|
+
targetHost: 'dev.tera-tools.com',
|
|
28
|
+
targetPort: 443,
|
|
29
|
+
portConflict: 'ignore', // Add type assertion for stricter checking if needed elsewhere
|
|
30
|
+
onLog: (level, ...msg) => console.log(...msg),
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Eventual proxy server when the plugin has booted
|
|
34
|
+
* @type {ProxyServer}
|
|
35
|
+
*/
|
|
36
|
+
proxyServer;
|
|
5
37
|
/**
|
|
6
38
|
* Boot the proxy
|
|
7
39
|
*
|
|
@@ -77,33 +109,6 @@ export class TeraProxy {
|
|
|
77
109
|
.then(() => this.proxyServer && new Promise(resolve => this.proxyServer.close(() => resolve()))); // Use non-null assertion if sure it exists here
|
|
78
110
|
}
|
|
79
111
|
constructor(options) {
|
|
80
|
-
/**
|
|
81
|
-
* Setup a local loopback proxy for TERA-tools.com
|
|
82
|
-
*
|
|
83
|
-
* @param {Object} [options] Additional options to mutate behaviour
|
|
84
|
-
* @param {Boolean} [options.force=false] Restart the server even if its apparently running
|
|
85
|
-
* @param {Boolean} [options.autoStart=true] Automatically start the proxy without calling `Plugin.start()`
|
|
86
|
-
* @param {String} [options.host='0.0.0.0'] Host IP to listen on
|
|
87
|
-
* @param {Number} [options.port=7334] Host port to listen on
|
|
88
|
-
* @param {String} [options.targetProtocol='https'] Target protocol to forward to
|
|
89
|
-
* @param {String} [options.targetHost='tera-tools.com'] Target host to forward to
|
|
90
|
-
* @param {Number} [options.targetPort=443] Target port to forward to
|
|
91
|
-
* @param {'ignore'|'throw'} [options.portConflict='ignore'] Action to take when something is already listening on the allocated port
|
|
92
|
-
* @param {Function} [options.onLog=console.log] Function to call with any logging output. Defaults to using console.log. Called as `(level:'INFO|'WARN', ...msg:any)`
|
|
93
|
-
*
|
|
94
|
-
* @returns {VitePlugin}
|
|
95
|
-
*/
|
|
96
|
-
this.settings = {
|
|
97
|
-
autoStart: true,
|
|
98
|
-
force: false,
|
|
99
|
-
host: '0.0.0.0',
|
|
100
|
-
port: 7334,
|
|
101
|
-
targetProtocol: 'https',
|
|
102
|
-
targetHost: 'dev.tera-tools.com',
|
|
103
|
-
targetPort: 443,
|
|
104
|
-
portConflict: 'ignore', // Add type assertion for stricter checking if needed elsewhere
|
|
105
|
-
onLog: (level, ...msg) => console.log(...msg),
|
|
106
|
-
};
|
|
107
112
|
if (options)
|
|
108
113
|
Object.assign(this.settings, options);
|
|
109
114
|
// Auto start?
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terafy.proxy.js","sourceRoot":"","sources":["../../lib/terafy.proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,aAAa,CAAC;AACnD,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,MAAM,YAAY,CAAC;AAgB/B,MAAM,OAAO,SAAS;
|
|
1
|
+
{"version":3,"file":"terafy.proxy.js","sourceRoot":"","sources":["../../lib/terafy.proxy.ts"],"names":[],"mappings":"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"}
|