@ram_28/kf-ai-sdk 2.0.3 → 2.0.5

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 (67) hide show
  1. package/dist/api.mjs +1 -1
  2. package/dist/auth.mjs +1 -1
  3. package/dist/bdo/core/Item.d.ts.map +1 -1
  4. package/dist/bdo/core/types.d.ts +1 -0
  5. package/dist/bdo/core/types.d.ts.map +1 -1
  6. package/dist/bdo.cjs +1 -1
  7. package/dist/bdo.mjs +91 -86
  8. package/dist/components/hooks/useForm/createItemProxy.d.ts.map +1 -1
  9. package/dist/components/hooks/useForm/index.d.ts +1 -1
  10. package/dist/components/hooks/useForm/index.d.ts.map +1 -1
  11. package/dist/components/hooks/useForm/types.d.ts +6 -16
  12. package/dist/components/hooks/useForm/types.d.ts.map +1 -1
  13. package/dist/components/hooks/useForm/useForm.d.ts +0 -1
  14. package/dist/components/hooks/useForm/useForm.d.ts.map +1 -1
  15. package/dist/components/hooks/useTable/types.d.ts +2 -2
  16. package/dist/components/hooks/useTable/useTable.d.ts.map +1 -1
  17. package/dist/{constants-BQrBcCON.js → constants-CYJih7y4.js} +2 -2
  18. package/dist/filter.mjs +1 -1
  19. package/dist/form.cjs +1 -1
  20. package/dist/form.mjs +158 -278
  21. package/dist/form.types.d.ts +1 -1
  22. package/dist/form.types.d.ts.map +1 -1
  23. package/dist/table.cjs +1 -1
  24. package/dist/table.mjs +65 -65
  25. package/dist/types/constants.d.ts +11 -11
  26. package/dist/types/constants.d.ts.map +1 -1
  27. package/dist/utils/api/buildListOptions.d.ts +1 -1
  28. package/dist/utils/api/buildListOptions.d.ts.map +1 -1
  29. package/dist/workflow/Activity.d.ts +14 -5
  30. package/dist/workflow/Activity.d.ts.map +1 -1
  31. package/dist/workflow/ActivityInstance.d.ts +1 -1
  32. package/dist/workflow/ActivityInstance.d.ts.map +1 -1
  33. package/dist/workflow/client.d.ts +14 -4
  34. package/dist/workflow/client.d.ts.map +1 -1
  35. package/dist/workflow/components/useActivityForm/createActivityItemProxy.d.ts.map +1 -1
  36. package/dist/workflow/types.d.ts +26 -9
  37. package/dist/workflow/types.d.ts.map +1 -1
  38. package/dist/workflow.cjs +1 -1
  39. package/dist/workflow.mjs +296 -240
  40. package/docs/bdo.md +63 -0
  41. package/docs/useAuth.md +27 -0
  42. package/docs/useFilter.md +67 -0
  43. package/docs/useForm.md +59 -0
  44. package/docs/useTable.md +106 -13
  45. package/docs/workflow.md +93 -49
  46. package/package.json +2 -2
  47. package/sdk/api/metadata.ts +4 -4
  48. package/sdk/bdo/core/Item.ts +8 -0
  49. package/sdk/bdo/core/types.ts +1 -0
  50. package/sdk/components/hooks/useForm/createItemProxy.ts +8 -0
  51. package/sdk/components/hooks/useForm/index.ts +0 -1
  52. package/sdk/components/hooks/useForm/types.ts +7 -18
  53. package/sdk/components/hooks/useForm/useForm.ts +30 -112
  54. package/sdk/components/hooks/useTable/types.ts +2 -2
  55. package/sdk/components/hooks/useTable/useTable.llm.txt +7 -7
  56. package/sdk/components/hooks/useTable/useTable.ts +9 -8
  57. package/sdk/form.types.ts +0 -1
  58. package/sdk/types/constants.ts +11 -11
  59. package/sdk/utils/api/buildListOptions.ts +2 -3
  60. package/sdk/workflow/Activity.ts +31 -10
  61. package/sdk/workflow/ActivityInstance.ts +1 -1
  62. package/sdk/workflow/client.ts +73 -10
  63. package/sdk/workflow/components/useActivityForm/createActivityItemProxy.ts +4 -0
  64. package/sdk/workflow/types.ts +22 -9
  65. package/dist/components/hooks/useForm/useDraftInteraction.d.ts +0 -26
  66. package/dist/components/hooks/useForm/useDraftInteraction.d.ts.map +0 -1
  67. package/sdk/components/hooks/useForm/useDraftInteraction.ts +0 -251
