@lehnihon/bit-form 2.2.19 → 2.2.26
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/README.md +10 -13
- package/dist/angular/index.cjs +1 -1
- package/dist/angular/index.cjs.map +1 -1
- package/dist/angular/index.d.cts +7 -7
- package/dist/angular/index.d.ts +7 -7
- package/dist/angular/index.js +1 -1
- package/dist/angular/index.js.map +1 -1
- package/dist/chunk-4WPLTOBT.cjs.map +1 -1
- package/dist/chunk-725CMNAV.cjs.map +1 -1
- package/dist/chunk-7T7L2TZX.js +2 -0
- package/dist/chunk-7T7L2TZX.js.map +1 -0
- package/dist/chunk-AV7YYSFI.cjs +2 -0
- package/dist/chunk-AV7YYSFI.cjs.map +1 -0
- package/dist/chunk-BSGJ3T5S.cjs.map +1 -1
- package/dist/chunk-CATA7YEV.js +2 -0
- package/dist/chunk-CATA7YEV.js.map +1 -0
- package/dist/chunk-EYCJKAK3.js +2 -0
- package/dist/chunk-EYCJKAK3.js.map +1 -0
- package/dist/chunk-GBHOCY7E.cjs +2 -0
- package/dist/chunk-GBHOCY7E.cjs.map +1 -0
- package/dist/{chunk-EPBSLPRL.cjs → chunk-H27ROY4F.cjs} +2 -2
- package/dist/chunk-H27ROY4F.cjs.map +1 -0
- package/dist/chunk-H3RTOA6X.cjs +2 -0
- package/dist/chunk-H3RTOA6X.cjs.map +1 -0
- package/dist/chunk-H6HGYVRV.cjs +2 -0
- package/dist/chunk-H6HGYVRV.cjs.map +1 -0
- package/dist/chunk-L42NQRVD.js +2 -0
- package/dist/{chunk-3WNZPBME.js.map → chunk-L42NQRVD.js.map} +1 -1
- package/dist/chunk-L57KMBXS.js +2 -0
- package/dist/chunk-L57KMBXS.js.map +1 -0
- package/dist/chunk-MBEQLBJB.js +2 -0
- package/dist/chunk-MBEQLBJB.js.map +1 -0
- package/dist/chunk-MFSDDSVG.cjs.map +1 -1
- package/dist/chunk-OWDDAM6C.cjs +2 -0
- package/dist/chunk-OWDDAM6C.cjs.map +1 -0
- package/dist/chunk-QKGTVKBU.cjs.map +1 -1
- package/dist/chunk-RHMJPKNV.cjs.map +1 -1
- package/dist/chunk-U6UFULNS.cjs +2 -0
- package/dist/chunk-U6UFULNS.cjs.map +1 -0
- package/dist/chunk-UBVVBVLS.js +2 -0
- package/dist/chunk-UBVVBVLS.js.map +1 -0
- package/dist/chunk-W5CLDRRE.cjs.map +1 -1
- package/dist/chunk-WKLCAC74.cjs +2 -0
- package/dist/chunk-WKLCAC74.cjs.map +1 -0
- package/dist/chunk-WYYVVM2C.js +2 -0
- package/dist/chunk-WYYVVM2C.js.map +1 -0
- package/dist/chunk-X3DGA5UC.cjs +2 -0
- package/dist/chunk-X3DGA5UC.cjs.map +1 -0
- package/dist/chunk-Y7TQTZY7.js +2 -0
- package/dist/chunk-Y7TQTZY7.js.map +1 -0
- package/dist/cli/index.cjs +21 -19
- package/dist/{config-types-bTt2lcw9.d.ts → config-types-DB6FaTiZ.d.ts} +3 -3
- package/dist/{config-types-Dbyt7t3D.d.cts → config-types-mZFlp2Bi.d.cts} +3 -3
- package/dist/core/bindings.cjs +1 -1
- package/dist/core/bindings.cjs.map +1 -1
- package/dist/core/bindings.d.cts +4 -4
- package/dist/core/bindings.d.ts +4 -4
- package/dist/core/bindings.js +1 -1
- package/dist/core/status.cjs.map +1 -1
- package/dist/core/status.d.cts +3 -3
- package/dist/core/status.d.ts +3 -3
- package/dist/core/store.cjs +1 -1
- package/dist/core/store.cjs.map +1 -1
- package/dist/core/store.d.cts +5 -5
- package/dist/core/store.d.ts +5 -5
- package/dist/core/store.js +1 -1
- package/dist/core/utils.cjs +1 -1
- package/dist/core/utils.cjs.map +1 -1
- package/dist/core/utils.js +1 -1
- package/dist/core.cjs +1 -1
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.cts +4 -4
- package/dist/core.d.ts +4 -4
- package/dist/core.js +1 -1
- package/dist/devtools/bridge.cjs +1 -1
- package/dist/devtools/bridge.cjs.map +1 -1
- package/dist/devtools/bridge.js +1 -1
- package/dist/devtools/index.cjs +17 -17
- package/dist/devtools/index.cjs.map +1 -1
- package/dist/devtools/index.d.cts +2 -2
- package/dist/devtools/index.d.ts +2 -2
- package/dist/devtools/index.js +17 -17
- package/dist/devtools/index.js.map +1 -1
- package/dist/devtools/protocol.cjs.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +5 -5
- package/dist/index.d.ts +5 -5
- package/dist/index.js +1 -1
- package/dist/mask.cjs +1 -1
- package/dist/mask.cjs.map +1 -1
- package/dist/mask.d.cts +1 -1
- package/dist/mask.d.ts +1 -1
- package/dist/mask.js +1 -1
- package/dist/{meta-types-BC1VLABk.d.cts → meta-types-1Xcht8hj.d.cts} +1 -1
- package/dist/{meta-types-BC1VLABk.d.ts → meta-types-1Xcht8hj.d.ts} +1 -1
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.d.cts +6 -6
- package/dist/react/index.d.ts +6 -6
- package/dist/react/index.js +1 -1
- package/dist/react/index.js.map +1 -1
- package/dist/react-native/index.cjs +1 -1
- package/dist/react-native/index.cjs.map +1 -1
- package/dist/react-native/index.d.cts +5 -5
- package/dist/react-native/index.d.ts +5 -5
- package/dist/react-native/index.js +1 -1
- package/dist/resolvers/index.cjs +1 -1
- package/dist/resolvers/index.cjs.map +1 -1
- package/dist/resolvers/index.d.cts +0 -8
- package/dist/resolvers/index.d.ts +0 -8
- package/dist/resolvers/index.js +1 -1
- package/dist/resolvers/joi.cjs +1 -1
- package/dist/resolvers/joi.cjs.map +1 -1
- package/dist/resolvers/joi.js +1 -1
- package/dist/resolvers/joi.js.map +1 -1
- package/dist/resolvers/types.cjs.map +1 -1
- package/dist/resolvers/yup.cjs +1 -1
- package/dist/resolvers/yup.cjs.map +1 -1
- package/dist/resolvers/yup.js +1 -1
- package/dist/resolvers/yup.js.map +1 -1
- package/dist/resolvers/zod.cjs +1 -1
- package/dist/resolvers/zod.cjs.map +1 -1
- package/dist/resolvers/zod.js +1 -1
- package/dist/resolvers/zod.js.map +1 -1
- package/dist/{runtime-types-D1SRZr-n.d.cts → runtime-types-BLCkMgcy.d.cts} +1 -1
- package/dist/{runtime-types-D1SRZr-n.d.ts → runtime-types-BLCkMgcy.d.ts} +1 -1
- package/dist/{store-api-types-i-zmM25p.d.ts → store-api-types-CgRVo2DA.d.ts} +4 -4
- package/dist/{store-api-types-BPD27biP.d.cts → store-api-types-D7i0KWbr.d.cts} +4 -4
- package/dist/{use-bit-persist-BGH2Bazx.d.ts → use-bit-persist-CFcuAzwp.d.ts} +5 -5
- package/dist/{use-bit-persist-DiwICsEm.d.cts → use-bit-persist-Dsr69hme.d.cts} +5 -5
- package/dist/utils.cjs +1 -1
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.js +1 -1
- package/dist/vue/index.cjs +1 -1
- package/dist/vue/index.cjs.map +1 -1
- package/dist/vue/index.d.cts +5 -5
- package/dist/vue/index.d.ts +5 -5
- package/dist/vue/index.js +1 -1
- package/dist/vue/index.js.map +1 -1
- package/package.json +84 -11
- package/dist/chunk-23DHXQOC.js +0 -2
- package/dist/chunk-23DHXQOC.js.map +0 -1
- package/dist/chunk-27LJCW56.cjs +0 -2
- package/dist/chunk-27LJCW56.cjs.map +0 -1
- package/dist/chunk-32RH5MSM.js +0 -2
- package/dist/chunk-32RH5MSM.js.map +0 -1
- package/dist/chunk-33TGLA5D.cjs +0 -2
- package/dist/chunk-33TGLA5D.cjs.map +0 -1
- package/dist/chunk-3CPIJF3Z.cjs +0 -2
- package/dist/chunk-3CPIJF3Z.cjs.map +0 -1
- package/dist/chunk-3KI3GEU3.cjs +0 -2
- package/dist/chunk-3KI3GEU3.cjs.map +0 -1
- package/dist/chunk-3WNZPBME.js +0 -2
- package/dist/chunk-5ILGCBKG.cjs +0 -2
- package/dist/chunk-5ILGCBKG.cjs.map +0 -1
- package/dist/chunk-7IO2KLSJ.cjs +0 -2
- package/dist/chunk-7IO2KLSJ.cjs.map +0 -1
- package/dist/chunk-AJUX7LYB.js +0 -2
- package/dist/chunk-AJUX7LYB.js.map +0 -1
- package/dist/chunk-B45EMB4Q.js +0 -2
- package/dist/chunk-B45EMB4Q.js.map +0 -1
- package/dist/chunk-CIS3YZSK.cjs +0 -2
- package/dist/chunk-CIS3YZSK.cjs.map +0 -1
- package/dist/chunk-EPBSLPRL.cjs.map +0 -1
- package/dist/chunk-ICYXODTQ.js +0 -2
- package/dist/chunk-ICYXODTQ.js.map +0 -1
- package/dist/chunk-JUDBIEZK.js +0 -2
- package/dist/chunk-JUDBIEZK.js.map +0 -1
- package/dist/chunk-K2JSAJAF.cjs +0 -2
- package/dist/chunk-K2JSAJAF.cjs.map +0 -1
- package/dist/chunk-K2KCQEER.js +0 -2
- package/dist/chunk-K2KCQEER.js.map +0 -1
- package/dist/chunk-K65TKDQ2.cjs +0 -2
- package/dist/chunk-K65TKDQ2.cjs.map +0 -1
- package/dist/chunk-S5A65JVL.cjs +0 -2
- package/dist/chunk-S5A65JVL.cjs.map +0 -1
- package/dist/chunk-SFVGMVIE.js +0 -2
- package/dist/chunk-SFVGMVIE.js.map +0 -1
- package/dist/chunk-T7TOEIOH.js +0 -2
- package/dist/chunk-T7TOEIOH.js.map +0 -1
- package/dist/chunk-TLUCO2ZN.cjs +0 -2
- package/dist/chunk-TLUCO2ZN.cjs.map +0 -1
- package/dist/chunk-WEZ5Q6YO.js +0 -2
- package/dist/chunk-WEZ5Q6YO.js.map +0 -1
- package/dist/chunk-Y34N5TWV.js +0 -2
- package/dist/chunk-Y34N5TWV.js.map +0 -1
package/dist/react/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/react/use-bit-field.ts","../../src/react/use-bit-history.ts","../../src/react/use-bit-upload.ts"],"sourcesContent":["import { useCallback, useMemo } from \"react\";\nimport {\n BitPath,\n BitPathValue,\n createFrameworkMaskedFieldBinding,\n deriveFieldMeta,\n isBitFieldInputEventObject,\n} from \"../core\";\nimport type { BitFieldInputEvent, UseBitFieldResult } from \"./types\";\nimport { useBitFieldBase } from \"./use-bit-field-base\";\n\nexport function useBitField<\n TForm extends object = any,\n P extends BitPath<TForm> = BitPath<TForm>,\n>(path: P): UseBitFieldResult<TForm, P> {\n const { fieldState, setBlur, store } = useBitFieldBase<\n BitPathValue<TForm, P>,\n TForm,\n P\n >(path);\n\n const { fieldController } = useMemo(() => {\n return createFrameworkMaskedFieldBinding(store, path);\n }, [store, path]);\n\n const displayValue = useMemo(\n () => fieldController.displayValue(fieldState.value),\n [fieldState.value, fieldController],\n );\n\n const setValue = useCallback(\n (val: BitPathValue<TForm, P> | string | number | null | undefined) => {\n fieldController.setValue(val);\n },\n [fieldController],\n );\n\n const { value } = fieldState;\n const metaState = deriveFieldMeta(fieldState);\n const {\n error,\n touched,\n invalid,\n isDirty,\n isValidating,\n isHidden,\n isRequired,\n hasError,\n } = metaState;\n\n const onChange = useCallback(\n (e: BitFieldInputEvent) => {\n const val = isBitFieldInputEventObject(e) ? e.target?.value : e;\n setValue(val);\n },\n [setValue],\n );\n\n const onBlur = useCallback(() => {\n setBlur();\n }, [setBlur]);\n\n const props = useMemo(\n () => ({\n value: displayValue,\n onChange,\n onBlur,\n }),\n [displayValue, onChange, onBlur],\n );\n\n const meta = useMemo(\n () => ({\n error,\n touched,\n invalid,\n isDirty,\n isValidating,\n isHidden,\n isRequired,\n hasError,\n }),\n [\n error,\n touched,\n invalid,\n isDirty,\n isValidating,\n isHidden,\n isRequired,\n hasError,\n ],\n );\n\n return useMemo(\n () => ({\n // Main handlers and values (flat)\n value: value as BitPathValue<TForm, P>,\n displayValue,\n setValue,\n setBlur,\n onChange,\n onBlur,\n // Props helper\n props,\n // Metadata (grouped)\n meta,\n }),\n [value, displayValue, setValue, setBlur, onChange, onBlur, props, meta],\n );\n}\n","import { useCallback, useMemo, useRef, useSyncExternalStore } from \"react\";\nimport { readHistoryMetaSnapshot, type HistoryMeta } from \"../core\";\nimport { useBitStore } from \"./context\";\nimport type { UseBitHistoryResult } from \"./types\";\n\nexport function useBitHistory<T extends object = any>(): UseBitHistoryResult {\n const store = useBitStore<T>();\n const lastMeta = useRef<HistoryMeta | null>(null);\n\n const getSnapshot = useCallback(() => {\n const nextMeta = readHistoryMetaSnapshot(store);\n\n if (\n lastMeta.current &&\n lastMeta.current.canUndo === nextMeta.canUndo &&\n lastMeta.current.canRedo === nextMeta.canRedo &&\n lastMeta.current.historyIndex === nextMeta.historyIndex &&\n lastMeta.current.historySize === nextMeta.historySize\n ) {\n return lastMeta.current;\n }\n\n lastMeta.current = nextMeta;\n return nextMeta;\n }, [store]);\n\n const subscribe = useCallback(\n (cb: () => void) => store.observe.subscribeHistoryMeta(() => cb()),\n [store],\n );\n\n const meta = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);\n\n const undo = useCallback(() => {\n store.feature.undo();\n }, [store]);\n\n const redo = useCallback(() => {\n store.feature.redo();\n }, [store]);\n\n return useMemo(\n () => ({\n ...meta,\n undo,\n redo,\n }),\n [meta, undo, redo],\n );\n}\n","/**\n * React Hook for File Upload Integration\n *\n * Minimal upload API integrated with global field validation lifecycle.\n *\n * @example\n * ```typescript\n * const avatar = useBitUpload(\"avatar\", uploadFn);\n *\n * return (\n * <>\n * <input\n * type=\"file\"\n * onChange={(e) => avatar.upload(e.target.files?.[0])}\n * disabled={avatar.isValidating}\n * />\n * {avatar.error && <Error>{avatar.error}</Error>}\n * </>\n * );\n * ```\n */\n\nimport { useMemo, useRef, useState, useEffect } from \"react\";\nimport type { BitDeleteUploadFn, BitUploadFn } from \"../core\";\nimport { createRemoveHandler, createUploadHandler } from \"../core/adapters\";\nimport { useBitStore } from \"./context\";\nimport type { UseBitUploadResult } from \"./types\";\nimport { useBitField } from \"./use-bit-field\";\n\nexport function useBitUpload<\n TMetadata extends Record<string, unknown> = Record<string, unknown>,\n>(\n fieldPath: string,\n uploadFn: BitUploadFn<TMetadata>,\n deleteFile?: BitDeleteUploadFn,\n): UseBitUploadResult {\n const store = useBitStore<any>();\n const field = useBitField(fieldPath);\n const { value, setValue, meta } = field;\n const error = meta?.error;\n const fieldIsValidating = !!meta?.isValidating;\n const uploadKeyRef = useRef<string | null>(null);\n const [isUploading, setIsUploading] = useState(false);\n\n // Ref que sempre aponta para os valores mais recentes de render,\n // permitindo que o handler factory (e seu `currentGeneration`) seja\n // criado uma única vez por (fieldPath, uploadFn). Sem este padrão,\n // qualquer re-render que gere nova referência de callbacks zeraria\n // `currentGeneration` e perderia silenciosamente a URL de upload.\n const callbacksRef = useRef({\n setLoading: setIsUploading,\n setError: (path: string, msg: string | undefined) =>\n store.write.setError(path, msg),\n setValue: (val: string | null) => setValue(val as any),\n getUploadKey: () => uploadKeyRef.current,\n setUploadKey: (key: string | null) => {\n uploadKeyRef.current = key;\n },\n onCallbackError: (e: unknown) =>\n store.read.config.onUnhandledError(e, \"upload\"),\n });\n // Mantém os closures da ref atualizados sem recriar o objeto.\n // Usamos useEffect para evitar mutações de ref durante o render phase\n // (React concurrent mode pode descartar renders, tornando mutações inseguras).\n useEffect(() => {\n callbacksRef.current.setLoading = setIsUploading;\n callbacksRef.current.setError = (path, msg) =>\n store.write.setError(path, msg);\n callbacksRef.current.setValue = (val) => setValue(val as any);\n callbacksRef.current.onCallbackError = (e) =>\n store.read.config.onUnhandledError(e, \"upload\");\n });\n\n const stableCallbacks = useMemo(\n () => ({\n setLoading: (val: boolean) => callbacksRef.current.setLoading(val),\n setError: (path: string, msg: string | undefined) =>\n callbacksRef.current.setError(path, msg),\n setValue: (val: string | null) => callbacksRef.current.setValue(val),\n getUploadKey: () => callbacksRef.current.getUploadKey(),\n setUploadKey: (key: string | null) =>\n callbacksRef.current.setUploadKey(key),\n onCallbackError: (e: unknown) =>\n callbacksRef.current.onCallbackError?.(e),\n }),\n [], // estável para todo o lifetime do componente\n );\n\n const upload = useMemo(\n () => createUploadHandler(fieldPath, uploadFn, stableCallbacks),\n [fieldPath, uploadFn, stableCallbacks],\n );\n\n const remove = useMemo(\n () => createRemoveHandler(fieldPath, deleteFile, stableCallbacks),\n [fieldPath, deleteFile, stableCallbacks],\n );\n\n return useMemo(\n () => ({\n value,\n setValue,\n error,\n isValidating: fieldIsValidating || isUploading,\n upload,\n remove,\n }),\n [value, setValue, error, fieldIsValidating, isUploading, upload, remove],\n );\n}\n"],"mappings":"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","names":["useCallback","useMemo","useBitField","path","fieldState","setBlur","store","useBitFieldBase","fieldController","useMemo","createFrameworkMaskedFieldBinding","displayValue","setValue","useCallback","val","value","metaState","deriveFieldMeta","error","touched","invalid","isDirty","isValidating","isHidden","isRequired","hasError","onChange","e","isBitFieldInputEventObject","onBlur","props","meta","useCallback","useMemo","useRef","useSyncExternalStore","useBitHistory","store","useBitStore","lastMeta","useRef","getSnapshot","useCallback","nextMeta","readHistoryMetaSnapshot","subscribe","cb","meta","useSyncExternalStore","undo","redo","useMemo","useMemo","useRef","useState","useEffect","useBitUpload","fieldPath","uploadFn","deleteFile","store","useBitStore","field","useBitField","value","setValue","meta","error","fieldIsValidating","uploadKeyRef","useRef","isUploading","setIsUploading","useState","callbacksRef","path","msg","val","key","useEffect","stableCallbacks","useMemo","upload","createUploadHandler","remove","createRemoveHandler"]}
|
|
1
|
+
{"version":3,"sources":["../../src/react/use-bit-field.ts","../../src/react/use-bit-history.ts","../../src/react/use-bit-upload.ts"],"sourcesContent":["import { useCallback, useMemo } from \"react\";\nimport {\n BitPath,\n BitPathValue,\n createFrameworkMaskedFieldBinding,\n deriveFieldMeta,\n isBitFieldInputEventObject,\n} from \"../core\";\nimport type { BitFieldInputEvent, UseBitFieldResult } from \"./types\";\nimport { useBitFieldBase } from \"./use-bit-field-base\";\n\nexport function useBitField<\n TForm extends object = any,\n P extends BitPath<TForm> = BitPath<TForm>,\n>(path: P): UseBitFieldResult<TForm, P> {\n const { fieldState, setBlur, store } = useBitFieldBase<\n BitPathValue<TForm, P>,\n TForm,\n P\n >(path);\n\n const { fieldController } = useMemo(() => {\n return createFrameworkMaskedFieldBinding(store, path);\n }, [store, path]);\n\n const displayValue = useMemo(\n () => fieldController.displayValue(fieldState.value),\n [fieldState.value, fieldController],\n );\n\n const setValue = useCallback(\n (val: BitPathValue<TForm, P> | string | number | null | undefined) => {\n fieldController.setValue(val);\n },\n [fieldController],\n );\n\n const { value } = fieldState;\n const metaState = deriveFieldMeta(fieldState);\n const {\n error,\n touched,\n invalid,\n isDirty,\n isValidating,\n isHidden,\n isRequired,\n hasError,\n } = metaState;\n\n const onChange = useCallback(\n (e: BitFieldInputEvent) => {\n const val = isBitFieldInputEventObject(e) ? e.target?.value : e;\n setValue(val);\n },\n [setValue],\n );\n\n const onBlur = useCallback(() => {\n setBlur();\n }, [setBlur]);\n\n const props = useMemo(\n () => ({\n value: displayValue,\n onChange,\n onBlur,\n }),\n [displayValue, onChange, onBlur],\n );\n\n const meta = useMemo(\n () => ({\n error,\n touched,\n invalid,\n isDirty,\n isValidating,\n isHidden,\n isRequired,\n hasError,\n }),\n [\n error,\n touched,\n invalid,\n isDirty,\n isValidating,\n isHidden,\n isRequired,\n hasError,\n ],\n );\n\n return useMemo(\n () => ({\n // Main handlers and values (flat)\n value: value as BitPathValue<TForm, P>,\n displayValue,\n setValue,\n setBlur,\n onChange,\n onBlur,\n // Props helper\n props,\n // Metadata (grouped)\n meta,\n }),\n [value, displayValue, setValue, setBlur, onChange, onBlur, props, meta],\n );\n}\n","import { useCallback, useMemo, useRef, useSyncExternalStore } from \"react\";\nimport { readHistoryMetaSnapshot, type HistoryMeta } from \"../core\";\nimport { useBitStore } from \"./context\";\nimport type { UseBitHistoryResult } from \"./types\";\n\nexport function useBitHistory<T extends object = any>(): UseBitHistoryResult {\n const store = useBitStore<T>();\n const lastMeta = useRef<HistoryMeta | null>(null);\n\n const getSnapshot = useCallback(() => {\n const nextMeta = readHistoryMetaSnapshot(store);\n\n if (\n lastMeta.current &&\n lastMeta.current.canUndo === nextMeta.canUndo &&\n lastMeta.current.canRedo === nextMeta.canRedo &&\n lastMeta.current.historyIndex === nextMeta.historyIndex &&\n lastMeta.current.historySize === nextMeta.historySize\n ) {\n return lastMeta.current;\n }\n\n lastMeta.current = nextMeta;\n return nextMeta;\n }, [store]);\n\n const subscribe = useCallback(\n (cb: () => void) => store.observe.subscribeHistoryMeta(() => cb()),\n [store],\n );\n\n const meta = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);\n\n const undo = useCallback(() => {\n store.feature.undo();\n }, [store]);\n\n const redo = useCallback(() => {\n store.feature.redo();\n }, [store]);\n\n return useMemo(\n () => ({\n ...meta,\n undo,\n redo,\n }),\n [meta, undo, redo],\n );\n}\n","/**\n * React Hook for File Upload Integration\n *\n * Minimal upload API integrated with global field validation lifecycle.\n *\n * @example\n * ```typescript\n * const avatar = useBitUpload(\"avatar\", uploadFn);\n *\n * return (\n * <>\n * <input\n * type=\"file\"\n * onChange={(e) => avatar.upload(e.target.files?.[0])}\n * disabled={avatar.isValidating}\n * />\n * {avatar.error && <Error>{avatar.error}</Error>}\n * </>\n * );\n * ```\n */\n\nimport { useMemo, useRef, useState, useEffect } from \"react\";\nimport type { BitDeleteUploadFn, BitUploadFn } from \"../core\";\nimport { createRemoveHandler, createUploadHandler } from \"../core/adapters\";\nimport { useBitStore } from \"./context\";\nimport type { UseBitUploadResult } from \"./types\";\nimport { useBitField } from \"./use-bit-field\";\n\nexport function useBitUpload<\n TMetadata extends Record<string, unknown> = Record<string, unknown>,\n>(\n fieldPath: string,\n uploadFn: BitUploadFn<TMetadata>,\n deleteFile?: BitDeleteUploadFn,\n): UseBitUploadResult {\n const store = useBitStore<any>();\n const field = useBitField(fieldPath);\n const { value, setValue, meta } = field;\n const error = meta?.error;\n const fieldIsValidating = !!meta?.isValidating;\n const uploadKeyRef = useRef<string | null>(null);\n const [isUploading, setIsUploading] = useState(false);\n\n const sharedGen = useRef({ current: 0 }).current;\n\n useEffect(() => {\n return () => {\n sharedGen.current++;\n uploadKeyRef.current = null;\n };\n }, []);\n\n const callbacksRef = useRef({\n setLoading: setIsUploading,\n setError: (path: string, msg: string | undefined) =>\n store.write.setError(path, msg),\n setValue: (val: string | null) => setValue(val as any),\n getUploadKey: () => uploadKeyRef.current,\n setUploadKey: (key: string | null) => {\n uploadKeyRef.current = key;\n },\n onCallbackError: (e: unknown) =>\n store.read.config.onUnhandledError(e, \"upload\"),\n });\n\n useEffect(() => {\n callbacksRef.current.setLoading = setIsUploading;\n callbacksRef.current.setError = (path, msg) =>\n store.write.setError(path, msg);\n callbacksRef.current.setValue = (val) => setValue(val as any);\n callbacksRef.current.getUploadKey = () => uploadKeyRef.current;\n callbacksRef.current.setUploadKey = (key) => {\n uploadKeyRef.current = key;\n };\n callbacksRef.current.onCallbackError = (e) =>\n store.read.config.onUnhandledError(e, \"upload\");\n });\n\n const stableCallbacks = useMemo(\n () => ({\n setLoading: (val: boolean) => callbacksRef.current.setLoading(val),\n setError: (path: string, msg: string | undefined) =>\n callbacksRef.current.setError(path, msg),\n setValue: (val: string | null) => callbacksRef.current.setValue(val),\n getUploadKey: () => callbacksRef.current.getUploadKey(),\n setUploadKey: (key: string | null) =>\n callbacksRef.current.setUploadKey(key),\n onCallbackError: (e: unknown) =>\n callbacksRef.current.onCallbackError?.(e),\n }),\n [],\n );\n\n const upload = useMemo(\n () => createUploadHandler(fieldPath, uploadFn, stableCallbacks, sharedGen),\n [fieldPath, uploadFn, stableCallbacks],\n );\n\n const remove = useMemo(\n () => createRemoveHandler(fieldPath, deleteFile, stableCallbacks, sharedGen),\n [fieldPath, deleteFile, stableCallbacks],\n );\n\n return useMemo(\n () => ({\n value,\n setValue,\n error,\n isValidating: fieldIsValidating || isUploading,\n upload,\n remove,\n }),\n [value, setValue, error, fieldIsValidating, isUploading, upload, remove],\n );\n}\n"],"mappings":"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","names":["useCallback","useMemo","useBitField","path","fieldState","setBlur","store","useBitFieldBase","fieldController","useMemo","createFrameworkMaskedFieldBinding","displayValue","setValue","useCallback","val","value","metaState","deriveFieldMeta","error","touched","invalid","isDirty","isValidating","isHidden","isRequired","hasError","onChange","e","isBitFieldInputEventObject","onBlur","props","meta","useCallback","useMemo","useRef","useSyncExternalStore","useBitHistory","store","useBitStore","lastMeta","useRef","getSnapshot","useCallback","nextMeta","readHistoryMetaSnapshot","subscribe","cb","meta","useSyncExternalStore","undo","redo","useMemo","useMemo","useRef","useState","useEffect","useBitUpload","fieldPath","uploadFn","deleteFile","store","useBitStore","field","useBitField","value","setValue","meta","error","fieldIsValidating","uploadKeyRef","useRef","isUploading","setIsUploading","useState","sharedGen","useEffect","callbacksRef","path","msg","val","key","stableCallbacks","useMemo","upload","createUploadHandler","remove","createRemoveHandler"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkWKLCAC74cjs = require('../chunk-WKLCAC74.cjs');require('../chunk-W5CLDRRE.cjs');require('../chunk-U6UFULNS.cjs');var _chunkH27ROY4Fcjs = require('../chunk-H27ROY4F.cjs');require('../chunk-BSGJ3T5S.cjs');require('../chunk-RHMJPKNV.cjs');var _chunkH6HGYVRVcjs = require('../chunk-H6HGYVRV.cjs');require('../chunk-AV7YYSFI.cjs');require('../chunk-OWDDAM6C.cjs');require('../chunk-X3DGA5UC.cjs');require('../chunk-725CMNAV.cjs');var _react = require('react');function U(u){let{fieldState:r,setBlur:o,store:m}=_chunkWKLCAC74cjs.d.call(void 0, u),{fieldController:t}=_react.useMemo.call(void 0, ()=>_chunkH27ROY4Fcjs.h.call(void 0, m,u),[m,u]),s=_react.useMemo.call(void 0, ()=>t.displayValue(r.value),[r.value,t]),a=_react.useCallback.call(void 0, d=>t.setValue(d),[t]),p=_react.useCallback.call(void 0, d=>t.setValue(d),[t]),{value:B}=r,e=_chunkH6HGYVRVcjs.a.call(void 0, r),l=_react.useCallback.call(void 0, ()=>{o()},[o]),c=_react.useMemo.call(void 0, ()=>({error:e.error,touched:e.touched,invalid:e.invalid,isValidating:e.isValidating,isDirty:e.isDirty,isHidden:e.isHidden,isRequired:e.isRequired,hasError:e.hasError}),[e.error,e.touched,e.invalid,e.isValidating,e.isDirty,e.isHidden,e.isRequired,e.hasError]),F=_react.useMemo.call(void 0, ()=>({value:s,onChangeText:a,onBlur:l}),[s,a,l]);return _react.useMemo.call(void 0, ()=>({value:B,displayValue:s,setValue:p,setBlur:o,onChangeText:a,onBlur:l,meta:c,props:F}),[B,s,p,o,a,l,c,F])}exports.BitFormProvider = _chunkWKLCAC74cjs.a; exports.useBitArray = _chunkWKLCAC74cjs.e; exports.useBitField = U; exports.useBitForm = _chunkWKLCAC74cjs.c; exports.useBitPersist = _chunkWKLCAC74cjs.i; exports.useBitScope = _chunkWKLCAC74cjs.f; exports.useBitSteps = _chunkWKLCAC74cjs.g; exports.useBitStore = _chunkWKLCAC74cjs.b; exports.useBitWatch = _chunkWKLCAC74cjs.h;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/react-native/index.cjs","../../src/react-native/use-bit-field.ts"],"names":["useBitField","path","fieldState","setBlur","store","useBitFieldBase","fieldController","useMemo","createFrameworkMaskedFieldBinding","displayValue","handleChange","useCallback","text","setValue","val","value","metaState","deriveFieldMeta","onBlur","meta","props"],"mappings":"AAAA,kIAA4F,iCAA8B,iCAA8B,yDAA0C,iCAA8B,iCAA8B,yDAA0C,iCAA8B,iCAA8B,iCAA8B,iCAA8B,8BCA3X,SAUrBA,CAAAA,CAGdC,CAAAA,CAA4C,CAC5C,GAAM,CAAE,UAAA,CAAAC,CAAAA,CAAY,OAAA,CAAAC,CAAAA,CAAS,KAAA,CAAAC,CAAM,CAAA,CAAIC,iCAAAA,CAIjC,CAAA,CAEA,CAAE,eAAA,CAAAC,CAAgB,CAAA,CAAIC,4BAAAA,CAAQ,CAAA,EAC3BC,iCAAAA,CAAkCJ,CAAOH,CAAI,CAAA,CACnD,CAACG,CAAAA,CAAOH,CAAI,CAAC,CAAA,CAEVQ,CAAAA,CAAeF,4BAAAA,CACnB,CAAA,EAAMD,CAAAA,CAAgB,YAAA,CAAaJ,CAAAA,CAAW,KAAK,CAAA,CACnD,CAACA,CAAAA,CAAW,KAAA,CAAOI,CAAe,CACpC,CAAA,CAEMI,CAAAA,CAAeC,gCAAAA,CAClBC,EAAiBN,CAAAA,CAAgB,QAAA,CAASM,CAAI,CAAA,CAC/C,CAACN,CAAe,CAClB,CAAA,CAEMO,CAAAA,CAAWF,gCAAAA,CACdG,EACCR,CAAAA,CAAgB,QAAA,CAASQ,CAAG,CAAA,CAC9B,CAACR,CAAe,CAClB,CAAA,CAEM,CAAE,KAAA,CAAAS,CAAM,CAAA,CAAIb,CAAAA,CACZc,CAAAA,CAAYC,iCAAAA,CAA0B,CAAA,CAEtCC,CAAAA,CAASP,gCAAAA,CAAY,CAAA,EAAM,CAC/BR,CAAAA,CAAQ,CACV,CAAA,CAAG,CAACA,CAAO,CAAC,CAAA,CAENgB,CAAAA,CAAOZ,4BAAAA,CACX,CAAA,EAAA,CAAO,CACL,KAAA,CAAOS,CAAAA,CAAU,KAAA,CACjB,OAAA,CAASA,CAAAA,CAAU,OAAA,CACnB,OAAA,CAASA,CAAAA,CAAU,OAAA,CACnB,YAAA,CAAcA,CAAAA,CAAU,YAAA,CACxB,OAAA,CAASA,CAAAA,CAAU,OAAA,CACnB,QAAA,CAAUA,CAAAA,CAAU,QAAA,CACpB,UAAA,CAAYA,CAAAA,CAAU,UAAA,CACtB,QAAA,CAAUA,CAAAA,CAAU,QACtB,CAAA,CAAA,CACA,CACEA,CAAAA,CAAU,KAAA,CACVA,CAAAA,CAAU,OAAA,CACVA,CAAAA,CAAU,OAAA,CACVA,CAAAA,CAAU,YAAA,CACVA,CAAAA,CAAU,OAAA,CACVA,CAAAA,CAAU,QAAA,CACVA,CAAAA,CAAU,UAAA,CACVA,CAAAA,CAAU,QACZ,CACF,CAAA,CAEMI,CAAAA,CAAQb,4BAAAA,CACZ,CAAA,EAAA,CAAO,CACL,KAAA,CAAOE,CAAAA,CACP,YAAA,CAAcC,CAAAA,CACd,MAAA,CAAAQ,CACF,CAAA,CAAA,CACA,CAACT,CAAAA,CAAcC,CAAAA,CAAcQ,CAAM,CACrC,CAAA,CAEA,OAAOX,4BAAAA,CACL,CAAA,EAAA,CAAO,CACL,KAAA,CAAOQ,CAAAA,CACP,YAAA,CAAAN,CAAAA,CACA,QAAA,CAAAI,CAAAA,CACA,OAAA,CAAAV,CAAAA,CACA,YAAA,CAAcO,CAAAA,CACd,MAAA,CAAAQ,CAAAA,CACA,IAAA,CAAAC,CAAAA,CACA,KAAA,CAAAC,CACF,CAAA,CAAA,CACA,CAACL,CAAAA,CAAON,CAAAA,CAAcI,CAAAA,CAAUV,CAAAA,CAASO,CAAAA,CAAcQ,CAAAA,CAAQC,CAAAA,CAAMC,CAAK,CAC5E,CACF,CAAA,qXAAA","file":"/builds/kenji.ccp-group/bit-form/dist/react-native/index.cjs","sourcesContent":[null,"import { useMemo, useCallback } from \"react\";\nimport { useBitFieldBase } from \"../react/use-bit-field-base\";\nimport {\n BitPath,\n BitPathValue,\n createFrameworkMaskedFieldBinding,\n deriveFieldMeta,\n} from \"../core\";\nimport type { UseBitFieldNativeResult } from \"./types\";\n\nexport function useBitField<\n TForm extends object = any,\n P extends BitPath<TForm> = BitPath<TForm>,\n>(path: P): UseBitFieldNativeResult<TForm, P> {\n const { fieldState, setBlur, store } = useBitFieldBase<\n BitPathValue<TForm, P>,\n TForm,\n P\n >(path);\n\n const { fieldController } = useMemo(() => {\n return createFrameworkMaskedFieldBinding(store, path);\n }, [store, path]);\n\n const displayValue = useMemo(\n () => fieldController.displayValue(fieldState.value),\n [fieldState.value, fieldController],\n );\n\n const handleChange = useCallback(\n (text: string) => fieldController.setValue(text),\n [fieldController],\n );\n\n const setValue = useCallback(\n (val: BitPathValue<TForm, P> | string | number | null | undefined) =>\n fieldController.setValue(val),\n [fieldController],\n );\n\n const { value } = fieldState;\n const metaState = deriveFieldMeta(fieldState);\n\n const onBlur = useCallback(() => {\n setBlur();\n }, [setBlur]);\n\n const meta = useMemo(\n () => ({\n error: metaState.error,\n touched: metaState.touched,\n invalid: metaState.invalid,\n isValidating: metaState.isValidating,\n isDirty: metaState.isDirty,\n isHidden: metaState.isHidden,\n isRequired: metaState.isRequired,\n hasError: metaState.hasError,\n }),\n [\n metaState.error,\n metaState.touched,\n metaState.invalid,\n metaState.isValidating,\n metaState.isDirty,\n metaState.isHidden,\n metaState.isRequired,\n metaState.hasError,\n ],\n );\n\n const props = useMemo(\n () => ({\n value: displayValue,\n onChangeText: handleChange,\n onBlur,\n }),\n [displayValue, handleChange, onBlur],\n );\n\n return useMemo(\n () => ({\n value: value as BitPathValue<TForm, P>,\n displayValue,\n setValue,\n setBlur,\n onChangeText: handleChange,\n onBlur,\n meta,\n props,\n }),\n [value, displayValue, setValue, setBlur, handleChange, onBlur, meta, props],\n );\n}\n"]}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export { B as BitFormProvider, U as UseBitPersistResult, u as useBitArray, a as useBitForm, b as useBitPersist, c as useBitScope, d as useBitSteps, e as useBitStore, f as useBitWatch } from '../use-bit-persist-
|
|
1
|
+
export { B as BitFormProvider, U as UseBitPersistResult, u as useBitArray, a as useBitForm, b as useBitPersist, c as useBitScope, d as useBitSteps, e as useBitStore, f as useBitWatch } from '../use-bit-persist-Dsr69hme.cjs';
|
|
2
2
|
import { d as BitPath, e as BitPathValue } from '../state-types-8bUndWfg.cjs';
|
|
3
3
|
import '../bus-DzTqgkZ4.cjs';
|
|
4
|
-
export { S as ScopeStatus, V as ValidateScopeResult } from '../runtime-types-
|
|
4
|
+
export { S as ScopeStatus, V as ValidateScopeResult } from '../runtime-types-BLCkMgcy.cjs';
|
|
5
5
|
import 'react';
|
|
6
|
-
import '../store-api-types-
|
|
6
|
+
import '../store-api-types-D7i0KWbr.cjs';
|
|
7
7
|
import '../types-CUXh7PqD.cjs';
|
|
8
|
-
import '../config-types-
|
|
9
|
-
import '../meta-types-
|
|
8
|
+
import '../config-types-mZFlp2Bi.cjs';
|
|
9
|
+
import '../meta-types-1Xcht8hj.cjs';
|
|
10
10
|
import '../upload-C4JqIaU2.cjs';
|
|
11
11
|
import '../field-binding-X5TkvfUt.cjs';
|
|
12
12
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
export { B as BitFormProvider, U as UseBitPersistResult, u as useBitArray, a as useBitForm, b as useBitPersist, c as useBitScope, d as useBitSteps, e as useBitStore, f as useBitWatch } from '../use-bit-persist-
|
|
1
|
+
export { B as BitFormProvider, U as UseBitPersistResult, u as useBitArray, a as useBitForm, b as useBitPersist, c as useBitScope, d as useBitSteps, e as useBitStore, f as useBitWatch } from '../use-bit-persist-CFcuAzwp.js';
|
|
2
2
|
import { d as BitPath, e as BitPathValue } from '../state-types-8bUndWfg.js';
|
|
3
3
|
import '../bus-BFOBGmd9.js';
|
|
4
|
-
export { S as ScopeStatus, V as ValidateScopeResult } from '../runtime-types-
|
|
4
|
+
export { S as ScopeStatus, V as ValidateScopeResult } from '../runtime-types-BLCkMgcy.js';
|
|
5
5
|
import 'react';
|
|
6
|
-
import '../store-api-types-
|
|
6
|
+
import '../store-api-types-CgRVo2DA.js';
|
|
7
7
|
import '../types-CUXh7PqD.js';
|
|
8
|
-
import '../config-types-
|
|
9
|
-
import '../meta-types-
|
|
8
|
+
import '../config-types-DB6FaTiZ.js';
|
|
9
|
+
import '../meta-types-1Xcht8hj.js';
|
|
10
10
|
import '../upload-ao6skK9K.js';
|
|
11
11
|
import '../field-binding-Bi1g-D8X.js';
|
|
12
12
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as x,b as v,c as y,d as h,e as V,f as T,g,h as R,i as S}from"../chunk-
|
|
1
|
+
import{a as x,b as v,c as y,d as h,e as V,f as T,g,h as R,i as S}from"../chunk-EYCJKAK3.js";import"../chunk-5NA2TFPG.js";import"../chunk-7T7L2TZX.js";import{h as f}from"../chunk-L42NQRVD.js";import"../chunk-W2E5UIXT.js";import"../chunk-UIKO6GGW.js";import{a as P}from"../chunk-L57KMBXS.js";import"../chunk-Y7TQTZY7.js";import"../chunk-UBVVBVLS.js";import"../chunk-MBEQLBJB.js";import"../chunk-DGEGYNQL.js";import{useMemo as i,useCallback as n}from"react";function U(u){let{fieldState:r,setBlur:o,store:m}=h(u),{fieldController:t}=i(()=>f(m,u),[m,u]),s=i(()=>t.displayValue(r.value),[r.value,t]),a=n(d=>t.setValue(d),[t]),p=n(d=>t.setValue(d),[t]),{value:B}=r,e=P(r),l=n(()=>{o()},[o]),c=i(()=>({error:e.error,touched:e.touched,invalid:e.invalid,isValidating:e.isValidating,isDirty:e.isDirty,isHidden:e.isHidden,isRequired:e.isRequired,hasError:e.hasError}),[e.error,e.touched,e.invalid,e.isValidating,e.isDirty,e.isHidden,e.isRequired,e.hasError]),F=i(()=>({value:s,onChangeText:a,onBlur:l}),[s,a,l]);return i(()=>({value:B,displayValue:s,setValue:p,setBlur:o,onChangeText:a,onBlur:l,meta:c,props:F}),[B,s,p,o,a,l,c,F])}export{x as BitFormProvider,V as useBitArray,U as useBitField,y as useBitForm,S as useBitPersist,T as useBitScope,g as useBitSteps,v as useBitStore,R as useBitWatch};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/resolvers/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";require('../chunk-MFSDDSVG.cjs');
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/resolvers/index.cjs"],"names":[],"mappings":"AAAA,8CAA6B","file":"/builds/kenji.ccp-group/bit-form/dist/resolvers/index.cjs"}
|
|
@@ -1,9 +1 @@
|
|
|
1
|
-
export { joiResolver } from './joi.cjs';
|
|
2
|
-
export { zodResolver } from './zod.cjs';
|
|
3
|
-
export { yupResolver } from './yup.cjs';
|
|
4
1
|
export { BitJoiResolverConfig, BitResolverScopeOptions, BitYupResolverConfig, BitZodResolverConfig } from './types.cjs';
|
|
5
|
-
import 'joi';
|
|
6
|
-
import '../state-types-8bUndWfg.cjs';
|
|
7
|
-
import '../bus-DzTqgkZ4.cjs';
|
|
8
|
-
import 'zod';
|
|
9
|
-
import 'yup';
|
|
@@ -1,9 +1 @@
|
|
|
1
|
-
export { joiResolver } from './joi.js';
|
|
2
|
-
export { zodResolver } from './zod.js';
|
|
3
|
-
export { yupResolver } from './yup.js';
|
|
4
1
|
export { BitJoiResolverConfig, BitResolverScopeOptions, BitYupResolverConfig, BitZodResolverConfig } from './types.js';
|
|
5
|
-
import 'joi';
|
|
6
|
-
import '../state-types-8bUndWfg.js';
|
|
7
|
-
import '../bus-BFOBGmd9.js';
|
|
8
|
-
import 'zod';
|
|
9
|
-
import 'yup';
|
package/dist/resolvers/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"../chunk-FQLJOSF7.js";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/resolvers/joi.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunk4WPLTOBTcjs = require('../chunk-4WPLTOBT.cjs');var f=(a,r)=>async(l,p)=>{let{error:o}=a.validate(l,{abortEarly:_nullishCoalesce(_optionalChain([r, 'optionalAccess', _ => _.abortEarly]), () => (!1)),allowUnknown:_nullishCoalesce(_optionalChain([r, 'optionalAccess', _2 => _2.allowUnknown]), () => (!1)),stripUnknown:_nullishCoalesce(_optionalChain([r, 'optionalAccess', _3 => _3.stripUnknown]), () => (!1))});if(!o)return{};let e={};return o.details.forEach(t=>{let c=_chunk4WPLTOBTcjs.a.call(void 0, t.path.join("."));_chunk4WPLTOBTcjs.b.call(void 0, e,c,t.message)}),_chunk4WPLTOBTcjs.c.call(void 0, e,_optionalChain([p, 'optionalAccess', _4 => _4.scopeFields]))};exports.joiResolver = f;
|
|
2
2
|
//# sourceMappingURL=joi.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/resolvers/joi.cjs","../../src/resolvers/joi.ts"],"names":["joiResolver","schema","config","values","options","error","errors","detail","path","normalizeErrorPath","setFirstError","filterErrorsByScope"],"mappings":"AAAA,0uBAAuD,ICK1CA,CAAAA,CAAc,CACzBC,CAAAA,CACAC,CAAAA,CAAAA,EAEO,KAAA,CACLC,CAAAA,CACAC,CAAAA,CAAAA,EAC0B,CAC1B,GAAM,CAAE,KAAA,CAAAC,CAAM,CAAA,CAAIJ,CAAAA,CAAO,QAAA,CAASE,CAAAA,CAAQ,CACxC,UAAA,kCAAYD,CAAAA,2BAAQ,YAAA,SAAc,CAAA,GAAA,CAClC,YAAA,kCAAcA,CAAAA,6BAAQ,cAAA,SAAgB,CAAA,GAAA,CACtC,YAAA,kCAAcA,CAAAA,6BAAQ,cAAA,SAAgB,CAAA,GACxC,CAAC,CAAA,CAED,EAAA,CAAI,CAACG,CAAAA,CAAO,MAAO,CAAC,CAAA,CAEpB,IAAMC,CAAAA,CAAuB,CAAC,CAAA,CAE9B,OAAAD,CAAAA,CAAM,OAAA,CAAQ,OAAA,CAASE,CAAAA,EAAW,CAChC,IAAMC,CAAAA,CAAOC,iCAAAA,CAAmBF,CAAO,IAAA,CAAK,IAAA,CAAK,GAAG,CAAC,CAAA,CAErDG,iCAAAA,CAAcJ,CAAQE,CAAAA,CAAMD,CAAAA,CAAO,OAAO,CAC5C,CAAC,CAAA,CAEMI,iCAAAA,CAAoBL,iBAAQF,CAAAA,6BAAS,aAAW,CACzD,CAAA,CAAA,wBAAA","file":"/builds/kenji.ccp-group/bit-form/dist/resolvers/joi.cjs","sourcesContent":[null,"import { ObjectSchema } from \"joi\";\nimport { BitErrors } from \"../core\";\nimport { filterErrorsByScope, setFirstError, normalizeErrorPath } from \"./utils\";\nimport { BitJoiResolverConfig, BitResolverScopeOptions } from \"./types\";\n\nexport const joiResolver = <T extends object>(\n schema: ObjectSchema<T>,\n config?: BitJoiResolverConfig,\n) => {\n return async (\n values: T,\n options?: BitResolverScopeOptions,\n ): Promise<BitErrors<T>> => {\n const { error } = schema.validate(values, {\n abortEarly: config?.abortEarly ?? false,\n allowUnknown: config?.allowUnknown ?? false,\n stripUnknown: config?.stripUnknown ?? false,\n });\n\n if (!error) return {};\n\n const errors: BitErrors<T> = {};\n\n error.details.forEach((detail) => {\n const path = normalizeErrorPath(detail.path.join(\".\"));\n\n setFirstError(errors, path, detail.message);\n });\n\n return filterErrorsByScope(errors, options?.scopeFields);\n };\n};\n"]}
|
package/dist/resolvers/joi.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a as s,b as i,c as n}from"../chunk-HTMNDK6W.js";var f=(a,r)=>async(l,p)=>{let{error:o}=a.validate(l,{abortEarly:r?.abortEarly??!1,allowUnknown:r?.allowUnknown??!1,stripUnknown:r?.stripUnknown??!1});if(!o)return{};let e={};return o.details.forEach(t=>{let c=s(t.path.join("."));i(e,c,t.message)}),n(e,p?.scopeFields)};export{f as joiResolver};
|
|
2
2
|
//# sourceMappingURL=joi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/resolvers/joi.ts"],"sourcesContent":["import { ObjectSchema } from \"joi\";\nimport { BitErrors } from \"../core\";\nimport { filterErrorsByScope, setFirstError, normalizeErrorPath } from \"./utils\";\nimport { BitJoiResolverConfig, BitResolverScopeOptions } from \"./types\";\n\nexport const joiResolver = <T extends object>(\n schema: ObjectSchema<T>,\n config?: BitJoiResolverConfig,\n) => {\n return async (\n values: T,\n options?: BitResolverScopeOptions,\n ): Promise<BitErrors<T>> => {\n const { error } = schema.validate(values, {\n abortEarly: config?.abortEarly ?? false,\n allowUnknown: config?.allowUnknown ?? false,\n stripUnknown: config?.stripUnknown ?? false,\n });\n\n if (!error) return {};\n\n const errors: BitErrors<T> = {};\n\n error.details.forEach((detail) => {\n const path = normalizeErrorPath(detail.path.join(\".\"));\n\n setFirstError(errors, path, detail.message);\n });\n\n return filterErrorsByScope(errors, options?.scopeFields);\n };\n};\n"],"mappings":"uDAKO,IAAMA,EAAc,CACzBC,EACAC,IAEO,MACLC,EACAC,IAC0B,CAC1B,GAAM,CAAE,MAAAC,CAAM,EAAIJ,EAAO,SAASE,EAAQ,CACxC,WAAYD,GAAQ,YAAc,GAClC,aAAcA,GAAQ,cAAgB,GACtC,aAAcA,GAAQ,cAAgB,EACxC,CAAC,EAED,GAAI,CAACG,EAAO,MAAO,CAAC,EAEpB,IAAMC,EAAuB,CAAC,EAE9B,OAAAD,EAAM,QAAQ,QAASE,GAAW,CAChC,IAAMC,EAAOC,EAAmBF,EAAO,KAAK,KAAK,GAAG,CAAC,EAErDG,EAAcJ,EAAQE,EAAMD,EAAO,OAAO,CAC5C,CAAC,EAEMI,EAAoBL,EAAQF,GAAS,WAAW,CACzD","names":["joiResolver","schema","config","values","options","error","errors","detail","path","normalizeErrorPath","setFirstError","filterErrorsByScope"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/resolvers/types.cjs"],"names":[],"mappings":"AAAA,8CAA6B","file":"/builds/kenji.ccp-group/bit-form/dist/resolvers/types.cjs"}
|
package/dist/resolvers/yup.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunk4WPLTOBTcjs = require('../chunk-4WPLTOBT.cjs');var _yup = require('yup');var y=(l,s)=>async(p,o)=>{let e={};if(_optionalChain([o, 'optionalAccess', _ => _.scopeFields])&&o.scopeFields.length>0)return await Promise.all(o.scopeFields.map(async t=>{try{await l.validateAt(t,p,{abortEarly:_nullishCoalesce(_optionalChain([s, 'optionalAccess', _2 => _2.abortEarly]), () => (!1))})}catch(r){if(r instanceof _yup.ValidationError)if(r.inner&&r.inner.length>0)for(let n of r.inner)n.path&&_chunk4WPLTOBTcjs.b.call(void 0, e,_chunk4WPLTOBTcjs.a.call(void 0, n.path),n.message);else r.path&&_chunk4WPLTOBTcjs.b.call(void 0, e,_chunk4WPLTOBTcjs.a.call(void 0, r.path),r.message);else throw r}})),e;try{return await l.validate(p,{abortEarly:_nullishCoalesce(_optionalChain([s, 'optionalAccess', _3 => _3.abortEarly]), () => (!1)),stripUnknown:_nullishCoalesce(_optionalChain([s, 'optionalAccess', _4 => _4.stripUnknown]), () => (!1))}),{}}catch(t){if(t instanceof _yup.ValidationError){for(let r of _nullishCoalesce(t.inner, () => ([])))r.path&&_chunk4WPLTOBTcjs.b.call(void 0, e,_chunk4WPLTOBTcjs.a.call(void 0, r.path),r.message);return _chunk4WPLTOBTcjs.c.call(void 0, e,_optionalChain([o, 'optionalAccess', _5 => _5.scopeFields]))}throw t}};exports.yupResolver = y;
|
|
2
2
|
//# sourceMappingURL=yup.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/resolvers/yup.cjs","../../src/resolvers/yup.ts"],"names":["yupResolver","schema","config","values","options","errors","field","error","ValidationError","item","setFirstError","normalizeErrorPath","filterErrorsByScope"],"mappings":"AAAA,0uBAAuD,0BCAf,IAS3BA,CAAAA,CAAc,CACzBC,CAAAA,CACAC,CAAAA,CAAAA,EAEO,KAAA,CACLC,CAAAA,CACAC,CAAAA,CAAAA,EAC0B,CAC1B,IAAMC,CAAAA,CAAuB,CAAC,CAAA,CAE9B,EAAA,iBAAID,CAAAA,2BAAS,aAAA,EAAeA,CAAAA,CAAQ,WAAA,CAAY,MAAA,CAAS,CAAA,CACvD,OAAA,MAAM,OAAA,CAAQ,GAAA,CACZA,CAAAA,CAAQ,WAAA,CAAY,GAAA,CAAI,MAAOE,CAAAA,EAAU,CACvC,GAAI,CACF,MAAML,CAAAA,CAAO,UAAA,CAAWK,CAAAA,CAAOH,CAAAA,CAAQ,CACrC,UAAA,kCAAYD,CAAAA,6BAAQ,YAAA,SAAc,CAAA,GACpC,CAAC,CACH,CAAA,KAAA,CAASK,CAAAA,CAAgB,CACvB,EAAA,CAAIA,EAAAA,WAAiBC,oBAAAA,CACnB,EAAA,CAAID,CAAAA,CAAM,KAAA,EAASA,CAAAA,CAAM,KAAA,CAAM,MAAA,CAAS,CAAA,CACtC,GAAA,CAAA,IAAWE,EAAAA,GAAQF,CAAAA,CAAM,KAAA,CACnBE,CAAAA,CAAK,IAAA,EACPC,iCAAAA,CAAcL,CAAQM,iCAAAA,CAAmBF,CAAK,IAAI,CAAA,CAAGA,CAAAA,CAAK,OAAO,CAAA,CAAA,KAG5DF,CAAAA,CAAM,IAAA,EACfG,iCAAAA,CAAcL,CAAQM,iCAAAA,CAAmBJ,CAAM,IAAI,CAAA,CAAGA,CAAAA,CAAM,OAAO,CAAA,CAAA,KAGrE,MAAMA,CAEV,CACF,CAAC,CACH,CAAA,CACOF,CAAAA,CAGT,GAAI,CACF,OAAA,MAAMJ,CAAAA,CAAO,QAAA,CAASE,CAAAA,CAAQ,CAC5B,UAAA,kCAAYD,CAAAA,6BAAQ,YAAA,SAAc,CAAA,GAAA,CAClC,YAAA,kCAAcA,CAAAA,6BAAQ,cAAA,SAAgB,CAAA,GACxC,CAAC,CAAA,CACM,CAAC,CACV,CAAA,KAAA,CAASK,CAAAA,CAAgB,CACvB,EAAA,CAAIA,EAAAA,WAAiBC,oBAAAA,CAAiB,CACpC,GAAA,CAAA,IAAWC,EAAAA,oBAAQF,CAAAA,CAAM,KAAA,SAAS,CAAC,GAAA,CAC7BE,CAAAA,CAAK,IAAA,EACPC,iCAAAA,CAAcL,CAAQM,iCAAAA,CAAmBF,CAAK,IAAI,CAAA,CAAGA,CAAAA,CAAK,OAAO,CAAA,CAIrE,OAAOG,iCAAAA,CAAoBP,iBAAQD,CAAAA,6BAAS,aAAW,CACzD,CAEA,MAAMG,CACR,CACF,CAAA,CAAA,wBAAA","file":"/builds/kenji.ccp-group/bit-form/dist/resolvers/yup.cjs","sourcesContent":[null,"import { ValidationError, Schema } from \"yup\";\nimport { BitErrors } from \"../core\";\nimport {\n filterErrorsByScope,\n normalizeErrorPath,\n setFirstError,\n} from \"./utils\";\nimport { BitResolverScopeOptions, BitYupResolverConfig } from \"./types\";\n\nexport const yupResolver = <T extends object>(\n schema: Schema<T>,\n config?: BitYupResolverConfig,\n) => {\n return async (\n values: T,\n options?: BitResolverScopeOptions,\n ): Promise<BitErrors<T>> => {\n const errors: BitErrors<T> = {};\n\n if (options?.scopeFields && options.scopeFields.length > 0) {\n await Promise.all(\n options.scopeFields.map(async (field) => {\n try {\n await schema.validateAt(field, values, {\n abortEarly: config?.abortEarly ?? false,\n });\n } catch (error: unknown) {\n if (error instanceof ValidationError) {\n if (error.inner && error.inner.length > 0) {\n for (const item of error.inner) {\n if (item.path) {\n setFirstError(errors, normalizeErrorPath(item.path), item.message);\n }\n }\n } else if (error.path) {\n setFirstError(errors, normalizeErrorPath(error.path), error.message);\n }\n } else {\n throw error;\n }\n }\n }),\n );\n return errors;\n }\n\n try {\n await schema.validate(values, {\n abortEarly: config?.abortEarly ?? false,\n stripUnknown: config?.stripUnknown ?? false,\n });\n return {};\n } catch (error: unknown) {\n if (error instanceof ValidationError) {\n for (const item of error.inner ?? []) {\n if (item.path) {\n setFirstError(errors, normalizeErrorPath(item.path), item.message);\n }\n }\n\n return filterErrorsByScope(errors, options?.scopeFields);\n }\n\n throw error;\n }\n };\n};\n"]}
|
package/dist/resolvers/yup.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a as i,b as a,c as f}from"../chunk-HTMNDK6W.js";import{ValidationError as c}from"yup";var y=(l,s)=>async(p,o)=>{let e={};if(o?.scopeFields&&o.scopeFields.length>0)return await Promise.all(o.scopeFields.map(async t=>{try{await l.validateAt(t,p,{abortEarly:s?.abortEarly??!1})}catch(r){if(r instanceof c)if(r.inner&&r.inner.length>0)for(let n of r.inner)n.path&&a(e,i(n.path),n.message);else r.path&&a(e,i(r.path),r.message);else throw r}})),e;try{return await l.validate(p,{abortEarly:s?.abortEarly??!1,stripUnknown:s?.stripUnknown??!1}),{}}catch(t){if(t instanceof c){for(let r of t.inner??[])r.path&&a(e,i(r.path),r.message);return f(e,o?.scopeFields)}throw t}};export{y as yupResolver};
|
|
2
2
|
//# sourceMappingURL=yup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/resolvers/yup.ts"],"sourcesContent":["import { ValidationError, Schema } from \"yup\";\nimport { BitErrors } from \"../core\";\nimport {\n filterErrorsByScope,\n normalizeErrorPath,\n setFirstError,\n} from \"./utils\";\nimport { BitResolverScopeOptions, BitYupResolverConfig } from \"./types\";\n\nexport const yupResolver = <T extends object>(\n schema: Schema<T>,\n config?: BitYupResolverConfig,\n) => {\n return async (\n values: T,\n options?: BitResolverScopeOptions,\n ): Promise<BitErrors<T>> => {\n const errors: BitErrors<T> = {};\n\n if (options?.scopeFields && options.scopeFields.length > 0) {\n await Promise.all(\n options.scopeFields.map(async (field) => {\n try {\n await schema.validateAt(field, values, {\n abortEarly: config?.abortEarly ?? false,\n });\n } catch (error: unknown) {\n if (error instanceof ValidationError) {\n if (error.inner && error.inner.length > 0) {\n for (const item of error.inner) {\n if (item.path) {\n setFirstError(errors, normalizeErrorPath(item.path), item.message);\n }\n }\n } else if (error.path) {\n setFirstError(errors, normalizeErrorPath(error.path), error.message);\n }\n } else {\n throw error;\n }\n }\n }),\n );\n return errors;\n }\n\n try {\n await schema.validate(values, {\n abortEarly: config?.abortEarly ?? false,\n stripUnknown: config?.stripUnknown ?? false,\n });\n return {};\n } catch (error: unknown) {\n if (error instanceof ValidationError) {\n for (const item of error.inner ?? []) {\n if (item.path) {\n setFirstError(errors, normalizeErrorPath(item.path), item.message);\n }\n }\n\n return filterErrorsByScope(errors, options?.scopeFields);\n }\n\n throw error;\n }\n };\n};\n"],"mappings":"uDAAA,OAAS,mBAAAA,MAA+B,MASjC,IAAMC,EAAc,CACzBC,EACAC,IAEO,MACLC,EACAC,IAC0B,CAC1B,IAAMC,EAAuB,CAAC,EAE9B,GAAID,GAAS,aAAeA,EAAQ,YAAY,OAAS,EACvD,aAAM,QAAQ,IACZA,EAAQ,YAAY,IAAI,MAAOE,GAAU,CACvC,GAAI,CACF,MAAML,EAAO,WAAWK,EAAOH,EAAQ,CACrC,WAAYD,GAAQ,YAAc,EACpC,CAAC,CACH,OAASK,EAAgB,CACvB,GAAIA,aAAiBC,EACnB,GAAID,EAAM,OAASA,EAAM,MAAM,OAAS,EACtC,QAAWE,KAAQF,EAAM,MACnBE,EAAK,MACPC,EAAcL,EAAQM,EAAmBF,EAAK,IAAI,EAAGA,EAAK,OAAO,OAG5DF,EAAM,MACfG,EAAcL,EAAQM,EAAmBJ,EAAM,IAAI,EAAGA,EAAM,OAAO,MAGrE,OAAMA,CAEV,CACF,CAAC,CACH,EACOF,EAGT,GAAI,CACF,aAAMJ,EAAO,SAASE,EAAQ,CAC5B,WAAYD,GAAQ,YAAc,GAClC,aAAcA,GAAQ,cAAgB,EACxC,CAAC,EACM,CAAC,CACV,OAASK,EAAgB,CACvB,GAAIA,aAAiBC,EAAiB,CACpC,QAAWC,KAAQF,EAAM,OAAS,CAAC,EAC7BE,EAAK,MACPC,EAAcL,EAAQM,EAAmBF,EAAK,IAAI,EAAGA,EAAK,OAAO,EAIrE,OAAOG,EAAoBP,EAAQD,GAAS,WAAW,CACzD,CAEA,MAAMG,CACR,CACF","names":["ValidationError","yupResolver","schema","config","values","options","errors","field","error","ValidationError","item","setFirstError","normalizeErrorPath","filterErrorsByScope"]}
|
package/dist/resolvers/zod.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunk4WPLTOBTcjs = require('../chunk-4WPLTOBT.cjs');var _zod = require('zod');var h=(n,f)=>async(c,p)=>{try{return await n.parseAsync(c),{}}catch(r){let o={};if(r instanceof _zod.ZodError){for(let e of r.issues){let a=_chunk4WPLTOBTcjs.a.call(void 0, e.path.join("."));_chunk4WPLTOBTcjs.b.call(void 0, o,a,e.message)}return _chunk4WPLTOBTcjs.c.call(void 0, o,_optionalChain([p, 'optionalAccess', _ => _.scopeFields]))}throw r}};exports.zodResolver = h;
|
|
2
2
|
//# sourceMappingURL=zod.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/resolvers/zod.cjs","../../src/resolvers/zod.ts"],"names":["zodResolver","schema","_config","values","options","error","errors","ZodError","issue","path","normalizeErrorPath","setFirstError","filterErrorsByScope"],"mappings":"AAAA,soBAAuD,0BCAnB,IAKvBA,CAAAA,CAAc,CACzBC,CAAAA,CACAC,CAAAA,CAAAA,EAEO,KAAA,CACLC,CAAAA,CACAC,CAAAA,CAAAA,EAC0B,CAC1B,GAAI,CACF,OAAA,MAAMH,CAAAA,CAAO,UAAA,CAAWE,CAAM,CAAA,CACvB,CAAC,CACV,CAAA,KAAA,CAASE,CAAAA,CAAgB,CACvB,IAAMC,CAAAA,CAAuB,CAAC,CAAA,CAE9B,EAAA,CAAID,EAAAA,WAAiBE,aAAAA,CAAU,CAC7B,GAAA,CAAA,IAAWC,EAAAA,GAASH,CAAAA,CAAM,MAAA,CAAQ,CAChC,IAAMI,CAAAA,CAAOC,iCAAAA,CAAmBF,CAAM,IAAA,CAAK,IAAA,CAAK,GAAG,CAAC,CAAA,CACpDG,iCAAAA,CAAcL,CAAQG,CAAAA,CAAMD,CAAAA,CAAM,OAAO,CAC3C,CAEA,OAAOI,iCAAAA,CAAoBN,iBAAQF,CAAAA,2BAAS,aAAW,CACzD,CAEA,MAAMC,CACR,CACF,CAAA,CAAA,wBAAA","file":"/builds/kenji.ccp-group/bit-form/dist/resolvers/zod.cjs","sourcesContent":[null,"import { ZodError, ZodSchema } from \"zod\";\nimport { BitErrors } from \"../core\";\nimport { filterErrorsByScope, setFirstError, normalizeErrorPath } from \"./utils\";\nimport { BitResolverScopeOptions, BitZodResolverConfig } from \"./types\";\n\nexport const zodResolver = <T extends object>(\n schema: ZodSchema<T>,\n _config?: BitZodResolverConfig,\n) => {\n return async (\n values: T,\n options?: BitResolverScopeOptions,\n ): Promise<BitErrors<T>> => {\n try {\n await schema.parseAsync(values);\n return {};\n } catch (error: unknown) {\n const errors: BitErrors<T> = {};\n\n if (error instanceof ZodError) {\n for (const issue of error.issues) {\n const path = normalizeErrorPath(issue.path.join(\".\"));\n setFirstError(errors, path, issue.message);\n }\n\n return filterErrorsByScope(errors, options?.scopeFields);\n }\n\n throw error;\n }\n };\n};\n"]}
|
package/dist/resolvers/zod.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a as t,b as s,c as i}from"../chunk-HTMNDK6W.js";import{ZodError as m}from"zod";var h=(n,f)=>async(c,p)=>{try{return await n.parseAsync(c),{}}catch(r){let o={};if(r instanceof m){for(let e of r.issues){let a=t(e.path.join("."));s(o,a,e.message)}return i(o,p?.scopeFields)}throw r}};export{h as zodResolver};
|
|
2
2
|
//# sourceMappingURL=zod.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/resolvers/zod.ts"],"sourcesContent":["import { ZodError, ZodSchema } from \"zod\";\nimport { BitErrors } from \"../core\";\nimport { filterErrorsByScope, setFirstError, normalizeErrorPath } from \"./utils\";\nimport { BitResolverScopeOptions, BitZodResolverConfig } from \"./types\";\n\nexport const zodResolver = <T extends object>(\n schema: ZodSchema<T>,\n _config?: BitZodResolverConfig,\n) => {\n return async (\n values: T,\n options?: BitResolverScopeOptions,\n ): Promise<BitErrors<T>> => {\n try {\n await schema.parseAsync(values);\n return {};\n } catch (error: unknown) {\n const errors: BitErrors<T> = {};\n\n if (error instanceof ZodError) {\n for (const issue of error.issues) {\n const path = normalizeErrorPath(issue.path.join(\".\"));\n setFirstError(errors, path, issue.message);\n }\n\n return filterErrorsByScope(errors, options?.scopeFields);\n }\n\n throw error;\n }\n };\n};\n"],"mappings":"uDAAA,OAAS,YAAAA,MAA2B,MAK7B,IAAMC,EAAc,CACzBC,EACAC,IAEO,MACLC,EACAC,IAC0B,CAC1B,GAAI,CACF,aAAMH,EAAO,WAAWE,CAAM,EACvB,CAAC,CACV,OAASE,EAAgB,CACvB,IAAMC,EAAuB,CAAC,EAE9B,GAAID,aAAiBE,EAAU,CAC7B,QAAWC,KAASH,EAAM,OAAQ,CAChC,IAAMI,EAAOC,EAAmBF,EAAM,KAAK,KAAK,GAAG,CAAC,EACpDG,EAAcL,EAAQG,EAAMD,EAAM,OAAO,CAC3C,CAEA,OAAOI,EAAoBN,EAAQF,GAAS,WAAW,CACzD,CAEA,MAAMC,CACR,CACF","names":["ZodError","zodResolver","schema","_config","values","options","error","errors","ZodError","issue","path","normalizeErrorPath","setFirstError","filterErrorsByScope"]}
|
|
@@ -40,4 +40,4 @@ interface DevToolsOptions {
|
|
|
40
40
|
url?: string;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
export type {
|
|
43
|
+
export type { BitIdFactory as B, DevToolsOptions as D, ScopeStatus as S, ValidateScopeResult as V, BitScheduler as a, BitSubmitResult as b };
|
|
@@ -40,4 +40,4 @@ interface DevToolsOptions {
|
|
|
40
40
|
url?: string;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
export type {
|
|
43
|
+
export type { BitIdFactory as B, DevToolsOptions as D, ScopeStatus as S, ValidateScopeResult as V, BitScheduler as a, BitSubmitResult as b };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { B as BitMask } from './types-CUXh7PqD.js';
|
|
2
2
|
import { c as BitFormGlobal } from './bus-BFOBGmd9.js';
|
|
3
|
-
import { e as BitConfig, V as ValidatorFn, i as BitFieldDefinition,
|
|
3
|
+
import { e as BitConfig, V as ValidatorFn, i as BitFieldDefinition, p as BitPersistResolvedConfig, r as BitPlugin, x as BitOperationalErrorSource } from './config-types-DB6FaTiZ.js';
|
|
4
4
|
import { g as BitState, d as BitPath, c as BitFieldState, e as BitPathValue, f as BitPersistMetadata, D as DeepPartial, b as BitErrors, a as BitArrayPath, B as BitArrayItem } from './state-types-8bUndWfg.js';
|
|
5
|
-
import { D as DevToolsOptions,
|
|
6
|
-
import { a as BitHistoryMetadata, B as BitFormMeta,
|
|
5
|
+
import { D as DevToolsOptions, B as BitIdFactory, a as BitScheduler, S as ScopeStatus, b as BitSubmitResult } from './runtime-types-BLCkMgcy.js';
|
|
6
|
+
import { a as BitHistoryMetadata, B as BitFormMeta, b as BitServerErrorOptions, c as BitValidationOptions } from './meta-types-1Xcht8hj.js';
|
|
7
7
|
|
|
8
8
|
interface BitValidationTriggerOptions {
|
|
9
9
|
forceDebounce?: boolean;
|
|
@@ -162,4 +162,4 @@ interface BitStoreHooksApi<T extends object = Record<string, unknown>> extends B
|
|
|
162
162
|
interface BitFrameworkStoreApi<T extends object = Record<string, unknown>> extends BitStoreApi<T> {
|
|
163
163
|
}
|
|
164
164
|
|
|
165
|
-
export type { BitEqualityFn as B, BitFrameworkConfig as a, BitFrameworkStoreApi as b,
|
|
165
|
+
export type { BitEqualityFn as B, BitFrameworkConfig as a, BitFrameworkStoreApi as b, BitScopedSelectorSubscriptionOptions as c, BitSelector as d, BitSelectorSubscriptionOptions as e, BitStoreApi as f, BitTrackedSelectorSubscriptionOptions as g, BitStoreHooksApi as h, BitStoreFeatureApi as i, BitStoreObserveSliceApi as j, BitStoreReadSliceApi as k, BitStoreWriteSliceApi as l };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { B as BitMask } from './types-CUXh7PqD.cjs';
|
|
2
2
|
import { c as BitFormGlobal } from './bus-DzTqgkZ4.cjs';
|
|
3
|
-
import { e as BitConfig, V as ValidatorFn, i as BitFieldDefinition,
|
|
3
|
+
import { e as BitConfig, V as ValidatorFn, i as BitFieldDefinition, p as BitPersistResolvedConfig, r as BitPlugin, x as BitOperationalErrorSource } from './config-types-mZFlp2Bi.cjs';
|
|
4
4
|
import { g as BitState, d as BitPath, c as BitFieldState, e as BitPathValue, f as BitPersistMetadata, D as DeepPartial, b as BitErrors, a as BitArrayPath, B as BitArrayItem } from './state-types-8bUndWfg.cjs';
|
|
5
|
-
import { D as DevToolsOptions,
|
|
6
|
-
import { a as BitHistoryMetadata, B as BitFormMeta,
|
|
5
|
+
import { D as DevToolsOptions, B as BitIdFactory, a as BitScheduler, S as ScopeStatus, b as BitSubmitResult } from './runtime-types-BLCkMgcy.cjs';
|
|
6
|
+
import { a as BitHistoryMetadata, B as BitFormMeta, b as BitServerErrorOptions, c as BitValidationOptions } from './meta-types-1Xcht8hj.cjs';
|
|
7
7
|
|
|
8
8
|
interface BitValidationTriggerOptions {
|
|
9
9
|
forceDebounce?: boolean;
|
|
@@ -162,4 +162,4 @@ interface BitStoreHooksApi<T extends object = Record<string, unknown>> extends B
|
|
|
162
162
|
interface BitFrameworkStoreApi<T extends object = Record<string, unknown>> extends BitStoreApi<T> {
|
|
163
163
|
}
|
|
164
164
|
|
|
165
|
-
export type { BitEqualityFn as B, BitFrameworkConfig as a, BitFrameworkStoreApi as b,
|
|
165
|
+
export type { BitEqualityFn as B, BitFrameworkConfig as a, BitFrameworkStoreApi as b, BitScopedSelectorSubscriptionOptions as c, BitSelector as d, BitSelectorSubscriptionOptions as e, BitStoreApi as f, BitTrackedSelectorSubscriptionOptions as g, BitStoreHooksApi as h, BitStoreFeatureApi as i, BitStoreObserveSliceApi as j, BitStoreReadSliceApi as k, BitStoreWriteSliceApi as l };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { b as BitFrameworkStoreApi,
|
|
2
|
+
import { b as BitFrameworkStoreApi, f as BitStoreApi } from './store-api-types-CgRVo2DA.js';
|
|
3
3
|
import './bus-BFOBGmd9.js';
|
|
4
|
-
import { d as BitPath, e as BitPathValue,
|
|
4
|
+
import { d as BitPath, e as BitPathValue, b as BitErrors, h as BitTouched, D as DeepPartial, f as BitPersistMetadata, a as BitArrayPath, B as BitArrayItem } from './state-types-8bUndWfg.js';
|
|
5
5
|
import { c as BitHistoryAdapterResult, d as BitPersistAdapterResult, e as BitStepsAdapterResult, f as BitUploadAdapterResult, a as BitArrayBindingField } from './upload-ao6skK9K.js';
|
|
6
|
-
import { S as ScopeStatus, V as ValidateScopeResult } from './runtime-types-
|
|
7
|
-
import {
|
|
6
|
+
import { S as ScopeStatus, V as ValidateScopeResult } from './runtime-types-BLCkMgcy.js';
|
|
7
|
+
import { c as BitValidationOptions, a as BitHistoryMetadata } from './meta-types-1Xcht8hj.js';
|
|
8
8
|
import { B as BitFieldInputEvent } from './field-binding-Bi1g-D8X.js';
|
|
9
9
|
|
|
10
10
|
interface BitFormProviderProps<T extends object> {
|
|
@@ -137,4 +137,4 @@ declare function useBitWatch<TForm extends object = any, P extends BitPath<TForm
|
|
|
137
137
|
|
|
138
138
|
declare function useBitPersist(): UseBitPersistResult;
|
|
139
139
|
|
|
140
|
-
export { BitFormProvider as B, type UseBitPersistResult as U, useBitForm as a, useBitPersist as b, useBitScope as c, useBitSteps as d, useBitStore as e, useBitWatch as f, type UseBitFieldResult as g, type UseBitHistoryResult as h, type UseBitUploadResult as i, type UseBitFieldBindProps as j, type UseBitFieldMeta as k, type
|
|
140
|
+
export { BitFormProvider as B, type UseBitPersistResult as U, useBitForm as a, useBitPersist as b, useBitScope as c, useBitSteps as d, useBitStore as e, useBitWatch as f, type UseBitFieldResult as g, type UseBitHistoryResult as h, type UseBitUploadResult as i, type UseBitFieldBindProps as j, type UseBitFieldMeta as k, type UseBitFormMeta as l, type UseBitFormResult as m, type UseBitStepsResult as n, useBitArray as u };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { b as BitFrameworkStoreApi,
|
|
2
|
+
import { b as BitFrameworkStoreApi, f as BitStoreApi } from './store-api-types-D7i0KWbr.cjs';
|
|
3
3
|
import './bus-DzTqgkZ4.cjs';
|
|
4
|
-
import { d as BitPath, e as BitPathValue,
|
|
4
|
+
import { d as BitPath, e as BitPathValue, b as BitErrors, h as BitTouched, D as DeepPartial, f as BitPersistMetadata, a as BitArrayPath, B as BitArrayItem } from './state-types-8bUndWfg.cjs';
|
|
5
5
|
import { c as BitHistoryAdapterResult, d as BitPersistAdapterResult, e as BitStepsAdapterResult, f as BitUploadAdapterResult, a as BitArrayBindingField } from './upload-C4JqIaU2.cjs';
|
|
6
|
-
import { S as ScopeStatus, V as ValidateScopeResult } from './runtime-types-
|
|
7
|
-
import {
|
|
6
|
+
import { S as ScopeStatus, V as ValidateScopeResult } from './runtime-types-BLCkMgcy.cjs';
|
|
7
|
+
import { c as BitValidationOptions, a as BitHistoryMetadata } from './meta-types-1Xcht8hj.cjs';
|
|
8
8
|
import { B as BitFieldInputEvent } from './field-binding-X5TkvfUt.cjs';
|
|
9
9
|
|
|
10
10
|
interface BitFormProviderProps<T extends object> {
|
|
@@ -137,4 +137,4 @@ declare function useBitWatch<TForm extends object = any, P extends BitPath<TForm
|
|
|
137
137
|
|
|
138
138
|
declare function useBitPersist(): UseBitPersistResult;
|
|
139
139
|
|
|
140
|
-
export { BitFormProvider as B, type UseBitPersistResult as U, useBitForm as a, useBitPersist as b, useBitScope as c, useBitSteps as d, useBitStore as e, useBitWatch as f, type UseBitFieldResult as g, type UseBitHistoryResult as h, type UseBitUploadResult as i, type UseBitFieldBindProps as j, type UseBitFieldMeta as k, type
|
|
140
|
+
export { BitFormProvider as B, type UseBitPersistResult as U, useBitForm as a, useBitPersist as b, useBitScope as c, useBitSteps as d, useBitStore as e, useBitWatch as f, type UseBitFieldResult as g, type UseBitHistoryResult as h, type UseBitUploadResult as i, type UseBitFieldBindProps as j, type UseBitFieldMeta as k, type UseBitFormMeta as l, type UseBitFormResult as m, type UseBitStepsResult as n, useBitArray as u };
|
package/dist/utils.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOWDDAM6Ccjs = require('./chunk-OWDDAM6C.cjs');exports.cleanPrefixedKeys = _chunkOWDDAM6Ccjs.j; exports.extractServerErrors = _chunkOWDDAM6Ccjs.n; exports.isValidationErrorShape = _chunkOWDDAM6Ccjs.m;
|
|
2
2
|
//# sourceMappingURL=utils.cjs.map
|
package/dist/utils.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/
|
|
1
|
+
{"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/utils.cjs"],"names":[],"mappings":"AAAA,iIAAsD,yJAAoF","file":"/builds/kenji.ccp-group/bit-form/dist/utils.cjs"}
|
package/dist/utils.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{j as r,m as e,n as a}from"./chunk-
|
|
1
|
+
import{j as r,m as e,n as a}from"./chunk-UBVVBVLS.js";export{r as cleanPrefixedKeys,a as extractServerErrors,e as isValidationErrorShape};
|
|
2
2
|
//# sourceMappingURL=utils.js.map
|
package/dist/vue/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkH3RTOA6Xcjs = require('../chunk-H3RTOA6X.cjs');require('../chunk-W5CLDRRE.cjs');var _chunkU6UFULNScjs = require('../chunk-U6UFULNS.cjs');var _chunkH27ROY4Fcjs = require('../chunk-H27ROY4F.cjs');var _chunkBSGJ3T5Scjs = require('../chunk-BSGJ3T5S.cjs');var _chunkRHMJPKNVcjs = require('../chunk-RHMJPKNV.cjs');var _chunkH6HGYVRVcjs = require('../chunk-H6HGYVRV.cjs');require('../chunk-AV7YYSFI.cjs');var _chunkOWDDAM6Ccjs = require('../chunk-OWDDAM6C.cjs');require('../chunk-X3DGA5UC.cjs');require('../chunk-725CMNAV.cjs');var _vue = require('vue');var Q=Symbol("BIT_STORE");function se(r){let e=_chunkU6UFULNScjs.d.call(void 0, r);_vue.provide.call(void 0, Q,e),_vue.onUnmounted.call(void 0, ()=>{_optionalChain([e, 'access', _2 => _2.feature, 'optionalAccess', _3 => _3.cleanup, 'optionalCall', _4 => _4()])})}function i(){let r=_vue.inject.call(void 0, Q);if(!r)throw new Error("BitForm Vue hooks devem ser usados sob um provideBitStore");return r}function ue(){let r=i(),e=_vue.shallowRef.call(void 0, {isValid:!0,isDirty:!1,isSubmitting:!1}),t=_vue.ref.call(void 0, null),o=_vue.ref.call(void 0, null),s=_chunkH27ROY4Fcjs.c.call(void 0, r,B=>{e.value=B});_vue.onUnmounted.call(void 0, s);let{controller:a,actions:n}=_chunkH27ROY4Fcjs.i.call(void 0, r,{clearSubmissionState:()=>{t.value=null,o.value=null},setSubmissionResult:B=>{o.value=B},setSubmissionError:B=>{t.value=B}}),p=_vue.computed.call(void 0, ()=>e.value.isValid),u=_vue.computed.call(void 0, ()=>e.value.isSubmitting),v=_vue.computed.call(void 0, ()=>e.value.isDirty),S=a.onSubmit,l=a.reset;return{meta:_vue.reactive.call(void 0, {isValid:p,isDirty:v,isSubmitting:u,submitError:t,lastResponse:o}),getValues:a.getValues,getErrors:a.getErrors,getTouched:a.getTouched,getDirtyValues:a.getDirtyValues,submit:a.submit,onSubmit:S,reset:l,...n}}function k(r){let e=i(),{fieldController:t}=_chunkH27ROY4Fcjs.h.call(void 0, e,r),o=_vue.shallowRef.call(void 0, e.read.getFieldState(r)),s=e.observe.subscribeFieldState(r,d=>{o.value=d});_vue.onUnmounted.call(void 0, ()=>{s(),_chunkH27ROY4Fcjs.j.call(void 0, e,r)});let a=_vue.computed.call(void 0, ()=>o.value.value),n=_vue.computed.call(void 0, ()=>t.displayValue(a.value)),p=_vue.computed.call(void 0, {get:()=>n.value,set:d=>{t.setValue(d)}}),u=_vue.computed.call(void 0, ()=>_chunkH6HGYVRVcjs.a.call(void 0, o.value)),v=_vue.computed.call(void 0, ()=>u.value.error),S=_vue.computed.call(void 0, ()=>u.value.touched),l=_vue.computed.call(void 0, ()=>u.value.invalid),y=_vue.computed.call(void 0, ()=>u.value.isValidating),B=_vue.computed.call(void 0, ()=>u.value.isDirty),V=_vue.computed.call(void 0, ()=>u.value.isHidden),R=_vue.computed.call(void 0, ()=>u.value.isRequired),x=_vue.computed.call(void 0, ()=>u.value.hasError),F=d=>{t.setValue(d)},h=()=>t.setBlur();return{value:a,displayValue:n,modelValue:p,setValue:F,setBlur:h,onInput:d=>{F(d)},onBlur:()=>{h()},meta:_vue.reactive.call(void 0, {error:v,touched:S,invalid:l,isValidating:y,isDirty:B,isHidden:V,isRequired:R,hasError:x})}}function ve(r){let e=i(),t=_chunkH27ROY4Fcjs.g.call(void 0, e,r),o=_vue.shallowRef.call(void 0, t.readItems()),s=e.observe.subscribePath(r,()=>{o.value=t.readItems()});_vue.onUnmounted.call(void 0, ()=>{s(),_chunkH27ROY4Fcjs.k.call(void 0, e,`${r}.`)});let a=_vue.computed.call(void 0, ()=>t.getFields(o.value)),n=_vue.computed.call(void 0, ()=>o.value.length);return{fields:a,length:n,append:t.append,prepend:t.prepend,insert:t.insert,remove:t.remove,move:t.move,swap:t.swap,replace:t.replace,clear:t.clear}}function Be(){let r=i(),e=_vue.shallowRef.call(void 0, _chunkRHMJPKNVcjs.f.call(void 0, r)),t=_chunkRHMJPKNVcjs.g.call(void 0, r,a=>{e.value=a});_vue.onUnmounted.call(void 0, t);let o=()=>{e.value.canUndo&&r.feature.undo()},s=()=>{e.value.canRedo&&r.feature.redo()};return{canUndo:_vue.computed.call(void 0, ()=>e.value.canUndo),canRedo:_vue.computed.call(void 0, ()=>e.value.canRedo),historyIndex:_vue.computed.call(void 0, ()=>e.value.historyIndex),historySize:_vue.computed.call(void 0, ()=>e.value.historySize),undo:o,redo:s}}function ye(r){let e=i(),t=_vue.ref.call(void 0, e.read.getScopeStatus(r)),o=_chunkBSGJ3T5Scjs.a.call(void 0, e,r,v=>{t.value=v});_vue.onUnmounted.call(void 0, ()=>{o()});let s=async()=>{let v=await e.feature.validate({scope:r}),S=e.read.getScopeErrors(r);return{valid:v,errors:S}},a=()=>e.read.getScopeErrors(r),n=_vue.computed.call(void 0, ()=>!t.value.hasErrors),p=_vue.computed.call(void 0, ()=>t.value.isDirty),u=_vue.computed.call(void 0, ()=>t.value.errors);return{scopeName:r,status:t,errors:u,validate:s,getErrors:a,isValid:n,isDirty:p}}function he(r){if(r.length===0)throw new Error("useBitSteps: scopeNames must not be empty");let e=i(),t=_vue.ref.call(void 0, 0),o=_vue.computed.call(void 0, ()=>_nullishCoalesce(r[t.value], () => (""))),s=_vue.ref.call(void 0, e.read.getScopeStatus(o.value)),a=o.value,n=e.observe.subscribeScopeStatus(a,c=>{o.value===a&&(_chunkRHMJPKNVcjs.b.call(void 0, s.value,c)||(s.value=c))}),p=()=>{let c=o.value,f=e.observe.subscribeScopeStatus(c,g=>{o.value===c&&(_chunkRHMJPKNVcjs.b.call(void 0, s.value,g)||(s.value=g))}),d=n;n=f,a=c,d()};_vue.onUnmounted.call(void 0, ()=>{n()});let u=async()=>{let c=o.value,f=t.value,d=await e.feature.validate({scope:c});if(t.value!==f){let P=o.value;return{valid:await e.feature.validate({scope:P}),errors:e.read.getScopeErrors(P)}}let g=e.read.getScopeErrors(c);return{valid:d,errors:g}},v=()=>e.read.getScopeErrors(o.value),S=async()=>{let c=t.value,f=_nullishCoalesce(r[c], () => (""));if(!f)return!1;let d=e.read.getScopeFields(f);if(e.feature.hasValidationsInProgress(d))return!1;let g=await e.feature.validate({scope:f});if(c!==t.value)return!1;if(g)t.value=Math.min(t.value+1,r.length-1),s.value=e.read.getScopeStatus(o.value),p();else{let P=e.read.getScopeErrors(f),T=Object.keys(P);T.length>0&&e.write.markFieldsTouched(T),s.value=e.read.getScopeStatus(f)}return g},l=()=>{t.value=Math.max(t.value-1,0),s.value=e.read.getScopeStatus(o.value),p()},y=c=>{t.value=Math.max(0,Math.min(c-1,r.length-1)),s.value=e.read.getScopeStatus(o.value),p()},B=_vue.computed.call(void 0, ()=>t.value+1),V=_vue.computed.call(void 0, ()=>t.value===0),R=_vue.computed.call(void 0, ()=>t.value>=r.length-1),x=_vue.computed.call(void 0, ()=>!s.value.hasErrors),F=_vue.computed.call(void 0, ()=>s.value.isDirty),h=_vue.computed.call(void 0, ()=>s.value.errors);return{step:B,stepIndex:t,scope:o,next:S,prev:l,goTo:y,isFirst:V,isLast:R,status:s,errors:h,isValid:x,isDirty:F,validate:u,getErrors:v}}function Re(r){let e=i(),t=_chunkOWDDAM6Ccjs.f.call(void 0, e.read.getState().values,r),o=_vue.ref.call(void 0, t),s=e.observe.subscribePath(r,a=>{_chunkOWDDAM6Ccjs.c.call(void 0, o.value,a)||(o.value=a)});return _vue.onUnmounted.call(void 0, s),_vue.readonly.call(void 0, o)}function we(r,e,t){let o=i(),s=k(r),a=null,n=_vue.ref.call(void 0, !1),p={current:0},u={setLoading:l=>{n.value=l},setError:(l,y)=>o.write.setError(l,y),setValue:l=>s.setValue(l),getUploadKey:()=>a,setUploadKey:l=>{a=l},onCallbackError:l=>o.read.config.onUnhandledError(l,"upload")},v=_chunkH3RTOA6Xcjs.a.call(void 0, r,e,u,p),S=_chunkH3RTOA6Xcjs.b.call(void 0, r,t,u,p);return _vue.onUnmounted.call(void 0, ()=>{p.current++,a=null}),{value:s.value,setValue:s.setValue,error:_vue.computed.call(void 0, ()=>s.meta.error),isValidating:_vue.computed.call(void 0, ()=>!!s.meta.isValidating||n.value),upload:v,remove:S}}function Ie(){let r=i(),e=_vue.ref.call(void 0, r.read.getPersistMetadata()),t=_chunkH27ROY4Fcjs.f.call(void 0, r,n=>{e.value=n});return _vue.onUnmounted.call(void 0, ()=>t()),{restore:async()=>r.feature.restorePersisted(),save:async()=>{await r.feature.forceSave()},clear:async()=>{await r.feature.clearPersisted()},meta:_vue.reactive.call(void 0, {isSaving:_vue.computed.call(void 0, ()=>e.value.isSaving),isRestoring:_vue.computed.call(void 0, ()=>e.value.isRestoring),error:_vue.computed.call(void 0, ()=>e.value.error)})}}exports.provideBitStore = se; exports.useBitArray = ve; exports.useBitField = k; exports.useBitForm = ue; exports.useBitHistory = Be; exports.useBitPersist = Ie; exports.useBitScope = ye; exports.useBitSteps = he; exports.useBitStore = i; exports.useBitUpload = we; exports.useBitWatch = Re;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/vue/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/bit-form/bit-form/dist/vue/index.cjs","../../src/vue/context.ts","../../src/vue/use-bit-form.ts","../../src/vue/use-bit-field.ts","../../src/vue/use-bit-array.ts"],"names":["BIT_STORE_KEY","provideBitStore","store","provide","createFrameworkStoreAdapter","useBitStore","inject","useBitForm","state","shallowRef","submitError","ref","lastResponse","unsubscribe","observeFormMetaSnapshot","nextMeta","onUnmounted","controller","actions","createFrameworkFormBinding","result","error","isValid","computed","isSubmitting","isDirty","onSubmit","reset","reactive","useBitField","path","fieldController","createFrameworkMaskedFieldBinding","nextState","cleanupRegisteredField","rawValue","displayValue","modelValue","val","metaState","deriveFieldMeta","touched","invalid","isValidating","isHidden","isRequired","hasError","setValue","setBlur","useBitArray","createArrayBinding","values","cleanupRegisteredPrefix"],"mappings":"AAAA,0uBAAgD,iCAA8B,yDAA0C,yDAAoF,yDAA0C,yDAAwD,yDAA0C,iCAA8B,yDAAiD,iCAA8B,iCAA8B,0BCArb,IAKjCA,CAAAA,CACX,MAAA,CAAO,WAAW,CAAA,CAEb,SAASC,EAAAA,CACdC,CAAAA,CACA,CACAC,0BAAAA,CAAQH,CAAeI,iCAAAA,CAAoC,CAAC,CAC9D,CAEO,SAASC,CAAAA,CAAAA,CAAgC,CAC9C,IAAMH,CAAAA,CAAQI,yBAAAA,CAAoB,CAAA,CAClC,EAAA,CAAI,CAACJ,CAAAA,CACH,MAAM,IAAI,KAAA,CACR,2DACF,CAAA,CACF,OAAOA,CACT,CCrBA,SAKgBK,EAAAA,CAAAA,CAAoD,CAClE,IAAML,CAAAA,CAAQG,CAAAA,CAAe,CAAA,CACvBG,CAAAA,CAAQC,6BAAAA,CACZ,OAAA,CAAS,CAAA,CAAA,CACT,OAAA,CAAS,CAAA,CAAA,CACT,YAAA,CAAc,CAAA,CAChB,CAAC,CAAA,CACKC,CAAAA,CAAcC,sBAAAA,IAAsB,CAAA,CACpCC,CAAAA,CAAeD,sBAAAA,IAAiB,CAAA,CAEhCE,CAAAA,CAAcC,iCAAAA,CAAwBZ,CAAQa,CAAAA,EAAa,CAC/DP,CAAAA,CAAM,KAAA,CAAQO,CAChB,CAAC,CAAA,CAEDC,8BAAAA,CAAuB,CAAA,CAEvB,GAAM,CAAE,UAAA,CAAAC,CAAAA,CAAY,OAAA,CAAAC,CAAQ,CAAA,CAAIC,iCAAAA,CAA2BjB,CAAO,CAChE,oBAAA,CAAsB,CAAA,CAAA,EAAM,CAC1BQ,CAAAA,CAAY,KAAA,CAAQ,IAAA,CACpBE,CAAAA,CAAa,KAAA,CAAQ,IACvB,CAAA,CACA,mBAAA,CAAsBQ,CAAAA,EAAW,CAC/BR,CAAAA,CAAa,KAAA,CAAQQ,CACvB,CAAA,CACA,kBAAA,CAAqBC,CAAAA,EAAU,CAC7BX,CAAAA,CAAY,KAAA,CAAQW,CACtB,CACF,CAAC,CAAA,CAEKC,CAAAA,CAAUC,2BAAAA,CAAS,CAAA,EAAMf,CAAAA,CAAM,KAAA,CAAM,OAAO,CAAA,CAC5CgB,CAAAA,CAAeD,2BAAAA,CAAS,CAAA,EAAMf,CAAAA,CAAM,KAAA,CAAM,YAAY,CAAA,CACtDiB,CAAAA,CAAUF,2BAAAA,CAAS,CAAA,EAAMf,CAAAA,CAAM,KAAA,CAAM,OAAO,CAAA,CAE5CkB,CAAAA,CAAWT,CAAAA,CAAW,QAAA,CACtBU,CAAAA,CAAQV,CAAAA,CAAW,KAAA,CAUzB,MAAO,CAEL,IAAA,CAVWW,2BAAAA,CACX,OAAA,CAAAN,CAAAA,CACA,OAAA,CAAAG,CAAAA,CACA,YAAA,CAAAD,CAAAA,CACA,WAAA,CAAAd,CAAAA,CACA,YAAA,CAAAE,CACF,CAAC,CAAA,CAMC,SAAA,CAAWK,CAAAA,CAAW,SAAA,CACtB,SAAA,CAAWA,CAAAA,CAAW,SAAA,CACtB,UAAA,CAAYA,CAAAA,CAAW,UAAA,CACvB,cAAA,CAAgBA,CAAAA,CAAW,cAAA,CAE3B,MAAA,CAAQA,CAAAA,CAAW,MAAA,CACnB,QAAA,CAAAS,CAAAA,CACA,KAAA,CAAAC,CAAAA,CACA,GAAGT,CACL,CACF,CC/DA,SAUgBW,CAAAA,CAGdC,CAAAA,CAAuD,CACvD,IAAM5B,CAAAA,CAAQG,CAAAA,CAAmB,CAAA,CAE3B,CAAE,eAAA,CAAA0B,CAAgB,CAAA,CAAIC,iCAAAA,CAAkC9B,CAAO4B,CAAI,CAAA,CAEnEtB,CAAAA,CAAQC,6BAAAA,CAAWP,CAAM,IAAA,CAAK,aAAA,CAAc4B,CAAI,CAAC,CAAA,CAEjDjB,CAAAA,CAAcX,CAAAA,CAAM,OAAA,CAAQ,mBAAA,CAAoB4B,CAAAA,CAAOG,CAAAA,EAAc,CACzEzB,CAAAA,CAAM,KAAA,CAAQyB,CAChB,CAAC,CAAA,CAEDjB,8BAAAA,CAAY,CAAA,EAAM,CAChBH,CAAAA,CAAY,CAAA,CACZqB,iCAAAA,CAAuBhC,CAAO4B,CAAc,CAC9C,CAAC,CAAA,CAED,IAAMK,CAAAA,CAAWZ,2BAAAA,CAAS,CAAA,EAAMf,CAAAA,CAAM,KAAA,CAAM,KAA+B,CAAA,CAErE4B,CAAAA,CAAeb,2BAAAA,CAAS,CAAA,EAC5BQ,CAAAA,CAAgB,YAAA,CAAaI,CAAAA,CAAS,KAAK,CAC7C,CAAA,CAEME,CAAAA,CAAad,2BAAAA,CACjB,GAAA,CAAK,CAAA,CAAA,EAAMa,CAAAA,CAAa,KAAA,CACxB,GAAA,CAAME,CAAAA,EAAgB,CACpBP,CAAAA,CAAgB,QAAA,CAASO,CAAG,CAC9B,CACF,CAAC,CAAA,CAEKC,CAAAA,CAAYhB,2BAAAA,CAAS,CAAA,EAAMiB,iCAAAA,CAAgBhC,CAAM,KAAK,CAAC,CAAA,CACvDa,CAAAA,CAAQE,2BAAAA,CAAS,CAAA,EAAMgB,CAAAA,CAAU,KAAA,CAAM,KAAK,CAAA,CAC5CE,CAAAA,CAAUlB,2BAAAA,CAAS,CAAA,EAAMgB,CAAAA,CAAU,KAAA,CAAM,OAAO,CAAA,CAChDG,CAAAA,CAAUnB,2BAAAA,CAAS,CAAA,EAAMgB,CAAAA,CAAU,KAAA,CAAM,OAAO,CAAA,CAChDI,CAAAA,CAAepB,2BAAAA,CAAS,CAAA,EAAMgB,CAAAA,CAAU,KAAA,CAAM,YAAY,CAAA,CAC1Dd,CAAAA,CAAUF,2BAAAA,CAAS,CAAA,EAAMgB,CAAAA,CAAU,KAAA,CAAM,OAAO,CAAA,CAChDK,CAAAA,CAAWrB,2BAAAA,CAAS,CAAA,EAAMgB,CAAAA,CAAU,KAAA,CAAM,QAAQ,CAAA,CAClDM,CAAAA,CAAatB,2BAAAA,CAAS,CAAA,EAAMgB,CAAAA,CAAU,KAAA,CAAM,UAAU,CAAA,CACtDO,CAAAA,CAAWvB,2BAAAA,CAAS,CAAA,EAAMgB,CAAAA,CAAU,KAAA,CAAM,QAAQ,CAAA,CAElDQ,CAAAA,CACJT,CAAAA,EACG,CACHP,CAAAA,CAAgB,QAAA,CAASO,CAAG,CAC9B,CAAA,CAEMU,CAAAA,CAAU,CAAA,CAAA,EAAMjB,CAAAA,CAAgB,OAAA,CAAQ,CAAA,CAY9C,MAAO,CAEL,KAAA,CAAOI,CAAAA,CACP,YAAA,CAAAC,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,QAAA,CAAAU,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,OAAA,CAhBAV,CAAAA,EACG,CACHS,CAAAA,CAAST,CAAG,CACd,CAAA,CAcE,MAAA,CAZa,CAAA,CAAA,EAAM,CACnBU,CAAAA,CAAQ,CACV,CAAA,CAYE,IAAA,CAAMpB,2BAAAA,CACJ,KAAA,CAAAP,CAAAA,CACA,OAAA,CAAAoB,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,YAAA,CAAAC,CAAAA,CACA,OAAA,CAAAlB,CAAAA,CACA,QAAA,CAAAmB,CAAAA,CACA,UAAA,CAAAC,CAAAA,CACA,QAAA,CAAAC,CACF,CAAC,CACH,CACF,CC3FA,SAQgBG,EAAAA,CAGdnB,CAAAA,CAAS,CACT,IAAM5B,CAAAA,CAAQG,CAAAA,CAAmB,CAAA,CAC3BY,CAAAA,CAAaiC,iCAAAA,CAA6BhD,CAAO4B,CAAI,CAAA,CACrDqB,CAAAA,CAAS1C,6BAAAA,CAAWQ,CAAW,SAAA,CAAU,CAAC,CAAA,CAE1CJ,CAAAA,CAAcX,CAAAA,CAAM,OAAA,CAAQ,aAAA,CAAc4B,CAAAA,CAAM,CAAA,CAAA,EAAM,CAC1DqB,CAAAA,CAAO,KAAA,CAAQlC,CAAAA,CAAW,SAAA,CAAU,CACtC,CAAC,CAAA,CAEDD,8BAAAA,CAAY,CAAA,EAAM,CAChBH,CAAAA,CAAY,CAAA,CACZuC,iCAAAA,CAAwBlD,CAAO,CAAA,EAAA","file":"/home/runner/work/bit-form/bit-form/dist/vue/index.cjs","sourcesContent":[null,"import { inject, provide, InjectionKey } from \"vue\";\nimport type { BitFrameworkStoreApi, BitStoreApi } from \"../core\";\nimport { createFrameworkStoreAdapter } from \"../core\";\n\n// Chave única para evitar colisões\nexport const BIT_STORE_KEY: InjectionKey<BitFrameworkStoreApi<any>> =\n Symbol(\"BIT_STORE\");\n\nexport function provideBitStore<T extends object>(\n store: BitFrameworkStoreApi<T> | BitStoreApi<T>,\n) {\n provide(BIT_STORE_KEY, createFrameworkStoreAdapter<T>(store));\n}\n\nexport function useBitStore<T extends object>() {\n const store = inject(BIT_STORE_KEY);\n if (!store)\n throw new Error(\n \"BitForm Vue hooks devem ser usados sob um provideBitStore\",\n );\n return store as BitFrameworkStoreApi<T>;\n}\n","import { computed, onUnmounted, shallowRef, ref, reactive } from \"vue\";\nimport { useBitStore } from \"./context\";\nimport { createFrameworkFormBinding, observeFormMetaSnapshot } from \"../core\";\nimport type { UseBitFormResult } from \"./types\";\n\nexport function useBitForm<T extends object>(): UseBitFormResult<T> {\n const store = useBitStore<T>();\n const state = shallowRef({\n isValid: true,\n isDirty: false,\n isSubmitting: false,\n });\n const submitError = ref<Error | null>(null);\n const lastResponse = ref<unknown>(null);\n\n const unsubscribe = observeFormMetaSnapshot(store, (nextMeta) => {\n state.value = nextMeta;\n });\n\n onUnmounted(unsubscribe);\n\n const { controller, actions } = createFrameworkFormBinding(store, {\n clearSubmissionState: () => {\n submitError.value = null;\n lastResponse.value = null;\n },\n setSubmissionResult: (result) => {\n lastResponse.value = result;\n },\n setSubmissionError: (error) => {\n submitError.value = error;\n },\n });\n\n const isValid = computed(() => state.value.isValid);\n const isSubmitting = computed(() => state.value.isSubmitting);\n const isDirty = computed(() => state.value.isDirty);\n\n const onSubmit = controller.onSubmit;\n const reset = controller.reset;\n\n const meta = reactive({\n isValid,\n isDirty,\n isSubmitting,\n submitError,\n lastResponse,\n });\n\n return {\n // Metadata (grouped)\n meta,\n // Getters\n getValues: controller.getValues,\n getErrors: controller.getErrors,\n getTouched: controller.getTouched,\n getDirtyValues: controller.getDirtyValues,\n // Main actions (frequent use - flat)\n submit: controller.submit,\n onSubmit,\n reset,\n ...actions,\n };\n}\n","import { computed, onUnmounted, shallowRef, reactive } from \"vue\";\nimport { useBitStore } from \"./context\";\nimport type { UseBitFieldVueResult } from \"./types\";\nimport type { BitPath, BitPathValue } from \"../core\";\nimport {\n cleanupRegisteredField,\n createFrameworkMaskedFieldBinding,\n deriveFieldMeta,\n} from \"../core\";\n\nexport function useBitField<\n TForm extends object = any,\n P extends BitPath<TForm> = BitPath<TForm>,\n>(path: P): UseBitFieldVueResult<BitPathValue<TForm, P>> {\n const store = useBitStore<TForm>();\n\n const { fieldController } = createFrameworkMaskedFieldBinding(store, path);\n\n const state = shallowRef(store.read.getFieldState(path));\n\n const unsubscribe = store.observe.subscribeFieldState(path, (nextState) => {\n state.value = nextState;\n });\n\n onUnmounted(() => {\n unsubscribe();\n cleanupRegisteredField(store, path as string);\n });\n\n const rawValue = computed(() => state.value.value as BitPathValue<TForm, P>);\n\n const displayValue = computed(() =>\n fieldController.displayValue(rawValue.value),\n );\n\n const modelValue = computed({\n get: () => displayValue.value,\n set: (val: string) => {\n fieldController.setValue(val);\n },\n });\n\n const metaState = computed(() => deriveFieldMeta(state.value));\n const error = computed(() => metaState.value.error);\n const touched = computed(() => metaState.value.touched);\n const invalid = computed(() => metaState.value.invalid);\n const isValidating = computed(() => metaState.value.isValidating);\n const isDirty = computed(() => metaState.value.isDirty);\n const isHidden = computed(() => metaState.value.isHidden);\n const isRequired = computed(() => metaState.value.isRequired);\n const hasError = computed(() => metaState.value.hasError);\n\n const setValue = (\n val: BitPathValue<TForm, P> | string | number | null | undefined,\n ) => {\n fieldController.setValue(val);\n };\n\n const setBlur = () => fieldController.setBlur();\n\n const onInput = (\n val: BitPathValue<TForm, P> | string | number | null | undefined,\n ) => {\n setValue(val);\n };\n\n const onBlur = () => {\n setBlur();\n };\n\n return {\n // Main handlers and values (flat)\n value: rawValue,\n displayValue,\n modelValue,\n setValue,\n setBlur,\n onInput,\n onBlur,\n // Metadata (grouped)\n meta: reactive({\n error,\n touched,\n invalid,\n isValidating,\n isDirty,\n isHidden,\n isRequired,\n hasError,\n }),\n };\n}\n","import { computed, onUnmounted, shallowRef } from \"vue\";\nimport {\n BitArrayPath,\n cleanupRegisteredPrefix,\n createArrayBinding,\n} from \"../core\";\nimport { useBitStore } from \"./context\";\n\nexport function useBitArray<\n TForm extends object = any,\n P extends BitArrayPath<TForm> = BitArrayPath<TForm>,\n>(path: P) {\n const store = useBitStore<TForm>();\n const controller = createArrayBinding<TForm, P>(store, path);\n const values = shallowRef(controller.readItems());\n\n const unsubscribe = store.observe.subscribePath(path, () => {\n values.value = controller.readItems();\n });\n\n onUnmounted(() => {\n unsubscribe();\n cleanupRegisteredPrefix(store, `${path as string}.`);\n });\n\n const fields = computed(() => controller.getFields(values.value));\n\n const length = computed(() => values.value.length);\n\n return {\n fields,\n length,\n append: controller.append,\n prepend: controller.prepend,\n insert: controller.insert,\n remove: controller.remove,\n move: controller.move,\n swap: controller.swap,\n replace: controller.replace,\n clear: controller.clear,\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/vue/index.cjs","../../src/vue/context.ts","../../src/vue/use-bit-form.ts","../../src/vue/use-bit-field.ts","../../src/vue/use-bit-array.ts"],"names":["BIT_STORE_KEY","provideBitStore","store","adapted","createFrameworkStoreAdapter","provide","onUnmounted","useBitStore","inject","useBitForm","state","shallowRef","submitError","ref","lastResponse","unsubscribe","observeFormMetaSnapshot","nextMeta","controller","actions","createFrameworkFormBinding","result","error","isValid","computed","isSubmitting","isDirty","onSubmit","reset","reactive","useBitField","path","fieldController","createFrameworkMaskedFieldBinding","nextState","cleanupRegisteredField","rawValue","displayValue","modelValue","val","metaState","deriveFieldMeta","touched","invalid","isValidating","isHidden","isRequired","hasError","setValue","setBlur","useBitArray","createArrayBinding","values","cleanupRegisteredPrefix"],"mappings":"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","file":"/builds/kenji.ccp-group/bit-form/dist/vue/index.cjs","sourcesContent":[null,"import { inject, onUnmounted, provide, InjectionKey } from \"vue\";\nimport type { BitFrameworkStoreApi, BitStoreApi } from \"../core\";\nimport { createFrameworkStoreAdapter } from \"../core\";\n\nexport const BIT_STORE_KEY: InjectionKey<BitFrameworkStoreApi<any>> =\n Symbol(\"BIT_STORE\");\n\nexport function provideBitStore<T extends object>(\n store: BitFrameworkStoreApi<T> | BitStoreApi<T>,\n) {\n const adapted = createFrameworkStoreAdapter<T>(store);\n provide(BIT_STORE_KEY, adapted);\n\n onUnmounted(() => {\n adapted.feature?.cleanup?.();\n });\n}\n\nexport function useBitStore<T extends object>() {\n const store = inject(BIT_STORE_KEY);\n if (!store)\n throw new Error(\n \"BitForm Vue hooks devem ser usados sob um provideBitStore\",\n );\n return store as BitFrameworkStoreApi<T>;\n}\n","import { computed, onUnmounted, shallowRef, ref, reactive } from \"vue\";\nimport { useBitStore } from \"./context\";\nimport { createFrameworkFormBinding, observeFormMetaSnapshot } from \"../core\";\nimport type { UseBitFormResult } from \"./types\";\n\nexport function useBitForm<T extends object>(): UseBitFormResult<T> {\n const store = useBitStore<T>();\n const state = shallowRef({\n isValid: true,\n isDirty: false,\n isSubmitting: false,\n });\n const submitError = ref<Error | null>(null);\n const lastResponse = ref<unknown>(null);\n\n const unsubscribe = observeFormMetaSnapshot(store, (nextMeta) => {\n state.value = nextMeta;\n });\n\n onUnmounted(unsubscribe);\n\n const { controller, actions } = createFrameworkFormBinding(store, {\n clearSubmissionState: () => {\n submitError.value = null;\n lastResponse.value = null;\n },\n setSubmissionResult: (result) => {\n lastResponse.value = result;\n },\n setSubmissionError: (error) => {\n submitError.value = error;\n },\n });\n\n const isValid = computed(() => state.value.isValid);\n const isSubmitting = computed(() => state.value.isSubmitting);\n const isDirty = computed(() => state.value.isDirty);\n\n const onSubmit = controller.onSubmit;\n const reset = controller.reset;\n\n const meta = reactive({\n isValid,\n isDirty,\n isSubmitting,\n submitError,\n lastResponse,\n });\n\n return {\n // Metadata (grouped)\n meta,\n // Getters\n getValues: controller.getValues,\n getErrors: controller.getErrors,\n getTouched: controller.getTouched,\n getDirtyValues: controller.getDirtyValues,\n // Main actions (frequent use - flat)\n submit: controller.submit,\n onSubmit,\n reset,\n ...actions,\n };\n}\n","import { computed, onUnmounted, shallowRef, reactive } from \"vue\";\nimport { useBitStore } from \"./context\";\nimport type { UseBitFieldVueResult } from \"./types\";\nimport type { BitPath, BitPathValue } from \"../core\";\nimport {\n cleanupRegisteredField,\n createFrameworkMaskedFieldBinding,\n deriveFieldMeta,\n} from \"../core\";\n\nexport function useBitField<\n TForm extends object = any,\n P extends BitPath<TForm> = BitPath<TForm>,\n>(path: P): UseBitFieldVueResult<BitPathValue<TForm, P>> {\n const store = useBitStore<TForm>();\n\n const { fieldController } = createFrameworkMaskedFieldBinding(store, path);\n\n const state = shallowRef(store.read.getFieldState(path));\n\n const unsubscribe = store.observe.subscribeFieldState(path, (nextState) => {\n state.value = nextState;\n });\n\n onUnmounted(() => {\n unsubscribe();\n cleanupRegisteredField(store, path as string);\n });\n\n const rawValue = computed(() => state.value.value as BitPathValue<TForm, P>);\n\n const displayValue = computed(() =>\n fieldController.displayValue(rawValue.value),\n );\n\n const modelValue = computed({\n get: () => displayValue.value,\n set: (val: string | number | null | undefined) => {\n fieldController.setValue(val);\n },\n });\n\n const metaState = computed(() => deriveFieldMeta(state.value));\n const error = computed(() => metaState.value.error);\n const touched = computed(() => metaState.value.touched);\n const invalid = computed(() => metaState.value.invalid);\n const isValidating = computed(() => metaState.value.isValidating);\n const isDirty = computed(() => metaState.value.isDirty);\n const isHidden = computed(() => metaState.value.isHidden);\n const isRequired = computed(() => metaState.value.isRequired);\n const hasError = computed(() => metaState.value.hasError);\n\n const setValue = (\n val: BitPathValue<TForm, P> | string | number | null | undefined,\n ) => {\n fieldController.setValue(val);\n };\n\n const setBlur = () => fieldController.setBlur();\n\n const onInput = (\n val: BitPathValue<TForm, P> | string | number | null | undefined,\n ) => {\n setValue(val);\n };\n\n const onBlur = () => {\n setBlur();\n };\n\n return {\n value: rawValue,\n displayValue,\n modelValue,\n setValue,\n setBlur,\n onInput,\n onBlur,\n meta: reactive({\n error,\n touched,\n invalid,\n isValidating,\n isDirty,\n isHidden,\n isRequired,\n hasError,\n }),\n };\n}\n","import { computed, onUnmounted, shallowRef } from \"vue\";\nimport {\n BitArrayPath,\n cleanupRegisteredPrefix,\n createArrayBinding,\n} from \"../core\";\nimport { useBitStore } from \"./context\";\n\nexport function useBitArray<\n TForm extends object = any,\n P extends BitArrayPath<TForm> = BitArrayPath<TForm>,\n>(path: P) {\n const store = useBitStore<TForm>();\n const controller = createArrayBinding<TForm, P>(store, path);\n const values = shallowRef(controller.readItems());\n\n const unsubscribe = store.observe.subscribePath(path, () => {\n values.value = controller.readItems();\n });\n\n onUnmounted(() => {\n unsubscribe();\n cleanupRegisteredPrefix(store, `${path as string}.`);\n });\n\n const fields = computed(() => controller.getFields(values.value));\n\n const length = computed(() => values.value.length);\n\n return {\n fields,\n length,\n append: controller.append,\n prepend: controller.prepend,\n insert: controller.insert,\n remove: controller.remove,\n move: controller.move,\n swap: controller.swap,\n replace: controller.replace,\n clear: controller.clear,\n };\n}\n"]}
|