merchi_product_form
Version:
A React component for Merchi product forms
71 lines (70 loc) • 11.8 kB
JavaScript
'use client';
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
import * as React from 'react';
import { useController } from 'react-hook-form';
import VariationError from './VariationError';
import { useMerchiFormContext } from '../context/MerchiProductFormProvider';
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
function InputGroupQuantity(_ref) {
var count = _ref.count,
disabled = _ref.disabled,
name = _ref.name;
var inputId = "merchi-group-qty-".concat(count);
var _useMerchiFormContext = useMerchiFormContext(),
classNameInputContainer = _useMerchiFormContext.classNameInputContainer,
classNameInput = _useMerchiFormContext.classNameInput,
control = _useMerchiFormContext.control,
getQuote = _useMerchiFormContext.getQuote,
product = _useMerchiFormContext.product;
var minimum = product.minimum,
minimumPerGroup = product.minimumPerGroup;
var validators = {
positive: function positive(value) {
return parseInt(value) > 0;
},
required: {
value: true,
message: 'Quantity is required'
},
valueAsNumber: true
};
if (minimum && minimumPerGroup) {
validators.min = {
value: minimum,
message: "Group quantity can not be less than ".concat(minimum)
};
}
var _useController = useController({
name: name,
control: control,
rules: validators
}),
field = _useController.field;
return /*#__PURE__*/_jsxs("div", {
className: classNameInputContainer,
children: [/*#__PURE__*/_jsxs("label", {
htmlFor: inputId,
children: ["Group (", count, ") quantity"]
}), /*#__PURE__*/_jsx("input", _objectSpread(_objectSpread({
id: inputId,
disabled: disabled,
min: "0",
type: "number",
className: classNameInput
}, field), {}, {
onChange: function onChange(e) {
field.onChange(e);
getQuote();
}
})), /*#__PURE__*/_jsx(VariationError, {
name: name
})]
});
}
export default InputGroupQuantity;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdHlwZW9mIiwibyIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiY29uc3RydWN0b3IiLCJwcm90b3R5cGUiLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfdG9Qcm9wZXJ0eUtleSIsInZhbHVlIiwiY29uZmlndXJhYmxlIiwid3JpdGFibGUiLCJpIiwiX3RvUHJpbWl0aXZlIiwidG9QcmltaXRpdmUiLCJjYWxsIiwiVHlwZUVycm9yIiwiU3RyaW5nIiwiTnVtYmVyIiwiUmVhY3QiLCJ1c2VDb250cm9sbGVyIiwiVmFyaWF0aW9uRXJyb3IiLCJ1c2VNZXJjaGlGb3JtQ29udGV4dCIsImpzeHMiLCJfanN4cyIsImpzeCIsIl9qc3giLCJJbnB1dEdyb3VwUXVhbnRpdHkiLCJfcmVmIiwiY291bnQiLCJkaXNhYmxlZCIsIm5hbWUiLCJpbnB1dElkIiwiY29uY2F0IiwiX3VzZU1lcmNoaUZvcm1Db250ZXh0IiwiY2xhc3NOYW1lSW5wdXRDb250YWluZXIiLCJjbGFzc05hbWVJbnB1dCIsImNvbnRyb2wiLCJnZXRRdW90ZSIsInByb2R1Y3QiLCJtaW5pbXVtIiwibWluaW11bVBlckdyb3VwIiwidmFsaWRhdG9ycyIsInBvc2l0aXZlIiwicGFyc2VJbnQiLCJyZXF1aXJlZCIsIm1lc3NhZ2UiLCJ2YWx1ZUFzTnVtYmVyIiwibWluIiwiX3VzZUNvbnRyb2xsZXIiLCJydWxlcyIsImZpZWxkIiwiY2xhc3NOYW1lIiwiY2hpbGRyZW4iLCJodG1sRm9yIiwiaWQiLCJ0eXBlIiwib25DaGFuZ2UiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tcG9uZW50cy9JbnB1dEdyb3VwUXVhbnRpdHkudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50JztcclxuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xyXG5pbXBvcnQgeyB1c2VDb250cm9sbGVyIH0gZnJvbSAncmVhY3QtaG9vay1mb3JtJztcclxuaW1wb3J0IFZhcmlhdGlvbkVycm9yIGZyb20gJy4vVmFyaWF0aW9uRXJyb3InO1xyXG5pbXBvcnQgeyB1c2VNZXJjaGlGb3JtQ29udGV4dCB9IGZyb20gJy4uL2NvbnRleHQvTWVyY2hpUHJvZHVjdEZvcm1Qcm92aWRlcic7XHJcblxyXG5pbnRlcmZhY2UgUHJvcHMge1xyXG4gIGNvdW50OiBudW1iZXI7XHJcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xyXG4gIG5hbWU6IHN0cmluZztcclxufVxyXG5cclxuZnVuY3Rpb24gSW5wdXRHcm91cFF1YW50aXR5KHsgY291bnQsIGRpc2FibGVkLCBuYW1lIH06IFByb3BzKSB7XHJcbiAgY29uc3QgaW5wdXRJZCA9IGBtZXJjaGktZ3JvdXAtcXR5LSR7Y291bnR9YDtcclxuICBjb25zdCB7XHJcbiAgICBjbGFzc05hbWVJbnB1dENvbnRhaW5lcixcclxuICAgIGNsYXNzTmFtZUlucHV0LFxyXG4gICAgY29udHJvbCxcclxuICAgIGdldFF1b3RlLFxyXG4gICAgcHJvZHVjdCxcclxuICB9ID0gdXNlTWVyY2hpRm9ybUNvbnRleHQoKTtcclxuICBjb25zdCB7IG1pbmltdW0sIG1pbmltdW1QZXJHcm91cCB9ID0gcHJvZHVjdDtcclxuICBjb25zdCB2YWxpZGF0b3JzOiBhbnkgPSB7XHJcbiAgICBwb3NpdGl2ZTogKHZhbHVlOiBhbnkpID0+IHBhcnNlSW50KHZhbHVlKSA+IDAsXHJcbiAgICByZXF1aXJlZDoge1xyXG4gICAgICB2YWx1ZTogdHJ1ZSxcclxuICAgICAgbWVzc2FnZTogJ1F1YW50aXR5IGlzIHJlcXVpcmVkJyxcclxuICAgIH0sXHJcbiAgICB2YWx1ZUFzTnVtYmVyOiB0cnVlLFxyXG4gIH07XHJcbiAgaWYgKG1pbmltdW0gJiYgbWluaW11bVBlckdyb3VwKSB7XHJcbiAgICB2YWxpZGF0b3JzLm1pbiA9IHtcclxuICAgICAgdmFsdWU6IG1pbmltdW0sXHJcbiAgICAgIG1lc3NhZ2U6IGBHcm91cCBxdWFudGl0eSBjYW4gbm90IGJlIGxlc3MgdGhhbiAke21pbmltdW19YCxcclxuICAgIH07XHJcbiAgfVxyXG4gIGNvbnN0IHsgZmllbGQgfSA9IHVzZUNvbnRyb2xsZXIoe1xyXG4gICAgbmFtZTogbmFtZSxcclxuICAgIGNvbnRyb2wsXHJcbiAgICBydWxlczogdmFsaWRhdG9ycyxcclxuICB9KTtcclxuICByZXR1cm4gKFxyXG4gICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZUlucHV0Q29udGFpbmVyfT5cclxuICAgICAgPGxhYmVsIGh0bWxGb3I9e2lucHV0SWR9Pkdyb3VwICh7Y291bnR9KSBxdWFudGl0eTwvbGFiZWw+XHJcbiAgICAgIDxpbnB1dFxyXG4gICAgICAgIGlkPXtpbnB1dElkfVxyXG4gICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cclxuICAgICAgICBtaW49JzAnXHJcbiAgICAgICAgdHlwZT0nbnVtYmVyJ1xyXG4gICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lSW5wdXR9XHJcbiAgICAgICAgey4uLmZpZWxkfVxyXG4gICAgICAgIG9uQ2hhbmdlPXsoZTogYW55KSA9PiB7XHJcbiAgICAgICAgICBmaWVsZC5vbkNoYW5nZShlKTtcclxuICAgICAgICAgIGdldFF1b3RlKCk7XHJcbiAgICAgICAgfX1cclxuICAgICAgLz5cclxuICAgICAgPFZhcmlhdGlvbkVycm9yIG5hbWU9e25hbWV9IC8+XHJcbiAgICA8L2Rpdj5cclxuICApO1xyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCBJbnB1dEdyb3VwUXVhbnRpdHk7XHJcbiJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTs7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