@rippling/rippling-sdk 0.2.0-alpha.34 → 0.2.0-alpha.35

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 (230) hide show
  1. package/lib/manifest/app.d.mts +81 -13
  2. package/lib/manifest/app.d.mts.map +1 -1
  3. package/lib/manifest/app.d.ts +81 -13
  4. package/lib/manifest/app.d.ts.map +1 -1
  5. package/lib/manifest/app.js +37 -16
  6. package/lib/manifest/app.js.map +1 -1
  7. package/lib/manifest/app.mjs +37 -16
  8. package/lib/manifest/app.mjs.map +1 -1
  9. package/lib/manifest/category.d.mts +63 -7
  10. package/lib/manifest/category.d.mts.map +1 -1
  11. package/lib/manifest/category.d.ts +63 -7
  12. package/lib/manifest/category.d.ts.map +1 -1
  13. package/lib/manifest/category.js +45 -10
  14. package/lib/manifest/category.js.map +1 -1
  15. package/lib/manifest/category.mjs +43 -8
  16. package/lib/manifest/category.mjs.map +1 -1
  17. package/lib/manifest/custom-object-field-section.d.mts +56 -6
  18. package/lib/manifest/custom-object-field-section.d.mts.map +1 -1
  19. package/lib/manifest/custom-object-field-section.d.ts +56 -6
  20. package/lib/manifest/custom-object-field-section.d.ts.map +1 -1
  21. package/lib/manifest/custom-object-field-section.js +41 -14
  22. package/lib/manifest/custom-object-field-section.js.map +1 -1
  23. package/lib/manifest/custom-object-field-section.mjs +39 -12
  24. package/lib/manifest/custom-object-field-section.mjs.map +1 -1
  25. package/lib/manifest/custom-object-page-layout.d.mts +201 -41
  26. package/lib/manifest/custom-object-page-layout.d.mts.map +1 -1
  27. package/lib/manifest/custom-object-page-layout.d.ts +201 -41
  28. package/lib/manifest/custom-object-page-layout.d.ts.map +1 -1
  29. package/lib/manifest/custom-object-page-layout.js +76 -30
  30. package/lib/manifest/custom-object-page-layout.js.map +1 -1
  31. package/lib/manifest/custom-object-page-layout.mjs +74 -28
  32. package/lib/manifest/custom-object-page-layout.mjs.map +1 -1
  33. package/lib/manifest/custom-object.d.mts +128 -15
  34. package/lib/manifest/custom-object.d.mts.map +1 -1
  35. package/lib/manifest/custom-object.d.ts +128 -15
  36. package/lib/manifest/custom-object.d.ts.map +1 -1
  37. package/lib/manifest/custom-object.js +61 -26
  38. package/lib/manifest/custom-object.js.map +1 -1
  39. package/lib/manifest/custom-object.mjs +61 -26
  40. package/lib/manifest/custom-object.mjs.map +1 -1
  41. package/lib/manifest/field.d.mts +265 -54
  42. package/lib/manifest/field.d.mts.map +1 -1
  43. package/lib/manifest/field.d.ts +265 -54
  44. package/lib/manifest/field.d.ts.map +1 -1
  45. package/lib/manifest/field.js +100 -57
  46. package/lib/manifest/field.js.map +1 -1
  47. package/lib/manifest/field.mjs +100 -57
  48. package/lib/manifest/field.mjs.map +1 -1
  49. package/lib/manifest/list-view.d.mts +105 -14
  50. package/lib/manifest/list-view.d.mts.map +1 -1
  51. package/lib/manifest/list-view.d.ts +105 -14
  52. package/lib/manifest/list-view.d.ts.map +1 -1
  53. package/lib/manifest/list-view.js +50 -14
  54. package/lib/manifest/list-view.js.map +1 -1
  55. package/lib/manifest/list-view.mjs +48 -12
  56. package/lib/manifest/list-view.mjs.map +1 -1
  57. package/lib/manifest/manifest-builder.d.mts +77 -11
  58. package/lib/manifest/manifest-builder.d.mts.map +1 -1
  59. package/lib/manifest/manifest-builder.d.ts +77 -11
  60. package/lib/manifest/manifest-builder.d.ts.map +1 -1
  61. package/lib/manifest/manifest-builder.js +46 -24
  62. package/lib/manifest/manifest-builder.js.map +1 -1
  63. package/lib/manifest/manifest-builder.mjs +44 -22
  64. package/lib/manifest/manifest-builder.mjs.map +1 -1
  65. package/lib/manifest/manifest-function.d.mts +92 -12
  66. package/lib/manifest/manifest-function.d.mts.map +1 -1
  67. package/lib/manifest/manifest-function.d.ts +92 -12
  68. package/lib/manifest/manifest-function.d.ts.map +1 -1
  69. package/lib/manifest/manifest-function.js +40 -11
  70. package/lib/manifest/manifest-function.js.map +1 -1
  71. package/lib/manifest/manifest-function.mjs +38 -9
  72. package/lib/manifest/manifest-function.mjs.map +1 -1
  73. package/lib/manifest/rule.d.mts +94 -16
  74. package/lib/manifest/rule.d.mts.map +1 -1
  75. package/lib/manifest/rule.d.ts +94 -16
  76. package/lib/manifest/rule.d.ts.map +1 -1
  77. package/lib/manifest/rule.js +36 -15
  78. package/lib/manifest/rule.js.map +1 -1
  79. package/lib/manifest/rule.mjs +36 -15
  80. package/lib/manifest/rule.mjs.map +1 -1
  81. package/lib/manifest/sdui-page.d.mts +67 -11
  82. package/lib/manifest/sdui-page.d.mts.map +1 -1
  83. package/lib/manifest/sdui-page.d.ts +67 -11
  84. package/lib/manifest/sdui-page.d.ts.map +1 -1
  85. package/lib/manifest/sdui-page.js +44 -13
  86. package/lib/manifest/sdui-page.js.map +1 -1
  87. package/lib/manifest/sdui-page.mjs +42 -11
  88. package/lib/manifest/sdui-page.mjs.map +1 -1
  89. package/lib/manifest/validation.d.mts +87 -12
  90. package/lib/manifest/validation.d.mts.map +1 -1
  91. package/lib/manifest/validation.d.ts +87 -12
  92. package/lib/manifest/validation.d.ts.map +1 -1
  93. package/lib/manifest/validation.js +41 -15
  94. package/lib/manifest/validation.js.map +1 -1
  95. package/lib/manifest/validation.mjs +39 -13
  96. package/lib/manifest/validation.mjs.map +1 -1
  97. package/lib/sdui/actions.d.mts +25 -0
  98. package/lib/sdui/actions.d.mts.map +1 -0
  99. package/lib/sdui/actions.d.ts +25 -0
  100. package/lib/sdui/actions.d.ts.map +1 -0
  101. package/lib/sdui/actions.js +53 -0
  102. package/lib/sdui/actions.js.map +1 -0
  103. package/lib/sdui/actions.mjs +42 -0
  104. package/lib/sdui/actions.mjs.map +1 -0
  105. package/lib/sdui/component.d.mts +41 -0
  106. package/lib/sdui/component.d.mts.map +1 -0
  107. package/lib/sdui/component.d.ts +41 -0
  108. package/lib/sdui/component.d.ts.map +1 -0
  109. package/lib/sdui/component.js +95 -0
  110. package/lib/sdui/component.js.map +1 -0
  111. package/lib/sdui/component.mjs +91 -0
  112. package/lib/sdui/component.mjs.map +1 -0
  113. package/lib/sdui/components.d.mts +149 -0
  114. package/lib/sdui/components.d.mts.map +1 -0
  115. package/lib/sdui/components.d.ts +149 -0
  116. package/lib/sdui/components.d.ts.map +1 -0
  117. package/lib/sdui/components.js +303 -0
  118. package/lib/sdui/components.js.map +1 -0
  119. package/lib/sdui/components.mjs +298 -0
  120. package/lib/sdui/components.mjs.map +1 -0
  121. package/lib/sdui/conditions.d.mts +25 -0
  122. package/lib/sdui/conditions.d.mts.map +1 -0
  123. package/lib/sdui/conditions.d.ts +25 -0
  124. package/lib/sdui/conditions.d.ts.map +1 -0
  125. package/lib/sdui/conditions.js +47 -0
  126. package/lib/sdui/conditions.js.map +1 -0
  127. package/lib/sdui/conditions.mjs +35 -0
  128. package/lib/sdui/conditions.mjs.map +1 -0
  129. package/lib/sdui/directives.d.mts +18 -0
  130. package/lib/sdui/directives.d.mts.map +1 -0
  131. package/lib/sdui/directives.d.ts +18 -0
  132. package/lib/sdui/directives.d.ts.map +1 -0
  133. package/lib/sdui/directives.js +28 -0
  134. package/lib/sdui/directives.js.map +1 -0
  135. package/lib/sdui/directives.mjs +21 -0
  136. package/lib/sdui/directives.mjs.map +1 -0
  137. package/lib/sdui/index.d.mts +362 -0
  138. package/lib/sdui/index.d.mts.map +1 -0
  139. package/lib/sdui/index.d.ts +362 -0
  140. package/lib/sdui/index.d.ts.map +1 -0
  141. package/lib/sdui/index.js +375 -0
  142. package/lib/sdui/index.js.map +1 -0
  143. package/lib/sdui/index.mjs +199 -0
  144. package/lib/sdui/index.mjs.map +1 -0
  145. package/lib/sdui/props.d.mts +12 -0
  146. package/lib/sdui/props.d.mts.map +1 -0
  147. package/lib/sdui/props.d.ts +12 -0
  148. package/lib/sdui/props.d.ts.map +1 -0
  149. package/lib/sdui/props.js +25 -0
  150. package/lib/sdui/props.js.map +1 -0
  151. package/lib/sdui/props.mjs +21 -0
  152. package/lib/sdui/props.mjs.map +1 -0
  153. package/lib/sdui/render.d.mts +23 -0
  154. package/lib/sdui/render.d.mts.map +1 -0
  155. package/lib/sdui/render.d.ts +23 -0
  156. package/lib/sdui/render.d.ts.map +1 -0
  157. package/lib/sdui/render.js +40 -0
  158. package/lib/sdui/render.js.map +1 -0
  159. package/lib/sdui/render.mjs +37 -0
  160. package/lib/sdui/render.mjs.map +1 -0
  161. package/lib/sdui/state.d.mts +22 -0
  162. package/lib/sdui/state.d.mts.map +1 -0
  163. package/lib/sdui/state.d.ts +22 -0
  164. package/lib/sdui/state.d.ts.map +1 -0
  165. package/lib/sdui/state.js +57 -0
  166. package/lib/sdui/state.js.map +1 -0
  167. package/lib/sdui/state.mjs +53 -0
  168. package/lib/sdui/state.mjs.map +1 -0
  169. package/package.json +1 -1
  170. package/resources/draft-hires.d.mts +4 -0
  171. package/resources/draft-hires.d.mts.map +1 -1
  172. package/resources/draft-hires.d.ts +4 -0
  173. package/resources/draft-hires.d.ts.map +1 -1
  174. package/resources/files.d.mts +16 -1
  175. package/resources/files.d.mts.map +1 -1
  176. package/resources/files.d.ts +16 -1
  177. package/resources/files.d.ts.map +1 -1
  178. package/resources/headcount-positions.d.mts +2 -2
  179. package/resources/headcount-positions.d.mts.map +1 -1
  180. package/resources/headcount-positions.d.ts +2 -2
  181. package/resources/headcount-positions.d.ts.map +1 -1
  182. package/resources/legal-entities.d.mts +1 -1
  183. package/resources/legal-entities.d.mts.map +1 -1
  184. package/resources/legal-entities.d.ts +1 -1
  185. package/resources/legal-entities.d.ts.map +1 -1
  186. package/resources/location-factors.d.mts +2 -2
  187. package/resources/location-factors.d.mts.map +1 -1
  188. package/resources/location-factors.d.ts +2 -2
  189. package/resources/location-factors.d.ts.map +1 -1
  190. package/resources/shared.d.mts +1 -1
  191. package/resources/shared.d.mts.map +1 -1
  192. package/resources/shared.d.ts +1 -1
  193. package/resources/shared.d.ts.map +1 -1
  194. package/resources/workers.d.mts +2 -2
  195. package/resources/workers.d.mts.map +1 -1
  196. package/resources/workers.d.ts +2 -2
  197. package/resources/workers.d.ts.map +1 -1
  198. package/src/lib/manifest/app.ts +81 -26
  199. package/src/lib/manifest/category.ts +63 -14
  200. package/src/lib/manifest/custom-object-field-section.ts +56 -17
  201. package/src/lib/manifest/custom-object-page-layout.ts +201 -66
  202. package/src/lib/manifest/custom-object.ts +128 -37
  203. package/src/lib/manifest/field.ts +265 -75
  204. package/src/lib/manifest/list-view.ts +105 -25
  205. package/src/lib/manifest/manifest-builder.ts +75 -32
  206. package/src/lib/manifest/manifest-function.ts +92 -22
  207. package/src/lib/manifest/rule.ts +95 -29
  208. package/src/lib/manifest/sdui-page.ts +67 -21
  209. package/src/lib/manifest/validation.ts +87 -24
  210. package/src/lib/sdui/actions.ts +58 -0
  211. package/src/lib/sdui/component.ts +122 -0
  212. package/src/lib/sdui/components.ts +308 -0
  213. package/src/lib/sdui/conditions.ts +59 -0
  214. package/src/lib/sdui/directives.ts +42 -0
  215. package/src/lib/sdui/index.ts +365 -0
  216. package/src/lib/sdui/props.ts +32 -0
  217. package/src/lib/sdui/render.ts +58 -0
  218. package/src/lib/sdui/state.ts +60 -0
  219. package/src/resources/draft-hires.ts +5 -0
  220. package/src/resources/files.ts +18 -1
  221. package/src/resources/headcount-positions.ts +2 -0
  222. package/src/resources/legal-entities.ts +1 -0
  223. package/src/resources/location-factors.ts +2 -0
  224. package/src/resources/shared.ts +1 -0
  225. package/src/resources/workers.ts +2 -0
  226. package/src/version.ts +1 -1
  227. package/version.d.mts +1 -1
  228. package/version.d.ts +1 -1
  229. package/version.js +1 -1
  230. package/version.mjs +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"custom-object.js","sourceRoot":"","sources":["../../src/lib/manifest/custom-object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"custom-object.js","sourceRoot":"","sources":["../../src/lib/manifest/custom-object.ts"],"names":[],"mappings":";;;AAGA,2EAA2E;AAC3E,6CAA6C;AAC7C,mEAAmE;AACnE,sEAAsE;AACtE,mDAAmD;AACnD,2EAA2E;AAE3E,+FAA+F;AAC/F,MAAM,oBAAoB,GAOrB;IACH;QACE,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,6BAA6B;QAC1C,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;QAChC,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,IAAI;KACb;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,cAAc;QAC3B,WAAW,EAAE,wCAAwC;QACrD,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;QACpC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,oBAAoB;QACjC,WAAW,EAAE,6CAA6C;QAC1D,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;QACpC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,oBAAoB;QACjC,WAAW,EAAE,2DAA2D;QACxE,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;QACpC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,aAAa;QACtB,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE,uEAAuE;QACpF,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;QAChC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,IAAI;KACb;IACD;QACE,OAAO,EAAE,MAAM;QACf,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,yFAAyF;QACtG,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;QAChC,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,OAAO;QACpB,WAAW,EACT,kIAAkI;QACpI,QAAQ,EAAE;YACR,UAAU,EAAE,aAAa;YACzB,iBAAiB,EAAE,UAAU;YAC7B,aAAa,EAAE,iBAAiB;YAChC,6BAA6B,EAAE,QAAQ;SACxC;QACD,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,kBAAkB;QAC3B,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE,0CAA0C;QACvD,QAAQ,EAAE;YACR,UAAU,EAAE,aAAa;YACzB,iBAAiB,EAAE,UAAU;YAC7B,aAAa,EAAE,iBAAiB;YAChC,6BAA6B,EAAE,QAAQ;SACxC;QACD,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,YAAY;QACzB,WAAW,EAAE,qCAAqC;QAClD,QAAQ,EAAE;YACR,UAAU,EAAE,aAAa;YACzB,iBAAiB,EAAE,UAAU;YAC7B,aAAa,EAAE,iBAAiB;YAChC,6BAA6B,EAAE,QAAQ;SACxC;QACD,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;CACF,CAAC;AAEF;;;;GAIG;AACH,MAAM,cAAc;IAClB,YACmB,mBAA2B,EAC3B,IAA2C;QAD3C,wBAAmB,GAAnB,mBAAmB,CAAQ;QAC3B,SAAI,GAAJ,IAAI,CAAuC;IAC3D,CAAC;IAEJ,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,sBAAsB,EAAE,IAAI,CAAC,mBAAmB;YAChD,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;YACjC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;YACzC,SAAS,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC3E,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;YAClC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;YAC/B,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;YAC3B,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,IAAI;YACjB,kBAAkB,EAAE,IAAI;YACxB,WAAW,EAAE,IAAI;YACjB,wBAAwB,EAAE,IAAI;YAC9B,qBAAqB,EAAE,IAAI;YAC3B,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;CACF;AAyFD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAa,YAAY;IAWvB;;;;OAIG;IACH,YAAY,KAAoB,EAAE,KAAwB;QACxD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,6CAA6C,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC,uBAAuB,CAAC;QAC9D,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAEtB,6EAA6E;QAC7E,KAAK,MAAM,IAAI,IAAI,oBAAoB,EAAE,CAAC;YACxC,KAAK,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,iFAAiF;IACjF,SAAS,CAAC,SAA4B;QACpC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACH,MAAM;QACJ,MAAM,SAAS,GAAwB;YACrC,IAAI,EAAE,eAAe;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,WAAW,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI;YACtC,iBAAiB,EAAE,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;SACrG,CAAC;QACF,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAwB,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI;gBAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YACnE,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI;gBAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YACzF,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI;gBAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC7E,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI;gBAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YACpE,yEAAyE;YACzE,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,SAAS,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;YAAE,SAAS,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;QAC7E,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI;YAAE,SAAS,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAC7F,IAAI,IAAI,CAAC,wBAAwB,IAAI,IAAI,EAAE,CAAC;YAC1C,SAAS,CAAC,4BAA4B,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAC1E,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AA1FD,oCA0FC"}
@@ -1,24 +1,3 @@
1
- /*
2
- * The contents of this file were inserted manually and are not generated by Stainless.
3
- *
4
- * CustomObject builder. Backend schema: CUSTOM_OBJECT (v2).
5
- *
6
- * Construction is CDK-style: `new CustomObject(scope, props)` where `scope`
7
- * is the `ManifestBuilder` (or any `ManifestScope`). The CO also acts as a
8
- * scope for its own children (fields, validations, rules, list views, page
9
- * layouts, sections, actions) — those take the CO as their first arg and
10
- * auto-register with the manifest through it.
11
- *
12
- * Every CO auto-registers 9 platform-managed standard field stubs at
13
- * construction, matching `STANDARD_FIELDS` in the backend's `constants.py`:
14
- * id, created_at, updated_at, system_updated_at, external_id, name,
15
- * owner_role, last_modified_by, created_by
16
- * The backend's closed-world `extract_from_configs` path (used by
17
- * `POST /metadata/v2/validate`) treats these as hard dependencies of the CO —
18
- * for any brand-new CO their configs must already be present in the submitted
19
- * manifest, else validation raises `DEPENDENCY_ERROR`. Users never declare
20
- * them explicitly; the SDK emits them with `is_standard: true`.
21
- */
22
1
  // ────────────────────────────────────────────────────────────────────────
23
2
  // Platform-managed standard fields — mirrors
24
3
  // `app/hub_platform/custom_objects/constants.py::STANDARD_FIELDS`.
@@ -145,8 +124,53 @@ class _StandardField {
145
124
  };
146
125
  }
