revdev-components 0.100.0 → 0.102.0

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.
@@ -0,0 +1 @@
1
+ export declare const CONSOLE_COLOR = "background:rgb(28, 46, 82); color:rgb(231, 231, 231)";
@@ -1,6 +1,7 @@
1
1
  import React from "react";
2
2
  import { FormInstance } from "antd/lib/form";
3
3
  import { FieldData } from "../interfaces";
4
+ type onValuesChangeType<T> = (changedValues: Partial<T>, values: T) => void;
4
5
  export interface FormOptions {
5
6
  valid: boolean;
6
7
  }
@@ -8,10 +9,12 @@ export interface AppFormProps<T = any> {
8
9
  children?: React.ReactNode | ((options: FormOptions) => React.ReactNode);
9
10
  className?: string;
10
11
  onFinish?: (values: T) => void;
11
- onValuesChange?: (changedValues: Partial<T>, values: T) => void;
12
+ onValuesChange?: onValuesChangeType<T>;
12
13
  onFieldsChange?: (changedFields: FieldData[], allFields: FieldData[]) => void;
13
14
  form?: FormInstance;
14
15
  onValid?: (valid: boolean) => void;
15
16
  initialValues?: Partial<T>;
17
+ debug?: boolean;
16
18
  }
17
- export declare function AppForm<T = any>({ form: propForm, children, className, onFinish, onValuesChange, onFieldsChange, onValid, initialValues, }: AppFormProps<T>): React.ReactElement<AppFormProps<T>>;
19
+ export declare function AppForm<T extends object = any>({ form: propForm, children, className, onFinish, onValuesChange, onFieldsChange, onValid, initialValues, debug, }: AppFormProps<T>): React.ReactElement<AppFormProps<T>>;
20
+ export {};
package/build/index.js CHANGED
@@ -4710,15 +4710,86 @@ var SocialIcon = function (props) {
4710
4710
 
4711
4711
  var s$s = {"root":"index-module_root__gtTIa","action":"index-module_action__pOSde"};
4712
4712
 
4713
+ var CONSOLE_COLOR = "background:rgb(28, 46, 82); color:rgb(231, 231, 231)";
4714
+
4715
+ // export function useDebounceCallback<T extends (...args: any[]) => any>(delay: number, callback: T, deps: DependencyList = []): DebouncedFunc<T> {
4716
+ // return useCallback(debounce(callback, delay), deps);
4717
+ // }
4718
+ var useDebounceEffect = function (delay, effect, deps) {
4719
+ if (deps === void 0) { deps = []; }
4720
+ React.useEffect(function () {
4721
+ var handler = setTimeout(function () { return effect(); }, delay);
4722
+ return function () { return clearTimeout(handler); };
4723
+ }, __spreadArray(__spreadArray([], (deps || []), true), [delay], false));
4724
+ };
4725
+
4726
+ function useAppFormRules() {
4727
+ return React.useMemo(function () {
4728
+ return {
4729
+ required: function (message) { return ({ required: true, message: message }); },
4730
+ email: function (message) { return ({ type: "email", message: message }); },
4731
+ onlyNumber: function (message) { return ({ pattern: /^(\d*[.])?\d+$/i, message: message }); },
4732
+ onlyPositiveInteger: function (message) { return ({ pattern: /^\d+$/i, message: message }); },
4733
+ onlyKey: function (message) { return ({ pattern: /^([a-z\d]*[-])*[a-z\d]+$/i, message: message }); },
4734
+ maxLength: function (message, length) { return ({ max: length, message: message }); },
4735
+ minLength: function (message, length) { return ({ min: length, message: message }); },
4736
+ length: function (message, length) { return ({ len: length, message: message }); },
4737
+ };
4738
+ }, []);
4739
+ }
4740
+
4741
+ function useFormValues() {
4742
+ var _a = React.useState({}), values = _a[0], setValues = _a[1];
4743
+ var handleChange = React.useCallback(function (_value, allValues) {
4744
+ setValues(allValues);
4745
+ }, []);
4746
+ return [values, handleChange];
4747
+ }
4748
+ function useFormValid() {
4749
+ var _a = React.useState(false), valid = _a[0], setValid = _a[1];
4750
+ var handleValid = React.useCallback(function (newValid) {
4751
+ setValid(newValid);
4752
+ }, []);
4753
+ return [valid, handleValid];
4754
+ }
4755
+
4756
+ function useDidMount() {
4757
+ var _a = React.useState(false), mount = _a[0], setMount = _a[1];
4758
+ React.useEffect(function () {
4759
+ setMount(true);
4760
+ }, []);
4761
+ return mount;
4762
+ }
4763
+ function usePrevious(value) {
4764
+ var ref = React.useRef();
4765
+ React.useEffect(function () {
4766
+ ref.current = value;
4767
+ }, [value]);
4768
+ return ref === null || ref === void 0 ? void 0 : ref.current;
4769
+ }
4770
+
4771
+ function useRouterQuery() {
4772
+ var query = router.useRouter().query;
4773
+ return query;
4774
+ }
4775
+
4776
+ function useSuccessMutation(response, successCallback) {
4777
+ React.useEffect(function () {
4778
+ if (response.isSuccess) {
4779
+ successCallback();
4780
+ }
4781
+ }, [response.isSuccess]);
4782
+ }
4783
+
4713
4784
  function useForm(form) {
4714
4785
  var newForm = antd.Form.useForm()[0];
4715
4786
  return form ? form : newForm;
4716
4787
  }
4717
4788
  function AppForm(_a) {
4718
- var propForm = _a.form, children = _a.children, className = _a.className, onFinish = _a.onFinish, onValuesChange = _a.onValuesChange, onFieldsChange = _a.onFieldsChange, onValid = _a.onValid, initialValues = _a.initialValues;
4789
+ var propForm = _a.form, children = _a.children, className = _a.className, onFinish = _a.onFinish, onValuesChange = _a.onValuesChange, onFieldsChange = _a.onFieldsChange, onValid = _a.onValid, initialValues = _a.initialValues, debug = _a.debug;
4719
4790
  var form = useForm(propForm);
4720
4791
  var _b = React.useState(false), valid = _b[0], setValid = _b[1];
4721
- var values = antd.Form.useWatch([], form);
4792
+ var _c = useFormValues(), values = _c[0], setValues = _c[1];
4722
4793
  React.useEffect(function () {
4723
4794
  form
4724
4795
  .validateFields({ validateOnly: true })
@@ -4726,9 +4797,19 @@ function AppForm(_a) {
4726
4797
  .catch(function () { return setValid(false); });
4727
4798
  }, [form, values]);
4728
4799
  React.useEffect(function () {
4800
+ if (debug) {
4801
+ console.info("%cform", CONSOLE_COLOR, "valid", valid);
4802
+ }
4729
4803
  onValid === null || onValid === void 0 ? void 0 : onValid(valid);
4730
4804
  }, [onValid, valid]);
4731
- return (React.createElement(antd.Form, { form: form, onFinish: onFinish, className: classNames(s$s.root, className), layout: "vertical", onValuesChange: onValuesChange, onFieldsChange: onFieldsChange, initialValues: initialValues }, typeof children === "function" ? children({ valid: valid }) : children));
4805
+ React.useEffect(function () {
4806
+ console.info("%cform", CONSOLE_COLOR, "values", values);
4807
+ }, [values]);
4808
+ var handleValuesChange = React.useCallback(function (changedValues, values) {
4809
+ setValues(changedValues, values);
4810
+ onValuesChange === null || onValuesChange === void 0 ? void 0 : onValuesChange(changedValues, values);
4811
+ }, [setValues, onValuesChange]);
4812
+ return (React.createElement(antd.Form, { form: form, onFinish: onFinish, className: classNames(s$s.root, className), layout: "vertical", onValuesChange: handleValuesChange, onFieldsChange: onFieldsChange, initialValues: initialValues }, typeof children === "function" ? children({ valid: valid }) : children));
4732
4813
  }
4733
4814
 
4734
4815
  var s$r = {"root":"index-module_root__2S1Jp"};
@@ -4823,75 +4904,6 @@ var SwitchField = function (props) {
4823
4904
  React.createElement(SwitchFieldControl, __assign({}, controlProps))));
4824
4905
  };