@@ -3,6 +3,7 @@ import type { BaseBdo } from "../../../bdo";
3
3
  import type { BaseFieldMetaType, BdoMetaType, ValidationResultType } from "../../../bdo/core/types";
4
4
  import type { BaseField } from "../../../bdo/fields/BaseField";
5
5
  import type { SystemFieldsType } from "../../../types/base-fields";
6
+ import type { CreateUpdateResponseType } from "../../../types/common";
6
7
  /** Extract TEditable from a BaseBdo instance */
7
8
  export type ExtractEditableType<B> = B extends BaseBdo<any, infer E, any> ? E : never;
8
9
  /** Extract TReadonly from a BaseBdo instance */
@@ -28,11 +29,6 @@ export interface UpdatableBdo<TEditable = any> extends BaseBdoShape {
28
29
  }
29
30
  /** BDO that supports both create and update */
30
31
  export type FormBdo<TEditable = any> = CreatableBdo<TEditable> & UpdatableBdo<TEditable>;
31
- /** BDO that supports interactive create (draft interaction during create) */
32
- export interface InteractiveCreatableBdo<TEditable = any> extends CreatableBdo<TEditable> {
33
- draftInteraction(data: Partial<TEditable>): Promise<any>;
34
- draft(data: Partial<TEditable>): Promise<any>;
35
- }
36
32
  /**
37
33
  * Custom handleSubmit that handles API calls automatically
38
34
  *
@@ -48,8 +44,6 @@ interface UseFormCreateOptionsType<B extends BaseBdo<any, any, any>> {
48
44
  recordId?: undefined;
49
45
  defaultValues?: Partial<ExtractEditableType<B>>;
50
46
  mode?: "onBlur" | "onChange" | "onSubmit" | "onTouched" | "all";
51
- interactionMode?: "interactive" | "non-interactive";
52
- /** @deprecated Use interactionMode instead */
53
47
  enableDraft?: boolean;
54
48
  enableConstraintValidation?: boolean;
55
49
  enableExpressionValidation?: boolean;
