@servicenow/sdk-build-plugins 4.2.0 → 4.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (349) hide show
  1. package/dist/acl-plugin.js +11 -0
  2. package/dist/acl-plugin.js.map +1 -1
  3. package/dist/applicability-plugin.d.ts +2 -0
  4. package/dist/applicability-plugin.js +72 -0
  5. package/dist/applicability-plugin.js.map +1 -0
  6. package/dist/atf/test-plugin.js +5 -2
  7. package/dist/atf/test-plugin.js.map +1 -1
  8. package/dist/basic-syntax-plugin.js +7 -1
  9. package/dist/basic-syntax-plugin.js.map +1 -1
  10. package/dist/business-rule-plugin.js +1 -0
  11. package/dist/business-rule-plugin.js.map +1 -1
  12. package/dist/call-expression-plugin.js +1 -107
  13. package/dist/call-expression-plugin.js.map +1 -1
  14. package/dist/column/column-to-record.d.ts +10 -3
  15. package/dist/column/column-to-record.js +44 -7
  16. package/dist/column/column-to-record.js.map +1 -1
  17. package/dist/column-plugin.d.ts +3 -1
  18. package/dist/column-plugin.js +12 -12
  19. package/dist/column-plugin.js.map +1 -1
  20. package/dist/dashboard/dashboard-component-property-defaults.d.ts +152 -0
  21. package/dist/dashboard/dashboard-component-property-defaults.js +264 -0
  22. package/dist/dashboard/dashboard-component-property-defaults.js.map +1 -0
  23. package/dist/dashboard/dashboard-component-resolver.d.ts +13 -0
  24. package/dist/dashboard/dashboard-component-resolver.js +69 -0
  25. package/dist/dashboard/dashboard-component-resolver.js.map +1 -0
  26. package/dist/dashboard/dashboard-plugin.d.ts +12 -0
  27. package/dist/dashboard/dashboard-plugin.js +397 -0
  28. package/dist/dashboard/dashboard-plugin.js.map +1 -0
  29. package/dist/data-plugin.d.ts +3 -0
  30. package/dist/data-plugin.js +61 -113
  31. package/dist/data-plugin.js.map +1 -1
  32. package/dist/email-notification-plugin.d.ts +2 -0
  33. package/dist/email-notification-plugin.js +541 -0
  34. package/dist/email-notification-plugin.js.map +1 -0
  35. package/dist/flow/constants/flow-plugin-constants.d.ts +58 -0
  36. package/dist/flow/constants/flow-plugin-constants.js +70 -0
  37. package/dist/flow/constants/flow-plugin-constants.js.map +1 -0
  38. package/dist/flow/flow-logic/flow-logic-constants.d.ts +38 -0
  39. package/dist/flow/flow-logic/flow-logic-constants.js +118 -0
  40. package/dist/flow/flow-logic/flow-logic-constants.js.map +1 -0
  41. package/dist/flow/flow-logic/flow-logic-diagnostics.d.ts +19 -0
  42. package/dist/flow/flow-logic/flow-logic-diagnostics.js +503 -0
  43. package/dist/flow/flow-logic/flow-logic-diagnostics.js.map +1 -0
  44. package/dist/flow/flow-logic/flow-logic-plugin-helpers.d.ts +62 -0
  45. package/dist/flow/flow-logic/flow-logic-plugin-helpers.js +2092 -0
  46. package/dist/flow/flow-logic/flow-logic-plugin-helpers.js.map +1 -0
  47. package/dist/flow/flow-logic/flow-logic-plugin.d.ts +52 -0
  48. package/dist/flow/flow-logic/flow-logic-plugin.js +283 -0
  49. package/dist/flow/flow-logic/flow-logic-plugin.js.map +1 -0
  50. package/dist/flow/flow-logic/flow-logic-shapes.d.ts +104 -0
  51. package/dist/flow/flow-logic/flow-logic-shapes.js +201 -0
  52. package/dist/flow/flow-logic/flow-logic-shapes.js.map +1 -0
  53. package/dist/flow/plugins/approval-rules-plugin.d.ts +2 -0
  54. package/dist/flow/plugins/approval-rules-plugin.js +49 -0
  55. package/dist/flow/plugins/approval-rules-plugin.js.map +1 -0
  56. package/dist/flow/plugins/flow-action-definition-plugin.d.ts +2 -0
  57. package/dist/flow/plugins/flow-action-definition-plugin.js +286 -0
  58. package/dist/flow/plugins/flow-action-definition-plugin.js.map +1 -0
  59. package/dist/flow/plugins/flow-data-pill-plugin.d.ts +9 -0
  60. package/dist/flow/plugins/flow-data-pill-plugin.js +212 -0
  61. package/dist/flow/plugins/flow-data-pill-plugin.js.map +1 -0
  62. package/dist/flow/plugins/flow-definition-plugin.d.ts +2 -0
  63. package/dist/flow/plugins/flow-definition-plugin.js +1668 -0
  64. package/dist/flow/plugins/flow-definition-plugin.js.map +1 -0
  65. package/dist/flow/plugins/flow-diagnostics-plugin.d.ts +26 -0
  66. package/dist/flow/plugins/flow-diagnostics-plugin.js +217 -0
  67. package/dist/flow/plugins/flow-diagnostics-plugin.js.map +1 -0
  68. package/dist/flow/plugins/flow-instance-plugin.d.ts +12 -0
  69. package/dist/flow/plugins/flow-instance-plugin.js +1205 -0
  70. package/dist/flow/plugins/flow-instance-plugin.js.map +1 -0
  71. package/dist/flow/plugins/flow-trigger-instance-plugin.d.ts +2 -0
  72. package/dist/flow/plugins/flow-trigger-instance-plugin.js +338 -0
  73. package/dist/flow/plugins/flow-trigger-instance-plugin.js.map +1 -0
  74. package/dist/flow/plugins/inline-script-plugin.d.ts +39 -0
  75. package/dist/flow/plugins/inline-script-plugin.js +80 -0
  76. package/dist/flow/plugins/inline-script-plugin.js.map +1 -0
  77. package/dist/flow/plugins/step-definition-plugin.d.ts +5 -0
  78. package/dist/flow/plugins/step-definition-plugin.js +71 -0
  79. package/dist/flow/plugins/step-definition-plugin.js.map +1 -0
  80. package/dist/flow/plugins/step-instance-plugin.d.ts +31 -0
  81. package/dist/flow/plugins/step-instance-plugin.js +339 -0
  82. package/dist/flow/plugins/step-instance-plugin.js.map +1 -0
  83. package/dist/flow/plugins/trigger-plugin.d.ts +2 -0
  84. package/dist/flow/plugins/trigger-plugin.js +96 -0
  85. package/dist/flow/plugins/trigger-plugin.js.map +1 -0
  86. package/dist/flow/plugins/wfa-datapill-plugin.d.ts +15 -0
  87. package/dist/flow/plugins/wfa-datapill-plugin.js +178 -0
  88. package/dist/flow/plugins/wfa-datapill-plugin.js.map +1 -0
  89. package/dist/flow/utils/approval-rules-processor.d.ts +13 -0
  90. package/dist/flow/utils/approval-rules-processor.js +267 -0
  91. package/dist/flow/utils/approval-rules-processor.js.map +1 -0
  92. package/dist/flow/utils/built-in-complex-objects.d.ts +19 -0
  93. package/dist/flow/utils/built-in-complex-objects.js +62 -0
  94. package/dist/flow/utils/built-in-complex-objects.js.map +1 -0
  95. package/dist/flow/utils/complex-object-resolver.d.ts +8 -0
  96. package/dist/flow/utils/complex-object-resolver.js +614 -0
  97. package/dist/flow/utils/complex-object-resolver.js.map +1 -0
  98. package/dist/flow/utils/complex-objects.d.ts +36 -0
  99. package/dist/flow/utils/complex-objects.js +481 -0
  100. package/dist/flow/utils/complex-objects.js.map +1 -0
  101. package/dist/flow/utils/data-pill-shapes.d.ts +58 -0
  102. package/dist/flow/utils/data-pill-shapes.js +135 -0
  103. package/dist/flow/utils/data-pill-shapes.js.map +1 -0
  104. package/dist/flow/utils/datapill-transformer.d.ts +110 -0
  105. package/dist/flow/utils/datapill-transformer.js +503 -0
  106. package/dist/flow/utils/datapill-transformer.js.map +1 -0
  107. package/dist/flow/utils/flow-constants.d.ts +72 -0
  108. package/dist/flow/utils/flow-constants.js +230 -0
  109. package/dist/flow/utils/flow-constants.js.map +1 -0
  110. package/dist/flow/utils/flow-io-to-record.d.ts +44 -0
  111. package/dist/flow/utils/flow-io-to-record.js +409 -0
  112. package/dist/flow/utils/flow-io-to-record.js.map +1 -0
  113. package/dist/flow/utils/flow-shapes.d.ts +161 -0
  114. package/dist/flow/utils/flow-shapes.js +255 -0
  115. package/dist/flow/utils/flow-shapes.js.map +1 -0
  116. package/dist/flow/utils/flow-to-xml.d.ts +16 -0
  117. package/dist/flow/utils/flow-to-xml.js +237 -0
  118. package/dist/flow/utils/flow-to-xml.js.map +1 -0
  119. package/dist/flow/utils/flow-variable-processor.d.ts +51 -0
  120. package/dist/flow/utils/flow-variable-processor.js +69 -0
  121. package/dist/flow/utils/flow-variable-processor.js.map +1 -0
  122. package/dist/flow/utils/label-cache-parser.d.ts +7 -0
  123. package/dist/flow/utils/label-cache-parser.js +24 -0
  124. package/dist/flow/utils/label-cache-parser.js.map +1 -0
  125. package/dist/flow/utils/label-cache-processor.d.ts +119 -0
  126. package/dist/flow/utils/label-cache-processor.js +719 -0
  127. package/dist/flow/utils/label-cache-processor.js.map +1 -0
  128. package/dist/flow/utils/pill-string-parser.d.ts +88 -0
  129. package/dist/flow/utils/pill-string-parser.js +306 -0
  130. package/dist/flow/utils/pill-string-parser.js.map +1 -0
  131. package/dist/flow/utils/schema-to-flow-object.d.ts +22 -0
  132. package/dist/flow/utils/schema-to-flow-object.js +318 -0
  133. package/dist/flow/utils/schema-to-flow-object.js.map +1 -0
  134. package/dist/flow/utils/service-catalog.d.ts +47 -0
  135. package/dist/flow/utils/service-catalog.js +137 -0
  136. package/dist/flow/utils/service-catalog.js.map +1 -0
  137. package/dist/flow/utils/utils.d.ts +117 -0
  138. package/dist/flow/utils/utils.js +345 -0
  139. package/dist/flow/utils/utils.js.map +1 -0
  140. package/dist/index.d.ts +20 -1
  141. package/dist/index.js +21 -1
  142. package/dist/index.js.map +1 -1
  143. package/dist/list-plugin.js +1 -1
  144. package/dist/list-plugin.js.map +1 -1
  145. package/dist/now-attach-plugin.d.ts +1 -0
  146. package/dist/now-attach-plugin.js +10 -10
  147. package/dist/now-attach-plugin.js.map +1 -1
  148. package/dist/now-ref-plugin.js +1 -1
  149. package/dist/now-ref-plugin.js.map +1 -1
  150. package/dist/record-plugin.d.ts +29 -0
  151. package/dist/record-plugin.js +66 -7
  152. package/dist/record-plugin.js.map +1 -1
  153. package/dist/repack/index.d.ts +2 -0
  154. package/dist/repack/index.js +8 -0
  155. package/dist/repack/index.js.map +1 -1
  156. package/dist/rest-api-plugin.js +54 -44
  157. package/dist/rest-api-plugin.js.map +1 -1
  158. package/dist/server-module-plugin/index.d.ts +10 -0
  159. package/dist/server-module-plugin/index.js +83 -59
  160. package/dist/server-module-plugin/index.js.map +1 -1
  161. package/dist/service-catalog/catalog-clientscript-plugin.d.ts +2 -0
  162. package/dist/service-catalog/catalog-clientscript-plugin.js +117 -0
  163. package/dist/service-catalog/catalog-clientscript-plugin.js.map +1 -0
  164. package/dist/service-catalog/catalog-item-plugin.d.ts +2 -0
  165. package/dist/service-catalog/catalog-item-plugin.js +115 -0
  166. package/dist/service-catalog/catalog-item-plugin.js.map +1 -0
  167. package/dist/service-catalog/catalog-ui-policy-plugin.d.ts +2 -0
  168. package/dist/service-catalog/catalog-ui-policy-plugin.js +266 -0
  169. package/dist/service-catalog/catalog-ui-policy-plugin.js.map +1 -0
  170. package/dist/service-catalog/index.d.ts +5 -0
  171. package/dist/service-catalog/index.js +22 -0
  172. package/dist/service-catalog/index.js.map +1 -0
  173. package/dist/service-catalog/record-to-shape.d.ts +6 -0
  174. package/dist/service-catalog/record-to-shape.js +93 -0
  175. package/dist/service-catalog/record-to-shape.js.map +1 -0
  176. package/dist/service-catalog/sc-record-producer-plugin.d.ts +2 -0
  177. package/dist/service-catalog/sc-record-producer-plugin.js +140 -0
  178. package/dist/service-catalog/sc-record-producer-plugin.js.map +1 -0
  179. package/dist/service-catalog/service-catalog-base.d.ts +311 -0
  180. package/dist/service-catalog/service-catalog-base.js +542 -0
  181. package/dist/service-catalog/service-catalog-base.js.map +1 -0
  182. package/dist/service-catalog/service-catalog-diagnostics.d.ts +45 -0
  183. package/dist/service-catalog/service-catalog-diagnostics.js +172 -0
  184. package/dist/service-catalog/service-catalog-diagnostics.js.map +1 -0
  185. package/dist/service-catalog/shape-to-record.d.ts +8 -0
  186. package/dist/service-catalog/shape-to-record.js +235 -0
  187. package/dist/service-catalog/shape-to-record.js.map +1 -0
  188. package/dist/service-catalog/utils.d.ts +323 -0
  189. package/dist/service-catalog/utils.js +1216 -0
  190. package/dist/service-catalog/utils.js.map +1 -0
  191. package/dist/service-catalog/variable-helper.d.ts +43 -0
  192. package/dist/service-catalog/variable-helper.js +92 -0
  193. package/dist/service-catalog/variable-helper.js.map +1 -0
  194. package/dist/service-catalog/variable-set-plugin.d.ts +2 -0
  195. package/dist/service-catalog/variable-set-plugin.js +175 -0
  196. package/dist/service-catalog/variable-set-plugin.js.map +1 -0
  197. package/dist/service-catalog/variables-transform.d.ts +139 -0
  198. package/dist/service-catalog/variables-transform.js +403 -0
  199. package/dist/service-catalog/variables-transform.js.map +1 -0
  200. package/dist/sla/sla-validators.d.ts +61 -0
  201. package/dist/sla/sla-validators.js +224 -0
  202. package/dist/sla/sla-validators.js.map +1 -0
  203. package/dist/sla-plugin.d.ts +5 -0
  204. package/dist/sla-plugin.js +280 -0
  205. package/dist/sla-plugin.js.map +1 -0
  206. package/dist/static-content-plugin.js +25 -2
  207. package/dist/static-content-plugin.js.map +1 -1
  208. package/dist/table-plugin.js +32 -15
  209. package/dist/table-plugin.js.map +1 -1
  210. package/dist/ui-page-plugin.js +832 -19
  211. package/dist/ui-page-plugin.js.map +1 -1
  212. package/dist/ui-policy-plugin.js +5 -7
  213. package/dist/ui-policy-plugin.js.map +1 -1
  214. package/dist/utils.d.ts +10 -1
  215. package/dist/utils.js +16 -0
  216. package/dist/utils.js.map +1 -1
  217. package/dist/ux-list-menu-config-plugin.d.ts +2 -0
  218. package/dist/ux-list-menu-config-plugin.js +292 -0
  219. package/dist/ux-list-menu-config-plugin.js.map +1 -0
  220. package/dist/workspace-plugin/chrome-tab.d.ts +2 -0
  221. package/dist/workspace-plugin/chrome-tab.js +46 -0
  222. package/dist/workspace-plugin/chrome-tab.js.map +1 -0
  223. package/dist/workspace-plugin/constants.d.ts +52 -0
  224. package/dist/workspace-plugin/constants.js +56 -0
  225. package/dist/workspace-plugin/constants.js.map +1 -0
  226. package/dist/workspace-plugin/fluent-utils.d.ts +9 -0
  227. package/dist/workspace-plugin/fluent-utils.js +60 -0
  228. package/dist/workspace-plugin/fluent-utils.js.map +1 -0
  229. package/dist/workspace-plugin/page.d.ts +8 -0
  230. package/dist/workspace-plugin/page.js +108 -0
  231. package/dist/workspace-plugin/page.js.map +1 -0
  232. package/dist/workspace-plugin/screen.d.ts +1 -0
  233. package/dist/workspace-plugin/screen.js +38 -0
  234. package/dist/workspace-plugin/screen.js.map +1 -0
  235. package/dist/workspace-plugin/templates/index.d.ts +10 -0
  236. package/dist/workspace-plugin/templates/index.js +20 -0
  237. package/dist/workspace-plugin/templates/index.js.map +1 -0
  238. package/dist/workspace-plugin/templates/record-page-composition.d.ts +1 -0
  239. package/dist/workspace-plugin/templates/record-page-composition.js +4043 -0
  240. package/dist/workspace-plugin/templates/record-page-composition.js.map +1 -0
  241. package/dist/workspace-plugin/templates/record-page-data.d.ts +1 -0
  242. package/dist/workspace-plugin/templates/record-page-data.js +527 -0
  243. package/dist/workspace-plugin/templates/record-page-data.js.map +1 -0
  244. package/dist/workspace-plugin/templates/record-page-interalEventMappings.d.ts +1 -0
  245. package/dist/workspace-plugin/templates/record-page-interalEventMappings.js +39 -0
  246. package/dist/workspace-plugin/templates/record-page-interalEventMappings.js.map +1 -0
  247. package/dist/workspace-plugin/templates/record-page-layoutModel.d.ts +1 -0
  248. package/dist/workspace-plugin/templates/record-page-layoutModel.js +55 -0
  249. package/dist/workspace-plugin/templates/record-page-layoutModel.js.map +1 -0
  250. package/dist/workspace-plugin/templates/record-page-properties.d.ts +1 -0
  251. package/dist/workspace-plugin/templates/record-page-properties.js +135 -0
  252. package/dist/workspace-plugin/templates/record-page-properties.js.map +1 -0
  253. package/dist/workspace-plugin/templates/record-page.d.ts +3 -0
  254. package/dist/workspace-plugin/templates/record-page.js +8 -0
  255. package/dist/workspace-plugin/templates/record-page.js.map +1 -0
  256. package/dist/workspace-plugin.d.ts +2 -0
  257. package/dist/workspace-plugin.js +453 -0
  258. package/dist/workspace-plugin.js.map +1 -0
  259. package/package.json +10 -12
  260. package/src/acl-plugin.ts +16 -1
  261. package/src/applicability-plugin.ts +82 -0
  262. package/src/atf/test-plugin.ts +6 -3
  263. package/src/basic-syntax-plugin.ts +10 -1
  264. package/src/business-rule-plugin.ts +2 -1
  265. package/src/call-expression-plugin.ts +2 -130
  266. package/src/column/column-to-record.ts +54 -8
  267. package/src/column-plugin.ts +29 -13
  268. package/src/dashboard/dashboard-component-property-defaults.ts +277 -0
  269. package/src/dashboard/dashboard-component-resolver.ts +69 -0
  270. package/src/dashboard/dashboard-plugin.ts +450 -0
  271. package/src/data-plugin.ts +67 -139
  272. package/src/email-notification-plugin.ts +850 -0
  273. package/src/flow/constants/flow-plugin-constants.ts +79 -0
  274. package/src/flow/flow-logic/flow-logic-constants.ts +120 -0
  275. package/src/flow/flow-logic/flow-logic-diagnostics.ts +591 -0
  276. package/src/flow/flow-logic/flow-logic-plugin-helpers.ts +2550 -0
  277. package/src/flow/flow-logic/flow-logic-plugin.ts +337 -0
  278. package/src/flow/flow-logic/flow-logic-shapes.ts +215 -0
  279. package/src/flow/plugins/approval-rules-plugin.ts +48 -0
  280. package/src/flow/plugins/flow-action-definition-plugin.ts +295 -0
  281. package/src/flow/plugins/flow-data-pill-plugin.ts +258 -0
  282. package/src/flow/plugins/flow-definition-plugin.ts +2173 -0
  283. package/src/flow/plugins/flow-diagnostics-plugin.ts +280 -0
  284. package/src/flow/plugins/flow-instance-plugin.ts +1499 -0
  285. package/src/flow/plugins/flow-trigger-instance-plugin.ts +444 -0
  286. package/src/flow/plugins/inline-script-plugin.ts +83 -0
  287. package/src/flow/plugins/step-definition-plugin.ts +67 -0
  288. package/src/flow/plugins/step-instance-plugin.ts +431 -0
  289. package/src/flow/plugins/trigger-plugin.ts +95 -0
  290. package/src/flow/plugins/wfa-datapill-plugin.ts +213 -0
  291. package/src/flow/utils/approval-rules-processor.ts +298 -0
  292. package/src/flow/utils/built-in-complex-objects.ts +81 -0
  293. package/src/flow/utils/complex-object-resolver.ts +875 -0
  294. package/src/flow/utils/complex-objects.ts +656 -0
  295. package/src/flow/utils/data-pill-shapes.ts +165 -0
  296. package/src/flow/utils/datapill-transformer.ts +632 -0
  297. package/src/flow/utils/flow-constants.ts +285 -0
  298. package/src/flow/utils/flow-io-to-record.ts +533 -0
  299. package/src/flow/utils/flow-shapes.ts +296 -0
  300. package/src/flow/utils/flow-to-xml.ts +318 -0
  301. package/src/flow/utils/flow-variable-processor.ts +100 -0
  302. package/src/flow/utils/label-cache-parser.ts +37 -0
  303. package/src/flow/utils/label-cache-processor.ts +870 -0
  304. package/src/flow/utils/pill-string-parser.ts +375 -0
  305. package/src/flow/utils/schema-to-flow-object.ts +385 -0
  306. package/src/flow/utils/service-catalog.ts +174 -0
  307. package/src/flow/utils/utils.ts +395 -0
  308. package/src/index.ts +20 -1
  309. package/src/list-plugin.ts +1 -1
  310. package/src/now-attach-plugin.ts +14 -11
  311. package/src/now-ref-plugin.ts +1 -1
  312. package/src/record-plugin.ts +76 -11
  313. package/src/repack/index.ts +14 -0
  314. package/src/rest-api-plugin.ts +62 -50
  315. package/src/server-module-plugin/index.ts +112 -86
  316. package/src/service-catalog/catalog-clientscript-plugin.ts +140 -0
  317. package/src/service-catalog/catalog-item-plugin.ts +162 -0
  318. package/src/service-catalog/catalog-ui-policy-plugin.ts +324 -0
  319. package/src/service-catalog/index.ts +5 -0
  320. package/src/service-catalog/record-to-shape.ts +109 -0
  321. package/src/service-catalog/sc-record-producer-plugin.ts +201 -0
  322. package/src/service-catalog/service-catalog-base.ts +600 -0
  323. package/src/service-catalog/service-catalog-diagnostics.ts +254 -0
  324. package/src/service-catalog/shape-to-record.ts +279 -0
  325. package/src/service-catalog/utils.ts +1455 -0
  326. package/src/service-catalog/variable-helper.ts +135 -0
  327. package/src/service-catalog/variable-set-plugin.ts +197 -0
  328. package/src/service-catalog/variables-transform.ts +438 -0
  329. package/src/sla/sla-validators.ts +331 -0
  330. package/src/sla-plugin.ts +358 -0
  331. package/src/static-content-plugin.ts +25 -2
  332. package/src/table-plugin.ts +49 -16
  333. package/src/ui-page-plugin.ts +1063 -20
  334. package/src/ui-policy-plugin.ts +5 -9
  335. package/src/utils.ts +24 -1
  336. package/src/ux-list-menu-config-plugin.ts +312 -0
  337. package/src/workspace-plugin/chrome-tab.ts +44 -0
  338. package/src/workspace-plugin/constants.ts +53 -0
  339. package/src/workspace-plugin/fluent-utils.ts +60 -0
  340. package/src/workspace-plugin/page.ts +139 -0
  341. package/src/workspace-plugin/screen.ts +34 -0
  342. package/src/workspace-plugin/templates/index.ts +17 -0
  343. package/src/workspace-plugin/templates/record-page-composition.ts +4051 -0
  344. package/src/workspace-plugin/templates/record-page-data.ts +523 -0
  345. package/src/workspace-plugin/templates/record-page-interalEventMappings.ts +35 -0
  346. package/src/workspace-plugin/templates/record-page-layoutModel.ts +51 -0
  347. package/src/workspace-plugin/templates/record-page-properties.ts +131 -0
  348. package/src/workspace-plugin/templates/record-page.ts +6 -0
  349. package/src/workspace-plugin.ts +574 -0
