@iebh/tera-fy 2.0.0 → 2.0.2
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 +45 -0
- package/api.md +519 -526
- package/dist/plugin.vue2.es2019.js +20 -20
- package/dist/terafy.es2019.js +1 -1
- package/dist/terafy.js +1 -1
- package/documentation.yml +9 -1
- package/lib/syncro.js +274 -27
- package/lib/terafy.client.js +3 -2
- package/package.json +4 -3
- package/plugins/vue2.js +2 -1
package/api.md
CHANGED
|
@@ -49,128 +49,127 @@
|
|
|
49
49
|
* [acceptMessage][45]
|
|
50
50
|
* [Parameters][46]
|
|
51
51
|
* [acceptPostboxes][47]
|
|
52
|
-
* [
|
|
52
|
+
* [createProjectStatePatch][48]
|
|
53
53
|
* [Parameters][49]
|
|
54
|
-
* [
|
|
54
|
+
* [applyProjectStatePatch][50]
|
|
55
55
|
* [Parameters][51]
|
|
56
|
-
* [
|
|
56
|
+
* [applyProjectStatePatchLocal][52]
|
|
57
57
|
* [Parameters][53]
|
|
58
|
-
* [
|
|
58
|
+
* [init][54]
|
|
59
59
|
* [Parameters][55]
|
|
60
|
-
* [
|
|
61
|
-
|
|
62
|
-
* [
|
|
60
|
+
* [detectMode][56]
|
|
61
|
+
* [injectComms][57]
|
|
62
|
+
* [handshakeLoop][58]
|
|
63
63
|
* [Parameters][59]
|
|
64
|
-
|
|
65
|
-
* [
|
|
66
|
-
* [
|
|
67
|
-
|
|
68
|
-
* [
|
|
69
|
-
* [
|
|
70
|
-
|
|
71
|
-
* [
|
|
64
|
+
* [Properties][60]
|
|
65
|
+
* [injectStylesheet][61]
|
|
66
|
+
* [injectMethods][62]
|
|
67
|
+
* [debug][63]
|
|
68
|
+
* [Parameters][64]
|
|
69
|
+
* [set][65]
|
|
70
|
+
* [Parameters][66]
|
|
71
|
+
* [setIfDev][67]
|
|
72
72
|
* [Parameters][68]
|
|
73
|
-
* [
|
|
73
|
+
* [use][69]
|
|
74
74
|
* [Parameters][70]
|
|
75
|
-
* [
|
|
75
|
+
* [mixin][71]
|
|
76
76
|
* [Parameters][72]
|
|
77
|
-
* [
|
|
77
|
+
* [toggleDevMode][73]
|
|
78
78
|
* [Parameters][74]
|
|
79
|
-
* [
|
|
79
|
+
* [toggleFocus][75]
|
|
80
80
|
* [Parameters][76]
|
|
81
|
-
* [
|
|
81
|
+
* [getEntropicString][77]
|
|
82
82
|
* [Parameters][78]
|
|
83
|
-
* [
|
|
83
|
+
* [selectProjectFile][79]
|
|
84
84
|
* [Parameters][80]
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
* [Actual namespace
|
|
85
|
+
* [mountNamespace][81]
|
|
86
|
+
* [Parameters][82]
|
|
87
|
+
* [Actual namespace mounting function designed to be overriden by plugins][83]
|
|
88
|
+
* [Parameters][84]
|
|
89
|
+
* [unmountNamespace][85]
|
|
90
|
+
* [Parameters][86]
|
|
91
|
+
* [Actual namespace unmounting function designed to be overriden by plugins][87]
|
|
92
92
|
* [Parameters][88]
|
|
93
|
-
* [
|
|
94
|
-
* [
|
|
95
|
-
* [
|
|
96
|
-
* [
|
|
97
|
-
* [
|
|
98
|
-
* [
|
|
99
|
-
* [
|
|
100
|
-
|
|
101
|
-
* [
|
|
102
|
-
* [
|
|
103
|
-
|
|
104
|
-
* [
|
|
105
|
-
* [
|
|
106
|
-
* [
|
|
107
|
-
* [
|
|
108
|
-
|
|
109
|
-
* [
|
|
110
|
-
|
|
111
|
-
* [
|
|
112
|
-
|
|
113
|
-
* [
|
|
114
|
-
|
|
115
|
-
* [
|
|
116
|
-
|
|
117
|
-
* [
|
|
118
|
-
|
|
119
|
-
* [
|
|
120
|
-
|
|
121
|
-
* [
|
|
122
|
-
|
|
123
|
-
* [
|
|
124
|
-
|
|
125
|
-
* [
|
|
126
|
-
* [
|
|
127
|
-
* [
|
|
128
|
-
|
|
129
|
-
* [
|
|
130
|
-
|
|
131
|
-
* [
|
|
132
|
-
* [
|
|
133
|
-
|
|
134
|
-
* [
|
|
135
|
-
|
|
136
|
-
* [
|
|
137
|
-
|
|
138
|
-
* [
|
|
139
|
-
|
|
140
|
-
* [
|
|
141
|
-
|
|
142
|
-
* [
|
|
143
|
-
|
|
144
|
-
* [
|
|
145
|
-
|
|
146
|
-
* [
|
|
147
|
-
|
|
148
|
-
* [
|
|
149
|
-
|
|
150
|
-
* [
|
|
151
|
-
|
|
152
|
-
* [
|
|
153
|
-
|
|
154
|
-
* [
|
|
155
|
-
|
|
156
|
-
* [
|
|
157
|
-
|
|
158
|
-
* [
|
|
159
|
-
|
|
160
|
-
* [
|
|
161
|
-
|
|
162
|
-
* [
|
|
163
|
-
|
|
164
|
-
* [
|
|
165
|
-
|
|
166
|
-
* [
|
|
167
|
-
|
|
168
|
-
* [
|
|
169
|
-
|
|
170
|
-
* [
|
|
171
|
-
|
|
172
|
-
* [
|
|
173
|
-
* [Parameters][169]
|
|
93
|
+
* [handshake][89]
|
|
94
|
+
* [Properties][90]
|
|
95
|
+
* [setServerVerbosity][91]
|
|
96
|
+
* [Parameters][92]
|
|
97
|
+
* [User][93]
|
|
98
|
+
* [Properties][94]
|
|
99
|
+
* [getUser][95]
|
|
100
|
+
* [getCredentials][96]
|
|
101
|
+
* [requireUser][97]
|
|
102
|
+
* [Parameters][98]
|
|
103
|
+
* [Project][99]
|
|
104
|
+
* [getProject][100]
|
|
105
|
+
* [getProjects][101]
|
|
106
|
+
* [setActiveProject][102]
|
|
107
|
+
* [Parameters][103]
|
|
108
|
+
* [requireProject][104]
|
|
109
|
+
* [Parameters][105]
|
|
110
|
+
* [selectProject][106]
|
|
111
|
+
* [Parameters][107]
|
|
112
|
+
* [getNamespace][108]
|
|
113
|
+
* [Parameters][109]
|
|
114
|
+
* [setNamespace][110]
|
|
115
|
+
* [Parameters][111]
|
|
116
|
+
* [listNamespaces][112]
|
|
117
|
+
* [Properties][113]
|
|
118
|
+
* [getProjectState][114]
|
|
119
|
+
* [Parameters][115]
|
|
120
|
+
* [setProjectState][116]
|
|
121
|
+
* [Parameters][117]
|
|
122
|
+
* [setProjectStateDefaults][118]
|
|
123
|
+
* [Parameters][119]
|
|
124
|
+
* [setProjectStateRefresh][120]
|
|
125
|
+
* [saveProjectState][121]
|
|
126
|
+
* [replaceProjectState][122]
|
|
127
|
+
* [Parameters][123]
|
|
128
|
+
* [applyProjectStatePatch][124]
|
|
129
|
+
* [Parameters][125]
|
|
130
|
+
* [subscribeProjectState][126]
|
|
131
|
+
* [FileFilters][127]
|
|
132
|
+
* [Properties][128]
|
|
133
|
+
* [selectProjectFile][129]
|
|
134
|
+
* [Parameters][130]
|
|
135
|
+
* [getProjectFiles][131]
|
|
136
|
+
* [Parameters][132]
|
|
137
|
+
* [getProjectFileContents][133]
|
|
138
|
+
* [Parameters][134]
|
|
139
|
+
* [getProjectFile][135]
|
|
140
|
+
* [Parameters][136]
|
|
141
|
+
* [createProjectFile][137]
|
|
142
|
+
* [Parameters][138]
|
|
143
|
+
* [deleteProjectFile][139]
|
|
144
|
+
* [Parameters][140]
|
|
145
|
+
* [setProjectFileContents][141]
|
|
146
|
+
* [Parameters][142]
|
|
147
|
+
* [selectProjectLibrary][143]
|
|
148
|
+
* [Parameters][144]
|
|
149
|
+
* [getProjectLibrary][145]
|
|
150
|
+
* [Parameters][146]
|
|
151
|
+
* [setProjectLibrary][147]
|
|
152
|
+
* [Parameters][148]
|
|
153
|
+
* [projectLog][149]
|
|
154
|
+
* [Parameters][150]
|
|
155
|
+
* [setPage][151]
|
|
156
|
+
* [Parameters][152]
|
|
157
|
+
* [uiAlert][153]
|
|
158
|
+
* [Parameters][154]
|
|
159
|
+
* [uiConfirm][155]
|
|
160
|
+
* [Parameters][156]
|
|
161
|
+
* [uiPanic][157]
|
|
162
|
+
* [Parameters][158]
|
|
163
|
+
* [uiProgress][159]
|
|
164
|
+
* [Parameters][160]
|
|
165
|
+
* [uiPrompt][161]
|
|
166
|
+
* [Parameters][162]
|
|
167
|
+
* [uiThrow][163]
|
|
168
|
+
* [Parameters][164]
|
|
169
|
+
* [uiWindow][165]
|
|
170
|
+
* [Parameters][166]
|
|
171
|
+
* [uiSplat][167]
|
|
172
|
+
* [Parameters][168]
|
|
174
173
|
|
|
175
174
|
## ProjectFile
|
|
176
175
|
|
|
@@ -180,113 +179,113 @@ A project file fetched from TERA
|
|
|
180
179
|
|
|
181
180
|
A UUID string representing the unique ID of the file
|
|
182
181
|
|
|
183
|
-
Type: [String][
|
|
182
|
+
Type: [String][169]
|
|
184
183
|
|
|
185
184
|
### name
|
|
186
185
|
|
|
187
186
|
Relative name path (can contain prefix directories) for the human readable file name
|
|
188
187
|
|
|
189
|
-
Type: [String][
|
|
188
|
+
Type: [String][169]
|
|
190
189
|
|
|
191
190
|
### icon
|
|
192
191
|
|
|
193
192
|
CSS class to use as the file icon
|
|
194
193
|
|
|
195
|
-
Type: [String][
|
|
194
|
+
Type: [String][169]
|
|
196
195
|
|
|
197
196
|
### path
|
|
198
197
|
|
|
199
198
|
Full path to the file
|
|
200
199
|
This is also used as the unique identifier within the project
|
|
201
200
|
|
|
202
|
-
Type: [String][
|
|
201
|
+
Type: [String][169]
|
|
203
202
|
|
|
204
203
|
### url
|
|
205
204
|
|
|
206
205
|
Fully qualified URL to view / access / download the file from TERA
|
|
207
206
|
This will usually open an edit UI within the TERA site
|
|
208
207
|
|
|
209
|
-
Type: [String][
|
|
208
|
+
Type: [String][169]
|
|
210
209
|
|
|
211
210
|
### teraUrl
|
|
212
211
|
|
|
213
212
|
Rewrite of the URL where the absolute URL has been removed in place of a relative path, assuming the owner project is active
|
|
214
213
|
This is used to direct to the edit/view/download UI when the files project is active and is usually used in place of URL for TERA related operations
|
|
215
214
|
|
|
216
|
-
Type: [String][
|
|
215
|
+
Type: [String][169]
|
|
217
216
|
|
|
218
217
|
### parsedName
|
|
219
218
|
|
|
220
219
|
An object representing meta file parts of a file name
|
|
221
220
|
|
|
222
|
-
Type: [Object][
|
|
221
|
+
Type: [Object][170]
|
|
223
222
|
|
|
224
223
|
#### Properties
|
|
225
224
|
|
|
226
|
-
* `basename` **[String][
|
|
227
|
-
* `filename` **[String][
|
|
228
|
-
* `ext` **[String][
|
|
229
|
-
* `dirName` **[String][
|
|
225
|
+
* `basename` **[String][169]** The filename + extention (i.e. everything without directory name)
|
|
226
|
+
* `filename` **[String][169]** The file portion of the name (basename without the extension)
|
|
227
|
+
* `ext` **[String][169]** The extension portion of the name (always lower case)
|
|
228
|
+
* `dirName` **[String][169]** The directory path portion of the name
|
|
230
229
|
|
|
231
230
|
### created
|
|
232
231
|
|
|
233
232
|
A date representing when the file was created
|
|
234
233
|
|
|
235
|
-
Type: [Date][
|
|
234
|
+
Type: [Date][171]
|
|
236
235
|
|
|
237
236
|
### createdFormatted
|
|
238
237
|
|
|
239
238
|
A human readable, formatted version of "created"
|
|
240
239
|
|
|
241
|
-
Type: [String][
|
|
240
|
+
Type: [String][169]
|
|
242
241
|
|
|
243
242
|
### modified
|
|
244
243
|
|
|
245
244
|
A date representing when the file was created
|
|
246
245
|
|
|
247
|
-
Type: [Date][
|
|
246
|
+
Type: [Date][171]
|
|
248
247
|
|
|
249
248
|
### modifiedFormatted
|
|
250
249
|
|
|
251
250
|
A human readable, formatted version of "modified"
|
|
252
251
|
|
|
253
|
-
Type: [String][
|
|
252
|
+
Type: [String][169]
|
|
254
253
|
|
|
255
254
|
### accessed
|
|
256
255
|
|
|
257
256
|
A date representing when the file was last accessed
|
|
258
257
|
|
|
259
|
-
Type: [Date][
|
|
258
|
+
Type: [Date][171]
|
|
260
259
|
|
|
261
260
|
### accessedFormatted
|
|
262
261
|
|
|
263
262
|
A human readable, formatted version of "accessed"
|
|
264
263
|
|
|
265
|
-
Type: [String][
|
|
264
|
+
Type: [String][169]
|
|
266
265
|
|
|
267
266
|
### size
|
|
268
267
|
|
|
269
268
|
Size, in bytes, of the file
|
|
270
269
|
|
|
271
|
-
Type: [Number][
|
|
270
|
+
Type: [Number][172]
|
|
272
271
|
|
|
273
272
|
### sizeFormatted
|
|
274
273
|
|
|
275
274
|
A human readable, formatted version of the file size
|
|
276
275
|
|
|
277
|
-
Type: [String][
|
|
276
|
+
Type: [String][169]
|
|
278
277
|
|
|
279
278
|
### mime
|
|
280
279
|
|
|
281
280
|
The associated mime type for the file
|
|
282
281
|
|
|
283
|
-
Type: [String][
|
|
282
|
+
Type: [String][169]
|
|
284
283
|
|
|
285
284
|
### meta
|
|
286
285
|
|
|
287
286
|
Additional meta information for the file
|
|
288
287
|
|
|
289
|
-
Type: [Object][
|
|
288
|
+
Type: [Object][170]
|
|
290
289
|
|
|
291
290
|
### getContents
|
|
292
291
|
|
|
@@ -296,9 +295,9 @@ Fetch the raw file contents as a Blob
|
|
|
296
295
|
|
|
297
296
|
#### Parameters
|
|
298
297
|
|
|
299
|
-
* `options` **[Object][
|
|
298
|
+
* `options` **[Object][170]?** Additioanl options to mutate behaviour
|
|
300
299
|
|
|
301
|
-
Returns **[Blob][
|
|
300
|
+
Returns **[Blob][173]** The eventual raw file contents as a Blob
|
|
302
301
|
|
|
303
302
|
### setContents
|
|
304
303
|
|
|
@@ -308,9 +307,9 @@ Overwrite the contents of a file with new content
|
|
|
308
307
|
|
|
309
308
|
#### Parameters
|
|
310
309
|
|
|
311
|
-
* `contents` **(File | [Blob][
|
|
310
|
+
* `contents` **(File | [Blob][173] | [FormData][174] | [Object][170] | [Array][175])** The new file contents
|
|
312
311
|
|
|
313
|
-
Returns **[Promise][
|
|
312
|
+
Returns **[Promise][176]** A promise which resolves when the operation has completed
|
|
314
313
|
|
|
315
314
|
### getRefs
|
|
316
315
|
|
|
@@ -318,7 +317,7 @@ Returns **[Promise][177]** A promise which resolves when the operation has compl
|
|
|
318
317
|
|
|
319
318
|
Fetch the file contents as an array of Reflib refs
|
|
320
319
|
|
|
321
|
-
Returns **[Promise][
|
|
320
|
+
Returns **[Promise][176]<[Array][175]\<Ref>>** An eventual array of RefLib references
|
|
322
321
|
|
|
323
322
|
### setRefs
|
|
324
323
|
|
|
@@ -328,18 +327,18 @@ Overwrite the contents of a file with a new collection of Reflib refs
|
|
|
328
327
|
|
|
329
328
|
#### Parameters
|
|
330
329
|
|
|
331
|
-
* `refs` **[Array][
|
|
330
|
+
* `refs` **[Array][175]\<RefLibRef>** Collection of references for the selected library
|
|
332
331
|
|
|
333
|
-
Returns **[Promise][
|
|
332
|
+
Returns **[Promise][176]** A promise which resolves when the operation has completed
|
|
334
333
|
|
|
335
334
|
### serialize
|
|
336
335
|
|
|
337
|
-
* **See**: [https://developer.mozilla.org/en-US/docs/Web/API/Web\_Workers\_API/Structured\_clone\_algorithm][
|
|
336
|
+
* **See**: [https://developer.mozilla.org/en-US/docs/Web/API/Web\_Workers\_API/Structured\_clone\_algorithm][177]
|
|
338
337
|
|
|
339
338
|
Compress a file state down into a serializable entity
|
|
340
339
|
By default this computes a Structured Clone which can be stringified
|
|
341
340
|
|
|
342
|
-
Returns **[Object][
|
|
341
|
+
Returns **[Object][170]** A Structured Clone compatible representation of this ProjectFile instance
|
|
343
342
|
|
|
344
343
|
### deserialize
|
|
345
344
|
|
|
@@ -347,7 +346,7 @@ Restore an entity created with serialize
|
|
|
347
346
|
|
|
348
347
|
#### Parameters
|
|
349
348
|
|
|
350
|
-
* `data` **[Object][
|
|
349
|
+
* `data` **[Object][170]** An input object created via `ProjectFiles.serialize()`
|
|
351
350
|
|
|
352
351
|
Returns **[ProjectFile][1]** A ProjectFile instance setup against the deserializzed data
|
|
353
352
|
|
|
@@ -359,23 +358,23 @@ Main Tera-Fy Client (class singleton) to be used in a frontend browser
|
|
|
359
358
|
|
|
360
359
|
Various settings to configure behaviour
|
|
361
360
|
|
|
362
|
-
Type: [Object][
|
|
361
|
+
Type: [Object][170]
|
|
363
362
|
|
|
364
363
|
#### Properties
|
|
365
364
|
|
|
366
|
-
* `session` **[String][
|
|
367
|
-
* `devMode` **[Boolean][
|
|
368
|
-
* `verbosity` **[Number][
|
|
365
|
+
* `session` **[String][169]** Unique session signature for this instance of TeraFy, used to sign server messages, if falsy `getEntropicString(16)` is used to populate
|
|
366
|
+
* `devMode` **[Boolean][178]** Operate in Dev-Mode - i.e. force outer refresh when encountering an existing TeraFy instance + be more tolerent of weird iframe origins
|
|
367
|
+
* `verbosity` **[Number][172]** Verbosity level, the higher the more chatty TeraFY will be. Set to zero to disable all `debug()` call output
|
|
369
368
|
* `mode` **(`"detect"` | `"parent"` | `"child"` | `"popup"`)** 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
|
|
370
|
-
* `modeFallback` **[String][
|
|
371
|
-
* `modeOverrides` **[Object][
|
|
372
|
-
* `modeTimeout` **[Number][
|
|
373
|
-
* `siteUrl` **[String][
|
|
374
|
-
* `restrictOrigin` **[String][
|
|
375
|
-
* `List` **[Array][
|
|
376
|
-
* `handshakeInterval` **[Number][
|
|
377
|
-
* `handshakeTimeout` **[Number][
|
|
378
|
-
* `debugPaths` **[Array][
|
|
369
|
+
* `modeFallback` **[String][169]** Method to use when all method detection fails
|
|
370
|
+
* `modeOverrides` **[Object][170]<[Object][170]<[Function][179]>>** Functions to run when switching to specific modes, these are typically used to augment config. Called as `(config:Object)`
|
|
371
|
+
* `modeTimeout` **[Number][172]** How long entities have in 'detect' mode to identify themselves
|
|
372
|
+
* `siteUrl` **[String][169]** The TERA URL to connect to
|
|
373
|
+
* `restrictOrigin` **[String][169]** URL to restrict communications to
|
|
374
|
+
* `List` **[Array][175]<[String][169]>** of sandbox allowables for the embedded if in embed mode
|
|
375
|
+
* `handshakeInterval` **[Number][172]** Interval in milliseconds when sanning for a handshake
|
|
376
|
+
* `handshakeTimeout` **[Number][172]** Interval in milliseconds for when to give up trying to handshake
|
|
377
|
+
* `debugPaths` **[Array][175]<([String][169] | [Array][175]<[String][169]>)>?** 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
|
|
379
378
|
|
|
380
379
|
### events
|
|
381
380
|
|
|
@@ -387,13 +386,13 @@ Type: Mitt
|
|
|
387
386
|
|
|
388
387
|
DOMElements for this TeraFy instance
|
|
389
388
|
|
|
390
|
-
Type: [Object][
|
|
389
|
+
Type: [Object][170]
|
|
391
390
|
|
|
392
391
|
#### Properties
|
|
393
392
|
|
|
394
393
|
* `el` **DOMElement** The main tera-fy div wrapper
|
|
395
394
|
* `iframe` **DOMElement** The internal iFrame element (if `settings.mode == 'child'`)
|
|
396
|
-
* `popup` **[Window][
|
|
395
|
+
* `popup` **[Window][180]** The popup window context (if `settings.mode == 'popup'`)
|
|
397
396
|
* `stylesheet` **DOMElement** The corresponding stylesheet
|
|
398
397
|
|
|
399
398
|
### methods
|
|
@@ -401,13 +400,13 @@ Type: [Object][171]
|
|
|
401
400
|
List of function stubs mapped from the server to here
|
|
402
401
|
This array is forms the reference of `TeraFy.METHOD()` objects to provide locally which will be mapped via `TeraFy.rpc(METHOD, ...args)`
|
|
403
402
|
|
|
404
|
-
Type: [Array][
|
|
403
|
+
Type: [Array][175]<[String][169]>
|
|
405
404
|
|
|
406
405
|
### plugins
|
|
407
406
|
|
|
408
407
|
Loaded plugins via Use()
|
|
409
408
|
|
|
410
|
-
Type: [Array][
|
|
409
|
+
Type: [Array][175]\<TeraFyPlugin>
|
|
411
410
|
|
|
412
411
|
### namespaces
|
|
413
412
|
|
|
@@ -415,7 +414,7 @@ Active namespaces we are subscribed to
|
|
|
415
414
|
Each key is the namespace name with the value as the local reactive \ observer \ object equivelent
|
|
416
415
|
The key string is always of the form `${ENTITY}::${ID}` e.g. `projects:1234`
|
|
417
416
|
|
|
418
|
-
Type: [Object][
|
|
417
|
+
Type: [Object][170]<[Object][170]>
|
|
419
418
|
|
|
420
419
|
### send
|
|
421
420
|
|
|
@@ -423,9 +422,9 @@ Send a message + wait for a response object
|
|
|
423
422
|
|
|
424
423
|
#### Parameters
|
|
425
424
|
|
|
426
|
-
* `message` **[Object][
|
|
425
|
+
* `message` **[Object][170]** Message object to send
|
|
427
426
|
|
|
428
|
-
Returns **[Promise][
|
|
427
|
+
Returns **[Promise][176]\<any>** A promise which resolves when the operation has completed with the remote reply
|
|
429
428
|
|
|
430
429
|
### sendRaw
|
|
431
430
|
|
|
@@ -434,7 +433,7 @@ This function does not return or wait for a reply - use `send()` for that
|
|
|
434
433
|
|
|
435
434
|
#### Parameters
|
|
436
435
|
|
|
437
|
-
* `message` **[Object][
|
|
436
|
+
* `message` **[Object][170]** Message object to send
|
|
438
437
|
|
|
439
438
|
### rpc
|
|
440
439
|
|
|
@@ -442,10 +441,10 @@ Call an RPC function in the server instance
|
|
|
442
441
|
|
|
443
442
|
#### Parameters
|
|
444
443
|
|
|
445
|
-
* `method` **[String][
|
|
444
|
+
* `method` **[String][169]** The method name to call
|
|
446
445
|
* `args` **...any?** Optional arguments to pass to the function
|
|
447
446
|
|
|
448
|
-
Returns **[Promise][
|
|
447
|
+
Returns **[Promise][176]\<any>** The resolved output of the server function
|
|
449
448
|
|
|
450
449
|
### acceptMessage
|
|
451
450
|
|
|
@@ -453,48 +452,26 @@ Accept an incoming message
|
|
|
453
452
|
|
|
454
453
|
#### Parameters
|
|
455
454
|
|
|
456
|
-
* `rawMessage` **[MessageEvent][
|
|
455
|
+
* `rawMessage` **[MessageEvent][181]** Raw message event to process
|
|
457
456
|
|
|
458
|
-
Returns **[Promise][
|
|
457
|
+
Returns **[Promise][176]** A promise which will resolve when the message has been processed
|
|
459
458
|
|
|
460
459
|
### acceptPostboxes
|
|
461
460
|
|
|
462
461
|
Listening postboxes, these correspond to outgoing message IDs that expect a response
|
|
463
462
|
|
|
464
|
-
### mountNamespace
|
|
465
|
-
|
|
466
|
-
Make a namespace available locally
|
|
467
|
-
This generally creates whatever framework flavoured reactive/observer/object is supported locally - generally with writes automatically synced with the master state
|
|
468
|
-
|
|
469
|
-
#### Parameters
|
|
470
|
-
|
|
471
|
-
* `name` **[String][170]** The alias of the namespace, this should be alphanumeric + hyphens + underscores
|
|
472
|
-
|
|
473
|
-
Returns **[Promise][177]\<Reactive>** A promise which resolves to the reactive object
|
|
474
|
-
|
|
475
|
-
### unmountNamespace
|
|
476
|
-
|
|
477
|
-
Release a locally mounted namespace
|
|
478
|
-
This function will remove the namespace from `namespaces`, cleaning up any memory / subscription hooks
|
|
479
|
-
|
|
480
|
-
#### Parameters
|
|
481
|
-
|
|
482
|
-
* `name` **[String][170]** The name of the namespace to unmount
|
|
483
|
-
|
|
484
|
-
Returns **[Promise][177]** A promise which resolves when the operation has completed
|
|
485
|
-
|
|
486
463
|
### createProjectStatePatch
|
|
487
464
|
|
|
488
465
|
Create + transmit a new project state patch base on the current and previous states
|
|
489
|
-
The transmitted patch follows the [JSPatch][
|
|
466
|
+
The transmitted patch follows the [JSPatch][182] standard
|
|
490
467
|
This function accepts an entire projectState instance, computes the delta and transmits that to the server for merging
|
|
491
468
|
|
|
492
469
|
#### Parameters
|
|
493
470
|
|
|
494
|
-
* `newState` **[Object][
|
|
495
|
-
* `oldState` **[Object][
|
|
471
|
+
* `newState` **[Object][170]** The local projectState to accept
|
|
472
|
+
* `oldState` **[Object][170]** The previous projectState to examine against
|
|
496
473
|
|
|
497
|
-
Returns **[Promise][
|
|
474
|
+
Returns **[Promise][176]** A promise which will resolve when the operation has completed
|
|
498
475
|
|
|
499
476
|
### applyProjectStatePatch
|
|
500
477
|
|
|
@@ -503,21 +480,21 @@ This function also enters debugging mode if any of the `settings.debugPaths` are
|
|
|
503
480
|
|
|
504
481
|
#### Parameters
|
|
505
482
|
|
|
506
|
-
* `patch` **[Array][
|
|
483
|
+
* `patch` **[Array][175]** Patch to apply
|
|
507
484
|
|
|
508
|
-
Returns **[Promise][
|
|
485
|
+
Returns **[Promise][176]** A promise which resolves when the operation has completed
|
|
509
486
|
|
|
510
487
|
### applyProjectStatePatchLocal
|
|
511
488
|
|
|
512
489
|
Client function which accepts a patch from the server and applies it to local project state
|
|
513
|
-
The patch should follow the [JSPatch][
|
|
490
|
+
The patch should follow the [JSPatch][182] standard
|
|
514
491
|
This function is expected to be sub-classed by a plugin
|
|
515
492
|
|
|
516
493
|
#### Parameters
|
|
517
494
|
|
|
518
|
-
* `patch` **[Array][
|
|
495
|
+
* `patch` **[Array][175]** A JSPatch patch to apply
|
|
519
496
|
|
|
520
|
-
Returns **[Promise][
|
|
497
|
+
Returns **[Promise][176]** A promise which will resolve when the operation has completed
|
|
521
498
|
|
|
522
499
|
### init
|
|
523
500
|
|
|
@@ -526,22 +503,22 @@ This function can only be called once and will return the existing init() worker
|
|
|
526
503
|
|
|
527
504
|
#### Parameters
|
|
528
505
|
|
|
529
|
-
* `options` **[Object][
|
|
506
|
+
* `options` **[Object][170]?** Additional options to merge into `settings` via `set`
|
|
530
507
|
|
|
531
|
-
Returns **[Promise][
|
|
508
|
+
Returns **[Promise][176]<[TeraFy][30]>** An eventual promise which will resovle with this terafy instance
|
|
532
509
|
|
|
533
510
|
### detectMode
|
|
534
511
|
|
|
535
512
|
Populate `settings.mode`
|
|
536
513
|
Try to communicate with a parent frame, if none assume we need to fallback to child mode
|
|
537
514
|
|
|
538
|
-
Returns **[Promise][
|
|
515
|
+
Returns **[Promise][176]<[String][169]>** A promise which will resolve with the detected mode to use
|
|
539
516
|
|
|
540
517
|
### injectComms
|
|
541
518
|
|
|
542
519
|
Find an existing active TERA server OR initalize one
|
|
543
520
|
|
|
544
|
-
Returns **[Promise][
|
|
521
|
+
Returns **[Promise][176]** A promise which will resolve when the loading has completed and we have found a parent TERA instance or initiallized a child
|
|
545
522
|
|
|
546
523
|
### handshakeLoop
|
|
547
524
|
|
|
@@ -549,20 +526,20 @@ Keep trying to handshake until the target responds
|
|
|
549
526
|
|
|
550
527
|
#### Parameters
|
|
551
528
|
|
|
552
|
-
* `options` **[Object][
|
|
529
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
553
530
|
|
|
554
531
|
#### Properties
|
|
555
532
|
|
|
556
|
-
* `handshakeInterval` **[Number][
|
|
557
|
-
* `handshakeTimeout` **[Number][
|
|
533
|
+
* `handshakeInterval` **[Number][172]?** Interval in milliseconds when sanning for a handshake, defaults to global setting
|
|
534
|
+
* `handshakeTimeout` **[Number][172]?** Interval in milliseconds for when to give up trying to handshake, defaults to global setting
|
|
558
535
|
|
|
559
|
-
Returns **[Promise][
|
|
536
|
+
Returns **[Promise][176]** A promise which will either resolve when the handshake is successful OR fail with 'TIMEOUT'
|
|
560
537
|
|
|
561
538
|
### injectStylesheet
|
|
562
539
|
|
|
563
540
|
Inject a local stylesheet to handle TERA server functionality
|
|
564
541
|
|
|
565
|
-
Returns **[Promise][
|
|
542
|
+
Returns **[Promise][176]** A promise which will resolve when the loading has completed and we have found a parent TERA instance or initiallized a child
|
|
566
543
|
|
|
567
544
|
### injectMethods
|
|
568
545
|
|
|
@@ -577,7 +554,7 @@ This function will only act if `settings.devMode` is truthy
|
|
|
577
554
|
|
|
578
555
|
* `msg` **...any?** Output to show
|
|
579
556
|
* `method` **(`"INFO"` | `"LOG"` | `"WARN"` | `"ERROR"`)** Logging method to use (optional, default `'LOG'`)
|
|
580
|
-
* `verboseLevel` **[Number][
|
|
557
|
+
* `verboseLevel` **[Number][172]** The verbosity level to trigger at. If `settings.verbosity` is lower than this, the message is ignored (optional, default `1`)
|
|
581
558
|
|
|
582
559
|
### set
|
|
583
560
|
|
|
@@ -586,11 +563,11 @@ This function also routes 'special' keys like `devMode` to their internal handle
|
|
|
586
563
|
|
|
587
564
|
#### Parameters
|
|
588
565
|
|
|
589
|
-
* `key` **([String][
|
|
566
|
+
* `key` **([String][169] | [Object][170])** Either a single setting key to set or an object to merge
|
|
590
567
|
* `value` **any** The value to set if `key` is a string
|
|
591
|
-
* `options` **[Object][
|
|
568
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
592
569
|
|
|
593
|
-
* `options.ignoreNullish` **[Boolean][
|
|
570
|
+
* `options.ignoreNullish` **[Boolean][178]** If falsy, this forces the setting of undefined or null values rather than ignoring them when specifying values by string (optional, default `true`)
|
|
594
571
|
|
|
595
572
|
Returns **[TeraFy][30]** This chainable terafy instance
|
|
596
573
|
|
|
@@ -602,9 +579,9 @@ Set or merge settings - but only in dev mode and only if the value is not undefi
|
|
|
602
579
|
|
|
603
580
|
#### Parameters
|
|
604
581
|
|
|
605
|
-
* `key` **([String][
|
|
582
|
+
* `key` **([String][169] | [Object][170])** Either a single setting key to set or an object to merge
|
|
606
583
|
* `value` **any** The value to set if `key` is a string
|
|
607
|
-
* `options` **[Object][
|
|
584
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
608
585
|
|
|
609
586
|
Returns **[TeraFy][30]** This chainable terafy instance
|
|
610
587
|
|
|
@@ -614,8 +591,8 @@ Include a TeraFy client plugin
|
|
|
614
591
|
|
|
615
592
|
#### Parameters
|
|
616
593
|
|
|
617
|
-
* `source` **([Function][
|
|
618
|
-
* `options` **[Object][
|
|
594
|
+
* `source` **([Function][179] | [Object][170] | [String][169])** Either the JS module class, singleton object or URL to fetch it from. Eventually constructed as invoked as `(teraClient:TeraFy, options:Object)`
|
|
595
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour during construction (pass options to init() to intialize later options)
|
|
619
596
|
|
|
620
597
|
Returns **[TeraFy][30]** This chainable terafy instance
|
|
621
598
|
|
|
@@ -625,8 +602,8 @@ Internal function used by use() to merge an external declared singleton against
|
|
|
625
602
|
|
|
626
603
|
#### Parameters
|
|
627
604
|
|
|
628
|
-
* `target` **[Object][
|
|
629
|
-
* `source` **[Object][
|
|
605
|
+
* `target` **[Object][170]** Initalied class instance to extend
|
|
606
|
+
* `source` **[Object][170]** Initalized source object to extend from
|
|
630
607
|
|
|
631
608
|
### toggleDevMode
|
|
632
609
|
|
|
@@ -638,7 +615,7 @@ This function also accepts meta values:
|
|
|
638
615
|
|
|
639
616
|
#### Parameters
|
|
640
617
|
|
|
641
|
-
* `devModeEnabled` **(`"toggle"` | `"proxy"` | [Boolean][
|
|
618
|
+
* `devModeEnabled` **(`"toggle"` | `"proxy"` | [Boolean][178])** Optional boolean to force dev mode or specify other behaviour (optional, default `'toggle'`)
|
|
642
619
|
|
|
643
620
|
Returns **[TeraFy][30]** This chainable terafy instance
|
|
644
621
|
|
|
@@ -649,7 +626,7 @@ This is usually because the server component wants to perform some user activity
|
|
|
649
626
|
|
|
650
627
|
#### Parameters
|
|
651
628
|
|
|
652
|
-
* `isFocused` **([String][
|
|
629
|
+
* `isFocused` **([String][169] | [Boolean][178])** Whether to fullscreen the embedded component (optional, default `'toggle'`)
|
|
653
630
|
|
|
654
631
|
### getEntropicString
|
|
655
632
|
|
|
@@ -657,47 +634,59 @@ Generate random entropic character string in Base64
|
|
|
657
634
|
|
|
658
635
|
#### Parameters
|
|
659
636
|
|
|
660
|
-
* `maxLength` **[Number][
|
|
637
|
+
* `maxLength` **[Number][172]** Maximum lengh of the genrated string (optional, default `32`)
|
|
661
638
|
|
|
662
|
-
Returns **[String][
|
|
639
|
+
Returns **[String][169]** 
|
|
663
640
|
|
|
664
641
|
### selectProjectFile
|
|
665
642
|
|
|
666
|
-
|
|
643
|
+
Require a user login to TERA
|
|
644
|
+
If there is no user OR they are not logged in a prompt is shown to go and do so
|
|
645
|
+
This is an pre-requisite step for requireProject()
|
|
667
646
|
|
|
668
647
|
#### Parameters
|
|
669
648
|
|
|
670
649
|
* `options`  
|
|
671
650
|
|
|
672
|
-
Returns **[
|
|
651
|
+
Returns **[Promise][176]** A promise which will resolve if the there is a user and they are logged in
|
|
673
652
|
|
|
674
|
-
|
|
653
|
+
## mountNamespace
|
|
675
654
|
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
This is an pre-requisite step for requireProject()
|
|
655
|
+
Make a namespace available locally
|
|
656
|
+
This generally creates whatever framework flavoured reactive/observer/object is supported locally - generally with writes automatically synced with the master state
|
|
679
657
|
|
|
680
|
-
|
|
658
|
+
### Parameters
|
|
681
659
|
|
|
682
|
-
* `
|
|
660
|
+
* `name` **[String][169]** The alias of the namespace, this should be alphanumeric + hyphens + underscores
|
|
683
661
|
|
|
684
|
-
Returns **[Promise][
|
|
662
|
+
Returns **[Promise][176]\<Reactive>** A promise which resolves to the reactive object
|
|
685
663
|
|
|
686
664
|
## Actual namespace mounting function designed to be overriden by plugins
|
|
687
665
|
|
|
688
666
|
### Parameters
|
|
689
667
|
|
|
690
|
-
* `name` **[String][
|
|
668
|
+
* `name` **[String][169]** The alias of the namespace, this should be alphanumeric + hyphens + underscores
|
|
669
|
+
|
|
670
|
+
Returns **[Promise][176]** A promise which resolves when the mount operation has completed
|
|
691
671
|
|
|
692
|
-
|
|
672
|
+
## unmountNamespace
|
|
673
|
+
|
|
674
|
+
Release a locally mounted namespace
|
|
675
|
+
This function will remove the namespace from `namespaces`, cleaning up any memory / subscription hooks
|
|
676
|
+
|
|
677
|
+
### Parameters
|
|
678
|
+
|
|
679
|
+
* `name` **[String][169]** The name of the namespace to unmount
|
|
680
|
+
|
|
681
|
+
Returns **[Promise][176]** A promise which resolves when the operation has completed
|
|
693
682
|
|
|
694
683
|
## Actual namespace unmounting function designed to be overriden by plugins
|
|
695
684
|
|
|
696
685
|
### Parameters
|
|
697
686
|
|
|
698
|
-
* `name` **[String][
|
|
687
|
+
* `name` **[String][169]** The name of the namespace to unmount
|
|
699
688
|
|
|
700
|
-
Returns **[Promise][
|
|
689
|
+
Returns **[Promise][176]** A promise which resolves when the operation has completed
|
|
701
690
|
|
|
702
691
|
## handshake
|
|
703
692
|
|
|
@@ -705,9 +694,9 @@ Return basic server information as a form of validation
|
|
|
705
694
|
|
|
706
695
|
### Properties
|
|
707
696
|
|
|
708
|
-
* `date` **[Date][
|
|
697
|
+
* `date` **[Date][171]** Server date
|
|
709
698
|
|
|
710
|
-
Returns **[Promise][
|
|
699
|
+
Returns **[Promise][176]<[Object][170]>** Basic promise result
|
|
711
700
|
|
|
712
701
|
## setServerVerbosity
|
|
713
702
|
|
|
@@ -715,7 +704,7 @@ RPC callback to set the server verbostiy level
|
|
|
715
704
|
|
|
716
705
|
### Parameters
|
|
717
706
|
|
|
718
|
-
* `verbosity` **[Number][
|
|
707
|
+
* `verbosity` **[Number][172]** The desired server verbosity level
|
|
719
708
|
|
|
720
709
|
## User
|
|
721
710
|
|
|
@@ -723,16 +712,22 @@ User / active session within TERA
|
|
|
723
712
|
|
|
724
713
|
### Properties
|
|
725
714
|
|
|
726
|
-
* `id` **[String][
|
|
727
|
-
* `email` **[String][
|
|
728
|
-
* `name` **[String][
|
|
729
|
-
* `isSubscribed` **[Boolean][
|
|
715
|
+
* `id` **[String][169]** Unique identifier of the user
|
|
716
|
+
* `email` **[String][169]** The email address of the current user
|
|
717
|
+
* `name` **[String][169]** The provided full name of the user
|
|
718
|
+
* `isSubscribed` **[Boolean][178]** Whether the active user has a TERA subscription
|
|
730
719
|
|
|
731
720
|
## getUser
|
|
732
721
|
|
|
733
722
|
Fetch the current session user
|
|
734
723
|
|
|
735
|
-
Returns **[Promise][
|
|
724
|
+
Returns **[Promise][176]<[User][93]>** The current logged in user or null if none
|
|
725
|
+
|
|
726
|
+
## getCredentials
|
|
727
|
+
|
|
728
|
+
Provide an object of credentials for 3rd party services like Firebase/Supabase
|
|
729
|
+
|
|
730
|
+
Returns **[Object][170]** An object containing 3rd party service credentials
|
|
736
731
|
|
|
737
732
|
## requireUser
|
|
738
733
|
|
|
@@ -742,11 +737,11 @@ This is an pre-requisite step for requireProject()
|
|
|
742
737
|
|
|
743
738
|
### Parameters
|
|
744
739
|
|
|
745
|
-
* `options` **[Object][
|
|
740
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
746
741
|
|
|
747
|
-
* `options.forceRetry` **[Boolean][
|
|
742
|
+
* `options.forceRetry` **[Boolean][178]** Forcabily try to refresh the user state (optional, default `false`)
|
|
748
743
|
|
|
749
|
-
Returns **[Promise][
|
|
744
|
+
Returns **[Promise][176]<[User][93]>** The current logged in user or null if none
|
|
750
745
|
|
|
751
746
|
## Project
|
|
752
747
|
|
|
@@ -756,13 +751,13 @@ Project entry within TERA
|
|
|
756
751
|
|
|
757
752
|
Get the currently active project, if any
|
|
758
753
|
|
|
759
|
-
Returns **[Promise][
|
|
754
|
+
Returns **[Promise][176]<([Project][99] | null)>** The currently active project, if any
|
|
760
755
|
|
|
761
756
|
## getProjects
|
|
762
757
|
|
|
763
758
|
Get a list of projects the current session user has access to
|
|
764
759
|
|
|
765
|
-
Returns **[Promise][
|
|
760
|
+
Returns **[Promise][176]<[Array][175]<[Project][99]>>** Collection of projects the user has access to
|
|
766
761
|
|
|
767
762
|
## setActiveProject
|
|
768
763
|
|
|
@@ -770,7 +765,7 @@ Set the currently active project within TERA
|
|
|
770
765
|
|
|
771
766
|
### Parameters
|
|
772
767
|
|
|
773
|
-
* `project` **([Object][
|
|
768
|
+
* `project` **([Object][170] | [String][169])** The project to set as active - either the full Project object or its ID
|
|
774
769
|
|
|
775
770
|
## requireProject
|
|
776
771
|
|
|
@@ -779,14 +774,14 @@ Note that this function will percist in asking the uesr even if they try to canc
|
|
|
779
774
|
|
|
780
775
|
### Parameters
|
|
781
776
|
|
|
782
|
-
* `options` **[Object][
|
|
777
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
783
778
|
|
|
784
|
-
* `options.autoSetActiveProject` **[Boolean][
|
|
785
|
-
* `options.title` **[String][
|
|
786
|
-
* `options.noSelectTitle` **[String][
|
|
787
|
-
* `options.noSelectBody` **[String][
|
|
779
|
+
* `options.autoSetActiveProject` **[Boolean][178]** After selecting a project set that project as active in TERA (optional, default `true`)
|
|
780
|
+
* `options.title` **[String][169]** The title of the dialog to display (optional, default `"Select a project to work with"`)
|
|
781
|
+
* `options.noSelectTitle` **[String][169]** Dialog title when warning the user they need to select something (optional, default `'Select project'`)
|
|
782
|
+
* `options.noSelectBody` **[String][169]** Dialog body when warning the user they need to select something (optional, default `'A project needs to be selected to continue'`)
|
|
788
783
|
|
|
789
|
-
Returns **[Promise][
|
|
784
|
+
Returns **[Promise][176]<[Project][99]>** The active project
|
|
790
785
|
|
|
791
786
|
## selectProject
|
|
792
787
|
|
|
@@ -794,13 +789,13 @@ Prompt the user to select a project from those available
|
|
|
794
789
|
|
|
795
790
|
### Parameters
|
|
796
791
|
|
|
797
|
-
* `options` **[Object][
|
|
792
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
798
793
|
|
|
799
|
-
* `options.title` **[String][
|
|
800
|
-
* `options.allowCancel` **[Boolean][
|
|
801
|
-
* `options.setActive` **[Boolean][
|
|
794
|
+
* `options.title` **[String][169]** The title of the dialog to display (optional, default `"Select a project to work with"`)
|
|
795
|
+
* `options.allowCancel` **[Boolean][178]** Advertise cancelling the operation, the dialog can still be cancelled by closing it (optional, default `true`)
|
|
796
|
+
* `options.setActive` **[Boolean][178]** Also set the project as active when selected (optional, default `false`)
|
|
802
797
|
|
|
803
|
-
Returns **[Promise][
|
|
798
|
+
Returns **[Promise][176]<[Project][99]>** The active project
|
|
804
799
|
|
|
805
800
|
## getNamespace
|
|
806
801
|
|
|
@@ -809,9 +804,9 @@ This can be used for simpler apps which don't have their own reactive / observer
|
|
|
809
804
|
|
|
810
805
|
### Parameters
|
|
811
806
|
|
|
812
|
-
* `name` **[String][
|
|
807
|
+
* `name` **[String][169]** The alias of the namespace, this should be alphanumeric + hyphens + underscores
|
|
813
808
|
|
|
814
|
-
Returns **[Promise][
|
|
809
|
+
Returns **[Promise][176]<[Object][170]>** A promise which resolves to the namespace POJO state
|
|
815
810
|
|
|
816
811
|
## setNamespace
|
|
817
812
|
|
|
@@ -820,13 +815,13 @@ This can be used for simpler apps which don't have their own reactive / observer
|
|
|
820
815
|
|
|
821
816
|
### Parameters
|
|
822
817
|
|
|
823
|
-
* `name` **[String][
|
|
824
|
-
* `state` **[Object][
|
|
825
|
-
* `options` **[Object][
|
|
818
|
+
* `name` **[String][169]** The name of the namespace
|
|
819
|
+
* `state` **[Object][170]** The state to merge
|
|
820
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
826
821
|
|
|
827
822
|
* `options.method` **(`"merge"` | `"set"`)** How to handle the state. 'merge' (merge a partial state over the existing namespace state), 'set' (completely overwrite the existing namespace) (optional, default `'merge'`)
|
|
828
823
|
|
|
829
|
-
Returns **[Promise][
|
|
824
|
+
Returns **[Promise][176]<[Object][170]>** A promise which resolves to the namespace POJO state
|
|
830
825
|
|
|
831
826
|
## listNamespaces
|
|
832
827
|
|
|
@@ -834,9 +829,9 @@ Return a list of namespaces available to the current project
|
|
|
834
829
|
|
|
835
830
|
### Properties
|
|
836
831
|
|
|
837
|
-
* `name` **[String][
|
|
832
|
+
* `name` **[String][169]** The name of the namespace
|
|
838
833
|
|
|
839
|
-
Returns **[Promise][
|
|
834
|
+
Returns **[Promise][176]<[Array][175]<[Object][170]>>** Collection of available namespaces for the current project
|
|
840
835
|
|
|
841
836
|
## getProjectState
|
|
842
837
|
|
|
@@ -844,12 +839,12 @@ Return the current, full snapshot state of the active project
|
|
|
844
839
|
|
|
845
840
|
### Parameters
|
|
846
841
|
|
|
847
|
-
* `options` **[Object][
|
|
842
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
848
843
|
|
|
849
|
-
* `options.autoRequire` **[Boolean][
|
|
850
|
-
* `Paths` **[Array][
|
|
844
|
+
* `options.autoRequire` **[Boolean][178]** Run `requireProject()` automatically before continuing (optional, default `true`)
|
|
845
|
+
* `Paths` **[Array][175]<[String][169]>** to subscribe to e.g. \['/users/'],
|
|
851
846
|
|
|
852
|
-
Returns **[Promise][
|
|
847
|
+
Returns **[Promise][176]<[Object][170]>** The current project state snapshot
|
|
853
848
|
|
|
854
849
|
## setProjectState
|
|
855
850
|
|
|
@@ -861,13 +856,13 @@ Paths can be any valid Lodash.set() value such as:
|
|
|
861
856
|
|
|
862
857
|
### Parameters
|
|
863
858
|
|
|
864
|
-
* `path` **([String][
|
|
859
|
+
* `path` **([String][169] | [Array][175]<[String][169]>)** The sub-path within the project state to set
|
|
865
860
|
* `value` **any** The value to set
|
|
866
|
-
* `options` **[Object][
|
|
861
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
867
862
|
|
|
868
|
-
* `options.save` **[Boolean][
|
|
863
|
+
* `options.save` **[Boolean][178]** Save the changes to the server immediately, disable to queue up multiple writes (optional, default `true`)
|
|
869
864
|
|
|
870
|
-
Returns **[Promise][
|
|
865
|
+
Returns **[Promise][176]** A promise which resolves when the operation has been dispatched to the server
|
|
871
866
|
|
|
872
867
|
## setProjectStateDefaults
|
|
873
868
|
|
|
@@ -877,24 +872,24 @@ Set a nested value within the project state - just like `setProjectState()` - bu
|
|
|
877
872
|
|
|
878
873
|
### Parameters
|
|
879
874
|
|
|
880
|
-
* `path` **([String][
|
|
875
|
+
* `path` **([String][169] | [Array][175]<[String][169]>)** The sub-path within the project state to set
|
|
881
876
|
* `value` **any** The value to set
|
|
882
|
-
* `options` **[Object][
|
|
877
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour, see setProjectState() for the full list of supported options
|
|
883
878
|
|
|
884
|
-
Returns **[Promise][
|
|
879
|
+
Returns **[Promise][176]<[Boolean][178]>** A promise which resolves to whether any changes were made - True if defaults were applied, false otherwise
|
|
885
880
|
|
|
886
881
|
## setProjectStateRefresh
|
|
887
882
|
|
|
888
883
|
Force refetching the remote project state into local
|
|
889
884
|
This is only ever needed when saving large quantities of data that need to be immediately available
|
|
890
885
|
|
|
891
|
-
Returns **[Promise][
|
|
886
|
+
Returns **[Promise][176]** A promise which resolves when the operation has completed
|
|
892
887
|
|
|
893
888
|
## saveProjectState
|
|
894
889
|
|
|
895
890
|
Force-Save the currently active project state
|
|
896
891
|
|
|
897
|
-
Returns **[Promise][
|
|
892
|
+
Returns **[Promise][176]** A promise which resolves when the operation has completed
|
|
898
893
|
|
|
899
894
|
## replaceProjectState
|
|
900
895
|
|
|
@@ -905,9 +900,9 @@ You almost never want to use this function directly, see `setProjectState(path,
|
|
|
905
900
|
|
|
906
901
|
### Parameters
|
|
907
902
|
|
|
908
|
-
* `newState` **[Object][
|
|
903
|
+
* `newState` **[Object][170]** The new state to replace the current state with
|
|
909
904
|
|
|
910
|
-
Returns **[Promise][
|
|
905
|
+
Returns **[Promise][176]** A promise which resolves when the operation has completed
|
|
911
906
|
|
|
912
907
|
## applyProjectStatePatch
|
|
913
908
|
|
|
@@ -915,9 +910,9 @@ Apply a computed `just-diff` patch to the current project state
|
|
|
915
910
|
|
|
916
911
|
### Parameters
|
|
917
912
|
|
|
918
|
-
* `Patch` **[Object][
|
|
913
|
+
* `Patch` **[Object][170]** to apply
|
|
919
914
|
|
|
920
|
-
Returns **[Promise][
|
|
915
|
+
Returns **[Promise][176]** A promise which resolves when the operation has completed
|
|
921
916
|
|
|
922
917
|
## subscribeProjectState
|
|
923
918
|
|
|
@@ -925,7 +920,7 @@ Subscribe to project state changes
|
|
|
925
920
|
This will dispatch an RPC call to the source object `applyProjectStatePatchLocal()` function with the patch
|
|
926
921
|
If the above call fails the subscriber is assumed as dead and unsubscribed from the polling list
|
|
927
922
|
|
|
928
|
-
Returns **[Promise][
|
|
923
|
+
Returns **[Promise][176]<[Function][179]>** A promise which resolves when a subscription has been created, call the resulting function to unsubscribe
|
|
929
924
|
|
|
930
925
|
## FileFilters
|
|
931
926
|
|
|
@@ -933,10 +928,10 @@ Data structure for a file filter
|
|
|
933
928
|
|
|
934
929
|
### Properties
|
|
935
930
|
|
|
936
|
-
* `library` **[Boolean][
|
|
937
|
-
* `filename` **[String][
|
|
938
|
-
* `basename` **[String][
|
|
939
|
-
* `ext` **[String][
|
|
931
|
+
* `library` **[Boolean][178]?** Restrict to library files only
|
|
932
|
+
* `filename` **[String][169]?** CSV of @momsfriendlydevco/match expressions to filter the filename by (filenames are the basename sans extension)
|
|
933
|
+
* `basename` **[String][169]?** CSV of @momsfriendlydevco/match expressions to filter the basename by
|
|
934
|
+
* `ext` **[String][169]?** CSV of @momsfriendlydevco/match expressions to filter the file extension by
|
|
940
935
|
|
|
941
936
|
## selectProjectFile
|
|
942
937
|
|
|
@@ -944,20 +939,20 @@ Prompt the user to select a library to operate on
|
|
|
944
939
|
|
|
945
940
|
### Parameters
|
|
946
941
|
|
|
947
|
-
* `options` **[Object][
|
|
942
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
948
943
|
|
|
949
|
-
* `options.title` **[String][
|
|
950
|
-
* `options.hint` **([String][
|
|
951
|
-
* `options.save` **[Boolean][
|
|
952
|
-
* `options.filters` **[FileFilters][
|
|
953
|
-
* `options.allowUpload` **[Boolean][
|
|
954
|
-
* `options.allowRefresh` **[Boolean][
|
|
955
|
-
* `options.allowDownloadZip` **[Boolean][
|
|
956
|
-
* `options.allowCancel` **[Boolean][
|
|
957
|
-
* `options.autoRequire` **[Boolean][
|
|
958
|
-
* `options.filter` **[FileFilters][
|
|
944
|
+
* `options.title` **[String][169]** The title of the dialog to display (optional, default `"Select a file"`)
|
|
945
|
+
* `options.hint` **([String][169] | [Array][175]<[String][169]>)?** Hints to identify the file to select in array order of preference
|
|
946
|
+
* `options.save` **[Boolean][178]** Set to truthy if saving a new file, UI will adjust to allowing overwrite OR new file name input (optional, default `false`)
|
|
947
|
+
* `options.filters` **[FileFilters][127]?** Optional file filters
|
|
948
|
+
* `options.allowUpload` **[Boolean][178]** Allow uploading new files (optional, default `true`)
|
|
949
|
+
* `options.allowRefresh` **[Boolean][178]** Allow the user to manually refresh the file list (optional, default `true`)
|
|
950
|
+
* `options.allowDownloadZip` **[Boolean][178]** Allow the user to download a Zip of all files (optional, default `true`)
|
|
951
|
+
* `options.allowCancel` **[Boolean][178]** Allow cancelling the operation. Will throw `'CANCEL'` as the promise rejection if acationed (optional, default `true`)
|
|
952
|
+
* `options.autoRequire` **[Boolean][178]** Run `requireProject()` automatically before continuing (optional, default `true`)
|
|
953
|
+
* `options.filter` **[FileFilters][127]?** Optional file filters
|
|
959
954
|
|
|
960
|
-
Returns **[Promise][
|
|
955
|
+
Returns **[Promise][176]<[ProjectFile][1]>** The eventually selected file, if in save mode new files are created as stubs
|
|
961
956
|
|
|
962
957
|
## getProjectFiles
|
|
963
958
|
|
|
@@ -965,13 +960,13 @@ Fetch the files associated with a given project
|
|
|
965
960
|
|
|
966
961
|
### Parameters
|
|
967
962
|
|
|
968
|
-
* `options` **[Object][
|
|
963
|
+
* `options` **[Object][170]** Options which mutate behaviour
|
|
969
964
|
|
|
970
|
-
* `options.autoRequire` **[Boolean][
|
|
971
|
-
* `options.lazy` **[Boolean][
|
|
972
|
-
* `options.meta` **[Boolean][
|
|
965
|
+
* `options.autoRequire` **[Boolean][178]** Run `requireProject()` automatically before continuing (optional, default `true`)
|
|
966
|
+
* `options.lazy` **[Boolean][178]** If true, use the fastest method to retrieve the file list such as the cache. If false, force a refresh each time (optional, default `true`)
|
|
967
|
+
* `options.meta` **[Boolean][178]** Pull meta information for each file entity (optional, default `true`)
|
|
973
968
|
|
|
974
|
-
Returns **[Promise][
|
|
969
|
+
Returns **[Promise][176]<[Array][175]<[ProjectFile][1]>>** A collection of project files for the given project
|
|
975
970
|
|
|
976
971
|
## getProjectFileContents
|
|
977
972
|
|
|
@@ -979,8 +974,8 @@ Fetch the raw contents of a file by its ID
|
|
|
979
974
|
|
|
980
975
|
### Parameters
|
|
981
976
|
|
|
982
|
-
* `id` **[String][
|
|
983
|
-
* `options` **[Object][
|
|
977
|
+
* `id` **[String][169]?** File ID to retrieve the contents of
|
|
978
|
+
* `options` **[Object][170]?** Additioanl options to mutate behaviour
|
|
984
979
|
|
|
985
980
|
* `options.format` **(`"blob"` | `"json"`)** The format to retrieve the file in (optional, default `'blob'`)
|
|
986
981
|
|
|
@@ -992,13 +987,13 @@ Fetch a project file by its name
|
|
|
992
987
|
|
|
993
988
|
### Parameters
|
|
994
989
|
|
|
995
|
-
* `id` **[String][
|
|
996
|
-
* `options` **([Object][
|
|
990
|
+
* `id` **[String][169]** The name + relative directory path component
|
|
991
|
+
* `options` **([Object][170] | [String][169])?** Additional options to mutate behaviour, if a string is given `options.subkey` is assumed
|
|
997
992
|
|
|
998
|
-
* `options.subkey` **[String][
|
|
999
|
-
* `options.cache` **[Boolean][
|
|
993
|
+
* `options.subkey` **[String][169]?** If specified only the extracted subkey is returned rather than the full object
|
|
994
|
+
* `options.cache` **[Boolean][178]** Use the existing file cache if possible, set to false to force a refresh of files from the server first (optional, default `true`)
|
|
1000
995
|
|
|
1001
|
-
Returns **[Promise][
|
|
996
|
+
Returns **[Promise][176]<[ProjectFile][1]>** The eventual fetched ProjectFile (or requested subkey)
|
|
1002
997
|
|
|
1003
998
|
## createProjectFile
|
|
1004
999
|
|
|
@@ -1007,9 +1002,9 @@ This creates an empty file which can then be written to
|
|
|
1007
1002
|
|
|
1008
1003
|
### Parameters
|
|
1009
1004
|
|
|
1010
|
-
* `name` **[String][
|
|
1005
|
+
* `name` **[String][169]** The name + relative directory path component
|
|
1011
1006
|
|
|
1012
|
-
Returns **[Promise][
|
|
1007
|
+
Returns **[Promise][176]<[ProjectFile][1]>** The eventual ProjectFile created
|
|
1013
1008
|
|
|
1014
1009
|
## deleteProjectFile
|
|
1015
1010
|
|
|
@@ -1017,9 +1012,9 @@ Remove a project file by its ID
|
|
|
1017
1012
|
|
|
1018
1013
|
### Parameters
|
|
1019
1014
|
|
|
1020
|
-
* `id` **[String][
|
|
1015
|
+
* `id` **[String][169]** The File ID to remove
|
|
1021
1016
|
|
|
1022
|
-
Returns **[Promise][
|
|
1017
|
+
Returns **[Promise][176]** A promise which resolves when the operation has completed
|
|
1023
1018
|
|
|
1024
1019
|
## setProjectFileContents
|
|
1025
1020
|
|
|
@@ -1027,18 +1022,18 @@ Save (or overwrite) a file within a project
|
|
|
1027
1022
|
|
|
1028
1023
|
### Parameters
|
|
1029
1024
|
|
|
1030
|
-
* `id` **([String][
|
|
1031
|
-
* `contents` **(File | [Blob][
|
|
1032
|
-
* `options` **[Object][
|
|
1025
|
+
* `id` **([String][169] | [ProjectFile][1])?** ProjectFile or ID of the same to overwrite, if omitted a file is prompted for
|
|
1026
|
+
* `contents` **(File | [Blob][173] | [FormData][174] | [Object][170] | [Array][175])** The new file contents
|
|
1027
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
1033
1028
|
|
|
1034
|
-
* `options.id` **([String][
|
|
1035
|
-
* `options.autoRequire` **[Boolean][
|
|
1036
|
-
* `options.hint` **([String][
|
|
1037
|
-
* `options.filename` **[String][
|
|
1038
|
-
* `options.title` **[String][
|
|
1039
|
-
* `options.meta` **[Object][
|
|
1029
|
+
* `options.id` **([String][169] | [ProjectFile][1])?** Alternate method to specify the file ID to save as, if omitted one will be prompted for
|
|
1030
|
+
* `options.autoRequire` **[Boolean][178]** Run `requireProject()` automatically before continuing (optional, default `true`)
|
|
1031
|
+
* `options.hint` **([String][169] | [Array][175]<[String][169]>)?** Hint(s) to store against the library. Generally corresponds to the current operation being performed - e.g. 'deduped'
|
|
1032
|
+
* `options.filename` **[String][169]?** Suggested filename if `id` is unspecified
|
|
1033
|
+
* `options.title` **[String][169]** Dialog title if `id` is unspecified and a prompt is necessary (optional, default `'Save citation library'`)
|
|
1034
|
+
* `options.meta` **[Object][170]?** Optional meta data to merge into the file data
|
|
1040
1035
|
|
|
1041
|
-
Returns **[Promise][
|
|
1036
|
+
Returns **[Promise][176]** A promise which will resolve when the write operation has completed
|
|
1042
1037
|
|
|
1043
1038
|
## selectProjectLibrary
|
|
1044
1039
|
|
|
@@ -1046,19 +1041,19 @@ Prompt the user to select a library to operate on and return a array of referenc
|
|
|
1046
1041
|
|
|
1047
1042
|
### Parameters
|
|
1048
1043
|
|
|
1049
|
-
* `options` **[Object][
|
|
1044
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
1050
1045
|
|
|
1051
|
-
* `options.title` **[String][
|
|
1052
|
-
* `options.hint` **([String][
|
|
1053
|
-
* `options.allowUpload` **[Boolean][
|
|
1054
|
-
* `options.allowRefresh` **[Boolean][
|
|
1055
|
-
* `options.allowDownloadZip` **[Boolean][
|
|
1056
|
-
* `options.allowCancel` **[Boolean][
|
|
1057
|
-
* `options.autoRequire` **[Boolean][
|
|
1058
|
-
* `options.filters` **[FileFilters][
|
|
1046
|
+
* `options.title` **[String][169]** The title of the dialog to display (optional, default `"Select a citation library"`)
|
|
1047
|
+
* `options.hint` **([String][169] | [Array][175]<[String][169]>)?** Hints to identify the library to select in array order of preference. Generally corresponds to the previous stage - e.g. 'deduped', 'review1', 'review2', 'dedisputed'
|
|
1048
|
+
* `options.allowUpload` **[Boolean][178]** Allow uploading new files (optional, default `true`)
|
|
1049
|
+
* `options.allowRefresh` **[Boolean][178]** Allow the user to manually refresh the file list (optional, default `true`)
|
|
1050
|
+
* `options.allowDownloadZip` **[Boolean][178]** Allow the user to download a Zip of all files (optional, default `true`)
|
|
1051
|
+
* `options.allowCancel` **[Boolean][178]** Allow cancelling the operation. Will throw `'CANCEL'` as the promise rejection if acationed (optional, default `true`)
|
|
1052
|
+
* `options.autoRequire` **[Boolean][178]** Run `requireProject()` automatically before continuing (optional, default `true`)
|
|
1053
|
+
* `options.filters` **[FileFilters][127]?** Optional file filters, defaults to citation library selection only
|
|
1059
1054
|
* `options` **...any?** Additional options - see `getProjectLibrary()`
|
|
1060
1055
|
|
|
1061
|
-
Returns **[Promise][
|
|
1056
|
+
Returns **[Promise][176]<[Array][175]\<Ref>>** A collection of references from the selected file
|
|
1062
1057
|
|
|
1063
1058
|
## getProjectLibrary
|
|
1064
1059
|
|
|
@@ -1066,15 +1061,15 @@ Fetch + convert a project file into a library of citations
|
|
|
1066
1061
|
|
|
1067
1062
|
### Parameters
|
|
1068
1063
|
|
|
1069
|
-
* `id` **[String][
|
|
1070
|
-
* `options` **[Object][
|
|
1064
|
+
* `id` **[String][169]** File ID to read
|
|
1065
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
1071
1066
|
|
|
1072
|
-
* `options.format` **[String][
|
|
1073
|
-
* `options.autoRequire` **[Boolean][
|
|
1074
|
-
* `options.filter` **[Function][
|
|
1075
|
-
* `options.find` **[Function][
|
|
1067
|
+
* `options.format` **[String][169]** Format for the file. ENUM: 'pojo' (return a parsed JS collection), 'blob' (raw JS Blob object), 'file' (named JS File object) (optional, default `'json'`)
|
|
1068
|
+
* `options.autoRequire` **[Boolean][178]** Run `requireProject()` automatically before continuing (optional, default `true`)
|
|
1069
|
+
* `options.filter` **[Function][179]?** Optional async file filter, called each time as `(File:ProjectFile)`
|
|
1070
|
+
* `options.find` **[Function][179]?** Optional async final stage file filter to reduce all candidates down to one subject file
|
|
1076
1071
|
|
|
1077
|
-
Returns **([Promise][
|
|
1072
|
+
Returns **([Promise][176]<[Array][175]\<Ref>> | [Promise][176]\<any>)** A collection of references (default bevahiour) or a whatever format was requested
|
|
1078
1073
|
|
|
1079
1074
|
## setProjectLibrary
|
|
1080
1075
|
|
|
@@ -1082,33 +1077,33 @@ Save back a citation library from some input
|
|
|
1082
1077
|
|
|
1083
1078
|
### Parameters
|
|
1084
1079
|
|
|
1085
|
-
* `id` **[String][
|
|
1086
|
-
* `refs` **([Array][
|
|
1087
|
-
* `options` **[Object][
|
|
1080
|
+
* `id` **[String][169]?** File ID to save back to, if omitted a file will be prompted for
|
|
1081
|
+
* `refs` **([Array][175]\<RefLibRef> | [Blob][173] | File)?** Collection of references for the selected library or the raw Blob/File
|
|
1082
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
1088
1083
|
|
|
1089
|
-
* `options.id` **[String][
|
|
1090
|
-
* `options.refs` **([Array][
|
|
1091
|
-
* `options.format` **[String][
|
|
1092
|
-
* `options.autoRequire` **[Boolean][
|
|
1093
|
-
* `options.hint` **[String][
|
|
1094
|
-
* `options.filename` **[String][
|
|
1095
|
-
* `options.title` **[String][
|
|
1096
|
-
* `options.overwrite` **[Boolean][
|
|
1097
|
-
* `options.meta` **[Object][
|
|
1084
|
+
* `options.id` **[String][169]?** Alternate method to specify the file ID to save as, if omitted one will be prompted for
|
|
1085
|
+
* `options.refs` **([Array][175]\<RefLibRef> | [Blob][173] | File)?** Alternate method to specify the refs to save as an array or raw Blob/File
|
|
1086
|
+
* `options.format` **[String][169]** Input format used. ENUM: 'pojo' (return a parsed JS collection), 'blob' (raw JS Blob object), 'file' (named JS File object) (optional, default `'json'`)
|
|
1087
|
+
* `options.autoRequire` **[Boolean][178]** Run `requireProject()` automatically before continuing (optional, default `true`)
|
|
1088
|
+
* `options.hint` **[String][169]?** Hint to store against the library. Generally corresponds to the current operation being performed - e.g. 'deduped'
|
|
1089
|
+
* `options.filename` **[String][169]?** Suggested filename if `id` is unspecified
|
|
1090
|
+
* `options.title` **[String][169]** Dialog title if `id` is unspecified and a prompt is necessary (optional, default `'Save citation library'`)
|
|
1091
|
+
* `options.overwrite` **[Boolean][178]** Allow existing file upsert (optional, default `true`)
|
|
1092
|
+
* `options.meta` **[Object][170]?** Optional meta data to merge into the file data
|
|
1098
1093
|
|
|
1099
|
-
Returns **[Promise][
|
|
1094
|
+
Returns **[Promise][176]** A promise which resolves when the save operation has completed
|
|
1100
1095
|
|
|
1101
1096
|
## projectLog
|
|
1102
1097
|
|
|
1103
1098
|
Create a log entry for the currently active project
|
|
1104
1099
|
|
|
1105
|
-
The required log object can be of various forms. See [https://tera-tools.com/api/logs.json][
|
|
1100
|
+
The required log object can be of various forms. See [https://tera-tools.com/api/logs.json][183] for the full list
|
|
1106
1101
|
|
|
1107
1102
|
### Parameters
|
|
1108
1103
|
|
|
1109
|
-
* `log` **[Object][
|
|
1104
|
+
* `log` **[Object][170]** The log entry to create
|
|
1110
1105
|
|
|
1111
|
-
Returns **[Promise][
|
|
1106
|
+
Returns **[Promise][176]** A promise which resolves when the operation has completed
|
|
1112
1107
|
|
|
1113
1108
|
## setPage
|
|
1114
1109
|
|
|
@@ -1117,10 +1112,10 @@ This is usually called by a tool nested within the tera-tools.com embed
|
|
|
1117
1112
|
|
|
1118
1113
|
### Parameters
|
|
1119
1114
|
|
|
1120
|
-
* `options` **([Object][
|
|
1115
|
+
* `options` **([Object][170] | [String][169])** Context information about the page, if this is a string, its assumed to popupate `url`
|
|
1121
1116
|
|
|
1122
|
-
* `options.path` **[String][
|
|
1123
|
-
* `options.title` **[String][
|
|
1117
|
+
* `options.path` **[String][169]?** The URL path segment to restore on next refresh
|
|
1118
|
+
* `options.title` **[String][169]?** The page title associated with the path
|
|
1124
1119
|
|
|
1125
1120
|
## uiAlert
|
|
1126
1121
|
|
|
@@ -1128,15 +1123,15 @@ Display simple text within TERA
|
|
|
1128
1123
|
|
|
1129
1124
|
### Parameters
|
|
1130
1125
|
|
|
1131
|
-
* `text` **[String][
|
|
1132
|
-
* `options` **[Object][
|
|
1126
|
+
* `text` **[String][169]?** Text to display, if specified this populates `options.body`
|
|
1127
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
1133
1128
|
|
|
1134
|
-
* `options.body` **[String][
|
|
1135
|
-
* `options.isHtml` **[Boolean][
|
|
1136
|
-
* `options.title` **[String][
|
|
1129
|
+
* `options.body` **[String][169]** The body text to display (optional, default `"Alert!"`)
|
|
1130
|
+
* `options.isHtml` **[Boolean][178]** If falsy the text is rendered as plain-text otherwise it will be assumed as HTML content (optional, default `false`)
|
|
1131
|
+
* `options.title` **[String][169]** The title of the alert box (optional, default `'TERA'`)
|
|
1137
1132
|
* `options.buttons` **(`"ok"` | `false`)** Button set to use or falsy to disable (optional, default `'ok'`)
|
|
1138
1133
|
|
|
1139
|
-
Returns **[Promise][
|
|
1134
|
+
Returns **[Promise][176]** A promise which resolves when the alert has been dismissed
|
|
1140
1135
|
|
|
1141
1136
|
## uiConfirm
|
|
1142
1137
|
|
|
@@ -1144,14 +1139,14 @@ Present a simple ok/cancel dialog to the user
|
|
|
1144
1139
|
|
|
1145
1140
|
### Parameters
|
|
1146
1141
|
|
|
1147
|
-
* `text` **[String][
|
|
1148
|
-
* `options` **[Object][
|
|
1142
|
+
* `text` **[String][169]?** Text to display, if specified this populates `options.body`
|
|
1143
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
1149
1144
|
|
|
1150
|
-
* `options.body` **[String][
|
|
1151
|
-
* `options.isHtml` **[Boolean][
|
|
1152
|
-
* `options.title` **[String][
|
|
1145
|
+
* `options.body` **[String][169]** The body text to display (optional, default `"Confirm?"`)
|
|
1146
|
+
* `options.isHtml` **[Boolean][178]** If falsy the text is rendered as plain-text otherwise it will be assumed as HTML content (optional, default `false`)
|
|
1147
|
+
* `options.title` **[String][169]** The title of the confirmation box (optional, default `'TERA'`)
|
|
1153
1148
|
|
|
1154
|
-
Returns **[Promise][
|
|
1149
|
+
Returns **[Promise][176]** A promise which resolves with `Promise.resolve('OK')` or rejects with `Promise.reject('CANCEL')`
|
|
1155
1150
|
|
|
1156
1151
|
## uiPanic
|
|
1157
1152
|
|
|
@@ -1159,7 +1154,7 @@ Trigger a fatal error, killing the outer TERA site
|
|
|
1159
1154
|
|
|
1160
1155
|
### Parameters
|
|
1161
1156
|
|
|
1162
|
-
* `text` **[String][
|
|
1157
|
+
* `text` **[String][169]?** Text to display
|
|
1163
1158
|
|
|
1164
1159
|
## uiProgress
|
|
1165
1160
|
|
|
@@ -1168,17 +1163,17 @@ All options are cumulative - i.e. they are merged with other options previously
|
|
|
1168
1163
|
|
|
1169
1164
|
### Parameters
|
|
1170
1165
|
|
|
1171
|
-
* `options` **([Object][
|
|
1166
|
+
* `options` **([Object][170] | [Boolean][178])?** Additional options to mutate behaviour, if boolean false `{close: true}` is assumed
|
|
1172
1167
|
|
|
1173
|
-
* `options.title` **[String][
|
|
1174
|
-
* `options.body` **[String][
|
|
1175
|
-
* `options.bodyHtml` **[Boolean][
|
|
1176
|
-
* `options.close` **[Boolean][
|
|
1177
|
-
* `options.text` **[String][
|
|
1178
|
-
* `options.progress` **[Number][
|
|
1179
|
-
* `options.maxProgress` **[Number][
|
|
1168
|
+
* `options.title` **[String][169]** Window title, can only be set on the initial call (optional, default `'TERA'`)
|
|
1169
|
+
* `options.body` **[String][169]** Window body text, can only be set on the initial call (optional, default `''`)
|
|
1170
|
+
* `options.bodyHtml` **[Boolean][178]** Treat body text as HTML (optional, default `false`)
|
|
1171
|
+
* `options.close` **[Boolean][178]** Close the existing dialog, if true the dialog is disposed and options reset (optional, default `false`)
|
|
1172
|
+
* `options.text` **[String][169]?** The text of the task being conducted
|
|
1173
|
+
* `options.progress` **[Number][172]?** The current progress of the task being conducted, this is assumed to be a value less than `maxProgress`
|
|
1174
|
+
* `options.maxProgress` **[Number][172]?** The maximum value that the progress can be
|
|
1180
1175
|
|
|
1181
|
-
Returns **[Promise][
|
|
1176
|
+
Returns **[Promise][176]** A promise which resolves when the dialog has been updated
|
|
1182
1177
|
|
|
1183
1178
|
## uiPrompt
|
|
1184
1179
|
|
|
@@ -1186,17 +1181,17 @@ Prompt the user for an input, responding with a Promisable value
|
|
|
1186
1181
|
|
|
1187
1182
|
### Parameters
|
|
1188
1183
|
|
|
1189
|
-
* `text` **[String][
|
|
1190
|
-
* `options` **[Object][
|
|
1184
|
+
* `text` **[String][169]?** Text to display, if specified this populates `options.body`
|
|
1185
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
1191
1186
|
|
|
1192
|
-
* `options.body` **[String][
|
|
1193
|
-
* `options.isHtml` **[Boolean][
|
|
1194
|
-
* `options.value` **[String][
|
|
1195
|
-
* `options.title` **[String][
|
|
1196
|
-
* `options.placeholder` **[String][
|
|
1197
|
-
* `options.required` **[Boolean][
|
|
1187
|
+
* `options.body` **[String][169]?** Optional additional body text
|
|
1188
|
+
* `options.isHtml` **[Boolean][178]** If truthy, treat the body as HTML (optional, default `false`)
|
|
1189
|
+
* `options.value` **[String][169]?** Current or default value to display pre-filled
|
|
1190
|
+
* `options.title` **[String][169]** The dialog title to display (optional, default `'Input required'`)
|
|
1191
|
+
* `options.placeholder` **[String][169]?** Optional placeholder text
|
|
1192
|
+
* `options.required` **[Boolean][178]** Treat nullish or empty inputs as a cancel operation (optional, default `true`)
|
|
1198
1193
|
|
|
1199
|
-
Returns **[Promise][
|
|
1194
|
+
Returns **[Promise][176]\<any>** Either the eventual user value or a throw with `Promise.reject('CANCEL')`
|
|
1200
1195
|
|
|
1201
1196
|
## uiThrow
|
|
1202
1197
|
|
|
@@ -1204,7 +1199,7 @@ Catch an error using the TERA error handler
|
|
|
1204
1199
|
|
|
1205
1200
|
### Parameters
|
|
1206
1201
|
|
|
1207
|
-
* `error` **([Error][
|
|
1202
|
+
* `error` **([Error][184] | [Object][170] | [String][169])** Error to handle, generally an Error object but can be a POJO or a scalar string
|
|
1208
1203
|
|
|
1209
1204
|
Returns **Void** This function is fatal
|
|
1210
1205
|
|
|
@@ -1214,13 +1209,13 @@ Open a popup window containing a new site
|
|
|
1214
1209
|
|
|
1215
1210
|
### Parameters
|
|
1216
1211
|
|
|
1217
|
-
* `url` **[String][
|
|
1218
|
-
* `options` **[Object][
|
|
1212
|
+
* `url` **[String][169]** The URL to open
|
|
1213
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
1219
1214
|
|
|
1220
|
-
* `options.width` **[Number][
|
|
1221
|
-
* `options.height` **[Number][
|
|
1222
|
-
* `options.center` **[Boolean][
|
|
1223
|
-
* `options.permissions` **[Object][
|
|
1215
|
+
* `options.width` **[Number][172]** The desired width of the window (optional, default `500`)
|
|
1216
|
+
* `options.height` **[Number][172]** The desired height of the window (optional, default `600`)
|
|
1217
|
+
* `options.center` **[Boolean][178]** Attempt to center the window on the screen (optional, default `true`)
|
|
1218
|
+
* `options.permissions` **[Object][170]?** Additional permissions to set on opening, defaults to a suitable set of permission for popups (see code)
|
|
1224
1219
|
|
|
1225
1220
|
Returns **WindowProxy** The opened window object (if `noopener` is not set in permissions)
|
|
1226
1221
|
|
|
@@ -1231,10 +1226,10 @@ This function is ideally called within a requestFocus() wrapper
|
|
|
1231
1226
|
|
|
1232
1227
|
### Parameters
|
|
1233
1228
|
|
|
1234
|
-
* `content` **(DOMElement | [String][
|
|
1235
|
-
* `options` **[Object][
|
|
1229
|
+
* `content` **(DOMElement | [String][169] | `false`)** Either a prepared DOM element or string to compile, set to falsy to remove existing content
|
|
1230
|
+
* `options` **[Object][170]?** Additional options to mutate behaviour
|
|
1236
1231
|
|
|
1237
|
-
* `options.logo` **([Boolean][
|
|
1232
|
+
* `options.logo` **([Boolean][178] | [String][169])** Add a logo to the output, if boolean true the Tera-tools logo is used otherwise specify a path or URL (optional, default `false`)
|
|
1238
1233
|
|
|
1239
1234
|
[1]: #projectfile
|
|
1240
1235
|
|
|
@@ -1330,278 +1325,276 @@ This function is ideally called within a requestFocus() wrapper
|
|
|
1330
1325
|
|
|
1331
1326
|
[47]: #acceptpostboxes
|
|
1332
1327
|
|
|
1333
|
-
[48]: #
|
|
1328
|
+
[48]: #createprojectstatepatch
|
|
1334
1329
|
|
|
1335
1330
|
[49]: #parameters-8
|
|
1336
1331
|
|
|
1337
|
-
[50]: #
|
|
1332
|
+
[50]: #applyprojectstatepatch
|
|
1338
1333
|
|
|
1339
1334
|
[51]: #parameters-9
|
|
1340
1335
|
|
|
1341
|
-
[52]: #
|
|
1336
|
+
[52]: #applyprojectstatepatchlocal
|
|
1342
1337
|
|
|
1343
1338
|
[53]: #parameters-10
|
|
1344
1339
|
|
|
1345
|
-
[54]: #
|
|
1340
|
+
[54]: #init
|
|
1346
1341
|
|
|
1347
1342
|
[55]: #parameters-11
|
|
1348
1343
|
|
|
1349
|
-
[56]: #
|
|
1344
|
+
[56]: #detectmode
|
|
1350
1345
|
|
|
1351
|
-
[57]: #
|
|
1346
|
+
[57]: #injectcomms
|
|
1352
1347
|
|
|
1353
|
-
[58]: #
|
|
1348
|
+
[58]: #handshakeloop
|
|
1354
1349
|
|
|
1355
|
-
[59]: #parameters-
|
|
1350
|
+
[59]: #parameters-12
|
|
1356
1351
|
|
|
1357
|
-
[60]: #
|
|
1352
|
+
[60]: #properties-3
|
|
1358
1353
|
|
|
1359
|
-
[61]: #
|
|
1354
|
+
[61]: #injectstylesheet
|
|
1360
1355
|
|
|
1361
|
-
[62]: #
|
|
1356
|
+
[62]: #injectmethods
|
|
1362
1357
|
|
|
1363
|
-
[63]: #
|
|
1358
|
+
[63]: #debug
|
|
1364
1359
|
|
|
1365
|
-
[64]: #
|
|
1360
|
+
[64]: #parameters-13
|
|
1366
1361
|
|
|
1367
|
-
[65]: #
|
|
1362
|
+
[65]: #set
|
|
1368
1363
|
|
|
1369
|
-
[66]: #
|
|
1364
|
+
[66]: #parameters-14
|
|
1370
1365
|
|
|
1371
|
-
[67]: #
|
|
1366
|
+
[67]: #setifdev
|
|
1372
1367
|
|
|
1373
1368
|
[68]: #parameters-15
|
|
1374
1369
|
|
|
1375
|
-
[69]: #
|
|
1370
|
+
[69]: #use
|
|
1376
1371
|
|
|
1377
1372
|
[70]: #parameters-16
|
|
1378
1373
|
|
|
1379
|
-
[71]: #
|
|
1374
|
+
[71]: #mixin
|
|
1380
1375
|
|
|
1381
1376
|
[72]: #parameters-17
|
|
1382
1377
|
|
|
1383
|
-
[73]: #
|
|
1378
|
+
[73]: #toggledevmode
|
|
1384
1379
|
|
|
1385
1380
|
[74]: #parameters-18
|
|
1386
1381
|
|
|
1387
|
-
[75]: #
|
|
1382
|
+
[75]: #togglefocus
|
|
1388
1383
|
|
|
1389
1384
|
[76]: #parameters-19
|
|
1390
1385
|
|
|
1391
|
-
[77]: #
|
|
1386
|
+
[77]: #getentropicstring
|
|
1392
1387
|
|
|
1393
1388
|
[78]: #parameters-20
|
|
1394
1389
|
|
|
1395
|
-
[79]: #
|
|
1390
|
+
[79]: #selectprojectfile
|
|
1396
1391
|
|
|
1397
1392
|
[80]: #parameters-21
|
|
1398
1393
|
|
|
1399
|
-
[81]: #
|
|
1394
|
+
[81]: #mountnamespace
|
|
1400
1395
|
|
|
1401
1396
|
[82]: #parameters-22
|
|
1402
1397
|
|
|
1403
|
-
[83]: #
|
|
1398
|
+
[83]: #actual-namespace-mounting-function-designed-to-be-overriden-by-plugins
|
|
1404
1399
|
|
|
1405
1400
|
[84]: #parameters-23
|
|
1406
1401
|
|
|
1407
|
-
[85]: #
|
|
1402
|
+
[85]: #unmountnamespace
|
|
1408
1403
|
|
|
1409
1404
|
[86]: #parameters-24
|
|
1410
1405
|
|
|
1411
|
-
[87]: #actual-namespace-
|
|
1406
|
+
[87]: #actual-namespace-unmounting-function-designed-to-be-overriden-by-plugins
|
|
1412
1407
|
|
|
1413
1408
|
[88]: #parameters-25
|
|
1414
1409
|
|
|
1415
|
-
[89]: #
|
|
1416
|
-
|
|
1417
|
-
[90]: #parameters-26
|
|
1410
|
+
[89]: #handshake
|
|
1418
1411
|
|
|
1419
|
-
[
|
|
1412
|
+
[90]: #properties-4
|
|
1420
1413
|
|
|
1421
|
-
[
|
|
1414
|
+
[91]: #setserververbosity
|
|
1422
1415
|
|
|
1423
|
-
[
|
|
1416
|
+
[92]: #parameters-26
|
|
1424
1417
|
|
|
1425
|
-
[
|
|
1418
|
+
[93]: #user
|
|
1426
1419
|
|
|
1427
|
-
[
|
|
1420
|
+
[94]: #properties-5
|
|
1428
1421
|
|
|
1429
|
-
[
|
|
1422
|
+
[95]: #getuser
|
|
1430
1423
|
|
|
1431
|
-
[
|
|
1424
|
+
[96]: #getcredentials
|
|
1432
1425
|
|
|
1433
|
-
[
|
|
1426
|
+
[97]: #requireuser
|
|
1434
1427
|
|
|
1435
|
-
[
|
|
1428
|
+
[98]: #parameters-27
|
|
1436
1429
|
|
|
1437
|
-
[
|
|
1430
|
+
[99]: #project
|
|
1438
1431
|
|
|
1439
|
-
[
|
|
1432
|
+
[100]: #getproject
|
|
1440
1433
|
|
|
1441
|
-
[
|
|
1434
|
+
[101]: #getprojects
|
|
1442
1435
|
|
|
1443
|
-
[
|
|
1436
|
+
[102]: #setactiveproject
|
|
1444
1437
|
|
|
1445
|
-
[
|
|
1438
|
+
[103]: #parameters-28
|
|
1446
1439
|
|
|
1447
|
-
[
|
|
1440
|
+
[104]: #requireproject
|
|
1448
1441
|
|
|
1449
|
-
[
|
|
1442
|
+
[105]: #parameters-29
|
|
1450
1443
|
|
|
1451
|
-
[
|
|
1444
|
+
[106]: #selectproject
|
|
1452
1445
|
|
|
1453
|
-
[
|
|
1446
|
+
[107]: #parameters-30
|
|
1454
1447
|
|
|
1455
|
-
[
|
|
1448
|
+
[108]: #getnamespace
|
|
1456
1449
|
|
|
1457
|
-
[
|
|
1450
|
+
[109]: #parameters-31
|
|
1458
1451
|
|
|
1459
|
-
[
|
|
1452
|
+
[110]: #setnamespace
|
|
1460
1453
|
|
|
1461
|
-
[
|
|
1454
|
+
[111]: #parameters-32
|
|
1462
1455
|
|
|
1463
|
-
[
|
|
1456
|
+
[112]: #listnamespaces
|
|
1464
1457
|
|
|
1465
|
-
[
|
|
1458
|
+
[113]: #properties-6
|
|
1466
1459
|
|
|
1467
|
-
[
|
|
1460
|
+
[114]: #getprojectstate
|
|
1468
1461
|
|
|
1469
|
-
[
|
|
1462
|
+
[115]: #parameters-33
|
|
1470
1463
|
|
|
1471
|
-
[
|
|
1464
|
+
[116]: #setprojectstate
|
|
1472
1465
|
|
|
1473
|
-
[
|
|
1466
|
+
[117]: #parameters-34
|
|
1474
1467
|
|
|
1475
|
-
[
|
|
1468
|
+
[118]: #setprojectstatedefaults
|
|
1476
1469
|
|
|
1477
|
-
[
|
|
1470
|
+
[119]: #parameters-35
|
|
1478
1471
|
|
|
1479
|
-
[
|
|
1472
|
+
[120]: #setprojectstaterefresh
|
|
1480
1473
|
|
|
1481
|
-
[
|
|
1474
|
+
[121]: #saveprojectstate
|
|
1482
1475
|
|
|
1483
|
-
[
|
|
1476
|
+
[122]: #replaceprojectstate
|
|
1484
1477
|
|
|
1485
|
-
[
|
|
1478
|
+
[123]: #parameters-36
|
|
1486
1479
|
|
|
1487
|
-
[
|
|
1480
|
+
[124]: #applyprojectstatepatch-1
|
|
1488
1481
|
|
|
1489
|
-
[
|
|
1482
|
+
[125]: #parameters-37
|
|
1490
1483
|
|
|
1491
|
-
[
|
|
1484
|
+
[126]: #subscribeprojectstate
|
|
1492
1485
|
|
|
1493
|
-
[
|
|
1486
|
+
[127]: #filefilters
|
|
1494
1487
|
|
|
1495
|
-
[
|
|
1488
|
+
[128]: #properties-7
|
|
1496
1489
|
|
|
1497
|
-
[
|
|
1490
|
+
[129]: #selectprojectfile-1
|
|
1498
1491
|
|
|
1499
|
-
[
|
|
1492
|
+
[130]: #parameters-38
|
|
1500
1493
|
|
|
1501
|
-
[
|
|
1494
|
+
[131]: #getprojectfiles
|
|
1502
1495
|
|
|
1503
|
-
[
|
|
1496
|
+
[132]: #parameters-39
|
|
1504
1497
|
|
|
1505
|
-
[
|
|
1498
|
+
[133]: #getprojectfilecontents
|
|
1506
1499
|
|
|
1507
|
-
[
|
|
1500
|
+
[134]: #parameters-40
|
|
1508
1501
|
|
|
1509
|
-
[
|
|
1502
|
+
[135]: #getprojectfile
|
|
1510
1503
|
|
|
1511
|
-
[
|
|
1504
|
+
[136]: #parameters-41
|
|
1512
1505
|
|
|
1513
|
-
[
|
|
1506
|
+
[137]: #createprojectfile
|
|
1514
1507
|
|
|
1515
|
-
[
|
|
1508
|
+
[138]: #parameters-42
|
|
1516
1509
|
|
|
1517
|
-
[
|
|
1510
|
+
[139]: #deleteprojectfile
|
|
1518
1511
|
|
|
1519
|
-
[
|
|
1512
|
+
[140]: #parameters-43
|
|
1520
1513
|
|
|
1521
|
-
[
|
|
1514
|
+
[141]: #setprojectfilecontents
|
|
1522
1515
|
|
|
1523
|
-
[
|
|
1516
|
+
[142]: #parameters-44
|
|
1524
1517
|
|
|
1525
|
-
[
|
|
1518
|
+
[143]: #selectprojectlibrary
|
|
1526
1519
|
|
|
1527
|
-
[
|
|
1520
|
+
[144]: #parameters-45
|
|
1528
1521
|
|
|
1529
|
-
[
|
|
1522
|
+
[145]: #getprojectlibrary
|
|
1530
1523
|
|
|
1531
|
-
[
|
|
1524
|
+
[146]: #parameters-46
|
|
1532
1525
|
|
|
1533
|
-
[
|
|
1526
|
+
[147]: #setprojectlibrary
|
|
1534
1527
|
|
|
1535
|
-
[
|
|
1528
|
+
[148]: #parameters-47
|
|
1536
1529
|
|
|
1537
|
-
[
|
|
1530
|
+
[149]: #projectlog
|
|
1538
1531
|
|
|
1539
|
-
[
|
|
1532
|
+
[150]: #parameters-48
|
|
1540
1533
|
|
|
1541
|
-
[
|
|
1534
|
+
[151]: #setpage
|
|
1542
1535
|
|
|
1543
|
-
[
|
|
1536
|
+
[152]: #parameters-49
|
|
1544
1537
|
|
|
1545
|
-
[
|
|
1538
|
+
[153]: #uialert
|
|
1546
1539
|
|
|
1547
|
-
[
|
|
1540
|
+
[154]: #parameters-50
|
|
1548
1541
|
|
|
1549
|
-
[
|
|
1542
|
+
[155]: #uiconfirm
|
|
1550
1543
|
|
|
1551
|
-
[
|
|
1544
|
+
[156]: #parameters-51
|
|
1552
1545
|
|
|
1553
|
-
[
|
|
1546
|
+
[157]: #uipanic
|
|
1554
1547
|
|
|
1555
|
-
[
|
|
1548
|
+
[158]: #parameters-52
|
|
1556
1549
|
|
|
1557
|
-
[
|
|
1550
|
+
[159]: #uiprogress
|
|
1558
1551
|
|
|
1559
|
-
[
|
|
1552
|
+
[160]: #parameters-53
|
|
1560
1553
|
|
|
1561
|
-
[
|
|
1554
|
+
[161]: #uiprompt
|
|
1562
1555
|
|
|
1563
|
-
[
|
|
1556
|
+
[162]: #parameters-54
|
|
1564
1557
|
|
|
1565
|
-
[
|
|
1558
|
+
[163]: #uithrow
|
|
1566
1559
|
|
|
1567
|
-
[
|
|
1560
|
+
[164]: #parameters-55
|
|
1568
1561
|
|
|
1569
|
-
[
|
|
1562
|
+
[165]: #uiwindow
|
|
1570
1563
|
|
|
1571
|
-
[
|
|
1564
|
+
[166]: #parameters-56
|
|
1572
1565
|
|
|
1573
|
-
[
|
|
1566
|
+
[167]: #uisplat
|
|
1574
1567
|
|
|
1575
|
-
[
|
|
1568
|
+
[168]: #parameters-57
|
|
1576
1569
|
|
|
1577
|
-
[
|
|
1570
|
+
[169]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String
|
|
1578
1571
|
|
|
1579
|
-
[
|
|
1572
|
+
[170]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object
|
|
1580
1573
|
|
|
1581
|
-
[
|
|
1574
|
+
[171]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Date
|
|
1582
1575
|
|
|
1583
|
-
[
|
|
1576
|
+
[172]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number
|
|
1584
1577
|
|
|
1585
|
-
[
|
|
1578
|
+
[173]: https://developer.mozilla.org/docs/Web/API/Blob
|
|
1586
1579
|
|
|
1587
|
-
[
|
|
1580
|
+
[174]: https://developer.mozilla.org/docs/Web/API/FormData
|
|
1588
1581
|
|
|
1589
|
-
[
|
|
1582
|
+
[175]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array
|
|
1590
1583
|
|
|
1591
|
-
[
|
|
1584
|
+
[176]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise
|
|
1592
1585
|
|
|
1593
|
-
[
|
|
1586
|
+
[177]: https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Structured_clone_algorithm
|
|
1594
1587
|
|
|
1595
|
-
[
|
|
1588
|
+
[178]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean
|
|
1596
1589
|
|
|
1597
|
-
[
|
|
1590
|
+
[179]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function
|
|
1598
1591
|
|
|
1599
|
-
[
|
|
1592
|
+
[180]: https://developer.mozilla.org/docs/Web/API/Window
|
|
1600
1593
|
|
|
1601
|
-
[
|
|
1594
|
+
[181]: https://developer.mozilla.org/docs/Web/API/MessageEvent
|
|
1602
1595
|
|
|
1603
|
-
[
|
|
1596
|
+
[182]: http://jsonpatch.com
|
|
1604
1597
|
|
|
1605
|
-
[
|
|
1598
|
+
[183]: https://tera-tools.com/api/logs.json
|
|
1606
1599
|
|
|
1607
|
-
[
|
|
1600
|
+
[184]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Error
|