@selfcommunity/react-ui
Version:
React UI Components to integrate a Community created with SelfCommunity Platform.
32 lines (31 loc) • 1.53 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const jsx_runtime_1 = require("react/jsx-runtime");
const CourseForm_1 = tslib_1.__importDefault(require("../CourseForm"));
const react_1 = require("react");
const notistack_1 = require("notistack");
const react_intl_1 = require("react-intl");
const Course_1 = require("../../constants/Course");
function Customize(props) {
// PROPS
const { course, setCourse } = props;
// HOOKS
const { enqueueSnackbar } = (0, notistack_1.useSnackbar)();
// HANDLERS
const handleSuccess = (0, react_1.useCallback)((data) => {
setCourse(Object.assign(Object.assign({}, course), data));
enqueueSnackbar((0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.editCourse.tab.customize.snackbar.save", defaultMessage: "ui.editCourse.tab.customize.snackbar.save" }), {
variant: 'success',
autoHideDuration: 3000
});
}, [course]);
const handleError = (0, react_1.useCallback)(() => {
enqueueSnackbar((0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.common.error.action", defaultMessage: "ui.common.error.action" }), {
variant: 'error',
autoHideDuration: 3000
});
}, []);
return (0, jsx_runtime_1.jsx)(CourseForm_1.default, { course: course, step: Course_1.SCCourseFormStepType.CUSTOMIZATION, onSuccess: handleSuccess, onError: handleError });
}
exports.default = (0, react_1.memo)(Customize);