UNPKG

@focuson/form_components

Version:

Components that can be used by @focuson/forms

18 lines (17 loc) 935 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DeleteStateButton = void 0; const jsx_runtime_1 = require("react/jsx-runtime"); const state_1 = require("@focuson/state"); const common_1 = require("./common"); const pages_1 = require("@focuson/pages"); function DeleteStateButton({ id, label, states, buttonType, enabledBy }) { function onClick() { const txs = states.map(s => [s.optional, () => undefined]); if (txs.length === 0) return; states[0].massTransform((0, state_1.reasonFor)('DeleteStateButton', 'onClick', id))(...txs); } return (0, pages_1.wrapWithErrors)(id, enabledBy, [], (errorProps, error) => (0, jsx_runtime_1.jsx)("button", Object.assign({ id: id }, errorProps, { disabled: error, onClick: onClick, className: (0, common_1.getButtonClassName)(buttonType) }, { children: label }))); } exports.DeleteStateButton = DeleteStateButton;