@pega/custom-dx-components 26.1.11 → 26.1.12-alpha.0.2

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 (323) hide show
  1. package/README.md +6 -2
  2. package/package.json +48 -64
  3. package/src/ai/README.md +44 -0
  4. package/src/ai/catalog/README.md +133 -0
  5. package/src/ai/catalog/best-practices/README.md +24 -0
  6. package/src/ai/catalog/best-practices/accessibility-for-async-components.md +53 -0
  7. package/src/ai/catalog/best-practices/error-handling-and-resiliency.md +116 -0
  8. package/src/ai/catalog/best-practices/genai-assistant-integration-patterns.md +49 -0
  9. package/src/ai/catalog/best-practices/performance-and-efficiency.md +109 -0
  10. package/src/ai/catalog/best-practices/security-considerations.md +93 -0
  11. package/src/ai/catalog/best-practices/testing-pconnect-components.md +245 -0
  12. package/src/ai/catalog/best-practices/troubleshooting-common-pitfalls.md +132 -0
  13. package/src/ai/catalog/pconnect-assignment-lifecycle/SKILL.md +44 -0
  14. package/src/ai/catalog/pconnect-assignment-lifecycle/cookbooks/README.md +39 -0
  15. package/src/ai/catalog/pconnect-assignment-lifecycle/cookbooks/approval-workflow-decision.md +47 -0
  16. package/src/ai/catalog/pconnect-assignment-lifecycle/cookbooks/attachment-upload.md +45 -0
  17. package/src/ai/catalog/pconnect-assignment-lifecycle/cookbooks/bulk-action-submit.md +50 -0
  18. package/src/ai/catalog/pconnect-assignment-lifecycle/cookbooks/confirm-before-destructive-action.md +43 -0
  19. package/src/ai/catalog/pconnect-assignment-lifecycle/cookbooks/create-and-stage-new-case.md +45 -0
  20. package/src/ai/catalog/pconnect-assignment-lifecycle/cookbooks/graceful-submit-failure.md +39 -0
  21. package/src/ai/catalog/pconnect-assignment-lifecycle/cookbooks/modal-assignment-submit.md +58 -0
  22. package/src/ai/catalog/pconnect-assignment-lifecycle/cookbooks/multi-step-wizard.md +44 -0
  23. package/src/ai/catalog/pconnect-assignment-lifecycle/cookbooks/resolve-or-ignore-duplicate.md +47 -0
  24. package/src/ai/catalog/pconnect-assignment-lifecycle/cookbooks/safe-case-deletion.md +36 -0
  25. package/src/ai/catalog/pconnect-case-collaboration/SKILL.md +42 -0
  26. package/src/ai/catalog/pconnect-case-collaboration/cookbooks/README.md +36 -0
  27. package/src/ai/catalog/pconnect-case-collaboration/cookbooks/look-up-user-details.md +43 -0
  28. package/src/ai/catalog/pconnect-case-collaboration/cookbooks/manage-case-attachments.md +51 -0
  29. package/src/ai/catalog/pconnect-case-collaboration/cookbooks/manage-case-participants.md +52 -0
  30. package/src/ai/catalog/pconnect-case-collaboration/cookbooks/participant-and-follower.md +40 -0
  31. package/src/ai/catalog/pconnect-case-collaboration/cookbooks/post-and-manage-feed.md +50 -0
  32. package/src/ai/catalog/pconnect-case-collaboration/cookbooks/relate-cases.md +35 -0
  33. package/src/ai/catalog/pconnect-case-collaboration/cookbooks/tag-case-and-find-related.md +44 -0
  34. package/src/ai/catalog/pconnect-data-subscriptions/SKILL.md +42 -0
  35. package/src/ai/catalog/pconnect-data-subscriptions/cookbooks/README.md +35 -0
  36. package/src/ai/catalog/pconnect-data-subscriptions/cookbooks/data-page-subscription-cleanup.md +41 -0
  37. package/src/ai/catalog/pconnect-data-subscriptions/cookbooks/publish-and-subscribe-events.md +40 -0
  38. package/src/ai/catalog/pconnect-data-subscriptions/cookbooks/pubsub-cleanup.md +38 -0
  39. package/src/ai/catalog/pconnect-data-subscriptions/cookbooks/query-paginated-list-data.md +44 -0
  40. package/src/ai/catalog/pconnect-data-subscriptions/cookbooks/realtime-case-subscription.md +46 -0
  41. package/src/ai/catalog/pconnect-data-subscriptions/cookbooks/refresh-and-update-data.md +41 -0
  42. package/src/ai/catalog/pconnect-forms-and-fields/SKILL.md +44 -0
  43. package/src/ai/catalog/pconnect-forms-and-fields/cookbooks/README.md +36 -0
  44. package/src/ai/catalog/pconnect-forms-and-fields/cookbooks/autosave-tracking.md +45 -0
  45. package/src/ai/catalog/pconnect-forms-and-fields/cookbooks/cascading-dependent-fields.md +51 -0
  46. package/src/ai/catalog/pconnect-forms-and-fields/cookbooks/collect-form-changes-for-manual-save.md +45 -0
  47. package/src/ai/catalog/pconnect-forms-and-fields/cookbooks/custom-field-validators.md +44 -0
  48. package/src/ai/catalog/pconnect-forms-and-fields/cookbooks/discard-changes-and-reset-form.md +41 -0
  49. package/src/ai/catalog/pconnect-forms-and-fields/cookbooks/full-form-validation.md +38 -0
  50. package/src/ai/catalog/pconnect-forms-and-fields/cookbooks/persist-widget-ui-state.md +41 -0
  51. package/src/ai/catalog/pconnect-lists-and-views/SKILL.md +44 -0
  52. package/src/ai/catalog/pconnect-lists-and-views/cookbooks/README.md +35 -0
  53. package/src/ai/catalog/pconnect-lists-and-views/cookbooks/activate-and-switch-container-items.md +52 -0
  54. package/src/ai/catalog/pconnect-lists-and-views/cookbooks/container-item-lifecycle.md +61 -0
  55. package/src/ai/catalog/pconnect-lists-and-views/cookbooks/insert-delete-list-rows.md +40 -0
  56. package/src/ai/catalog/pconnect-lists-and-views/cookbooks/reorder-list-rows.md +39 -0
  57. package/src/ai/catalog/pconnect-lists-and-views/cookbooks/repeating-row-edit.md +39 -0
  58. package/src/ai/catalog/pconnect-lists-and-views/cookbooks/view-personalization.md +60 -0
  59. package/src/ai/catalog/pconnect-navigation-locale-genai/SKILL.md +45 -0
  60. package/src/ai/catalog/pconnect-navigation-locale-genai/cookbooks/README.md +35 -0
  61. package/src/ai/catalog/pconnect-navigation-locale-genai/cookbooks/agent-conversation-for-tasks.md +54 -0
  62. package/src/ai/catalog/pconnect-navigation-locale-genai/cookbooks/bookmarkable-filter-state.md +40 -0
  63. package/src/ai/catalog/pconnect-navigation-locale-genai/cookbooks/deep-link-semantic-url.md +39 -0
  64. package/src/ai/catalog/pconnect-navigation-locale-genai/cookbooks/genai-assistant-conversation.md +43 -0
  65. package/src/ai/catalog/pconnect-navigation-locale-genai/cookbooks/locale-switch-and-relocalize.md +38 -0
  66. package/src/ai/catalog/pconnect-navigation-locale-genai/cookbooks/persist-operator-preferences.md +40 -0
  67. package/src/ai/catalog/references/architecture-overview.md +52 -0
  68. package/src/ai/catalog/references/pconnect-actions-api.md +948 -0
  69. package/src/ai/catalog/references/pconnect-case-info-data-info-localization.md +618 -0
  70. package/src/ai/catalog/references/pconnect-case-validation-utilities.md +238 -0
  71. package/src/ai/catalog/references/pconnect-container-manager.md +215 -0
  72. package/src/ai/catalog/references/pconnect-list-actions.md +250 -0
  73. package/src/ai/catalog/references/pconnect-misc-suggestions-creation.md +231 -0
  74. package/src/ai/catalog/references/pconnect-reference-context-component.md +471 -0
  75. package/src/ai/catalog/references/pconnect-state-config.md +316 -0
  76. package/src/ai/catalog/references/pconnect-validation-api.md +45 -0
  77. package/src/ai/catalog/references/pcore-analytics-genai-details.md +50 -0
  78. package/src/ai/catalog/references/pcore-bootstrap-init-details.md +121 -0
  79. package/src/ai/catalog/references/pcore-bootstrap-registry-routing.md +253 -0
  80. package/src/ai/catalog/references/pcore-case-collaboration-details.md +191 -0
  81. package/src/ai/catalog/references/pcore-case-collaboration-genai.md +264 -0
  82. package/src/ai/catalog/references/pcore-environment-info-details.md +96 -0
  83. package/src/ai/catalog/references/pcore-environment-locale-namespace.md +175 -0
  84. package/src/ai/catalog/references/pcore-messaging-details.md +99 -0
  85. package/src/ai/catalog/references/pcore-misc-details.md +207 -0
  86. package/src/ai/catalog/references/pcore-misc-utilities.md +325 -0
  87. package/src/ai/catalog/references/pcore-rest-data-details.md +164 -0
  88. package/src/ai/catalog/references/pcore-rest-data-messaging.md +308 -0
  89. package/src/ai/catalog/references/pcore-store-context-details.md +40 -0
  90. package/src/ai/catalog/references/pcore-store-context-state.md +130 -0
  91. package/src/ai/index.js +154 -0
  92. package/src/ai/project/.claude/skills/boolean/SKILL.md +43 -0
  93. package/src/ai/project/.claude/skills/case/SKILL.md +58 -0
  94. package/src/ai/project/.claude/skills/create-dx-component/SKILL.md +98 -0
  95. package/src/ai/project/.claude/skills/create-dx-component/assets/PConnProps.d.ts +24 -0
  96. package/src/ai/project/.claude/skills/create-dx-component/assets/create-nonce.ts +5 -0
  97. package/src/ai/project/.claude/skills/create-dx-component/assets/event-utils.ts +18 -0
  98. package/src/ai/project/.claude/skills/create-dx-component/assets/styles.ts +7 -0
  99. package/src/ai/project/.claude/skills/create-dx-component/cookbooks/README.md +28 -0
  100. package/src/ai/project/.claude/skills/create-dx-component/cookbooks/build-a-data-widget.md +281 -0
  101. package/src/ai/project/.claude/skills/create-dx-component/cookbooks/field-with-limits-and-validation.md +156 -0
  102. package/src/ai/project/.claude/skills/create-dx-component/cookbooks/status-badge-field.md +97 -0
  103. package/src/ai/project/.claude/skills/create-dx-component/references/accessibility.md +71 -0
  104. package/src/ai/project/.claude/skills/create-dx-component/references/choosing-type-and-subtype.md +79 -0
  105. package/src/ai/project/.claude/skills/create-dx-component/references/cli-workflow.md +125 -0
  106. package/src/ai/project/.claude/skills/create-dx-component/references/component-patterns.md +241 -0
  107. package/src/ai/project/.claude/skills/create-dx-component/references/config-schema.md +296 -0
  108. package/src/ai/project/.claude/skills/create-dx-component/references/cosmos-components.md +137 -0
  109. package/src/ai/project/.claude/skills/create-dx-component/references/field-behavior.md +155 -0
  110. package/src/ai/project/.claude/skills/create-dx-component/references/field-essentials.md +90 -0
  111. package/src/ai/project/.claude/skills/create-dx-component/references/field-subtypes-extra.md +68 -0
  112. package/src/ai/project/.claude/skills/create-dx-component/references/localization.md +30 -0
  113. package/src/ai/project/.claude/skills/create-dx-component/references/pcore-pconnect-apis.md +77 -0
  114. package/src/ai/project/.claude/skills/create-dx-component/references/presentation-essentials.md +57 -0
  115. package/src/ai/project/.claude/skills/create-dx-component/references/props-contract.md +182 -0
  116. package/src/ai/project/.claude/skills/create-dx-component/references/state-matrix.md +102 -0
  117. package/src/ai/project/.claude/skills/create-dx-component/references/storybook-pattern.md +262 -0
  118. package/src/ai/project/.claude/skills/create-dx-component/references/styles-pattern.md +54 -0
  119. package/src/ai/project/.claude/skills/create-dx-component/references/template-essentials.md +87 -0
  120. package/src/ai/project/.claude/skills/create-dx-component/references/template-patterns.md +131 -0
  121. package/src/ai/project/.claude/skills/create-dx-component/references/test-pattern.md +215 -0
  122. package/src/ai/project/.claude/skills/create-dx-component/references/ui-gallery-reuse.md +93 -0
  123. package/src/ai/project/.claude/skills/create-dx-component/references/widget-essentials.md +84 -0
  124. package/src/ai/project/.claude/skills/create-dx-component/references/widget-patterns.md +164 -0
  125. package/src/ai/project/.claude/skills/currency/SKILL.md +46 -0
  126. package/src/ai/project/.claude/skills/date/SKILL.md +46 -0
  127. package/src/ai/project/.claude/skills/decimal/SKILL.md +49 -0
  128. package/src/ai/project/.claude/skills/details/SKILL.md +60 -0
  129. package/src/ai/project/.claude/skills/email/SKILL.md +42 -0
  130. package/src/ai/project/.claude/skills/field/SKILL.md +68 -0
  131. package/src/ai/project/.claude/skills/form/SKILL.md +51 -0
  132. package/src/ai/project/.claude/skills/generate-component-set/SKILL.md +80 -0
  133. package/src/ai/project/.claude/skills/generate-component-set/component-manifest.json +161 -0
  134. package/src/ai/project/.claude/skills/identify-components/SKILL.md +76 -0
  135. package/src/ai/project/.claude/skills/integer/SKILL.md +45 -0
  136. package/src/ai/project/.claude/skills/page/SKILL.md +60 -0
  137. package/src/ai/project/.claude/skills/page-widget/SKILL.md +55 -0
  138. package/src/ai/project/.claude/skills/percentage/SKILL.md +52 -0
  139. package/src/ai/project/.claude/skills/phone/SKILL.md +44 -0
  140. package/src/ai/project/.claude/skills/picklist/SKILL.md +50 -0
  141. package/src/ai/project/.claude/skills/plan-dx-component/SKILL.md +51 -0
  142. package/src/ai/project/.claude/skills/plan-dx-component/references/design-system-mapping.md +108 -0
  143. package/src/ai/project/.claude/skills/plan-dx-component/references/intake.md +146 -0
  144. package/src/ai/project/.claude/skills/plan-dx-component/references/plan-template.md +76 -0
  145. package/src/ai/project/.claude/skills/plan-dx-component/references/requirements-template.md +88 -0
  146. package/src/ai/project/.claude/skills/presentation/SKILL.md +61 -0
  147. package/src/ai/project/.claude/skills/publish-library/SKILL.md +106 -0
  148. package/src/ai/project/.claude/skills/radiobuttons/SKILL.md +51 -0
  149. package/src/ai/project/.claude/skills/review-component/SKILL.md +49 -0
  150. package/src/ai/project/.claude/skills/review-component/references/checklist.md +77 -0
  151. package/src/ai/project/.claude/skills/template/SKILL.md +60 -0
  152. package/src/ai/project/.claude/skills/text/SKILL.md +45 -0
  153. package/src/ai/project/.claude/skills/update-dx-component/SKILL.md +56 -0
  154. package/src/ai/project/.claude/skills/update-dx-component/references/maintenance.md +43 -0
  155. package/src/ai/project/.claude/skills/url/SKILL.md +46 -0
  156. package/src/ai/project/.claude/skills/validate-component/SKILL.md +78 -0
  157. package/src/ai/project/.claude/skills/validate-component/references/runtime-troubleshooting.md +56 -0
  158. package/src/ai/project/.claude/skills/validate-component/scripts/check-component.mjs +327 -0
  159. package/src/ai/project/.claude/skills/widget/SKILL.md +59 -0
  160. package/src/ai/project/.gemini/settings.json +5 -0
  161. package/src/ai/project/AGENTS.md +74 -0
  162. package/src/ai/readme-section.md +91 -0
  163. package/src/cli.js +48 -7
  164. package/src/constants.js +54 -53
  165. package/src/internal-tests.js +27 -0
  166. package/src/tasks/ai-toggle/index.js +46 -0
  167. package/src/tasks/authenticate/helper.js +38 -38
  168. package/src/tasks/authenticate/index.js +17 -15
  169. package/src/tasks/build-all/helper.js +4 -4
  170. package/src/tasks/build-all/index.js +7 -7
  171. package/src/tasks/build-comp/helper.js +17 -17
  172. package/src/tasks/build-comp/index.js +10 -10
  173. package/src/tasks/build-jest-assets/index.js +7 -9
  174. package/src/tasks/build-lib/helper.js +8 -8
  175. package/src/tasks/build-lib/index.js +8 -8
  176. package/src/tasks/bundle/builder/index.js +9 -12
  177. package/src/tasks/bundle/builder/modules.js +8 -9
  178. package/src/tasks/bundle/builder/paths.js +2 -19
  179. package/src/tasks/bundle/builder/webpack.config.js +60 -77
  180. package/src/tasks/bundle/index.js +8 -8
  181. package/src/tasks/create/index.js +35 -35
  182. package/src/tasks/create/templates/Constellation/Field/Boolean/index.tsx.mustache +1 -36
  183. package/src/tasks/create/templates/Constellation/Field/Date/date.ts.mustache +2 -2
  184. package/src/tasks/create/templates/Constellation/Field/Date/index.tsx.mustache +2 -27
  185. package/src/tasks/create/templates/Constellation/Field/DateTime/date-utils.ts.mustache +2 -2
  186. package/src/tasks/create/templates/Constellation/Field/DateTime/date.ts.mustache +2 -2
  187. package/src/tasks/create/templates/Constellation/Field/DateTime/index.tsx.mustache +2 -35
  188. package/src/tasks/create/templates/Constellation/Field/Decimal/index.tsx.mustache +3 -36
  189. package/src/tasks/create/templates/Constellation/Field/Decimal-Currency/index.tsx.mustache +4 -39
  190. package/src/tasks/create/templates/Constellation/Field/Decimal-Percentage/index.tsx.mustache +4 -53
  191. package/src/tasks/create/templates/Constellation/Field/Icon-Button-URL/index.tsx.mustache +5 -5
  192. package/src/tasks/create/templates/Constellation/Field/Integer/index.tsx.mustache +3 -36
  193. package/src/tasks/create/templates/Constellation/Field/Picklist/index.tsx.mustache +7 -42
  194. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/component-constants.ts +1 -1
  195. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/date.ts.mustache +0 -2
  196. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/embed-utils.ts.mustache +1 -1
  197. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/index.tsx.mustache +11 -11
  198. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/repeat-utils.ts.mustache +3 -13
  199. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/textformat-utils.tsx.mustache +2 -3
  200. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/utils.ts.mustache +28 -28
  201. package/src/tasks/create/templates/Constellation/Field/Picklist-RadioButtons/index.tsx.mustache +2 -2
  202. package/src/tasks/create/templates/Constellation/Field/Picklist-RadioButtons/textformat-utils.tsx.mustache +2 -3
  203. package/src/tasks/create/templates/Constellation/Field/Text/index.tsx.mustache +4 -33
  204. package/src/tasks/create/templates/Constellation/Field/Text-Email/index.tsx.mustache +3 -33
  205. package/src/tasks/create/templates/Constellation/Field/Text-Input/index.tsx.mustache +3 -31
  206. package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/index.tsx.mustache +3 -31
  207. package/src/tasks/create/templates/Constellation/Field/Text-Phone/index.tsx.mustache +3 -35
  208. package/src/tasks/create/templates/Constellation/Field/Text-URL/index.tsx.mustache +3 -33
  209. package/src/tasks/create/templates/Constellation/Field/Text-URL/text-url.tsx.mustache +2 -3
  210. package/src/tasks/create/templates/Constellation/Field/TimeofDay/index.tsx.mustache +2 -35
  211. package/src/tasks/create/templates/Constellation/Field/TimeofDay/time-of-day.ts.mustache +2 -2
  212. package/src/tasks/create/templates/Constellation/Template/DETAILS/Avatar.tsx.mustache +19 -15
  213. package/src/tasks/create/templates/Constellation/Template/DETAILS/Operator.tsx.mustache +6 -6
  214. package/src/tasks/create/templates/Constellation/Template/DETAILS/demo.stories.tsx.mustache +1 -1
  215. package/src/tasks/create/templates/Constellation/Template/DETAILS/index.tsx.mustache +4 -8
  216. package/src/tasks/create/templates/Constellation/Template/DETAILS/mock.ts.mustache +9 -9
  217. package/src/tasks/create/templates/Constellation/Template/DETAILS/utils.js.mustache +4 -8
  218. package/src/tasks/create/templates/Constellation/Template/DETAILS-region/Avatar.tsx.mustache +19 -15
  219. package/src/tasks/create/templates/Constellation/Template/DETAILS-region/Operator.tsx.mustache +6 -6
  220. package/src/tasks/create/templates/Constellation/Template/DETAILS-region/demo.stories.tsx.mustache +1 -1
  221. package/src/tasks/create/templates/Constellation/Template/DETAILS-region/index.tsx.mustache +1 -1
  222. package/src/tasks/create/templates/Constellation/Template/DETAILS-region/mock.ts.mustache +9 -9
  223. package/src/tasks/create/templates/Constellation/Template/DETAILS-region/utils.ts.mustache +4 -8
  224. package/src/tasks/create/templates/Constellation/Template/FORM/demo.stories.tsx.mustache +8 -8
  225. package/src/tasks/create/templates/Constellation/Template/FORM-region/demo.stories.tsx.mustache +8 -8
  226. package/src/tasks/create/templates/Constellation/Template/PAGE/utils.ts.mustache +4 -9
  227. package/src/tasks/create/templates/Constellation/Widget/CASE/demo.test.tsx.mustache +3 -3
  228. package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/Avatar.tsx.mustache +19 -14
  229. package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/Operator.tsx.mustache +6 -6
  230. package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/index.tsx.mustache +1 -1
  231. package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/mock.ts.mustache +1 -1
  232. package/src/tasks/create/templates/Launchpad/Field/Icon-Button-URL/index.tsx.mustache +5 -5
  233. package/src/tasks/create/templates/Launchpad/Field/Text-Phone/index.tsx.mustache +3 -35
  234. package/src/tasks/create/templates/Launchpad/Field/__components.md +1 -1
  235. package/src/tasks/create/templates/Launchpad/Template/FORM/demo.stories.tsx.mustache +8 -8
  236. package/src/tasks/create/templates/Launchpad/Template/FORM-region/demo.stories.tsx.mustache +8 -8
  237. package/src/tasks/create/templates/Launchpad/Widget/CASE/demo.test.tsx.mustache +3 -3
  238. package/src/tasks/create/templates/Launchpad/Widget/PAGE-CASE/index.tsx.mustache +1 -1
  239. package/src/tasks/create/templates/Launchpad/Widget/PAGE-CASE/mock.ts.mustache +1 -1
  240. package/src/tasks/create-all/index.js +42 -41
  241. package/src/tasks/create-lib/helper.js +13 -13
  242. package/src/tasks/create-lib/index.js +5 -5
  243. package/src/tasks/create-version/helper.js +10 -10
  244. package/src/tasks/create-version/index.js +3 -4
  245. package/src/tasks/delete/helper.js +20 -19
  246. package/src/tasks/delete/index.js +2 -2
  247. package/src/tasks/delete-all/helper.js +26 -25
  248. package/src/tasks/delete-all/index.js +2 -2
  249. package/src/tasks/delete-lib/helper.js +6 -6
  250. package/src/tasks/delete-lib/index.js +6 -6
  251. package/src/tasks/delete-pub/helper.js +18 -18
  252. package/src/tasks/delete-pub/index.js +8 -8
  253. package/src/tasks/delete-version/index.js +2 -2
  254. package/src/tasks/dev-server/index.js +1 -1
  255. package/src/tasks/export-archive/helper.js +21 -21
  256. package/src/tasks/export-archive/index.js +27 -40
  257. package/src/tasks/export-rc/helper.js +34 -34
  258. package/src/tasks/export-rc/index.js +21 -31
  259. package/src/tasks/import-archive/helper.js +39 -39
  260. package/src/tasks/import-archive/index.js +69 -89
  261. package/src/tasks/import-comp/helper.js +8 -8
  262. package/src/tasks/import-comp/index.js +30 -42
  263. package/src/tasks/index.js +5 -0
  264. package/src/tasks/init/Node.gitignore +149 -0
  265. package/src/tasks/init/helper.js +15 -8
  266. package/src/tasks/init/index.js +115 -35
  267. package/src/tasks/init/template/.prettierrc.json +4 -1
  268. package/src/tasks/init/template/.storybook/main.ts +1 -4
  269. package/src/tasks/init/template/.storybook/manager.ts +1 -1
  270. package/src/tasks/init/template/.storybook/preview.tsx +2 -2
  271. package/src/tasks/init/template/.storybook/theme.js +1 -1
  272. package/src/tasks/init/template/.vscode/extensions.json +0 -1
  273. package/src/tasks/init/template/README.md +2 -2
  274. package/src/tasks/init/template/eslint.config.mjs +13 -155
  275. package/src/tasks/init/template/jest.config.cjs +2 -0
  276. package/src/tasks/init/template/package-lock.json +26864 -0
  277. package/src/tasks/init/template/package.json.mustache +19 -74
  278. package/src/tasks/init/template/setupTests.ts +10 -4
  279. package/src/tasks/init/template/tsconfig.json +14 -6
  280. package/src/tasks/internal-test/index.js +21 -0
  281. package/src/tasks/internal-test-full/index.js +15 -0
  282. package/src/tasks/internal-test-functional/index.js +15 -0
  283. package/src/tasks/internal-test-unit/index.js +13 -0
  284. package/src/tasks/linter/index.js +2 -2
  285. package/src/tasks/list/helper.js +41 -40
  286. package/src/tasks/list/index.js +3 -3
  287. package/src/tasks/list-lib/helper.js +5 -5
  288. package/src/tasks/list-lib/index.js +8 -8
  289. package/src/tasks/list-pub/helper.js +23 -16
  290. package/src/tasks/list-pub/index.js +24 -21
  291. package/src/tasks/move/helper.js +8 -8
  292. package/src/tasks/move/index.js +19 -23
  293. package/src/tasks/promote-webpack/index.js +4 -4
  294. package/src/tasks/promote-webpack/webpack.config.js +62 -93
  295. package/src/tasks/publish/helper.js +21 -21
  296. package/src/tasks/publish/index.js +16 -16
  297. package/src/tasks/publish-all/helper.js +20 -20
  298. package/src/tasks/publish-all/index.js +11 -12
  299. package/src/tasks/publish-archive/helper.js +9 -9
  300. package/src/tasks/publish-archive/index.js +12 -14
  301. package/src/tasks/publish-lib/helper.js +3 -3
  302. package/src/tasks/publish-lib/index.js +28 -34
  303. package/src/tasks/quarantine/index.js +8 -8
  304. package/src/tasks/rename/index.js +26 -30
  305. package/src/tasks/rename-lib/index.js +21 -25
  306. package/src/tasks/restore/index.js +8 -8
  307. package/src/tasks/restore-config/index.js +3 -5
  308. package/src/tasks/set-perm/index.js +8 -8
  309. package/src/tasks/show-help/index.js +17 -9
  310. package/src/tasks/show-status/index.js +2 -2
  311. package/src/tasks/store/index.js +8 -8
  312. package/src/tasks/switch-lib/helper.js +7 -7
  313. package/src/tasks/switch-lib/index.js +7 -7
  314. package/src/tasks/switch-version/helper.js +6 -6
  315. package/src/tasks/switch-version/index.js +7 -7
  316. package/src/tasks/update/index.js +1 -1
  317. package/src/tasks/upgrade/index.js +7 -7
  318. package/src/tasks/validator/index.js +49 -203
  319. package/src/util.js +169 -186
  320. package/src/rules/no-pcore-pconnect-in-presentation.js +0 -103
  321. package/src/tasks/init/template/.stylelintrc.json +0 -4
  322. package/src/tasks/init/template/babel.config.cjs +0 -22
  323. package/src/tasks/init/template/cspell.json +0 -14
