@casual-simulation/aux-common 2.0.32 → 2.0.34
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/BotEvents.d.ts +66 -1
- package/bots/BotEvents.js +45 -0
- package/bots/BotEvents.js.map +1 -1
- package/package.json +3 -3
- package/runtime/AuxLibrary.d.ts +4 -1
- package/runtime/AuxLibrary.js +64 -1
- package/runtime/AuxLibrary.js.map +1 -1
- package/runtime/AuxLibraryDefinitions.def +95 -0
- package/runtime/README.md +0 -144
package/bots/BotEvents.d.ts
CHANGED
|
@@ -17,7 +17,7 @@ export declare type ExtraActions = ShoutAction | RejectAction | ShowToastAction
|
|
|
17
17
|
/**
|
|
18
18
|
* Defines a set of possible async action types.
|
|
19
19
|
*/
|
|
20
|
-
export declare type AsyncActions = AsyncResultAction | AsyncErrorAction | ShowInputAction | ShareAction | RegisterBuiltinPortalAction | RegisterPrefixAction | RunScriptAction | LoadBotsAction | ClearSpaceAction | SendWebhookAction | AnimateTagAction | UnlockSpaceAction | SetSpacePasswordAction | LoadFileAction | SaveFileAction | SetupChannelAction | ExportGpioPinAction | UnexportGpioPinAction | SetGpioPinAction | GetGpioPinAction | RpioInitAction | RpioExitAction | RpioOpenAction | RpioModeAction | RpioReadAction | RpioReadSequenceAction | RpioWriteAction | RpioWriteSequenceAction | RpioReadpadAction | RpioWritepadAction | RpioPudAction | RpioPollAction | RpioCloseAction | RpioI2CBeginAction | RpioI2CSetSlaveAddressAction | RpioI2CSetBaudRateAction | RpioI2CSetClockDividerAction | RpioI2CReadAction | RpioI2CWriteAction | RpioI2CEndAction | RpioPWMSetClockDividerAction | RpioPWMSetRangeAction | RpioPWMSetDataAction | RpioSPIBeginAction | RpioSPIChipSelectAction | RpioSPISetCSPolarityAction | RpioSPISetClockDividerAction | RpioSPISetDataModeAction | RpioSPITransferAction | RpioSPIWriteAction | RpioSPIEndAction | SerialConnectAction | SerialStreamAction | SerialOpenAction | SerialUpdateAction | SerialWriteAction | SerialReadAction | SerialCloseAction | SerialFlushAction | SerialDrainAction | SerialPauseAction | SerialResumeAction | CreateCertificateAction | SignTagAction | RevokeCertificateAction | RemoteAction | RemoteActionResult | RemoteActionError | DeviceAction | DeviceActionResult | DeviceActionError | PlaySoundAction | BufferSoundAction | CancelSoundAction | LocalPositionTweenAction | LocalRotationTweenAction | ShowUploadFilesAction | OpenCircleWipeAction | FocusOnBotAction | FocusOnPositionAction | BeginAudioRecordingAction | EndAudioRecordingAction | CancelAnimationAction | BeginRecordingAction | EndRecordingAction | SpeakTextAction | GetVoicesAction | GetGeolocationAction | RegisterCustomAppAction | UnregisterCustomAppAction | RegisterHtmlAppAction | RequestAuthDataAction | DefineGlobalBotAction | ConvertGeolocationToWhat3WordsAction | GetPublicRecordKeyAction | RecordDataAction | GetRecordDataAction | EraseRecordDataAction | RecordFileAction | EraseFileAction | ARSupportedAction | VRSupportedAction;
|
|
20
|
+
export declare type AsyncActions = AsyncResultAction | AsyncErrorAction | ShowInputAction | ShareAction | RegisterBuiltinPortalAction | RegisterPrefixAction | RunScriptAction | LoadBotsAction | ClearSpaceAction | SendWebhookAction | AnimateTagAction | UnlockSpaceAction | SetSpacePasswordAction | LoadFileAction | SaveFileAction | SetupChannelAction | ExportGpioPinAction | UnexportGpioPinAction | SetGpioPinAction | GetGpioPinAction | RpioInitAction | RpioExitAction | RpioOpenAction | RpioModeAction | RpioReadAction | RpioReadSequenceAction | RpioWriteAction | RpioWriteSequenceAction | RpioReadpadAction | RpioWritepadAction | RpioPudAction | RpioPollAction | RpioCloseAction | RpioI2CBeginAction | RpioI2CSetSlaveAddressAction | RpioI2CSetBaudRateAction | RpioI2CSetClockDividerAction | RpioI2CReadAction | RpioI2CWriteAction | RpioI2CEndAction | RpioPWMSetClockDividerAction | RpioPWMSetRangeAction | RpioPWMSetDataAction | RpioSPIBeginAction | RpioSPIChipSelectAction | RpioSPISetCSPolarityAction | RpioSPISetClockDividerAction | RpioSPISetDataModeAction | RpioSPITransferAction | RpioSPIWriteAction | RpioSPIEndAction | SerialConnectAction | SerialStreamAction | SerialOpenAction | SerialUpdateAction | SerialWriteAction | SerialReadAction | SerialCloseAction | SerialFlushAction | SerialDrainAction | SerialPauseAction | SerialResumeAction | CreateCertificateAction | SignTagAction | RevokeCertificateAction | RemoteAction | RemoteActionResult | RemoteActionError | DeviceAction | DeviceActionResult | DeviceActionError | PlaySoundAction | BufferSoundAction | CancelSoundAction | LocalPositionTweenAction | LocalRotationTweenAction | ShowUploadFilesAction | OpenCircleWipeAction | FocusOnBotAction | FocusOnPositionAction | BeginAudioRecordingAction | EndAudioRecordingAction | CancelAnimationAction | BeginRecordingAction | EndRecordingAction | SpeakTextAction | GetVoicesAction | GetGeolocationAction | RegisterCustomAppAction | UnregisterCustomAppAction | RegisterHtmlAppAction | RequestAuthDataAction | DefineGlobalBotAction | ConvertGeolocationToWhat3WordsAction | GetPublicRecordKeyAction | RecordDataAction | GetRecordDataAction | ListRecordDataAction | EraseRecordDataAction | RecordFileAction | EraseFileAction | RecordEventAction | GetEventCountAction | ARSupportedAction | VRSupportedAction;
|
|
21
21
|
/**
|
|
22
22
|
* Defines an interface for actions that represent asynchronous tasks.
|
|
23
23
|
*/
|
|
@@ -2555,6 +2555,17 @@ export interface GetRecordDataAction extends DataRecordAction {
|
|
|
2555
2555
|
*/
|
|
2556
2556
|
address: string;
|
|
2557
2557
|
}
|
|
2558
|
+
export interface ListRecordDataAction extends DataRecordAction {
|
|
2559
|
+
type: 'list_record_data';
|
|
2560
|
+
/**
|
|
2561
|
+
* The name of the record.
|
|
2562
|
+
*/
|
|
2563
|
+
recordName: string;
|
|
2564
|
+
/**
|
|
2565
|
+
* The address that the list should start with.
|
|
2566
|
+
*/
|
|
2567
|
+
startingAddress?: string;
|
|
2568
|
+
}
|
|
2558
2569
|
/**
|
|
2559
2570
|
* Defines an event that erases some data in a record.
|
|
2560
2571
|
*/
|
|
@@ -2616,6 +2627,38 @@ export interface FileRecordedFailure {
|
|
|
2616
2627
|
errorCode: RecordFileFailure['errorCode'] | 'upload_failed';
|
|
2617
2628
|
errorMessage: string;
|
|
2618
2629
|
}
|
|
2630
|
+
/**
|
|
2631
|
+
* Defines an action that records that an event happened.
|
|
2632
|
+
*/
|
|
2633
|
+
export interface RecordEventAction extends AsyncAction {
|
|
2634
|
+
type: 'record_event';
|
|
2635
|
+
/**
|
|
2636
|
+
* The key that should be used to access the record.
|
|
2637
|
+
*/
|
|
2638
|
+
recordKey: string;
|
|
2639
|
+
/**
|
|
2640
|
+
* The name of the event.
|
|
2641
|
+
*/
|
|
2642
|
+
eventName: string;
|
|
2643
|
+
/**
|
|
2644
|
+
* The number of events to record.
|
|
2645
|
+
*/
|
|
2646
|
+
count: number;
|
|
2647
|
+
}
|
|
2648
|
+
/**
|
|
2649
|
+
* Defines an action that retrieves the number of times an event has happened.
|
|
2650
|
+
*/
|
|
2651
|
+
export interface GetEventCountAction extends AsyncAction {
|
|
2652
|
+
type: 'get_event_count';
|
|
2653
|
+
/**
|
|
2654
|
+
* The name of the record.
|
|
2655
|
+
*/
|
|
2656
|
+
recordName: string;
|
|
2657
|
+
/**
|
|
2658
|
+
* The name of the event.
|
|
2659
|
+
*/
|
|
2660
|
+
eventName: string;
|
|
2661
|
+
}
|
|
2619
2662
|
export interface GetRecordsActionResult {
|
|
2620
2663
|
records: Record[];
|
|
2621
2664
|
hasMoreRecords: boolean;
|
|
@@ -3701,6 +3744,13 @@ export declare function recordData(recordKey: string, address: string, data: any
|
|
|
3701
3744
|
* @param taskId The ID of the task.
|
|
3702
3745
|
*/
|
|
3703
3746
|
export declare function getRecordData(recordName: string, address: string, requiresApproval: boolean, taskId?: number | string): GetRecordDataAction;
|
|
3747
|
+
/**
|
|
3748
|
+
* Creates a ListRecordDataAction.
|
|
3749
|
+
* @param recordName The name of the record.
|
|
3750
|
+
* @param startingAddress The address that the list should start with.
|
|
3751
|
+
* @param taskId The ID of the task.
|
|
3752
|
+
*/
|
|
3753
|
+
export declare function listDataRecord(recordName: string, startingAddress: string, taskId?: number | string): ListRecordDataAction;
|
|
3704
3754
|
/**
|
|
3705
3755
|
* Creates a EraseRecordDataAction.
|
|
3706
3756
|
* @param recordKey The key that should be used to access the record.
|
|
@@ -3729,4 +3779,19 @@ export declare function recordFile(recordKey: string, data: any, description: st
|
|
|
3729
3779
|
* @param taskId The ID of the task.
|
|
3730
3780
|
*/
|
|
3731
3781
|
export declare function eraseFile(recordKey: string, fileUrl: string, taskId?: number | string): EraseFileAction;
|
|
3782
|
+
/**
|
|
3783
|
+
* Creates a RecordEventAction.
|
|
3784
|
+
* @param recordKey The key that should be used to access the record.
|
|
3785
|
+
* @param eventName The name of the event.
|
|
3786
|
+
* @param count The number of times that the event occurred.
|
|
3787
|
+
* @param taskId The Id of the task.
|
|
3788
|
+
*/
|
|
3789
|
+
export declare function recordEvent(recordKey: string, eventName: string, count: number, taskId?: number | string): RecordEventAction;
|
|
3790
|
+
/**
|
|
3791
|
+
* Creates a GetEventCountAction.
|
|
3792
|
+
* @param recordName The name of the record.
|
|
3793
|
+
* @param eventName The name of the events.
|
|
3794
|
+
* @param taskId The ID.
|
|
3795
|
+
*/
|
|
3796
|
+
export declare function getEventCount(recordName: string, eventName: string, taskId?: number | string): GetEventCountAction;
|
|
3732
3797
|
//# sourceMappingURL=BotEvents.d.ts.map
|
package/bots/BotEvents.js
CHANGED
|
@@ -2071,6 +2071,21 @@ export function getRecordData(recordName, address, requiresApproval, taskId) {
|
|
|
2071
2071
|
taskId,
|
|
2072
2072
|
};
|
|
2073
2073
|
}
|
|
2074
|
+
/**
|
|
2075
|
+
* Creates a ListRecordDataAction.
|
|
2076
|
+
* @param recordName The name of the record.
|
|
2077
|
+
* @param startingAddress The address that the list should start with.
|
|
2078
|
+
* @param taskId The ID of the task.
|
|
2079
|
+
*/
|
|
2080
|
+
export function listDataRecord(recordName, startingAddress, taskId) {
|
|
2081
|
+
return {
|
|
2082
|
+
type: 'list_record_data',
|
|
2083
|
+
recordName,
|
|
2084
|
+
startingAddress,
|
|
2085
|
+
requiresApproval: false,
|
|
2086
|
+
taskId,
|
|
2087
|
+
};
|
|
2088
|
+
}
|
|
2074
2089
|
/**
|
|
2075
2090
|
* Creates a EraseRecordDataAction.
|
|
2076
2091
|
* @param recordKey The key that should be used to access the record.
|
|
@@ -2125,4 +2140,34 @@ export function eraseFile(recordKey, fileUrl, taskId) {
|
|
|
2125
2140
|
taskId,
|
|
2126
2141
|
};
|
|
2127
2142
|
}
|
|
2143
|
+
/**
|
|
2144
|
+
* Creates a RecordEventAction.
|
|
2145
|
+
* @param recordKey The key that should be used to access the record.
|
|
2146
|
+
* @param eventName The name of the event.
|
|
2147
|
+
* @param count The number of times that the event occurred.
|
|
2148
|
+
* @param taskId The Id of the task.
|
|
2149
|
+
*/
|
|
2150
|
+
export function recordEvent(recordKey, eventName, count, taskId) {
|
|
2151
|
+
return {
|
|
2152
|
+
type: 'record_event',
|
|
2153
|
+
recordKey,
|
|
2154
|
+
eventName,
|
|
2155
|
+
count,
|
|
2156
|
+
taskId,
|
|
2157
|
+
};
|
|
2158
|
+
}
|
|
2159
|
+
/**
|
|
2160
|
+
* Creates a GetEventCountAction.
|
|
2161
|
+
* @param recordName The name of the record.
|
|
2162
|
+
* @param eventName The name of the events.
|
|
2163
|
+
* @param taskId The ID.
|
|
2164
|
+
*/
|
|
2165
|
+
export function getEventCount(recordName, eventName, taskId) {
|
|
2166
|
+
return {
|
|
2167
|
+
type: 'get_event_count',
|
|
2168
|
+
recordName,
|
|
2169
|
+
eventName,
|
|
2170
|
+
taskId,
|
|
2171
|
+
};
|
|
2172
|
+
}
|
|
2128
2173
|
//# sourceMappingURL=BotEvents.js.map
|
package/bots/BotEvents.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BotEvents.js","sourceRoot":"","sources":["BotEvents.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BotEvents.js","sourceRoot":"","sources":["BotEvents.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@casual-simulation/aux-common",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.34",
|
|
4
4
|
"description": "Common library for AUX projects",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"access": "public"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@casual-simulation/aux-records": "^2.0.
|
|
36
|
+
"@casual-simulation/aux-records": "^2.0.34",
|
|
37
37
|
"@casual-simulation/causal-trees": "^2.0.22",
|
|
38
38
|
"@casual-simulation/crypto": "^2.0.22",
|
|
39
39
|
"@casual-simulation/error-stack-parser": "^2.0.7",
|
|
@@ -71,5 +71,5 @@
|
|
|
71
71
|
"**/*.d.ts",
|
|
72
72
|
"**/*.def"
|
|
73
73
|
],
|
|
74
|
-
"gitHead": "
|
|
74
|
+
"gitHead": "964c230d49195946f361300aabd29c3ca7da0b66"
|
|
75
75
|
}
|
package/runtime/AuxLibrary.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ import './PerformanceNowPolyfill';
|
|
|
8
8
|
import './BlobPolyfill';
|
|
9
9
|
import { AuxDevice } from './AuxDevice';
|
|
10
10
|
import { AuxVersion } from './AuxVersion';
|
|
11
|
-
import { CreatePublicRecordKeyResult, GetDataResult, RecordDataResult, RecordFileFailure, EraseDataResult, EraseFileResult } from '@casual-simulation/aux-records';
|
|
11
|
+
import { CreatePublicRecordKeyResult, GetDataResult, RecordDataResult, RecordFileFailure, EraseDataResult, EraseFileResult, ListDataResult, AddCountResult, GetCountResult } from '@casual-simulation/aux-records';
|
|
12
12
|
/**
|
|
13
13
|
* Defines an interface for a function that provides HTML VDOM capabilities to bots.
|
|
14
14
|
*/
|
|
@@ -569,6 +569,7 @@ export declare function createDefaultLibrary(context: AuxGlobalContext): {
|
|
|
569
569
|
recordManualApprovalData: (recordKey: string, address: string, data: any) => Promise<RecordDataResult>;
|
|
570
570
|
getData: (recordKeyOrName: string, address: string) => Promise<GetDataResult>;
|
|
571
571
|
getManualApprovalData: (recordKeyOrName: string, address: string) => Promise<GetDataResult>;
|
|
572
|
+
listData: (recordKeyOrName: string, startingAddress?: string) => Promise<ListDataResult>;
|
|
572
573
|
eraseData: (recordKey: string, address: string) => Promise<EraseDataResult>;
|
|
573
574
|
eraseManualApprovalData: (recordKey: string, address: string) => Promise<EraseDataResult>;
|
|
574
575
|
recordFile: (recordKey: string, data: any, options?: RecordFileOptions) => Promise<RecordFileApiResult>;
|
|
@@ -580,6 +581,8 @@ export declare function createDefaultLibrary(context: AuxGlobalContext): {
|
|
|
580
581
|
(recordKey: string, result: RecordFileApiSuccess): Promise<EraseFileResult>;
|
|
581
582
|
(recordKey: string, url: string): Promise<EraseFileResult>;
|
|
582
583
|
};
|
|
584
|
+
recordEvent: (recordKey: string, eventName: string) => Promise<AddCountResult>;
|
|
585
|
+
countEvents: (recordNameOrKey: string, eventName: string) => Promise<GetCountResult>;
|
|
583
586
|
convertGeolocationToWhat3Words: (location: ConvertGeolocationToWhat3WordsOptions) => Promise<string>;
|
|
584
587
|
setupInst: (inst: string, botOrMod?: Mod) => Promise<any>;
|
|
585
588
|
remotes: () => Promise<string[]>;
|
package/runtime/AuxLibrary.js
CHANGED
|
@@ -11,7 +11,7 @@ import { DEBUG_STRING, debugStringifyFunction, } from './AuxGlobalContext';
|
|
|
11
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, 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, exportGpioPin, unexportGpioPin, setGpioPin, getGpioPin, 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, } 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, } 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';
|
|
@@ -298,11 +298,14 @@ export function createDefaultLibrary(context) {
|
|
|
298
298
|
recordManualApprovalData,
|
|
299
299
|
getData,
|
|
300
300
|
getManualApprovalData,
|
|
301
|
+
listData,
|
|
301
302
|
eraseData,
|
|
302
303
|
eraseManualApprovalData,
|
|
303
304
|
recordFile,
|
|
304
305
|
getFile,
|
|
305
306
|
eraseFile,
|
|
307
|
+
recordEvent,
|
|
308
|
+
countEvents,
|
|
306
309
|
convertGeolocationToWhat3Words,
|
|
307
310
|
setupInst: setupServer,
|
|
308
311
|
remotes,
|
|
@@ -2075,6 +2078,19 @@ export function createDefaultLibrary(context) {
|
|
|
2075
2078
|
const event = getRecordData(recordName, address, requiresApproval, task.taskId);
|
|
2076
2079
|
return addAsyncAction(task, event);
|
|
2077
2080
|
}
|
|
2081
|
+
/**
|
|
2082
|
+
* Lists the data stored in the given record starting with the given address.
|
|
2083
|
+
* @param recordKeyOrName The record that the data should be retrieved from.
|
|
2084
|
+
* @param startingAddress The address that the list should start with.
|
|
2085
|
+
*/
|
|
2086
|
+
function listData(recordKeyOrName, startingAddress = null) {
|
|
2087
|
+
let recordName = isRecordKey(recordKeyOrName)
|
|
2088
|
+
? parseRecordKey(recordKeyOrName)[0]
|
|
2089
|
+
: recordKeyOrName;
|
|
2090
|
+
const task = context.createTask();
|
|
2091
|
+
const event = listDataRecord(recordName, startingAddress, task.taskId);
|
|
2092
|
+
return addAsyncAction(task, event);
|
|
2093
|
+
}
|
|
2078
2094
|
/**
|
|
2079
2095
|
* Erases the data stored in the given record at the given address.
|
|
2080
2096
|
* @param recordKey The key that should be used to access the record.
|
|
@@ -2189,6 +2205,53 @@ export function createDefaultLibrary(context) {
|
|
|
2189
2205
|
const event = calcEraseFile(recordKey, url, task.taskId);
|
|
2190
2206
|
return addAsyncAction(task, event);
|
|
2191
2207
|
}
|
|
2208
|
+
/**
|
|
2209
|
+
* Records that the given event occurred.
|
|
2210
|
+
* @param recordKey The key that should be used to record the event.
|
|
2211
|
+
* @param eventName The name of the event.
|
|
2212
|
+
*/
|
|
2213
|
+
function recordEvent(recordKey, eventName) {
|
|
2214
|
+
if (!hasValue(recordKey)) {
|
|
2215
|
+
throw new Error('A recordKey must be provided.');
|
|
2216
|
+
}
|
|
2217
|
+
else if (typeof recordKey !== 'string') {
|
|
2218
|
+
throw new Error('recordKey must be a string.');
|
|
2219
|
+
}
|
|
2220
|
+
if (!hasValue(eventName)) {
|
|
2221
|
+
throw new Error('A eventName must be provided.');
|
|
2222
|
+
}
|
|
2223
|
+
else if (typeof eventName !== 'string') {
|
|
2224
|
+
throw new Error('eventName must be a string.');
|
|
2225
|
+
}
|
|
2226
|
+
const task = context.createTask();
|
|
2227
|
+
const event = calcRecordEvent(recordKey, eventName, 1, task.taskId);
|
|
2228
|
+
return addAsyncAction(task, event);
|
|
2229
|
+
}
|
|
2230
|
+
/**
|
|
2231
|
+
* Gets the number of times that the given event has been recorded.
|
|
2232
|
+
* @param recordNameOrKey The name of the record.
|
|
2233
|
+
* @param eventName The name of the event.
|
|
2234
|
+
*/
|
|
2235
|
+
function countEvents(recordNameOrKey, eventName) {
|
|
2236
|
+
if (!hasValue(recordNameOrKey)) {
|
|
2237
|
+
throw new Error('A recordNameOrKey must be provided.');
|
|
2238
|
+
}
|
|
2239
|
+
else if (typeof recordNameOrKey !== 'string') {
|
|
2240
|
+
throw new Error('recordNameOrKey must be a string.');
|
|
2241
|
+
}
|
|
2242
|
+
if (!hasValue(eventName)) {
|
|
2243
|
+
throw new Error('A eventName must be provided.');
|
|
2244
|
+
}
|
|
2245
|
+
else if (typeof eventName !== 'string') {
|
|
2246
|
+
throw new Error('eventName must be a string.');
|
|
2247
|
+
}
|
|
2248
|
+
let recordName = isRecordKey(recordNameOrKey)
|
|
2249
|
+
? parseRecordKey(recordNameOrKey)[0]
|
|
2250
|
+
: recordNameOrKey;
|
|
2251
|
+
const task = context.createTask();
|
|
2252
|
+
const event = calcGetEventCount(recordName, eventName, task.taskId);
|
|
2253
|
+
return addAsyncAction(task, event);
|
|
2254
|
+
}
|
|
2192
2255
|
/**
|
|
2193
2256
|
* Converts the given geolocation to a what3words (https://what3words.com/) address.
|
|
2194
2257
|
* @param location The latitude and longitude that should be converted to a 3 word address.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuxLibrary.js","sourceRoot":"","sources":["AuxLibrary.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AuxLibrary.js","sourceRoot":"","sources":["AuxLibrary.ts"],"names":[],"mappings":"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"}
|
|
@@ -2965,6 +2965,27 @@ export interface GetDataFailure {
|
|
|
2965
2965
|
errorMessage: string;
|
|
2966
2966
|
}
|
|
2967
2967
|
|
|
2968
|
+
|
|
2969
|
+
export type ListDataResult = ListDataSuccess | ListDataFailure;
|
|
2970
|
+
|
|
2971
|
+
export interface ListDataSuccess {
|
|
2972
|
+
success: true;
|
|
2973
|
+
recordName: string;
|
|
2974
|
+
items: {
|
|
2975
|
+
data: any;
|
|
2976
|
+
address: string;
|
|
2977
|
+
}[];
|
|
2978
|
+
}
|
|
2979
|
+
|
|
2980
|
+
export interface ListDataFailure {
|
|
2981
|
+
success: false;
|
|
2982
|
+
errorCode:
|
|
2983
|
+
| ServerError
|
|
2984
|
+
| NotSupportedError;
|
|
2985
|
+
errorMessage: string;
|
|
2986
|
+
}
|
|
2987
|
+
|
|
2988
|
+
|
|
2968
2989
|
export type EraseDataResult = EraseDataSuccess | EraseDataFailure;
|
|
2969
2990
|
|
|
2970
2991
|
export interface EraseDataSuccess {
|
|
@@ -3035,6 +3056,59 @@ export interface EraseFileFailure {
|
|
|
3035
3056
|
errorMessage: string;
|
|
3036
3057
|
}
|
|
3037
3058
|
|
|
3059
|
+
|
|
3060
|
+
export type AddCountResult = AddCountSuccess | AddCountFailure;
|
|
3061
|
+
|
|
3062
|
+
export interface AddCountSuccess {
|
|
3063
|
+
success: true;
|
|
3064
|
+
recordName: string;
|
|
3065
|
+
eventName: string;
|
|
3066
|
+
countAdded: number;
|
|
3067
|
+
}
|
|
3068
|
+
|
|
3069
|
+
export interface AddCountFailure {
|
|
3070
|
+
success: false;
|
|
3071
|
+
errorCode:
|
|
3072
|
+
| ServerError
|
|
3073
|
+
| NotLoggedInError
|
|
3074
|
+
| InvalidRecordKey
|
|
3075
|
+
| RecordNotFoundError
|
|
3076
|
+
| NotSupportedError
|
|
3077
|
+
errorMessage: string;
|
|
3078
|
+
}
|
|
3079
|
+
|
|
3080
|
+
export type GetCountResult = GetCountSuccess | GetCountFailure;
|
|
3081
|
+
|
|
3082
|
+
/**
|
|
3083
|
+
* Defines an interface that represents a successful "get data" result.
|
|
3084
|
+
*/
|
|
3085
|
+
export interface GetCountSuccess {
|
|
3086
|
+
success: true;
|
|
3087
|
+
|
|
3088
|
+
/**
|
|
3089
|
+
* The total count of events.
|
|
3090
|
+
*/
|
|
3091
|
+
count: number;
|
|
3092
|
+
|
|
3093
|
+
/**
|
|
3094
|
+
* The name of the record.
|
|
3095
|
+
*/
|
|
3096
|
+
recordName: string;
|
|
3097
|
+
|
|
3098
|
+
/**
|
|
3099
|
+
* The name of the event.
|
|
3100
|
+
*/
|
|
3101
|
+
eventName: string;
|
|
3102
|
+
}
|
|
3103
|
+
|
|
3104
|
+
export interface GetCountFailure {
|
|
3105
|
+
success: false;
|
|
3106
|
+
errorCode:
|
|
3107
|
+
| ServerError
|
|
3108
|
+
| NotSupportedError;
|
|
3109
|
+
errorMessage: string;
|
|
3110
|
+
}
|
|
3111
|
+
|
|
3038
3112
|
export interface AudioRecordingOptions {
|
|
3039
3113
|
/**
|
|
3040
3114
|
* Whether to stream the audio recording.
|
|
@@ -5313,6 +5387,13 @@ interface Os {
|
|
|
5313
5387
|
address: string
|
|
5314
5388
|
): Promise<GetDataResult>;
|
|
5315
5389
|
|
|
5390
|
+
/**
|
|
5391
|
+
* Lists the data stored in the given record starting with the given address.
|
|
5392
|
+
* @param recordKeyOrName The record that the data should be retrieved from.
|
|
5393
|
+
* @param startingAddress The address that the list should start with.
|
|
5394
|
+
*/
|
|
5395
|
+
listData(recordKeyOrName: string, startingAddress?: string): Promise<ListDataResult>;
|
|
5396
|
+
|
|
5316
5397
|
/**
|
|
5317
5398
|
* Erases the data stored in the given record at the given address.
|
|
5318
5399
|
* @param recordKey The key that should be used to access the record.
|
|
@@ -5402,6 +5483,20 @@ interface Os {
|
|
|
5402
5483
|
*/
|
|
5403
5484
|
eraseFile(recordKey: string, fileUrlOrRecordFileResult: string | RecordFileSuccess): Promise<EraseFileResult>;
|
|
5404
5485
|
|
|
5486
|
+
/**
|
|
5487
|
+
* Records that the given event occurred.
|
|
5488
|
+
* @param recordKey The key that should be used to record the event.
|
|
5489
|
+
* @param eventName The name of the event.
|
|
5490
|
+
*/
|
|
5491
|
+
recordEvent(recordKey: string, eventName: string): Promise<AddCountResult>;
|
|
5492
|
+
|
|
5493
|
+
/**
|
|
5494
|
+
* Gets the number of times that the given event has been recorded.
|
|
5495
|
+
* @param recordNameOrKey The record that the event count should be retrieved from.
|
|
5496
|
+
* @param eventName The name of the event.
|
|
5497
|
+
*/
|
|
5498
|
+
countEvents(recordNameOrKey: string, eventName: string): Promise<GetCountResult>;
|
|
5499
|
+
|
|
5405
5500
|
/**
|
|
5406
5501
|
* Converts the given geolocation to a what3words (https://what3words.com/) address.
|
|
5407
5502
|
* @param location The latitude and longitude that should be converted to a 3 word address.
|
package/runtime/README.md
DELETED
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
# AUX Runtime
|
|
2
|
-
|
|
3
|
-
The runtime of AUX is a set of services and utilities that make it possible to execute user scripts in a performant manner.
|
|
4
|
-
|
|
5
|
-
## Goals
|
|
6
|
-
|
|
7
|
-
### 1. Full JavaScript support.
|
|
8
|
-
|
|
9
|
-
The runtime should support all of the JavaScript features that the underlying browser supports and should encourage traditional JavaScript syntax and semantics instead of custom tricks.
|
|
10
|
-
|
|
11
|
-
The runtime may provide polyfills for unsupported features and may also insert additional code for the sake of debugging, tracing, error handling, or "performance management". "performance management" in this case means doing things like adding infinite loop detection and handling other common scenarios that can cause a user script to lock up the rest of the system. (See #2)
|
|
12
|
-
|
|
13
|
-
### 2. Doesn't lock up the system
|
|
14
|
-
|
|
15
|
-
The runtime should be able to supervise user scripts so that a bad behaving script can be caught and stopped to prevent the system from getting locked up. This is important since a script that locks up the system can prevent the processing of bot update events which can cause the issue to be unfixable.
|
|
16
|
-
|
|
17
|
-
### 3. Rich APIs
|
|
18
|
-
|
|
19
|
-
The runtime should be able to provide a rich set of APIs to user scripts. This means dispatching actions, synchronous queries, asynchronous queries, updating bots, and more.
|
|
20
|
-
|
|
21
|
-
Some specific needs:
|
|
22
|
-
|
|
23
|
-
- Some APIs need to know which bot is calling into it.
|
|
24
|
-
- APIs need to be able to edit bots such that the edits are immediately available to scripts.
|
|
25
|
-
- APIs need to be able to query current bot data.
|
|
26
|
-
- APIs need to enqueue actions.
|
|
27
|
-
- Some APIs need to know how to get the current player bot.
|
|
28
|
-
- Some APIs need to know the current energy state of the system.
|
|
29
|
-
|
|
30
|
-
See the [current API documentation](https://docs.casualsimulation.com/docs/actions) for examples.
|
|
31
|
-
|
|
32
|
-
### 4. Low Overhead
|
|
33
|
-
|
|
34
|
-
The runtime should pre-compile as much user-code as possible to reduce latency and general overhead. Sending a shout into the runtime should be as simple as looping through bots and calling the compiled function.
|
|
35
|
-
|
|
36
|
-
In the old system, sending a shout involves building the correct state, finding the bots with listeners, sorting the resulting bots, setting up the variables, and evaluating it. Most of the performance hit occurs due to lots of data copying and the deepening of the stack trace. Each shout adds about 10 extra stack frames which can compound over time.
|
|
37
|
-
|
|
38
|
-
### 5. Great developer experience
|
|
39
|
-
|
|
40
|
-
The runtime should enable a great developer experience by exposing metadata to assist with common operations like error handling and logging. Error stack traces should be walkable and traceable back to the original source. APIs should have type definitions so that code editing is a breeze.
|
|
41
|
-
|
|
42
|
-
## Constraints
|
|
43
|
-
|
|
44
|
-
The AUX Runtime has a couple of weird edge cases that it needs to work with. In particular, it needs to handle the following:
|
|
45
|
-
|
|
46
|
-
### Modifying unchangable bots
|
|
47
|
-
|
|
48
|
-
Bots can have any number of rules accociated with how they can be modified. Most bots allow all modifications and their storage spaces have robust rules for handling those modifications. However, some bot spaces have specialized rules.
|
|
49
|
-
|
|
50
|
-
For example:
|
|
51
|
-
|
|
52
|
-
- The `history` partition prevents all edits. Bot in the partition cannot be added, removed or updated.
|
|
53
|
-
- The `error` partition only allows creating bots. Once a bot is created, it cannot be updated or removed.
|
|
54
|
-
|
|
55
|
-
This causes a weird challenge with a persistent runtime environment. In the previous system the runtime environment would be created and subsequently destroyed when finished executing. This allowed edits to restricted bots to be made but the changes would be reverted once the runtime environment was re-created. With the new system, we need to track changes and whether they have been successful or not so that they can be reverted to prevent the system from deviating too far from the actual result.
|
|
56
|
-
|
|
57
|
-
The question is whether to use an optimistic model, a pessimistic model, or a synchronous model.
|
|
58
|
-
Basically, the pessimistic model assumes every write will fail while the optimistic model assumes every write will succeed. This is in contrast to the synchronous one which will validate each write with the partition as it is made.
|
|
59
|
-
|
|
60
|
-
The current system is pessimistic since it clears all changes after submitting them for persistence. This ensures that the data is always as close as possible to what is stored but can cause some weird anomalies. For example, two immediate shouts into the system can see very different data.
|
|
61
|
-
|
|
62
|
-
On the other hand, an optimistic model will preserve edits during persistence but then relies on additional communication to ensure that the runtime does not deviate too much.
|
|
63
|
-
If a write fails, then that failure needs to be communicated to the runtime so it can revert the changes. Due to the nature of storage, networking, and persistence,
|
|
64
|
-
it is often impossible to predict whether a particular write will pass or fail.
|
|
65
|
-
This fact makes handling failures more challenging than the pessimistic model.
|
|
66
|
-
|
|
67
|
-
Finally, the synchronous model will check each edit once it occurs to see if it is valid.
|
|
68
|
-
This may be appealing at first but there are a couple of obvious issues. Most notably, some partitions are split between threads and so cannot be run synchronosuly without greatly complicating their architecture. Additionally, the performance cost of checking each individual edit is likely quite high. Finally, data producing functions would need to be modified to surface these errors otherwise we risk users running into difficult to debug issues. (e.g. `create()` succeeds but no bot was actually created. Subsequent code likely depends on the bot actually existing after the function call.)
|
|
69
|
-
|
|
70
|
-
Let's go over some pros and cons:
|
|
71
|
-
|
|
72
|
-
#### Pessimistic Model
|
|
73
|
-
|
|
74
|
-
Assumes that changes will be denied by the partition.
|
|
75
|
-
|
|
76
|
-
_Pros:_
|
|
77
|
-
|
|
78
|
-
- Simple to implement.
|
|
79
|
-
- Ensures that the data never drifts too far from the actual.
|
|
80
|
-
|
|
81
|
-
_Cons:_
|
|
82
|
-
|
|
83
|
-
- Subsequent calls can see very different data even if the changes were valid.
|
|
84
|
-
- This makes properly handling async basically impossible.
|
|
85
|
-
- Also is more likely to happen in larger simulations since partitions run asynchronously.
|
|
86
|
-
- Scripts may see invalid data.
|
|
87
|
-
- This can happen because edits are accepted in-memory before being submitted to the partitions.
|
|
88
|
-
|
|
89
|
-
#### Optimistic model
|
|
90
|
-
|
|
91
|
-
Assumes that changes will be accepted by the partition.
|
|
92
|
-
|
|
93
|
-
_Pros:_
|
|
94
|
-
|
|
95
|
-
- Subsequent calls will see the same data.
|
|
96
|
-
- Async works out of the box without tons of edge cases.
|
|
97
|
-
|
|
98
|
-
_Cons:_
|
|
99
|
-
|
|
100
|
-
- Scripts may see invalid data.
|
|
101
|
-
- This can happen because edits are accepted in-memory before being submitted to the partitions.
|
|
102
|
-
- Difficult to implement.
|
|
103
|
-
- Rejected changes need to be sent back to the runtime so it can be updated.
|
|
104
|
-
- Runtime may drift from the actual over time due to communication issues.
|
|
105
|
-
|
|
106
|
-
#### Synchronous model
|
|
107
|
-
|
|
108
|
-
Checks each edit against a partition's storage rules.
|
|
109
|
-
|
|
110
|
-
_Pros:_
|
|
111
|
-
|
|
112
|
-
- Subsequent calls will see the same data.
|
|
113
|
-
- Async works out of the box.
|
|
114
|
-
- Scripts never see invalid data.
|
|
115
|
-
|
|
116
|
-
_Cons:_
|
|
117
|
-
|
|
118
|
-
- Difficult to implement.
|
|
119
|
-
- Requires additional changes to the runtime interface.
|
|
120
|
-
- All edits need to be checked.
|
|
121
|
-
- May be impossible depending on the implementation strategy.
|
|
122
|
-
|
|
123
|
-
#### Partitions
|
|
124
|
-
|
|
125
|
-
Let's talk about partitions. They seem to be an important factor in deciding which strategy to use. Partitions are persistent storage mechanisms for bots. When a bot is added to a universe, it is stored in a partition. Just like a normal file system, partitions are separate from each other and show up as different spaces. Unlinke a normal file system, partitions define the rules for how the data is stored. Normally, that honor goes to the actual storage device. (HDD, SSD, Flash Memory, Network, etc.)
|
|
126
|
-
In our case, partitions handle both. Additionally, partitions are expected to provide certain guarentees. In particular:
|
|
127
|
-
|
|
128
|
-
- All partition operations are expected to succeed.
|
|
129
|
-
- Basically, it must not error and must automatically resolve conflicts with concurrent edits.
|
|
130
|
-
- Partitions may decide to drop edits for any reason.
|
|
131
|
-
- Partitions must emit events representing changes to its data.
|
|
132
|
-
- Partitions must provide a snapshot of their current state.
|
|
133
|
-
|
|
134
|
-
These rules are pretty simple but predicting the result of an operation can be difficult when a partition can drop an edit due to bullet point 2. Note that in order to predict the result of an edit we need to know 2 things:
|
|
135
|
-
|
|
136
|
-
- Which partition the edit is for.
|
|
137
|
-
- Whether the partition supports/accepts the edit.
|
|
138
|
-
|
|
139
|
-
If we change bullet point 2 to be more restrictive, then we can support the synchronous model. So instead of allowing dropped edits for any reason, we should change it to allow dropped edits for a _specific set of reasons_. In particular, a partition must support a particular realtime edit strategy. Here are the three strategies:
|
|
140
|
-
|
|
141
|
-
- `immediate` - Realtime edits are supported and will produce update events once processed.
|
|
142
|
-
- `delayed` - Realtime edits are not supported. Edits may be used to update some non-local state. Update events may be produced at some point in the future. (supports history and error partitions)
|
|
143
|
-
|
|
144
|
-
Using these rules, we can decide whether an edit should update the bot's runtime data or if it should simply send the events to the partition.
|