@itcase/forms 1.0.75 → 1.0.77

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.
@@ -830,13 +830,22 @@ function DatePickerField(props) {
830
830
  * custom React Hook function.
831
831
  */
832
832
 
833
- const onChangeField = React.useCallback((firstDate, secondDate) => {
834
- input.onChange(firstDate);
833
+ const onChangeField = React.useCallback((startDate, endDate) => {
834
+ if (!datePickerProps.selectsRange) {
835
+ // When we need to save single date, value is date
836
+ // TODO: make object with one date? need to check all forms with DatePickerField
837
+ input.onChange(startDate);
838
+ } else {
839
+ // When we need to save range, value is object with two date
840
+ input.onChange({
841
+ startDate,
842
+ endDate
843
+ });
844
+ }
835
845
  if (onChange) {
836
- // TODO: check all DatePickerField's pn all project to change variable places
837
- onChange(firstDate, input.name, secondDate);
846
+ onChange(startDate, endDate);
838
847
  }
839
- }, [onChange, input.onChange]);
848
+ }, [input.onChange, onChange]);
840
849
  const {
841
850
  isErrorState,
842
851
  isValidState,
@@ -870,7 +879,8 @@ function DatePickerField(props) {
870
879
  inputProps: updatedInputProps,
871
880
  isDisabled: isDisabled,
872
881
  name: input.name,
873
- value: input.value || '',
882
+ value: datePickerProps.selectsRange ? input.value.startDate : input.value,
883
+ endValue: datePickerProps.selectsRange ? input.value.endDate : null,
874
884
  onBlur: input.onBlur,
875
885
  onChange: onChangeField,
876
886
  onFocus: input.onFocus
@@ -1675,8 +1685,8 @@ InputField.propTypes = {
1675
1685
  iconFillHover: PropTypes__default.default.string,
1676
1686
  iconRevealableHide: PropTypes__default.default.oneOfType([PropTypes__default.default.elementType, PropTypes__default.default.func, PropTypes__default.default.object]),
1677
1687
  iconRevealableShow: PropTypes__default.default.oneOfType([PropTypes__default.default.elementType, PropTypes__default.default.func, PropTypes__default.default.object]),
1678
- iconShape: PropTypes__default.default.string,
1679
- iconSize: PropTypes__default.default.string,
1688
+ // iconShape: PropTypes.oneOf(shapeProps),
1689
+ // iconSize: PropTypes.oneOf(iconSizeProps),
1680
1690
  initialValue: PropTypes__default.default.oneOfType([PropTypes__default.default.string, PropTypes__default.default.number]),
1681
1691
  inputProps: PropTypes__default.default.object,
1682
1692
  name: PropTypes__default.default.string.isRequired,
@@ -818,13 +818,22 @@ function DatePickerField(props) {
818
818
  * custom React Hook function.
819
819
  */
820
820
 
821
- const onChangeField = useCallback((firstDate, secondDate) => {
822
- input.onChange(firstDate);
821
+ const onChangeField = useCallback((startDate, endDate) => {
822
+ if (!datePickerProps.selectsRange) {
823
+ // When we need to save single date, value is date
824
+ // TODO: make object with one date? need to check all forms with DatePickerField
825
+ input.onChange(startDate);
826
+ } else {
827
+ // When we need to save range, value is object with two date
828
+ input.onChange({
829
+ startDate,
830
+ endDate
831
+ });
832
+ }
823
833
  if (onChange) {
824
- // TODO: check all DatePickerField's pn all project to change variable places
825
- onChange(firstDate, input.name, secondDate);
834
+ onChange(startDate, endDate);
826
835
  }
827
- }, [onChange, input.onChange]);
836
+ }, [input.onChange, onChange]);
828
837
  const {
829
838
  isErrorState,
830
839
  isValidState,
@@ -858,7 +867,8 @@ function DatePickerField(props) {
858
867
  inputProps: updatedInputProps,
859
868
  isDisabled: isDisabled,
860
869
  name: input.name,
861
- value: input.value || '',
870
+ value: datePickerProps.selectsRange ? input.value.startDate : input.value,
871
+ endValue: datePickerProps.selectsRange ? input.value.endDate : null,
862
872
  onBlur: input.onBlur,
863
873
  onChange: onChangeField,
864
874
  onFocus: input.onFocus
@@ -1663,8 +1673,8 @@ InputField.propTypes = {
1663
1673
  iconFillHover: PropTypes.string,
1664
1674
  iconRevealableHide: PropTypes.oneOfType([PropTypes.elementType, PropTypes.func, PropTypes.object]),
1665
1675
  iconRevealableShow: PropTypes.oneOfType([PropTypes.elementType, PropTypes.func, PropTypes.object]),
1666
- iconShape: PropTypes.string,
1667
- iconSize: PropTypes.string,
1676
+ // iconShape: PropTypes.oneOf(shapeProps),
1677
+ // iconSize: PropTypes.oneOf(iconSizeProps),
1668
1678
  initialValue: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
1669
1679
  inputProps: PropTypes.object,
1670
1680
  name: PropTypes.string.isRequired,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@itcase/forms",
3
- "version": "1.0.75",
3
+ "version": "1.0.77",
4
4
  "description": "Forms fields, inputs, etc.",
5
5
  "keywords": [],
6
6
  "license": "MIT",
@@ -31,19 +31,19 @@
31
31
  },
32
32
  "dependencies": {
33
33
  "@itcase/common": "^1.2.17",
34
- "@itcase/ui": "^1.3.12",
34
+ "@itcase/ui": "^1.3.14",
35
35
  "axios": "^1.7.9",
36
36
  "clsx": "^2.1.1",
37
37
  "final-form": "^4.20.10",
38
38
  "final-form-focus": "^1.1.2",
39
- "libphonenumber-js": "^1.11.17",
39
+ "libphonenumber-js": "^1.11.18",
40
40
  "lodash": "^4.17.21",
41
41
  "luxon": "^3.5.0",
42
- "postcss": "^8.4.49",
42
+ "postcss": "^8.5.1",
43
43
  "prop-types": "^15.8.1",
44
44
  "react": "^18.3.1",
45
45
  "react-date-range": "^2.0.1",
46
- "react-datepicker": "^7.5.0",
46
+ "react-datepicker": "^7.6.0",
47
47
  "react-dom": "^18.3.1",
48
48
  "react-dropzone": "^14.3.5",
49
49
  "react-final-form": "^6.5.9",
@@ -51,16 +51,16 @@
51
51
  "react-select": "^5.9.0"
52
52
  },
53
53
  "devDependencies": {
54
- "@itcase/lint": "^1.0.35",
54
+ "@itcase/lint": "^1.0.36",
55
55
  "@babel/core": "^7.26.0",
56
- "@babel/eslint-parser": "^7.25.9",
56
+ "@babel/eslint-parser": "^7.26.5",
57
57
  "@babel/preset-env": "^7.26.0",
58
58
  "@babel/preset-react": "^7.26.3",
59
59
  "@commitlint/cli": "^19.6.1",
60
60
  "@commitlint/config-conventional": "^19.6.0",
61
- "@eslint/compat": "^1.2.4",
61
+ "@eslint/compat": "^1.2.5",
62
62
  "@eslint/eslintrc": "^3.2.0",
63
- "@ianvs/prettier-plugin-sort-imports": "^4.4.0",
63
+ "@ianvs/prettier-plugin-sort-imports": "^4.4.1",
64
64
  "@rollup/plugin-babel": "^6.0.4",
65
65
  "@rollup/plugin-commonjs": "^28.0.2",
66
66
  "@rollup/plugin-json": "^6.1.0",
@@ -68,26 +68,26 @@
68
68
  "@rollup/plugin-terser": "^0.4.4",
69
69
  "@semantic-release/changelog": "^6.0.3",
70
70
  "@semantic-release/git": "^10.0.1",
71
- "@semantic-release/release-notes-generator": "14.0.2",
71
+ "@semantic-release/release-notes-generator": "14.0.3",
72
72
  "@types/react": "^18",
73
73
  "@types/react-dom": "^18.3.1",
74
74
  "babel-plugin-inline-react-svg": "^2.0.2",
75
75
  "babel-plugin-transform-react-remove-prop-types": "^0.4.24",
76
76
  "conventional-changelog-conventionalcommits": "^8.0.0",
77
- "eslint": "9.17.0",
78
- "eslint-config-prettier": "9.1.0",
77
+ "eslint": "9.18.0",
78
+ "eslint-config-prettier": "10.0.1",
79
79
  "eslint-config-standard": "17.1.0",
80
80
  "eslint-plugin-babel": "5.3.1",
81
81
  "eslint-plugin-import": "2.31.0",
82
82
  "eslint-plugin-n": "17.15.1",
83
83
  "eslint-plugin-node": "11.1.0",
84
- "eslint-plugin-prettier": "5.2.1",
84
+ "eslint-plugin-prettier": "5.2.3",
85
85
  "eslint-plugin-promise": "7.2.1",
86
- "eslint-plugin-react": "7.37.3",
86
+ "eslint-plugin-react": "7.37.4",
87
87
  "eslint-plugin-react-hooks": "5.1.0",
88
88
  "eslint-plugin-standard": "5.0.0",
89
89
  "husky": "^9.1.7",
90
- "lint-staged": "^15.3.0",
90
+ "lint-staged": "^15.4.1",
91
91
  "npm": "^11.0.0",
92
92
  "postcss-aspect-ratio-polyfill": "^2.0.0",
93
93
  "postcss-cli": "^11.0.0",
@@ -111,13 +111,13 @@
111
111
  "postcss-responsive-type": "github:ITCase/postcss-responsive-type",
112
112
  "postcss-sort-media-queries": "^5.2.0",
113
113
  "prettier": "3.4.2",
114
- "rollup": "^4.29.1",
114
+ "rollup": "^4.31.0",
115
115
  "rollup-plugin-peer-deps-external": "^2.2.4",
116
- "semantic-release": "^24.2.0",
117
- "stylelint": "^16.12.0",
118
- "stylelint-config-standard": "^36.0.1",
116
+ "semantic-release": "^24.2.1",
117
+ "stylelint": "^16.13.2",
118
+ "stylelint-config-standard": "^37.0.0",
119
119
  "stylelint-no-unsupported-browser-features": "^8.0.2",
120
120
  "stylelint-order": "^6.0.4",
121
- "typescript": "^5.7.2"
121
+ "typescript": "^5.7.3"
122
122
  }
123
123
  }