@servicetitan/dte-pdf-editor 1.87.0 → 1.88.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/README.md +37 -30
  2. package/dist/components/display-conditions/condition-row.d.ts.map +1 -1
  3. package/dist/components/display-conditions/condition-row.js +51 -22
  4. package/dist/components/display-conditions/condition-row.js.map +1 -1
  5. package/dist/components/display-conditions/condition-value-control.d.ts.map +1 -1
  6. package/dist/components/display-conditions/condition-value-control.js +1 -2
  7. package/dist/components/display-conditions/condition-value-control.js.map +1 -1
  8. package/dist/components/display-conditions/display-condition-modal.d.ts.map +1 -1
  9. package/dist/components/display-conditions/display-condition-modal.js +6 -49
  10. package/dist/components/display-conditions/display-condition-modal.js.map +1 -1
  11. package/dist/components/field-config-panel/e-sign-date-rules-summary.d.ts +11 -0
  12. package/dist/components/field-config-panel/e-sign-date-rules-summary.d.ts.map +1 -0
  13. package/dist/components/field-config-panel/e-sign-date-rules-summary.js +36 -0
  14. package/dist/components/field-config-panel/e-sign-date-rules-summary.js.map +1 -0
  15. package/dist/components/field-config-panel/e-sign-date-signed-offset-modal.d.ts +16 -0
  16. package/dist/components/field-config-panel/e-sign-date-signed-offset-modal.d.ts.map +1 -0
  17. package/dist/components/field-config-panel/e-sign-date-signed-offset-modal.js +62 -0
  18. package/dist/components/field-config-panel/e-sign-date-signed-offset-modal.js.map +1 -0
  19. package/dist/components/field-config-panel/e-sign-offset-rule-row.d.ts +16 -0
  20. package/dist/components/field-config-panel/e-sign-offset-rule-row.d.ts.map +1 -0
  21. package/dist/components/field-config-panel/e-sign-offset-rule-row.js +25 -0
  22. package/dist/components/field-config-panel/e-sign-offset-rule-row.js.map +1 -0
  23. package/dist/components/field-config-panel/e-sign-options-modal.d.ts +15 -0
  24. package/dist/components/field-config-panel/e-sign-options-modal.d.ts.map +1 -0
  25. package/dist/components/field-config-panel/e-sign-options-modal.js +26 -0
  26. package/dist/components/field-config-panel/e-sign-options-modal.js.map +1 -0
  27. package/dist/components/field-config-panel/field-config-panel.d.ts.map +1 -1
  28. package/dist/components/field-config-panel/field-config-panel.js +30 -28
  29. package/dist/components/field-config-panel/field-config-panel.js.map +1 -1
  30. package/dist/components/field-sidebar/e-sign-field-type-list.d.ts.map +1 -1
  31. package/dist/components/field-sidebar/e-sign-field-type-list.js +1 -6
  32. package/dist/components/field-sidebar/e-sign-field-type-list.js.map +1 -1
  33. package/dist/constants/field.constants.d.ts +1 -5
  34. package/dist/constants/field.constants.d.ts.map +1 -1
  35. package/dist/constants/field.constants.js +21 -7
  36. package/dist/constants/field.constants.js.map +1 -1
  37. package/dist/hooks/usePdfFieldDnD.d.ts.map +1 -1
  38. package/dist/hooks/usePdfFieldDnD.js +13 -5
  39. package/dist/hooks/usePdfFieldDnD.js.map +1 -1
  40. package/dist/interface/types.d.ts +26 -1
  41. package/dist/interface/types.d.ts.map +1 -1
  42. package/dist/interface/types.js +1 -0
  43. package/dist/interface/types.js.map +1 -1
  44. package/dist/styles/field-config-panel.css +11 -0
  45. package/dist/styles/field-type.css +12 -0
  46. package/dist/styles/index.css +1 -0
  47. package/dist/styles/variables.css +2 -0
  48. package/dist/utils/conditions/condition-match-type.utils.d.ts +14 -0
  49. package/dist/utils/conditions/condition-match-type.utils.d.ts.map +1 -0
  50. package/dist/utils/conditions/condition-match-type.utils.js +50 -0
  51. package/dist/utils/conditions/condition-match-type.utils.js.map +1 -0
  52. package/dist/utils/conditions/e-sign-offset-rules.utils.d.ts +12 -0
  53. package/dist/utils/conditions/e-sign-offset-rules.utils.d.ts.map +1 -0
  54. package/dist/utils/conditions/e-sign-offset-rules.utils.js +19 -0
  55. package/dist/utils/conditions/e-sign-offset-rules.utils.js.map +1 -0
  56. package/dist/utils/conditions/index.d.ts +2 -0
  57. package/dist/utils/conditions/index.d.ts.map +1 -1
  58. package/dist/utils/conditions/index.js +2 -0
  59. package/dist/utils/conditions/index.js.map +1 -1
  60. package/package.json +1 -1
  61. package/src/components/display-conditions/condition-row.tsx +114 -131
  62. package/src/components/display-conditions/condition-value-control.tsx +1 -2
  63. package/src/components/display-conditions/display-condition-modal.tsx +13 -63
  64. package/src/components/field-config-panel/e-sign-date-rules-summary.tsx +114 -0
  65. package/src/components/field-config-panel/e-sign-date-signed-offset-modal.tsx +197 -0
  66. package/src/components/field-config-panel/e-sign-offset-rule-row.tsx +91 -0
  67. package/src/components/field-config-panel/e-sign-options-modal.tsx +112 -0
  68. package/src/components/field-config-panel/field-config-panel.tsx +70 -91
  69. package/src/components/field-sidebar/e-sign-field-type-list.tsx +11 -14
  70. package/src/constants/field.constants.ts +21 -8
  71. package/src/hooks/usePdfFieldDnD.ts +17 -2
  72. package/src/interface/types.ts +34 -1
  73. package/src/styles/field-config-panel.css +11 -0
  74. package/src/styles/field-type.css +12 -0
  75. package/src/styles/index.css +1 -0
  76. package/src/styles/variables.css +2 -0
  77. package/src/utils/conditions/__tests__/condition-match-type.utils.test.ts +104 -0
  78. package/src/utils/conditions/__tests__/e-sign-offset-rules.utils.test.ts +51 -0
  79. package/src/utils/conditions/condition-match-type.utils.ts +80 -0
  80. package/src/utils/conditions/e-sign-offset-rules.utils.ts +32 -0
  81. package/src/utils/conditions/index.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/interface/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/interface/types.ts"],"names":[],"mappings":"AAAA,oBAAY,aAAa;IACrB,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,UAAU,eAAe;IACzB,OAAO,YAAY;CACtB;AAED,oBAAY,cAAc;IACtB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,UAAU,eAAe;IACzB,gBAAgB,qBAAqB;IACrC,QAAQ,aAAa;CACxB;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;AAElF,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,MAAM,CAAC;AAChD,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvD,MAAM,WAAW,mBAAmB;IAChC,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,aAAa;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,aAAa,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,cAAc,GAAG,gBAAgB,GAAG,aAAa,CAAC;AAEpG,MAAM,WAAW,yBAAyB;IACtC,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE;QACJ,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE;YACH,KAAK,EAAE,MAAM,CAAC;SACjB,EAAE,CAAC;KACP,CAAC;IACF,IAAI,EAAE;QACF,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE;YACH,KAAK,EAAE,MAAM,CAAC;SACjB,EAAE,CAAC;KACP,EAAE,CAAC;CACP;AAED,MAAM,WAAW,wBAAwB;IACrC,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iCAAiC;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,qBAAqB,CAAC;CACpC;AAED,MAAM,WAAW,sCAAsC;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,KAAK,CAAC;CACrB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,6BAA6B;IAC1C,KAAK,EACC,CAAC,sCAAsC,CAAC,GACxC,CAAC,GAAG,iCAAiC,EAAE,EAAE,sCAAsC,CAAC,CAAC;CAC1F;AAED,MAAM,MAAM,aAAa,GACnB,yBAAyB,GACzB,wBAAwB,GACxB,6BAA6B,CAAC;AAEpC,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,MAAM,EAAE,qBAAqB,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,qBAAqB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,sBAAsB,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,sBAAsB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAC/B,YAAY,CAAC,EAAE,wBAAwB,CAAC;CAC3C;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,QAAQ;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,wBAAwB,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,aAAa,CAAC,EAAE,qBAAqB,CAAC;IACtC,gBAAgB,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAChD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,cAAc,CAAC;CAC3B;AAED,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEhD,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,YAAY,CAAC,EAAE,wBAAwB,CAAC;IACxC,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,kCAAkC;AAClC,eAAO,MAAM,iBAAiB,UAAuB,CAAC;AACtD,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,aAAa,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,yFAAyF;AACzF,MAAM,MAAM,YAAY,GAClB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,eAAe,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IACI,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,eAAe,CAAC;IAC3B,YAAY,CAAC,EAAE,wBAAwB,CAAC;CAC3C,CAAC;AAER,8FAA8F;AAC9F,MAAM,WAAW,iBAAiB;IAC9B,MAAM,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED,8FAA8F;AAC9F,MAAM,WAAW,yBAAyB;IACtC,UAAU,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAC9C,kBAAkB,EAAE,OAAO,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;IACzC,uBAAuB,EAAE,OAAO,CAAC;IACjC,gBAAgB,EAAE,GAAG,GAAG,GAAG,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,+DAA+D;AAC/D,MAAM,WAAW,uBAAuB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,0EAA0E;AAC1E,MAAM,MAAM,qBAAqB,GAAG,uBAAuB,GAAG,yBAAyB,CAAC;AAExF,MAAM,WAAW,sBAAsB;IACnC,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,UAAU,eAAe;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,sBAAsB,CAAC;CACpC;AAED,MAAM,WAAW,YAAa,SAAQ,eAAe;IACjD,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CAC1C;AAED,MAAM,MAAM,UAAU,GAAG,YAAY,GAAG,WAAW,GAAG,YAAY,CAAC;AAEnE,MAAM,WAAW,WAAY,SAAQ,eAAe;IAChD,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,UAAU,CAAC;CACrB;AACD,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE5E,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACvD,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,CAAC,EAAE,wBAAwB,CAAC;CACtC;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACvD,IAAI,EAAE,QAAQ,CAAC;CAClB;AAED,MAAM,WAAW,gBAAiB,SAAQ,eAAe;IACrD,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,YAAY,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,gBAAgB,CAAC;AAEtF,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAElD,MAAM,WAAW,aAAa;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACvC;AAED,MAAM,WAAW,iBAAiB;IAC9B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CACvC;AAgBD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC;AAE7C;;GAEG;AAEH,wCAAwC;AACxC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;EASnB,CAAC;AAEX,wCAAwC;AACxC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;EAOnB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GACvB,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAC1C,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;AAEjD,iDAAiD;AACjD,eAAO,MAAM,eAAe;;;;;;EAGlB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;EAGrB,CAAC;AAEX,6EAA6E;AAC7E,eAAO,MAAM,wBAAwB,SAAS,CAAC;AAE/C,iEAAiE;AACjE,eAAO,MAAM,oBAAoB,EAAE,iBAAiB,EAAiC,CAAC;AAEtF,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC5B,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,wBAAwB,CAAC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB"}
