@pdg/react-form 1.0.50 → 1.0.52

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
@@ -12101,20 +12101,15 @@ FormFile.defaultProps = FormFileDefaultProps;var FormImageFileDefaultProps = __a
12101
12101
  styleInject(css_248z);var FormImageFile = React__default["default"].forwardRef(function (_a, ref) {
12102
12102
  var className = _a.className, imageSize = _a.imageSize, preview = _a.preview, previewMaxHeight = _a.previewMaxHeight, initValue = _a.value, onChange = _a.onChange, onFile = _a.onFile, onLink = _a.onLink, props = __rest$3(_a, ["className", "imageSize", "preview", "previewMaxHeight", "value", "onChange", "onFile", "onLink"]);
12103
12103
  var _b = useAutoUpdateState$1(initValue), value = _b[0], setValue = _b[1];
12104
- var _c = React.useState(), previewNode = _c[0], setPreviewNode = _c[1];
12105
- var _d = React.useState({
12104
+ var _c = React.useState({
12106
12105
  open: false,
12107
- }), alertDialogProps = _d[0], setAlertDialogProps = _d[1];
12106
+ }), alertDialogProps = _c[0], setAlertDialogProps = _c[1];
12108
12107
  var urlKit = React.useState(function () {
12109
12108
  if (window.URL)
12110
12109
  return window.URL;
12111
12110
  else if (window.webkitURL)
12112
12111
  return window.webkitURL;
12113
12112
  })[0];
12114
- // Effect ----------------------------------------------------------------------------------------------------------
12115
- React.useEffect(function () {
12116
- setPreviewNode(preview && value ? (React__default["default"].createElement("img", { className: 'preview-img', src: value, style: { maxHeight: previewMaxHeight || undefined }, alt: '' })) : undefined);
12117
- }, [value, preview, previewMaxHeight]);
12118
12113
  // Function --------------------------------------------------------------------------------------------------------
12119
12114
  var imageSizeCheck = React.useCallback(function (file) {
12120
12115
  if (imageSize && urlKit) {
@@ -12218,6 +12213,15 @@ styleInject(css_248z);var FormImageFile = React__default["default"].forwardRef(f
12218
12213
  });
12219
12214
  });
12220
12215
  }, [onLink, imageSizeCheck]);
12216
+ // Memo --------------------------------------------------------------------------------------------------------------
12217
+ var previewNode = React.useMemo(function () {
12218
+ if (preview && value) {
12219
+ return (React__default["default"].createElement("a", { href: value, target: '_blank' },
12220
+ React__default["default"].createElement(material.Tooltip, { title: React__default["default"].createElement("div", { style: { paddingTop: 3, paddingBottom: 3 } },
12221
+ React__default["default"].createElement("img", { src: value, style: { maxWidth: '100%', verticalAlign: 'middle' } })) },
12222
+ React__default["default"].createElement("img", { className: 'preview-img', src: value, style: { maxHeight: previewMaxHeight || undefined }, alt: '' }))));
12223
+ }
12224
+ }, [preview, previewMaxHeight, value]);
12221
12225
  // Render ----------------------------------------------------------------------------------------------------------