@@ -61,8 +55,6 @@ interface UseFormUpdateOptionsType<B extends BaseBdo<any, any, any>> {
61
55
  recordId: string;
62
56
  defaultValues?: Partial<ExtractEditableType<B>>;
63
57
  mode?: "onBlur" | "onChange" | "onSubmit" | "onTouched" | "all";
64
- interactionMode?: "interactive" | "non-interactive";
65
- /** @deprecated Use interactionMode instead */
66
58
  enableDraft?: boolean;
67
59
  enableConstraintValidation?: boolean;
68
60
  enableExpressionValidation?: boolean;
@@ -74,8 +66,6 @@ interface UseFormAutoOptionsType<B extends BaseBdo<any, any, any>> {
74
66
  recordId?: string;
75
67
  defaultValues?: Partial<ExtractEditableType<B>>;
76
68
  mode?: "onBlur" | "onChange" | "onSubmit" | "onTouched" | "all";
77
- interactionMode?: "interactive" | "non-interactive";
78
- /** @deprecated Use interactionMode instead */
79
69
  enableDraft?: boolean;
80
70
  enableConstraintValidation?: boolean;
81
71
  enableExpressionValidation?: boolean;
@@ -87,6 +77,7 @@ export interface EditableFormFieldAccessorType<T> {
87
77
  readonly defaultValue: unknown;
88
78
  readonly meta: BaseFieldMetaType;
89
79
  get(): T | undefined;
80
+ getOrDefault(fallback: T): T;
90
81
  set(value: T): void;
91
82
  validate(): ValidationResultType;
92
83
  }
@@ -97,6 +88,7 @@ export interface ReadonlyFormFieldAccessorType<T> {
97
88
  readonly defaultValue: unknown;
98
89
  readonly meta: BaseFieldMetaType;
99
90
  get(): T | undefined;
91
+ getOrDefault(fallback: T): T;
100
92
  validate(): ValidationResultType;
101
93
  }
102
94
  /**
@@ -121,7 +113,7 @@ export interface UseFormReturnType<B extends BaseBdo<any, any, any>> {
121
113
  operation: "create" | "update";
122
114
  recordId?: string;
123
115
  register: FormRegisterType<ExtractEditableType<B>, ExtractReadonlyType<B>>;
124
- handleSubmit: HandleSubmitType;
116
+ handleSubmit: HandleSubmitType<CreateUpdateResponseType>;
125
117
  watch: UseFormWatch<AllFieldsType<B>>;
126
118
  setValue: UseFormSetValue<ExtractEditableType<B>>;
127
119
  getValues: UseFormGetValues<AllFieldsType<B>>;
@@ -138,10 +130,8 @@ export interface UseFormReturnType<B extends BaseBdo<any, any, any>> {
138
130
  isLoading: boolean;
139
131
  isFetching: boolean;
140
132
  loadError: Error | null;
141
- draftId: string | undefined;
142
- isInitializingDraft: boolean;
143
- isInteracting: boolean;
144
- interactionError: Error | null;
133
+ draftId?: string;
134
+ isCreatingDraft?: boolean;
145
135
  }
146
136
  export {};
147
137
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../sdk/components/hooks/useForm/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../sdk/components/hooks/useForm/types.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,6 @@ import type { UseFormOptionsType, UseFormReturnType } from "./types";
12
12
  * - Smart register: auto-disables readonly fields
13
13
  * - Payload filtering: handleSubmit auto-filters to editable fields only
14
14
  * - Constraint validation: auto-validates required, length, etc. from field meta
15
- * - Interactive draft mode: real-time server-side computation on field blur/change
16
15
  */
17
16
  export declare function useForm<B extends BaseBdo<any, any, any>>(options: UseFormOptionsType<B>): UseFormReturnType<B>;
18
17
  //# sourceMappingURL=useForm.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useForm.d.ts","sourceRoot":"","sources":["../../../../sdk/components/hooks/useForm/useForm.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EAMlB,MAAM,SAAS,CAAC;AAEjB;;;;;;;;;;;;;GAaG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EACtD,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC7B,iBAAiB,CAAC,CAAC,CAAC,CAkStB"}
1
+ {"version":3,"file":"useForm.d.ts","sourceRoot":"","sources":["../../../../sdk/components/hooks/useForm/useForm.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EAKlB,MAAM,SAAS,CAAC;AAEjB;;;;;;;;;;;;GAYG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EACtD,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC7B,iBAAiB,CAAC,CAAC,CAAC,CAkNtB"}
@@ -43,10 +43,10 @@ export interface UseTableReturnType<T> {
43
43
  };
44
44
  sort: {
45
45
  field: keyof T | null;
46
- direction: "asc" | "desc" | null;
46
+ direction: "ASC" | "DESC" | null;
47
47
  toggle: (field: keyof T) => void;
48
48
  clear: () => void;
49
- set: (field: keyof T, direction: "asc" | "desc") => void;
49
+ set: (field: keyof T, direction: "ASC" | "DESC") => void;
50
50
  };
51
51
  filter: UseFilterReturnType<T>;
52
52
  pagination: {
@@ -1 +1 @@
1
- {"version":3,"file":"useTable.d.ts","sourceRoot":"","sources":["../../../../sdk/components/hooks/useTable/useTable.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AA0BvE,wBAAgB,QAAQ,CAAC,CAAC,GAAG,GAAG,EAC9B,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC9B,kBAAkB,CAAC,CAAC,CAAC,CAmWvB"}
1
+ {"version":3,"file":"useTable.d.ts","sourceRoot":"","sources":["../../../../sdk/components/hooks/useTable/useTable.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AA0BvE,wBAAgB,QAAQ,CAAC,CAAC,GAAG,GAAG,EAC9B,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC9B,kBAAkB,CAAC,CAAC,CAAC,CAoWvB"}
@@ -84,9 +84,9 @@ const t = {
84
84
  /** Update existing record */
85
85
  Update: "update"
86
86
  }, c = {
87
- /** Real-time server-side validation and computation on field blur/change */
87
+ /** Real-time server-side validation and computation on every field blur */
88
88
  Interactive: "interactive",
89
- /** No server interaction during editing submit only */
89
+ /** Draft only for computed field dependencies */
90
90
  NonInteractive: "non-interactive"
91
91
  }, r = {
92
92
  /** Validate on blur (default) */
package/dist/filter.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { i, a, u as e } from "./useFilter-DPNLKY3H.js";
2
- import { C as t, R as n, G as p } from "./constants-BQrBcCON.js";
2
+ import { C as t, R as n, G as p } from "./constants-CYJih7y4.js";
3
3
  export {
4
4
  t as ConditionOperator,
5
5
  n as FilterValueSource,
package/dist/form.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("./constants-D0J69if5.cjs"),l=require("react"),L=require("./index.esm-DuwT11sx.cjs"),$=require("@tanstack/react-query"),Q=require("./metadata-BJWukIqS.cjs");function J(i,t){const n=[];if(i.required&&(t==null||t===""))return n.push(`${i.label} is required`),{valid:!1,errors:n};if(t==null||t==="")return{valid:!0,errors:[]};if("length"in i&&typeof i.length=="number"&&typeof t=="string"&&t.length>i.length&&n.push(`${i.label} must be at most ${i.length} characters`),"integerPart"in i&&typeof t=="number"){const y=Math.floor(Math.abs(t)),u=i.integerPart??9;y.toString().length>u&&n.push(`${i.label} integer part must be at most ${u} digits`);const e=i.fractionPart;e!==void 0&&(t.toString().split(".")[1]??"").length>e&&n.push(`${i.label} can have at most ${e} decimal places`)}return n.length>0?{valid:!1,errors:n}:{valid:!0,errors:[]}}function A(i,t){return async(n,y,u)=>{var w;const e={},r=i.getFields(),I=(u==null?void 0:u.names)??Object.keys(r);for(const f of I){if(f==="_id"||(w=r[f])!=null&&w.readOnly)continue;const O=r[f];if(!O)continue;const s=n[f],c=O.validate(s);if(!c.valid&&c.errors.length>0){e[f]={type:"validate",message:c.errors[0]||`${f} is invalid`};continue}if((t==null?void 0:t.enableConstraintValidation)!==!1){const o=J(O,s);if(!o.valid&&o.errors.length>0){e[f]={type:"constraint",message:o.errors[0]};continue}}if(i.hasMetadata()){const o=i.validateFieldExpression(f,s,n);!o.valid&&o.errors.length>0&&(e[f]={type:"validate",message:o.errors[0]})}}return Object.keys(e).length===0?{values:n,errors:{}}:{values:{},errors:e}}}function U(i,t){const n=i.getFields(),y=new Map;return new Proxy({},{get(u,e){if(typeof e=="symbol")return;if(e==="_id")return t.getValues("_id");if(e==="toJSON")return()=>t.getValues();if(e==="validate")return()=>t.trigger();if(y.has(e))return y.get(e);const r=n[e],I=(r==null?void 0:r.meta)??{_id:e,Name:e,Type:"String"},w=(r==null?void 0:r.readOnly)??!1,f=()=>{if(!r)return{valid:!0,errors:[]};const s=t.getValues(e),c=r.validate(s);if(!c.valid)return c;const o=J(r,s);if(!o.valid)return o;if(i.hasMetadata()){const S=i.validateFieldExpression(e,s,t.getValues());if(!S.valid)return S}return{valid:!0,errors:[]}};if(!w){const s={label:(r==null?void 0:r.label)??e,required:(r==null?void 0:r.required)??!1,readOnly:!1,defaultValue:r==null?void 0:r.defaultValue,meta:I,get:()=>t.getValues(e),set:c=>{t.setValue(e,c,{shouldDirty:!0,shouldTouch:!0,shouldValidate:!1})},validate:f};return y.set(e,s),s}const O={label:(r==null?void 0:r.label)??e,required:(r==null?void 0:r.required)??!1,readOnly:!0,defaultValue:r==null?void 0:r.defaultValue,meta:I,get:()=>t.getValues(e),validate:f};return y.set(e,O),O},has(u,e){return typeof e=="symbol"?!1:e==="_id"||e==="toJSON"||e==="validate"?!0:e in n},ownKeys(u){return[...Object.keys(n),"_id","toJSON","validate"]},getOwnPropertyDescriptor(u,e){if(typeof e!="symbol")return{configurable:!0,enumerable:e!=="toJSON"&&e!=="validate"}}})}const G=300;function H(i){const{bdo:t,form:n,mode:y,fields:u,enabled:e}=i,[r,I]=l.useState(void 0),[w,f]=l.useState(!1),[O,s]=l.useState(!1),[c,o]=l.useState(null),S=l.useRef(0),E=l.useRef(!1),k=l.useRef(null),j=l.useRef(null);l.useEffect(()=>{if(!e)return;let g=!1;f(!0);const D=new AbortController;return j.current=D,t.draftInteraction({}).then(b=>{if(g||D.signal.aborted)return;const C=b._id;I(C),n.setValue("_id",C,{shouldDirty:!1}),o(null)}).catch(b=>{g||D.signal.aborted||o(b instanceof Error?b:new Error(String(b)))}).finally(()=>{g||f(!1)}),()=>{g=!0,D.abort()}},[e,t,n]);const _=l.useCallback(async()=>{if(!e||!r||E.current)return;const g=n.formState.dirtyFields,D=n.getValues(),b={};for(const[d,q]of Object.entries(g))q&&u[d]&&!u[d].readOnly&&(b[d]=D[d]);if(Object.keys(b).length===0)return;const C=++S.current;s(!0);try{const d=await t.draftInteraction({_id:r,...b});if(C!==S.current)return;E.current=!0;try{for(const[q,P]of Object.entries(d))q!=="_id"&&(g[q]||n.setValue(q,P,{shouldDirty:!1,shouldValidate:!1}))}finally{setTimeout(()=>{E.current=!1},0)}o(null)}catch(d){if(C!==S.current)return;o(d instanceof Error?d:new Error(String(d)))}finally{C===S.current&&s(!1)}},[e,r,n,u,t]),a=l.useCallback(()=>{e&&(y==="onChange"||y==="all"?(k.current&&clearTimeout(k.current),k.current=setTimeout(()=>{_()},G)):_())},[e,y,_]),m=l.useCallback(async g=>t.draft({_id:r,...g}),[t,r]);return l.useEffect(()=>()=>{var g;k.current&&clearTimeout(k.current),(g=j.current)==null||g.abort()},[]),e?{draftId:r,isInitializingDraft:w,isInteracting:O,interactionError:c,triggerInteraction:a,commitDraft:m}:{draftId:void 0,isInitializingDraft:!1,isInteracting:!1,interactionError:null,triggerInteraction:()=>{},commitDraft:async()=>{throw new Error("Draft interaction is not enabled")}}}function W(i){const{bdo:t,recordId:n,operation:y,defaultValues:u,mode:e="onBlur",enableDraft:r,enableConstraintValidation:I,enableExpressionValidation:w}=i,s=(i.interactionMode??(r===!0?"interactive":r===!1?"non-interactive":"interactive"))==="interactive",c=y??(n?"update":"create"),o=l.useMemo(()=>A(t,{enableConstraintValidation:I}),[t,I]),{data:S,isLoading:E,isFetching:k,error:j}=$.useQuery({queryKey:["form-record",t.meta._id,n],queryFn:async()=>(await t.get(n)).toJSON(),enabled:c==="update"&&!!n,staleTime:0}),{data:_}=$.useQuery({queryKey:["form-schema",t.meta._id],queryFn:()=>Q.getBdoSchema(t.meta._id),staleTime:30*60*1e3,gcTime:60*60*1e3,enabled:w!==!1});l.useEffect(()=>{_!=null&&_.BOBlob&&t.loadMetadata(_.BOBlob)},[_,t]);const a=L.useForm({mode:e,resolver:o,defaultValues:u,values:c==="update"&&S?S:void 0}),m=t.getFields(),{draftId:g,isInitializingDraft:D,isInteracting:b,interactionError:C,triggerInteraction:d,commitDraft:q}=H({bdo:t,form:a,mode:e,fields:m,enabled:s&&c==="create"}),P=l.useMemo(()=>U(t,a),[t,a]),z=l.useCallback((R,M)=>{var x;const h=a.register(R,M);if((x=m[R])!=null&&x.readOnly)return{...h,disabled:!0};if(s&&(e==="onBlur"||e==="onTouched"||e==="all")){const V=h.onBlur;return{...h,onBlur:async B=>{await V(B),d()}}}return h},[a,m,s,e,d]);l.useEffect(()=>{if(!s||e!=="onChange"&&e!=="all")return;const R=a.watch((M,{type:h})=>{h==="change"&&d()});return()=>R.unsubscribe()},[s,e,a,d]);const K=l.useCallback((R,M)=>a.handleSubmit(async(h,x)=>{try{const V={};let B;if(s&&c==="create"){const T=a.formState.dirtyFields;for(const[v,F]of Object.entries(h))m[v]&&!m[v].readOnly&&T[v]&&(V[v]=F);B=await q(V)}else if(c==="create"){for(const[T,v]of Object.entries(h))m[T]&&!m[T].readOnly&&(V[T]=v);B=await t.create(V)}else{const T=a.formState.dirtyFields;for(const[v,F]of Object.entries(h))m[v]&&!m[v].readOnly&&T[v]&&(V[v]=F);B=await t.update(n,V)}R==null||R(B,x)}catch(V){M==null||M(V,x)}},(h,x)=>{M==null||M(h,x)}),[a,t,c,n,m,s,q]);return{item:P,bdo:t,operation:c,recordId:n,register:z,handleSubmit:K,watch:a.watch,setValue:a.setValue,getValues:a.getValues,reset:a.reset,trigger:a.trigger,control:a.control,formState:a.formState,errors:a.formState.errors,isDirty:a.formState.isDirty,isValid:a.formState.isValid,isSubmitting:a.formState.isSubmitting,isSubmitSuccessful:a.formState.isSubmitSuccessful,dirtyFields:a.formState.dirtyFields,isLoading:E||D,isFetching:k,loadError:j,draftId:g,isInitializingDraft:D,isInteracting:b,interactionError:C}}exports.FormOperation=N.FormOperation;exports.InteractionMode=N.InteractionMode;exports.ValidationMode=N.ValidationMode;exports.useForm=W;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const D=require("./constants-D0J69if5.cjs"),M=require("react"),j=require("./index.esm-DuwT11sx.cjs"),w=require("@tanstack/react-query"),B=require("./metadata-BJWukIqS.cjs");function P(s,e){const r=[];if(s.required&&(e==null||e===""))return r.push(`${s.label} is required`),{valid:!1,errors:r};if(e==null||e==="")return{valid:!0,errors:[]};if("length"in s&&typeof s.length=="number"&&typeof e=="string"&&e.length>s.length&&r.push(`${s.label} must be at most ${s.length} characters`),"integerPart"in s&&typeof e=="number"){const o=Math.floor(Math.abs(e)),c=s.integerPart??9;o.toString().length>c&&r.push(`${s.label} integer part must be at most ${c} digits`);const t=s.fractionPart;t!==void 0&&(e.toString().split(".")[1]??"").length>t&&r.push(`${s.label} can have at most ${t} decimal places`)}return r.length>0?{valid:!1,errors:r}:{valid:!0,errors:[]}}function C(s,e){return async(r,o,c)=>{var b;const t={},a=s.getFields(),y=(c==null?void 0:c.names)??Object.keys(a);for(const n of y){if(n==="_id"||(b=a[n])!=null&&b.readOnly)continue;const f=a[n];if(!f)continue;const d=r[n],u=f.validate(d);if(!u.valid&&u.errors.length>0){t[n]={type:"validate",message:u.errors[0]||`${n} is invalid`};continue}if((e==null?void 0:e.enableConstraintValidation)!==!1){const l=P(f,d);if(!l.valid&&l.errors.length>0){t[n]={type:"constraint",message:l.errors[0]};continue}}if(s.hasMetadata()){const l=s.validateFieldExpression(n,d,r);!l.valid&&l.errors.length>0&&(t[n]={type:"validate",message:l.errors[0]})}}return Object.keys(t).length===0?{values:r,errors:{}}:{values:{},errors:t}}}function J(s,e){const r=s.getFields(),o=new Map;return new Proxy({},{get(c,t){if(typeof t=="symbol")return;if(t==="_id")return e.getValues("_id");if(t==="toJSON")return()=>e.getValues();if(t==="validate")return()=>e.trigger();if(o.has(t))return o.get(t);const a=r[t],y=(a==null?void 0:a.meta)??{_id:t,Name:t,Type:"String"},b=(a==null?void 0:a.readOnly)??!1,n=()=>{if(!a)return{valid:!0,errors:[]};const u=e.getValues(t),l=a.validate(u);if(!l.valid)return l;const R=P(a,u);if(!R.valid)return R;if(s.hasMetadata()){const g=s.validateFieldExpression(t,u,e.getValues());if(!g.valid)return g}return{valid:!0,errors:[]}},f=u=>{const l=e.getValues(t);return l??u};if(!b){const u={label:(a==null?void 0:a.label)??t,required:(a==null?void 0:a.required)??!1,readOnly:!1,defaultValue:a==null?void 0:a.defaultValue,meta:y,get:()=>e.getValues(t),getOrDefault:f,set:l=>{e.setValue(t,l,{shouldDirty:!0,shouldTouch:!0,shouldValidate:!1})},validate:n};return o.set(t,u),u}const d={label:(a==null?void 0:a.label)??t,required:(a==null?void 0:a.required)??!1,readOnly:!0,defaultValue:a==null?void 0:a.defaultValue,meta:y,get:()=>e.getValues(t),getOrDefault:f,validate:n};return o.set(t,d),d},has(c,t){return typeof t=="symbol"?!1:t==="_id"||t==="toJSON"||t==="validate"?!0:t in r},ownKeys(c){return[...Object.keys(r),"_id","toJSON","validate"]},getOwnPropertyDescriptor(c,t){if(typeof t!="symbol")return{configurable:!0,enumerable:t!=="toJSON"&&t!=="validate"}}})}function F(s){const{bdo:e,recordId:r,operation:o,defaultValues:c,mode:t="onBlur",enableDraft:a=!1,enableConstraintValidation:y,enableExpressionValidation:b}=s,n=o??(r?"update":"create"),f=M.useMemo(()=>C(e,{enableConstraintValidation:y}),[e,y]),{data:d,isLoading:u,isFetching:l,error:R}=w.useQuery({queryKey:["form-record",e.meta._id,r],queryFn:async()=>(await e.get(r)).toJSON(),enabled:n==="update"&&!!r,staleTime:0}),{data:g}=w.useQuery({queryKey:["form-schema",e.meta._id],queryFn:()=>B.getBdoSchema(e.meta._id),staleTime:30*60*1e3,gcTime:60*60*1e3,enabled:b!==!1});M.useEffect(()=>{g!=null&&g.BDOBlob&&e.loadMetadata(g.BDOBlob)},[g,e]);const i=j.useForm({mode:t,resolver:f,defaultValues:c,values:n==="update"&&d?d:void 0}),$=M.useMemo(()=>J(e,i),[e,i]),h=e.getFields(),k=M.useCallback((v,m)=>{var V;const S=i.register(v,m);return(V=h[v])!=null&&V.readOnly?{...S,disabled:!0}:S},[i,h]),N=M.useCallback((v,m)=>i.handleSubmit(async(S,V)=>{try{const O={};if(n==="create")for(const[q,_]of Object.entries(S))h[q]&&!h[q].readOnly&&(O[q]=_);else{const q=i.formState.dirtyFields;for(const[_,T]of Object.entries(S))h[_]&&!h[_].readOnly&&q[_]&&(O[_]=T)}let x;n==="create"?x=await e.create(O):x=await e.update(r,O),v==null||v(x,V)}catch(O){m==null||m(O,V)}},(S,V)=>{m==null||m(S,V)}),[i,e,n,r,h]);return{item:$,bdo:e,operation:n,recordId:r,register:k,handleSubmit:N,watch:i.watch,setValue:i.setValue,getValues:i.getValues,reset:i.reset,trigger:i.trigger,control:i.control,formState:i.formState,errors:i.formState.errors,isDirty:i.formState.isDirty,isValid:i.formState.isValid,isSubmitting:i.formState.isSubmitting,isSubmitSuccessful:i.formState.isSubmitSuccessful,dirtyFields:i.formState.dirtyFields,isLoading:u,isFetching:l,loadError:R}}exports.FormOperation=D.FormOperation;exports.InteractionMode=D.InteractionMode;exports.ValidationMode=D.ValidationMode;exports.useForm=F;