p5.js-web-editor/client/modules/IDE/actions/ide.js

196 lines
3.3 KiB
JavaScript

import * as ActionTypes from '../../../constants';
export function startSketch() {
return {
type: ActionTypes.START_SKETCH
};
}
export function stopSketch() {
return {
type: ActionTypes.STOP_SKETCH
};
}
export function startRefreshSketch() {
return {
type: ActionTypes.START_SKETCH_REFRESH
};
}
export function startSketchAndRefresh() {
return (dispatch) => {
dispatch(startSketch());
dispatch(startRefreshSketch());
};
}
export function endSketchRefresh() {
return {
type: ActionTypes.END_SKETCH_REFRESH
};
}
export function startTextOutput() {
return {
type: ActionTypes.START_TEXT_OUTPUT
};
}
export function stopTextOutput() {
return {
type: ActionTypes.STOP_TEXT_OUTPUT
};
}
export function setSelectedFile(fileId) {
return {
type: ActionTypes.SET_SELECTED_FILE,
selectedFile: fileId
};
}
export function resetSelectedFile(previousId) {
return (dispatch, getState) => {
const state = getState();
const newId = state.files.find(file => file.name !== 'root' && file.id !== previousId).id;
dispatch({
type: ActionTypes.SET_SELECTED_FILE,
selectedFile: newId
});
};
}
export function dispatchConsoleEvent(...args) {
return {
type: ActionTypes.CONSOLE_EVENT,
event: args[0].data
};
}
export function newFile() {
return {
type: ActionTypes.SHOW_MODAL
};
}
export function closeNewFileModal() {
return {
type: ActionTypes.HIDE_MODAL
};
}
export function expandSidebar() {
return {
type: ActionTypes.EXPAND_SIDEBAR
};
}
export function collapseSidebar() {
return {
type: ActionTypes.COLLAPSE_SIDEBAR
};
}
export function expandConsole() {
return {
type: ActionTypes.EXPAND_CONSOLE
};
}
export function collapseConsole() {
return {
type: ActionTypes.COLLAPSE_CONSOLE
};
}
export function openPreferences() {
return {
type: ActionTypes.OPEN_PREFERENCES
};
}
export function closePreferences() {
return {
type: ActionTypes.CLOSE_PREFERENCES
};
}
export function openProjectOptions() {
return {
type: ActionTypes.OPEN_PROJECT_OPTIONS
};
}
export function closeProjectOptions() {
return {
type: ActionTypes.CLOSE_PROJECT_OPTIONS
};
}
export function newFolder() {
return {
type: ActionTypes.SHOW_NEW_FOLDER_MODAL
};
}
export function closeNewFolderModal() {
return {
type: ActionTypes.CLOSE_NEW_FOLDER_MODAL
};
}
export function showShareModal() {
return {
type: ActionTypes.SHOW_SHARE_MODAL
};
}
export function closeShareModal() {
return {
type: ActionTypes.CLOSE_SHARE_MODAL
};
}
export function showEditorOptions() {
return {
type: ActionTypes.SHOW_EDITOR_OPTIONS
};
}
export function closeEditorOptions() {
return {
type: ActionTypes.CLOSE_EDITOR_OPTIONS
};
}
export function showKeyboardShortcutModal() {
return {
type: ActionTypes.SHOW_KEYBOARD_SHORTCUT_MODAL
};
}
export function closeKeyboardShortcutModal() {
return {
type: ActionTypes.CLOSE_KEYBOARD_SHORTCUT_MODAL
};
}
export function setUnsavedChanges(value) {
return {
type: ActionTypes.SET_UNSAVED_CHANGES,
value
};
}
export function detectInfiniteLoops() {
return {
type: ActionTypes.DETECT_INFINITE_LOOPS
};
}
export function resetInfiniteLoops() {
return {
type: ActionTypes.RESET_INFINITE_LOOPS
};
}