@lehnihon/bit-form 2.2.19 → 2.2.24

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.
Files changed (162) hide show
  1. package/README.md +10 -13
  2. package/dist/angular/index.cjs +1 -1
  3. package/dist/angular/index.cjs.map +1 -1
  4. package/dist/angular/index.d.cts +7 -6
  5. package/dist/angular/index.d.ts +7 -6
  6. package/dist/angular/index.js +1 -1
  7. package/dist/angular/index.js.map +1 -1
  8. package/dist/chunk-27LJCW56.cjs.map +1 -1
  9. package/dist/chunk-3SEB4YRQ.cjs +2 -0
  10. package/dist/chunk-3SEB4YRQ.cjs.map +1 -0
  11. package/dist/chunk-4WPLTOBT.cjs.map +1 -1
  12. package/dist/chunk-5ILGCBKG.cjs.map +1 -1
  13. package/dist/chunk-725CMNAV.cjs.map +1 -1
  14. package/dist/{chunk-7IO2KLSJ.cjs → chunk-7LCFS2JM.cjs} +2 -2
  15. package/dist/chunk-7LCFS2JM.cjs.map +1 -0
  16. package/dist/{chunk-EPBSLPRL.cjs → chunk-AOMXTUA4.cjs} +2 -2
  17. package/dist/chunk-AOMXTUA4.cjs.map +1 -0
  18. package/dist/chunk-BSGJ3T5S.cjs.map +1 -1
  19. package/dist/chunk-CATA7YEV.js +2 -0
  20. package/dist/chunk-CATA7YEV.js.map +1 -0
  21. package/dist/chunk-DNHPYPJA.js +2 -0
  22. package/dist/chunk-DNHPYPJA.js.map +1 -0
  23. package/dist/chunk-H3RTOA6X.cjs +2 -0
  24. package/dist/chunk-H3RTOA6X.cjs.map +1 -0
  25. package/dist/chunk-H6HGYVRV.cjs +2 -0
  26. package/dist/chunk-H6HGYVRV.cjs.map +1 -0
  27. package/dist/chunk-JVRTPL7W.js +2 -0
  28. package/dist/chunk-JVRTPL7W.js.map +1 -0
  29. package/dist/chunk-K2JSAJAF.cjs.map +1 -1
  30. package/dist/chunk-L57KMBXS.js +2 -0
  31. package/dist/chunk-L57KMBXS.js.map +1 -0
  32. package/dist/chunk-LY67POOF.js +2 -0
  33. package/dist/chunk-LY67POOF.js.map +1 -0
  34. package/dist/chunk-MBEQLBJB.js +2 -0
  35. package/dist/chunk-MBEQLBJB.js.map +1 -0
  36. package/dist/chunk-MFSDDSVG.cjs.map +1 -1
  37. package/dist/chunk-PDFT5E2E.cjs +2 -0
  38. package/dist/chunk-PDFT5E2E.cjs.map +1 -0
  39. package/dist/chunk-PRMNTQD5.js +2 -0
  40. package/dist/chunk-PRMNTQD5.js.map +1 -0
  41. package/dist/chunk-QKGTVKBU.cjs.map +1 -1
  42. package/dist/chunk-RHMJPKNV.cjs.map +1 -1
  43. package/dist/chunk-SMCFLQIA.cjs +2 -0
  44. package/dist/chunk-SMCFLQIA.cjs.map +1 -0
  45. package/dist/chunk-T36GFQHU.cjs +2 -0
  46. package/dist/chunk-T36GFQHU.cjs.map +1 -0
  47. package/dist/chunk-W5CLDRRE.cjs.map +1 -1
  48. package/dist/chunk-X3DGA5UC.cjs +2 -0
  49. package/dist/chunk-X3DGA5UC.cjs.map +1 -0
  50. package/dist/{chunk-AJUX7LYB.js → chunk-X3OFU2UH.js} +2 -2
  51. package/dist/chunk-XPY6TCOO.js +2 -0
  52. package/dist/{chunk-3WNZPBME.js.map → chunk-XPY6TCOO.js.map} +1 -1
  53. package/dist/cli/index.cjs +18 -17
  54. package/dist/{config-types-bTt2lcw9.d.ts → config-types-DB6FaTiZ.d.ts} +3 -3
  55. package/dist/{config-types-Dbyt7t3D.d.cts → config-types-mZFlp2Bi.d.cts} +3 -3
  56. package/dist/core/bindings.cjs +1 -1
  57. package/dist/core/bindings.cjs.map +1 -1
  58. package/dist/core/bindings.d.cts +4 -4
  59. package/dist/core/bindings.d.ts +4 -4
  60. package/dist/core/bindings.js +1 -1
  61. package/dist/core/status.cjs.map +1 -1
  62. package/dist/core/status.d.cts +3 -3
  63. package/dist/core/status.d.ts +3 -3
  64. package/dist/core/store.cjs +1 -1
  65. package/dist/core/store.cjs.map +1 -1
  66. package/dist/core/store.d.cts +5 -5
  67. package/dist/core/store.d.ts +5 -5
  68. package/dist/core/store.js +1 -1
  69. package/dist/core/utils.cjs +1 -1
  70. package/dist/core/utils.cjs.map +1 -1
  71. package/dist/core/utils.js +1 -1
  72. package/dist/core.cjs +1 -1
  73. package/dist/core.cjs.map +1 -1
  74. package/dist/core.d.cts +4 -4
  75. package/dist/core.d.ts +4 -4
  76. package/dist/core.js +1 -1
  77. package/dist/devtools/bridge.cjs +1 -1
  78. package/dist/devtools/bridge.cjs.map +1 -1
  79. package/dist/devtools/bridge.js +1 -1
  80. package/dist/devtools/index.cjs +17 -17
  81. package/dist/devtools/index.cjs.map +1 -1
  82. package/dist/devtools/index.d.cts +2 -2
  83. package/dist/devtools/index.d.ts +2 -2
  84. package/dist/devtools/index.js +17 -17
  85. package/dist/devtools/index.js.map +1 -1
  86. package/dist/devtools/protocol.cjs.map +1 -1
  87. package/dist/index.cjs +1 -1
  88. package/dist/index.cjs.map +1 -1
  89. package/dist/index.d.cts +5 -5
  90. package/dist/index.d.ts +5 -5
  91. package/dist/index.js +1 -1
  92. package/dist/mask.cjs +1 -1
  93. package/dist/mask.cjs.map +1 -1
  94. package/dist/mask.d.cts +1 -1
  95. package/dist/mask.d.ts +1 -1
  96. package/dist/mask.js +1 -1
  97. package/dist/{meta-types-BC1VLABk.d.cts → meta-types-1Xcht8hj.d.cts} +1 -1
  98. package/dist/{meta-types-BC1VLABk.d.ts → meta-types-1Xcht8hj.d.ts} +1 -1
  99. package/dist/react/index.cjs +1 -1
  100. package/dist/react/index.cjs.map +1 -1
  101. package/dist/react/index.d.cts +6 -6
  102. package/dist/react/index.d.ts +6 -6
  103. package/dist/react/index.js +1 -1
  104. package/dist/react/index.js.map +1 -1
  105. package/dist/react-native/index.cjs +1 -1
  106. package/dist/react-native/index.cjs.map +1 -1
  107. package/dist/react-native/index.d.cts +5 -5
  108. package/dist/react-native/index.d.ts +5 -5
  109. package/dist/react-native/index.js +1 -1
  110. package/dist/resolvers/index.cjs.map +1 -1
  111. package/dist/resolvers/joi.cjs.map +1 -1
  112. package/dist/resolvers/types.cjs.map +1 -1
  113. package/dist/resolvers/yup.cjs.map +1 -1
  114. package/dist/resolvers/zod.cjs.map +1 -1
  115. package/dist/{runtime-types-D1SRZr-n.d.cts → runtime-types-BLCkMgcy.d.cts} +1 -1
  116. package/dist/{runtime-types-D1SRZr-n.d.ts → runtime-types-BLCkMgcy.d.ts} +1 -1
  117. package/dist/{store-api-types-i-zmM25p.d.ts → store-api-types-CgRVo2DA.d.ts} +4 -4
  118. package/dist/{store-api-types-BPD27biP.d.cts → store-api-types-D7i0KWbr.d.cts} +4 -4
  119. package/dist/{use-bit-persist-BGH2Bazx.d.ts → use-bit-persist-CFcuAzwp.d.ts} +5 -5
  120. package/dist/{use-bit-persist-DiwICsEm.d.cts → use-bit-persist-Dsr69hme.d.cts} +5 -5
  121. package/dist/utils.cjs +1 -1
  122. package/dist/utils.cjs.map +1 -1
  123. package/dist/utils.js +1 -1
  124. package/dist/vue/index.cjs +1 -1
  125. package/dist/vue/index.cjs.map +1 -1
  126. package/dist/vue/index.d.cts +5 -5
  127. package/dist/vue/index.d.ts +5 -5
  128. package/dist/vue/index.js +1 -1
  129. package/dist/vue/index.js.map +1 -1
  130. package/package.json +64 -11
  131. package/dist/chunk-23DHXQOC.js +0 -2
  132. package/dist/chunk-23DHXQOC.js.map +0 -1
  133. package/dist/chunk-32RH5MSM.js +0 -2
  134. package/dist/chunk-32RH5MSM.js.map +0 -1
  135. package/dist/chunk-33TGLA5D.cjs +0 -2
  136. package/dist/chunk-33TGLA5D.cjs.map +0 -1
  137. package/dist/chunk-3CPIJF3Z.cjs +0 -2
  138. package/dist/chunk-3CPIJF3Z.cjs.map +0 -1
  139. package/dist/chunk-3KI3GEU3.cjs +0 -2
  140. package/dist/chunk-3KI3GEU3.cjs.map +0 -1
  141. package/dist/chunk-3WNZPBME.js +0 -2
  142. package/dist/chunk-7IO2KLSJ.cjs.map +0 -1
  143. package/dist/chunk-B45EMB4Q.js +0 -2
  144. package/dist/chunk-B45EMB4Q.js.map +0 -1
  145. package/dist/chunk-CIS3YZSK.cjs +0 -2
  146. package/dist/chunk-CIS3YZSK.cjs.map +0 -1
  147. package/dist/chunk-EPBSLPRL.cjs.map +0 -1
  148. package/dist/chunk-ICYXODTQ.js +0 -2
  149. package/dist/chunk-ICYXODTQ.js.map +0 -1
  150. package/dist/chunk-JUDBIEZK.js +0 -2
  151. package/dist/chunk-JUDBIEZK.js.map +0 -1
  152. package/dist/chunk-K65TKDQ2.cjs +0 -2
  153. package/dist/chunk-K65TKDQ2.cjs.map +0 -1
  154. package/dist/chunk-S5A65JVL.cjs +0 -2
  155. package/dist/chunk-S5A65JVL.cjs.map +0 -1
  156. package/dist/chunk-T7TOEIOH.js +0 -2
  157. package/dist/chunk-T7TOEIOH.js.map +0 -1
  158. package/dist/chunk-TLUCO2ZN.cjs +0 -2
  159. package/dist/chunk-TLUCO2ZN.cjs.map +0 -1
  160. package/dist/chunk-Y34N5TWV.js +0 -2
  161. package/dist/chunk-Y34N5TWV.js.map +0 -1
  162. /package/dist/{chunk-AJUX7LYB.js.map → chunk-X3OFU2UH.js.map} +0 -0
