@casual-simulation/aux-common 3.0.0 → 3.0.2-alpha.1971236872
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/bots/Bot.d.ts +13 -1
- package/bots/Bot.js +17 -0
- package/bots/Bot.js.map +1 -1
- package/bots/BotCalculations.d.ts +17 -0
- package/bots/BotCalculations.js +53 -5
- package/bots/BotCalculations.js.map +1 -1
- package/bots/BotEvents.d.ts +1 -75
- package/bots/BotEvents.js +0 -56
- package/bots/BotEvents.js.map +1 -1
- package/bots/test/BotCalculationContextTests.js +1 -0
- package/bots/test/BotCalculationContextTests.js.map +1 -1
- package/package.json +5 -3
- package/runtime/AuxGlobalContext.d.ts +23 -0
- package/runtime/AuxGlobalContext.js +4 -0
- package/runtime/AuxGlobalContext.js.map +1 -1
- package/runtime/AuxLibrary.d.ts +52 -4
- package/runtime/AuxLibrary.js +119 -54
- package/runtime/AuxLibrary.js.map +1 -1
- package/runtime/AuxLibraryDefinitions.def +5185 -2239
- package/runtime/AuxRuntime.d.ts +3 -3
- package/runtime/AuxRuntime.js +25 -3
- package/runtime/AuxRuntime.js.map +1 -1
- package/runtime/RuntimeBot.d.ts +16 -3
- package/runtime/RuntimeBot.js +11 -39
- package/runtime/RuntimeBot.js.map +1 -1
- package/runtime/Utils.js +5 -1
- package/runtime/Utils.js.map +1 -1
- package/runtime/test/TestScriptBotFactory.js +8 -2
- package/runtime/test/TestScriptBotFactory.js.map +1 -1
- package/test/TestHelpers.js +1 -5
- package/test/TestHelpers.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@casual-simulation/aux-common",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.2-alpha.1971236872",
|
|
4
4
|
"description": "Common library for AUX projects",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@casual-simulation/aux-records": "^3.0.0",
|
|
37
|
-
"@casual-simulation/causal-trees": "^3.0.
|
|
37
|
+
"@casual-simulation/causal-trees": "^3.0.2-alpha.1971236872",
|
|
38
38
|
"@casual-simulation/crypto": "^3.0.0",
|
|
39
39
|
"@casual-simulation/error-stack-parser": "^2.0.7",
|
|
40
40
|
"@casual-simulation/expect": "^3.0.0",
|
|
@@ -53,8 +53,10 @@
|
|
|
53
53
|
"hash.js": "1.1.7",
|
|
54
54
|
"htm": "3.1.0",
|
|
55
55
|
"lru-cache": "^5.1.1",
|
|
56
|
+
"luxon": "2.3.0",
|
|
56
57
|
"preact": "10.5.14",
|
|
57
58
|
"rxjs": "^6.5.2",
|
|
59
|
+
"seedrandom": "3.0.5",
|
|
58
60
|
"stackframe": "^1.2.0",
|
|
59
61
|
"uuid": "^8.3.2",
|
|
60
62
|
"yjs": "13.5.24"
|
|
@@ -71,5 +73,5 @@
|
|
|
71
73
|
"**/*.d.ts",
|
|
72
74
|
"**/*.def"
|
|
73
75
|
],
|
|
74
|
-
"gitHead": "
|
|
76
|
+
"gitHead": "e71f4b32d70175160955391a46b387fed55df1c1"
|
|
75
77
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/// <reference types="seedrandom" />
|
|
1
2
|
import { BotAction, Bot, BotTags, RuntimeBot } from '../bots';
|
|
2
3
|
import { RuntimeBotFactory, RuntimeBotsState, RuntimeBatcher } from './RuntimeBot';
|
|
3
4
|
import { AuxVersion } from './AuxVersion';
|
|
@@ -54,6 +55,24 @@ export interface AuxGlobalContext {
|
|
|
54
55
|
* The global values that the context is using.
|
|
55
56
|
*/
|
|
56
57
|
global: any;
|
|
58
|
+
/**
|
|
59
|
+
* The pseudo-random number generator that should be used by the context.
|
|
60
|
+
*/
|
|
61
|
+
pseudoRandomNumberGenerator: seedrandom.prng;
|
|
62
|
+
/**
|
|
63
|
+
* Gets or sets the calculated latency between this client and the inst server in miliseconds.
|
|
64
|
+
*/
|
|
65
|
+
instLatency: number;
|
|
66
|
+
/**
|
|
67
|
+
* Gets or sets the calculated time offset between this client and the inst server in miliseconds.
|
|
68
|
+
*/
|
|
69
|
+
instTimeOffset: number;
|
|
70
|
+
/**
|
|
71
|
+
* Gets or sets the difference between time offsets that are included in the calculated inst time offset.
|
|
72
|
+
* Values are in miliseconds.
|
|
73
|
+
* Can be a useful indicator of closely the local clock has been synced to the server clock.
|
|
74
|
+
*/
|
|
75
|
+
instTimeOffsetSpread: number;
|
|
57
76
|
/**
|
|
58
77
|
* Enqueues the given action.
|
|
59
78
|
* @param action The action to enqueue.
|
|
@@ -400,8 +419,12 @@ export declare class MemoryGlobalContext implements AuxGlobalContext {
|
|
|
400
419
|
* Whether async API actions should be mocked.
|
|
401
420
|
*/
|
|
402
421
|
mockAsyncActions: boolean;
|
|
422
|
+
pseudoRandomNumberGenerator: seedrandom.prng;
|
|
403
423
|
global: any;
|
|
404
424
|
uuid: (<T extends ArrayLike<number>>(options: import("uuid").V4Options, buffer: T, offset?: number) => T) & ((options?: import("uuid").V4Options) => string);
|
|
425
|
+
instLatency: number;
|
|
426
|
+
instTimeOffset: number;
|
|
427
|
+
instTimeOffsetSpread: number;
|
|
405
428
|
get localTime(): number;
|
|
406
429
|
private _taskCounter;
|
|
407
430
|
private _scriptFactory;
|
|
@@ -114,6 +114,9 @@ export class MemoryGlobalContext {
|
|
|
114
114
|
this.energy = DEFAULT_ENERGY;
|
|
115
115
|
this.global = {};
|
|
116
116
|
this.uuid = uuidv4;
|
|
117
|
+
this.instLatency = NaN;
|
|
118
|
+
this.instTimeOffset = NaN;
|
|
119
|
+
this.instTimeOffsetSpread = NaN;
|
|
117
120
|
this._taskCounter = 0;
|
|
118
121
|
this._shoutTimers = {};
|
|
119
122
|
this._numberOfTimers = 0;
|
|
@@ -127,6 +130,7 @@ export class MemoryGlobalContext {
|
|
|
127
130
|
this._portalWatcherMap = new Map();
|
|
128
131
|
this._mocks = new Map();
|
|
129
132
|
this._startTime = performance.now();
|
|
133
|
+
this.pseudoRandomNumberGenerator = null;
|
|
130
134
|
}
|
|
131
135
|
get localTime() {
|
|
132
136
|
return performance.now() - this._startTime;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuxGlobalContext.js","sourceRoot":"","sources":["AuxGlobalContext.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AuxGlobalContext.js","sourceRoot":"","sources":["AuxGlobalContext.ts"],"names":[],"mappings":"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"}
|
package/runtime/AuxLibrary.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import './BlobPolyfill';
|
|
|
9
9
|
import { AuxDevice } from './AuxDevice';
|
|
10
10
|
import { AuxVersion } from './AuxVersion';
|
|
11
11
|
import { CreatePublicRecordKeyResult, GetDataResult, RecordDataResult, RecordFileFailure, EraseDataResult, EraseFileResult, ListDataResult, AddCountResult, GetCountResult } from '@casual-simulation/aux-records';
|
|
12
|
+
import { DateTime } from 'luxon';
|
|
12
13
|
/**
|
|
13
14
|
* Defines an interface for a function that provides HTML VDOM capabilities to bots.
|
|
14
15
|
*/
|
|
@@ -301,6 +302,32 @@ export interface AuxDebuggerOptions {
|
|
|
301
302
|
*/
|
|
302
303
|
configBot: Bot | BotTags;
|
|
303
304
|
}
|
|
305
|
+
/**
|
|
306
|
+
* Defines an interface for a random number generator.
|
|
307
|
+
*/
|
|
308
|
+
export interface PseudoRandomNumberGenerator {
|
|
309
|
+
/**
|
|
310
|
+
* The seed used for this random number generator.
|
|
311
|
+
* If null then an unpredictable seed was used.
|
|
312
|
+
*/
|
|
313
|
+
seed: number | string | null;
|
|
314
|
+
/**
|
|
315
|
+
* Generates a random number between 0 and 1.
|
|
316
|
+
*/
|
|
317
|
+
random(): number;
|
|
318
|
+
/**
|
|
319
|
+
* Generates a random decimal number between the given min and max values.
|
|
320
|
+
* @param min The minimum output number.
|
|
321
|
+
* @param max The maximum output number.
|
|
322
|
+
*/
|
|
323
|
+
random(min?: number, max?: number): number;
|
|
324
|
+
/**
|
|
325
|
+
* Generates a random integer between the given min and max values.
|
|
326
|
+
* @param min The minimum output number.
|
|
327
|
+
* @param max The maximum output number.
|
|
328
|
+
*/
|
|
329
|
+
randomInt(min: number, max: number): number;
|
|
330
|
+
}
|
|
304
331
|
export interface MaskableFunction {
|
|
305
332
|
mask(...args: any[]): MaskedFunction;
|
|
306
333
|
}
|
|
@@ -404,6 +431,8 @@ export declare function createDefaultLibrary(context: AuxGlobalContext): {
|
|
|
404
431
|
updateBotLinks: (bot: Bot, idMap: Map<string, string | Bot> | {
|
|
405
432
|
[id: string]: string | Bot;
|
|
406
433
|
}) => void;
|
|
434
|
+
getDateTime: (value: unknown) => DateTime;
|
|
435
|
+
DateTime: typeof DateTime;
|
|
407
436
|
superShout: (eventName: string, arg?: any) => SuperShoutAction;
|
|
408
437
|
priorityShout: (eventNames: string[], arg?: any) => any;
|
|
409
438
|
shout: {
|
|
@@ -494,6 +523,27 @@ export declare function createDefaultLibrary(context: AuxGlobalContext): {
|
|
|
494
523
|
hideBarcode: () => ShowBarcodeAction;
|
|
495
524
|
openImageClassifier: (options: ImageClassifierOptions) => Promise<void>;
|
|
496
525
|
closeImageClassifier: () => Promise<void>;
|
|
526
|
+
/**
|
|
527
|
+
* Gets the local device time in Miliseconds since January 1st 1970 UTC-0.
|
|
528
|
+
*/
|
|
529
|
+
readonly localTime: number;
|
|
530
|
+
/**
|
|
531
|
+
* Gets the current agreed upon inst time in miliseconds since January 1st 1970 UTC-0.
|
|
532
|
+
*/
|
|
533
|
+
readonly agreedUponTime: number;
|
|
534
|
+
/**
|
|
535
|
+
* Gets the calculated latency (in miliseconds) between this device and the inst server.
|
|
536
|
+
*/
|
|
537
|
+
readonly instLatency: number;
|
|
538
|
+
/**
|
|
539
|
+
* Gets the calculated time offset between this device and the inst server in miliseconds.
|
|
540
|
+
*/
|
|
541
|
+
readonly instTimeOffset: number;
|
|
542
|
+
/**
|
|
543
|
+
* Gets the maximum spread between time offset samples in miliseconds.
|
|
544
|
+
* Useful for determining how closely the agreedUponTime matches the server time.
|
|
545
|
+
*/
|
|
546
|
+
readonly instTimeOffsetSpread: number;
|
|
497
547
|
loadServer: (id: string) => LoadServerAction;
|
|
498
548
|
unloadServer: (id: string) => UnloadServerAction;
|
|
499
549
|
loadInst: (id: string) => LoadServerAction;
|
|
@@ -606,10 +656,6 @@ export declare function createDefaultLibrary(context: AuxGlobalContext): {
|
|
|
606
656
|
};
|
|
607
657
|
server: {
|
|
608
658
|
setupServer: (inst: string, botOrMod?: Mod) => Promise<any>;
|
|
609
|
-
exportGpio: (pin: number, mode: 'in' | 'out') => Promise<any>;
|
|
610
|
-
unexportGpio: (pin: number) => Promise<any>;
|
|
611
|
-
setGpio: (pin: number, value: 0 | 1) => Promise<any>;
|
|
612
|
-
getGpio: (pin: number) => Promise<any>;
|
|
613
659
|
rpioInit: (options: object) => Promise<any>;
|
|
614
660
|
rpioExit: () => Promise<any>;
|
|
615
661
|
rpioOpen: (pin: number, mode: 'INPUT' | 'OUTPUT' | 'PWM', options?: 'HIGH' | 'LOW' | 'PULL_OFF' | 'PULL_DOWN' | 'PULL_UP') => Promise<any>;
|
|
@@ -718,6 +764,8 @@ export declare function createDefaultLibrary(context: AuxGlobalContext): {
|
|
|
718
764
|
sqrt: (value: any) => number;
|
|
719
765
|
abs: (number: any) => number;
|
|
720
766
|
stdDev: (list: any) => number;
|
|
767
|
+
getSeededRandomNumberGenerator: (seed?: number | string) => PseudoRandomNumberGenerator;
|
|
768
|
+
setRandomSeed: (seed: number | string) => void;
|
|
721
769
|
randomInt: (min?: number, max?: number) => number;
|
|
722
770
|
random: (min?: number, max?: number) => number;
|
|
723
771
|
getForwardDirection: (pointerRotation: {
|
package/runtime/AuxLibrary.js
CHANGED
|
@@ -8,10 +8,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import { DEBUG_STRING, debugStringifyFunction, } from './AuxGlobalContext';
|
|
11
|
-
import { hasValue, trimTag, isBot, BOT_SPACE_TAG, toast as toastMessage, showJoinCode as calcShowJoinCode, requestFullscreen, exitFullscreen, html as htmlMessage, hideHtml as hideHtmlMessage, setClipboard as calcSetClipboard, tweenTo as calcTweenTo, showChat as calcShowChat, hideChat as calcHideChat, runScript, getMediaPermission as calcGetMediaPermission, enableAR as calcEnableAR, disableAR as calcDisableAR, enableVR as calcEnableVR, disableVR as calcDisableVR, arSupported as calcARSupported, vrSupported as calcVRSupported, showUploadAuxFile as calcShowUploadAuxFile, openQRCodeScanner as calcOpenQRCodeScanner, showQRCode as calcShowQRCode, openBarcodeScanner as calcOpenBarcodeScanner, showBarcode as calcShowBarcode, importAUX as calcImportAUX, showInputForTag as calcShowInputForTag, showInput as calcShowInput, replaceDragBot as calcReplaceDragBot, goToDimension as calcGoToDimension, goToURL as calcGoToURL, openURL as calcOpenURL, checkout as calcCheckout, playSound as calcPlaySound, bufferSound as calcBufferSound, cancelSound as calcCancelSound, setupServer as calcSetupServer, shell as calcShell, backupToGithub as calcBackupToGithub, backupAsDownload as calcBackupAsDownload, finishCheckout as calcFinishCheckout, markHistory as calcMarkHistory, browseHistory as calcBrowseHistory, restoreHistoryMark as calcRestoreHistoryMark, loadFile as calcLoadFile, saveFile as calcSaveFile, reject as calcReject, localFormAnimation as calcLocalFormAnimation, webhook as calcWebhook, superShout as calcSuperShout, share as calcShare, registerPrefix as calcRegisterPrefix, createCertificate as calcCreateCertificate, signTag as calcSignTag, revokeCertificate as calcRevokeCertificate, localPositionTween as calcLocalPositionTween, localRotationTween as calcLocalRotationTween, showUploadFiles as calcShowUploadFiles, download, loadSimulation, unloadSimulation, getUploadState, addState, getPortalTag, KNOWN_PORTALS, openConsole, tagsOnBot, getOriginalObject, getBotSpace, trimEvent, CREATE_ACTION_NAME, CREATE_ANY_ACTION_NAME, DESTROY_ACTION_NAME, ORIGINAL_OBJECT, unlockSpace, getRemoteCount, getServers, getRemotes, action, getServerStatuses, setSpacePassword,
|
|
11
|
+
import { hasValue, trimTag, isBot, BOT_SPACE_TAG, toast as toastMessage, showJoinCode as calcShowJoinCode, requestFullscreen, exitFullscreen, html as htmlMessage, hideHtml as hideHtmlMessage, setClipboard as calcSetClipboard, tweenTo as calcTweenTo, showChat as calcShowChat, hideChat as calcHideChat, runScript, getMediaPermission as calcGetMediaPermission, enableAR as calcEnableAR, disableAR as calcDisableAR, enableVR as calcEnableVR, disableVR as calcDisableVR, arSupported as calcARSupported, vrSupported as calcVRSupported, showUploadAuxFile as calcShowUploadAuxFile, openQRCodeScanner as calcOpenQRCodeScanner, showQRCode as calcShowQRCode, openBarcodeScanner as calcOpenBarcodeScanner, showBarcode as calcShowBarcode, importAUX as calcImportAUX, showInputForTag as calcShowInputForTag, showInput as calcShowInput, replaceDragBot as calcReplaceDragBot, goToDimension as calcGoToDimension, goToURL as calcGoToURL, openURL as calcOpenURL, checkout as calcCheckout, playSound as calcPlaySound, bufferSound as calcBufferSound, cancelSound as calcCancelSound, setupServer as calcSetupServer, shell as calcShell, backupToGithub as calcBackupToGithub, backupAsDownload as calcBackupAsDownload, finishCheckout as calcFinishCheckout, markHistory as calcMarkHistory, browseHistory as calcBrowseHistory, restoreHistoryMark as calcRestoreHistoryMark, loadFile as calcLoadFile, saveFile as calcSaveFile, reject as calcReject, localFormAnimation as calcLocalFormAnimation, webhook as calcWebhook, superShout as calcSuperShout, share as calcShare, registerPrefix as calcRegisterPrefix, createCertificate as calcCreateCertificate, signTag as calcSignTag, revokeCertificate as calcRevokeCertificate, localPositionTween as calcLocalPositionTween, localRotationTween as calcLocalRotationTween, showUploadFiles as calcShowUploadFiles, download, loadSimulation, unloadSimulation, getUploadState, addState, getPortalTag, KNOWN_PORTALS, openConsole, tagsOnBot, getOriginalObject, getBotSpace, trimEvent, CREATE_ACTION_NAME, CREATE_ANY_ACTION_NAME, DESTROY_ACTION_NAME, ORIGINAL_OBJECT, unlockSpace, getRemoteCount, getServers, getRemotes, action, getServerStatuses, setSpacePassword, rpioInitPin, rpioExitPin, rpioOpenPin, rpioModePin, rpioReadPin, rpioReadSequencePin, rpioWritePin, rpioWriteSequencePin, rpioReadpadPin, rpioWritepadPin, rpioPudPin, rpioPollPin, rpioClosePin, rpioI2CBeginPin, rpioI2CSetSlaveAddressPin, rpioI2CSetBaudRatePin, rpioI2CSetClockDividerPin, rpioI2CReadPin, rpioI2CWritePin,
|
|
12
12
|
// rpioI2CReadRegisterRestartPin,
|
|
13
13
|
// rpioI2CWriteReadRestartPin,
|
|
14
|
-
rpioI2CEndPin, rpioPWMSetClockDividerPin, rpioPWMSetRangePin, rpioPWMSetDataPin, rpioSPIBeginPin, rpioSPIChipSelectPin, rpioSPISetCSPolarityPin, rpioSPISetClockDividerPin, rpioSPISetDataModePin, rpioSPITransferPin, rpioSPIWritePin, rpioSPIEndPin, serialConnectPin, serialOpenPin, serialStreamPin, serialUpdatePin, serialWritePin, serialReadPin, serialClosePin, serialFlushPin, serialDrainPin, serialPausePin, serialResumePin, calculateAnchorPoint, calculateAnchorPointOffset, getBotPosition as calcGetBotPosition, isRuntimeBot, SET_TAG_MASK_SYMBOL, CLEAR_TAG_MASKS_SYMBOL, getBotScale, EDIT_TAG_SYMBOL, EDIT_TAG_MASK_SYMBOL, circleWipe, addDropSnap as calcAddDropSnap, animateToPosition, beginAudioRecording as calcBeginAudioRecording, endAudioRecording as calcEndAudioRecording, beginRecording as calcBeginRecording, endRecording as calcEndRecording, speakText as calcSpeakText, getVoices as calcGetVoices, getGeolocation as calcGetGeolocation, cancelAnimation, disablePOV, enablePOV, enableCustomDragging as calcEnableCustomDragging, MINI_PORTAL, registerCustomApp, setAppOutput, unregisterCustomApp, requestAuthData as calcRequestAuthData, createBot, defineGlobalBot as calcDefineGlobalBot, TEMPORARY_BOT_PARTITION_ID, convertToString, GET_TAG_MASKS_SYMBOL, isBotLink, parseBotLink, createBotLink, convertGeolocationToWhat3Words as calcConvertGeolocationToWhat3Words, getPublicRecordKey as calcGetPublicRecordKey, recordData as calcRecordData, getRecordData, eraseRecordData, recordFile as calcRecordFile, eraseFile as calcEraseFile, meetCommand as calcMeetCommand, listDataRecord, recordEvent as calcRecordEvent, getEventCount as calcGetEventCount, openImageClassifier as calcOpenImageClassifier, } from '../bots';
|
|
14
|
+
rpioI2CEndPin, rpioPWMSetClockDividerPin, rpioPWMSetRangePin, rpioPWMSetDataPin, rpioSPIBeginPin, rpioSPIChipSelectPin, rpioSPISetCSPolarityPin, rpioSPISetClockDividerPin, rpioSPISetDataModePin, rpioSPITransferPin, rpioSPIWritePin, rpioSPIEndPin, serialConnectPin, serialOpenPin, serialStreamPin, serialUpdatePin, serialWritePin, serialReadPin, serialClosePin, serialFlushPin, serialDrainPin, serialPausePin, serialResumePin, calculateAnchorPoint, calculateAnchorPointOffset, getBotPosition as calcGetBotPosition, isRuntimeBot, SET_TAG_MASK_SYMBOL, CLEAR_TAG_MASKS_SYMBOL, getBotScale, EDIT_TAG_SYMBOL, EDIT_TAG_MASK_SYMBOL, circleWipe, addDropSnap as calcAddDropSnap, animateToPosition, beginAudioRecording as calcBeginAudioRecording, endAudioRecording as calcEndAudioRecording, beginRecording as calcBeginRecording, endRecording as calcEndRecording, speakText as calcSpeakText, getVoices as calcGetVoices, getGeolocation as calcGetGeolocation, cancelAnimation, disablePOV, enablePOV, enableCustomDragging as calcEnableCustomDragging, MINI_PORTAL, registerCustomApp, setAppOutput, unregisterCustomApp, requestAuthData as calcRequestAuthData, createBot, defineGlobalBot as calcDefineGlobalBot, TEMPORARY_BOT_PARTITION_ID, convertToString, GET_TAG_MASKS_SYMBOL, isBotLink, parseBotLink, createBotLink, convertGeolocationToWhat3Words as calcConvertGeolocationToWhat3Words, getPublicRecordKey as calcGetPublicRecordKey, recordData as calcRecordData, getRecordData, eraseRecordData, recordFile as calcRecordFile, eraseFile as calcEraseFile, meetCommand as calcMeetCommand, listDataRecord, recordEvent as calcRecordEvent, getEventCount as calcGetEventCount, openImageClassifier as calcOpenImageClassifier, isBotDate, DATE_TAG_PREFIX, parseBotDate, } from '../bots';
|
|
15
15
|
import { sortBy, every, cloneDeep, union, isEqual, flatMap } from 'lodash';
|
|
16
16
|
import { remote as calcRemote, } from '@casual-simulation/causal-trees';
|
|
17
17
|
import { RanOutOfEnergyError } from './AuxResults';
|
|
@@ -33,6 +33,8 @@ import htm from 'htm';
|
|
|
33
33
|
import { fromByteArray, toByteArray } from 'base64-js';
|
|
34
34
|
import expect, { iterableEquality } from '@casual-simulation/expect';
|
|
35
35
|
import { parseRecordKey, isRecordKey as calcIsRecordKey, } from '@casual-simulation/aux-records';
|
|
36
|
+
import SeedRandom from 'seedrandom';
|
|
37
|
+
import { DateTime } from 'luxon';
|
|
36
38
|
const _html = htm.bind(h);
|
|
37
39
|
const html = ((...args) => {
|
|
38
40
|
return _html(...args);
|
|
@@ -169,6 +171,8 @@ export function createDefaultLibrary(context) {
|
|
|
169
171
|
getLink: createBotLinkApi,
|
|
170
172
|
getBotLinks,
|
|
171
173
|
updateBotLinks,
|
|
174
|
+
getDateTime,
|
|
175
|
+
DateTime,
|
|
172
176
|
superShout,
|
|
173
177
|
priorityShout,
|
|
174
178
|
shout: shoutProxy,
|
|
@@ -247,6 +251,37 @@ export function createDefaultLibrary(context) {
|
|
|
247
251
|
hideBarcode,
|
|
248
252
|
openImageClassifier,
|
|
249
253
|
closeImageClassifier,
|
|
254
|
+
/**
|
|
255
|
+
* Gets the local device time in Miliseconds since January 1st 1970 UTC-0.
|
|
256
|
+
*/
|
|
257
|
+
get localTime() {
|
|
258
|
+
return Date.now();
|
|
259
|
+
},
|
|
260
|
+
/**
|
|
261
|
+
* Gets the current agreed upon inst time in miliseconds since January 1st 1970 UTC-0.
|
|
262
|
+
*/
|
|
263
|
+
get agreedUponTime() {
|
|
264
|
+
return Date.now() + context.instTimeOffset;
|
|
265
|
+
},
|
|
266
|
+
/**
|
|
267
|
+
* Gets the calculated latency (in miliseconds) between this device and the inst server.
|
|
268
|
+
*/
|
|
269
|
+
get instLatency() {
|
|
270
|
+
return context.instLatency;
|
|
271
|
+
},
|
|
272
|
+
/**
|
|
273
|
+
* Gets the calculated time offset between this device and the inst server in miliseconds.
|
|
274
|
+
*/
|
|
275
|
+
get instTimeOffset() {
|
|
276
|
+
return context.instTimeOffset;
|
|
277
|
+
},
|
|
278
|
+
/**
|
|
279
|
+
* Gets the maximum spread between time offset samples in miliseconds.
|
|
280
|
+
* Useful for determining how closely the agreedUponTime matches the server time.
|
|
281
|
+
*/
|
|
282
|
+
get instTimeOffsetSpread() {
|
|
283
|
+
return context.instTimeOffsetSpread;
|
|
284
|
+
},
|
|
250
285
|
loadServer,
|
|
251
286
|
unloadServer,
|
|
252
287
|
loadInst: loadServer,
|
|
@@ -328,10 +363,6 @@ export function createDefaultLibrary(context) {
|
|
|
328
363
|
},
|
|
329
364
|
server: {
|
|
330
365
|
setupServer,
|
|
331
|
-
exportGpio,
|
|
332
|
-
unexportGpio,
|
|
333
|
-
setGpio,
|
|
334
|
-
getGpio,
|
|
335
366
|
rpioInit,
|
|
336
367
|
rpioExit,
|
|
337
368
|
rpioOpen,
|
|
@@ -424,6 +455,8 @@ export function createDefaultLibrary(context) {
|
|
|
424
455
|
sqrt,
|
|
425
456
|
abs,
|
|
426
457
|
stdDev,
|
|
458
|
+
getSeededRandomNumberGenerator,
|
|
459
|
+
setRandomSeed,
|
|
427
460
|
randomInt,
|
|
428
461
|
random,
|
|
429
462
|
getForwardDirection,
|
|
@@ -2293,44 +2326,6 @@ export function createDefaultLibrary(context) {
|
|
|
2293
2326
|
const event = calcRemote(calcSetupServer(inst, convertToCopiableValue(botOrMod)), undefined, undefined, task.taskId);
|
|
2294
2327
|
return addAsyncAction(task, event);
|
|
2295
2328
|
}
|
|
2296
|
-
/**
|
|
2297
|
-
* Sends an event to the server to export a pin (BCM) as input or output.
|
|
2298
|
-
* @param pin The physical pin (BCM) number.
|
|
2299
|
-
* @param mode The mode of the pin (BCM).
|
|
2300
|
-
*/
|
|
2301
|
-
function exportGpio(pin, mode) {
|
|
2302
|
-
const task = context.createTask(true, true);
|
|
2303
|
-
const event = calcRemote(exportGpioPin(pin, mode), undefined, undefined, task.taskId);
|
|
2304
|
-
return addAsyncAction(task, event);
|
|
2305
|
-
}
|
|
2306
|
-
/**
|
|
2307
|
-
* Sends an event to the server to unexport a pin (BCM).
|
|
2308
|
-
* @param pin The physical pin (BCM) number.
|
|
2309
|
-
*/
|
|
2310
|
-
function unexportGpio(pin) {
|
|
2311
|
-
const task = context.createTask(true, true);
|
|
2312
|
-
const event = calcRemote(unexportGpioPin(pin), undefined, undefined, task.taskId);
|
|
2313
|
-
return addAsyncAction(task, event);
|
|
2314
|
-
}
|
|
2315
|
-
/**
|
|
2316
|
-
* Sends an event to the server to set a pin (BCM) as HIGH or LOW.
|
|
2317
|
-
* @param pin The physical pin (BCM) number.
|
|
2318
|
-
* @param value The mode of the pin (BCM).
|
|
2319
|
-
*/
|
|
2320
|
-
function setGpio(pin, value) {
|
|
2321
|
-
const task = context.createTask(true, true);
|
|
2322
|
-
const event = calcRemote(setGpioPin(pin, value), undefined, undefined, task.taskId);
|
|
2323
|
-
return addAsyncAction(task, event);
|
|
2324
|
-
}
|
|
2325
|
-
/**
|
|
2326
|
-
* Sends an event to the server to get the value of a pin (BCM).
|
|
2327
|
-
* @param pin The physical pin (BCM) number.
|
|
2328
|
-
*/
|
|
2329
|
-
function getGpio(pin) {
|
|
2330
|
-
const task = context.createTask(true, true);
|
|
2331
|
-
const event = calcRemote(getGpioPin(pin), undefined, undefined, task.taskId);
|
|
2332
|
-
return addAsyncAction(task, event);
|
|
2333
|
-
}
|
|
2334
2329
|
/**
|
|
2335
2330
|
* Sends an event to the server to initialize rpio with provided settings
|
|
2336
2331
|
* @param options An object containing values to initilize with.
|
|
@@ -3567,21 +3562,49 @@ export function createDefaultLibrary(context) {
|
|
|
3567
3562
|
let standardMean = avg(numbersMinusMean);
|
|
3568
3563
|
return sqrt(standardMean);
|
|
3569
3564
|
}
|
|
3565
|
+
/**
|
|
3566
|
+
* Creates a new random number generator and returns it.
|
|
3567
|
+
* @param seed The value that should be used to seed the random number generator.
|
|
3568
|
+
*/
|
|
3569
|
+
function getSeededRandomNumberGenerator(seed) {
|
|
3570
|
+
if (hasValue(seed)) {
|
|
3571
|
+
let s = typeof seed !== 'string' ? seed.toString() : seed;
|
|
3572
|
+
return _wrapPrng(seed, SeedRandom(s));
|
|
3573
|
+
}
|
|
3574
|
+
return _wrapPrng(null, SeedRandom());
|
|
3575
|
+
}
|
|
3576
|
+
function _wrapPrng(seed, prng) {
|
|
3577
|
+
return {
|
|
3578
|
+
seed: seed,
|
|
3579
|
+
random(min, max) {
|
|
3580
|
+
return randomBase(min, max, prng);
|
|
3581
|
+
},
|
|
3582
|
+
randomInt(min, max) {
|
|
3583
|
+
return randomIntBase(min, max, prng);
|
|
3584
|
+
},
|
|
3585
|
+
};
|
|
3586
|
+
}
|
|
3587
|
+
/**
|
|
3588
|
+
* Sets the seed that should be used for random numbers.
|
|
3589
|
+
* @param seed The seed that should be used. If given null, then the numbers will be unseeded.
|
|
3590
|
+
*/
|
|
3591
|
+
function setRandomSeed(seed) {
|
|
3592
|
+
if (!hasValue(seed)) {
|
|
3593
|
+
context.pseudoRandomNumberGenerator = null;
|
|
3594
|
+
return;
|
|
3595
|
+
}
|
|
3596
|
+
if (typeof seed !== 'string') {
|
|
3597
|
+
seed = seed.toString();
|
|
3598
|
+
}
|
|
3599
|
+
context.pseudoRandomNumberGenerator = SeedRandom(seed);
|
|
3600
|
+
}
|
|
3570
3601
|
/**
|
|
3571
3602
|
* Generates a random integer number between min and max.
|
|
3572
3603
|
* @param min The smallest allowed value.
|
|
3573
3604
|
* @param max The largest allowed value.
|
|
3574
3605
|
*/
|
|
3575
3606
|
function randomInt(min = 0, max) {
|
|
3576
|
-
min
|
|
3577
|
-
max = Math.floor(max);
|
|
3578
|
-
const rand = Math.random();
|
|
3579
|
-
if (max) {
|
|
3580
|
-
return Math.floor(rand * (max - min)) + min;
|
|
3581
|
-
}
|
|
3582
|
-
else {
|
|
3583
|
-
return Math.floor(rand) + min;
|
|
3584
|
-
}
|
|
3607
|
+
return randomIntBase(min, max, context.pseudoRandomNumberGenerator);
|
|
3585
3608
|
}
|
|
3586
3609
|
/**
|
|
3587
3610
|
* Generates a random number between min and max.
|
|
@@ -3589,7 +3612,10 @@ export function createDefaultLibrary(context) {
|
|
|
3589
3612
|
* @param max The largest allowed value.
|
|
3590
3613
|
*/
|
|
3591
3614
|
function random(min = 0, max) {
|
|
3592
|
-
|
|
3615
|
+
return randomBase(min, max, context.pseudoRandomNumberGenerator);
|
|
3616
|
+
}
|
|
3617
|
+
function randomBase(min = 0, max, prng) {
|
|
3618
|
+
const rand = _random(prng);
|
|
3593
3619
|
if (max) {
|
|
3594
3620
|
return rand * (max - min) + min;
|
|
3595
3621
|
}
|
|
@@ -3597,6 +3623,23 @@ export function createDefaultLibrary(context) {
|
|
|
3597
3623
|
return rand + min;
|
|
3598
3624
|
}
|
|
3599
3625
|
}
|
|
3626
|
+
function randomIntBase(min, max, prng) {
|
|
3627
|
+
min = Math.ceil(min);
|
|
3628
|
+
max = Math.floor(max);
|
|
3629
|
+
const rand = _random(prng);
|
|
3630
|
+
if (max) {
|
|
3631
|
+
return Math.floor(rand * (max - min)) + min;
|
|
3632
|
+
}
|
|
3633
|
+
else {
|
|
3634
|
+
return Math.floor(rand) + min;
|
|
3635
|
+
}
|
|
3636
|
+
}
|
|
3637
|
+
function _random(prng) {
|
|
3638
|
+
if (prng) {
|
|
3639
|
+
return prng();
|
|
3640
|
+
}
|
|
3641
|
+
return Math.random();
|
|
3642
|
+
}
|
|
3600
3643
|
/**
|
|
3601
3644
|
* Gets the forward direction for the given rotation.
|
|
3602
3645
|
* @param pointerRotation The rotation that the pointer has represented in radians.
|
|
@@ -4697,6 +4740,28 @@ export function createDefaultLibrary(context) {
|
|
|
4697
4740
|
}
|
|
4698
4741
|
}
|
|
4699
4742
|
}
|
|
4743
|
+
/**
|
|
4744
|
+
* Parses the given value into a date time object.
|
|
4745
|
+
* Returns null if the value could not be parsed into a date time.
|
|
4746
|
+
* @param value The value to parse.
|
|
4747
|
+
*/
|
|
4748
|
+
function getDateTime(value) {
|
|
4749
|
+
if (typeof value === 'string') {
|
|
4750
|
+
if (!isBotDate(value)) {
|
|
4751
|
+
value = DATE_TAG_PREFIX + value;
|
|
4752
|
+
}
|
|
4753
|
+
return parseBotDate(value);
|
|
4754
|
+
}
|
|
4755
|
+
else if (value instanceof DateTime) {
|
|
4756
|
+
return value;
|
|
4757
|
+
}
|
|
4758
|
+
else if (value instanceof Date) {
|
|
4759
|
+
return DateTime.fromJSDate(value);
|
|
4760
|
+
}
|
|
4761
|
+
else {
|
|
4762
|
+
return null;
|
|
4763
|
+
}
|
|
4764
|
+
}
|
|
4700
4765
|
/**
|
|
4701
4766
|
* Shouts the given event to every bot in every loaded simulation.
|
|
4702
4767
|
* @param eventName The name of the event to shout.
|