@pdg/react-form 1.0.34 → 1.0.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -823,11 +823,11 @@ Form.displayName = 'Form';
823
823
  Form.defaultProps = FormDefaultProps;var FormButtonDefaultProps = {
824
824
  type: 'button',
825
825
  };var FormIconDefaultProps = {};var FormIcon = React__default["default"].forwardRef(function (_a, ref) {
826
- // Memo --------------------------------------------------------------------------------------------------------------
827
- var className = _a.className, initChildren = _a.children, props = __rest$3(_a, ["className", "children"]);
828
- var children = React.useMemo(function () { return initChildren.replace(/[A-Z]/g, function (letter, idx) { return "".concat(idx > 0 ? '_' : '').concat(letter.toLowerCase()); }); }, [initChildren]);
829
- // Render ----------------------------------------------------------------------------------------------------------
830
- return (React__default["default"].createElement(material.Icon, __assign$6({ ref: ref }, props, { className: classNames$1('FormIcon', className) }), children));
826
+ var className = _a.className, InitChildren = _a.children, props = __rest$3(_a, ["className", "children"]);
827
+ return React.useMemo(function () {
828
+ var iconProps = __assign$6(__assign$6({}, props), { className: classNames$1('FormIcon', className) });
829
+ return typeof InitChildren === 'string' ? (React__default["default"].createElement(material.Icon, __assign$6({ ref: ref }, iconProps), InitChildren.replace(/[A-Z]/g, function (letter, idx) { return "".concat(idx > 0 ? '_' : '').concat(letter.toLowerCase()); }))) : (React__default["default"].createElement(InitChildren, __assign$6({}, iconProps)));
830
+ }, [InitChildren, className, props, ref]);
831
831
  });
832
832
  FormIcon.displayName = 'FormIcon';
833
833
  FormIcon.defaultProps = FormIconDefaultProps;var FormButton = React__default["default"].forwardRef(function (_a, ref) {
@@ -872,13 +872,24 @@ var templateObject_1$5, templateObject_2$1;var FormLabel = React__default["defau
872
872
  FormLabel.displayName = 'FormLabel';
873
873
  FormLabel.defaultProps = FormLabelDefaultProps;var FormBlockDefaultProps = {};var FormDividerDefaultProps = {
874
874
  lineVerticalMargin: 9,
875
- };var StyledLineDiv = material.styled('div')(templateObject_1$4 || (templateObject_1$4 = __makeTemplateObject(["\n border-bottom: thin solid #dfdfdf;\n position: absolute;\n left: 0;\n top: 50%;\n width: 100%;\n"], ["\n border-bottom: thin solid #dfdfdf;\n position: absolute;\n left: 0;\n top: 50%;\n width: 100%;\n"])));
875
+ };var StyledLineBox = material.styled(material.Box)(templateObject_1$4 || (templateObject_1$4 = __makeTemplateObject(["\n border-bottom: thin solid #dfdfdf;\n position: absolute;\n left: 0;\n top: 50%;\n width: 100%;\n"], ["\n border-bottom: thin solid #dfdfdf;\n position: absolute;\n left: 0;\n top: 50%;\n width: 100%;\n"])));
876
+ var StyledErrorLineBox = material.styled(material.Box)(function (_a) {
877
+ var theme = _a.theme;
878
+ return ({
879
+ borderBottom: "thin solid ".concat(theme.palette.error.main),
880
+ position: 'absolute',
881
+ left: 0,
882
+ top: '50%',
883
+ width: '100%',
884
+ opacity: 0.4,
885
+ });
886
+ });
876
887
  var templateObject_1$4;var DEFAULT_LINE_STYLE = { flex: 1, position: 'relative' };
877
888
  var FormDivider = React__default["default"].forwardRef(function (_a, ref) {
878
889
  // FormState -------------------------------------------------------------------------------------------------------
879
890
  var initSize = _a.size,
880
891
  //----------------------------------------------------------------------------------------------------------------
881
- icon = _a.icon, label = _a.label, line = _a.line, lineVerticalMargin = _a.lineVerticalMargin, hidden = _a.hidden, collapse = _a.collapse, collapseIn = _a.collapseIn, onCollapseChange = _a.onCollapseChange,
892
+ icon = _a.icon, label = _a.label, line = _a.line, lineVerticalMargin = _a.lineVerticalMargin, hidden = _a.hidden, collapse = _a.collapse, collapseIn = _a.collapseIn, error = _a.error, onCollapseChange = _a.onCollapseChange,
882
893
  //----------------------------------------------------------------------------------------------------------------
883
894
  className = _a.className, initStyle = _a.style, sx = _a.sx;
884
895
  var formSize = useFormState().size;
@@ -917,16 +928,15 @@ var FormDivider = React__default["default"].forwardRef(function (_a, ref) {
917
928
  padding: 0,
918
929
  cursor: collapse ? 'pointer' : undefined,
919
930
  }, onClick: handleClick },
920
- icon && (React__default["default"].createElement(FormIcon, { style: { opacity: 0.54, marginRight: 5 }, fontSize: size }, icon)),
931
+ icon && (React__default["default"].createElement(FormIcon, { style: { opacity: 0.54, marginRight: 5 }, color: error ? 'error' : undefined, fontSize: size }, icon)),
921
932
  label && (React__default["default"].createElement(material.Box, { sx: {
922
933
  paddingRight: '10px',
923
- color: 'text.secondary',
934
+ color: error ? 'error.main' : 'text.secondary',
924
935
  fontWeight: 700,
925
936
  fontSize: size === 'small' ? '11.5px' : '12px',
926
937
  } }, label)),
927
- (line || collapse) && (React__default["default"].createElement("div", { style: lineStyle },
928
- React__default["default"].createElement(StyledLineDiv, null))),
929
- collapse && (React__default["default"].createElement(FormIcon, { sx: { opacity: 0.6, ml: 1 } }, collapseIn ? 'KeyboardDoubleArrowUp' : 'KeyboardDoubleArrowDown')))));
938
+ (line || collapse) && React__default["default"].createElement("div", { style: lineStyle }, error ? React__default["default"].createElement(StyledErrorLineBox, null) : React__default["default"].createElement(StyledLineBox, null)),
939
+ collapse && (React__default["default"].createElement(FormIcon, { sx: { opacity: 0.6, ml: 1 }, color: error ? 'error' : undefined }, collapseIn ? 'KeyboardDoubleArrowUp' : 'KeyboardDoubleArrowDown')))));
930
940
  });