4825
4906
 
4826
- // export function useDebounceCallback<T extends (...args: any[]) => any>(delay: number, callback: T, deps: DependencyList = []): DebouncedFunc<T> {
4827
- // return useCallback(debounce(callback, delay), deps);
4828
- // }
4829
- var useDebounceEffect = function (delay, effect, deps) {
4830
- if (deps === void 0) { deps = []; }
4831
- React.useEffect(function () {
4832
- var handler = setTimeout(function () { return effect(); }, delay);
4833
- return function () { return clearTimeout(handler); };
4834
- }, __spreadArray(__spreadArray([], (deps || []), true), [delay], false));
4835
- };
4836
-
4837
- function useAppFormRules() {
4838
- return React.useMemo(function () {
4839
- return {
4840
- required: function (message) { return ({ required: true, message: message }); },
4841
- email: function (message) { return ({ type: "email", message: message }); },
4842
- onlyNumber: function (message) { return ({ pattern: /^(\d*[.])?\d+$/i, message: message }); },
4843
- onlyPositiveInteger: function (message) { return ({ pattern: /^\d+$/i, message: message }); },
4844
- onlyKey: function (message) { return ({ pattern: /^([a-z\d]*[-])*[a-z\d]+$/i, message: message }); },
4845
- maxLength: function (message, length) { return ({ max: length, message: message }); },
4846
- minLength: function (message, length) { return ({ min: length, message: message }); },
4847
- length: function (message, length) { return ({ len: length, message: message }); },
4848
- };
4849
- }, []);
4850
- }
4851
-
4852
- function useFormValues() {
4853
- var _a = React.useState({}), values = _a[0], setValues = _a[1];
4854
- var handleChange = React.useCallback(function (_value, allValues) {
4855
- setValues(allValues);
4856
- }, []);
4857
- return [values, handleChange];
4858
- }
4859
- function useFormValid() {
4860
- var _a = React.useState(false), valid = _a[0], setValid = _a[1];
4861
- var handleValid = React.useCallback(function (newValid) {
4862
- setValid(newValid);
4863
- }, []);
4864
- return [valid, handleValid];
4865
- }
4866
-
4867
- function useDidMount() {
4868
- var _a = React.useState(false), mount = _a[0], setMount = _a[1];
4869
- React.useEffect(function () {
4870
- setMount(true);
4871
- }, []);
4872
- return mount;
4873
- }
4874
- function usePrevious(value) {
4875
- var ref = React.useRef();
4876
- React.useEffect(function () {
4877
- ref.current = value;
4878
- }, [value]);
4879
- return ref === null || ref === void 0 ? void 0 : ref.current;
4880
- }
4881
-
4882
- function useRouterQuery() {
4883
- var query = router.useRouter().query;
4884
- return query;
4885
- }
4886
-
4887
- function useSuccessMutation(response, successCallback) {
4888
- React.useEffect(function () {
4889
- if (response.isSuccess) {
4890
- successCallback();
4891
- }
4892
- }, [response.isSuccess]);
4893
- }
4894
-
4895
4907
  var s$n = {"root":"index-module_root__9GQDU"};
4896
4908
 
4897
4909
  var FormButton = function (_a) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "revdev-components",
3
- "version": "0.100.0",
3
+ "version": "0.102.0",
4
4
  "main": "build/index.js",
5
5
  "module": "build/index.esm.js",
6
6
  "scripts": {