@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,311 @@
1
+ import { Shape } from '@servicenow/sdk-build-core';
2
+ import type { Record, Database, Logger, ObjectShape, Factory, ShapeTransform } from '@servicenow/sdk-build-core';
3
+ /**
4
+ * Shared relationship definitions for both CatalogItem and CatalogItemRecordProducer
5
+ * These relationships are identical since CatalogItemRecordProducer extends CatalogItem
6
+ */
7
+ export declare const CatalogItemBaseRelationships: {
8
+ readonly sc_cat_item_user_criteria_mtom: {
9
+ readonly via: "sc_cat_item";
10
+ readonly descendant: true;
11
+ readonly relationships: {
12
+ readonly user_criteria: {
13
+ readonly via: "user_criteria";
14
+ readonly inverse: true;
15
+ };
16
+ };
17
+ };
18
+ readonly sc_cat_item_user_criteria_no_mtom: {
19
+ readonly via: "sc_cat_item";
20
+ readonly descendant: true;
21
+ readonly relationships: {
22
+ readonly user_criteria: {
23
+ readonly via: "user_criteria";
24
+ readonly inverse: true;
25
+ };
26
+ };
27
+ };
28
+ readonly io_set_item: {
29
+ readonly via: "sc_cat_item";
30
+ readonly descendant: true;
31
+ readonly relationships: {
32
+ readonly item_option_new_set: {
33
+ readonly via: "variable_set";
34
+ readonly inverse: true;
35
+ };
36
+ };
37
+ };
38
+ readonly sc_cat_item_catalog: {
39
+ readonly via: "sc_cat_item";
40
+ readonly descendant: true;
41
+ readonly relationships: {
42
+ readonly sc_catalog: {
43
+ readonly via: "sc_catalog";
44
+ readonly inverse: true;
45
+ };
46
+ };
47
+ };
48
+ readonly sc_cat_item_category: {
49
+ readonly via: "sc_cat_item";
50
+ readonly descendant: true;
51
+ readonly relationships: {
52
+ readonly sc_category: {
53
+ readonly via: "sc_category";
54
+ readonly inverse: true;
55
+ };
56
+ };
57
+ };
58
+ readonly m2m_connected_content: {
59
+ readonly via: "catalog_item";
60
+ readonly descendant: true;
61
+ readonly relationships: {
62
+ readonly topic: {
63
+ readonly via: "topic";
64
+ readonly inverse: true;
65
+ };
66
+ };
67
+ };
68
+ readonly fx_price: {
69
+ readonly via: "id";
70
+ readonly descendant: true;
71
+ };
72
+ readonly item_option_new: {
73
+ readonly via: "cat_item";
74
+ readonly descendant: true;
75
+ readonly relationships: {
76
+ readonly question_choice: {
77
+ readonly via: "question";
78
+ readonly descendant: true;
79
+ readonly relationships: {
80
+ readonly fx_price: {
81
+ readonly via: "id";
82
+ readonly descendant: true;
83
+ };
84
+ };
85
+ };
86
+ readonly fx_price: {
87
+ readonly via: "id";
88
+ readonly descendant: true;
89
+ };
90
+ };
91
+ };
92
+ };
93
+ /**
94
+ * Shared coalesce definitions for both CatalogItem and CatalogItemRecordProducer
95
+ * These define unique key combinations for M2M and related records
96
+ */
97
+ export declare const CatalogItemBaseCoalesce: {
98
+ sc_cat_item_user_criteria_mtom: {
99
+ coalesce: [string, string];
100
+ };
101
+ sc_cat_item_user_criteria_no_mtom: {
102
+ coalesce: [string, string];
103
+ };
104
+ io_set_item: {
105
+ coalesce: [string, string];
106
+ };
107
+ sc_cat_item_catalog: {
108
+ coalesce: [string, string];
109
+ };
110
+ sc_cat_item_category: {
111
+ coalesce: [string, string];
112
+ };
113
+ m2m_connected_content: {
114
+ coalesce: [string, string];
115
+ };
116
+ fx_price: {
117
+ coalesce: [string, string];
118
+ };
119
+ item_option_new: {
120
+ coalesce: [string, string, string];
121
+ };
122
+ question_choice: {
123
+ coalesce: [string, string];
124
+ };
125
+ };
126
+ /**
127
+ * Builds variables schema from item_option_new descendants
128
+ * Shared logic for both CatalogItem and CatalogItemRecordProducer
129
+ * Variables are sorted by order field (defaulting to 0 if empty) and empty names are skipped
130
+ */
131
+ export declare function buildVariablesSchema(descendants: Database, logger: Logger): globalThis.Record<string, unknown>;
132
+ /**
133
+ * Common field data extraction - fields with HIGH usage in BOTH CatalogItem AND CatalogItemRecordProducer
134
+ * These fields appear on both forms and are frequently used
135
+ */
136
+ export declare function buildCommonCatalogFields(descendants: Database): {
137
+ categories: Shape<unknown>[];
138
+ availableFor: Shape<unknown>[];
139
+ notAvailableFor: Shape<unknown>[];
140
+ variableSets: {
141
+ variableSet: Shape<unknown>;
142
+ order: number;
143
+ }[];
144
+ assignedTopics: Shape<unknown>[];
145
+ };
146
+ /**
147
+ * Transforms common catalog fields from record to shape (record → fluent)
148
+ * These fields have HIGH usage in both CatalogItem and CatalogItemRecordProducer forms
149
+ */
150
+ export declare function transformCatalogBaseFieldsToShape(record: Record, $: ShapeTransform, descendants: Database): {
151
+ $id: ShapeTransform;
152
+ name: ShapeTransform;
153
+ active: ShapeTransform;
154
+ accessType: ShapeTransform;
155
+ assignedTopics: ShapeTransform;
156
+ availability: ShapeTransform;
157
+ availableFor: ShapeTransform;
158
+ catalogs: ShapeTransform;
159
+ categories: ShapeTransform;
160
+ checkedOut: ShapeTransform;
161
+ description: ShapeTransform;
162
+ hideAttachment: ShapeTransform;
163
+ hideSaveAsDraft: ShapeTransform;
164
+ icon: ShapeTransform;
165
+ mandatoryAttachment: ShapeTransform;
166
+ meta: ShapeTransform;
167
+ mobilePicture: ShapeTransform;
168
+ notAvailableFor: ShapeTransform;
169
+ order: ShapeTransform;
170
+ owner: ShapeTransform;
171
+ picture: ShapeTransform;
172
+ roles: ShapeTransform;
173
+ shortDescription: ShapeTransform;
174
+ showVariableHelpOnLoad: ShapeTransform;
175
+ startClosed: ShapeTransform;
176
+ state: ShapeTransform;
177
+ type: ShapeTransform;
178
+ useScLayout: ShapeTransform;
179
+ variableSets: ShapeTransform;
180
+ version: ShapeTransform;
181
+ view: ShapeTransform;
182
+ visibleBundle: ShapeTransform;
183
+ visibleGuide: ShapeTransform;
184
+ visibleStandalone: ShapeTransform;
185
+ };
186
+ /**
187
+ * Transforms common catalog fields from shape to record (fluent → platform)
188
+ * These fields have HIGH usage in both CatalogItem and CatalogItemRecordProducer forms
189
+ */
190
+ export declare function transformCatalogItemBaseFieldsToRecord($: ShapeTransform): {
191
+ name: ShapeTransform;
192
+ active: ShapeTransform;
193
+ access_type: ShapeTransform;
194
+ availability: ShapeTransform;
195
+ category: ShapeTransform;
196
+ checked_out: ShapeTransform;
197
+ description: ShapeTransform;
198
+ icon: ShapeTransform;
199
+ mandatory_attachment: ShapeTransform;
200
+ meta: ShapeTransform;
201
+ mobile_picture: ShapeTransform;
202
+ no_attachment_v2: ShapeTransform;
203
+ no_save_as_draft: ShapeTransform;
204
+ order: ShapeTransform;
205
+ owner: ShapeTransform;
206
+ picture: ShapeTransform;
207
+ roles: ShapeTransform;
208
+ sc_catalogs: ShapeTransform;
209
+ short_description: ShapeTransform;
210
+ show_variable_help_on_load: ShapeTransform;
211
+ state: ShapeTransform;
212
+ start_closed: ShapeTransform;
213
+ taxonomy_topic: ShapeTransform;
214
+ type: ShapeTransform;
215
+ use_sc_layout: ShapeTransform;
216
+ version: ShapeTransform;
217
+ view: ShapeTransform;
218
+ visible_bundle: ShapeTransform;
219
+ visible_guide: ShapeTransform;
220
+ visible_standalone: ShapeTransform;
221
+ };
222
+ /**
223
+ * CatalogItem-ONLY field transformations (LOW/RARE usage in CatalogItemRecordProducer)
224
+ * These fields are not commonly shown on CatalogItemRecordProducer forms
225
+ */
226
+ export declare function transformCatalogItemSpecificFieldsToShape(record: Record, $: ShapeTransform, descendants: Database): {
227
+ billable: ShapeTransform;
228
+ cost: ShapeTransform;
229
+ ignorePrice: ShapeTransform;
230
+ omitPrice: ShapeTransform;
231
+ pricingDetails: ShapeTransform;
232
+ mobileHidePrice: ShapeTransform;
233
+ executionPlan: ShapeTransform;
234
+ flow: ShapeTransform;
235
+ fulfillmentAutomationLevel: ShapeTransform;
236
+ fulfillmentGroup: ShapeTransform;
237
+ workflow: ShapeTransform;
238
+ deliveryTime: ShapeTransform;
239
+ displayPriceProperty: ShapeTransform;
240
+ requestMethod: ShapeTransform;
241
+ hideAddToCart: ShapeTransform;
242
+ hideQuantitySelector: ShapeTransform;
243
+ hideDeliveryTime: ShapeTransform;
244
+ customCart: ShapeTransform;
245
+ recurringFrequency: ShapeTransform;
246
+ noCart: ShapeTransform;
247
+ noOrder: ShapeTransform;
248
+ noOrderNow: ShapeTransform;
249
+ noProceedCheckout: ShapeTransform;
250
+ noQuantity: ShapeTransform;
251
+ noSearch: ShapeTransform;
252
+ hideAddToWishList: ShapeTransform;
253
+ hideSP: ShapeTransform;
254
+ image: ShapeTransform;
255
+ makeItemNonConversational: ShapeTransform;
256
+ mobilePictureType: ShapeTransform;
257
+ model: ShapeTransform;
258
+ vendor: ShapeTransform;
259
+ location: ShapeTransform;
260
+ };
261
+ /**
262
+ * CatalogItem-ONLY field transformations for toRecord (fluent → platform)
263
+ */
264
+ export declare function transformCatalogItemSpecificFieldsToRecord(arg: ObjectShape, $: ShapeTransform): {
265
+ billable: ShapeTransform;
266
+ cost: ShapeTransform;
267
+ ignore_price: ShapeTransform;
268
+ omit_price: ShapeTransform;
269
+ mobile_hide_price: ShapeTransform;
270
+ delivery_plan: ShapeTransform;
271
+ flow_designer_flow: ShapeTransform;
272
+ fulfillment_automation_level: ShapeTransform;
273
+ group: ShapeTransform;
274
+ workflow: ShapeTransform;
275
+ delivery_time: ShapeTransform;
276
+ delivery_plan_script: ShapeTransform;
277
+ display_price_property: ShapeTransform;
278
+ entitlement_script: ShapeTransform;
279
+ request_method: ShapeTransform;
280
+ no_cart_v2: ShapeTransform;
281
+ no_quantity_v2: ShapeTransform;
282
+ no_delivery_time_v2: ShapeTransform;
283
+ custom_cart: ShapeTransform;
284
+ recurring_frequency: ShapeTransform;
285
+ no_cart: ShapeTransform;
286
+ no_order: ShapeTransform;
287
+ no_order_now: ShapeTransform;
288
+ no_proceed_checkout: ShapeTransform;
289
+ no_quantity: ShapeTransform;
290
+ no_search: ShapeTransform;
291
+ no_wishlist_v2: ShapeTransform;
292
+ hide_sp: ShapeTransform;
293
+ image: ShapeTransform;
294
+ make_item_non_conversational: ShapeTransform;
295
+ mobile_picture_type: ShapeTransform;
296
+ model: ShapeTransform;
297
+ vendor: ShapeTransform;
298
+ location: ShapeTransform;
299
+ };
300
+ /**
301
+ * Creates M2M records for catalogs, categories, variable sets, etc.
302
+ * This logic is shared between CatalogItem and CatalogItemRecordProducer
303
+ */
304
+ export declare function createSharedM2MRecords(callExpression: Shape, arg: ObjectShape, parentRecord: Record, factory: Factory): Promise<{
305
+ catalogsRecords: Record[];
306
+ categoriesRecords: Record[];
307
+ variableSetRecords: Record[];
308
+ availableForRecords: Record[];
309
+ notAvailableForRecords: Record[];
310
+ assignedTopicsRecords: Record[];
311
+ }>;