@@ -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-BGH2Bazx.js';
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-D1SRZr-n.js';
4
+ export { S as ScopeStatus, V as ValidateScopeResult } from '../runtime-types-BLCkMgcy.js';
5
5
  import 'react';
6
- import '../store-api-types-i-zmM25p.js';
6
+ import '../store-api-types-CgRVo2DA.js';
7
7
  import '../types-CUXh7PqD.js';
8
- import '../config-types-bTt2lcw9.js';
9
- import '../meta-types-BC1VLABk.js';
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-23DHXQOC.js";import"../chunk-5NA2TFPG.js";import"../chunk-B45EMB4Q.js";import{h as f}from"../chunk-3WNZPBME.js";import"../chunk-W2E5UIXT.js";import"../chunk-UIKO6GGW.js";import{a as P}from"../chunk-ICYXODTQ.js";import"../chunk-AJUX7LYB.js";import"../chunk-T7TOEIOH.js";import"../chunk-32RH5MSM.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};
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-DNHPYPJA.js";import"../chunk-5NA2TFPG.js";import"../chunk-PRMNTQD5.js";import{h as f}from"../chunk-XPY6TCOO.js";import"../chunk-W2E5UIXT.js";import"../chunk-UIKO6GGW.js";import{a as P}from"../chunk-L57KMBXS.js";import"../chunk-X3OFU2UH.js";import"../chunk-JVRTPL7W.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
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/bit-form/bit-form/dist/resolvers/index.cjs"],"names":[],"mappings":"AAAA,kIAAyC,yDAA0C,yDAA0C,iCAA8B,iCAA8B,gIAA2D","file":"/home/runner/work/bit-form/bit-form/dist/resolvers/index.cjs"}
1
+ {"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/resolvers/index.cjs"],"names":[],"mappings":"AAAA,kIAAyC,yDAA0C,yDAA0C,iCAA8B,iCAA8B,gIAA2D","file":"/builds/kenji.ccp-group/bit-form/dist/resolvers/index.cjs"}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/bit-form/bit-form/dist/resolvers/joi.cjs"],"names":[],"mappings":"AAAA,kIAAoC,iCAA8B,0CAAyB","file":"/home/runner/work/bit-form/bit-form/dist/resolvers/joi.cjs"}
1
+ {"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/resolvers/joi.cjs"],"names":[],"mappings":"AAAA,kIAAoC,iCAA8B,0CAAyB","file":"/builds/kenji.ccp-group/bit-form/dist/resolvers/joi.cjs"}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/bit-form/bit-form/dist/resolvers/types.cjs"],"names":[],"mappings":"AAAA,8CAA6B","file":"/home/runner/work/bit-form/bit-form/dist/resolvers/types.cjs"}
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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/bit-form/bit-form/dist/resolvers/yup.cjs"],"names":[],"mappings":"AAAA,kIAAoC,iCAA8B,0CAAyB","file":"/home/runner/work/bit-form/bit-form/dist/resolvers/yup.cjs"}
1
+ {"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/resolvers/yup.cjs"],"names":[],"mappings":"AAAA,kIAAoC,iCAA8B,0CAAyB","file":"/builds/kenji.ccp-group/bit-form/dist/resolvers/yup.cjs"}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/bit-form/bit-form/dist/resolvers/zod.cjs"],"names":[],"mappings":"AAAA,kIAAoC,iCAA8B,0CAAyB","file":"/home/runner/work/bit-form/bit-form/dist/resolvers/zod.cjs"}
1
+ {"version":3,"sources":["/builds/kenji.ccp-group/bit-form/dist/resolvers/zod.cjs"],"names":[],"mappings":"AAAA,kIAAoC,iCAA8B,0CAAyB","file":"/builds/kenji.ccp-group/bit-form/dist/resolvers/zod.cjs"}
@@ -40,4 +40,4 @@ interface DevToolsOptions {
40
40
  url?: string;
41
41
  }
42
42
 
43
- export type { BitScheduler as B, DevToolsOptions as D, ScopeStatus as S, ValidateScopeResult as V, BitSubmitResult as a, BitIdFactory as b };
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 { BitScheduler as B, DevToolsOptions as D, ScopeStatus as S, ValidateScopeResult as V, BitSubmitResult as a, BitIdFactory as b };
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, v as BitPersistResolvedConfig, p as BitPlugin, w as BitOperationalErrorSource } from './config-types-bTt2lcw9.js';
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, b as BitIdFactory, B as BitScheduler, S as ScopeStatus, a as BitSubmitResult } from './runtime-types-D1SRZr-n.js';
6
- import { a as BitHistoryMetadata, B as BitFormMeta, c as BitServerErrorOptions, b as BitValidationOptions } from './meta-types-BC1VLABk.js';
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, BitSelector as c, BitSelectorSubscriptionOptions as d, BitStoreApi as e, BitStoreHooksApi as f, BitStoreFeatureApi as g, BitStoreObserveSliceApi as h, BitStoreReadSliceApi as i, BitStoreWriteSliceApi as j };
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, v as BitPersistResolvedConfig, p as BitPlugin, w as BitOperationalErrorSource } from './config-types-Dbyt7t3D.cjs';
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, b as BitIdFactory, B as BitScheduler, S as ScopeStatus, a as BitSubmitResult } from './runtime-types-D1SRZr-n.cjs';
6
- import { a as BitHistoryMetadata, B as BitFormMeta, c as BitServerErrorOptions, b as BitValidationOptions } from './meta-types-BC1VLABk.cjs';
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, BitSelector as c, BitSelectorSubscriptionOptions as d, BitStoreApi as e, BitStoreHooksApi as f, BitStoreFeatureApi as g, BitStoreObserveSliceApi as h, BitStoreReadSliceApi as i, BitStoreWriteSliceApi as j };
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, e as BitStoreApi } from './store-api-types-i-zmM25p.js';
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, f as BitPersistMetadata, b as BitErrors, h as BitTouched, D as DeepPartial, a as BitArrayPath, B as BitArrayItem } from './state-types-8bUndWfg.js';
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-D1SRZr-n.js';
7
- import { a as BitHistoryMetadata, b as BitValidationOptions } from './meta-types-BC1VLABk.js';
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 UseBitStepsResult as l, useBitArray as u };
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, e as BitStoreApi } from './store-api-types-BPD27biP.cjs';
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, f as BitPersistMetadata, b as BitErrors, h as BitTouched, D as DeepPartial, a as BitArrayPath, B as BitArrayItem } from './state-types-8bUndWfg.cjs';
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-D1SRZr-n.cjs';
7
- import { a as BitHistoryMetadata, b as BitValidationOptions } from './meta-types-BC1VLABk.cjs';
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 UseBitStepsResult as l, useBitArray as u };
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 _chunkCIS3YZSKcjs = require('./chunk-CIS3YZSK.cjs');exports.cleanPrefixedKeys = _chunkCIS3YZSKcjs.j; exports.extractServerErrors = _chunkCIS3YZSKcjs.n; exports.isValidationErrorShape = _chunkCIS3YZSKcjs.m;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk3SEB4YRQcjs = require('./chunk-3SEB4YRQ.cjs');exports.cleanPrefixedKeys = _chunk3SEB4YRQcjs.j; exports.extractServerErrors = _chunk3SEB4YRQcjs.n; exports.isValidationErrorShape = _chunk3SEB4YRQcjs.m;
2
2
  //# sourceMappingURL=utils.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/bit-form/bit-form/dist/utils.cjs"],"names":[],"mappings":"AAAA,iIAAsD,yJAAoF","file":"/home/runner/work/bit-form/bit-form/dist/utils.cjs"}
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-T7TOEIOH.js";export{r as cleanPrefixedKeys,a as extractServerErrors,e as isValidationErrorShape};
1
+ import{j as r,m as e,n as a}from"./chunk-JVRTPL7W.js";export{r as cleanPrefixedKeys,a as extractServerErrors,e as isValidationErrorShape};
2
2
  //# sourceMappingURL=utils.js.map
