@rippling/rippling-sdk 0.2.0-alpha.108 → 0.2.0-alpha.110

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 (366) hide show
  1. package/client.d.mts +14 -0
  2. package/client.d.mts.map +1 -1
  3. package/client.d.ts +14 -0
  4. package/client.d.ts.map +1 -1
  5. package/client.js +18 -0
  6. package/client.js.map +1 -1
  7. package/client.mjs +18 -0
  8. package/client.mjs.map +1 -1
  9. package/index.d.mts +5 -0
  10. package/index.d.mts.map +1 -1
  11. package/index.d.ts +5 -0
  12. package/index.d.ts.map +1 -1
  13. package/index.js +11 -1
  14. package/index.js.map +1 -1
  15. package/index.mjs +5 -0
  16. package/index.mjs.map +1 -1
  17. package/lib/charts/builders.d.mts +18 -19
  18. package/lib/charts/builders.d.mts.map +1 -1
  19. package/lib/charts/builders.d.ts +18 -19
  20. package/lib/charts/builders.d.ts.map +1 -1
  21. package/lib/charts/builders.js +35 -28
  22. package/lib/charts/builders.js.map +1 -1
  23. package/lib/charts/builders.mjs +35 -28
  24. package/lib/charts/builders.mjs.map +1 -1
  25. package/lib/charts/describe.d.mts +6 -7
  26. package/lib/charts/describe.d.mts.map +1 -1
  27. package/lib/charts/describe.d.ts +6 -7
  28. package/lib/charts/describe.d.ts.map +1 -1
  29. package/lib/charts/describe.js +26 -27
  30. package/lib/charts/describe.js.map +1 -1
  31. package/lib/charts/describe.mjs +27 -28
  32. package/lib/charts/describe.mjs.map +1 -1
  33. package/lib/charts/errors.d.mts +2 -6
  34. package/lib/charts/errors.d.mts.map +1 -1
  35. package/lib/charts/errors.d.ts +2 -6
  36. package/lib/charts/errors.d.ts.map +1 -1
  37. package/lib/charts/errors.js +2 -6
  38. package/lib/charts/errors.js.map +1 -1
  39. package/lib/charts/errors.mjs +2 -6
  40. package/lib/charts/errors.mjs.map +1 -1
  41. package/lib/charts/evaluate.d.mts +5 -7
  42. package/lib/charts/evaluate.d.mts.map +1 -1
  43. package/lib/charts/evaluate.d.ts +5 -7
  44. package/lib/charts/evaluate.d.ts.map +1 -1
  45. package/lib/charts/evaluate.js +21 -35
  46. package/lib/charts/evaluate.js.map +1 -1
  47. package/lib/charts/evaluate.mjs +22 -36
  48. package/lib/charts/evaluate.mjs.map +1 -1
  49. package/lib/charts/schema.d.mts +8 -97
  50. package/lib/charts/schema.d.mts.map +1 -1
  51. package/lib/charts/schema.d.ts +8 -97
  52. package/lib/charts/schema.d.ts.map +1 -1
  53. package/lib/charts/schema.js +186 -65
  54. package/lib/charts/schema.js.map +1 -1
  55. package/lib/charts/schema.mjs +185 -65
  56. package/lib/charts/schema.mjs.map +1 -1
  57. package/lib/charts/types.d.mts +40 -25
  58. package/lib/charts/types.d.mts.map +1 -1
  59. package/lib/charts/types.d.ts +40 -25
  60. package/lib/charts/types.d.ts.map +1 -1
  61. package/lib/charts/types.js +8 -10
  62. package/lib/charts/types.js.map +1 -1
  63. package/lib/charts/types.mjs +8 -10
  64. package/lib/charts/types.mjs.map +1 -1
  65. package/lib/charts/visualization-grammar.d.mts +66 -0
  66. package/lib/charts/visualization-grammar.d.mts.map +1 -0
  67. package/lib/charts/visualization-grammar.d.ts +66 -0
  68. package/lib/charts/visualization-grammar.d.ts.map +1 -0
  69. package/lib/charts/visualization-grammar.js +70 -0
  70. package/lib/charts/visualization-grammar.js.map +1 -0
  71. package/lib/charts/visualization-grammar.mjs +67 -0
  72. package/lib/charts/visualization-grammar.mjs.map +1 -0
  73. package/lib/charts/vocabulary.d.mts +7 -0
  74. package/lib/charts/vocabulary.d.mts.map +1 -0
  75. package/lib/charts/vocabulary.d.ts +7 -0
  76. package/lib/charts/vocabulary.d.ts.map +1 -0
  77. package/lib/charts/vocabulary.js +10 -0
  78. package/lib/charts/vocabulary.js.map +1 -0
  79. package/lib/charts/vocabulary.mjs +7 -0
  80. package/lib/charts/vocabulary.mjs.map +1 -0
  81. package/lib/charts.d.mts +3 -3
  82. package/lib/charts.d.mts.map +1 -1
  83. package/lib/charts.d.ts +3 -3
  84. package/lib/charts.d.ts.map +1 -1
  85. package/lib/charts.js +2 -1
  86. package/lib/charts.js.map +1 -1
  87. package/lib/charts.mjs +1 -1
  88. package/lib/charts.mjs.map +1 -1
  89. package/lib/manifest/composition.d.mts +21 -0
  90. package/lib/manifest/composition.d.mts.map +1 -0
  91. package/lib/manifest/composition.d.ts +21 -0
  92. package/lib/manifest/composition.d.ts.map +1 -0
  93. package/lib/manifest/composition.js +103 -0
  94. package/lib/manifest/composition.js.map +1 -0
  95. package/lib/manifest/composition.mjs +99 -0
  96. package/lib/manifest/composition.mjs.map +1 -0
  97. package/lib/manifest/definitions/_object-records.d.mts +23 -0
  98. package/lib/manifest/definitions/_object-records.d.mts.map +1 -0
  99. package/lib/manifest/definitions/_object-records.d.ts +23 -0
  100. package/lib/manifest/definitions/_object-records.d.ts.map +1 -0
  101. package/lib/manifest/definitions/_object-records.js +151 -0
  102. package/lib/manifest/definitions/_object-records.js.map +1 -0
  103. package/lib/manifest/definitions/_object-records.mjs +147 -0
  104. package/lib/manifest/definitions/_object-records.mjs.map +1 -0
  105. package/lib/manifest/definitions/action.d.mts +7 -0
  106. package/lib/manifest/definitions/action.d.mts.map +1 -0
  107. package/lib/manifest/definitions/action.d.ts +7 -0
  108. package/lib/manifest/definitions/action.d.ts.map +1 -0
  109. package/lib/manifest/definitions/action.js +25 -0
  110. package/lib/manifest/definitions/action.js.map +1 -0
  111. package/lib/manifest/definitions/action.mjs +22 -0
  112. package/lib/manifest/definitions/action.mjs.map +1 -0
  113. package/lib/manifest/definitions/agent.d.mts +51 -0
  114. package/lib/manifest/definitions/agent.d.mts.map +1 -0
  115. package/lib/manifest/definitions/agent.d.ts +51 -0
  116. package/lib/manifest/definitions/agent.d.ts.map +1 -0
  117. package/lib/manifest/definitions/agent.js +65 -0
  118. package/lib/manifest/definitions/agent.js.map +1 -0
  119. package/lib/manifest/definitions/agent.mjs +59 -0
  120. package/lib/manifest/definitions/agent.mjs.map +1 -0
  121. package/lib/manifest/definitions/app.d.mts +3 -0
  122. package/lib/manifest/definitions/app.d.mts.map +1 -0
  123. package/lib/manifest/definitions/app.d.ts +3 -0
  124. package/lib/manifest/definitions/app.d.ts.map +1 -0
  125. package/lib/manifest/definitions/app.js +14 -0
  126. package/lib/manifest/definitions/app.js.map +1 -0
  127. package/lib/manifest/definitions/app.mjs +11 -0
  128. package/lib/manifest/definitions/app.mjs.map +1 -0
  129. package/lib/manifest/definitions/category.d.mts +9 -0
  130. package/lib/manifest/definitions/category.d.mts.map +1 -0
  131. package/lib/manifest/definitions/category.d.ts +9 -0
  132. package/lib/manifest/definitions/category.d.ts.map +1 -0
  133. package/lib/manifest/definitions/category.js +27 -0
  134. package/lib/manifest/definitions/category.js.map +1 -0
  135. package/lib/manifest/definitions/category.mjs +23 -0
  136. package/lib/manifest/definitions/category.mjs.map +1 -0
  137. package/lib/manifest/definitions/component.d.mts +101 -0
  138. package/lib/manifest/definitions/component.d.mts.map +1 -0
  139. package/lib/manifest/definitions/component.d.ts +101 -0
  140. package/lib/manifest/definitions/component.d.ts.map +1 -0
  141. package/lib/manifest/definitions/component.js +106 -0
  142. package/lib/manifest/definitions/component.js.map +1 -0
  143. package/lib/manifest/definitions/component.mjs +97 -0
  144. package/lib/manifest/definitions/component.mjs.map +1 -0
  145. package/lib/manifest/definitions/custom-field-section.d.mts +13 -0
  146. package/lib/manifest/definitions/custom-field-section.d.mts.map +1 -0
  147. package/lib/manifest/definitions/custom-field-section.d.ts +13 -0
  148. package/lib/manifest/definitions/custom-field-section.d.ts.map +1 -0
  149. package/lib/manifest/definitions/custom-field-section.js +15 -0
  150. package/lib/manifest/definitions/custom-field-section.js.map +1 -0
  151. package/lib/manifest/definitions/custom-field-section.mjs +12 -0
  152. package/lib/manifest/definitions/custom-field-section.mjs.map +1 -0
  153. package/lib/manifest/definitions/custom-field.d.mts +10 -0
  154. package/lib/manifest/definitions/custom-field.d.mts.map +1 -0
  155. package/lib/manifest/definitions/custom-field.d.ts +10 -0
  156. package/lib/manifest/definitions/custom-field.d.ts.map +1 -0
  157. package/lib/manifest/definitions/custom-field.js +18 -0
  158. package/lib/manifest/definitions/custom-field.js.map +1 -0
  159. package/lib/manifest/definitions/custom-field.mjs +15 -0
  160. package/lib/manifest/definitions/custom-field.mjs.map +1 -0
  161. package/lib/manifest/definitions/custom-object.d.mts +162 -0
  162. package/lib/manifest/definitions/custom-object.d.mts.map +1 -0
  163. package/lib/manifest/definitions/custom-object.d.ts +162 -0
  164. package/lib/manifest/definitions/custom-object.d.ts.map +1 -0
  165. package/lib/manifest/definitions/custom-object.js +412 -0
  166. package/lib/manifest/definitions/custom-object.js.map +1 -0
  167. package/lib/manifest/definitions/custom-object.mjs +386 -0
  168. package/lib/manifest/definitions/custom-object.mjs.map +1 -0
  169. package/lib/manifest/definitions/custom-skill.d.mts +8 -0
  170. package/lib/manifest/definitions/custom-skill.d.mts.map +1 -0
  171. package/lib/manifest/definitions/custom-skill.d.ts +8 -0
  172. package/lib/manifest/definitions/custom-skill.d.ts.map +1 -0
  173. package/lib/manifest/definitions/custom-skill.js +15 -0
  174. package/lib/manifest/definitions/custom-skill.js.map +1 -0
  175. package/lib/manifest/definitions/custom-skill.mjs +12 -0
  176. package/lib/manifest/definitions/custom-skill.mjs.map +1 -0
  177. package/lib/manifest/definitions/field-section.d.mts +7 -0
  178. package/lib/manifest/definitions/field-section.d.mts.map +1 -0
  179. package/lib/manifest/definitions/field-section.d.ts +7 -0
  180. package/lib/manifest/definitions/field-section.d.ts.map +1 -0
  181. package/lib/manifest/definitions/field-section.js +16 -0
  182. package/lib/manifest/definitions/field-section.js.map +1 -0
  183. package/lib/manifest/definitions/field-section.mjs +13 -0
  184. package/lib/manifest/definitions/field-section.mjs.map +1 -0
  185. package/lib/manifest/definitions/field.d.mts +38 -0
  186. package/lib/manifest/definitions/field.d.mts.map +1 -0
  187. package/lib/manifest/definitions/field.d.ts +38 -0
  188. package/lib/manifest/definitions/field.d.ts.map +1 -0
  189. package/lib/manifest/definitions/field.js +50 -0
  190. package/lib/manifest/definitions/field.js.map +1 -0
  191. package/lib/manifest/definitions/field.mjs +45 -0
  192. package/lib/manifest/definitions/field.mjs.map +1 -0
  193. package/lib/manifest/definitions/function.d.mts +61 -0
  194. package/lib/manifest/definitions/function.d.mts.map +1 -0
  195. package/lib/manifest/definitions/function.d.ts +61 -0
  196. package/lib/manifest/definitions/function.d.ts.map +1 -0
  197. package/lib/manifest/definitions/function.js +79 -0
  198. package/lib/manifest/definitions/function.js.map +1 -0
  199. package/lib/manifest/definitions/function.mjs +73 -0
  200. package/lib/manifest/definitions/function.mjs.map +1 -0
  201. package/lib/manifest/definitions/index.d.mts +22 -0
  202. package/lib/manifest/definitions/index.d.mts.map +1 -0
  203. package/lib/manifest/definitions/index.d.ts +22 -0
  204. package/lib/manifest/definitions/index.d.ts.map +1 -0
  205. package/lib/manifest/definitions/index.js +64 -0
  206. package/lib/manifest/definitions/index.js.map +1 -0
  207. package/lib/manifest/definitions/index.mjs +22 -0
  208. package/lib/manifest/definitions/index.mjs.map +1 -0
  209. package/lib/manifest/definitions/list-view.d.mts +9 -0
  210. package/lib/manifest/definitions/list-view.d.mts.map +1 -0
  211. package/lib/manifest/definitions/list-view.d.ts +9 -0
  212. package/lib/manifest/definitions/list-view.d.ts.map +1 -0
  213. package/lib/manifest/definitions/list-view.js +25 -0
  214. package/lib/manifest/definitions/list-view.js.map +1 -0
  215. package/lib/manifest/definitions/list-view.mjs +22 -0
  216. package/lib/manifest/definitions/list-view.mjs.map +1 -0
  217. package/lib/manifest/definitions/object-search-config.d.mts +13 -0
  218. package/lib/manifest/definitions/object-search-config.d.mts.map +1 -0
  219. package/lib/manifest/definitions/object-search-config.d.ts +13 -0
  220. package/lib/manifest/definitions/object-search-config.d.ts.map +1 -0
  221. package/lib/manifest/definitions/object-search-config.js +25 -0
  222. package/lib/manifest/definitions/object-search-config.js.map +1 -0
  223. package/lib/manifest/definitions/object-search-config.mjs +22 -0
  224. package/lib/manifest/definitions/object-search-config.mjs.map +1 -0
  225. package/lib/manifest/definitions/object-settings.d.mts +24 -0
  226. package/lib/manifest/definitions/object-settings.d.mts.map +1 -0
  227. package/lib/manifest/definitions/object-settings.d.ts +24 -0
  228. package/lib/manifest/definitions/object-settings.d.ts.map +1 -0
  229. package/lib/manifest/definitions/object-settings.js +32 -0
  230. package/lib/manifest/definitions/object-settings.js.map +1 -0
  231. package/lib/manifest/definitions/object-settings.mjs +29 -0
  232. package/lib/manifest/definitions/object-settings.mjs.map +1 -0
  233. package/lib/manifest/definitions/page-layout.d.mts +21 -0
  234. package/lib/manifest/definitions/page-layout.d.mts.map +1 -0
  235. package/lib/manifest/definitions/page-layout.d.ts +21 -0
  236. package/lib/manifest/definitions/page-layout.d.ts.map +1 -0
  237. package/lib/manifest/definitions/page-layout.js +155 -0
  238. package/lib/manifest/definitions/page-layout.js.map +1 -0
  239. package/lib/manifest/definitions/page-layout.mjs +152 -0
  240. package/lib/manifest/definitions/page-layout.mjs.map +1 -0
  241. package/lib/manifest/definitions/page.d.mts +8 -0
  242. package/lib/manifest/definitions/page.d.mts.map +1 -0
  243. package/lib/manifest/definitions/page.d.ts +8 -0
  244. package/lib/manifest/definitions/page.d.ts.map +1 -0
  245. package/lib/manifest/definitions/page.js +15 -0
  246. package/lib/manifest/definitions/page.js.map +1 -0
  247. package/lib/manifest/definitions/page.mjs +12 -0
  248. package/lib/manifest/definitions/page.mjs.map +1 -0
  249. package/lib/manifest/definitions/record-triggered-flow.d.mts +24 -0
  250. package/lib/manifest/definitions/record-triggered-flow.d.mts.map +1 -0
  251. package/lib/manifest/definitions/record-triggered-flow.d.ts +24 -0
  252. package/lib/manifest/definitions/record-triggered-flow.d.ts.map +1 -0
  253. package/lib/manifest/definitions/record-triggered-flow.js +28 -0
  254. package/lib/manifest/definitions/record-triggered-flow.js.map +1 -0
  255. package/lib/manifest/definitions/record-triggered-flow.mjs +25 -0
  256. package/lib/manifest/definitions/record-triggered-flow.mjs.map +1 -0
  257. package/lib/manifest/definitions/validation.d.mts +8 -0
  258. package/lib/manifest/definitions/validation.d.mts.map +1 -0
  259. package/lib/manifest/definitions/validation.d.ts +8 -0
  260. package/lib/manifest/definitions/validation.d.ts.map +1 -0
  261. package/lib/manifest/definitions/validation.js +24 -0
  262. package/lib/manifest/definitions/validation.js.map +1 -0
  263. package/lib/manifest/definitions/validation.mjs +21 -0
  264. package/lib/manifest/definitions/validation.mjs.map +1 -0
  265. package/lib/manifest/definitions/workflow.d.mts +10 -0
  266. package/lib/manifest/definitions/workflow.d.mts.map +1 -0
  267. package/lib/manifest/definitions/workflow.d.ts +10 -0
  268. package/lib/manifest/definitions/workflow.d.ts.map +1 -0
  269. package/lib/manifest/definitions/workflow.js +33 -0
  270. package/lib/manifest/definitions/workflow.js.map +1 -0
  271. package/lib/manifest/definitions/workflow.mjs +29 -0
  272. package/lib/manifest/definitions/workflow.mjs.map +1 -0
  273. package/lib/manifest/index.d.mts +3 -0
  274. package/lib/manifest/index.d.mts.map +1 -1
  275. package/lib/manifest/index.d.ts +3 -0
  276. package/lib/manifest/index.d.ts.map +1 -1
  277. package/lib/manifest/index.js +4 -0
  278. package/lib/manifest/index.js.map +1 -1
  279. package/lib/manifest/index.mjs +3 -0
  280. package/lib/manifest/index.mjs.map +1 -1
  281. package/lib/manifest/package-manifest.d.mts +17 -0
  282. package/lib/manifest/package-manifest.d.mts.map +1 -0
  283. package/lib/manifest/package-manifest.d.ts +17 -0
  284. package/lib/manifest/package-manifest.d.ts.map +1 -0
  285. package/lib/manifest/package-manifest.js +26 -0
  286. package/lib/manifest/package-manifest.js.map +1 -0
  287. package/lib/manifest/package-manifest.mjs +23 -0
  288. package/lib/manifest/package-manifest.mjs.map +1 -0
  289. package/package.json +4 -2
  290. package/resources/index.d.mts +1 -0
  291. package/resources/index.d.mts.map +1 -1
  292. package/resources/index.d.ts +1 -0
  293. package/resources/index.d.ts.map +1 -1
  294. package/resources/index.js +4 -2
  295. package/resources/index.js.map +1 -1
  296. package/resources/index.mjs +1 -0
  297. package/resources/index.mjs.map +1 -1
  298. package/resources/reimbursements.d.mts +1 -1
  299. package/resources/reimbursements.d.ts +1 -1
  300. package/resources/reimbursements.js +1 -1
  301. package/resources/reimbursements.mjs +1 -1
  302. package/resources/spend-categories.d.mts +140 -0
  303. package/resources/spend-categories.d.mts.map +1 -0
  304. package/resources/spend-categories.d.ts +140 -0
  305. package/resources/spend-categories.d.ts.map +1 -0
  306. package/resources/spend-categories.js +83 -0
  307. package/resources/spend-categories.js.map +1 -0
  308. package/resources/spend-categories.mjs +79 -0
  309. package/resources/spend-categories.mjs.map +1 -0
  310. package/src/client.ts +41 -0
  311. package/src/index.ts +17 -0
  312. package/src/lib/charts/README.md +35 -28
  313. package/src/lib/charts/agent-reference.md +73 -0
  314. package/src/lib/charts/builders.ts +51 -35
  315. package/src/lib/charts/capabilities.json +96 -0
  316. package/src/lib/charts/describe.ts +31 -29
  317. package/src/lib/charts/errors.ts +2 -6
  318. package/src/lib/charts/evaluate.ts +25 -38
  319. package/src/lib/charts/schema.ts +232 -66
  320. package/src/lib/charts/types.ts +42 -31
  321. package/src/lib/charts/visualization-grammar.ts +67 -0
  322. package/src/lib/charts/vocabulary.ts +7 -0
  323. package/src/lib/charts.ts +8 -1
  324. package/src/lib/manifest/composition.ts +133 -0
  325. package/src/lib/manifest/definitions/README.md +89 -0
  326. package/src/lib/manifest/definitions/_object-records.ts +218 -0
  327. package/src/lib/manifest/definitions/action.ts +31 -0
  328. package/src/lib/manifest/definitions/agent.ts +149 -0
  329. package/src/lib/manifest/definitions/app.ts +12 -0
  330. package/src/lib/manifest/definitions/category.ts +35 -0
  331. package/src/lib/manifest/definitions/component.ts +241 -0
  332. package/src/lib/manifest/definitions/custom-field-section.ts +39 -0
  333. package/src/lib/manifest/definitions/custom-field.ts +32 -0
  334. package/src/lib/manifest/definitions/custom-object.ts +786 -0
  335. package/src/lib/manifest/definitions/custom-skill.ts +28 -0
  336. package/src/lib/manifest/definitions/field-section.ts +31 -0
  337. package/src/lib/manifest/definitions/field.ts +119 -0
  338. package/src/lib/manifest/definitions/function.ts +198 -0
  339. package/src/lib/manifest/definitions/index.ts +91 -0
  340. package/src/lib/manifest/definitions/list-view.ts +48 -0
  341. package/src/lib/manifest/definitions/object-search-config.ts +44 -0
  342. package/src/lib/manifest/definitions/object-settings.ts +61 -0
  343. package/src/lib/manifest/definitions/page-layout.ts +218 -0
  344. package/src/lib/manifest/definitions/page.ts +28 -0
  345. package/src/lib/manifest/definitions/record-triggered-flow.ts +71 -0
  346. package/src/lib/manifest/definitions/validation.ts +46 -0
  347. package/src/lib/manifest/definitions/workflow.ts +62 -0
  348. package/src/lib/manifest/index.ts +4 -0
  349. package/src/lib/manifest/package-manifest.ts +40 -0
  350. package/src/resources/index.ts +7 -0
  351. package/src/resources/reimbursements.ts +1 -1
  352. package/src/resources/spend-categories.ts +175 -0
  353. package/src/version.ts +1 -1
  354. package/version.d.mts +1 -1
  355. package/version.d.ts +1 -1
  356. package/version.js +1 -1
  357. package/version.mjs +1 -1
  358. package/lib/charts/guards.d.mts +0 -15
  359. package/lib/charts/guards.d.mts.map +0 -1
  360. package/lib/charts/guards.d.ts +0 -15
  361. package/lib/charts/guards.d.ts.map +0 -1
  362. package/lib/charts/guards.js +0 -38
  363. package/lib/charts/guards.js.map +0 -1
  364. package/lib/charts/guards.mjs +0 -34
  365. package/lib/charts/guards.mjs.map +0 -1
  366. package/src/lib/charts/guards.ts +0 -42