12222
12226
  return (React__default["default"].createElement(React__default["default"].Fragment, null,
12223
12227
  React__default["default"].createElement(FormFile, __assign$6({ ref: ref, className: classNames$1(className, 'FormImageFile'), value: value, preview: previewNode, onChange: handleChange, onFile: handleFile, onLink: handleLink }, props)),
@@ -12378,6 +12382,87 @@ SearchGroup.defaultProps = SearchGroupDefaultProps;var SearchButtonDefaultProps
12378
12382
  // Render ----------------------------------------------------------------------------------------------------------
12379
12383
  return (React__default["default"].createElement(FormButton, __assign$6({ className: classNames$1(className, 'SearchButton'), size: 'medium', sx: sx, fullWidth: false, startIcon: startIcon, endIcon: endIcon, icon: icon }, props), children));
12380
12384
  };
12381
- SearchButton.defaultProps = SearchButtonDefaultProps;dayjs__default["default"].extend(dayjsIsSameOrAfter__default["default"]);
12385
+ SearchButton.defaultProps = SearchButtonDefaultProps;var SearchMenuButtonDefaultProps = {};var SearchMenuButton = function (_a) {
12386
+ // ID ----------------------------------------------------------------------------------------------------------------
12387
+ var children = _a.children, className = _a.className, initSx = _a.sx, menuList = _a.menuList, startIcon = _a.startIcon, icon = _a.icon, placement = _a.placement, props = __rest$3(_a, ["children", "className", "sx", "menuList", "startIcon", "icon", "placement"]);
12388
+ var buttonId = React.useId();
12389
+ var menuId = React.useId();
12390
+ // State -------------------------------------------------------------------------------------------------------------
12391
+ var _b = React.useState(null), anchorEl = _b[0], setAnchorEl = _b[1];
12392
+ var _c = React.useState('ArrowDropDown'), endIcon = _c[0], setEndIcon = _c[1];
12393
+ // Event Handler -----------------------------------------------------------------------------------------------------
12394
+ var handleClick = React.useCallback(function (e) {
12395
+ setAnchorEl(e.currentTarget);
12396
+ setEndIcon('ArrowDropUp');
12397
+ }, []);
12398
+ var handleClose = React.useCallback(function () {
12399
+ setAnchorEl(null);
12400
+ setEndIcon('ArrowDropDown');
12401
+ }, []);
12402
+ // Memo --------------------------------------------------------------------------------------------------------------
12403
+ var open = React.useMemo(function () { return !!anchorEl; }, [anchorEl]);
12404
+ var sx = React.useMemo(function () { return (__assign$6({ minWidth: 0, px: !startIcon && !endIcon && !icon ? 1.2 : 1.7 }, initSx)); }, [endIcon, icon, initSx, startIcon]);
12405
+ var anchorOrigin = React.useMemo(function () {
12406
+ switch (placement || 'bottom') {
12407
+ case 'bottom':
12408
+ return { vertical: 'bottom', horizontal: 'center' };
12409
+ case 'bottom-left':
12410
+ return { vertical: 'bottom', horizontal: 'left' };
12411
+ case 'bottom-right':
12412
+ return { vertical: 'bottom', horizontal: 'right' };
12413
+ case 'top':
12414
+ return { vertical: 'top', horizontal: 'center' };
12415
+ case 'top-left':
12416
+ return { vertical: 'top', horizontal: 'left' };
12417
+ case 'top-right':
12418
+ return { vertical: 'top', horizontal: 'right' };
12419
+ case 'left':
12420
+ return { vertical: 'center', horizontal: 'left' };
12421
+ case 'left-top':
12422
+ return { vertical: 'top', horizontal: 'left' };
12423
+ case 'left-bottom':
12424
+ return { vertical: 'bottom', horizontal: 'left' };
12425
+ case 'right':
12426
+ return { vertical: 'center', horizontal: 'right' };
12427
+ case 'right-top':
12428
+ return { vertical: 'top', horizontal: 'right' };
12429
+ case 'right-bottom':
12430
+ return { vertical: 'bottom', horizontal: 'right' };
12431
+ }
12432
+ }, [placement]);
12433
+ var transformOrigin = React.useMemo(function () {
12434
+ switch (placement || 'bottom') {
12435
+ case 'bottom':
12436
+ return { vertical: 'top', horizontal: 'center' };
12437
+ case 'bottom-left':
12438
+ return { vertical: 'top', horizontal: 'left' };
12439
+ case 'bottom-right':
12440
+ return { vertical: 'top', horizontal: 'right' };
12441
+ case 'top':
12442
+ return { vertical: 'bottom', horizontal: 'center' };
12443
+ case 'top-left':
12444
+ return { vertical: 'bottom', horizontal: 'left' };
12445
+ case 'top-right':
12446
+ return { vertical: 'bottom', horizontal: 'right' };
12447
+ case 'left':
12448
+ return { vertical: 'center', horizontal: 'right' };
12449
+ case 'left-top':
12450
+ return { vertical: 'top', horizontal: 'right' };
12451
+ case 'left-bottom':
12452
+ return { vertical: 'bottom', horizontal: 'right' };
12453
+ case 'right':
12454
+ return { vertical: 'center', horizontal: 'left' };
12455
+ case 'right-top':
12456
+ return { vertical: 'top', horizontal: 'left' };
12457
+ case 'right-bottom':
12458
+ return { vertical: 'bottom', horizontal: 'left' };
12459
+ }
12460
+ }, [placement]);
12461
+ // Render ----------------------------------------------------------------------------------------------------------
12462
+ return (React__default["default"].createElement(React__default["default"].Fragment, null,
12463
+ React__default["default"].createElement(FormButton, __assign$6({ className: classNames$1(className, 'SearchMenuButton'), size: 'medium', sx: sx, fullWidth: false, startIcon: startIcon, icon: icon }, props, { id: buttonId, "aria-controls": open ? menuId : undefined, "aria-haspopup": 'true', "aria-expanded": open ? 'true' : undefined, endIcon: endIcon, onClick: handleClick }), children),
12464
+ React__default["default"].createElement(material.Menu, { id: menuId, "aria-labelledby": buttonId, anchorEl: anchorEl, open: open, onClose: handleClose, onClick: handleClose, anchorOrigin: anchorOrigin, transformOrigin: transformOrigin }, menuList)));
12465
+ };
12466
+ SearchMenuButton.defaultProps = SearchMenuButtonDefaultProps;dayjs__default["default"].extend(dayjsIsSameOrAfter__default["default"]);
12382
12467
  dayjs__default["default"].extend(dayjsIsSameOrBefore__default["default"]);
12383
- dayjs__default["default"].extend(dayjsIsBetween__default["default"]);exports.Form=Form;exports.FormAutocomplete=FormAutocomplete;exports.FormAutocompleteDefaultProps=FormAutocompleteDefaultProps;exports.FormBlock=FormBlock;exports.FormBlockDefaultProps=FormBlockDefaultProps;exports.FormBody=FormBody;exports.FormBodyDefaultProps=FormBodyDefaultProps;exports.FormButton=FormButton;exports.FormButtonDefaultProps=FormButtonDefaultProps;exports.FormCheckbox=FormCheckbox;exports.FormCheckboxDefaultProps=FormCheckboxDefaultProps;exports.FormCol=FormCol;exports.FormColDefaultProps=FormColDefaultProps;exports.FormContext=FormContext;exports.FormContextDefaultValue=FormContextDefaultValue;exports.FormContextProvider=FormContextProvider;exports.FormDatePicker=FormDatePicker;exports.FormDatePickerDefaultProps=FormDatePickerDefaultProps;exports.FormDateRangePicker=FormDateRangePicker;exports.FormDateRangePickerDefaultProps=FormDateRangePickerDefaultProps;exports.FormDateTimePicker=FormDateTimePicker;exports.FormDateTimePickerDefaultProps=FormDateTimePickerDefaultProps;exports.FormDefaultProps=FormDefaultProps;exports.FormDivider=FormDivider;exports.FormDividerDefaultProps=FormDividerDefaultProps;exports.FormEmail=FormEmail;exports.FormEmailDefaultProps=FormEmailDefaultProps;exports.FormFile=FormFile;exports.FormFileDefaultProps=FormFileDefaultProps;exports.FormFooter=FormFooter;exports.FormFooterDefaultProps=FormFooterDefaultProps;exports.FormHidden=FormHidden;exports.FormHiddenDefaultProps=FormHiddenDefaultProps;exports.FormIcon=FormIcon;exports.FormIconDefaultProps=FormIconDefaultProps;exports.FormImageFile=FormImageFile;exports.FormImageFileDefaultProps=FormImageFileDefaultProps;exports.FormLabel=FormLabel;exports.FormLabelDefaultProps=FormLabelDefaultProps;exports.FormMobile=FormMobile;exports.FormMobileDefaultProps=FormMobileDefaultProps;exports.FormNumber=FormNumber;exports.FormNumberDefaultProps=FormNumberDefaultProps;exports.FormPassword=FormPassword;exports.FormPasswordDefaultProps=FormPasswordDefaultProps;exports.FormRadioGroup=FormRadioGroup;exports.FormRadioGroupDefaultProps=FormRadioGroupDefaultProps;exports.FormRating=FormRating;exports.FormRatingDefaultProps=FormRatingDefaultProps;exports.FormRow=FormRow;exports.FormRowDefaultProps=FormRowDefaultProps;exports.FormSearch=FormSearch;exports.FormSearchDefaultProps=FormSearchDefaultProps;exports.FormSelect=FormSelect;exports.FormSelectDefaultProps=FormSelectDefaultProps;exports.FormTag=FormTag;exports.FormTagDefaultProps=FormTagDefaultProps;exports.FormTel=FormTel;exports.FormTelDefaultProps=FormTelDefaultProps;exports.FormText=FormText;exports.FormTextDefaultProps=FormTextDefaultProps;exports.FormTextEditor=FormTextEditor;exports.FormTextEditorDefaultProps=FormTextEditorDefaultProps;exports.FormTextField=FormTextField;exports.FormTextFieldDefaultProps=FormTextFieldDefaultProps;exports.FormTextarea=FormTextarea;exports.FormTextareaDefaultProps=FormTextareaDefaultProps;exports.FormTimePicker=FormTimePicker;exports.FormTimePickerDefaultProps=FormTimePickerDefaultProps;exports.FormToggleButtonGroup=FormToggleButtonGroup;exports.FormToggleButtonGroupDefaultProps=FormToggleButtonGroupDefaultProps;exports.FormUrl=FormUrl;exports.FormUrlDefaultProps=FormUrlDefaultProps;exports.Search=Search;exports.SearchButton=SearchButton;exports.SearchButtonDefaultProps=SearchButtonDefaultProps;exports.SearchDefaultProps=SearchDefaultProps;exports.SearchGroup=SearchGroup;exports.SearchGroupDefaultProps=SearchGroupDefaultProps;exports.SearchGroupRow=SearchGroupRow;exports.SearchGroupRowDefaultProps=SearchGroupRowDefaultProps;exports.useFormState=useFormState;//# sourceMappingURL=index.js.map
12468
+ dayjs__default["default"].extend(dayjsIsBetween__default["default"]);exports.Form=Form;exports.FormAutocomplete=FormAutocomplete;exports.FormAutocompleteDefaultProps=FormAutocompleteDefaultProps;exports.FormBlock=FormBlock;exports.FormBlockDefaultProps=FormBlockDefaultProps;exports.FormBody=FormBody;exports.FormBodyDefaultProps=FormBodyDefaultProps;exports.FormButton=FormButton;exports.FormButtonDefaultProps=FormButtonDefaultProps;exports.FormCheckbox=FormCheckbox;exports.FormCheckboxDefaultProps=FormCheckboxDefaultProps;exports.FormCol=FormCol;exports.FormColDefaultProps=FormColDefaultProps;exports.FormContext=FormContext;exports.FormContextDefaultValue=FormContextDefaultValue;exports.FormContextProvider=FormContextProvider;exports.FormDatePicker=FormDatePicker;exports.FormDatePickerDefaultProps=FormDatePickerDefaultProps;exports.FormDateRangePicker=FormDateRangePicker;exports.FormDateRangePickerDefaultProps=FormDateRangePickerDefaultProps;exports.FormDateTimePicker=FormDateTimePicker;exports.FormDateTimePickerDefaultProps=FormDateTimePickerDefaultProps;exports.FormDefaultProps=FormDefaultProps;exports.FormDivider=FormDivider;exports.FormDividerDefaultProps=FormDividerDefaultProps;exports.FormEmail=FormEmail;exports.FormEmailDefaultProps=FormEmailDefaultProps;exports.FormFile=FormFile;exports.FormFileDefaultProps=FormFileDefaultProps;exports.FormFooter=FormFooter;exports.FormFooterDefaultProps=FormFooterDefaultProps;exports.FormHidden=FormHidden;exports.FormHiddenDefaultProps=FormHiddenDefaultProps;exports.FormIcon=FormIcon;exports.FormIconDefaultProps=FormIconDefaultProps;exports.FormImageFile=FormImageFile;exports.FormImageFileDefaultProps=FormImageFileDefaultProps;exports.FormLabel=FormLabel;exports.FormLabelDefaultProps=FormLabelDefaultProps;exports.FormMobile=FormMobile;exports.FormMobileDefaultProps=FormMobileDefaultProps;exports.FormNumber=FormNumber;exports.FormNumberDefaultProps=FormNumberDefaultProps;exports.FormPassword=FormPassword;exports.FormPasswordDefaultProps=FormPasswordDefaultProps;exports.FormRadioGroup=FormRadioGroup;exports.FormRadioGroupDefaultProps=FormRadioGroupDefaultProps;exports.FormRating=FormRating;exports.FormRatingDefaultProps=FormRatingDefaultProps;exports.FormRow=FormRow;exports.FormRowDefaultProps=FormRowDefaultProps;exports.FormSearch=FormSearch;exports.FormSearchDefaultProps=FormSearchDefaultProps;exports.FormSelect=FormSelect;exports.FormSelectDefaultProps=FormSelectDefaultProps;exports.FormTag=FormTag;exports.FormTagDefaultProps=FormTagDefaultProps;exports.FormTel=FormTel;exports.FormTelDefaultProps=FormTelDefaultProps;exports.FormText=FormText;exports.FormTextDefaultProps=FormTextDefaultProps;exports.FormTextEditor=FormTextEditor;exports.FormTextEditorDefaultProps=FormTextEditorDefaultProps;exports.FormTextField=FormTextField;exports.FormTextFieldDefaultProps=FormTextFieldDefaultProps;exports.FormTextarea=FormTextarea;exports.FormTextareaDefaultProps=FormTextareaDefaultProps;exports.FormTimePicker=FormTimePicker;exports.FormTimePickerDefaultProps=FormTimePickerDefaultProps;exports.FormToggleButtonGroup=FormToggleButtonGroup;exports.FormToggleButtonGroupDefaultProps=FormToggleButtonGroupDefaultProps;exports.FormUrl=FormUrl;exports.FormUrlDefaultProps=FormUrlDefaultProps;exports.Search=Search;exports.SearchButton=SearchButton;exports.SearchButtonDefaultProps=SearchButtonDefaultProps;exports.SearchDefaultProps=SearchDefaultProps;exports.SearchGroup=SearchGroup;exports.SearchGroupDefaultProps=SearchGroupDefaultProps;exports.SearchGroupRow=SearchGroupRow;exports.SearchGroupRowDefaultProps=SearchGroupRowDefaultProps;exports.SearchMenuButton=SearchMenuButton;exports.SearchMenuButtonDefaultProps=SearchMenuButtonDefaultProps;exports.useFormState=useFormState;//# sourceMappingURL=index.js.map