@ou-imdt/utils
Version:
Utility library for interactive media development
17 lines (16 loc) • 751 B
JavaScript
import getUserId from '../vle/getUserId.js';
/**
* Creates a prefix for localStorage keys
* @param {object} options
* @param {boolean | string} options.user - User/global, or group identifier.
* @param {string} [options.activityId] - Optional activity ID.
* @param {string} [options.documentId] - Optional document ID.
* @param {string} [options.courseId] - Optional course ID.
* @returns {string}
*/
export default function getSavePrefix(options) {
const { user = true, activityId = '', documentId = '', courseId = '' } = options;
const userId = (typeof user === 'string') ? user : user ? getUserId() : 'global';
const parts = [courseId, documentId, activityId, userId || 'default'];
return parts.filter(value => value).join('-');
}