@os-design/form 1.0.60 → 1.0.62

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/cjs/index.js CHANGED
@@ -69,8 +69,8 @@ Object.keys(_types).forEach(function (key) {
69
69
  }
70
70
  });
71
71
  });
72
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
73
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
72
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
73
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
74
74
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
75
75
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
76
76
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","require","_Form","_interopRequireDefault","_useFormContext","_interopRequireWildcard","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_isEqual","_path","_useDeepEqualMemo","_BroadcastObserverManager","_ErrorObserverManager","_types","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","i","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","toString","slice","constructor","name","test","len","length","arr2","r","l","t","e","u","a","f","next","done","push","value","createUseValueHook","form","_useState","useState","values","_useState2","setValue","useEffect","subscription","subscribe","v","unsubscribe","createUseErrorHook","_useState3","errors","_useState4","createUseTransformerHook","useValue","transformer","shouldTransformRef","useRef","transformerRef","current","partialValues","entries","_ref","_ref2","createFieldComponent","useError","props","data","_props$transformer","render","error","initValue","useMemo","initValues","modified","isEqual","reset","useCallback","onChange","undefined","renderRef","inputProps","fieldState","memoizedData","useDeepEqualMemo","useModifiedFields","_useState5","_useState6","modifiedFields","setModifiedFields","modifiedFieldsRef","initValuesRef","subscribeToAll","isInitValue","fields","includes","filter","field","concat","useFormResponse","Field","useTransformer","useForm","memoizedInitValues","formRef","Form","useExistingForm","useFormContext","Error"],"sources":["../../src/index.tsx"],"sourcesContent":["import {\n ReactElement,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport Form from './Form';\nimport { Path, PathReturn, Values } from './types';\nimport useFormContext from './useFormContext';\nimport isEqual from './utils/isEqual';\nimport { get } from './utils/path';\nimport useDeepEqualMemo from './utils/useDeepEqualMemo';\n\nexport * from './BroadcastObserverManager';\nexport * from './ErrorObserverManager';\nexport { default as Form } from './Form';\nexport * from './types';\nexport * from './useFormContext';\n\nconst createUseValueHook =\n <TValues extends Values>(form: Form<TValues>) =>\n <TName extends Path<TValues>>(name: TName) => {\n const [value, setValue] = useState<PathReturn<TValues, TName>>(\n form.values.get(name)\n );\n\n useEffect(() => {\n const subscription = form.values.subscribe(name, (v) => {\n setValue(v);\n });\n return () => subscription.unsubscribe();\n }, [name]);\n\n return value;\n };\n\nconst createUseErrorHook =\n <TValues extends Values>(form: Form<TValues>) =>\n <TName extends Path<TValues>>(name: TName) => {\n const [value, setValue] = useState<string | undefined>(\n form.errors.get(name)\n );\n\n useEffect(() => {\n const subscription = form.errors.subscribe(name, (v) => {\n setValue(v);\n });\n return () => subscription.unsubscribe();\n }, [name]);\n\n return value;\n };\n\nexport type Transformer<TValues extends Values, TName extends Path<TValues>> = (\n value: PathReturn<TValues, TName>\n) => {\n [K in Path<TValues>]?: PathReturn<TValues, K>;\n};\n\nconst createUseTransformerHook = <TValues extends Values>(\n form: Form<TValues>\n) => {\n const useValue = createUseValueHook(form);\n return <TName extends Path<TValues>>(\n name: TName,\n transformer: Transformer<TValues, TName>\n ) => {\n const value = useValue(name);\n const shouldTransformRef = useRef(false);\n\n const transformerRef = useRef(transformer);\n useEffect(() => {\n transformerRef.current = transformer;\n }, [transformer]);\n\n useEffect(() => {\n if (shouldTransformRef.current) {\n const partialValues = transformerRef.current(value);\n Object.entries(partialValues).forEach(([n, v]) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n form.values.set(n as Path<TValues>, v as any);\n });\n } else {\n shouldTransformRef.current = true;\n }\n }, [value]);\n };\n};\n\ninterface InputProps<TValue> {\n value: TValue;\n onChange: (value: TValue) => void;\n}\ninterface FieldState {\n error?: string;\n modified: boolean;\n reset: () => void;\n}\ninterface FieldProps<TName, TValue, TData> {\n name: TName;\n data?: TData;\n transformer?: (value: TValue) => TValue;\n render: (\n inputProps: InputProps<TValue>,\n fieldState: FieldState,\n data: TData\n ) => ReactElement | null;\n}\n\nconst createFieldComponent = <TValues extends Values>(form: Form<TValues>) => {\n const useValue = createUseValueHook(form);\n const useError = createUseErrorHook(form);\n return <TName extends Path<TValues>, TData>(\n props: FieldProps<TName, PathReturn<TValues, TName>, TData>\n ) => {\n const { name, data, transformer = (v) => v, render } = props;\n\n const value = useValue(name);\n const error = useError(name);\n\n const initValue = useMemo(() => get(form.initValues, name), [name]);\n const modified = useMemo(\n () => !isEqual(value, initValue),\n [initValue, value]\n );\n const reset = useCallback(\n () => form.values.set(name, initValue),\n [initValue, name]\n );\n\n const transformerRef = useRef(transformer);\n useEffect(() => {\n transformerRef.current = transformer;\n }, [transformer]);\n\n const onChange = useCallback(\n (v: PathReturn<TValues, TName>) => {\n form.values.set(name, transformerRef.current(v));\n },\n [name]\n );\n\n // Reset the error when the value was changed\n useEffect(() => {\n form.errors.set(name, undefined);\n }, [name, value]);\n\n const renderRef = useRef(render);\n useEffect(() => {\n renderRef.current = render;\n }, [render]);\n\n const inputProps = useMemo(() => ({ value, onChange }), [onChange, value]);\n const fieldState = useMemo(\n () => ({ error, modified, reset }),\n [error, modified, reset]\n );\n\n const memoizedData = useDeepEqualMemo(() => data as TData, [data]);\n\n return useMemo(\n () => renderRef.current(inputProps, fieldState, memoizedData),\n [fieldState, inputProps, memoizedData]\n );\n };\n};\n\nconst useModifiedFields = <TValues extends Values>(form: Form<TValues>) => {\n const [modifiedFields, setModifiedFields] = useState<Array<Path<TValues>>>(\n []\n );\n\n const modifiedFieldsRef = useRef(modifiedFields);\n useEffect(() => {\n modifiedFieldsRef.current = modifiedFields;\n }, [modifiedFields]);\n\n const initValuesRef = useRef(form.initValues);\n useEffect(() => {\n initValuesRef.current = form.initValues;\n }, [form.initValues]);\n\n useEffect(() => {\n const subscription = form.values.subscribeToAll((name, value) => {\n const isInitValue = isEqual(value, get(initValuesRef.current, name));\n const fields = modifiedFieldsRef.current;\n\n if (fields.includes(name)) {\n if (isInitValue) {\n setModifiedFields(fields.filter((field) => field !== name));\n }\n } else if (!isInitValue) {\n setModifiedFields([...fields, name]);\n }\n });\n return () => subscription.unsubscribe();\n }, [form.values]);\n\n return modifiedFields;\n};\n\nconst useFormResponse = <TValues extends Values>(form: Form<TValues>) => {\n const Field = useMemo(() => createFieldComponent(form), [form]);\n const useValue = useMemo(() => createUseValueHook(form), [form]);\n const useError = useMemo(() => createUseErrorHook(form), [form]);\n const useTransformer = useMemo(() => createUseTransformerHook(form), [form]);\n\n const modifiedFields = useModifiedFields(form);\n const modified = useMemo(\n () => modifiedFields.length > 0,\n [modifiedFields.length]\n );\n\n return useMemo(\n () => ({\n form,\n Field,\n useValue,\n useError,\n useTransformer,\n modifiedFields,\n modified,\n }),\n [Field, form, modified, modifiedFields, useError, useTransformer, useValue]\n );\n};\n\nexport const useForm = <TValues extends Values = Values>(\n initValues: TValues\n) => {\n const memoizedInitValues = useDeepEqualMemo<TValues>(\n () => initValues,\n [initValues]\n );\n\n const formRef = useRef(new Form<TValues>(memoizedInitValues));\n useEffect(() => {\n formRef.current.initValues = memoizedInitValues;\n formRef.current.reset();\n }, [memoizedInitValues]);\n\n return useFormResponse(formRef.current);\n};\n\nexport const useExistingForm = <TValues extends Values = Values>() => {\n const form = useFormContext<Form<TValues> | null>();\n if (!form) throw new Error('Wrap your form in a FormProvider');\n return useFormResponse(form);\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_react","require","_Form","_interopRequireDefault","_useFormContext","_interopRequireWildcard","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_isEqual","_path","_useDeepEqualMemo","_BroadcastObserverManager","_ErrorObserverManager","_types","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set","obj","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","toString","slice","constructor","name","test","len","length","arr2","l","f","next","done","push","value","createUseValueHook","form","_useState","useState","values","_useState2","setValue","useEffect","subscription","subscribe","v","unsubscribe","createUseErrorHook","_useState3","errors","_useState4","createUseTransformerHook","useValue","transformer","shouldTransformRef","useRef","transformerRef","current","partialValues","entries","_ref","_ref2","createFieldComponent","useError","props","data","_props$transformer","render","error","initValue","useMemo","initValues","modified","isEqual","reset","useCallback","onChange","undefined","renderRef","inputProps","fieldState","memoizedData","useDeepEqualMemo","useModifiedFields","_useState5","_useState6","modifiedFields","setModifiedFields","modifiedFieldsRef","initValuesRef","subscribeToAll","isInitValue","fields","includes","filter","field","concat","useFormResponse","Field","useTransformer","useForm","memoizedInitValues","formRef","Form","useExistingForm","useFormContext","Error"],"sources":["../../src/index.tsx"],"sourcesContent":["import {\n ReactElement,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport Form from './Form';\nimport { Path, PathReturn, Values } from './types';\nimport useFormContext from './useFormContext';\nimport isEqual from './utils/isEqual';\nimport { get } from './utils/path';\nimport useDeepEqualMemo from './utils/useDeepEqualMemo';\n\nexport * from './BroadcastObserverManager';\nexport * from './ErrorObserverManager';\nexport { default as Form } from './Form';\nexport * from './types';\nexport * from './useFormContext';\n\nconst createUseValueHook =\n <TValues extends Values>(form: Form<TValues>) =>\n <TName extends Path<TValues>>(name: TName) => {\n const [value, setValue] = useState<PathReturn<TValues, TName>>(\n form.values.get(name)\n );\n\n useEffect(() => {\n const subscription = form.values.subscribe(name, (v) => {\n setValue(v);\n });\n return () => subscription.unsubscribe();\n }, [name]);\n\n return value;\n };\n\nconst createUseErrorHook =\n <TValues extends Values>(form: Form<TValues>) =>\n <TName extends Path<TValues>>(name: TName) => {\n const [value, setValue] = useState<string | undefined>(\n form.errors.get(name)\n );\n\n useEffect(() => {\n const subscription = form.errors.subscribe(name, (v) => {\n setValue(v);\n });\n return () => subscription.unsubscribe();\n }, [name]);\n\n return value;\n };\n\nexport type Transformer<TValues extends Values, TName extends Path<TValues>> = (\n value: PathReturn<TValues, TName>\n) => {\n [K in Path<TValues>]?: PathReturn<TValues, K>;\n};\n\nconst createUseTransformerHook = <TValues extends Values>(\n form: Form<TValues>\n) => {\n const useValue = createUseValueHook(form);\n return <TName extends Path<TValues>>(\n name: TName,\n transformer: Transformer<TValues, TName>\n ) => {\n const value = useValue(name);\n const shouldTransformRef = useRef(false);\n\n const transformerRef = useRef(transformer);\n useEffect(() => {\n transformerRef.current = transformer;\n }, [transformer]);\n\n useEffect(() => {\n if (shouldTransformRef.current) {\n const partialValues = transformerRef.current(value);\n Object.entries(partialValues).forEach(([n, v]) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n form.values.set(n as Path<TValues>, v as any);\n });\n } else {\n shouldTransformRef.current = true;\n }\n }, [value]);\n };\n};\n\ninterface InputProps<TValue> {\n value: TValue;\n onChange: (value: TValue) => void;\n}\ninterface FieldState {\n error?: string;\n modified: boolean;\n reset: () => void;\n}\ninterface FieldProps<TName, TValue, TData> {\n name: TName;\n data?: TData;\n transformer?: (value: TValue) => TValue;\n render: (\n inputProps: InputProps<TValue>,\n fieldState: FieldState,\n data: TData\n ) => ReactElement | null;\n}\n\nconst createFieldComponent = <TValues extends Values>(form: Form<TValues>) => {\n const useValue = createUseValueHook(form);\n const useError = createUseErrorHook(form);\n return <TName extends Path<TValues>, TData>(\n props: FieldProps<TName, PathReturn<TValues, TName>, TData>\n ) => {\n const { name, data, transformer = (v) => v, render } = props;\n\n const value = useValue(name);\n const error = useError(name);\n\n const initValue = useMemo(() => get(form.initValues, name), [name]);\n const modified = useMemo(\n () => !isEqual(value, initValue),\n [initValue, value]\n );\n const reset = useCallback(\n () => form.values.set(name, initValue),\n [initValue, name]\n );\n\n const transformerRef = useRef(transformer);\n useEffect(() => {\n transformerRef.current = transformer;\n }, [transformer]);\n\n const onChange = useCallback(\n (v: PathReturn<TValues, TName>) => {\n form.values.set(name, transformerRef.current(v));\n },\n [name]\n );\n\n // Reset the error when the value was changed\n useEffect(() => {\n form.errors.set(name, undefined);\n }, [name, value]);\n\n const renderRef = useRef(render);\n useEffect(() => {\n renderRef.current = render;\n }, [render]);\n\n const inputProps = useMemo(() => ({ value, onChange }), [onChange, value]);\n const fieldState = useMemo(\n () => ({ error, modified, reset }),\n [error, modified, reset]\n );\n\n const memoizedData = useDeepEqualMemo(() => data as TData, [data]);\n\n return useMemo(\n () => renderRef.current(inputProps, fieldState, memoizedData),\n [fieldState, inputProps, memoizedData]\n );\n };\n};\n\nconst useModifiedFields = <TValues extends Values>(form: Form<TValues>) => {\n const [modifiedFields, setModifiedFields] = useState<Array<Path<TValues>>>(\n []\n );\n\n const modifiedFieldsRef = useRef(modifiedFields);\n useEffect(() => {\n modifiedFieldsRef.current = modifiedFields;\n }, [modifiedFields]);\n\n const initValuesRef = useRef(form.initValues);\n useEffect(() => {\n initValuesRef.current = form.initValues;\n }, [form.initValues]);\n\n useEffect(() => {\n const subscription = form.values.subscribeToAll((name, value) => {\n const isInitValue = isEqual(value, get(initValuesRef.current, name));\n const fields = modifiedFieldsRef.current;\n\n if (fields.includes(name)) {\n if (isInitValue) {\n setModifiedFields(fields.filter((field) => field !== name));\n }\n } else if (!isInitValue) {\n setModifiedFields([...fields, name]);\n }\n });\n return () => subscription.unsubscribe();\n }, [form.values]);\n\n return modifiedFields;\n};\n\nconst useFormResponse = <TValues extends Values>(form: Form<TValues>) => {\n const Field = useMemo(() => createFieldComponent(form), [form]);\n const useValue = useMemo(() => createUseValueHook(form), [form]);\n const useError = useMemo(() => createUseErrorHook(form), [form]);\n const useTransformer = useMemo(() => createUseTransformerHook(form), [form]);\n\n const modifiedFields = useModifiedFields(form);\n const modified = useMemo(\n () => modifiedFields.length > 0,\n [modifiedFields.length]\n );\n\n return useMemo(\n () => ({\n form,\n Field,\n useValue,\n useError,\n useTransformer,\n modifiedFields,\n modified,\n }),\n [Field, form, modified, modifiedFields, useError, useTransformer, useValue]\n );\n};\n\nexport const useForm = <TValues extends Values = Values>(\n initValues: TValues\n) => {\n const memoizedInitValues = useDeepEqualMemo<TValues>(\n () => initValues,\n [initValues]\n );\n\n const formRef = useRef(new Form<TValues>(memoizedInitValues));\n useEffect(() => {\n formRef.current.initValues = memoizedInitValues;\n formRef.current.reset();\n }, [memoizedInitValues]);\n\n return useFormResponse(formRef.current);\n};\n\nexport const useExistingForm = <TValues extends Values = Values>() => {\n const form = useFormContext<Form<TValues> | null>();\n if (!form) throw new Error('Wrap your form in a FormProvider');\n return useFormResponse(form);\n};\n"],"mappings":"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"}
@@ -7,8 +7,8 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.FormProvider = FormProvider;
8
8
  exports["default"] = void 0;
9
9
  var _react = _interopRequireWildcard(require("react"));
10
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
11
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
10
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
11
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
12
12
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
13
  var FormContext = /*#__PURE__*/(0, _react.createContext)(null);
14
14
  // eslint-disable-next-line react/function-component-definition
@@ -1 +1 @@
1
- {"version":3,"file":"useFormContext.js","names":["_react","_interopRequireWildcard","require","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","FormContext","createContext","FormProvider","_ref","form","children","createElement","Provider","value","useFormContext","useContext","_default","exports"],"sources":["../../src/useFormContext.tsx"],"sourcesContent":["import React, { createContext, ReactNode, useContext } from 'react';\nimport Form from './Form';\nimport { Values } from './types';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst FormContext = createContext<any>(null);\n\nexport interface FormProviderProps<TValues extends Values> {\n form: Form<TValues>;\n children?: ReactNode;\n}\n\n// eslint-disable-next-line react/function-component-definition\nexport function FormProvider<TValues extends Values>({\n form,\n children,\n}: FormProviderProps<TValues>) {\n return <FormContext.Provider value={form}>{children}</FormContext.Provider>;\n}\n\nfunction useFormContext<T>() {\n return useContext<T>(FormContext);\n}\n\nexport default useFormContext;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAoE,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAH,wBAAAO,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAIpE;AACA,IAAMW,WAAW,gBAAG,IAAAC,oBAAa,EAAM,IAAI,CAAC;AAO5C;AACO,SAASC,YAAYA,CAAAC,IAAA,EAGG;EAAA,IAF7BC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;EAER,oBAAO9B,MAAA,YAAA+B,aAAA,CAACN,WAAW,CAACO,QAAQ;IAACC,KAAK,EAAEJ;EAAK,GAAEC,QAA+B,CAAC;AAC7E;AAEA,SAASI,cAAcA,CAAA,EAAM;EAC3B,OAAO,IAAAC,iBAAU,EAAIV,WAAW,CAAC;AACnC;AAAC,IAAAW,QAAA,GAAAC,OAAA,cAEcH,cAAc"}
1
+ {"version":3,"file":"useFormContext.js","names":["_react","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","FormContext","createContext","FormProvider","_ref","form","children","createElement","Provider","value","useFormContext","useContext","_default","exports"],"sources":["../../src/useFormContext.tsx"],"sourcesContent":["import React, { createContext, ReactNode, useContext } from 'react';\nimport Form from './Form';\nimport { Values } from './types';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst FormContext = createContext<any>(null);\n\nexport interface FormProviderProps<TValues extends Values> {\n form: Form<TValues>;\n children?: ReactNode;\n}\n\n// eslint-disable-next-line react/function-component-definition\nexport function FormProvider<TValues extends Values>({\n form,\n children,\n}: FormProviderProps<TValues>) {\n return <FormContext.Provider value={form}>{children}</FormContext.Provider>;\n}\n\nfunction useFormContext<T>() {\n return useContext<T>(FormContext);\n}\n\nexport default useFormContext;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAoE,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAIpE;AACA,IAAMY,WAAW,gBAAG,IAAAC,oBAAa,EAAM,IAAI,CAAC;AAO5C;AACO,SAASC,YAAYA,CAAAC,IAAA,EAGG;EAAA,IAF7BC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;EAER,oBAAO7B,MAAA,YAAA8B,aAAA,CAACN,WAAW,CAACO,QAAQ;IAACC,KAAK,EAAEJ;EAAK,GAAEC,QAA+B,CAAC;AAC7E;AAEA,SAASI,cAAcA,CAAA,EAAM;EAC3B,OAAO,IAAAC,iBAAU,EAAIV,WAAW,CAAC;AACnC;AAAC,IAAAW,QAAA,GAAAC,OAAA,cAEcH,cAAc"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@os-design/form",
3
- "version": "1.0.60",
3
+ "version": "1.0.62",
4
4
  "license": "UNLICENSED",
5
5
  "repository": "git@gitlab.com:os-team/libs/os-design.git",
6
6
  "main": "dist/cjs/index.js",
@@ -30,11 +30,11 @@
30
30
  "access": "public"
31
31
  },
32
32
  "devDependencies": {
33
- "@os-design/core": "^1.0.227",
33
+ "@os-design/core": "^1.0.229",
34
34
  "@os-design/icons": "^1.0.55"
35
35
  },
36
36
  "peerDependencies": {
37
37
  "react": ">=18"
38
38
  },
39
- "gitHead": "39b0b7bde4645b403c4792292cce6db5e604342c"
39
+ "gitHead": "117752528088206616d1b367526f8246214ea5e6"
40
40
  }