@@ -0,0 +1,948 @@
1
+ # ActionsApi
2
+
3
+ > Part of the [PCore / PConnect API Reference skills](../README.md). Obtained via `pConn.getActionsApi()`.
4
+
5
+ ## Case / Work Lifecycle
6
+
7
+ ### `createWork(className, options?)`
8
+
9
+ **Purpose:** Creates a new case/work object of the given class and displays its first assignment.
10
+
11
+ **Signature:**
12
+
13
+ ```typescript
14
+ createWork(className: string, options?: {
15
+ flowType?: string; containerName?: string; openCaseViewAfterCreate?: boolean;
16
+ startingFields?: Record<string, unknown>; channelName?: string;
17
+ }): Promise<unknown>
18
+ ```
19
+
20
+ **Example:**
21
+
22
+ ```typescript
23
+ await pConn.getActionsApi().createWork('MyOrg-MyApp-Work-Request', {
24
+ containerName: 'primary',
25
+ startingFields: { FirstName: 'Adam', LastName: 'Smith' }
26
+ });
27
+ ```
28
+
29
+ **Notes:** `createCase()` below is a convenience wrapper over this method.
30
+
31
+ ---
32
+
33
+ ### `createCase(className, options?)`
34
+
35
+ **Purpose:** Convenience wrapper that delegates to `createWork()`.
36
+
37
+ **Signature:**
38
+
39
+ ```typescript
40
+ createCase(className: string, options?: { flowType?: string; containerName?: string; startingFields?: Record<string, unknown> }): Promise<unknown>
41
+ ```
42
+
43
+ **Example:**
44
+
45
+ ```typescript
46
+ await pConn.getActionsApi().createCase('MyOrg-MyApp-Work-Request', { containerName: 'primary' });
47
+ ```
48
+
49
+ ---
50
+
51
+ ### `openWorkByHandle(workID, className, options?)`
52
+
53
+ **Purpose:** Opens an existing work/case object by its work handle and class.
54
+
55
+ **Signature:**
56
+
57
+ ```typescript
58
+ openWorkByHandle(workID: string, className: string, options?: { targetContainer?: string }): Promise<unknown>
59
+ ```
60
+
61
+ **Example:**
62
+
63
+ ```typescript
64
+ await pConn.getActionsApi().openWorkByHandle(caseHandle, caseClassName);
65
+ ```
66
+
67
+ ---
68
+
69
+ ### `openAssignment(assignmentID, className, options?)`
70
+
71
+ **Purpose:** Opens the given assignment in the specified target container.
72
+
73
+ **Signature:**
74
+
75
+ ```typescript
76
+ openAssignment(assignmentID: string, className: string, options?: { containerName: string; context?: string; viewType?: string; isActionFromToDoList?: boolean; isChild?: boolean; renderInline?: boolean; pageName?: string; skipBrowserSemanticUrlUpdate?: boolean }): any
77
+ ```
78
+
79
+ **Example:**
80
+
81
+ ```typescript
82
+ await pConn.getActionsApi().openAssignment(assignmentID, className, { containerName: 'primary' });
83
+ ```
84
+
85
+ ---
86
+
87
+ ### `finishAssignment(containerItemID, options?)`
88
+
89
+ **Purpose:** Submits (finishes) the assignment currently loaded in the given container item.
90
+
91
+ **Signature:**
92
+
93
+ ```typescript
94
+ finishAssignment(containerItemID: string, options?: { outcomeID?: string }): Promise<unknown>
95
+ ```
96
+
97
+ **Example:**
98
+
99
+ ```typescript
100
+ await pConn.getActionsApi().finishAssignment(containerItemID);
101
+ ```
102
+
103
+ ---
104
+
105
+ ### `getNextWork()`
106
+
107
+ **Purpose:** Opens the next urgent assignment for the current user.
108
+
109
+ **Signature:**
110
+
111
+ ```typescript
112
+ getNextWork(): Promise<unknown>
113
+ ```
114
+
115
+ **Example:**
116
+
117
+ ```typescript
118
+ await pConn.getActionsApi().getNextWork();
119
+ ```
120
+
121
+ ---
122
+
123
+ ### `openStage(stageID)`
124
+
125
+ **Purpose:** Opens the case stage identified by `stageID`.
126
+
127
+ **Signature:**
128
+
129
+ ```typescript
130
+ openStage(stageID: string): Promise<unknown>
131
+ ```
132
+
133
+ **Example:**
134
+
135
+ ```typescript
136
+ await pConn.getActionsApi().openStage(stageID);
137
+ ```
138
+
139
+ ---
140
+
141
+ ### `approveCase(containerItemID)` / `rejectCase(containerItemID)`
142
+
143
+ **Purpose:** Sets the approval flag for a case's approval step, then finishes the assignment.
144
+
145
+ **Signature:**
146
+
147
+ ```typescript
148
+ approveCase(containerItemID: string): Promise<unknown>
149
+ rejectCase(containerItemID: string): Promise<unknown>
150
+ ```
151
+
152
+ **Example:**
153
+
154
+ ```typescript
155
+ await pConn.getActionsApi().approveCase(containerItemID);
156
+ ```
157
+
158
+ ---
159
+
160
+ ### `resolveDuplicateCase(containerItemID)` / `ignoreDuplicateCase(containerItemID)`
161
+
162
+ **Purpose:** Marks a detected duplicate case as resolved, or ignores it, then finishes the assignment.
163
+
164
+ **Signature:**
165
+
166
+ ```typescript
167
+ resolveDuplicateCase(containerItemID: string): Promise<unknown>
168
+ ignoreDuplicateCase(containerItemID: string): Promise<unknown>
169
+ ```
170
+
171
+ **Example:**
172
+
173
+ ```typescript
174
+ await pConn.getActionsApi().resolveDuplicateCase(containerItemID);
175
+ ```
176
+
177
+ ---
178
+
179
+ ### `cancelAssignment(containerItemID, skipPublishCancelEvent)`
180
+
181
+ **Purpose:** Cancels the assignment associated with the current case, releasing any locks.
182
+
183
+ **Signature:**
184
+
185
+ ```typescript
186
+ cancelAssignment(containerItemID: string, skipPublishCancelEvent: boolean): Promise<unknown>
187
+ ```
188
+
189
+ **Example:**
190
+
191
+ ```typescript
192
+ await pConn.getActionsApi().cancelAssignment(containerItemID, false);
193
+ ```
194
+
195
+ ---
196
+
197
+ ### `cancelLocalAction(containerItemID)`
198
+
199
+ **Purpose:** Cancels the currently open local action.
200
+
201
+ **Signature:**
202
+
203
+ ```typescript
204
+ cancelLocalAction(containerItemID: string): Promise<unknown>
205
+ ```
206
+
207
+ **Example:**
208
+
209
+ ```typescript
210
+ await pConn.getActionsApi().cancelLocalAction(containerItemID);
211
+ ```
212
+
213
+ ---
214
+
215
+ ### `cancelCreateStageAssignment(containerItemID)`
216
+
217
+ **Purpose:** Cancels an assignment that is still in the case's create stage.
218
+
219
+ **Signature:**
220
+
221
+ ```typescript
222
+ cancelCreateStageAssignment(containerItemID: string): Promise<unknown>
223
+ ```
224
+
225
+ **Example:**
226
+
227
+ ```typescript
228
+ await pConn.getActionsApi().cancelCreateStageAssignment(containerItemID);
229
+ ```
230
+
231
+ ---
232
+
233
+ ### `saveAssignment(containerItemID)`
234
+
235
+ **Purpose:** Saves (without closing) the currently opened assignment.
236
+
237
+ **Signature:**
238
+
239
+ ```typescript
240
+ saveAssignment(containerItemID: string): Promise<unknown>
241
+ ```
242
+
243
+ **Example:**
244
+
245
+ ```typescript
246
+ await pConn.getActionsApi().saveAssignment(containerItemID);
247
+ ```
248
+
249
+ ---
250
+
251
+ ### `saveAndClose(containerItemID)`
252
+
253
+ **Purpose:** Saves the current work object opened in a modal dialog and closes it.
254
+
255
+ **Signature:**
256
+
257
+ ```typescript
258
+ saveAndClose(containerItemID: string): Promise<unknown>
259
+ ```
260
+
261
+ **Example:**
262
+
263
+ ```typescript
264
+ await pConn.getActionsApi().saveAndClose(containerItemID);
265
+ ```
266
+
267
+ ---
268
+
269
+ ### `deleteCaseInCreateStage(containerItemID, ignoreCaseDeletion?)`
270
+
271
+ **Purpose:** Deletes a case that is currently in its create stage.
272
+
273
+ **Signature:**
274
+
275
+ ```typescript
276
+ deleteCaseInCreateStage(containerItemID: string, ignoreCaseDeletion?: boolean): Promise<unknown>
277
+ ```
278
+
279
+ **Example:**
280
+
281
+ ```typescript
282
+ await pConn.getActionsApi().deleteCaseInCreateStage(containerItemID);
283
+ ```
284
+
285
+ ---
286
+
287
+ ### `deleteWork(workId, caseTypeID, options?)`
288
+
289
+ **Purpose:** Deletes a work object, showing a confirmation dialog unless `skipDeleteConfirmation` is set.
290
+
291
+ **Signature:**
292
+
293
+ ```typescript
294
+ deleteWork(workId: string, caseTypeID: string, options?: { skipDeleteConfirmation?: boolean }): Promise<unknown>
295
+ ```
296
+
297
+ **Example:**
298
+
299
+ ```typescript
300
+ await pConn.getActionsApi().deleteWork(workId, caseTypeID);
301
+ ```
302
+
303
+ ---
304
+
305
+ ### `navigateToStep(stepID, containerItemID)`
306
+
307
+ **Purpose:** Navigates to a specific step (or `"previous"`) within a container's flow.
308
+
309
+ **Signature:**
310
+
311
+ ```typescript
312
+ navigateToStep(stepID: string, containerItemID: string): Promise<unknown>
313
+ ```
314
+
315
+ **Example:**
316
+
317
+ ```typescript
318
+ await pConn.getActionsApi().navigateToStep('previous', containerItemID);
319
+ ```
320
+
321
+ ---
322
+
323
+ ## Local & Process Actions
324
+
325
+ ### `openLocalAction(actionID, options)`
326
+
327
+ **Purpose:** Opens a local action configured as Case-wide, Stage-wide, Assignment-level, or Express scope.
328
+
329
+ **Signature:**
330
+
331
+ ```typescript
332
+ openLocalAction(actionID: string, options: { type: 'Assignment' | 'Case' | 'Stage' | 'Express'; containerName?: string }): Promise<unknown>
333
+ ```
334
+
335
+ **Example:**
336
+
337
+ ```typescript
338
+ await pConn.getActionsApi().openLocalAction('EditDetails', { type: 'Case' });
339
+ ```
340
+
341
+ ---
342
+
343
+ ### `openProcessAction(actionID, options)`
344
+
345
+ **Purpose:** Opens a configured process action (Case-wide or Stage-wide).
346
+
347
+ **Signature:**
348
+
349
+ ```typescript
350
+ openProcessAction(actionID: string, options: { type: 'Case' | 'Stage' }): Promise<unknown>
351
+ ```
352
+
353
+ **Example:**
354
+
355
+ ```typescript
356
+ await pConn.getActionsApi().openProcessAction('VendorAddition_Flow', { type: 'Case' });
357
+ ```
358
+
359
+ ---
360
+
361
+ ## Bulk Actions
362
+
363
+ ### `submitBulkAction(containerItemID)` / `submitBulkActionAsync(containerItemID)`
364
+
365
+ **Purpose:** Submits a bulk action synchronously or asynchronously for the given container item.
366
+
367
+ **Signature:**
368
+
369
+ ```typescript
370
+ submitBulkAction(containerItemID: string): Promise<unknown>
371
+ submitBulkActionAsync(containerItemID: string): Promise<unknown>
372
+ ```
373
+
374
+ **Notes:** Only a single `containerItemID` string is accepted — passing anything else (including an array) rejects with a `TypeError` at runtime.
375
+
376
+ **Example:**
377
+
378
+ ```typescript
379
+ await pConn.getActionsApi().submitBulkAction(containerItemID);
380
+ ```
381
+
382
+ ---
383
+
384
+ ### `openBulkAction(actionID, options)`
385
+
386
+ **Purpose:** Opens the UI for a bulk action against a selected list of cases.
387
+
388
+ **Signature:**
389
+
390
+ ```typescript
391
+ openBulkAction(actionID: string, options: { selectedList?: string[]; runningMode?: 'sync' | 'async' }): Promise<unknown>
392
+ ```
393
+
394
+ **Example:**
395
+
396
+ ```typescript
397
+ pConn.getActionsApi().openBulkAction(actionID, { selectedList: selectedCaseKeys });
398
+ ```
399
+
400
+ ---
401
+
402
+ ### `cancelBulkAction(containerItemID)`
403
+
404
+ **Purpose:** Cancels a bulk action by removing its transient container item.
405
+
406
+ **Signature:**
407
+
408
+ ```typescript
409
+ cancelBulkAction(containerItemID: string): Promise<unknown>
410
+ ```
411
+
412
+ **Example:**
413
+
414
+ ```typescript
415
+ await pConn.getActionsApi().cancelBulkAction(containerItemID);
416
+ ```
417
+
418
+ ---
419
+
420
+ ## Data Object Operations
421
+
422
+ ### `showDataObjectCreateView(className, viewName?)`
423
+
424
+ **Purpose:** Displays the create view for a data object of the given class.
425
+
426
+ **Signature:**
427
+
428
+ ```typescript
429
+ showDataObjectCreateView(className: string, viewName?: string): Promise<unknown>
430
+ ```
431
+
432
+ **Example:**
433
+
434
+ ```typescript
435
+ await pConn.getActionsApi().showDataObjectCreateView(className);
436
+ ```
437
+
438
+ ---
439
+
440
+ ### `cancelDataObject(containerItemID)`
441
+
442
+ **Purpose:** Cancels creation of a data object.
443
+
444
+ **Signature:**
445
+
446
+ ```typescript
447
+ cancelDataObject(containerItemID: string): Promise<unknown>
448
+ ```
449
+
450
+ **Example:**
451
+
452
+ ```typescript
453
+ await pConn.getActionsApi().cancelDataObject(containerItemID);
454
+ ```
455
+
456
+ ---
457
+
458
+ ### `createDataObject(containerItemID)`
459
+
460
+ **Purpose:** Creates a data object whose create view is loaded in the specified container item.
461
+
462
+ **Signature:**
463
+
464
+ ```typescript
465
+ createDataObject(containerItemID: string): Promise<unknown>
466
+ ```
467
+
468
+ **Example:**
469
+
470
+ ```typescript
471
+ await pConn.getActionsApi().createDataObject(containerItemID);
472
+ ```
473
+
474
+ ---
475
+
476
+ ### `deleteDataObject(className, keys)`
477
+
478
+ **Purpose:** Deletes a data object of the given class, identified by its primary key values.
479
+
480
+ **Signature:**
481
+
482
+ ```typescript
483
+ deleteDataObject(className: string, keys: Record<string, unknown>): Promise<unknown>
484
+ ```
485
+
486
+ **Example:**
487
+
488
+ ```typescript
489
+ await pConn.getActionsApi().deleteDataObject(className, { pyGUID: recordId });
490
+ ```
491
+
492
+ ---
493
+
494
+ ### `getDataObjectView(className, keyProperties, options?)`
495
+
496
+ **Purpose:** Displays the edit view of a data object to be updated.
497
+
498
+ **Signature:**
499
+
500
+ ```typescript
501
+ getDataObjectView(className: string, keyProperties: Record<string, unknown>, options?: { viewName?: string; readOnly?: boolean }): Promise<unknown>
502
+ ```
503
+
504
+ **Example:**
505
+
506
+ ```typescript
507
+ await pConn.getActionsApi().getDataObjectView(className, { pyGUID: recordId });
508
+ ```
509
+
510
+ ---
511
+
512
+ ### `updateDataObject(containerItemID, keys)`
513
+
514
+ **Purpose:** Updates a data object whose edit view is loaded in the specified container item.
515
+
516
+ **Signature:**
517
+
518
+ ```typescript
519
+ updateDataObject(containerItemID: string, keys: Record<string, unknown>): Promise<unknown>
520
+ ```
521
+
522
+ **Example:**
523
+
524
+ ```typescript
525
+ await pConn.getActionsApi().updateDataObject(containerItemID, { pyGUID: recordId });
526
+ ```
527
+
528
+ ---
529
+
530
+ ### `openDataObjectAction(className, keyProperties, actionID, actionName)`
531
+
532
+ **Purpose:** Displays the flow-action view for updating a data object via a configured action.
533
+
534
+ **Signature:**
535
+
536
+ ```typescript
537
+ openDataObjectAction(className: string, keyProperties: Record<string, unknown>, actionID: string, actionName: string): Promise<unknown>
538
+ ```
539
+
540
+ **Example:**
541
+
542
+ ```typescript
543
+ await pConn.getActionsApi().openDataObjectAction(className, { pyGUID: recordId }, actionID, actionName);
544
+ ```
545
+
546
+ ---
547
+
548
+ ### `submitDataObjectAction(containerItemID, keyProperties, actionID, options?)`
549
+
550
+ **Purpose:** Submits a data object's flow action (created via `openDataObjectAction`).
551
+
552
+ **Signature:**
553
+
554
+ ```typescript
555
+ submitDataObjectAction(containerItemID: string, keyProperties: Record<string, unknown>, actionID: string, options?: Record<string, unknown>): Promise<unknown>
556
+ ```
557
+
558
+ **Example:**
559
+
560
+ ```typescript
561
+ await pConn.getActionsApi().submitDataObjectAction(containerItemID, { pyGUID: recordId }, actionID);
562
+ ```
563
+
564
+ ---
565
+
566
+ ### `getDataObjectActions(dataViewID, dataViewParameters)`
567
+
568
+ **Purpose:** Fetches the available actions for a data object with the given data view.
569
+
570
+ **Signature:**
571
+
572
+ ```typescript
573
+ getDataObjectActions(dataViewID: string, dataViewParameters: Record<string, unknown>): Promise<unknown>
574
+ ```
575
+
576
+ **Example:**
577
+
578
+ ```typescript
579
+ const actions = await pConn.getActionsApi().getDataObjectActions(dataViewID, params);
580
+ ```
581
+
582
+ ---
583
+
584
+ ### `deleteDataRecord(className, keys)`
585
+
586
+ **Purpose:** Deletes a data record of the given class, showing a confirmation dialog before deletion.
587
+
588
+ **Signature:**
589
+
590
+ ```typescript
591
+ deleteDataRecord(className: string, keys: Record<string, unknown>): Promise<unknown>
592
+ ```
593
+
594
+ **Example:**
595
+
596
+ ```typescript
597
+ await pConn.getActionsApi().deleteDataRecord(className, { pyGUID: recordId });
598
+ ```
599
+
600
+ ---
601
+
602
+ ## Field / Value Operations
603
+
604
+ ### `triggerFieldChange(propName, value, skipValidation?, options?)`
605
+
606
+ **Purpose:** Validates a field and dispatches a field-change event so listeners react to it.
607
+
608
+ **Signature:**
609
+
610
+ ```typescript
611
+ triggerFieldChange(propName: string, value: unknown, skipValidation?: boolean, options?: { skipDirtyValidation?: boolean }): void
612
+ ```
613
+
614
+ **Example:**
615
+
616
+ ```typescript
617
+ pConn.getActionsApi().triggerFieldChange('.FirstName', inputValue);
618
+ ```
619
+
620
+ ---
621
+
622
+ ### `updateFieldValue(propName, value, options?)`
623
+
624
+ **Purpose:** Writes a value directly to application state without firing field-level change events, and clears any existing error messages for that property.
625
+
626
+ **Signature:**
627
+
628
+ ```typescript
629
+ updateFieldValue(propName: string, value: unknown, options?: { isArrayDeepMerge?: boolean }): void
630
+ ```
631
+
632
+ **Example:**
633
+
634
+ ```typescript
635
+ pConn.getActionsApi().updateFieldValue('.FilterValue', '');
636
+ ```
637
+
638
+ ---
639
+
640
+ ### `changeHandler(pConn, event)` / `eventHandler(pConn, event)`
641
+
642
+ **Purpose:** Runs a change/event handler for a given component context through the framework's action-dispatch mechanism — the low-level path behind `onChange`/other DOM event bindings generated from component configuration.
643
+
644
+ **Signature:**
645
+
646
+ ```typescript
647
+ changeHandler(pConn: PConnect, event: Event): void
648
+ eventHandler(pConn: PConnect, event: Event): void
649
+ ```
650
+
651
+ **Example:**
652
+
653
+ ```typescript
654
+ const onInputChange = (event: Event) => {
655
+ pConn.getActionsApi().changeHandler(pConn, event);
656
+ };
657
+ ```
658
+
659
+ ---
660
+
661
+ ## Embedded Data
662
+
663
+ ### `openEmbeddedDataModal(viewName, component, targetProperty, index, action, heading, editType, interestPageActionID, readOnly?, containerName?)`
664
+
665
+ **Purpose:** Displays the view to add or update a record in an Embedded Data type property, in a modal.
666
+
667
+ **Signature:**
668
+
669
+ ```typescript
670
+ openEmbeddedDataModal(
671
+ viewName: string, component: PConnect, targetProperty: string, index: number | string,
672
+ action: string, heading: string, editType: string, interestPageActionID: string,
673
+ readOnly?: boolean, containerName?: string
674
+ ): Promise<object>
675
+ ```
676
+
677
+ **Example:**
678
+
679
+ ```typescript
680
+ pConn
681
+ .getActionsApi()
682
+ .openEmbeddedDataModal('EditEmployee', pConn, '.Employees', rowIndex, 'EDIT', 'Edit Employee', 'ACTION', interestPageActionID);
683
+ ```
684
+
685
+ ---
686
+
687
+ ### `getEmbeddedDataView(viewName, component, targetProperty, index, action, editType?, interestPageActionID?, readOnly?, containerName?)`
688
+
689
+ **Purpose:** Fetches the resolved view metadata and data payload for an embedded-data row, for inline rendering (without opening a modal).
690
+
691
+ **Signature:**
692
+
693
+ ```typescript
694
+ getEmbeddedDataView(
695
+ viewName: string, component: PConnect, targetProperty: string, index: number | string,
696
+ action: string, editType?: string, interestPageActionID?: string,
697
+ readOnly?: boolean, containerName?: string
698
+ ): Promise<{ rootView: unknown; data: unknown; uiResources: unknown; containerContext: unknown }>
699
+ ```
700
+
701
+ **Example:**
702
+
703
+ ```typescript
704
+ const { rootView, data } = await pConn
705
+ .getActionsApi()
706
+ .getEmbeddedDataView('ViewEmployee', pConn, '.Employees', rowIndex, 'VIEW');
707
+ ```
708
+
709
+ ---
710
+
711
+ ### `submitEmbeddedDataModal(containerItemID)`
712
+
713
+ **Purpose:** Submits the view and adds/updates a record in an Embedded Data type property.
714
+
715
+ **Signature:**
716
+
717
+ ```typescript
718
+ submitEmbeddedDataModal(containerItemID: string): Promise<unknown>
719
+ ```
720
+
721
+ **Example:**
722
+
723
+ ```typescript
724
+ await pConn.getActionsApi().submitEmbeddedDataModal(containerItemID);
725
+ ```
726
+
727
+ ---
728
+
729
+ ### `refreshEmbeddedDataWithAction(caseID, assignmentID, actionID, interestPage, interestPageActionID, localAction, isMultiRecordData, editType, options?)`
730
+
731
+ **Purpose:** Refreshes an embedded-data row after a flow action completes.
732
+
733
+ **Signature:**
734
+
735
+ ```typescript
736
+ refreshEmbeddedDataWithAction(
737
+ caseID: string, assignmentID: string, actionID: string, interestPage: string,
738
+ interestPageActionID: string, localAction: boolean, isMultiRecordData: boolean,
739
+ editType: string, options?: Record<string, unknown>
740
+ ): Promise<unknown>
741
+ ```
742
+
743
+ **Example:**
744
+
745
+ ```typescript
746
+ await pConn
747
+ .getActionsApi()
748
+ .refreshEmbeddedDataWithAction(
749
+ caseID,
750
+ assignmentID,
751
+ actionID,
752
+ interestPage,
753
+ interestPageActionID,
754
+ false,
755
+ false,
756
+ 'ACTION'
757
+ );
758
+ ```
759
+
760
+ ---
761
+
762
+ ## Navigation & Display
763
+
764
+ ### `showPage(pageName, className, options?)`
765
+
766
+ **Purpose:** Displays a page (view + class) — for example, a portal home page or data portal page.
767
+
768
+ **Signature:**
769
+
770
+ ```typescript
771
+ showPage(pageName: string, className: string, options?: { containerName?: string }): Promise<unknown>
772
+ ```
773
+
774
+ **Example:**
775
+
776
+ ```typescript
777
+ await pConn.getActionsApi().showPage('pyHome', 'Data-Portal');
778
+ ```
779
+
780
+ ---
781
+
782
+ ### `showCasePreview(pzInsKey, configObj?)`
783
+
784
+ **Purpose:** Displays a preview of a case item inside the preview panel.
785
+
786
+ **Signature:**
787
+
788
+ ```typescript
789
+ showCasePreview(pzInsKey: string, configObj?: Record<string, unknown>): void
790
+ ```
791
+
792
+ **Example:**
793
+
794
+ ```typescript
795
+ pConn.getActionsApi().showCasePreview(caseHandle);
796
+ ```
797
+
798
+ ---
799
+
800
+ ### `showDataPreview(dataContext, dataContextParameters, options?)`
801
+
802
+ **Purpose:** Displays a preview of a data item inside the preview panel.
803
+
804
+ **Signature:**
805
+
806
+ ```typescript
807
+ showDataPreview(dataContext: string, dataContextParameters: Record<string, unknown>, options?: Record<string, unknown>): Promise<unknown>
808
+ ```
809
+
810
+ **Example:**
811
+
812
+ ```typescript
813
+ await pConn.getActionsApi().showDataPreview('D_MyDataPage', { AccountID: accountId });
814
+ ```
815
+
816
+ ---
817
+
818
+ ### `showData(pageName, dataContext, dataContextParameters, options?)`
819
+
820
+ **Purpose:** Displays the data of a page-type data page in a given target view.
821
+
822
+ **Signature:**
823
+
824
+ ```typescript
825
+ showData(pageName: string, dataContext: string, dataContextParameters: Record<string, unknown>, options?: { containerName?: string }): Promise<unknown>
826
+ ```
827
+
828
+ **Example:**
829
+
830
+ ```typescript
831
+ await pConn.getActionsApi().showData('pyDetails', 'D_MyDataPage', { AccountID: accountId });
832
+ ```
833
+
834
+ ---
835
+
836
+ ### `loadView(caseId, viewName, config?)`
837
+
838
+ **Purpose:** Loads a view populated with server data based on the context of a given case.
839
+
840
+ **Signature:**
841
+
842
+ ```typescript
843
+ loadView(caseId: string, viewName: string, config: { containerName?: string; container?: string; context?: string; updateData?: boolean; readOnly?: boolean; actionName?: string }): Promise<object>
844
+ ```
845
+
846
+ **Example:**
847
+
848
+ ```typescript
849
+ await pConn.getActionsApi().loadView(caseId, 'pyReview', { readOnly: true });
850
+ ```
851
+
852
+ ---
853
+
854
+ ## Refresh
855
+
856
+ ### `refreshCaseView(caseID, viewID, pageReference, options?)`
857
+
858
+ **Purpose:** Refreshes case-view data for a given view.
859
+
860
+ **Signature:**
861
+
862
+ ```typescript
863
+ refreshCaseView(caseID: string, viewID: string, pageReference: string, options?: ActionAPIOptions): Promise<RefreshCaseView>
864
+ ```
865
+
866
+ **Example:**
867
+
868
+ ```typescript
869
+ await pConn.getActionsApi().refreshCaseView(pConn.getCaseInfo().getKey(), 'pyCaseSummary', '');
870
+ ```
871
+
872
+ **Notes:** One of the most commonly used `ActionsApi` methods for post-action UI refresh (assignments, embedded data, related cases, and so on). `pageReference` is typed as a required `string` in the typedefs (do not pass `null`); the typedefs do not document its meaning, so the example passes an empty string.
873
+
874
+ ---
875
+
876
+ ## Miscellaneous
877
+
878
+ ### `getDescendants(caseID, context?)`
879
+
880
+ **Purpose:** Merges a case's descendant case data into application state for the given context.
881
+
882
+ **Signature:**
883
+
884
+ ```typescript
885
+ getDescendants(caseID: string, context?: string): Promise<unknown>
886
+ ```
887
+
888
+ **Example:**
889
+
890
+ ```typescript
891
+ await pConn.getActionsApi().getDescendants(caseID, pConn.getContextName());
892
+ ```
893
+
894
+ ---
895
+
896
+ ### `getRecents(maxResultsToFetch)`
897
+
898
+ **Purpose:** Fetches the operator's recently accessed items.
899
+
900
+ **Signature:**
901
+
902
+ ```typescript
903
+ getRecents(maxResultsToFetch: number): Promise<unknown>
904
+ ```
905
+
906
+ **Example:**
907
+
908
+ ```typescript
909
+ const recents = await pConn.getActionsApi().getRecents(15);
910
+ ```
911
+
912
+ ---
913
+
914
+ ### `invoke(url, opts?)`
915
+
916
+ **Purpose:** Invokes an arbitrary REST API through the service broker's fetch wrapper, scoped to the current context.
917
+
918
+ **Signature:**
919
+
920
+ ```typescript
921
+ invoke(url: string, opts?: { method?: string; body?: Record<string, unknown> }): Promise<unknown>
922
+ ```
923
+
924
+ **Example:**
925
+
926
+ ```typescript
927
+ const response = await pConn.getActionsApi().invoke('/prweb/api/v1/data/D_MyDataPage');
928
+ ```
929
+
930
+ **Notes:** Prefer `PCore.getRestClient().invokeRestApi()` for most REST needs — use `invoke()` only when you need a raw fetch scoped to the current `PConnect` context.
931
+
932
+ ---
933
+
934
+ ### `fillFormWithAI(containerItemID)`
935
+
936
+ **Purpose:** Fills the current assignment form with AI-generated sample data based on field name/type.
937
+
938
+ **Signature:**
939
+
940
+ ```typescript
941
+ fillFormWithAI(containerItemID: string): Promise<unknown>
942
+ ```
943
+
944
+ **Example:**
945
+
946
+ ```typescript
947
+ await pConn.getActionsApi().fillFormWithAI(containerItemID);
948
+ ```