@@ -12,6 +12,7 @@ export var ESignFieldType;
12
12
  ESignFieldType["signature"] = "signature";
13
13
  ESignFieldType["initials"] = "initials";
14
14
  ESignFieldType["dateSigned"] = "dateSigned";
15
+ ESignFieldType["dateSignedOffset"] = "dateSignedOffset";
15
16
  ESignFieldType["fullName"] = "fullName";
16
17
  })(ESignFieldType || (ESignFieldType = {}));
17
18
  /** Supported formula operators */
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/interface/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACrB,wCAAuB,CAAA;IACvB,gCAAe,CAAA;IACf,gCAAe,CAAA;IACf,sCAAqB,CAAA;IACrB,0CAAyB,CAAA;IACzB,oCAAmB,CAAA;AACvB,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB;AAED,MAAM,CAAN,IAAY,cAKX;AALD,WAAY,cAAc;IACtB,yCAAuB,CAAA;IACvB,uCAAqB,CAAA;IACrB,2CAAyB,CAAA;IACzB,uCAAqB,CAAA;AACzB,CAAC,EALW,cAAc,KAAd,cAAc,QAKzB;AA8HD,kCAAkC;AAClC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAmItD;;GAEG;AAEH,wCAAwC;AACxC,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;IACxC,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,kBAAkB,EAAE;IACxD,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;IAC9C,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE;IACtD,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;IAC9C,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE;IAC1C,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;IACxC,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE;CAC1C,CAAC;AAEX,wCAAwC;AACxC,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC3C,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,SAAS,EAAE;IAChD,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC9C,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC3C,EAAE,KAAK,EAAE,+BAA+B,EAAE,KAAK,EAAE,SAAS,EAAE;IAC5D,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,SAAS,EAAE;CACnD,CAAC;AAMX,iDAAiD;AACjD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC3B,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;IAC9C,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE;CAChD,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAC9B,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE;IAC1C,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,iBAAiB,EAAE;CAC1C,CAAC;AAEX,6EAA6E;AAC7E,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAE/C,iEAAiE;AACjE,MAAM,CAAC,MAAM,oBAAoB,GAAwB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/interface/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACrB,wCAAuB,CAAA;IACvB,gCAAe,CAAA;IACf,gCAAe,CAAA;IACf,sCAAqB,CAAA;IACrB,0CAAyB,CAAA;IACzB,oCAAmB,CAAA;AACvB,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB;AAED,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACtB,yCAAuB,CAAA;IACvB,uCAAqB,CAAA;IACrB,2CAAyB,CAAA;IACzB,uDAAqC,CAAA;IACrC,uCAAqB,CAAA;AACzB,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB;AA8JD,kCAAkC;AAClC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAmItD;;GAEG;AAEH,wCAAwC;AACxC,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;IACxC,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,kBAAkB,EAAE;IACxD,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;IAC9C,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE;IACtD,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;IAC9C,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE;IAC1C,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;IACxC,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE;CAC1C,CAAC;AAEX,wCAAwC;AACxC,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC3C,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,SAAS,EAAE;IAChD,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC9C,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,QAAQ,EAAE;IAC3C,EAAE,KAAK,EAAE,+BAA+B,EAAE,KAAK,EAAE,SAAS,EAAE;IAC5D,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,SAAS,EAAE;CACnD,CAAC;AAMX,iDAAiD;AACjD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC3B,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;IAC9C,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE;CAChD,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAC9B,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE;IAC1C,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,iBAAiB,EAAE;CAC1C,CAAC;AAEX,6EAA6E;AAC7E,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAE/C,iEAAiE;AACjE,MAAM,CAAC,MAAM,oBAAoB,GAAwB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ .dte-rule-card {
2
+ padding: 12px;
3
+ background: var(--color-neutral-30, #f7f7f7);
4
+ border: 1px solid var(--border-color);
5
+ border-radius: var(--radius-2);
6
+
7
+ &.--active {
8
+ border-color: var(--border-color-active, #2270ee);
9
+ background: var(--bg-color-secondary-active, #fafcff);
10
+ }
11
+ }
@@ -15,3 +15,15 @@
15
15
  .dte-field-type-item:hover {
16
16
  box-shadow: 0 0 2px 0 var(--border-color-active);
17
17
  }
18
+
19
+ .dte-field-type-items-wrapper {
20
+ &.--grid-2 {
21
+ display: grid;
22
+ grid-template-columns: 1fr 1fr;
23
+ gap: var(--spacing-1, 8px);
24
+
25
+ .dte-field-type-item {
26
+ margin-top: var(--spacing-0, 0);
27
+ }
28
+ }
29
+ }
@@ -10,3 +10,4 @@
10
10
  @import './field-type.css';
11
11
  @import './pdf-document-renderer.css';
12
12
  @import './inline-editable.css';
13
+ @import './field-config-panel.css';
@@ -28,11 +28,13 @@
28
28
  --color-neutral-70: var(--color-neutral-70, #737475);
29
29
  --color-neutral-200: var(--color-neutral-200, #6c6d70);
30
30
  --color-neutral-300: var(--color-neutral-300, #2d2e31);
31
+ --color-blue-100: var(--color-blue-100, #fafcff);
31
32
 
32
33
  /* Background colors */
33
34
  --bg-color-light: var(--color-neutral-0, #ffffff);
34
35
  --bg-color-main: var(--color-neutral-20, #fafafa);
35
36
  --bg-color-secondary: var(--color-neutral-50, #eeeeee);
37
+ --bg-color-secondary-active: var(--color-blue-100, #fafcff);
36
38
  --bg-color: var(--color-neutral-200, #f5f5f5);
37
39
  --bg-color-hover: #eaeaea;
38
40
 
@@ -0,0 +1,14 @@
1
+ import type { DataPointOption, DisplayConditionGroup, DisplayConditionState, FormFieldsByFormIdI } from '../../interface/types';
2
+ export type ConditionMatchType = 'and' | 'or';
3
+ /** Derives All/Any (and/or) toggle value from the operators already stored on a condition state. */
4
+ export declare const deriveConditionMatchType: (conditionState: DisplayConditionState) => ConditionMatchType;
5
+ /** Stamps the given All/Any (and/or) value onto every group/condition after the first in each. */
6
+ export declare const applyConditionMatchType: (conditionState: DisplayConditionState, matchType: ConditionMatchType) => DisplayConditionState;
7
+ export interface ConditionValidationDeps {
8
+ mergeTagOptions: DataPointOption[];
9
+ fillableOptions: DataPointOption[];
10
+ formFieldsByFormId?: FormFieldsByFormIdI;
11
+ }
12
+ /** True when every condition in every group has a data point and a usable value for its type. */
13
+ export declare const isValidConditionGroups: (groups: DisplayConditionGroup[], { fillableOptions, formFieldsByFormId, mergeTagOptions }: ConditionValidationDeps) => boolean;
14
+ //# sourceMappingURL=condition-match-type.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"condition-match-type.utils.d.ts","sourceRoot":"","sources":["../../../src/utils/conditions/condition-match-type.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACtB,MAAM,uBAAuB,CAAC;AAI/B,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,IAAI,CAAC;AAE9C,oGAAoG;AACpG,eAAO,MAAM,wBAAwB,GACjC,gBAAgB,qBAAqB,KACtC,kBAaF,CAAC;AAEF,kGAAkG;AAClG,eAAO,MAAM,uBAAuB,GAChC,gBAAgB,qBAAqB,EACrC,WAAW,kBAAkB,KAC9B,qBASD,CAAC;AAEH,MAAM,WAAW,uBAAuB;IACpC,eAAe,EAAE,eAAe,EAAE,CAAC;IACnC,eAAe,EAAE,eAAe,EAAE,CAAC;IACnC,kBAAkB,CAAC,EAAE,mBAAmB,CAAC;CAC5C;AAED,iGAAiG;AACjG,eAAO,MAAM,sBAAsB,GAC/B,QAAQ,qBAAqB,EAAE,EAC/B,0DAA0D,uBAAuB,KAClF,OAyBF,CAAC"}
@@ -0,0 +1,50 @@
1
+ import { getDisplayConditionFieldTypeForKey } from '../formula';
2
+ import { isValidNumber } from '../shared';
3
+ /** Derives All/Any (and/or) toggle value from the operators already stored on a condition state. */
4
+ export const deriveConditionMatchType = (conditionState) => {
5
+ var _a;
6
+ for (let g = 0; g < conditionState.groups.length; g++) {
7
+ const group = conditionState.groups[g];
8
+ if (g > 0 && group.logicalOperator === 'or') {
9
+ return 'or';
10
+ }
11
+ for (let i = 1; i < group.conditions.length; i++) {
12
+ if (((_a = group.conditions[i]) === null || _a === void 0 ? void 0 : _a.logicalOperator) === 'or') {
13
+ return 'or';
14
+ }
15
+ }
16
+ }
17
+ return 'and';
18
+ };
19
+ /** Stamps the given All/Any (and/or) value onto every group/condition after the first in each. */
20
+ export const applyConditionMatchType = (conditionState, matchType) => ({
21
+ ...conditionState,
22
+ groups: conditionState.groups.map((group, groupIndex) => ({
23
+ ...group,
24
+ ...(groupIndex > 0 ? { logicalOperator: matchType } : {}),
25
+ conditions: group.conditions.map((c, i) => i === 0 ? { ...c, logicalOperator: undefined } : { ...c, logicalOperator: matchType }),
26
+ })),
27
+ });
28
+ /** True when every condition in every group has a data point and a usable value for its type. */
29
+ export const isValidConditionGroups = (groups, { fillableOptions, formFieldsByFormId, mergeTagOptions }) => {
30
+ for (const group of groups) {
31
+ for (const condition of group.conditions) {
32
+ if (!condition.dataPointKey) {
33
+ return false;
34
+ }
35
+ if (condition.operator === 'is_empty' || condition.operator === 'is_not_empty') {
36
+ continue;
37
+ }
38
+ const trimmedValue = condition.value.trim();
39
+ if (!trimmedValue) {
40
+ return false;
41
+ }
42
+ const fieldType = getDisplayConditionFieldTypeForKey(condition.dataPointKey, mergeTagOptions, fillableOptions, formFieldsByFormId !== null && formFieldsByFormId !== void 0 ? formFieldsByFormId : {});
43
+ if (fieldType === 'number' && !isValidNumber(trimmedValue)) {
44
+ return false;
45
+ }
46
+ }
47
+ }
48
+ return groups.length > 0;
49
+ };
50
+ //# sourceMappingURL=condition-match-type.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"condition-match-type.utils.js","sourceRoot":"","sources":["../../../src/utils/conditions/condition-match-type.utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { ESignDateSignedOffsetSettingsRule } from '../../interface/types';
2
+ /**
3
+ * Product limit: rules (the conditioned rules managed here, plus the trailing else row that
4
+ * lives outside this array) may not exceed this total.
5
+ */
6
+ export declare const MAX_ESIGN_OFFSET_RULES = 5;
7
+ export declare const createESignOffsetRule: () => ESignDateSignedOffsetSettingsRule;
8
+ export declare const canAddESignOffsetRule: (rules: ESignDateSignedOffsetSettingsRule[]) => boolean;
9
+ /** Appends a new rule. No-op past the max. */
10
+ export declare const addESignOffsetRule: (rules: ESignDateSignedOffsetSettingsRule[]) => ESignDateSignedOffsetSettingsRule[];
11
+ export declare const updateESignOffsetRule: (rules: ESignDateSignedOffsetSettingsRule[], index: number, rule: ESignDateSignedOffsetSettingsRule) => ESignDateSignedOffsetSettingsRule[];
12
+ //# sourceMappingURL=e-sign-offset-rules.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e-sign-offset-rules.utils.d.ts","sourceRoot":"","sources":["../../../src/utils/conditions/e-sign-offset-rules.utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAC;AAE/E;;;GAGG;AACH,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC,eAAO,MAAM,qBAAqB,QAAO,iCAGvC,CAAC;AAEH,eAAO,MAAM,qBAAqB,GAAI,OAAO,iCAAiC,EAAE,KAAG,OACtC,CAAC;AAE9C,8CAA8C;AAC9C,eAAO,MAAM,kBAAkB,GAC3B,OAAO,iCAAiC,EAAE,KAC3C,iCAAiC,EAC0C,CAAC;AAE/E,eAAO,MAAM,qBAAqB,GAC9B,OAAO,iCAAiC,EAAE,EAC1C,OAAO,MAAM,EACb,MAAM,iCAAiC,KACxC,iCAAiC,EAInC,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { defaultGroup } from '../../constants';
2
+ /**
3
+ * Product limit: rules (the conditioned rules managed here, plus the trailing else row that
4
+ * lives outside this array) may not exceed this total.
5
+ */
6
+ export const MAX_ESIGN_OFFSET_RULES = 5;
7
+ export const createESignOffsetRule = () => ({
8
+ days: 0,
9
+ condition: { behavior: 'show', groups: [defaultGroup()] },
10
+ });
11
+ export const canAddESignOffsetRule = (rules) => rules.length < MAX_ESIGN_OFFSET_RULES - 1;
12
+ /** Appends a new rule. No-op past the max. */
13
+ export const addESignOffsetRule = (rules) => canAddESignOffsetRule(rules) ? [...rules, createESignOffsetRule()] : rules;
14
+ export const updateESignOffsetRule = (rules, index, rule) => {
15
+ const next = [...rules];
16
+ next[index] = rule;
17
+ return next;
18
+ };
19
+ //# sourceMappingURL=e-sign-offset-rules.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e-sign-offset-rules.utils.js","sourceRoot":"","sources":["../../../src/utils/conditions/e-sign-offset-rules.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AAExC,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAsC,EAAE,CAAC,CAAC;IAC3E,IAAI,EAAE,CAAC;IACP,SAAS,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE,CAAC,EAAE;CAC5D,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAA0C,EAAW,EAAE,CACzF,KAAK,CAAC,MAAM,GAAG,sBAAsB,GAAG,CAAC,CAAC;AAE9C,8CAA8C;AAC9C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAC9B,KAA0C,EACP,EAAE,CACrC,qBAAqB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAE/E,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACjC,KAA0C,EAC1C,KAAa,EACb,IAAuC,EACJ,EAAE;IACrC,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACxB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IACnB,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC"}
@@ -1,3 +1,5 @@
1
+ export * from './condition-match-type.utils';
2
+ export * from './e-sign-offset-rules.utils';
1
3
  export * from './evaluate.utils';
2
4
  export * from './schema-data-points.utils';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/conditions/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/conditions/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC"}
@@ -1,3 +1,5 @@
1
+ export * from './condition-match-type.utils';
2
+ export * from './e-sign-offset-rules.utils';
1
3
  export * from './evaluate.utils';
2
4
  export * from './schema-data-points.utils';
3
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/conditions/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/conditions/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@servicetitan/dte-pdf-editor",
3
- "version": "1.87.0",
3
+ "version": "1.88.0",
4
4
  "description": "",
5
5
  "main": "./dist/index.js",
6
6
  "typings": "./dist/index.d.ts",
@@ -1,4 +1,4 @@
1
- import { Button, Chip, Combobox, Flex, Text } from '@servicetitan/anvil2';
1
+ import { Button, Chip, Flex, SelectFieldSync, Text } from '@servicetitan/anvil2';
2
2
  import TrashIcon from '@servicetitan/anvil2/assets/icons/material/round/delete.svg';
3
3
  import { useEffect, useMemo, useState } from 'react';
4
4
  import {
@@ -220,6 +220,68 @@ export function ConditionRow({
220
220
  [operatorItems, condition.operator],
221
221
  );
222
222
 
223
+ const sourceKindSelectOptions = useMemo(
224
+ () => sourceKindOptions.map(option => ({ id: option.value, label: option.label })),
225
+ [sourceKindOptions],
226
+ );
227
+
228
+ const selectedSourceKindSelectOption = selectedSourceKindOption
229
+ ? { id: selectedSourceKindOption.value, label: selectedSourceKindOption.label }
230
+ : null;
231
+
232
+ const handleSourceKindSelect = (option: { id: string; label: string } | null) => {
233
+ handleSourceKindChange(sourceKindOptions.find(o => o.value === option?.id) ?? null);
234
+ };
235
+
236
+ const formSelectOptions = useMemo(
237
+ () => sortedForms.map(form => ({ id: form.id, label: form.name })),
238
+ [sortedForms],
239
+ );
240
+
241
+ const selectedFormSelectOption = pickerForm
242
+ ? { id: pickerForm.id, label: pickerForm.name }
243
+ : null;
244
+
245
+ const handleFormSelect = (option: { id: number; label: string }) => {
246
+ handlePickerFormChange(sortedForms.find(f => f.id === option?.id) ?? null);
247
+ };
248
+
249
+ const dataPointSelectOptions = useMemo(
250
+ () => dataPointItems.map(item => ({ id: item.fullKey, label: item.title })),
251
+ [dataPointItems],
252
+ );
253
+
254
+ const selectedDataPointSelectOption = selectedDataPoint
255
+ ? { id: selectedDataPoint.fullKey, label: selectedDataPoint.title }
256
+ : null;
257
+
258
+ const handleDataPointSelect = (option: { id: string; label: string }) => {
259
+ handleDataPointChange(dataPointItems.find(item => item.fullKey === option?.id) ?? null);
260
+ };
261
+
262
+ const operatorSelectOptions = useMemo(
263
+ () => operatorItems.map(op => ({ id: op.value, label: op.label })),
264
+ [operatorItems],
265
+ );
266
+
267
+ const selectedOperatorSelectOption = selectedOperator
268
+ ? { id: selectedOperator.value, label: selectedOperator.label }
269
+ : null;
270
+
271
+ const handleOperatorSelect = (option: { id: string; label: string } | null) => {
272
+ const nextOperator = (option?.id ?? 'is_equal_to') as DisplayConditionSingle['operator'];
273
+ onChange({
274
+ ...condition,
275
+ operator: nextOperator,
276
+ ...(isCheckbox
277
+ ? {
278
+ value: CHECKBOX_CONDITION_VALUE,
279
+ valueLabel: undefined,
280
+ }
281
+ : {}),
282
+ });
283
+ };
284
+
223
285
  const isValueLess =
224
286
  isCheckbox || VALUE_LESS_OPERATORS.includes(condition.operator as ConditionOperator);
225
287
 
@@ -336,51 +398,27 @@ export function ConditionRow({
336
398
  return (
337
399
  <Flex direction="column" gap="4" flex={1}>
338
400
  <Flex flex={1} gap="2">
339
- <Combobox
401
+ <SelectFieldSync
340
402
  flex={1}
341
- itemToKey={(item: SourceKindOption | null) => item?.value ?? ''}
342
- itemToString={(item: SourceKindOption | null) => item?.label ?? ''}
343
- items={sourceKindOptions}
344
- selectedItem={selectedSourceKindOption}
345
- onChange={handleSourceKindChange}
346
- filterOptions={{ keys: ['label'] }}
347
- >
348
- <Combobox.SelectTrigger label="Source" placeholder="Select source..." />
349
- <Combobox.Content>
350
- {({ items }: { items: SourceKindOption[] }) => (
351
- <Combobox.List>
352
- {items.map((item, i) => (
353
- <Combobox.Item index={i} item={item} key={item.value}>
354
- {item.label}
355
- </Combobox.Item>
356
- ))}
357
- </Combobox.List>
358
- )}
359
- </Combobox.Content>
360
- </Combobox>
403
+ disableSearch
404
+ disableClearButton
405
+ label="Source"
406
+ placeholder="Select source..."
407
+ options={sourceKindSelectOptions}
408
+ value={selectedSourceKindSelectOption}
409
+ onSelectedOptionChange={handleSourceKindSelect}
410
+ />
361
411
  {sourceKind === FieldTypeEnum.forms && (
362
- <Combobox
412
+ <SelectFieldSync
363
413
  flex={1}
364
- itemToKey={(item: FormInfo | null) => String(item?.id ?? '')}
365
- itemToString={(item: FormInfo | null) => item?.name ?? ''}
366
- items={sortedForms}
367
- selectedItem={pickerForm}
368
- onChange={handlePickerFormChange}
369
- filterOptions={{ keys: ['name'] }}
370
- >
371
- <Combobox.SelectTrigger label="Select Form" placeholder="Select form..." />
372
- <Combobox.Content>
373
- {({ items }: { items: FormInfo[] }) => (
374
- <Combobox.List>
375
- {items.map((item, i) => (
376
- <Combobox.Item index={i} item={item} key={item.id}>
377
- {item.name}
378
- </Combobox.Item>
379
- ))}
380
- </Combobox.List>
381
- )}
382
- </Combobox.Content>
383
- </Combobox>
414
+ disableSearch
415
+ disableClearButton
416
+ label="Select Form"
417
+ placeholder="Select form..."
418
+ options={formSelectOptions}
419
+ value={selectedFormSelectOption}
420
+ onSelectedOptionChange={handleFormSelect}
421
+ />
384
422
  )}
385
423
  </Flex>
386
424
 
@@ -401,113 +439,58 @@ export function ConditionRow({
401
439
  </Flex>
402
440
 
403
441
  <Flex flex={1} style={{ minWidth: 160 }}>
404
- <Combobox
442
+ <SelectFieldSync
405
443
  flex={1}
444
+ disableSearch
445
+ disableClearButton
406
446
  disabled={
407
447
  sourceKind === FieldTypeEnum.forms &&
408
448
  (!pickerForm || isLoadingFormFields)
409
449
  }
410
- itemToKey={(item: DataPointOption | null) => item?.fullKey ?? ''}
411
- itemToString={(item: DataPointOption | null) => item?.title ?? ''}
412
- items={dataPointItems}
413
- selectedItem={selectedDataPoint}
414
- onChange={handleDataPointChange}
415
- filterOptions={{ keys: ['title'] }}
416
- >
417
- <Combobox.SelectTrigger
418
- label="Data point"
419
- placeholder={
420
- sourceKind === FieldTypeEnum.forms && isLoadingFormFields
421
- ? 'Loading fields...'
422
- : sourceKind === FieldTypeEnum.forms && !pickerForm
423
- ? 'Select a form first...'
424
- : 'Select data point...'
425
- }
426
- />
427
- <Combobox.Content>
428
- {({ items }: { items: DataPointOption[] }) => (
429
- <Combobox.List>
430
- {items.map((item, i) => (
431
- <Combobox.Item index={i} item={item} key={item.fullKey}>
432
- {item.title}
433
- </Combobox.Item>
434
- ))}
435
- </Combobox.List>
436
- )}
437
- </Combobox.Content>
438
- </Combobox>
450
+ label="Data point"
451
+ placeholder={
452
+ sourceKind === FieldTypeEnum.forms && isLoadingFormFields
453
+ ? 'Loading fields...'
454
+ : sourceKind === FieldTypeEnum.forms && !pickerForm
455
+ ? 'Select a form first...'
456
+ : 'Select data point...'
457
+ }
458
+ options={dataPointSelectOptions}
459
+ value={selectedDataPointSelectOption}
460
+ onSelectedOptionChange={handleDataPointSelect}
461
+ />
439
462
  </Flex>
440
463
  <Flex flex={1} style={{ minWidth: 160 }}>
441
- <Combobox
464
+ <SelectFieldSync
442
465
  flex={1}
443
- itemToKey={(item: OperatorOption | null) => item?.value ?? ''}
444
- itemToString={(item: OperatorOption | null) => item?.label ?? ''}
445
- items={operatorItems}
446
- selectedItem={selectedOperator}
447
- onChange={(item: OperatorOption | null) => {
448
- const nextOperator = (item?.value ??
449
- 'is_equal_to') as DisplayConditionSingle['operator'];
450
- onChange({
451
- ...condition,
452
- operator: nextOperator,
453
- ...(isCheckbox
454
- ? {
455
- value: CHECKBOX_CONDITION_VALUE,
456
- valueLabel: undefined,
457
- }
458
- : {}),
459
- });
460
- }}
461
- filterOptions={{ keys: ['label'] }}
462
- >
463
- <Combobox.SelectTrigger label="Condition" placeholder="Select..." />
464
- <Combobox.Content>
465
- {({ items }: { items: OperatorOption[] }) => (
466
- <Combobox.List>
467
- {items.map((item, i) => (
468
- <Combobox.Item index={i} item={item} key={item.value}>
469
- {item.label}
470
- </Combobox.Item>
471
- ))}
472
- </Combobox.List>
473
- )}
474
- </Combobox.Content>
475
- </Combobox>
466
+ disableSearch
467
+ disableClearButton
468
+ label="Condition"
469
+ placeholder="Select..."
470
+ options={operatorSelectOptions}
471
+ value={selectedOperatorSelectOption}
472
+ onSelectedOptionChange={handleOperatorSelect}
473
+ />
476
474
  </Flex>
477
475
  {!isValueLess && (
478
476
  <Flex flex={1} style={{ minWidth: 160 }}>
479
477
  {isRadioGroup ? (
480
- <Combobox
478
+ <SelectFieldSync
481
479
  flex={1}
482
- itemToKey={item => item?.id ?? ''}
483
- itemToString={item => item?.label ?? ''}
484
- items={radioValueOptions}
485
- selectedItem={selectedRadioValue}
486
- onChange={(item: RadioGroupOption | null) =>
480
+ disableSearch
481
+ label="Value"
482
+ disableClearButton
483
+ placeholder="Select radio option..."
484
+ options={radioValueOptions}
485
+ value={selectedRadioValue}
486
+ onSelectedOptionChange={(item: RadioGroupOption | null) =>
487
487
  onChange({
488
488
  ...condition,
489
489
  value: item?.id ?? '',
490
490
  valueLabel: undefined,
491
491
  })
492
492
  }
493
- filterOptions={{ keys: ['label'] }}
494
- >
495
- <Combobox.SelectTrigger
496
- label="Value"
497
- placeholder="Select radio option..."
498
- />
499
- <Combobox.Content>
500
- {({ items }) => (
501
- <Combobox.List>
502
- {items.map((item, i) => (
503
- <Combobox.Item index={i} item={item} key={item.id}>
504
- {item.label}
505
- </Combobox.Item>
506
- ))}
507
- </Combobox.List>
508
- )}
509
- </Combobox.Content>
510
- </Combobox>
493
+ />
511
494
  ) : (
512
495
  <ConditionValueControl
513
496
  value={condition.value}
@@ -1,5 +1,4 @@
1
- import { TextField } from '@servicetitan/anvil2';
2
- import { SelectField, SelectFieldOption, SelectFieldSync } from '@servicetitan/anvil2/beta';
1
+ import { SelectField, SelectFieldOption, SelectFieldSync, TextField } from '@servicetitan/anvil2';
3
2
  import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
4
3
  import { useLookupOptions } from '../../hooks';
5
4
  import type { LookupOption } from '../../interface/host-events';