UNPKG

@neurosity/sdk

Version:
42 lines (41 loc) 1.58 kB
export const MODEL_VERSION_1 = "1"; export const MODEL_VERSION_2 = "2"; export const MODEL_VERSION_3 = "3"; export const FEATURE_HAPTICS = "haptics"; export const FEATURE_ACCEL = "accel"; export const HAPTIC_P7 = "P7"; export const HAPTIC_P8 = "P8"; export const platformFeaturesByModelVersion = { [MODEL_VERSION_1]: [], [MODEL_VERSION_2]: [FEATURE_HAPTICS, FEATURE_ACCEL], [MODEL_VERSION_3]: [FEATURE_HAPTICS, FEATURE_ACCEL] }; export const platformConfigByModelVersion = { [MODEL_VERSION_1]: {}, [MODEL_VERSION_2]: { motorByMotorName: { [HAPTIC_P7]: [], [HAPTIC_P8]: [] } }, [MODEL_VERSION_3]: { motorByMotorName: { [HAPTIC_P7]: [], [HAPTIC_P8]: [] } } }; export const supportsHaptics = (modelVersion) => { const platformFeaturesForModel = platformFeaturesByModelVersion[modelVersion]; return platformFeaturesForModel.includes(FEATURE_HAPTICS); }; export const supportsAccel = (modelVersion) => { const platformFeaturesForModel = platformFeaturesByModelVersion[modelVersion]; return platformFeaturesForModel.includes(FEATURE_ACCEL); }; export const getPlatformHapticMotors = (modelVersion) => { var _a; const platformConfigForModel = platformConfigByModelVersion[modelVersion]; const platformMotorByMotorName = (_a = platformConfigForModel === null || platformConfigForModel === void 0 ? void 0 : platformConfigForModel.motorByMotorName) !== null && _a !== void 0 ? _a : {}; return Object.assign({}, platformMotorByMotorName); };