pricing4react
Version:
A library of components that ease the integration of feature toggling driven by pricing plans into your React application's UI.
34 lines (33 loc) • 2.14 kB
JavaScript
"use strict";
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);
};
exports.__esModule = true;
exports.UserContextForm = void 0;
var jsx_runtime_1 = require("react/jsx-runtime");
var react_1 = require("react");
var Button_1 = require("../../components/Button");
function UserContextForm(_a) {
var initialData = _a.initialData, onSubmit = _a.onSubmit;
var _b = (0, react_1.useState)(initialData), userAttribute = _b[0], setUserAttribute = _b[1];
var handleSubmit = function (e) {
e.preventDefault();
onSubmit(userAttribute);
};
var handleNameChange = function (e) {
setUserAttribute(__assign(__assign({}, userAttribute), { id: e.target.value }));
};
var handleTypeChange = function (e) {
return setUserAttribute(__assign(__assign({}, userAttribute), { type: e.target.value }));
};
return ((0, jsx_runtime_1.jsxs)("form", __assign({ className: "pp-form", onSubmit: handleSubmit }, { children: [(0, jsx_runtime_1.jsx)("label", __assign({ htmlFor: "name" }, { children: "Name" })), (0, jsx_runtime_1.jsx)("input", { id: "name", name: "name", value: userAttribute.id, onChange: handleNameChange }), (0, jsx_runtime_1.jsx)("label", __assign({ htmlFor: "type" }, { children: "Type" })), (0, jsx_runtime_1.jsxs)("select", __assign({ id: "type", name: "type", value: userAttribute.type, onChange: handleTypeChange }, { children: [(0, jsx_runtime_1.jsx)("option", __assign({ value: "NUMERIC" }, { children: "NUMERIC" })), (0, jsx_runtime_1.jsx)("option", __assign({ value: "TEXT" }, { children: "TEXT" })), (0, jsx_runtime_1.jsx)("option", __assign({ value: "CONDITION" }, { children: "CONDITION" }))] })), (0, jsx_runtime_1.jsx)(Button_1.Button, __assign({ className: "pp-btn" }, { children: "Save" }))] })));
}
exports.UserContextForm = UserContextForm;