@@ -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 _chunkS5A65JVLcjs = require('../chunk-S5A65JVL.cjs');require('../chunk-W5CLDRRE.cjs');var _chunkTLUCO2ZNcjs = require('../chunk-TLUCO2ZN.cjs');var _chunkEPBSLPRLcjs = require('../chunk-EPBSLPRL.cjs');var _chunkBSGJ3T5Scjs = require('../chunk-BSGJ3T5S.cjs');var _chunkRHMJPKNVcjs = require('../chunk-RHMJPKNV.cjs');var _chunk3KI3GEU3cjs = require('../chunk-3KI3GEU3.cjs');require('../chunk-7IO2KLSJ.cjs');var _chunkCIS3YZSKcjs = require('../chunk-CIS3YZSK.cjs');require('../chunk-3CPIJF3Z.cjs');require('../chunk-725CMNAV.cjs');var _vue = require('vue');var G=Symbol("BIT_STORE");function re(t){_vue.provide.call(void 0, G,_chunkTLUCO2ZNcjs.d.call(void 0, t))}function i(){let t=_vue.inject.call(void 0, G);if(!t)throw new Error("BitForm Vue hooks devem ser usados sob um provideBitStore");return t}function ie(){let t=i(),e=_vue.shallowRef.call(void 0, {isValid:!0,isDirty:!1,isSubmitting:!1}),r=_vue.ref.call(void 0, null),o=_vue.ref.call(void 0, null),s=_chunkEPBSLPRLcjs.c.call(void 0, t,f=>{e.value=f});_vue.onUnmounted.call(void 0, s);let{controller:a,actions:n}=_chunkEPBSLPRLcjs.i.call(void 0, t,{clearSubmissionState:()=>{r.value=null,o.value=null},setSubmissionResult:f=>{o.value=f},setSubmissionError:f=>{r.value=f}}),c=_vue.computed.call(void 0, ()=>e.value.isValid),l=_vue.computed.call(void 0, ()=>e.value.isSubmitting),d=_vue.computed.call(void 0, ()=>e.value.isDirty),u=a.onSubmit,S=a.reset;return{meta:_vue.reactive.call(void 0, {isValid:c,isDirty:d,isSubmitting:l,submitError:r,lastResponse:o}),getValues:a.getValues,getErrors:a.getErrors,getTouched:a.getTouched,getDirtyValues:a.getDirtyValues,submit:a.submit,onSubmit:u,reset:S,...n}}function T(t){let e=i(),{fieldController:r}=_chunkEPBSLPRLcjs.h.call(void 0, e,t),o=_vue.shallowRef.call(void 0, e.read.getFieldState(t)),s=e.observe.subscribeFieldState(t,m=>{o.value=m});_vue.onUnmounted.call(void 0, ()=>{s(),_chunkEPBSLPRLcjs.j.call(void 0, e,t)});let a=_vue.computed.call(void 0, ()=>o.value.value),n=_vue.computed.call(void 0, ()=>r.displayValue(a.value)),c=_vue.computed.call(void 0, {get:()=>n.value,set:m=>{r.setValue(m)}}),l=_vue.computed.call(void 0, ()=>_chunk3KI3GEU3cjs.a.call(void 0, o.value)),d=_vue.computed.call(void 0, ()=>l.value.error),u=_vue.computed.call(void 0, ()=>l.value.touched),S=_vue.computed.call(void 0, ()=>l.value.invalid),y=_vue.computed.call(void 0, ()=>l.value.isValidating),f=_vue.computed.call(void 0, ()=>l.value.isDirty),P=_vue.computed.call(void 0, ()=>l.value.isHidden),V=_vue.computed.call(void 0, ()=>l.value.isRequired),x=_vue.computed.call(void 0, ()=>l.value.hasError),b=m=>{r.setValue(m)},F=()=>r.setBlur();return{value:a,displayValue:n,modelValue:c,setValue:b,setBlur:F,onInput:m=>{b(m)},onBlur:()=>{F()},meta:_vue.reactive.call(void 0, {error:d,touched:u,invalid:S,isValidating:y,isDirty:f,isHidden:P,isRequired:V,hasError:x})}}function pe(t){let e=i(),r=_chunkEPBSLPRLcjs.g.call(void 0, e,t),o=_vue.shallowRef.call(void 0, r.readItems()),s=e.observe.subscribePath(t,()=>{o.value=r.readItems()});_vue.onUnmounted.call(void 0, ()=>{s(),_chunkEPBSLPRLcjs.k.call(void 0, e,`${t}.`)});let a=_vue.computed.call(void 0, ()=>r.getFields(o.value)),n=_vue.computed.call(void 0, ()=>o.value.length);return{fields:a,length:n,append:r.append,prepend:r.prepend,insert:r.insert,remove:r.remove,move:r.move,swap:r.swap,replace:r.replace,clear:r.clear}}function fe(){let t=i(),e=_vue.shallowRef.call(void 0, _chunkRHMJPKNVcjs.f.call(void 0, t)),r=_chunkRHMJPKNVcjs.g.call(void 0, t,a=>{e.value=a});_vue.onUnmounted.call(void 0, r);let o=()=>t.feature.undo(),s=()=>t.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(t){let e=i(),r=_vue.ref.call(void 0, e.read.getScopeStatus(t)),o;_vue.onMounted.call(void 0, ()=>{o=_chunkBSGJ3T5Scjs.a.call(void 0, e,t,d=>{r.value=d})}),_vue.onUnmounted.call(void 0, ()=>{_optionalChain([o, 'optionalCall', _2 => _2()])});let s=async()=>{let d=await e.feature.validate({scope:t}),u=e.read.getScopeErrors(t);return{valid:d,errors:u}},a=()=>e.read.getScopeErrors(t),n=_vue.computed.call(void 0, ()=>!r.value.hasErrors),c=_vue.computed.call(void 0, ()=>r.value.isDirty),l=_vue.computed.call(void 0, ()=>r.value.errors);return{scopeName:t,status:r,errors:l,validate:s,getErrors:a,isValid:n,isDirty:c}}function Fe(t){let e=i(),r=_vue.ref.call(void 0, 0),o=_vue.computed.call(void 0, ()=>_nullishCoalesce(t[r.value], () => (""))),s=_vue.ref.call(void 0, e.read.getScopeStatus(o.value)),a=()=>{let v=o.value,B=e.read.getScopeStatus(v);_chunkRHMJPKNVcjs.b.call(void 0, s.value,B)||(s.value=B)},n=e.observe.subscribeScopeStatus(o.value,a),c=()=>{n(),n=e.observe.subscribeScopeStatus(o.value,a)};_vue.onUnmounted.call(void 0, ()=>{n()});let l=async()=>{let v=o.value,B=await e.feature.validate({scope:v}),m=e.read.getScopeErrors(v);return{valid:B,errors:m}},d=()=>e.read.getScopeErrors(o.value),u=async()=>{let v=o.value,B=e.read.getScopeFields(v);if(e.feature.hasValidationsInProgress(B))return!1;let m=await e.feature.validate({scope:v});if(m)r.value=Math.min(r.value+1,t.length-1),s.value=e.read.getScopeStatus(o.value),c();else{let N=e.read.getScopeErrors(v),E=Object.keys(N);E.length>0&&e.write.markFieldsTouched(E)}return m},S=()=>{r.value=Math.max(r.value-1,0),s.value=e.read.getScopeStatus(o.value),c()},y=v=>{r.value=Math.max(0,Math.min(v-1,t.length-1)),s.value=e.read.getScopeStatus(o.value),c()},f=_vue.computed.call(void 0, ()=>r.value+1),P=_vue.computed.call(void 0, ()=>r.value===0),V=_vue.computed.call(void 0, ()=>r.value>=t.length-1),x=_vue.computed.call(void 0, ()=>!s.value.hasErrors),b=_vue.computed.call(void 0, ()=>s.value.isDirty),F=_vue.computed.call(void 0, ()=>s.value.errors);return{step:f,stepIndex:r,scope:o,next:u,prev:S,goTo:y,isFirst:P,isLast:V,status:s,errors:F,isValid:x,isDirty:b,validate:l,getErrors:d}}function xe(t){let e=i(),r=_chunkCIS3YZSKcjs.f.call(void 0, e.read.getState().values,t),o=_vue.ref.call(void 0, r),s=e.observe.subscribePath(t,a=>{_chunkCIS3YZSKcjs.c.call(void 0, o.value,a)||(o.value=a)});return _vue.onUnmounted.call(void 0, s),_vue.readonly.call(void 0, o)}function Te(t,e,r){let o=i(),s=T(t),a=null,n=_vue.ref.call(void 0, !1),c={setLoading:u=>{n.value=u},setError:(u,S)=>o.write.setError(u,S),setValue:u=>s.setValue(u),getUploadKey:()=>a,setUploadKey:u=>{a=u},onCallbackError:u=>o.read.config.onUnhandledError(u,"upload")},l=_chunkS5A65JVLcjs.a.call(void 0, t,e,c),d=_chunkS5A65JVLcjs.b.call(void 0, t,r,c);return{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:l,remove:d}}function ke(){let t=i(),e=_vue.ref.call(void 0, t.read.getPersistMetadata()),r=_chunkEPBSLPRLcjs.f.call(void 0, t,n=>{e.value=n});return _vue.onUnmounted.call(void 0, ()=>r()),{restore:async()=>t.feature.restorePersisted(),save:async()=>{await t.feature.forceSave()},clear:async()=>{await t.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 = re; exports.useBitArray = pe; exports.useBitField = T; exports.useBitForm = ie; exports.useBitHistory = fe; exports.useBitPersist = ke; exports.useBitScope = ye; exports.useBitSteps = Fe; exports.useBitStore = i; exports.useBitUpload = Te; exports.useBitWatch = xe;
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 _chunkPDFT5E2Ecjs = require('../chunk-PDFT5E2E.cjs');var _chunkAOMXTUA4cjs = require('../chunk-AOMXTUA4.cjs');var _chunkBSGJ3T5Scjs = require('../chunk-BSGJ3T5S.cjs');var _chunkRHMJPKNVcjs = require('../chunk-RHMJPKNV.cjs');var _chunkH6HGYVRVcjs = require('../chunk-H6HGYVRV.cjs');require('../chunk-7LCFS2JM.cjs');var _chunk3SEB4YRQcjs = require('../chunk-3SEB4YRQ.cjs');require('../chunk-X3DGA5UC.cjs');require('../chunk-725CMNAV.cjs');var _vue = require('vue');var $=Symbol("BIT_STORE");function oe(t){let e=_chunkPDFT5E2Ecjs.d.call(void 0, t);_vue.provide.call(void 0, $,e),_vue.onUnmounted.call(void 0, ()=>{_optionalChain([e, 'access', _2 => _2.feature, 'optionalAccess', _3 => _3.cleanup, 'optionalCall', _4 => _4()])})}function i(){let t=_vue.inject.call(void 0, $);if(!t)throw new Error("BitForm Vue hooks devem ser usados sob um provideBitStore");return t}function ne(){let t=i(),e=_vue.shallowRef.call(void 0, {isValid:!0,isDirty:!1,isSubmitting:!1}),r=_vue.ref.call(void 0, null),o=_vue.ref.call(void 0, null),s=_chunkAOMXTUA4cjs.c.call(void 0, t,S=>{e.value=S});_vue.onUnmounted.call(void 0, s);let{controller:a,actions:n}=_chunkAOMXTUA4cjs.i.call(void 0, t,{clearSubmissionState:()=>{r.value=null,o.value=null},setSubmissionResult:S=>{o.value=S},setSubmissionError:S=>{r.value=S}}),c=_vue.computed.call(void 0, ()=>e.value.isValid),u=_vue.computed.call(void 0, ()=>e.value.isSubmitting),d=_vue.computed.call(void 0, ()=>e.value.isDirty),f=a.onSubmit,l=a.reset;return{meta:_vue.reactive.call(void 0, {isValid:c,isDirty:d,isSubmitting:u,submitError:r,lastResponse:o}),getValues:a.getValues,getErrors:a.getErrors,getTouched:a.getTouched,getDirtyValues:a.getDirtyValues,submit:a.submit,onSubmit:f,reset:l,...n}}function U(t){let e=i(),{fieldController:r}=_chunkAOMXTUA4cjs.h.call(void 0, e,t),o=_vue.shallowRef.call(void 0, e.read.getFieldState(t)),s=e.observe.subscribeFieldState(t,m=>{o.value=m});_vue.onUnmounted.call(void 0, ()=>{s(),_chunkAOMXTUA4cjs.j.call(void 0, e,t)});let a=_vue.computed.call(void 0, ()=>o.value.value),n=_vue.computed.call(void 0, ()=>r.displayValue(a.value)),c=_vue.computed.call(void 0, {get:()=>n.value,set:m=>{r.setValue(m)}}),u=_vue.computed.call(void 0, ()=>_chunkH6HGYVRVcjs.a.call(void 0, o.value)),d=_vue.computed.call(void 0, ()=>u.value.error),f=_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),S=_vue.computed.call(void 0, ()=>u.value.isDirty),P=_vue.computed.call(void 0, ()=>u.value.isHidden),V=_vue.computed.call(void 0, ()=>u.value.isRequired),R=_vue.computed.call(void 0, ()=>u.value.hasError),b=m=>{r.setValue(m)},F=()=>r.setBlur();return{value:a,displayValue:n,modelValue:c,setValue:b,setBlur:F,onInput:m=>{b(m)},onBlur:()=>{F()},meta:_vue.reactive.call(void 0, {error:d,touched:f,invalid:l,isValidating:y,isDirty:S,isHidden:P,isRequired:V,hasError:R})}}function de(t){let e=i(),r=_chunkAOMXTUA4cjs.g.call(void 0, e,t),o=_vue.shallowRef.call(void 0, r.readItems()),s=e.observe.subscribePath(t,()=>{o.value=r.readItems()});_vue.onUnmounted.call(void 0, ()=>{s(),_chunkAOMXTUA4cjs.k.call(void 0, e,`${t}.`)});let a=_vue.computed.call(void 0, ()=>r.getFields(o.value)),n=_vue.computed.call(void 0, ()=>o.value.length);return{fields:a,length:n,append:r.append,prepend:r.prepend,insert:r.insert,remove:r.remove,move:r.move,swap:r.swap,replace:r.replace,clear:r.clear}}function Se(){let t=i(),e=_vue.shallowRef.call(void 0, _chunkRHMJPKNVcjs.f.call(void 0, t)),r=_chunkRHMJPKNVcjs.g.call(void 0, t,a=>{e.value=a});_vue.onUnmounted.call(void 0, r);let o=()=>t.feature.undo(),s=()=>t.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(t){let e=i(),r=_vue.ref.call(void 0, e.read.getScopeStatus(t)),o=_chunkBSGJ3T5Scjs.a.call(void 0, e,t,d=>{r.value=d});_vue.onUnmounted.call(void 0, ()=>{o()});let s=async()=>{let d=await e.feature.validate({scope:t}),f=e.read.getScopeErrors(t);return{valid:d,errors:f}},a=()=>e.read.getScopeErrors(t),n=_vue.computed.call(void 0, ()=>!r.value.hasErrors),c=_vue.computed.call(void 0, ()=>r.value.isDirty),u=_vue.computed.call(void 0, ()=>r.value.errors);return{scopeName:t,status:r,errors:u,validate:s,getErrors:a,isValid:n,isDirty:c}}function Fe(t){if(t.length===0)throw new Error("useBitSteps: scopeNames must not be empty");let e=i(),r=_vue.ref.call(void 0, 0),o=_vue.computed.call(void 0, ()=>_nullishCoalesce(t[r.value], () => (""))),s=_vue.ref.call(void 0, e.read.getScopeStatus(o.value)),a=()=>{let v=o.value,B=e.read.getScopeStatus(v);_chunkRHMJPKNVcjs.b.call(void 0, s.value,B)||(s.value=B)},n=e.observe.subscribeScopeStatus(o.value,a),c=()=>{n(),n=e.observe.subscribeScopeStatus(o.value,a)};_vue.onUnmounted.call(void 0, ()=>{n()});let u=async()=>{let v=o.value,B=await e.feature.validate({scope:v}),m=e.read.getScopeErrors(v);return{valid:B,errors:m}},d=()=>e.read.getScopeErrors(o.value),f=async()=>{let v=o.value,B=e.read.getScopeFields(v);if(e.feature.hasValidationsInProgress(B))return!1;let m=await e.feature.validate({scope:v});if(m)r.value=Math.min(r.value+1,t.length-1),s.value=e.read.getScopeStatus(o.value),c();else{let N=e.read.getScopeErrors(v),E=Object.keys(N);E.length>0&&e.write.markFieldsTouched(E)}return m},l=()=>{r.value=Math.max(r.value-1,0),s.value=e.read.getScopeStatus(o.value),c()},y=v=>{r.value=Math.max(0,Math.min(v-1,t.length-1)),s.value=e.read.getScopeStatus(o.value),c()},S=_vue.computed.call(void 0, ()=>r.value+1),P=_vue.computed.call(void 0, ()=>r.value===0),V=_vue.computed.call(void 0, ()=>r.value>=t.length-1),R=_vue.computed.call(void 0, ()=>!s.value.hasErrors),b=_vue.computed.call(void 0, ()=>s.value.isDirty),F=_vue.computed.call(void 0, ()=>s.value.errors);return{step:S,stepIndex:r,scope:o,next:f,prev:l,goTo:y,isFirst:P,isLast:V,status:s,errors:F,isValid:R,isDirty:b,validate:u,getErrors:d}}function Re(t){let e=i(),r=_chunk3SEB4YRQcjs.f.call(void 0, e.read.getState().values,t),o=_vue.ref.call(void 0, r),s=e.observe.subscribePath(t,a=>{_chunk3SEB4YRQcjs.c.call(void 0, o.value,a)||(o.value=a)});return _vue.onUnmounted.call(void 0, s),_vue.readonly.call(void 0, o)}function Ue(t,e,r){let o=i(),s=U(t),a=null,n=_vue.ref.call(void 0, !1),c={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")},d=_chunkH3RTOA6Xcjs.a.call(void 0, t,e,u,c),f=_chunkH3RTOA6Xcjs.b.call(void 0, t,r,u,c);return{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:d,remove:f}}function ke(){let t=i(),e=_vue.ref.call(void 0, t.read.getPersistMetadata()),r=_chunkAOMXTUA4cjs.f.call(void 0, t,n=>{e.value=n});return _vue.onUnmounted.call(void 0, ()=>r()),{restore:async()=>t.feature.restorePersisted(),save:async()=>{await t.feature.forceSave()},clear:async()=>{await t.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 = oe; exports.useBitArray = de; exports.useBitField = U; exports.useBitForm = ne; exports.useBitHistory = Se; exports.useBitPersist = ke; exports.useBitScope = ye; exports.useBitSteps = Fe; exports.useBitStore = i; exports.useBitUpload = Ue; exports.useBitWatch = Re;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -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":"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","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 as any).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 // 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,14 +1,14 @@
1
- import { b as BitFrameworkStoreApi, e as BitStoreApi } from '../store-api-types-BPD27biP.cjs';
1
+ import { b as BitFrameworkStoreApi, f as BitStoreApi } from '../store-api-types-D7i0KWbr.cjs';
2
2
  import '../bus-DzTqgkZ4.cjs';
3
3
  import { b as BitErrors, h as BitTouched, D as DeepPartial, d as BitPath, e as BitPathValue, a as BitArrayPath, B as BitArrayItem } from '../state-types-8bUndWfg.cjs';
4
- import { S as ScopeStatus, V as ValidateScopeResult } from '../runtime-types-D1SRZr-n.cjs';
5
- import { a as BitHistoryMetadata, b as BitValidationOptions } from '../meta-types-BC1VLABk.cjs';
4
+ import { S as ScopeStatus, V as ValidateScopeResult } from '../runtime-types-BLCkMgcy.cjs';
5
+ import { c as BitValidationOptions, a as BitHistoryMetadata } from '../meta-types-1Xcht8hj.cjs';
6
6
  import { c as BitHistoryAdapterResult, d as BitPersistAdapterResult, e as BitStepsAdapterResult, f as BitUploadAdapterResult, a as BitArrayBindingField, g as BitUploadFn, b as BitDeleteUploadFn } from '../upload-C4JqIaU2.cjs';
7
7
  import * as vue from 'vue';
8
8
  import { ComputedRef, Ref } from 'vue';
9
9
  import * as _vue_shared from '@vue/shared';
10
10
  import '../types-CUXh7PqD.cjs';
11
- import '../config-types-Dbyt7t3D.cjs';
11
+ import '../config-types-mZFlp2Bi.cjs';
12
12
 
13
13
  declare function provideBitStore<T extends object>(store: BitFrameworkStoreApi<T> | BitStoreApi<T>): void;
14
14
  declare function useBitStore<T extends object>(): BitFrameworkStoreApi<T>;
@@ -140,4 +140,4 @@ declare function useBitUpload<TMetadata extends Record<string, unknown> = Record
140
140
 
141
141
  declare function useBitPersist<T extends object = any>(): UseBitPersistResult;
142
142
 
143
- export { ScopeStatus, type UseBitFieldVueMeta, type UseBitFieldVueResult, type UseBitHistoryResult, type UseBitPersistResult, type UseBitStepsResult, type UseBitUploadResult, ValidateScopeResult, provideBitStore, useBitArray, useBitField, useBitForm, useBitHistory, useBitPersist, useBitScope, useBitSteps, useBitStore, useBitUpload, useBitWatch };
143
+ export { ScopeStatus, type UseBitFieldVueMeta, type UseBitFieldVueResult, type UseBitFormResult, type UseBitHistoryResult, type UseBitPersistResult, type UseBitStepsResult, type UseBitUploadResult, ValidateScopeResult, provideBitStore, useBitArray, useBitField, useBitForm, useBitHistory, useBitPersist, useBitScope, useBitSteps, useBitStore, useBitUpload, useBitWatch };
@@ -1,14 +1,14 @@
1
- import { b as BitFrameworkStoreApi, e as BitStoreApi } from '../store-api-types-i-zmM25p.js';
1
+ import { b as BitFrameworkStoreApi, f as BitStoreApi } from '../store-api-types-CgRVo2DA.js';
2
2
  import '../bus-BFOBGmd9.js';
3
3
  import { b as BitErrors, h as BitTouched, D as DeepPartial, d as BitPath, e as BitPathValue, a as BitArrayPath, B as BitArrayItem } from '../state-types-8bUndWfg.js';
4
- import { S as ScopeStatus, V as ValidateScopeResult } from '../runtime-types-D1SRZr-n.js';
5
- import { a as BitHistoryMetadata, b as BitValidationOptions } from '../meta-types-BC1VLABk.js';
4
+ import { S as ScopeStatus, V as ValidateScopeResult } from '../runtime-types-BLCkMgcy.js';
5
+ import { c as BitValidationOptions, a as BitHistoryMetadata } from '../meta-types-1Xcht8hj.js';
6
6
  import { c as BitHistoryAdapterResult, d as BitPersistAdapterResult, e as BitStepsAdapterResult, f as BitUploadAdapterResult, a as BitArrayBindingField, g as BitUploadFn, b as BitDeleteUploadFn } from '../upload-ao6skK9K.js';
7
7
  import * as vue from 'vue';
8
8
  import { ComputedRef, Ref } from 'vue';
9
9
  import * as _vue_shared from '@vue/shared';
10
10
  import '../types-CUXh7PqD.js';
11
- import '../config-types-bTt2lcw9.js';
11
+ import '../config-types-DB6FaTiZ.js';
12
12
 
13
13
  declare function provideBitStore<T extends object>(store: BitFrameworkStoreApi<T> | BitStoreApi<T>): void;
14
14
  declare function useBitStore<T extends object>(): BitFrameworkStoreApi<T>;
@@ -140,4 +140,4 @@ declare function useBitUpload<TMetadata extends Record<string, unknown> = Record
140
140
 
141
141
  declare function useBitPersist<T extends object = any>(): UseBitPersistResult;
142
142
 
143
- export { ScopeStatus, type UseBitFieldVueMeta, type UseBitFieldVueResult, type UseBitHistoryResult, type UseBitPersistResult, type UseBitStepsResult, type UseBitUploadResult, ValidateScopeResult, provideBitStore, useBitArray, useBitField, useBitForm, useBitHistory, useBitPersist, useBitScope, useBitSteps, useBitStore, useBitUpload, useBitWatch };
143
+ export { ScopeStatus, type UseBitFieldVueMeta, type UseBitFieldVueResult, type UseBitFormResult, type UseBitHistoryResult, type UseBitPersistResult, type UseBitStepsResult, type UseBitUploadResult, ValidateScopeResult, provideBitStore, useBitArray, useBitField, useBitForm, useBitHistory, useBitPersist, useBitScope, useBitSteps, useBitStore, useBitUpload, useBitWatch };
package/dist/vue/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import{a as Y,b as $}from"../chunk-JUDBIEZK.js";import"../chunk-5NA2TFPG.js";import{d as I}from"../chunk-B45EMB4Q.js";import{c as H,f as K,g as C,h as q,i as O,j as W,k as _}from"../chunk-3WNZPBME.js";import{a as z}from"../chunk-W2E5UIXT.js";import{b as D,f as A,g as j}from"../chunk-UIKO6GGW.js";import{a as L}from"../chunk-ICYXODTQ.js";import"../chunk-AJUX7LYB.js";import{c as k,f as M}from"../chunk-T7TOEIOH.js";import"../chunk-32RH5MSM.js";import"../chunk-DGEGYNQL.js";import{inject as ee,provide as te}from"vue";var G=Symbol("BIT_STORE");function re(t){te(G,I(t))}function i(){let t=ee(G);if(!t)throw new Error("BitForm Vue hooks devem ser usados sob um provideBitStore");return t}import{computed as R,onUnmounted as oe,shallowRef as se,ref as J,reactive as ae}from"vue";function ie(){let t=i(),e=se({isValid:!0,isDirty:!1,isSubmitting:!1}),r=J(null),o=J(null),s=H(t,f=>{e.value=f});oe(s);let{controller:a,actions:n}=O(t,{clearSubmissionState:()=>{r.value=null,o.value=null},setSubmissionResult:f=>{o.value=f},setSubmissionError:f=>{r.value=f}}),c=R(()=>e.value.isValid),l=R(()=>e.value.isSubmitting),d=R(()=>e.value.isDirty),u=a.onSubmit,S=a.reset;return{meta:ae({isValid:c,isDirty:d,isSubmitting:l,submitError:r,lastResponse:o}),getValues:a.getValues,getErrors:a.getErrors,getTouched:a.getTouched,getDirtyValues:a.getDirtyValues,submit:a.submit,onSubmit:u,reset:S,...n}}import{computed as p,onUnmounted as ne,shallowRef as ue,reactive as le}from"vue";function T(t){let e=i(),{fieldController:r}=q(e,t),o=ue(e.read.getFieldState(t)),s=e.observe.subscribeFieldState(t,m=>{o.value=m});ne(()=>{s(),W(e,t)});let a=p(()=>o.value.value),n=p(()=>r.displayValue(a.value)),c=p({get:()=>n.value,set:m=>{r.setValue(m)}}),l=p(()=>L(o.value)),d=p(()=>l.value.error),u=p(()=>l.value.touched),S=p(()=>l.value.invalid),y=p(()=>l.value.isValidating),f=p(()=>l.value.isDirty),P=p(()=>l.value.isHidden),V=p(()=>l.value.isRequired),x=p(()=>l.value.hasError),b=m=>{r.setValue(m)},F=()=>r.setBlur();return{value:a,displayValue:n,modelValue:c,setValue:b,setBlur:F,onInput:m=>{b(m)},onBlur:()=>{F()},meta:le({error:d,touched:u,invalid:S,isValidating:y,isDirty:f,isHidden:P,isRequired:V,hasError:x})}}import{computed as Q,onUnmounted as ce,shallowRef as me}from"vue";function pe(t){let e=i(),r=C(e,t),o=me(r.readItems()),s=e.observe.subscribePath(t,()=>{o.value=r.readItems()});ce(()=>{s(),_(e,`${t}.`)});let a=Q(()=>r.getFields(o.value)),n=Q(()=>o.value.length);return{fields:a,length:n,append:r.append,prepend:r.prepend,insert:r.insert,remove:r.remove,move:r.move,swap:r.swap,replace:r.replace,clear:r.clear}}import{computed as h,onUnmounted as de,shallowRef as ve}from"vue";function fe(){let t=i(),e=ve(A(t)),r=j(t,a=>{e.value=a});de(r);let o=()=>t.feature.undo(),s=()=>t.feature.redo();return{canUndo:h(()=>e.value.canUndo),canRedo:h(()=>e.value.canRedo),historyIndex:h(()=>e.value.historyIndex),historySize:h(()=>e.value.historySize),undo:o,redo:s}}import{computed as U,onMounted as Se,onUnmounted as Be,ref as ge}from"vue";function ye(t){let e=i(),r=ge(e.read.getScopeStatus(t)),o;Se(()=>{o=z(e,t,d=>{r.value=d})}),Be(()=>{o?.()});let s=async()=>{let d=await e.feature.validate({scope:t}),u=e.read.getScopeErrors(t);return{valid:d,errors:u}},a=()=>e.read.getScopeErrors(t),n=U(()=>!r.value.hasErrors),c=U(()=>r.value.isDirty),l=U(()=>r.value.errors);return{scopeName:t,status:r,errors:l,validate:s,getErrors:a,isValid:n,isDirty:c}}import{computed as g,onUnmounted as be,ref as X}from"vue";function Fe(t){let e=i(),r=X(0),o=g(()=>t[r.value]??""),s=X(e.read.getScopeStatus(o.value)),a=()=>{let v=o.value,B=e.read.getScopeStatus(v);D(s.value,B)||(s.value=B)},n=e.observe.subscribeScopeStatus(o.value,a),c=()=>{n(),n=e.observe.subscribeScopeStatus(o.value,a)};be(()=>{n()});let l=async()=>{let v=o.value,B=await e.feature.validate({scope:v}),m=e.read.getScopeErrors(v);return{valid:B,errors:m}},d=()=>e.read.getScopeErrors(o.value),u=async()=>{let v=o.value,B=e.read.getScopeFields(v);if(e.feature.hasValidationsInProgress(B))return!1;let m=await e.feature.validate({scope:v});if(m)r.value=Math.min(r.value+1,t.length-1),s.value=e.read.getScopeStatus(o.value),c();else{let N=e.read.getScopeErrors(v),E=Object.keys(N);E.length>0&&e.write.markFieldsTouched(E)}return m},S=()=>{r.value=Math.max(r.value-1,0),s.value=e.read.getScopeStatus(o.value),c()},y=v=>{r.value=Math.max(0,Math.min(v-1,t.length-1)),s.value=e.read.getScopeStatus(o.value),c()},f=g(()=>r.value+1),P=g(()=>r.value===0),V=g(()=>r.value>=t.length-1),x=g(()=>!s.value.hasErrors),b=g(()=>s.value.isDirty),F=g(()=>s.value.errors);return{step:f,stepIndex:r,scope:o,next:u,prev:S,goTo:y,isFirst:P,isLast:V,status:s,errors:F,isValid:x,isDirty:b,validate:l,getErrors:d}}import{ref as he,onUnmounted as Pe,readonly as Ve}from"vue";function xe(t){let e=i(),r=M(e.read.getState().values,t),o=he(r),s=e.observe.subscribePath(t,a=>{k(o.value,a)||(o.value=a)});return Pe(s),Ve(o)}import{computed as Z,ref as Re}from"vue";function Te(t,e,r){let o=i(),s=T(t),a=null,n=Re(!1),c={setLoading:u=>{n.value=u},setError:(u,S)=>o.write.setError(u,S),setValue:u=>s.setValue(u),getUploadKey:()=>a,setUploadKey:u=>{a=u},onCallbackError:u=>o.read.config.onUnhandledError(u,"upload")},l=Y(t,e,c),d=$(t,r,c);return{value:s.value,setValue:s.setValue,error:Z(()=>s.meta.error),isValidating:Z(()=>!!s.meta.isValidating||n.value),upload:l,remove:d}}import{computed as w,onUnmounted as Ue,ref as we,reactive as Ee}from"vue";function ke(){let t=i(),e=we(t.read.getPersistMetadata()),r=K(t,n=>{e.value=n});return Ue(()=>r()),{restore:async()=>t.feature.restorePersisted(),save:async()=>{await t.feature.forceSave()},clear:async()=>{await t.feature.clearPersisted()},meta:Ee({isSaving:w(()=>e.value.isSaving),isRestoring:w(()=>e.value.isRestoring),error:w(()=>e.value.error)})}}export{re as provideBitStore,pe as useBitArray,T as useBitField,ie as useBitForm,fe as useBitHistory,ke as useBitPersist,ye as useBitScope,Fe as useBitSteps,i as useBitStore,Te as useBitUpload,xe as useBitWatch};
1
+ import{a as G,b as Y}from"../chunk-CATA7YEV.js";import"../chunk-5NA2TFPG.js";import{d as I}from"../chunk-PRMNTQD5.js";import{c as H,f as K,g as C,h as q,i as O,j as W,k as _}from"../chunk-XPY6TCOO.js";import{a as z}from"../chunk-W2E5UIXT.js";import{b as M,f as A,g as j}from"../chunk-UIKO6GGW.js";import{a as L}from"../chunk-L57KMBXS.js";import"../chunk-X3OFU2UH.js";import{c as k,f as D}from"../chunk-JVRTPL7W.js";import"../chunk-MBEQLBJB.js";import"../chunk-DGEGYNQL.js";import{inject as ee,onUnmounted as te,provide as re}from"vue";var $=Symbol("BIT_STORE");function oe(t){let e=I(t);re($,e),te(()=>{e.feature?.cleanup?.()})}function i(){let t=ee($);if(!t)throw new Error("BitForm Vue hooks devem ser usados sob um provideBitStore");return t}import{computed as x,onUnmounted as se,shallowRef as ae,ref as J,reactive as ie}from"vue";function ne(){let t=i(),e=ae({isValid:!0,isDirty:!1,isSubmitting:!1}),r=J(null),o=J(null),s=H(t,S=>{e.value=S});se(s);let{controller:a,actions:n}=O(t,{clearSubmissionState:()=>{r.value=null,o.value=null},setSubmissionResult:S=>{o.value=S},setSubmissionError:S=>{r.value=S}}),c=x(()=>e.value.isValid),u=x(()=>e.value.isSubmitting),d=x(()=>e.value.isDirty),f=a.onSubmit,l=a.reset;return{meta:ie({isValid:c,isDirty:d,isSubmitting:u,submitError:r,lastResponse:o}),getValues:a.getValues,getErrors:a.getErrors,getTouched:a.getTouched,getDirtyValues:a.getDirtyValues,submit:a.submit,onSubmit:f,reset:l,...n}}import{computed as p,onUnmounted as ue,shallowRef as le,reactive as ce}from"vue";function U(t){let e=i(),{fieldController:r}=q(e,t),o=le(e.read.getFieldState(t)),s=e.observe.subscribeFieldState(t,m=>{o.value=m});ue(()=>{s(),W(e,t)});let a=p(()=>o.value.value),n=p(()=>r.displayValue(a.value)),c=p({get:()=>n.value,set:m=>{r.setValue(m)}}),u=p(()=>L(o.value)),d=p(()=>u.value.error),f=p(()=>u.value.touched),l=p(()=>u.value.invalid),y=p(()=>u.value.isValidating),S=p(()=>u.value.isDirty),P=p(()=>u.value.isHidden),V=p(()=>u.value.isRequired),R=p(()=>u.value.hasError),b=m=>{r.setValue(m)},F=()=>r.setBlur();return{value:a,displayValue:n,modelValue:c,setValue:b,setBlur:F,onInput:m=>{b(m)},onBlur:()=>{F()},meta:ce({error:d,touched:f,invalid:l,isValidating:y,isDirty:S,isHidden:P,isRequired:V,hasError:R})}}import{computed as Q,onUnmounted as me,shallowRef as pe}from"vue";function de(t){let e=i(),r=C(e,t),o=pe(r.readItems()),s=e.observe.subscribePath(t,()=>{o.value=r.readItems()});me(()=>{s(),_(e,`${t}.`)});let a=Q(()=>r.getFields(o.value)),n=Q(()=>o.value.length);return{fields:a,length:n,append:r.append,prepend:r.prepend,insert:r.insert,remove:r.remove,move:r.move,swap:r.swap,replace:r.replace,clear:r.clear}}import{computed as h,onUnmounted as ve,shallowRef as fe}from"vue";function Se(){let t=i(),e=fe(A(t)),r=j(t,a=>{e.value=a});ve(r);let o=()=>t.feature.undo(),s=()=>t.feature.redo();return{canUndo:h(()=>e.value.canUndo),canRedo:h(()=>e.value.canRedo),historyIndex:h(()=>e.value.historyIndex),historySize:h(()=>e.value.historySize),undo:o,redo:s}}import{computed as T,onUnmounted as Be,ref as ge}from"vue";function ye(t){let e=i(),r=ge(e.read.getScopeStatus(t)),o=z(e,t,d=>{r.value=d});Be(()=>{o()});let s=async()=>{let d=await e.feature.validate({scope:t}),f=e.read.getScopeErrors(t);return{valid:d,errors:f}},a=()=>e.read.getScopeErrors(t),n=T(()=>!r.value.hasErrors),c=T(()=>r.value.isDirty),u=T(()=>r.value.errors);return{scopeName:t,status:r,errors:u,validate:s,getErrors:a,isValid:n,isDirty:c}}import{computed as g,onUnmounted as be,ref as X}from"vue";function Fe(t){if(t.length===0)throw new Error("useBitSteps: scopeNames must not be empty");let e=i(),r=X(0),o=g(()=>t[r.value]??""),s=X(e.read.getScopeStatus(o.value)),a=()=>{let v=o.value,B=e.read.getScopeStatus(v);M(s.value,B)||(s.value=B)},n=e.observe.subscribeScopeStatus(o.value,a),c=()=>{n(),n=e.observe.subscribeScopeStatus(o.value,a)};be(()=>{n()});let u=async()=>{let v=o.value,B=await e.feature.validate({scope:v}),m=e.read.getScopeErrors(v);return{valid:B,errors:m}},d=()=>e.read.getScopeErrors(o.value),f=async()=>{let v=o.value,B=e.read.getScopeFields(v);if(e.feature.hasValidationsInProgress(B))return!1;let m=await e.feature.validate({scope:v});if(m)r.value=Math.min(r.value+1,t.length-1),s.value=e.read.getScopeStatus(o.value),c();else{let N=e.read.getScopeErrors(v),E=Object.keys(N);E.length>0&&e.write.markFieldsTouched(E)}return m},l=()=>{r.value=Math.max(r.value-1,0),s.value=e.read.getScopeStatus(o.value),c()},y=v=>{r.value=Math.max(0,Math.min(v-1,t.length-1)),s.value=e.read.getScopeStatus(o.value),c()},S=g(()=>r.value+1),P=g(()=>r.value===0),V=g(()=>r.value>=t.length-1),R=g(()=>!s.value.hasErrors),b=g(()=>s.value.isDirty),F=g(()=>s.value.errors);return{step:S,stepIndex:r,scope:o,next:f,prev:l,goTo:y,isFirst:P,isLast:V,status:s,errors:F,isValid:R,isDirty:b,validate:u,getErrors:d}}import{ref as he,onUnmounted as Pe,readonly as Ve}from"vue";function Re(t){let e=i(),r=D(e.read.getState().values,t),o=he(r),s=e.observe.subscribePath(t,a=>{k(o.value,a)||(o.value=a)});return Pe(s),Ve(o)}import{computed as Z,ref as xe}from"vue";function Ue(t,e,r){let o=i(),s=U(t),a=null,n=xe(!1),c={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")},d=G(t,e,u,c),f=Y(t,r,u,c);return{value:s.value,setValue:s.setValue,error:Z(()=>s.meta.error),isValidating:Z(()=>!!s.meta.isValidating||n.value),upload:d,remove:f}}import{computed as w,onUnmounted as Te,ref as we,reactive as Ee}from"vue";function ke(){let t=i(),e=we(t.read.getPersistMetadata()),r=K(t,n=>{e.value=n});return Te(()=>r()),{restore:async()=>t.feature.restorePersisted(),save:async()=>{await t.feature.forceSave()},clear:async()=>{await t.feature.clearPersisted()},meta:Ee({isSaving:w(()=>e.value.isSaving),isRestoring:w(()=>e.value.isRestoring),error:w(()=>e.value.error)})}}export{oe as provideBitStore,de as useBitArray,U as useBitField,ne as useBitForm,Se as useBitHistory,ke as useBitPersist,ye as useBitScope,Fe as useBitSteps,i as useBitStore,Ue as useBitUpload,Re as useBitWatch};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/vue/context.ts","../../src/vue/use-bit-form.ts","../../src/vue/use-bit-field.ts","../../src/vue/use-bit-array.ts","../../src/vue/use-bit-history.ts","../../src/vue/use-bit-scope.ts","../../src/vue/use-bit-steps.ts","../../src/vue/use-bit-watch.ts","../../src/vue/use-bit-upload.ts","../../src/vue/use-bit-persist.ts"],"sourcesContent":["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","import { computed, onUnmounted, shallowRef } from \"vue\";\nimport { observeHistoryMetaSnapshot, readHistoryMetaSnapshot } 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\n const meta = shallowRef(readHistoryMetaSnapshot(store));\n\n const unsubscribe = observeHistoryMetaSnapshot(store, (nextMeta) => {\n meta.value = nextMeta;\n });\n\n onUnmounted(unsubscribe);\n\n const undo = () => store.feature.undo();\n const redo = () => store.feature.redo();\n\n return {\n canUndo: computed(() => meta.value.canUndo),\n canRedo: computed(() => meta.value.canRedo),\n historyIndex: computed(() => meta.value.historyIndex),\n historySize: computed(() => meta.value.historySize),\n undo,\n redo,\n };\n}\n","import { computed, onMounted, onUnmounted, ref } from \"vue\";\nimport type { ScopeStatus, ValidateScopeResult } from \"../core\";\nimport { observeScopeStatusSnapshot } from \"../core\";\nimport { useBitStore } from \"./context\";\n\nexport type { ScopeStatus, ValidateScopeResult };\n\nexport function useBitScope(scopeName: string) {\n const store = useBitStore();\n const status = ref<ScopeStatus>(store.read.getScopeStatus(scopeName));\n let unsubscribe: () => void;\n\n onMounted(() => {\n unsubscribe = observeScopeStatusSnapshot(store, scopeName, (nextStatus) => {\n status.value = nextStatus;\n });\n });\n\n onUnmounted(() => {\n unsubscribe?.();\n });\n\n const validate = async (): Promise<ValidateScopeResult> => {\n const valid = await store.feature.validate({ scope: scopeName });\n const errors = store.read.getScopeErrors(scopeName);\n return { valid, errors };\n };\n\n const getErrors = () => store.read.getScopeErrors(scopeName);\n\n const isValid = computed(() => !status.value.hasErrors);\n const isDirty = computed(() => status.value.isDirty);\n const errors = computed(() => status.value.errors);\n\n return {\n scopeName,\n status,\n errors,\n validate,\n getErrors,\n isValid,\n isDirty,\n };\n}\n","import { computed, onUnmounted, ref } from \"vue\";\nimport type { ScopeStatus, ValidateScopeResult } from \"../core\";\nimport { isScopeStatusEqual } from \"../core\";\nimport { useBitStore } from \"./context\";\nimport type { UseBitStepsResult } from \"./types\";\n\nexport function useBitSteps(scopeNames: string[]): UseBitStepsResult {\n const store = useBitStore();\n const stepIndex = ref(0);\n\n const scope = computed(() => scopeNames[stepIndex.value] ?? \"\");\n const status = ref<ScopeStatus>(store.read.getScopeStatus(scope.value));\n\n const updateStatus = () => {\n const scopeName = scope.value;\n const newStatus = store.read.getScopeStatus(scopeName);\n if (!isScopeStatusEqual(status.value, newStatus)) {\n status.value = newStatus;\n }\n };\n\n let unsubscribe = store.observe.subscribeScopeStatus(scope.value, updateStatus);\n\n const rebindScopeSubscription = () => {\n unsubscribe();\n unsubscribe = store.observe.subscribeScopeStatus(scope.value, updateStatus);\n };\n\n onUnmounted(() => {\n unsubscribe();\n });\n\n const validate = async (): Promise<ValidateScopeResult> => {\n const scopeName = scope.value;\n const valid = await store.feature.validate({ scope: scopeName });\n const errors = store.read.getScopeErrors(scopeName);\n return { valid, errors };\n };\n\n const getErrors = () => store.read.getScopeErrors(scope.value);\n\n const next = async (): Promise<boolean> => {\n const scopeName = scope.value;\n\n const scopeFields = store.read.getScopeFields(scopeName);\n if (store.feature.hasValidationsInProgress(scopeFields)) {\n return false;\n }\n\n const valid = await store.feature.validate({ scope: scopeName });\n if (valid) {\n stepIndex.value = Math.min(stepIndex.value + 1, scopeNames.length - 1);\n status.value = store.read.getScopeStatus(scope.value);\n rebindScopeSubscription();\n } else {\n const errors = store.read.getScopeErrors(scopeName);\n const pathsWithErrors = Object.keys(errors);\n if (pathsWithErrors.length > 0) {\n store.write.markFieldsTouched(pathsWithErrors);\n }\n }\n return valid;\n };\n\n const prev = () => {\n stepIndex.value = Math.max(stepIndex.value - 1, 0);\n status.value = store.read.getScopeStatus(scope.value);\n rebindScopeSubscription();\n };\n\n const goTo = (targetStep: number) => {\n stepIndex.value = Math.max(\n 0,\n Math.min(targetStep - 1, scopeNames.length - 1),\n );\n status.value = store.read.getScopeStatus(scope.value);\n rebindScopeSubscription();\n };\n\n const step = computed(() => stepIndex.value + 1);\n const isFirst = computed(() => stepIndex.value === 0);\n const isLast = computed(() => stepIndex.value >= scopeNames.length - 1);\n const isValid = computed(() => !status.value.hasErrors);\n const isDirty = computed(() => status.value.isDirty);\n const errors = computed(() => status.value.errors);\n\n return {\n step,\n stepIndex,\n scope,\n next,\n prev,\n goTo,\n isFirst,\n isLast,\n status,\n errors,\n isValid,\n isDirty,\n validate,\n getErrors,\n };\n}\n","import { ref, onUnmounted, readonly } from \"vue\";\nimport { useBitStore } from \"./context\";\nimport { getDeepValue, valueEqual, BitPath, BitPathValue } from \"../core\";\n\nexport function useBitWatch<\n TForm extends object = any,\n P extends BitPath<TForm> = BitPath<TForm>,\n>(path: P) {\n const store = useBitStore<TForm>();\n const initialValue = getDeepValue(\n store.read.getState().values,\n path as string,\n ) as BitPathValue<TForm, P>;\n const value = ref<BitPathValue<TForm, P>>(initialValue);\n\n const unsubscribe = store.observe.subscribePath(path, (newValue) => {\n if (!valueEqual(value.value, newValue)) {\n value.value = newValue as BitPathValue<TForm, P>;\n }\n });\n\n onUnmounted(unsubscribe);\n\n return readonly(value);\n}\n","/**\n * Vue Composition API for File Upload\n *\n * Minimal upload API integrated with global field validation lifecycle.\n */\n\nimport { computed, ComputedRef, ref } from \"vue\";\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 let uploadKey: string | null = null;\n const isUploading = ref(false);\n\n const kernelCallbacks = {\n setLoading: (val: boolean) => {\n isUploading.value = val;\n },\n setError: (path: string, msg: string | undefined) =>\n store.write.setError(path, msg),\n setValue: (val: string | null) => field.setValue(val),\n getUploadKey: () => uploadKey,\n setUploadKey: (key: string | null) => {\n uploadKey = key;\n },\n onCallbackError: (e: unknown) =>\n store.read.config.onUnhandledError(e, \"upload\"),\n };\n\n const upload = createUploadHandler(fieldPath, uploadFn, kernelCallbacks);\n const remove = createRemoveHandler(fieldPath, deleteFile, kernelCallbacks);\n\n return {\n value: field.value as ComputedRef<string | File | null>,\n setValue: field.setValue,\n error: computed(() => field.meta.error),\n isValidating: computed(\n () => !!field.meta.isValidating || isUploading.value,\n ),\n upload,\n remove,\n };\n}\n","import { computed, onUnmounted, ref, reactive } from \"vue\";\nimport { useBitStore } from \"./context\";\nimport { observePersistMetaSnapshot } from \"../core\";\nimport type { UseBitPersistResult } from \"./types\";\n\nexport function useBitPersist<T extends object = any>(): UseBitPersistResult {\n const store = useBitStore<T>();\n const meta = ref(store.read.getPersistMetadata());\n\n const unsubscribe = observePersistMetaSnapshot(store, (nextMeta) => {\n meta.value = nextMeta;\n });\n\n onUnmounted(() => unsubscribe());\n\n const restore = async (): Promise<boolean> => {\n return store.feature.restorePersisted();\n };\n\n const save = async (): Promise<void> => {\n await store.feature.forceSave();\n };\n\n const clear = async (): Promise<void> => {\n await store.feature.clearPersisted();\n };\n\n return {\n restore,\n save,\n clear,\n meta: reactive({\n isSaving: computed(() => meta.value.isSaving),\n isRestoring: computed(() => meta.value.isRestoring),\n error: computed(() => meta.value.error),\n }),\n };\n}\n"],"mappings":"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","names":["inject","provide","BIT_STORE_KEY","provideBitStore","store","provide","createFrameworkStoreAdapter","useBitStore","inject","computed","onUnmounted","shallowRef","ref","reactive","useBitForm","store","useBitStore","state","shallowRef","submitError","ref","lastResponse","unsubscribe","observeFormMetaSnapshot","nextMeta","onUnmounted","controller","actions","createFrameworkFormBinding","result","error","isValid","computed","isSubmitting","isDirty","onSubmit","reset","reactive","computed","onUnmounted","shallowRef","reactive","useBitField","path","store","useBitStore","fieldController","createFrameworkMaskedFieldBinding","state","shallowRef","unsubscribe","nextState","onUnmounted","cleanupRegisteredField","rawValue","computed","displayValue","modelValue","val","metaState","deriveFieldMeta","error","touched","invalid","isValidating","isDirty","isHidden","isRequired","hasError","setValue","setBlur","reactive","computed","onUnmounted","shallowRef","useBitArray","path","store","useBitStore","controller","createArrayBinding","values","shallowRef","unsubscribe","onUnmounted","cleanupRegisteredPrefix","fields","computed","length","computed","onUnmounted","shallowRef","useBitHistory","store","useBitStore","meta","shallowRef","readHistoryMetaSnapshot","unsubscribe","observeHistoryMetaSnapshot","nextMeta","onUnmounted","undo","redo","computed","computed","onMounted","onUnmounted","ref","useBitScope","scopeName","store","useBitStore","status","ref","unsubscribe","onMounted","observeScopeStatusSnapshot","nextStatus","onUnmounted","validate","valid","errors","getErrors","isValid","computed","isDirty","computed","onUnmounted","ref","useBitSteps","scopeNames","store","useBitStore","stepIndex","ref","scope","computed","status","updateStatus","scopeName","newStatus","isScopeStatusEqual","unsubscribe","rebindScopeSubscription","onUnmounted","validate","valid","errors","getErrors","next","scopeFields","pathsWithErrors","prev","goTo","targetStep","step","isFirst","isLast","isValid","isDirty","ref","onUnmounted","readonly","useBitWatch","path","store","useBitStore","initialValue","getDeepValue","value","ref","unsubscribe","newValue","valueEqual","onUnmounted","readonly","computed","ref","useBitUpload","fieldPath","uploadFn","deleteFile","store","useBitStore","field","useBitField","uploadKey","isUploading","ref","kernelCallbacks","val","path","msg","key","e","upload","createUploadHandler","remove","createRemoveHandler","computed","computed","onUnmounted","ref","reactive","useBitPersist","store","useBitStore","meta","ref","unsubscribe","observePersistMetaSnapshot","nextMeta","onUnmounted","reactive","computed"]}
1
+ {"version":3,"sources":["../../src/vue/context.ts","../../src/vue/use-bit-form.ts","../../src/vue/use-bit-field.ts","../../src/vue/use-bit-array.ts","../../src/vue/use-bit-history.ts","../../src/vue/use-bit-scope.ts","../../src/vue/use-bit-steps.ts","../../src/vue/use-bit-watch.ts","../../src/vue/use-bit-upload.ts","../../src/vue/use-bit-persist.ts"],"sourcesContent":["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 as any).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 // 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","import { computed, onUnmounted, shallowRef } from \"vue\";\nimport { observeHistoryMetaSnapshot, readHistoryMetaSnapshot } 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\n const meta = shallowRef(readHistoryMetaSnapshot(store));\n\n const unsubscribe = observeHistoryMetaSnapshot(store, (nextMeta) => {\n meta.value = nextMeta;\n });\n\n onUnmounted(unsubscribe);\n\n const undo = () => store.feature.undo();\n const redo = () => store.feature.redo();\n\n return {\n canUndo: computed(() => meta.value.canUndo),\n canRedo: computed(() => meta.value.canRedo),\n historyIndex: computed(() => meta.value.historyIndex),\n historySize: computed(() => meta.value.historySize),\n undo,\n redo,\n };\n}\n","import { computed, onUnmounted, ref } from \"vue\";\nimport type { ScopeStatus, ValidateScopeResult } from \"../core\";\nimport { observeScopeStatusSnapshot } from \"../core\";\nimport { useBitStore } from \"./context\";\n\nexport type { ScopeStatus, ValidateScopeResult };\n\nexport function useBitScope(scopeName: string) {\n const store = useBitStore();\n const status = ref<ScopeStatus>(store.read.getScopeStatus(scopeName));\n\n const unsubscribe = observeScopeStatusSnapshot(store, scopeName, (nextStatus) => {\n status.value = nextStatus;\n });\n\n onUnmounted(() => {\n unsubscribe();\n });\n\n const validate = async (): Promise<ValidateScopeResult> => {\n const valid = await store.feature.validate({ scope: scopeName });\n const errors = store.read.getScopeErrors(scopeName);\n return { valid, errors };\n };\n\n const getErrors = () => store.read.getScopeErrors(scopeName);\n\n const isValid = computed(() => !status.value.hasErrors);\n const isDirty = computed(() => status.value.isDirty);\n const errors = computed(() => status.value.errors);\n\n return {\n scopeName,\n status,\n errors,\n validate,\n getErrors,\n isValid,\n isDirty,\n };\n}\n","import { computed, onUnmounted, ref } from \"vue\";\nimport type { ScopeStatus, ValidateScopeResult } from \"../core\";\nimport { isScopeStatusEqual } from \"../core\";\nimport { useBitStore } from \"./context\";\nimport type { UseBitStepsResult } from \"./types\";\n\nexport function useBitSteps(scopeNames: string[]): UseBitStepsResult {\n if (scopeNames.length === 0) {\n throw new Error(\"useBitSteps: scopeNames must not be empty\");\n }\n const store = useBitStore();\n const stepIndex = ref(0);\n\n const scope = computed(() => scopeNames[stepIndex.value] ?? \"\");\n const status = ref<ScopeStatus>(store.read.getScopeStatus(scope.value));\n\n const updateStatus = () => {\n const scopeName = scope.value;\n const newStatus = store.read.getScopeStatus(scopeName);\n if (!isScopeStatusEqual(status.value, newStatus)) {\n status.value = newStatus;\n }\n };\n\n let unsubscribe = store.observe.subscribeScopeStatus(scope.value, updateStatus);\n\n const rebindScopeSubscription = () => {\n unsubscribe();\n unsubscribe = store.observe.subscribeScopeStatus(scope.value, updateStatus);\n };\n\n onUnmounted(() => {\n unsubscribe();\n });\n\n const validate = async (): Promise<ValidateScopeResult> => {\n const scopeName = scope.value;\n const valid = await store.feature.validate({ scope: scopeName });\n const errors = store.read.getScopeErrors(scopeName);\n return { valid, errors };\n };\n\n const getErrors = () => store.read.getScopeErrors(scope.value);\n\n const next = async (): Promise<boolean> => {\n const scopeName = scope.value;\n\n const scopeFields = store.read.getScopeFields(scopeName);\n if (store.feature.hasValidationsInProgress(scopeFields)) {\n return false;\n }\n\n const valid = await store.feature.validate({ scope: scopeName });\n if (valid) {\n stepIndex.value = Math.min(stepIndex.value + 1, scopeNames.length - 1);\n status.value = store.read.getScopeStatus(scope.value);\n rebindScopeSubscription();\n } else {\n const errors = store.read.getScopeErrors(scopeName);\n const pathsWithErrors = Object.keys(errors);\n if (pathsWithErrors.length > 0) {\n store.write.markFieldsTouched(pathsWithErrors);\n }\n }\n return valid;\n };\n\n const prev = () => {\n stepIndex.value = Math.max(stepIndex.value - 1, 0);\n status.value = store.read.getScopeStatus(scope.value);\n rebindScopeSubscription();\n };\n\n const goTo = (targetStep: number) => {\n stepIndex.value = Math.max(\n 0,\n Math.min(targetStep - 1, scopeNames.length - 1),\n );\n status.value = store.read.getScopeStatus(scope.value);\n rebindScopeSubscription();\n };\n\n const step = computed(() => stepIndex.value + 1);\n const isFirst = computed(() => stepIndex.value === 0);\n const isLast = computed(() => stepIndex.value >= scopeNames.length - 1);\n const isValid = computed(() => !status.value.hasErrors);\n const isDirty = computed(() => status.value.isDirty);\n const errors = computed(() => status.value.errors);\n\n return {\n step,\n stepIndex,\n scope,\n next,\n prev,\n goTo,\n isFirst,\n isLast,\n status,\n errors,\n isValid,\n isDirty,\n validate,\n getErrors,\n };\n}\n","import { ref, onUnmounted, readonly } from \"vue\";\nimport { useBitStore } from \"./context\";\nimport { getDeepValue, valueEqual, BitPath, BitPathValue } from \"../core\";\n\nexport function useBitWatch<\n TForm extends object = any,\n P extends BitPath<TForm> = BitPath<TForm>,\n>(path: P) {\n const store = useBitStore<TForm>();\n const initialValue = getDeepValue(\n store.read.getState().values,\n path as string,\n ) as BitPathValue<TForm, P>;\n const value = ref<BitPathValue<TForm, P>>(initialValue);\n\n const unsubscribe = store.observe.subscribePath(path, (newValue) => {\n if (!valueEqual(value.value, newValue)) {\n value.value = newValue as BitPathValue<TForm, P>;\n }\n });\n\n onUnmounted(unsubscribe);\n\n return readonly(value);\n}\n","/**\n * Vue Composition API for File Upload\n *\n * Minimal upload API integrated with global field validation lifecycle.\n */\n\nimport { computed, ComputedRef, ref } from \"vue\";\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 let uploadKey: string | null = null;\n const isUploading = ref(false);\n const sharedGen = { current: 0 };\n\n const kernelCallbacks = {\n setLoading: (val: boolean) => {\n isUploading.value = val;\n },\n setError: (path: string, msg: string | undefined) =>\n store.write.setError(path, msg),\n setValue: (val: string | null) => field.setValue(val),\n getUploadKey: () => uploadKey,\n setUploadKey: (key: string | null) => {\n uploadKey = key;\n },\n onCallbackError: (e: unknown) =>\n store.read.config.onUnhandledError(e, \"upload\"),\n };\n\n const upload = createUploadHandler(fieldPath, uploadFn, kernelCallbacks, sharedGen);\n const remove = createRemoveHandler(fieldPath, deleteFile, kernelCallbacks, sharedGen);\n\n return {\n value: field.value as ComputedRef<string | File | null>,\n setValue: field.setValue,\n error: computed(() => field.meta.error),\n isValidating: computed(\n () => !!field.meta.isValidating || isUploading.value,\n ),\n upload,\n remove,\n };\n}\n","import { computed, onUnmounted, ref, reactive } from \"vue\";\nimport { useBitStore } from \"./context\";\nimport { observePersistMetaSnapshot } from \"../core\";\nimport type { UseBitPersistResult } from \"./types\";\n\nexport function useBitPersist<T extends object = any>(): UseBitPersistResult {\n const store = useBitStore<T>();\n const meta = ref(store.read.getPersistMetadata());\n\n const unsubscribe = observePersistMetaSnapshot(store, (nextMeta) => {\n meta.value = nextMeta;\n });\n\n onUnmounted(() => unsubscribe());\n\n const restore = async (): Promise<boolean> => {\n return store.feature.restorePersisted();\n };\n\n const save = async (): Promise<void> => {\n await store.feature.forceSave();\n };\n\n const clear = async (): Promise<void> => {\n await store.feature.clearPersisted();\n };\n\n return {\n restore,\n save,\n clear,\n meta: reactive({\n isSaving: computed(() => meta.value.isSaving),\n isRestoring: computed(() => meta.value.isRestoring),\n error: computed(() => meta.value.error),\n }),\n };\n}\n"],"mappings":"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","names":["inject","onUnmounted","provide","BIT_STORE_KEY","provideBitStore","store","adapted","createFrameworkStoreAdapter","provide","onUnmounted","useBitStore","inject","computed","onUnmounted","shallowRef","ref","reactive","useBitForm","store","useBitStore","state","shallowRef","submitError","ref","lastResponse","unsubscribe","observeFormMetaSnapshot","nextMeta","onUnmounted","controller","actions","createFrameworkFormBinding","result","error","isValid","computed","isSubmitting","isDirty","onSubmit","reset","reactive","computed","onUnmounted","shallowRef","reactive","useBitField","path","store","useBitStore","fieldController","createFrameworkMaskedFieldBinding","state","shallowRef","unsubscribe","nextState","onUnmounted","cleanupRegisteredField","rawValue","computed","displayValue","modelValue","val","metaState","deriveFieldMeta","error","touched","invalid","isValidating","isDirty","isHidden","isRequired","hasError","setValue","setBlur","reactive","computed","onUnmounted","shallowRef","useBitArray","path","store","useBitStore","controller","createArrayBinding","values","shallowRef","unsubscribe","onUnmounted","cleanupRegisteredPrefix","fields","computed","length","computed","onUnmounted","shallowRef","useBitHistory","store","useBitStore","meta","shallowRef","readHistoryMetaSnapshot","unsubscribe","observeHistoryMetaSnapshot","nextMeta","onUnmounted","undo","redo","computed","computed","onUnmounted","ref","useBitScope","scopeName","store","useBitStore","status","ref","unsubscribe","observeScopeStatusSnapshot","nextStatus","onUnmounted","validate","valid","errors","getErrors","isValid","computed","isDirty","computed","onUnmounted","ref","useBitSteps","scopeNames","store","useBitStore","stepIndex","ref","scope","computed","status","updateStatus","scopeName","newStatus","isScopeStatusEqual","unsubscribe","rebindScopeSubscription","onUnmounted","validate","valid","errors","getErrors","next","scopeFields","pathsWithErrors","prev","goTo","targetStep","step","isFirst","isLast","isValid","isDirty","ref","onUnmounted","readonly","useBitWatch","path","store","useBitStore","initialValue","getDeepValue","value","ref","unsubscribe","newValue","valueEqual","onUnmounted","readonly","computed","ref","useBitUpload","fieldPath","uploadFn","deleteFile","store","useBitStore","field","useBitField","uploadKey","isUploading","ref","sharedGen","kernelCallbacks","val","path","msg","key","e","upload","createUploadHandler","remove","createRemoveHandler","computed","computed","onUnmounted","ref","reactive","useBitPersist","store","useBitStore","meta","ref","unsubscribe","observePersistMetaSnapshot","nextMeta","onUnmounted","reactive","computed"]}