@@ -0,0 +1,412 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.not = exports.or = exports.and = exports.isNotNull = exports.isNull = exports.notInArray = exports.inArray = exports.gte = exports.gt = exports.lte = exports.lt = exports.ne = exports.eq = void 0;
4
+ exports.defineCustomObject = defineCustomObject;
5
+ exports.extendCustomObject = extendCustomObject;
6
+ exports.createObjectClient = createObjectClient;
7
+ exports.scopedDefinition = scopedDefinition;
8
+ exports.fieldReferences = fieldReferences;
9
+ exports.trackFieldSection = trackFieldSection;
10
+ exports.fieldSectionReferences = fieldSectionReferences;
11
+ exports.manifestSection = manifestSection;
12
+ exports.manifestObject = manifestObject;
13
+ exports.manifestField = manifestField;
14
+ const provisioning_1 = require("../../../core/platform/custom-objects/provisioning.js");
15
+ const category_1 = require("../category.js");
16
+ const custom_object_1 = require("../custom-object.js");
17
+ const field_1 = require("../field.js");
18
+ const custom_object_field_section_1 = require("../custom-object-field-section.js");
19
+ const custom_object_page_layout_1 = require("../custom-object-page-layout.js");
20
+ const definition_1 = require("../../../core/platform/custom-objects/definition.js");
21
+ const rql_1 = require("../../../core/platform/custom-objects/rql.js");
22
+ const category_2 = require("./category.js");
23
+ const component_1 = require("./component.js");
24
+ const _object_records_1 = require("./_object-records.js");
25
+ function defineCustomObject(props) {
26
+ const apiName = props['apiName'];
27
+ (0, component_1.validateCustomApiName)(apiName);
28
+ const name = apiName.slice(0, -3);
29
+ const sourceFields = props['fields'];
30
+ const fields = normalizeFieldNames(sourceFields);
31
+ validateSections(props['sections']);
32
+ const category = props['category'] ??
33
+ (0, category_2.defineCategory)({
34
+ apiName: `${name}_category__c`,
35
+ name: props['name'],
36
+ description: props['description'],
37
+ });
38
+ (0, component_1.validateCustomApiName)(typeof category === 'string' ? category : category.apiName);
39
+ const definition = (0, definition_1.defineCustomObject)({
40
+ ...props,
41
+ name,
42
+ displayName: props['name'],
43
+ ...(props['pluralName'] === undefined ? {} : { pluralLabel: props['pluralName'] }),
44
+ category: typeof category === 'string' ? category.slice(0, -3) : category,
45
+ fields,
46
+ });
47
+ return customObjectComponent.register(withInputs(definition, Object.keys(sourceFields)), props);
48
+ }
49
+ /** Existing extension semantics, with the same additive field tokens and parsers. */
50
+ function extendCustomObject(base, extension) {
51
+ const fields = normalizeFieldNames(base.fields);
52
+ const addedFields = normalizeFieldNames(extension.fields ?? {});
53
+ validateSections(extension.sections);
54
+ for (const key of Object.keys(extension.fields ?? {})) {
55
+ if (Object.prototype.hasOwnProperty.call(fields, key.replace(/__c$/, '')))
56
+ throw new Error(`Cannot replace existing custom field ${key} on ${base.apiName}.`);
57
+ }
58
+ const definition = (0, definition_1.extendCustomObject)({ ...base, fields }, { ...extension, fields: addedFields });
59
+ const keys = [...Object.keys(base.fields), ...Object.keys(extension.fields ?? {})];
60
+ return extendedObjectComponent.register(withInputs(definition, keys), base, extension);
61
+ }
62
+ const eq = (field, value) => query.eq(field, value);
63
+ exports.eq = eq;
64
+ const ne = (field, value) => query.ne(field, value);
65
+ exports.ne = ne;
66
+ const lt = (field, value) => query.lt(field, value);
67
+ exports.lt = lt;
68
+ const lte = (field, value) => query.lte(field, value);
69
+ exports.lte = lte;
70
+ const gt = (field, value) => query.gt(field, value);
71
+ exports.gt = gt;
72
+ const gte = (field, value) => query.gte(field, value);
73
+ exports.gte = gte;
74
+ const inArray = (field, values) => query.in(field, values);
75
+ exports.inArray = inArray;
76
+ const notInArray = (field, values) => query.notIn(field, values);
77
+ exports.notInArray = notInArray;
78
+ const isNull = (field) => query.isNull(field);
79
+ exports.isNull = isNull;
80
+ const isNotNull = (field) => query.isNotNull(field);
81
+ exports.isNotNull = isNotNull;
82
+ const and = (first, ...rest) => query.and(first, ...rest);
83
+ exports.and = and;
84
+ const or = (first, ...rest) => query.or(first, ...rest);
85
+ exports.or = or;
86
+ const not = (filter) => query.not(filter);
87
+ exports.not = not;
88
+ /** Enrich the existing immutable schema; normalization and validation stay in the existing factory. */
89
+ function withInputs(definition, keys = Object.keys(definition.fields)) {
90
+ const fields = Object.freeze(Object.fromEntries(keys.map((key) => [
91
+ key,
92
+ Object.freeze({
93
+ ...definition.fields[key.replace(/__c$/, '')],
94
+ logicalName: key,
95
+ objectApiName: definition.apiName,
96
+ }),
97
+ ])));
98
+ const enriched = { ...definition, fields };
99
+ const parser = (operation) => ({
100
+ parse(value) {
101
+ if (value == null || typeof value !== 'object' || Array.isArray(value))
102
+ throw new TypeError('Expected a record object.');
103
+ (0, _object_records_1.assertObjectInput)(enriched, value, operation);
104
+ return value;
105
+ },
106
+ });
107
+ return Object.freeze({
108
+ ...enriched,
109
+ ...createObjectOperations(enriched),
110
+ fields,
111
+ inputs: Object.freeze({
112
+ create: parser('create'),
113
+ update: parser('update'),
114
+ }),
115
+ });
116
+ }
117
+ function normalizeFieldNames(fields) {
118
+ return Object.fromEntries(Object.entries(fields).map(([apiName, field]) => {
119
+ (0, component_1.validateCustomApiName)(apiName);
120
+ return [apiName.slice(0, -3), field];
121
+ }));
122
+ }
123
+ function validateSections(sections = {}) {
124
+ for (const [apiName, section] of Object.entries(sections)) {
125
+ (0, component_1.validateCustomApiName)(apiName);
126
+ if (section.sectionId !== undefined)
127
+ (0, component_1.validateCustomApiName)(section.sectionId);
128
+ }
129
+ }
130
+ /** Operations capture only the definition; each call supplies its own authenticated transport. */
131
+ function createObjectOperations(definition) {
132
+ return {
133
+ records: (0, _object_records_1.createObjectRecords)(definition),
134
+ schema: Object.freeze({
135
+ retrieve: (ctx, options) => ctx.customObjects.retrieve(definition.apiName, options),
136
+ fields: Object.freeze({
137
+ list: (ctx, params, options) => ctx.customObjects.fields.list(definition.apiName, params, options),
138
+ }),
139
+ }),
140
+ };
141
+ }
142
+ /** @internal Forward client helpers to the definition operations. */
143
+ function createObjectClient(ctx, definition) {
144
+ const { records, schema } = createObjectOperations(definition);
145
+ return {
146
+ create: (input) => records.create(ctx, input),
147
+ createMany: (rows, options) => records.createMany(ctx, rows, options),
148
+ get: (recordID) => records.get(ctx, recordID),
149
+ getByExternalID: (externalID) => records.getByExternalID(ctx, externalID),
150
+ update: (recordID, patch) => records.update(ctx, recordID, patch),
151
+ updateMany: (rows, options) => records.updateMany(ctx, rows, options),
152
+ delete: (recordID) => records.delete(ctx, recordID),
153
+ deleteMany: (recordIDs, options) => records.deleteMany(ctx, recordIDs, options),
154
+ list: (options) => records.list(ctx, options),
155
+ query: (options) => records.query(ctx, options),
156
+ schema: { retrieve: (options) => schema.retrieve(ctx, options) },
157
+ fields: {
158
+ list: (params, options) => schema.fields.list(ctx, params, options),
159
+ },
160
+ };
161
+ }
162
+ // Reuse the existing operators, carrying the schema's object identity through typed filters.
163
+ const query = (0, rql_1.createRqlHelpers)({ fields: {} });
164
+ function scopedDefinition(_object, definition) {
165
+ return definition;
166
+ }
167
+ /** A complete schema is a local dependency; an identity-only target names an existing resource. */
168
+ function isObjectDefinition(value) {
169
+ return 'fields' in value && 'nameField' in value && 'categoryApiName' in value;
170
+ }
171
+ function fieldReferences(owner, field) {
172
+ return [typeof field === 'object' && 'getApiName' in field ? field : owner];
173
+ }
174
+ const currentFieldSections = new WeakMap();
175
+ /** Keep dependency collection in sync with layout-driven field moves. */
176
+ function trackFieldSection(field, section) {
177
+ currentFieldSections.set(field, section);
178
+ const assignSection = field._assignSection.bind(field);
179
+ field._assignSection = (section) => {
180
+ assignSection(section);
181
+ currentFieldSections.set(field, typeof section === 'string' ? undefined : section);
182
+ };
183
+ return field;
184
+ }
185
+ function fieldSectionReferences(field) {
186
+ const section = currentFieldSections.get(field);
187
+ // Schema-owned sections are emitted by the object compiler; authored sections are dependencies.
188
+ return section != null && (0, component_1.registeredComponent)(section) != null ? [section] : [];
189
+ }
190
+ /** Shared by section serialization and authored/default conflict detection. */
191
+ function fieldSectionApiName(definition, key) {
192
+ const apiName = definition.sections[key]?.sectionId ?? key;
193
+ (0, component_1.validateCustomApiName)(apiName);
194
+ return apiName;
195
+ }
196
+ /** Reuse the typed SDK's field compiler and the metadata SDK's serializers. */
197
+ function objectMetadata(definition) {
198
+ const existing = registrations.get(definition);
199
+ if (existing != null)
200
+ return existing;
201
+ if (definition.ownerRole != null ||
202
+ definition.enableHistory != null ||
203
+ Object.values(definition.fields).some((field) => field.enableHistory != null || field.restSection != null || field.rqlDefinition != null))
204
+ throw new Error('REST-only object options cannot be compiled to metadata.');
205
+ const category = new category_1.Category(component_1.detachedManifestScope, {
206
+ apiName: definition.categoryApiName,
207
+ name: definition.categoryDefinition?.displayName ?? definition.category,
208
+ description: definition.categoryDefinition?.description ?? '',
209
+ });
210
+ const components = [];
211
+ const object = new custom_object_1.CustomObject({
212
+ _register(component) {
213
+ components.push(component);
214
+ },
215
+ }, {
216
+ apiName: definition.apiName,
217
+ name: definition.displayName,
218
+ category,
219
+ description: definition.description,
220
+ ...(definition.pluralLabel == null ? {} : { pluralLabel: definition.pluralLabel }),
221
+ ...(definition.icon == null ? {} : { icon: definition.icon }),
222
+ nameFieldDetails: (0, provisioning_1.buildCustomObjectNameFieldDetails)(definition) ?? null,
223
+ });
224
+ const sections = Object.fromEntries(Object.entries(definition.sections).map(([key, section]) => {
225
+ const apiName = fieldSectionApiName(definition, key);
226
+ return [
227
+ key,
228
+ (0, component_1.withApiName)(new custom_object_field_section_1.CustomObjectFieldSection(object, { name: section.name, sectionId: apiName }), apiName),
229
+ ];
230
+ }));
231
+ const needsFallback = Object.keys(sections).length === 0 ||
232
+ Object.values(definition.fields).some((field) => field.section == null);
233
+ const generalKey = `${definition.name}_general__c`;
234
+ const defaultSectionApiName = fieldSectionApiName(definition, generalKey);
235
+ const defaultSection = needsFallback ?
236
+ sections[generalKey] ??
237
+ (0, component_1.withApiName)(new custom_object_field_section_1.CustomObjectFieldSection(object, { name: 'General', sectionId: defaultSectionApiName }), defaultSectionApiName)
238
+ : undefined;
239
+ const firstSection = defaultSection ?? Object.values(sections)[0];
240
+ (0, component_1.withApiName)(object, definition.apiName, { default_field_section_api_name: firstSection.getSectionId() });
241
+ // Provisioning needs section handles; here they are deterministic API names instead of destination IDs.
242
+ const provisionable = {
243
+ ...definition,
244
+ sections: Object.fromEntries(Object.entries(sections).map(([key, section]) => [
245
+ key,
246
+ { name: section.getName(), sectionId: section.getSectionId() },
247
+ ])),
248
+ };
249
+ const fields = Object.fromEntries(Object.entries(definition.fields).map(([key, field]) => {
250
+ const section = field.section == null ? defaultSection : sections[field.section];
251
+ if (section == null)
252
+ throw new Error(`Unknown section ${field.section} on ${definition.apiName}.`);
253
+ const { create } = (0, provisioning_1.buildProvisionableFieldParams)(provisionable, key);
254
+ return [
255
+ key,
256
+ trackFieldSection(new field_1.Field(object, {
257
+ apiName: field.apiName,
258
+ displayName: field.displayName,
259
+ description: field.description,
260
+ section,
261
+ dataType: create.data_type,
262
+ required: field.writable ? field.required : null,
263
+ unique: create.is_unique ?? null,
264
+ derivedFieldFormula: create.derived_field_formula ?? null,
265
+ ...(field.formulaAttributeMetas == null ? {} : { formulaAttrMetas: field.formulaAttributeMetas }),
266
+ ...(field.derivedAggregatedField == null ?
267
+ {}
268
+ : { derivedAggregatedField: field.derivedAggregatedField }),
269
+ }), section),
270
+ ];
271
+ }));
272
+ const layoutSections = [
273
+ ...new Set([...Object.values(sections), ...(defaultSection == null ? [] : [defaultSection])]),
274
+ ];
275
+ const layout = (0, component_1.withApiName)(new custom_object_page_layout_1.CustomObjectPageLayout(object, {
276
+ apiName: 'default',
277
+ layoutId: 'default',
278
+ name: `${definition.displayName} Layout`,
279
+ tabEdits: {
280
+ newTabs: [
281
+ {
282
+ key: 'details',
283
+ name: 'Details',
284
+ type: 'tab_with_sections',
285
+ sections: layoutSections.map((section, index) => ({
286
+ name: section.getName(),
287
+ type: 'fields_section',
288
+ section,
289
+ fields: [
290
+ ...(index === 0 ? [object.standardFields.name] : []),
291
+ ...Object.values(fields).filter((field) => field.getSectionId() === section.getSectionId()),
292
+ ],
293
+ })),
294
+ },
295
+ ],
296
+ systemTabEdits: {},
297
+ tabsOrder: ['details'],
298
+ },
299
+ }), 'default');
300
+ const metadata = {
301
+ object,
302
+ sections,
303
+ defaultSection,
304
+ fields,
305
+ layout,
306
+ components: [...components],
307
+ defaultFieldSectionApiName: firstSection.getSectionId(),
308
+ };
309
+ registrations.set(definition, metadata);
310
+ return metadata;
311
+ }
312
+ const registrations = new WeakMap();
313
+ function manifestSection(object, reference) {
314
+ if (typeof reference !== 'string') {
315
+ if (reference.getModelApiName() !== manifestObject(object).getApiName())
316
+ throw new Error('Section reference belongs to another object.');
317
+ return reference;
318
+ }
319
+ const registration = objectMetadata(object);
320
+ const section = registration.sections[reference] ?? (reference === 'general' ? registration.defaultSection : undefined);
321
+ if (section == null)
322
+ throw new Error(`Unknown section ${reference} on ${object.apiName}.`);
323
+ return section;
324
+ }
325
+ /** References and compilation reuse one materialized schema; authored children remain explicit roots. */
326
+ function manifestObject(reference) {
327
+ return objectMetadata(reference).object;
328
+ }
329
+ /** Adapts a typed schema field to the existing layout, view, and rule component APIs. */
330
+ function manifestField(object, field) {
331
+ const metadata = objectMetadata(object);
332
+ const resolved = metadata.object;
333
+ const candidate = field;
334
+ if (typeof candidate === 'string')
335
+ return resolved.standardField(candidate);
336
+ if ('getApiName' in candidate) {
337
+ if (candidate.getCustomObjectApiName() !== resolved.getApiName())
338
+ throw new Error('Field reference belongs to another object.');
339
+ return candidate;
340
+ }
341
+ if ('objectApiName' in candidate && candidate.objectApiName !== object.apiName)
342
+ throw new Error('Field reference belongs to another object.');
343
+ const registered = metadata.fields[candidate.logicalName];
344
+ if (registered == null)
345
+ throw new Error(`Unknown field ${candidate.logicalName} on ${object.apiName}.`);
346
+ return registered;
347
+ }
348
+ const behavior = {
349
+ type: 'CUSTOM_OBJECT',
350
+ references(definition) {
351
+ const category = definition.categoryDefinition;
352
+ if (category != null && (0, component_1.registeredComponent)(category) == null)
353
+ category_2.categoryComponent.register(category, category);
354
+ return () => [
355
+ ...(category == null ? [] : [category]),
356
+ ...Object.values(registrations.get(definition)?.fields ?? {}).flatMap(fieldSectionReferences),
357
+ ...Object.values(definition.fields).flatMap((field) => field.kind === 'lookup' || field.kind === 'parent-child' ?
358
+ isObjectDefinition(field.target) ? [field.target]
359
+ : []
360
+ : []),
361
+ ];
362
+ },
363
+ compileBatch(definitions, context) {
364
+ const categories = new Set(context.definitions
365
+ .filter((definition) => (0, component_1.registeredComponent)(definition)?.type === 'CUSTOM_CATEGORY')
366
+ .flatMap((definition) => ('apiName' in definition ? [definition.apiName] : [])));
367
+ // Generate defaults from the complete schema, including base definitions reached through children.
368
+ const schemas = new Map();
369
+ for (const definition of definitions) {
370
+ const previous = schemas.get(definition.apiName);
371
+ if (previous == null) {
372
+ schemas.set(definition.apiName, definition);
373
+ continue;
374
+ }
375
+ schemas.set(definition.apiName, {
376
+ ...previous,
377
+ sections: { ...previous.sections, ...definition.sections },
378
+ fields: Object.fromEntries([...Object.values(previous.fields), ...Object.values(definition.fields)].map((field) => [
379
+ field.apiName,
380
+ field,
381
+ ])),
382
+ });
383
+ }
384
+ const defaults = new Map([...schemas].map(([apiName, schema]) => [apiName, objectMetadata(schema)]));
385
+ return definitions.flatMap((definition) => {
386
+ if (!categories.has(definition.categoryApiName))
387
+ throw new Error(`Include a category definition for ${definition.categoryApiName}, or use a typed category in ${definition.apiName}.`);
388
+ const generated = defaults.get(definition.apiName);
389
+ const authoredSections = new Set(Object.keys(definition.sections).map((key) => fieldSectionApiName(definition, key)));
390
+ const metadata = objectMetadata(definition);
391
+ return metadata.components.map((component) => {
392
+ const config = (component === metadata.layout ? generated.layout : component).toDict();
393
+ if (component === metadata.object)
394
+ config['default_field_section_api_name'] = generated.defaultFieldSectionApiName;
395
+ return {
396
+ config: config,
397
+ fallback: component === metadata.layout ||
398
+ (component === metadata.defaultSection && !authoredSections.has(config['api_name'])),
399
+ };
400
+ });
401
+ });
402
+ },
403
+ };
404
+ const customObjectComponent = (0, component_1.defineComponent)({
405
+ ...behavior,
406
+ define: defineCustomObject,
407
+ });
408
+ const extendedObjectComponent = (0, component_1.defineComponent)({
409
+ ...behavior,
410
+ define: extendCustomObject,
411
+ });
412
+ //# sourceMappingURL=custom-object.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-object.js","sourceRoot":"","sources":["../../../src/lib/manifest/definitions/custom-object.ts"],"names":[],"mappings":"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"}