@@ -0,0 +1,201 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DoInParallelInstanceShape = exports.AssignSubflowOutputsInstanceShape = exports.SetFlowVariablesInstanceShape = exports.TryCatchInstanceShape = exports.GoBackToInstanceShape = exports.ForEachInstanceShape = exports.ConditionalLogicInstanceShape = exports.FlowLogicInstanceShape = void 0;
4
+ exports.createFlowLogicInstanceShape = createFlowLogicInstanceShape;
5
+ const sdk_build_core_1 = require("@servicenow/sdk-build-core");
6
+ const arrow_function_plugin_1 = require("../../arrow-function-plugin");
7
+ const now_id_plugin_1 = require("../../now-id-plugin");
8
+ const flow_logic_constants_1 = require("./flow-logic-constants");
9
+ const flow_shapes_1 = require("../utils/flow-shapes");
10
+ /**
11
+ * Base class for flow logic constructs that use config + additional arguments pattern.
12
+ * Provides common functionality for accessing config, sysId, and annotation.
13
+ */
14
+ class FlowLogicInstanceShape extends flow_shapes_1.FDInstanceShape {
15
+ getConfig() {
16
+ return this.getArgument(0).as(sdk_build_core_1.ObjectShape);
17
+ }
18
+ getSysId() {
19
+ return this.getConfig().get('$id').as(now_id_plugin_1.NowIdShape);
20
+ }
21
+ getAnnotation() {
22
+ const annotationShape = this.getConfig().get('annotation');
23
+ if (annotationShape?.isUndefined()) {
24
+ return undefined;
25
+ }
26
+ return annotationShape?.asString() ?? undefined;
27
+ }
28
+ }
29
+ exports.FlowLogicInstanceShape = FlowLogicInstanceShape;
30
+ /**
31
+ * Shape class for conditional flow logic constructs (If/ElseIf/Else).
32
+ * Handles the pattern: If/ElseIf/Else(config, body)
33
+ *
34
+ * @example
35
+ * If({ $id: Now.ID['if_1'], condition: 'user.role === "admin"', label: 'Admin Check' }, () => { ... })
36
+ * ElseIf({ $id: Now.ID['elseif_1'], condition: 'user.role === "user"' }, () => { ... })
37
+ * Else({ $id: Now.ID['else_1'], annotation: 'Default case' }, () => { ... })
38
+ */
39
+ class ConditionalLogicInstanceShape extends FlowLogicInstanceShape {
40
+ getBody() {
41
+ return this.getArgument(1).as(arrow_function_plugin_1.ArrowFunctionShape);
42
+ }
43
+ getCondition() {
44
+ return this.getConfig().get('condition')?.asString();
45
+ }
46
+ getLabel() {
47
+ return this.getConfig().get('label')?.asString();
48
+ }
49
+ }
50
+ exports.ConditionalLogicInstanceShape = ConditionalLogicInstanceShape;
51
+ /**
52
+ * Shape class for ForEach loop logic.
53
+ * Handles the pattern: ForEach(config, items, body)
54
+ *
55
+ * @example
56
+ * ForEach({ $id: Now.ID['foreach_1'], annotation: 'Process items' }, ['a', 'b', 'c'], (item) => { ... })
57
+ */
58
+ class ForEachInstanceShape extends FlowLogicInstanceShape {
59
+ getConfig() {
60
+ return this.getArgument(1).as(sdk_build_core_1.ObjectShape);
61
+ }
62
+ getItems() {
63
+ return this.getArgument(0, false).as(sdk_build_core_1.PropertyAccessShape);
64
+ }
65
+ getBody() {
66
+ return this.getArgument(2).as(arrow_function_plugin_1.ArrowFunctionShape);
67
+ }
68
+ }
69
+ exports.ForEachInstanceShape = ForEachInstanceShape;
70
+ /**
71
+ * Shape class for GoBackTo navigation logic.
72
+ * Handles the pattern: GoBackTo(config, step)
73
+ *
74
+ * @example
75
+ * GoBackTo({ $id: Now.ID['goback_1'], annotation: 'Retry logic' }, previousStep)
76
+ */
77
+ class GoBackToInstanceShape extends FlowLogicInstanceShape {
78
+ getStep() {
79
+ const step = this.getArgument(1);
80
+ return step?.isRecord() ? step.asRecord() : step?.asString();
81
+ }
82
+ }
83
+ exports.GoBackToInstanceShape = GoBackToInstanceShape;
84
+ /**
85
+ * Shape class for TryCatch error handling logic.
86
+ * Handles the pattern: TryCatch(config, handlers)
87
+ *
88
+ * @example
89
+ * TryCatch({ $id: Now.ID['trycatch_1'] }, { try: tryFn, catch: catchFn })
90
+ */
91
+ class TryCatchInstanceShape extends FlowLogicInstanceShape {
92
+ getHandlers() {
93
+ return this.getArgument(1)?.as(sdk_build_core_1.ObjectShape);
94
+ }
95
+ getTryHandler() {
96
+ return this.getHandlers()?.get('try')?.as(arrow_function_plugin_1.ArrowFunctionShape);
97
+ }
98
+ getCatchHandler() {
99
+ return this.getHandlers()?.get('catch')?.as(arrow_function_plugin_1.ArrowFunctionShape);
100
+ }
101
+ }
102
+ exports.TryCatchInstanceShape = TryCatchInstanceShape;
103
+ /**
104
+ * Shape class for SetFlowVariables logic.
105
+ * Handles the pattern: SetFlowVariables(config, variables)
106
+ *
107
+ * @example
108
+ * SetFlowVariables({ $id: Now.ID['set_flow_variables_1'] }, _params.flow_variables, { variable1: 'value1', variable2: 'value2' })
109
+ */
110
+ class SetFlowVariablesInstanceShape extends FlowLogicInstanceShape {
111
+ getVariablesToSet() {
112
+ return this.getArgument(2)?.as(sdk_build_core_1.ObjectShape);
113
+ }
114
+ getVariablesToSetAsString() {
115
+ const variables = this.getVariablesToSet();
116
+ const entries = variables.entries({ resolve: false });
117
+ return Array.from(entries, ([key]) => key).join(',');
118
+ }
119
+ }
120
+ exports.SetFlowVariablesInstanceShape = SetFlowVariablesInstanceShape;
121
+ /**
122
+ * Shape class for AssignSubflowOutputs logic.
123
+ * Handles the pattern: AssignSubflowOutputs(config, outputs)
124
+ *
125
+ * @example
126
+ * AssignSubflowOutputs({ $id: Now.ID['assign_subflow_outputs_1'] }, _params.outputs, { output1: 'value1', output2: 'value2' })
127
+ */
128
+ class AssignSubflowOutputsInstanceShape extends FlowLogicInstanceShape {
129
+ getAssignedSubflowOutputs() {
130
+ return this.getArgument(2)?.as(sdk_build_core_1.ObjectShape);
131
+ }
132
+ getAssignedSubflowOutputsAsString() {
133
+ const assignedSubflowOutputs = this.getAssignedSubflowOutputs();
134
+ const entries = assignedSubflowOutputs.entries({ resolve: false });
135
+ return Array.from(entries, ([key]) => key).join(',');
136
+ }
137
+ }
138
+ exports.AssignSubflowOutputsInstanceShape = AssignSubflowOutputsInstanceShape;
139
+ /**
140
+ * Shape class for DoInParallel execution logic.
141
+ * Handles the pattern: DoInParallel(config, ...functions)
142
+ *
143
+ * @example
144
+ * DoInParallel({ $id: Now.ID['do_in_parallel_1'] }, fn1, fn2, fn3)
145
+ */
146
+ class DoInParallelInstanceShape extends FlowLogicInstanceShape {
147
+ getParallelFunctions() {
148
+ const functions = [];
149
+ const allArgs = this.getArguments();
150
+ // Start from argument 1 (after config) and collect all arrow functions
151
+ for (let i = 1; i < allArgs.length; i++) {
152
+ const arg = this.getArgument(i);
153
+ if (arg) {
154
+ functions.push(arg.as(arrow_function_plugin_1.ArrowFunctionShape));
155
+ }
156
+ }
157
+ return functions;
158
+ }
159
+ getParallelFunctionCount() {
160
+ return this.getArguments().length - 1; // Subtract 1 for config argument
161
+ }
162
+ }
163
+ exports.DoInParallelInstanceShape = DoInParallelInstanceShape;
164
+ /**
165
+ * Factory function to create the appropriate specific flow logic shape based on the logic type.
166
+ * This provides type-safe access to flow logic constructs while maintaining backward compatibility.
167
+ *
168
+ * @param expr - The CallExpressionShape to convert
169
+ * @param callee - The flow logic type (If, ElseIf, Else, ForEach, etc.)
170
+ * @param args - The arguments for the flow logic construct
171
+ * @returns The appropriate specific shape instance
172
+ */
173
+ function createFlowLogicInstanceShape(expr, callee, args) {
174
+ switch (callee) {
175
+ case flow_logic_constants_1.FLOW_LOGIC.IF:
176
+ case flow_logic_constants_1.FLOW_LOGIC.ELSEIF:
177
+ case flow_logic_constants_1.FLOW_LOGIC.ELSE:
178
+ return new ConditionalLogicInstanceShape(expr, callee, args);
179
+ case flow_logic_constants_1.FLOW_LOGIC.FOR_EACH:
180
+ return new ForEachInstanceShape(expr, callee, args);
181
+ case flow_logic_constants_1.FLOW_LOGIC.GOBACKTO:
182
+ return new GoBackToInstanceShape(expr, callee, args);
183
+ case flow_logic_constants_1.FLOW_LOGIC.TRY_CATCH:
184
+ return new TryCatchInstanceShape(expr, callee, args);
185
+ case flow_logic_constants_1.FLOW_LOGIC.DO_IN_PARALLEL:
186
+ return new DoInParallelInstanceShape(expr, callee, args);
187
+ case flow_logic_constants_1.FLOW_LOGIC.SET_FLOW_VARIABLES:
188
+ return new SetFlowVariablesInstanceShape(expr, callee, args);
189
+ case flow_logic_constants_1.FLOW_LOGIC.ASSIGN_SUBFLOW_OUTPUTS:
190
+ return new AssignSubflowOutputsInstanceShape(expr, callee, args);
191
+ case flow_logic_constants_1.FLOW_LOGIC.WAIT_FOR_A_DURATION:
192
+ case flow_logic_constants_1.FLOW_LOGIC.ENDFLOW:
193
+ case flow_logic_constants_1.FLOW_LOGIC.EXITLOOP:
194
+ case flow_logic_constants_1.FLOW_LOGIC.SKIP_ITERATION:
195
+ return new FlowLogicInstanceShape(expr, callee, args);
196
+ default:
197
+ // Fallback to the deprecated generic shape for unknown types
198
+ throw new Error(`Unknown flow logic type: ${callee}`);
199
+ }
200
+ }
201
+ //# sourceMappingURL=flow-logic-shapes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flow-logic-shapes.js","sourceRoot":"","sources":["../../../src/flow/flow-logic/flow-logic-shapes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Plugin } from '@servicenow/sdk-build-core';
2
+ export declare const ApprovalRulesPlugin: Plugin;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ApprovalRulesPlugin = void 0;
4
+ const sdk_build_core_1 = require("@servicenow/sdk-build-core");
5
+ const flow_constants_1 = require("../utils/flow-constants");
6
+ const flow_shapes_1 = require("../utils/flow-shapes");
7
+ const utils_1 = require("../../utils");
8
+ exports.ApprovalRulesPlugin = sdk_build_core_1.Plugin.create({
9
+ name: 'ApprovalRulesPlugin',
10
+ nodes: [
11
+ {
12
+ node: 'CallExpression',
13
+ fileTypes: ['fluent'],
14
+ entryPoint: true,
15
+ async toShape(node, { transform }) {
16
+ const callee = (0, utils_1.getCallExpressionName)(node);
17
+ if (callee !== flow_constants_1.APPROVAL_RULES_API_NAME && callee !== flow_constants_1.APPROVAL_DUE_DATE_API_NAME) {
18
+ return { success: false };
19
+ }
20
+ const nodeData = node.getArguments()[0];
21
+ if (!nodeData) {
22
+ return { success: false };
23
+ }
24
+ const result = await transform.toShape(nodeData);
25
+ if (!result.success) {
26
+ return result;
27
+ }
28
+ const value = result.value.asObject().properties({ resolve: false });
29
+ if (callee === flow_constants_1.APPROVAL_DUE_DATE_API_NAME) {
30
+ return {
31
+ success: true,
32
+ value: new flow_shapes_1.ApprovalDueDateShape({
33
+ source: node,
34
+ value: value,
35
+ }),
36
+ };
37
+ }
38
+ return {
39
+ success: true,
40
+ value: new flow_shapes_1.ApprovalRulesShape({
41
+ source: node,
42
+ value: value,
43
+ }),
44
+ };
45
+ },
46
+ },
47
+ ],
48
+ });
49
+ //# sourceMappingURL=approval-rules-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approval-rules-plugin.js","sourceRoot":"","sources":["../../../src/flow/plugins/approval-rules-plugin.ts"],"names":[],"mappings":";;;AAAA,+DAAmD;AACnD,4DAA6F;AAC7F,sDAA+E;AAC/E,uCAAmD;AAEtC,QAAA,mBAAmB,GAAG,uBAAM,CAAC,MAAM,CAAC;IAC7C,IAAI,EAAE,qBAAqB;IAC3B,KAAK,EAAE;QACH;YACI,IAAI,EAAE,gBAAgB;YACtB,SAAS,EAAE,CAAC,QAAQ,CAAC;YACrB,UAAU,EAAE,IAAI;YAChB,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE;gBAC7B,MAAM,MAAM,GAAG,IAAA,6BAAqB,EAAC,IAAI,CAAC,CAAA;gBAC1C,IAAI,MAAM,KAAK,wCAAuB,IAAI,MAAM,KAAK,2CAA0B,EAAE,CAAC;oBAC9E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;gBAC7B,CAAC;gBACD,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAA;gBAEvC,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACZ,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;gBAC7B,CAAC;gBAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;gBAChD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBAClB,OAAO,MAAM,CAAA;gBACjB,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;gBACpE,IAAI,MAAM,KAAK,2CAA0B,EAAE,CAAC;oBACxC,OAAO;wBACH,OAAO,EAAE,IAAI;wBACb,KAAK,EAAE,IAAI,kCAAoB,CAAC;4BAC5B,MAAM,EAAE,IAAI;4BACZ,KAAK,EAAE,KAAK;yBACf,CAAC;qBACL,CAAA;gBACL,CAAC;gBACD,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE,IAAI,gCAAkB,CAAC;wBAC1B,MAAM,EAAE,IAAI;wBACZ,KAAK,EAAE,KAAK;qBACf,CAAC;iBACL,CAAA;YACL,CAAC;SACJ;KACJ;CACJ,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ import { Plugin } from '@servicenow/sdk-build-core';
2
+ export declare const ActionDefinitionPlugin: Plugin;
@@ -0,0 +1,286 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ActionDefinitionPlugin = void 0;
4
+ const sdk_build_core_1 = require("@servicenow/sdk-build-core");
5
+ const flow_io_to_record_1 = require("../utils/flow-io-to-record");
6
+ const flow_to_xml_1 = require("../utils/flow-to-xml");
7
+ const flow_constants_1 = require("../utils/flow-constants");
8
+ const arrow_function_plugin_1 = require("../../arrow-function-plugin");
9
+ const step_instance_plugin_1 = require("./step-instance-plugin");
10
+ const actionDefRelationships = {
11
+ sys_hub_step_instance: {
12
+ via: 'action',
13
+ descendant: true,
14
+ relationships: {
15
+ sys_variable_value: {
16
+ via: 'document_key',
17
+ descendant: true,
18
+ },
19
+ sys_element_mapping: {
20
+ via: 'id',
21
+ descendant: true,
22
+ },
23
+ sys_hub_step_ext_input: {
24
+ via: 'model_id',
25
+ descendant: true,
26
+ relationships: {
27
+ sys_documentation: {
28
+ via: { name: 'name', element: 'element' },
29
+ descendant: true,
30
+ },
31
+ },
32
+ },
33
+ sys_hub_step_ext_output: {
34
+ via: 'model_id',
35
+ descendant: true,
36
+ relationships: {
37
+ sys_documentation: {
38
+ via: { name: 'name', element: 'element' },
39
+ descendant: true,
40
+ },
41
+ },
42
+ },
43
+ sys_hub_input_scripts: {
44
+ via: 'instance',
45
+ descendant: true,
46
+ },
47
+ },
48
+ },
49
+ sys_hub_action_input: {
50
+ via: 'model',
51
+ descendant: true,
52
+ relationships: {
53
+ sys_documentation: {
54
+ via: { name: 'name', element: 'element' },
55
+ descendant: true,
56
+ },
57
+ sys_choice: {
58
+ via: { name: 'name', element: 'element' },
59
+ descendant: true,
60
+ },
61
+ sys_variable_value: {
62
+ via: 'variable',
63
+ descendant: true,
64
+ },
65
+ sys_complex_object: {
66
+ via: [flow_io_to_record_1.complexObjectMatchesIoRecord],
67
+ descendant: true,
68
+ inverse: true,
69
+ },
70
+ },
71
+ },
72
+ sys_hub_action_output: {
73
+ via: 'model',
74
+ descendant: true,
75
+ relationships: {
76
+ sys_documentation: {
77
+ via: { name: 'name', element: 'element' },
78
+ descendant: true,
79
+ },
80
+ sys_choice: {
81
+ via: { name: 'name', element: 'element' },
82
+ descendant: true,
83
+ },
84
+ sys_variable_value: {
85
+ via: 'variable',
86
+ descendant: true,
87
+ },
88
+ sys_complex_object: {
89
+ via: [flow_io_to_record_1.complexObjectMatchesIoRecord],
90
+ descendant: true,
91
+ inverse: true,
92
+ },
93
+ sys_hub_input_scripts: {
94
+ via: 'instance',
95
+ descendant: true,
96
+ },
97
+ },
98
+ },
99
+ sys_hub_action_status_metadata: {
100
+ via: 'action_type_id',
101
+ descendant: true,
102
+ relationships: {
103
+ sys_hub_status_condition: {
104
+ via: 'action_status_metadata_id',
105
+ descendant: true,
106
+ },
107
+ },
108
+ },
109
+ };
110
+ exports.ActionDefinitionPlugin = sdk_build_core_1.Plugin.create({
111
+ name: 'ActionDefinitionPlugin',
112
+ records: {
113
+ sys_hub_action_type_definition: {
114
+ relationships: {
115
+ ...actionDefRelationships,
116
+ sys_hub_action_type_snapshot: {
117
+ via: 'parent_action',
118
+ descendant: true,
119
+ relationships: {
120
+ ...actionDefRelationships,
121
+ sys_element_mapping: {
122
+ via: 'id',
123
+ descendant: true,
124
+ },
125
+ sys_hub_step_ext_input: {
126
+ via: 'model',
127
+ descendant: true,
128
+ },
129
+ sys_hub_step_ext_output: {
130
+ via: 'model',
131
+ descendant: true,
132
+ },
133
+ sys_translated_text: {
134
+ via: 'documentkey',
135
+ descendant: true,
136
+ },
137
+ },
138
+ },
139
+ sys_hub_action_plan: {
140
+ via: 'action_id',
141
+ descendant: true,
142
+ },
143
+ sys_element_mapping: {
144
+ via: 'id',
145
+ descendant: true,
146
+ },
147
+ sys_translated_text: {
148
+ via: 'documentkey',
149
+ descendant: true,
150
+ },
151
+ },
152
+ toShape(record, { logger }) {
153
+ logger.warn(`Unsupported record type: ${record.getTable()}, Action definition is not implemented yet`);
154
+ return { success: false };
155
+ // TODO Uncomment this in next release
156
+ // const inputs = buildVariableShapes(descendants.query('sys_hub_action_input'), descendants)
157
+ // const outputs = buildVariableShapes(descendants.query('sys_hub_action_output'), descendants)
158
+ // // Create the CallExpressionShape for the action definition
159
+ // const callExpression = new CallExpressionShape({
160
+ // source: record,
161
+ // callee: 'ActionDefinition',
162
+ // args: [
163
+ // record.transform(({ $ }) => ({
164
+ // $id: $.val(NowIdShape.from(record)),
165
+ // name: $,
166
+ // annotation: $.def(''),
167
+ // description: $.def(''),
168
+ // natlang: $.def(''),
169
+ // access: $.def('public'),
170
+ // category: $.def(''),
171
+ // protection: $.from('sys_policy').def(''),
172
+ // inputs: $.val(inputs),
173
+ // outputs: $.val(outputs),
174
+ // })),
175
+ // ],
176
+ // })
177
+ // // Try to get the existing identifier from the record source, fallback to slugified name
178
+ // const actionName =
179
+ // getIdentifierFromRecord(record) ??
180
+ // slugifyString(String(record.get('internal_name')?.getValue() || record.get('name')?.getValue()))
181
+ // return {
182
+ // success: true,
183
+ // value: new VariableStatementShape({
184
+ // source: record,
185
+ // variableName: actionName,
186
+ // initializer: callExpression,
187
+ // isExported: true,
188
+ // }),
189
+ // }
190
+ },
191
+ async diff(existing, incoming, descendants, context) {
192
+ return (0, sdk_build_core_1.deleteMultipleDiff)(existing, incoming, descendants, context);
193
+ },
194
+ toFile(record, { config, database }) {
195
+ return (0, flow_to_xml_1.generateXML)(record, { config, database });
196
+ },
197
+ },
198
+ sys_hub_action_input: {
199
+ coalesce: ['model', 'element'],
200
+ },
201
+ sys_hub_action_output: {
202
+ coalesce: ['model', 'element'],
203
+ },
204
+ sys_variable_value: {
205
+ coalesce: ['document_key', 'variable'],
206
+ },
207
+ sys_complex_object: {
208
+ coalesce: ['name'],
209
+ },
210
+ },
211
+ shapes: [
212
+ {
213
+ shape: sdk_build_core_1.CallExpressionShape,
214
+ fileTypes: ['fluent'],
215
+ async toRecord(callExpression, { factory, diagnostics }) {
216
+ if (callExpression.getCallee() !== 'ActionDefinition') {
217
+ return { success: false };
218
+ }
219
+ const relatedRecords = [];
220
+ const actionConfiguration = callExpression.getArgument(0).asObject();
221
+ const actionDefinitionRecord = await factory.createRecord({
222
+ source: callExpression,
223
+ table: 'sys_hub_action_type_definition',
224
+ explicitId: actionConfiguration.get('$id'),
225
+ properties: actionConfiguration.transform(({ $ }) => ({
226
+ name: $,
227
+ internal_name: $.from('name').map((n) => (0, flow_constants_1.slugifyString)(n.getValue())),
228
+ annotation: $.def(''),
229
+ description: $.def(''),
230
+ access: $.def('public'),
231
+ category: $.def(''),
232
+ sys_policy: $.from('protection').def(''),
233
+ active: $.val(true),
234
+ state: $.val('draft'),
235
+ system_level: $.val(false),
236
+ })),
237
+ });
238
+ const inputsConfig = actionConfiguration.get('inputs').ifObject()?.asObject();
239
+ if (inputsConfig) {
240
+ const { variableRecords: inputRecords, complexObjectRecords: inputComplexObjects } = await (0, flow_io_to_record_1.buildVariableRecords)({
241
+ variablesConfig: inputsConfig,
242
+ parentRecord: actionDefinitionRecord,
243
+ factory,
244
+ diagnostics,
245
+ parentTable: 'sys_hub_action_type_definition',
246
+ varTable: 'sys_hub_action_input',
247
+ });
248
+ relatedRecords.push(...inputRecords, ...inputComplexObjects);
249
+ }
250
+ const outputsConfig = actionConfiguration.get('outputs').ifObject()?.asObject();
251
+ if (outputsConfig) {
252
+ const { variableRecords: outputRecords, complexObjectRecords: outputComplexObjects } = await (0, flow_io_to_record_1.buildVariableRecords)({
253
+ variablesConfig: outputsConfig,
254
+ parentRecord: actionDefinitionRecord,
255
+ factory,
256
+ diagnostics,
257
+ parentTable: 'sys_hub_action_type_definition',
258
+ varTable: 'sys_hub_action_output',
259
+ isOutput: true,
260
+ });
261
+ relatedRecords.push(...outputRecords, ...outputComplexObjects);
262
+ }
263
+ let actionBody;
264
+ actionBody = !callExpression.getArgument(1)?.if(sdk_build_core_1.UndefinedShape)
265
+ ? callExpression.getArgument(1)?.as(arrow_function_plugin_1.ArrowFunctionShape)
266
+ : undefined;
267
+ const allInstances = actionBody?.getStatements();
268
+ for (const [, v] of (allInstances ?? []).entries()) {
269
+ const source = v.getSource();
270
+ if (source instanceof step_instance_plugin_1.StepInstanceShape) {
271
+ const instanceRecord = v.as(sdk_build_core_1.Record);
272
+ const record = instanceRecord.merge({
273
+ action: actionDefinitionRecord.getId().getValue(),
274
+ });
275
+ relatedRecords.push(record);
276
+ }
277
+ }
278
+ return {
279
+ success: true,
280
+ value: actionDefinitionRecord.with(...relatedRecords),
281
+ };
282
+ },
283
+ },
284
+ ],
285
+ });
286
+ //# sourceMappingURL=flow-action-definition-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flow-action-definition-plugin.js","sourceRoot":"","sources":["../../../src/flow/plugins/flow-action-definition-plugin.ts"],"names":[],"mappings":";;;AAAA,+DAAoH;AACpH,kEAA+F;AAC/F,sDAAkD;AAClD,4DAAuD;AACvD,uEAAgE;AAChE,iEAA0D;AAE1D,MAAM,sBAAsB,GAAG;IAC3B,qBAAqB,EAAE;QACnB,GAAG,EAAE,QAAQ;QACb,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE;YACX,kBAAkB,EAAE;gBAChB,GAAG,EAAE,cAAc;gBACnB,UAAU,EAAE,IAAI;aACnB;YACD,mBAAmB,EAAE;gBACjB,GAAG,EAAE,IAAI;gBACT,UAAU,EAAE,IAAI;aACnB;YACD,sBAAsB,EAAE;gBACpB,GAAG,EAAE,UAAU;gBACf,UAAU,EAAE,IAAI;gBAChB,aAAa,EAAE;oBACX,iBAAiB,EAAE;wBACf,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;wBACzC,UAAU,EAAE,IAAI;qBACnB;iBACJ;aACJ;YACD,uBAAuB,EAAE;gBACrB,GAAG,EAAE,UAAU;gBACf,UAAU,EAAE,IAAI;gBAChB,aAAa,EAAE;oBACX,iBAAiB,EAAE;wBACf,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;wBACzC,UAAU,EAAE,IAAI;qBACnB;iBACJ;aACJ;YACD,qBAAqB,EAAE;gBACnB,GAAG,EAAE,UAAU;gBACf,UAAU,EAAE,IAAI;aACnB;SACJ;KACJ;IACD,oBAAoB,EAAE;QAClB,GAAG,EAAE,OAAO;QACZ,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE;YACX,iBAAiB,EAAE;gBACf,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;gBACzC,UAAU,EAAE,IAAI;aACnB;YACD,UAAU,EAAE;gBACR,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;gBACzC,UAAU,EAAE,IAAI;aACnB;YACD,kBAAkB,EAAE;gBAChB,GAAG,EAAE,UAAU;gBACf,UAAU,EAAE,IAAI;aACnB;YACD,kBAAkB,EAAE;gBAChB,GAAG,EAAE,CAAC,gDAA4B,CAAC;gBACnC,UAAU,EAAE,IAAI;gBAChB,OAAO,EAAE,IAAI;aAChB;SACJ;KACJ;IACD,qBAAqB,EAAE;QACnB,GAAG,EAAE,OAAO;QACZ,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE;YACX,iBAAiB,EAAE;gBACf,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;gBACzC,UAAU,EAAE,IAAI;aACnB;YACD,UAAU,EAAE;gBACR,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;gBACzC,UAAU,EAAE,IAAI;aACnB;YACD,kBAAkB,EAAE;gBAChB,GAAG,EAAE,UAAU;gBACf,UAAU,EAAE,IAAI;aACnB;YACD,kBAAkB,EAAE;gBAChB,GAAG,EAAE,CAAC,gDAA4B,CAAC;gBACnC,UAAU,EAAE,IAAI;gBAChB,OAAO,EAAE,IAAI;aAChB;YACD,qBAAqB,EAAE;gBACnB,GAAG,EAAE,UAAU;gBACf,UAAU,EAAE,IAAI;aACnB;SACJ;KACJ;IACD,8BAA8B,EAAE;QAC5B,GAAG,EAAE,gBAAgB;QACrB,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE;YACX,wBAAwB,EAAE;gBACtB,GAAG,EAAE,2BAA2B;gBAChC,UAAU,EAAE,IAAI;aACnB;SACJ;KACJ;CACJ,CAAA;AAEY,QAAA,sBAAsB,GAAG,uBAAM,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,wBAAwB;IAC9B,OAAO,EAAE;QACL,8BAA8B,EAAE;YAC5B,aAAa,EAAE;gBACX,GAAG,sBAAsB;gBACzB,4BAA4B,EAAE;oBAC1B,GAAG,EAAE,eAAe;oBACpB,UAAU,EAAE,IAAI;oBAChB,aAAa,EAAE;wBACX,GAAG,sBAAsB;wBACzB,mBAAmB,EAAE;4BACjB,GAAG,EAAE,IAAI;4BACT,UAAU,EAAE,IAAI;yBACnB;wBACD,sBAAsB,EAAE;4BACpB,GAAG,EAAE,OAAO;4BACZ,UAAU,EAAE,IAAI;yBACnB;wBACD,uBAAuB,EAAE;4BACrB,GAAG,EAAE,OAAO;4BACZ,UAAU,EAAE,IAAI;yBACnB;wBACD,mBAAmB,EAAE;4BACjB,GAAG,EAAE,aAAa;4BAClB,UAAU,EAAE,IAAI;yBACnB;qBACJ;iBACJ;gBACD,mBAAmB,EAAE;oBACjB,GAAG,EAAE,WAAW;oBAChB,UAAU,EAAE,IAAI;iBACnB;gBACD,mBAAmB,EAAE;oBACjB,GAAG,EAAE,IAAI;oBACT,UAAU,EAAE,IAAI;iBACnB;gBACD,mBAAmB,EAAE;oBACjB,GAAG,EAAE,aAAa;oBAClB,UAAU,EAAE,IAAI;iBACnB;aACJ;YACD,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE;gBACtB,MAAM,CAAC,IAAI,CAAC,4BAA4B,MAAM,CAAC,QAAQ,EAAE,4CAA4C,CAAC,CAAA;gBACtG,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;gBACzB,sCAAsC;gBACtC,6FAA6F;gBAC7F,+FAA+F;gBAE/F,8DAA8D;gBAC9D,mDAAmD;gBACnD,sBAAsB;gBACtB,kCAAkC;gBAClC,cAAc;gBACd,yCAAyC;gBACzC,mDAAmD;gBACnD,uBAAuB;gBACvB,qCAAqC;gBACrC,sCAAsC;gBACtC,kCAAkC;gBAClC,uCAAuC;gBACvC,mCAAmC;gBACnC,wDAAwD;gBACxD,qCAAqC;gBACrC,uCAAuC;gBACvC,eAAe;gBACf,SAAS;gBACT,KAAK;gBAEL,2FAA2F;gBAC3F,qBAAqB;gBACrB,yCAAyC;gBACzC,uGAAuG;gBAEvG,WAAW;gBACX,qBAAqB;gBACrB,0CAA0C;gBAC1C,0BAA0B;gBAC1B,oCAAoC;gBACpC,uCAAuC;gBACvC,4BAA4B;gBAC5B,UAAU;gBACV,IAAI;YACR,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO;gBAC/C,OAAO,IAAA,mCAAkB,EAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;YACvE,CAAC;YACD,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;gBAC/B,OAAO,IAAA,yBAAW,EAAC,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;YACpD,CAAC;SACJ;QACD,oBAAoB,EAAE;YAClB,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;SACjC;QACD,qBAAqB,EAAE;YACnB,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;SACjC;QACD,kBAAkB,EAAE;YAChB,QAAQ,EAAE,CAAC,cAAc,EAAE,UAAU,CAAC;SACzC;QACD,kBAAkB,EAAE;YAChB,QAAQ,EAAE,CAAC,MAAM,CAAC;SACrB;KACJ;IACD,MAAM,EAAE;QACJ;YACI,KAAK,EAAE,oCAAmB;YAC1B,SAAS,EAAE,CAAC,QAAQ,CAAC;YACrB,KAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;gBACnD,IAAI,cAAc,CAAC,SAAS,EAAE,KAAK,kBAAkB,EAAE,CAAC;oBACpD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;gBAC7B,CAAC;gBACD,MAAM,cAAc,GAAa,EAAE,CAAA;gBACnC,MAAM,mBAAmB,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;gBACpE,MAAM,sBAAsB,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC;oBACtD,MAAM,EAAE,cAAc;oBACtB,KAAK,EAAE,gCAAgC;oBACvC,UAAU,EAAE,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;oBAC1C,UAAU,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;wBAClD,IAAI,EAAE,CAAC;wBACP,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,8BAAa,EAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;wBACrE,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;wBACrB,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;wBACtB,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;wBACvB,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;wBACnB,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;wBACxC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;wBACrB,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;qBAC7B,CAAC,CAAC;iBACN,CAAC,CAAA;gBAEF,MAAM,YAAY,GAAG,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAA;gBAC7E,IAAI,YAAY,EAAE,CAAC;oBACf,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,GAC9E,MAAM,IAAA,wCAAoB,EAAC;wBACvB,eAAe,EAAE,YAAY;wBAC7B,YAAY,EAAE,sBAAsB;wBACpC,OAAO;wBACP,WAAW;wBACX,WAAW,EAAE,gCAAgC;wBAC7C,QAAQ,EAAE,sBAAsB;qBACnC,CAAC,CAAA;oBACN,cAAc,CAAC,IAAI,CAAC,GAAG,YAAY,EAAE,GAAG,mBAAmB,CAAC,CAAA;gBAChE,CAAC;gBAED,MAAM,aAAa,GAAG,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAA;gBAE/E,IAAI,aAAa,EAAE,CAAC;oBAChB,MAAM,EAAE,eAAe,EAAE,aAAa,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,GAChF,MAAM,IAAA,wCAAoB,EAAC;wBACvB,eAAe,EAAE,aAAa;wBAC9B,YAAY,EAAE,sBAAsB;wBACpC,OAAO;wBACP,WAAW;wBACX,WAAW,EAAE,gCAAgC;wBAC7C,QAAQ,EAAE,uBAAuB;wBACjC,QAAQ,EAAE,IAAI;qBACjB,CAAC,CAAA;oBACN,cAAc,CAAC,IAAI,CAAC,GAAG,aAAa,EAAE,GAAG,oBAAoB,CAAC,CAAA;gBAClE,CAAC;gBAED,IAAI,UAA0C,CAAA;gBAC9C,UAAU,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,+BAAc,CAAC;oBAC3D,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,0CAAkB,CAAC;oBACvD,CAAC,CAAC,SAAS,CAAA;gBACf,MAAM,YAAY,GAAG,UAAU,EAAE,aAAa,EAAE,CAAA;gBAEhD,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;oBACjD,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,CAAA;oBAC5B,IAAI,MAAM,YAAY,wCAAiB,EAAE,CAAC;wBACtC,MAAM,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,uBAAM,CAAC,CAAA;wBACnC,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC;4BAChC,MAAM,EAAE,sBAAsB,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;yBACpD,CAAC,CAAA;wBACF,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBAC/B,CAAC;gBACL,CAAC;gBAED,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE,sBAAsB,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC;iBACxD,CAAA;YACL,CAAC;SACJ;KACJ;CACJ,CAAC,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { type Diagnostics, Plugin, PropertyAccessShape } from '@servicenow/sdk-build-core';
2
+ export declare function determineRootIdentifierAndPath(propertyNames: string[], diagnostics: Diagnostics, propertyAccessShape: PropertyAccessShape): {
3
+ rootIdentifier: null;
4
+ pathStr: null;
5
+ } | {
6
+ rootIdentifier: string;
7
+ pathStr: string;
8
+ };
9
+ export declare const DataPillPlugin: Plugin;