@hypernetlabs/web-ui
Version:
Web ui react components for hypernet protocol
32 lines • 1.95 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const core_1 = require("@material-ui/core");
const contexts_1 = require("../../contexts");
const react_1 = __importDefault(require("react"));
const components_1 = require("../../components");
const BurnEntryWidget_style_1 = require("../../widgets/BurnEntryWidget/BurnEntryWidget.style");
const BurnEntryWidget = ({ onCloseCallback, onSuccessCallback, registryName, tokenId, }) => {
const classes = (0, BurnEntryWidget_style_1.useStyles)();
const { coreProxy } = (0, contexts_1.useStoreContext)();
const { setLoading, handleCoreError } = (0, contexts_1.useLayoutContext)();
const burnEntry = () => {
setLoading(true);
coreProxy.registries
.burnRegistryEntry(registryName, tokenId)
.map(() => {
setLoading(false);
onSuccessCallback();
})
.mapErr(handleCoreError);
};
return (react_1.default.createElement(components_1.GovernanceDialog, { title: "Burn the Entry", isOpen: true, onClose: onCloseCallback, content: react_1.default.createElement(react_1.default.Fragment, null,
react_1.default.createElement(core_1.Typography, { variant: "body2" }, "Are you sure you want to burn the entry?"),
react_1.default.createElement(core_1.Box, { className: classes.actionContainer },
react_1.default.createElement(components_1.GovernanceButton, { variant: "outlined", color: "primary", onClick: onCloseCallback }, "Cancel"),
react_1.default.createElement(components_1.GovernanceButton, { className: classes.burnButton, variant: "contained", color: "secondary", onClick: burnEntry }, "Burn Entry"))) }));
};
exports.default = BurnEntryWidget;
//# sourceMappingURL=BurnEntryWidget.js.map