147
126
  }
127
+ /**
128
+ * Defines a custom object and registers it with the manifest.
129
+ *
130
+ * A custom object is a new entity type with its own fields, validations, rules, list views,
131
+ * and page layouts. You would normally define all custom objects near the top of your manifest
132
+ * file, then define their children (fields, sections, rules, etc.) below. Each child takes
133
+ * the `CustomObject` instance as its first argument and registers automatically.
134
+ *
135
+ * @example
136
+ * ```ts
137
+ * const manifest = new ManifestBuilder({
138
+ * key: 'gym_membership_management',
139
+ * name: 'Gym Membership Management',
140
+ * });
141
+ *
142
+ * const gymCategory = new Category(manifest, { apiName: 'gym__c', name: 'Gym' });
143
+ *
144
+ * const memberObj = new CustomObject(manifest, {
145
+ * apiName: 'gym_member__c',
146
+ * name: 'Member',
147
+ * pluralLabel: 'Members',
148
+ * category: gymCategory,
149
+ * description: 'Gym member profile, contact, and membership status',
150
+ * icon: { emoji: '🏋️' },
151
+ * });
152
+ *
153
+ * // The object is now a scope — children register through it:
154
+ * const firstName = new TextField(memberObj, {
155
+ * apiName: 'first_name__c',
156
+ * displayName: 'First name',
157
+ * required: true,
158
+ * });
159
+ * ```
160
+ *
161
+ * @remarks
162
+ * **Required: every `CustomObject` must have at least one `CustomObjectPageLayout` in the
163
+ * manifest.** Omitting it passes component-level validation but fails at the package level
164
+ * with `DEPENDENCY_ERROR: Page layout config for CO (api_name=...) not found in package
165
+ * configs. CO requires at least one page layout in the package.`
166
+ * Use {@link CustomObjectPageLayout.basic} for a minimal single-tab layout.
167
+ */
148
168
  export class CustomObject {
149
- /** Build a new CO and auto-register with `scope`; enforces `__c` suffix on `apiName`. */
169
+ /**
170
+ * @param scope - The manifest or parent scope to register this object with.
171
+ * @param props - Initialization properties.
172
+ * @throws {Error} If `props.apiName` does not end with `__c`.
173
+ */
150
174
  constructor(scope, props) {
151
175
  if (!props.apiName.endsWith('__c')) {
152
176
  throw new Error(`Custom object api_name must end with __c: ${props.apiName}`);
@@ -166,19 +190,30 @@ export class CustomObject {
166
190
  scope._register(new _StandardField(this._apiName, spec));
167
191
  }
168
192
  }
169
- /** @internal Scope hook: forward child registration up to the builder. */
193
+ /** @internal Scope hook forwards child registration up to the root builder. */
170
194
  _register(component) {
171
195
  this._scope._register(component);
172
196
  }
173
- /** Backend api_name for this custom object. */
197
+ /**
198
+ * Returns the api_name of this custom object (e.g. `'gym_member__c'`).
199
+ *
200
+ * Use the return value wherever a field or layout needs to reference this object by name.
201
+ */
174
202
  getApiName() {
175
203
  return this._apiName;
176
204
  }
177
- /** Singular display name. */
205
+ /**
206
+ * Returns the singular display name of this custom object (e.g. `'Member'`).
207
+ */
178
208
  getName() {
179
209
  return this._name;
180
210
  }
181
- /** Serialize to the backend `CUSTOM_OBJECT` wire shape. */
211
+ /**
212
+ * Serializes this custom object to the wire format consumed by the manifest install endpoint.
213
+ *
214
+ * @returns A plain object with `type: 'CUSTOM_OBJECT'` and all configured fields.
215
+ * Optional fields are omitted when `null`. An `icon` with no populated keys is omitted entirely.
216
+ */
182
217
  toDict() {
183
218
  const component = {
184
219
  type: 'CUSTOM_OBJECT',
@@ -1 +1 @@
1
- {"version":3,"file":"custom-object.mjs","sourceRoot":"","sources":["../../src/lib/manifest/custom-object.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAKH,2EAA2E;AAC3E,6CAA6C;AAC7C,mEAAmE;AACnE,sEAAsE;AACtE,mDAAmD;AACnD,2EAA2E;AAE3E,+FAA+F;AAC/F,MAAM,oBAAoB,GAOrB;IACH;QACE,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,6BAA6B;QAC1C,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;QAChC,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,IAAI;KACb;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,cAAc;QAC3B,WAAW,EAAE,wCAAwC;QACrD,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;QACpC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,oBAAoB;QACjC,WAAW,EAAE,6CAA6C;QAC1D,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;QACpC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,oBAAoB;QACjC,WAAW,EAAE,2DAA2D;QACxE,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;QACpC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,aAAa;QACtB,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE,uEAAuE;QACpF,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;QAChC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,IAAI;KACb;IACD;QACE,OAAO,EAAE,MAAM;QACf,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,yFAAyF;QACtG,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;QAChC,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,OAAO;QACpB,WAAW,EACT,kIAAkI;QACpI,QAAQ,EAAE;YACR,UAAU,EAAE,aAAa;YACzB,iBAAiB,EAAE,UAAU;YAC7B,aAAa,EAAE,iBAAiB;YAChC,6BAA6B,EAAE,QAAQ;SACxC;QACD,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,kBAAkB;QAC3B,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE,0CAA0C;QACvD,QAAQ,EAAE;YACR,UAAU,EAAE,aAAa;YACzB,iBAAiB,EAAE,UAAU;YAC7B,aAAa,EAAE,iBAAiB;YAChC,6BAA6B,EAAE,QAAQ;SACxC;QACD,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,YAAY;QACzB,WAAW,EAAE,qCAAqC;QAClD,QAAQ,EAAE;YACR,UAAU,EAAE,aAAa;YACzB,iBAAiB,EAAE,UAAU;YAC7B,aAAa,EAAE,iBAAiB;YAChC,6BAA6B,EAAE,QAAQ;SACxC;QACD,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;CACF,CAAC;AAEF;;;;GAIG;AACH,MAAM,cAAc;IAClB,YACmB,mBAA2B,EAC3B,IAA2C;QAD3C,wBAAmB,GAAnB,mBAAmB,CAAQ;QAC3B,SAAI,GAAJ,IAAI,CAAuC;IAC3D,CAAC;IAEJ,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,sBAAsB,EAAE,IAAI,CAAC,mBAAmB;YAChD,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;YACjC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;YACzC,SAAS,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC3E,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;YAClC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;YAC/B,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;YAC3B,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,IAAI;YACjB,kBAAkB,EAAE,IAAI;YACxB,WAAW,EAAE,IAAI;YACjB,wBAAwB,EAAE,IAAI;YAC9B,qBAAqB,EAAE,IAAI;YAC3B,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;CACF;AAgCD,MAAM,OAAO,YAAY;IAWvB,yFAAyF;IACzF,YAAY,KAAoB,EAAE,KAAwB;QACxD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,6CAA6C,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC,uBAAuB,CAAC;QAC9D,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAEtB,6EAA6E;QAC7E,KAAK,MAAM,IAAI,IAAI,oBAAoB,EAAE,CAAC;YACxC,KAAK,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,SAAS,CAAC,SAA4B;QACpC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAED,+CAA+C;IAC/C,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,6BAA6B;IAC7B,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,2DAA2D;IAC3D,MAAM;QACJ,MAAM,SAAS,GAAwB;YACrC,IAAI,EAAE,eAAe;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,WAAW,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI;YACtC,iBAAiB,EAAE,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;SACrG,CAAC;QACF,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAwB,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI;gBAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YACnE,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI;gBAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YACzF,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI;gBAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC7E,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI;gBAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YACpE,yEAAyE;YACzE,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,SAAS,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;YAAE,SAAS,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;QAC7E,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI;YAAE,SAAS,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAC7F,IAAI,IAAI,CAAC,wBAAwB,IAAI,IAAI,EAAE,CAAC;YAC1C,SAAS,CAAC,4BAA4B,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAC1E,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
1
+ {"version":3,"file":"custom-object.mjs","sourceRoot":"","sources":["../../src/lib/manifest/custom-object.ts"],"names":[],"mappings":"AAGA,2EAA2E;AAC3E,6CAA6C;AAC7C,mEAAmE;AACnE,sEAAsE;AACtE,mDAAmD;AACnD,2EAA2E;AAE3E,+FAA+F;AAC/F,MAAM,oBAAoB,GAOrB;IACH;QACE,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,IAAI;QACjB,WAAW,EAAE,6BAA6B;QAC1C,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;QAChC,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,IAAI;KACb;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,cAAc;QAC3B,WAAW,EAAE,wCAAwC;QACrD,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;QACpC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,oBAAoB;QACjC,WAAW,EAAE,6CAA6C;QAC1D,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;QACpC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,oBAAoB;QACjC,WAAW,EAAE,2DAA2D;QACxE,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;QACpC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,aAAa;QACtB,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE,uEAAuE;QACpF,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;QAChC,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,IAAI;KACb;IACD;QACE,OAAO,EAAE,MAAM;QACf,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,yFAAyF;QACtG,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;QAChC,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,OAAO;QACpB,WAAW,EACT,kIAAkI;QACpI,QAAQ,EAAE;YACR,UAAU,EAAE,aAAa;YACzB,iBAAiB,EAAE,UAAU;YAC7B,aAAa,EAAE,iBAAiB;YAChC,6BAA6B,EAAE,QAAQ;SACxC;QACD,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,kBAAkB;QAC3B,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE,0CAA0C;QACvD,QAAQ,EAAE;YACR,UAAU,EAAE,aAAa;YACzB,iBAAiB,EAAE,UAAU;YAC7B,aAAa,EAAE,iBAAiB;YAChC,6BAA6B,EAAE,QAAQ;SACxC;QACD,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;IACD;QACE,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,YAAY;QACzB,WAAW,EAAE,qCAAqC;QAClD,QAAQ,EAAE;YACR,UAAU,EAAE,aAAa;YACzB,iBAAiB,EAAE,UAAU;YAC7B,aAAa,EAAE,iBAAiB;YAChC,6BAA6B,EAAE,QAAQ;SACxC;QACD,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,KAAK;KACd;CACF,CAAC;AAEF;;;;GAIG;AACH,MAAM,cAAc;IAClB,YACmB,mBAA2B,EAC3B,IAA2C;QAD3C,wBAAmB,GAAnB,mBAAmB,CAAQ;QAC3B,SAAI,GAAJ,IAAI,CAAuC;IAC3D,CAAC;IAEJ,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,sBAAsB,EAAE,IAAI,CAAC,mBAAmB;YAChD,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;YACjC,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;YACzC,SAAS,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC3E,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;YAClC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;YAC/B,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;YAC3B,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,IAAI;YACjB,kBAAkB,EAAE,IAAI;YACxB,WAAW,EAAE,IAAI;YACjB,wBAAwB,EAAE,IAAI;YAC9B,qBAAqB,EAAE,IAAI;YAC3B,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;CACF;AAyFD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAM,OAAO,YAAY;IAWvB;;;;OAIG;IACH,YAAY,KAAoB,EAAE,KAAwB;QACxD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,6CAA6C,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC,uBAAuB,CAAC;QAC9D,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAEtB,6EAA6E;QAC7E,KAAK,MAAM,IAAI,IAAI,oBAAoB,EAAE,CAAC;YACxC,KAAK,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,iFAAiF;IACjF,SAAS,CAAC,SAA4B;QACpC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACH,MAAM;QACJ,MAAM,SAAS,GAAwB;YACrC,IAAI,EAAE,eAAe;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,WAAW,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI;YACtC,iBAAiB,EAAE,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;SACrG,CAAC;QACF,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAwB,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI;gBAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YACnE,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI;gBAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;YACzF,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI;gBAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC7E,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI;gBAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;YACpE,yEAAyE;YACzE,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,SAAS,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI;YAAE,SAAS,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;QAC7E,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI;YAAE,SAAS,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAC7F,IAAI,IAAI,CAAC,wBAAwB,IAAI,IAAI,EAAE,CAAC;YAC1C,SAAS,CAAC,4BAA4B,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAC1E,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
@@ -1,12 +1,34 @@
1
1
  import { type FieldType, type FormulaFieldType, type SummaryAggregation, type SummaryFilterOperator } from "./_helpers.mjs";
2
2
  import type { CustomObject } from "./custom-object.mjs";
3
3
  import type { CustomObjectFieldSection } from "./custom-object-field-section.mjs";
4
- /** Summary filter. Lives here (not `_helpers.ts`) to avoid a circular import with `Field`. */
4
+ /**
5
+ * A filter condition applied to a {@link SummaryField}.
6
+ *
7
+ * Filters restrict which child records are included in the aggregation.
8
+ * Only scalar field types are supported as filter fields — see
9
+ * `FILTER_OPERATORS_BY_TYPE` in `_helpers.ts` for the per-type operator allow-list.
10
+ */
5
11
  export interface SummaryFilter {
6
- /** Filter field on the child CO. */
12
+ /**
13
+ * The child-CO field to filter on.
14
+ *
15
+ * Required. Must be a scalar field on the same child object as `lookup`.
16
+ * Cannot be a formula field, summary field, or the `lookup` field itself.
17
+ */
7
18
  field: Field;
19
+ /**
20
+ * Comparison operator. Allowed operators depend on the field's type —
21
+ * text/boolean fields support `=` and `!=`; numeric/date fields additionally
22
+ * support `>`, `>=`, `<`, `<=`.
23
+ *
24
+ * Required.
25
+ */
8
26
  operator: SummaryFilterOperator;
9
- /** Raw RQL value, e.g. `"'Active'"`, `"50"`, `"true"`, `"DATE(2026,1,1)"`. */
27
+ /**
28
+ * Raw RQL value string, e.g. `"'Active'"`, `"50"`, `"true"`, `"DATE(2026,1,1)"`.
29
+ *
30
+ * Required.
31
+ */
10
32
  value: string;
11
33
  }
12
34
  interface SummarySpec {
@@ -50,9 +72,28 @@ export interface FieldProps {
50
72
  summarySpec?: SummarySpec | undefined;
51
73
  }
52
74
  /**
53
- * Base class for every custom-object field. Prefer the concrete subclasses
54
- * (`TextField`, `LookupField`, `SummaryField`, …). Construct `Field` directly
55
- * only for wire-types the SDK doesn't yet model.
75
+ * Base class for every custom-object field.
76
+ *
77
+ * Prefer the typed subclasses (`TextField`, `NumberField`, `LookupField`, …) over
78
+ * constructing `Field` directly. Use `Field` only for wire-level field types the
79
+ * SDK does not yet model with a dedicated subclass.
80
+ *
81
+ * All field classes share the same scope-first CDK pattern: pass the parent
82
+ * {@link CustomObject} as the first argument and the field auto-registers with
83
+ * the manifest. Every field api_name must end with `__c`.
84
+ *
85
+ * @example
86
+ * ```ts
87
+ * // Prefer typed subclasses:
88
+ * const firstName = new TextField(memberObj, {
89
+ * apiName: 'first_name__c',
90
+ * displayName: 'First name',
91
+ * required: true,
92
+ * maxLength: 80,
93
+ * });
94
+ * ```
95
+ *
96
+ * @see {@link TextField}, {@link NumberField}, {@link LookupField}, {@link SummaryField}
56
97
  */
57
98
  export declare class Field {
58
99
  private readonly _fieldApiName;
@@ -69,205 +110,375 @@ export declare class Field {
69
110
  private readonly _section;
70
111
  private readonly _summarySpec;
71
112
  private readonly _derivedAggregatedFieldStatic;
72
- /** Build a new field; enforces `__c` suffix and folds props into `data_type`. */
113
+ /**
114
+ * @param customObject - The custom object this field belongs to.
115
+ * @param props - Field configuration. See {@link FieldProps}.
116
+ * @throws {Error} If `props.apiName` does not end with `__c`.
117
+ */
73
118
  constructor(customObject: CustomObject, props: FieldProps);
74
- /** Backend api_name for this field. */
119
+ /** Returns the api_name of this field (e.g. `'first_name__c'`). */
75
120
  getApiName(): string;
76
- /** Human-readable display name. */
121
+ /** Returns the display name of this field. */
77
122
  getDisplayName(): string;
78
- /** api_name of the CustomObject this field lives on. */
123
+ /** Returns the api_name of the custom object this field belongs to. */
79
124
  getCustomObjectApiName(): string;
80
- /** Resolved `data_type.field_type`, or null if unset. */
125
+ /** Returns the resolved `field_type` (e.g. `'TEXT'`), or `null` if unset. */
81
126
  getFieldType(): FieldType | null;
82
- /** Raw `data_type` dict (read-only view). */
127
+ /** Returns a read-only view of the raw `data_type` dict. */
83
128
  getDataType(): Readonly<Record<string, any>>;
84
- /** True if this field is a simple formula field. */
129
+ /** Returns `true` if this is a formula (computed) field. */
85
130
  isFormula(): boolean;
86
- /** True if this field is a summary/rollup field. */
131
+ /** Returns `true` if this is a summary (rollup) field. */
87
132
  isSummary(): boolean;
88
- /** Serialize to the backend `CUSTOM_OBJECT_FIELD` wire shape. */
133
+ /**
134
+ * Serializes this field to the wire format consumed by the manifest install endpoint.
135
+ *
136
+ * @returns A plain object with `type: 'CUSTOM_OBJECT_FIELD'`.
137
+ */
89
138
  toDict(): Record<string, any>;
90
139
  /** Build the `derived_aggregated_field` dict from `_summarySpec` with cross-CO checks. */
91
140
  private _resolveAggregatedField;
92
141
  }
142
+ /** Initialization properties for {@link TextField}. */
93
143
  export interface TextFieldProps extends CommonFieldProps {
144
+ /** Whether a value is required on save. Optional. */
94
145
  required?: boolean;
146
+ /** Whether values must be unique across records. Optional. */
95
147
  unique?: boolean;
148
+ /** Maximum character length. Optional. */
96
149
  maxLength?: number;
97
150
  }
98
- /** Single-line text. */
151
+ /** Single-line text field. */
99
152
  export declare class TextField extends Field {
100
153
  constructor(customObject: CustomObject, props: TextFieldProps);
101
154
  }
155
+ /** Initialization properties for {@link LongTextField}. */
102
156
  export interface LongTextFieldProps extends CommonFieldProps {
157
+ /** Whether a value is required on save. Optional. */
103
158
  required?: boolean;
159
+ /** Maximum character length. Optional. */
104
160
  maxLength?: number;
105
161
  }
106
- /** Multi-line text. */
162
+ /** Multi-line text field. */
107
163
  export declare class LongTextField extends Field {
108
164
  constructor(customObject: CustomObject, props: LongTextFieldProps);
109
165
  }
166
+ /** Initialization properties for {@link EmailField}. */
110
167
  export interface EmailFieldProps extends CommonFieldProps {
168
+ /** Whether a value is required on save. Optional. */
111
169
  required?: boolean;
170
+ /** Whether values must be unique across records. Optional. */
112
171
  unique?: boolean;
113
172
  }
114
- /** Email address (format-validated by the UI). */
173
+ /** Email address field. Format is validated by the Rippling UI. */
115
174
  export declare class EmailField extends Field {
116
175
  constructor(customObject: CustomObject, props: EmailFieldProps);
117
176
  }
177
+ /** Initialization properties for {@link UrlField}. */
118
178
  export interface UrlFieldProps extends CommonFieldProps {
179
+ /** Whether a value is required on save. Optional. */
119
180
  required?: boolean;
120
181
  }
121
- /** URL (format-validated by the UI). */
182
+ /** URL field. Format is validated by the Rippling UI. */
122
183
  export declare class UrlField extends Field {
123
184
  constructor(customObject: CustomObject, props: UrlFieldProps);
124
185
  }
186
+ /** Initialization properties for {@link PhoneField}. */
125
187
  export interface PhoneFieldProps extends CommonFieldProps {
188
+ /** Whether a value is required on save. Optional. */
126
189
  required?: boolean;
127
190
  }
128
- /** Phone number. */
191
+ /** Phone number field. */
129
192
  export declare class PhoneField extends Field {
130
193
  constructor(customObject: CustomObject, props: PhoneFieldProps);
131
194
  }
195
+ /** Initialization properties for {@link NumberField}. */
132
196
  export interface NumberFieldProps extends CommonFieldProps {
197
+ /** Whether a value is required on save. Optional. */
133
198
  required?: boolean;
199
+ /** Whether values must be unique across records. Optional. */
134
200
  unique?: boolean;
201
+ /** Number of decimal places to display and store. Optional. */
135
202
  decimalPlaces?: number;
136
203
  }
137
- /** Number. */
204
+ /** Numeric field. */
138
205
  export declare class NumberField extends Field {
139
206
  constructor(customObject: CustomObject, props: NumberFieldProps);
140
207
  }
208
+ /** Initialization properties for {@link CurrencyField}. */
141
209
  export interface CurrencyFieldProps extends CommonFieldProps {
210
+ /** Whether a value is required on save. Optional. */
142
211
  required?: boolean;
212
+ /** ISO 4217 currency code (e.g. `'USD'`). Optional. Forwarded to the wire only when set. */
143
213
  currency?: string;
214
+ /** Number of decimal places. Optional. */
144
215
  decimalPlaces?: number;
145
216
  }
146
- /** Currency amount; `currency` is forwarded only when set. */
217
+ /** Currency amount field. */
147
218
  export declare class CurrencyField extends Field {
148
219
  constructor(customObject: CustomObject, props: CurrencyFieldProps);
149
220
  }
221
+ /** Initialization properties for {@link PercentageField}. */
150
222
  export interface PercentageFieldProps extends CommonFieldProps {
223
+ /** Whether a value is required on save. Optional. */
151
224
  required?: boolean;
225
+ /** Number of decimal places. Optional. */
152
226
  decimalPlaces?: number;
153
227
  }
154
- /** Percentage. */
228
+ /** Percentage field. */
155
229
  export declare class PercentageField extends Field {
156
230
  constructor(customObject: CustomObject, props: PercentageFieldProps);
157
231
  }
232
+ /** Initialization properties for {@link DateField}. */
158
233
  export interface DateFieldProps extends CommonFieldProps {
234
+ /** Whether a value is required on save. Optional. */
159
235
  required?: boolean;
160
236
  }
161
- /** Date (no time). */
237
+ /** Date field (no time component). */
162
238
  export declare class DateField extends Field {
163
239
  constructor(customObject: CustomObject, props: DateFieldProps);
164
240
  }
241
+ /** Initialization properties for {@link DatetimeField}. */
165
242
  export interface DatetimeFieldProps extends CommonFieldProps {
243
+ /** Whether a value is required on save. Optional. */
166
244
  required?: boolean;
167
245
  }
168
- /** Date + time. */
246
+ /** Date and time field. */
169
247
  export declare class DatetimeField extends Field {
170
248
  constructor(customObject: CustomObject, props: DatetimeFieldProps);
171
249
  }
250
+ /** Initialization properties for {@link TimeField}. */
172
251
  export interface TimeFieldProps extends CommonFieldProps {
252
+ /** Whether a value is required on save. Optional. */
173
253
  required?: boolean;
174
254
  }
175
- /** Time of day. */
255
+ /** Time-of-day field. */
176
256
  export declare class TimeField extends Field {
177
257
  constructor(customObject: CustomObject, props: TimeFieldProps);
178
258
  }
259
+ /** Initialization properties for {@link SelectField}. */
179
260
  export interface SelectFieldProps extends CommonFieldProps {
180
- /** Required choice list. */
261
+ /**
262
+ * The list of selectable options (e.g. `['Active', 'Frozen', 'Cancelled']`).
263
+ *
264
+ * Required.
265
+ */
181
266
  options: string[];
267
+ /** Whether a value is required on save. Optional. */
182
268
  required?: boolean;
183
269
  }
184
- /** Dropdown select. */
270
+ /** Dropdown single-select field. */
185
271
  export declare class SelectField extends Field {
186
272
  constructor(customObject: CustomObject, props: SelectFieldProps);
187
273
  }
274
+ /** Initialization properties for {@link RadioField}. */
188
275
  export interface RadioFieldProps extends CommonFieldProps {
189
- /** Required choice list. */
276
+ /**
277
+ * The list of selectable options.
278
+ *
279
+ * Required.
280
+ */
190
281
  options: string[];
282
+ /** Whether a value is required on save. Optional. */
191
283
  required?: boolean;
192
284
  }
193
- /** Radio button group. */
285
+ /** Radio button group field. */
194
286
  export declare class RadioField extends Field {
195
287
  constructor(customObject: CustomObject, props: RadioFieldProps);
196
288
  }
289
+ /** Initialization properties for {@link BooleanField}. */
197
290
  export interface BooleanFieldProps extends CommonFieldProps {
291
+ /** Whether a value is required on save. Optional. */
198
292
  required?: boolean;
199
293
  }
200
- /** Boolean (checkbox). */
294
+ /** Boolean (checkbox) field. */
201
295
  export declare class BooleanField extends Field {
202
296
  constructor(customObject: CustomObject, props: BooleanFieldProps);
203
297
  }
298
+ /** Initialization properties for {@link FileField}. */
204
299
  export interface FileFieldProps extends CommonFieldProps {
205
300
  /**
206
- * File-type restriction. Matches the UI's "File type" dropdown options.
207
- * 'images' — jpg, jpeg, png, gif, bmp, svg
208
- * 'documents' — doc, docx, pdf, csv, txt, rtf, ppt, pptx
209
- * 'any' any file type
301
+ * Restricts which file types can be uploaded. Mirrors the UI's "File type" dropdown.
302
+ *
303
+ * Required.
304
+ * - `'images'` jpg, jpeg, png, gif, bmp, svg
305
+ * - `'documents'` — doc, docx, pdf, csv, txt, rtf, ppt, pptx
306
+ * - `'any'` — any file type
210
307
  */
211
308
  allowedType: 'images' | 'documents' | 'any';
309
+ /** Whether a file is required on save. Optional. */
212
310
  required?: boolean;
213
311
  }
214
- /** File attachment; `allowedType` mirrors the UI's "File type" dropdown. */
312
+ /** File attachment field. */
215
313
  export declare class FileField extends Field {
216
314
  constructor(customObject: CustomObject, props: FileFieldProps);
217
315
  }
316
+ /** Initialization properties for {@link LookupField}. */
218
317
  export interface LookupFieldProps extends CommonFieldProps {
219
- /** Target object. Live `CustomObject` (SDK reads api_name) or native-model api_name string (e.g. `'role'`). */
318
+ /**
319
+ * The object this field points to. Pass a live {@link CustomObject} instance,
320
+ * or a raw api_name string for native Rippling models (e.g. `'role'`).
321
+ *
322
+ * Required.
323
+ */
220
324
  target: CustomObject | string;
325
+ /**
326
+ * Label for the related-records panel on the target object's detail page
327
+ * (e.g. `'Class enrollments'`).
328
+ *
329
+ * Optional.
330
+ */
221
331
  relatedDataLabel?: string;
332
+ /** Whether a value is required on save. Optional. */
222
333
  required?: boolean;
223
334
  }
224
- /** Many-to-one reference. */
335
+ /**
336
+ * Many-to-one reference field. Links this record to one record on the target object.
337
+ *
338
+ * Use {@link ParentChildField} instead when the relationship should create a
339
+ * parent-child hierarchy with rollup support.
340
+ */
225
341
  export declare class LookupField extends Field {
226
342
  constructor(customObject: CustomObject, props: LookupFieldProps);
227
343
  }
344
+ /** Initialization properties for {@link ParentChildField}. */
228
345
  export interface ParentChildFieldProps extends CommonFieldProps {
229
- /** Target parent object. Must be a live `CustomObject`. */
346
+ /**
347
+ * The parent object. Must be a live {@link CustomObject} instance.
348
+ *
349
+ * Required.
350
+ */
230
351
  target: CustomObject;
352
+ /**
353
+ * Label for the child-records panel on the parent's detail page
354
+ * (e.g. `'Enrollments'`).
355
+ *
356
+ * Optional.
357
+ */
231
358
  relatedDataLabel?: string;
359
+ /**
360
+ * Whether this is the primary or secondary parent-child edge.
361
+ * One of `'PRIMARY'` | `'SECONDARY'`.
362
+ *
363
+ * Optional.
364
+ */
232
365
  parentChildType?: 'PRIMARY' | 'SECONDARY';
366
+ /**
367
+ * Whether the child record inherits the owner from the parent.
368
+ *
369
+ * Optional.
370
+ */
233
371
  enableParentOwnerInheritance?: boolean;
234
372
  }
235
- /** Parent-child reference — always required on the wire. */
373
+ /**
374
+ * Parent-child reference field. Creates a hierarchical relationship between
375
+ * this object (child) and the target (parent), enabling {@link SummaryField}
376
+ * rollups from the child to the parent.
377
+ *
378
+ * Always emitted as `required: true` on the wire.
379
+ */
236
380
  export declare class ParentChildField extends Field {
237
381
  constructor(customObject: CustomObject, props: ParentChildFieldProps);
238
382
  }
383
+ /** Initialization properties for {@link FormulaField}. */
239
384
  export interface FormulaFieldProps extends CommonFieldProps {
240
- /** The computed RQL expression. */
385
+ /**
386
+ * The RQL expression that computes this field's value
387
+ * (e.g. `"CONCATENATE(TRIM(first_name__c), ' ', TRIM(last_name__c))"`).
388
+ *
389
+ * Required.
390
+ */
241
391
  formula: string;
242
- /** Output type narrowed to the 7 variants the UI "Data type" dropdown exposes. */
392
+ /**
393
+ * Output data type. One of `'TEXT'` | `'NUMBER'` | `'BOOLEAN'` | `'CURRENCY'`
394
+ * | `'PERCENTAGE'` | `'DATE'` | `'URL'`.
395
+ *
396
+ * Required.
397
+ */
243
398
  fieldType: FormulaFieldType;
244
- /** Required when `fieldType === 'TEXT'`. */
399
+ /**
400
+ * Maximum character length of the computed value.
401
+ *
402
+ * Required when `fieldType === 'TEXT'`. The constructor throws if omitted for text formulas.
403
+ */
245
404
  maxLength?: number;
246
405
  }
247
406
  /**
248
- * Computed formula field (read-only). `fieldType` is required and narrowed
249
- * to the 7 variants the UI "Data type" dropdown exposes. `maxLength` is
250
- * required when `fieldType === 'TEXT'`.
407
+ * Read-only computed field whose value is derived from an RQL formula.
408
+ *
409
+ * `fieldType` is required and restricted to the 7 output types the Rippling
410
+ * formula editor supports. `maxLength` is required when `fieldType === 'TEXT'`.
411
+ *
412
+ * @example
413
+ * ```ts
414
+ * const memberDisplayName = new FormulaField(memberObj, {
415
+ * apiName: 'member_display_name__c',
416
+ * displayName: 'Display name',
417
+ * fieldType: 'TEXT',
418
+ * maxLength: 200,
419
+ * formula: "CONCATENATE(TRIM(first_name__c), ' ', TRIM(last_name__c))",
420
+ * });
421
+ * ```
251
422
  */
252
423
  export declare class FormulaField extends Field {
253
424
  constructor(customObject: CustomObject, props: FormulaFieldProps);
254
425
  }
426
+ /** Initialization properties for {@link SummaryField}. */
255
427
  export interface SummaryFieldProps extends CommonFieldProps {
256
- /** Child-CO field being aggregated. Must have a known fieldType. */
428
+ /**
429
+ * The child-CO field whose values are aggregated.
430
+ *
431
+ * Required. Must have a known `fieldType` (use a typed subclass, not bare `Field`).
432
+ * Must live on the same child object as `lookup`.
433
+ */
257
434
  aggregates: Field;
435
+ /**
436
+ * Aggregation function. One of `'COUNT'` | `'SUM'` | `'MIN'` | `'MAX'`.
437
+ *
438
+ * Required. `COUNT` always produces a `NUMBER` output; other functions
439
+ * inherit the output type from `aggregates`.
440
+ */
258
441
  using: SummaryAggregation;
259
- /** Child-CO's parentChild field pointing back at this CO. */
442
+ /**
443
+ * The {@link ParentChildField} on the child CO that points back at this parent object.
444
+ *
445
+ * Required. Must be a `ParentChildField` (the constructor throws otherwise).
446
+ */
260
447
  lookup: Field;
448
+ /**
449
+ * Optional filter conditions applied before aggregating. Each filter restricts
450
+ * which child records are included.
451
+ *
452
+ * Optional. @default `[]`
453
+ */
261
454
  filters?: SummaryFilter[];
262
- /** Only valid when the output fieldType resolves to `'CURRENCY'`. */
455
+ /**
456
+ * ISO 4217 currency code (e.g. `'USD'`). Only valid when the aggregated field
457
+ * resolves to `'CURRENCY'`.
458
+ *
459
+ * Optional.
460
+ */
263
461
  currencyCode?: string;
264
462
  }
265
463
  /**
266
- * Summary/rollup field aggregates a child-object field (read-only).
267
- * SDK enforces only what backend/UI won't: `lookup` edge_type, output-type
268
- * inference, per-type filter operators, and same-child-CO residency for
269
- * `aggregates` + `lookup`. Per-filter residency / LONG_TEXT / formula
270
- * filter / currency pairing checks are left to the backend.
464
+ * Read-only rollup field that aggregates a child object's field values.
465
+ *
466
+ * Defined on the **parent** object. Requires a {@link ParentChildField} on the
467
+ * child object pointing back at this parent as the `lookup` edge.
468
+ *
469
+ * @example
470
+ * ```ts
471
+ * // Count enrollments on a class session:
472
+ * const enrollmentCount = new SummaryField(sessionObj, {
473
+ * apiName: 'enrollment_count__c',
474
+ * displayName: 'Enrolled (count)',
475
+ * aggregates: enrollmentMemberRef,
476
+ * using: 'COUNT',
477
+ * lookup: enrollmentSessionRef, // ParentChildField on enrollmentObj → sessionObj
478
+ * });
479
+ * ```
480
+ *
481
+ * @see {@link ParentChildField} — must be used as `lookup`.
271
482
  */
272
483
  export declare class SummaryField extends Field {
273
484
  constructor(customObject: CustomObject, props: SummaryFieldProps);