931
941
  FormDivider.displayName = 'FormDivider.';
932
942
  FormDivider.defaultProps = FormDividerDefaultProps;function useFirstSkipEffect$1(effect, deps) {
@@ -996,7 +1006,7 @@ var templateObject_1$3;var FormBlock = React__default["default"].forwardRef(func
996
1006
  // FormState -------------------------------------------------------------------------------------------------------
997
1007
  var initVariant = _a.variant, initSize = _a.size, initColor = _a.color, initSpacing = _a.spacing, initFocused = _a.focused, initLabelShrink = _a.labelShrink, initFullWidth = _a.fullWidth,
998
1008
  //----------------------------------------------------------------------------------------------------------------
999
- icon = _a.icon, label = _a.label, line = _a.line, lineVerticalMargin = _a.lineVerticalMargin,
1009
+ icon = _a.icon, label = _a.label, line = _a.line, lineVerticalMargin = _a.lineVerticalMargin, error = _a.error,
1000
1010
  //----------------------------------------------------------------------------------------------------------------
1001
1011
  hidden = _a.hidden, collapse = _a.collapse, initCollapseIn = _a.collapseIn,
1002
1012
  //----------------------------------------------------------------------------------------------------------------
@@ -1036,7 +1046,7 @@ var templateObject_1$3;var FormBlock = React__default["default"].forwardRef(func
1036
1046
  return (React__default["default"].createElement(FormContext.Provider, { value: __assign$6({ variant: variant, size: size, color: color, spacing: spacing, focused: focused, labelShrink: labelShrink, fullWidth: fullWidth }, otherFormState) },
1037
1047
  React__default["default"].createElement(material.Grid, { item: true, ref: ref, xs: 12, className: classNames$1(className, 'FormBlock'), style: style, sx: sx },
1038
1048
  React__default["default"].createElement(material.Grid, { container: true, spacing: spacing },
1039
- (icon || label || line || collapse) && (React__default["default"].createElement(FormDivider, { className: 'FormBlock-header', collapse: collapse, collapseIn: collapseIn, size: size, icon: icon, color: color, label: label, line: line, lineVerticalMargin: lineVerticalMargin, hidden: hidden, onCollapseChange: collapse ? function (newCollapseIn) { return setCollapseIn(newCollapseIn); } : undefined })),
1049
+ (icon || label || line || collapse) && (React__default["default"].createElement(FormDivider, { className: 'FormBlock-header', collapse: collapse, collapseIn: collapseIn, size: size, icon: icon, color: color, label: label, line: line, error: error, lineVerticalMargin: lineVerticalMargin, hidden: hidden, onCollapseChange: collapse ? function (newCollapseIn) { return setCollapseIn(newCollapseIn); } : undefined })),
1040
1050
  React__default["default"].createElement(StyledWrapGrid$1, { item: true, xs: 12 },
1041
1051
  React__default["default"].createElement(Container, __assign$6({}, containerProps),
1042
1052
  React__default["default"].createElement(material.Grid, { container: true, spacing: spacing },
@@ -1101,7 +1111,7 @@ var templateObject_1$2;var FormRow = React__default["default"].forwardRef(functi
1101
1111
  return (React__default["default"].createElement(FormContext.Provider, { value: __assign$6({ variant: variant, size: size, color: color, spacing: spacing, focused: focused, labelShrink: labelShrink, fullWidth: fullWidth, formColAutoXs: formColAutoXs, onAddFormCol: handleAddFormCol, onRemoveFormCol: handleRemoveFormCol }, otherFormState) },
1102
1112
  React__default["default"].createElement(material.Grid, { item: true, ref: ref, xs: 12, className: classNames$1(className, 'FormRow'), style: style, sx: sx },
1103
1113
  React__default["default"].createElement(material.Grid, { container: true, spacing: spacing },
1104
- (icon || label || line) && (React__default["default"].createElement(FormDivider, { className: classNames$1(className, 'FormRow-header'), size: size, icon: icon, color: color, label: label, line: line, lineVerticalMargin: lineVerticalMargin, hidden: hidden })),
1114
+ (icon || label || line) && (React__default["default"].createElement(FormDivider, { className: classNames$1(className, 'FormRow-header'), size: size, icon: icon, color: color, label: label, line: line, error: error, lineVerticalMargin: lineVerticalMargin, hidden: hidden })),
1105
1115
  React__default["default"].createElement(StyledWrapGrid, { item: true, xs: 12, className: 'FormRow-body' },
1106
1116
  React__default["default"].createElement(material.Grid, { className: 'FormRow-content', container: true, spacing: spacing, direction: 'row', style: { flexWrap: 'nowrap' } }, children),
1107
1117
  helperText && (React__default["default"].createElement(material.FormHelperText, { className: 'FormRow-helper-text', component: 'div', error: error }, helperText)))))));