UNPKG

@hypernetlabs/web-ui

Version:
58 lines 3.89 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const objects_1 = require("@hypernetlabs/objects"); const core_1 = require("@material-ui/core"); const contexts_1 = require("../../contexts"); const formik_1 = require("formik"); const react_1 = __importDefault(require("react")); const components_1 = require("../../components"); const CreateRegistryWidget_style_1 = require("../../widgets/CreateRegistryWidget/CreateRegistryWidget.style"); const CreateRegistryWidget = ({ onCloseCallback, currentAccountAddress, }) => { const classes = (0, CreateRegistryWidget_style_1.useStyles)(); const { coreProxy } = (0, contexts_1.useStoreContext)(); const { setLoading, handleCoreError } = (0, contexts_1.useLayoutContext)(); const handleCreateRegistry = ({ name, symbol, registrar, enumerable, }) => { setLoading(true); coreProxy.registries .createRegistryByToken(name, symbol, (0, objects_1.EthereumAccountAddress)(registrar), enumerable) .map(() => { setLoading(false); onCloseCallback(); }) .mapErr(handleCoreError); }; return (react_1.default.createElement(components_1.GovernanceDialog, { title: "Create a New Registry", isOpen: true, onClose: onCloseCallback, content: react_1.default.createElement(core_1.Box, { className: classes.wrapper }, react_1.default.createElement(formik_1.Formik, { initialValues: { name: "", symbol: "", registrar: currentAccountAddress, enumerable: true, }, onSubmit: handleCreateRegistry }, ({ handleSubmit, values }) => { return (react_1.default.createElement(formik_1.Form, { onSubmit: handleSubmit }, react_1.default.createElement(components_1.GovernanceField, { title: "Registry Name", name: "name", type: "input", placeholder: "Enter a name" }), react_1.default.createElement(components_1.GovernanceField, { title: "Registry Symbol", required: true, name: "symbol", type: "input", placeholder: "Enter a Symbol" }), react_1.default.createElement(components_1.GovernanceField, { title: "Registrar Address", required: true, name: "registrar", type: "input", placeholder: "Enter Registrar address" }), react_1.default.createElement(components_1.GovernanceDialogSelectLargeField, { name: "enumerable", title: "Enumerable Tokens", type: "select", placeholder: "select action", required: true, options: [ { primaryText: "Enabled", secondaryText: undefined, action: null, value: true, }, { primaryText: "Disabled", secondaryText: undefined, action: null, value: false, }, ] }), 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.button, variant: "contained", color: "primary", onClick: handleSubmit, disabled: !values.registrar || !values.name }, "Submit")))); })) })); }; exports.default = CreateRegistryWidget; //# sourceMappingURL=CreateRegistryWidget.js.map