@helpscout/artboard
Version:
A tool kit for React UI development and design
220 lines • 6.42 kB
JavaScript
;
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
var Artboard_ActionTypes_1 = require("./Artboard.ActionTypes");
var Artboard_store_1 = require("./Artboard.store");
var Artboard_utils_1 = require("./Artboard.utils");
/**
* GENERAL
*/
exports.onReady = function (props) {
var state = Artboard_store_1.default.getState();
var mergedProps = exports.mergePropsWithState(props, state);
return {
type: Artboard_ActionTypes_1.default.ON_READY,
payload: { props: mergedProps },
};
};
exports.loadLocalState = function (props) {
var state = Artboard_store_1.default.getState();
var artboardName = Artboard_utils_1.getArtboardNameFromProps(props);
var localState = Artboard_utils_1.loadSessionState(artboardName);
var mergedState = exports.mergeStateWithProps(state, props);
mergedState = exports.mergeStateWithProps(mergedState, localState);
return {
type: Artboard_ActionTypes_1.default.LOAD_LOCAL_STATE,
payload: { state: mergedState },
};
};
exports.saveLocalState = function () {
var state = Artboard_store_1.default.getState();
var artboardName = state.artboardName;
if (artboardName) {
Artboard_utils_1.saveSessionState(artboardName, state);
return {
type: Artboard_ActionTypes_1.default.SAVE_LOCAL_STATE,
};
}
else {
return {
type: Artboard_ActionTypes_1.default.NULL,
};
}
};
exports.resetSettings = function (initialProps) {
return {
type: Artboard_ActionTypes_1.default.RESET,
payload: {
props: initialProps,
},
};
};
exports.performActionStart = function () {
return {
type: Artboard_ActionTypes_1.default.PERFORM_ACTION_START,
};
};
exports.performActionEnd = function () {
return {
type: Artboard_ActionTypes_1.default.PERFORM_ACTION_END,
};
};
/**
* DARK MODE
*/
exports.toggleDarkMode = function () {
return { type: Artboard_ActionTypes_1.default.TOGGLE_DARK_MODE };
};
/**
* INTERFACE
*/
exports.toggleInterface = function () {
return { type: Artboard_ActionTypes_1.default.TOGGLE_INTERFACE };
};
/**
* GUIDES
*/
exports.toggleGuides = function () {
return { type: Artboard_ActionTypes_1.default.TOGGLE_GUIDES };
};
/**
* BOX INSPECTOR
*/
exports.toggleBoxInspector = function () {
return { type: Artboard_ActionTypes_1.default.TOGGLE_BOX_INSPECTOR };
};
/**
* SIZE INSPECTOR
*/
exports.toggleSizeInspector = function () {
return { type: Artboard_ActionTypes_1.default.TOGGLE_SIZE_INSPECTOR };
};
/**
* EYEDROPPER
*/
exports.startEyeDropper = function () {
return { type: Artboard_ActionTypes_1.default.EYEDROPPER_START };
};
exports.readyEyeDropper = function () {
return { type: Artboard_ActionTypes_1.default.EYEDROPPER_READY };
};
exports.stopEyeDropper = function () {
return { type: Artboard_ActionTypes_1.default.EYEDROPPER_STOP };
};
/**
* CROSSHAIR
*/
exports.startCrosshair = function () {
return { type: Artboard_ActionTypes_1.default.CROSSHAIR_START };
};
exports.stopCrosshair = function () {
var state = Artboard_store_1.default.getState();
if (!state.isCrosshairActive) {
return {
type: Artboard_ActionTypes_1.default.NULL,
};
}
return { type: Artboard_ActionTypes_1.default.CROSSHAIR_END };
};
exports.toggleCrosshair = function () {
var state = Artboard_store_1.default.getState();
if (state.isCrosshairActive) {
return exports.stopCrosshair();
}
else {
return exports.startCrosshair();
}
};
exports.addCrosshairSnapshot = function (snapshot) {
return {
type: Artboard_ActionTypes_1.default.CROSSHAIR_ADD_SNAPSHOT,
payload: {
snapshot: snapshot,
},
};
};
exports.clearCrosshairSnapshots = function () {
return { type: Artboard_ActionTypes_1.default.CROSSHAIR_CLEAR };
};
/**
* RESIZER
*/
exports.onResize = function (event, resizeProps) {
var _a = resizeProps.size, height = _a.height, width = _a.width;
return {
type: Artboard_ActionTypes_1.default.RESIZE_ARTBOARD,
payload: {
artboardHeight: height,
artboardWidth: width,
},
};
};
/**
* MOVE
*/
exports.moveStart = function () {
return { type: Artboard_ActionTypes_1.default.MOVE_START };
};
exports.moveEnd = function () {
return { type: Artboard_ActionTypes_1.default.MOVE_END };
};
exports.moveDragStart = function () {
return { type: Artboard_ActionTypes_1.default.MOVE_DRAG_START };
};
exports.moveDrag = function (positions) {
return { type: Artboard_ActionTypes_1.default.MOVE_DRAG, payload: positions };
};
exports.moveDragEnd = function () {
return { type: Artboard_ActionTypes_1.default.MOVE_DRAG_END };
};
/**
* ZOOM
*/
exports.zoomIn = function () {
return { type: Artboard_ActionTypes_1.default.ZOOM_IN };
};
exports.zoomOut = function () {
return { type: Artboard_ActionTypes_1.default.ZOOM_OUT };
};
exports.zoomInStart = function () {
return { type: Artboard_ActionTypes_1.default.ZOOM_IN_START };
};
exports.zoomOutStart = function () {
return { type: Artboard_ActionTypes_1.default.ZOOM_OUT_START };
};
exports.zoomReset = function () {
return { type: Artboard_ActionTypes_1.default.ZOOM_RESET };
};
/**
* UTILS
*/
exports.mergePropsWithState = function (props, state) {
var nextState = {};
Object.keys(props).forEach(function (key) {
if (state.hasOwnProperty(key)) {
var value = props[key];
if (value !== undefined) {
nextState[key] = props[key];
}
}
});
return nextState;
};
exports.mergeStateWithProps = function (state, props) {
return Object.keys(state).reduce(function (acc, key) {
var _a;
var value = props[key] !== undefined ? props[key] : state[key];
return __assign({}, acc, (_a = {}, _a[key] = value, _a));
}, {});
};
//# sourceMappingURL=Artboard.actions.js.map