@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
@@ -1,7 +1,6 @@
1
- /* eslint-disable sonarjs/cognitive-complexity */
2
1
  import { useEffect, useRef, useState, useMemo, type MutableRefObject, type SetStateAction } from 'react';
3
2
  import { ComboBox, menuHelpers, debounce, throttle, Button, Icon, withConfiguration, type MenuGroupProps, type MenuItemProps } from '@pega/cosmos-react-core';
4
- import get from 'lodash.get';
3
+ import get from 'lodash/get.js';
5
4
  import type { PConnFieldProps } from './PConnProps';
6
5
  import './create-nonce';
7
6
 
@@ -409,7 +408,7 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
409
408
  const { formatter } = props;
410
409
  let { listType, datasource = [], parameters = {}, columns = [] } = props;
411
410
 
412
- // enable searhing based on the key
411
+ // enable searching based on the key
413
412
  const { isSearchableOnKey } = props;
414
413
 
415
414
  const [items, setItems] = useState(() => []);
@@ -520,12 +519,13 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
520
519
  }, [parameters]);
521
520
 
522
521
  const updatedColumns = useMemo(() => {
523
- const isSecondaryColumnAvailable = columns.some(col => col.secondary === 'true');
522
+ let cols = columns;
523
+ const isSecondaryColumnAvailable = cols.some(col => col.secondary === 'true');
524
524
  if (referenceType === 'Case' && !isSecondaryColumnAvailable) {
525
- const valueProp = columns.filter(col => col.key === 'true')[0].value;
526
- const existingColObj = columns.filter(col => col.value === valueProp);
525
+ const valueProp = cols.filter(col => col.key === 'true')[0].value;
526
+ const existingColObj = cols.filter(col => col.value === valueProp);
527
527
  if (existingColObj) {
528
- columns.forEach(col => {
528
+ cols.forEach(col => {
529
529
  if (col.value === valueProp) {
530
530
  col.display = 'true';
531
531
  col.secondary = 'true';
@@ -533,8 +533,8 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
533
533
  }
534
534
  });
535
535
  } else {
536
- columns = [
537
- ...columns,
536
+ cols = [
537
+ ...cols,
538
538
  {
539
539
  value: valueProp.startsWith('.') ? valueProp.substring(1) : valueProp,
540
540
  display: 'true',
@@ -559,9 +559,9 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
559
559
  }
560
560
  return item;
561
561
  });
562
- columns = descriptorColumns ? [...columns, ...descriptorColumns] : columns;
562
+ cols = descriptorColumns ? [...cols, ...descriptorColumns] : cols;
563
563
  }
564
- return columns;
564
+ return cols;
565
565
  }, [listType]);
566
566
 
567
567
  const dataConfig = useDeepMemo(() => {
@@ -1,6 +1,3 @@
1
- /* eslint-disable sonarjs/no-collapsible-if */
2
- /* eslint-disable sonarjs/cognitive-complexity */
3
- /* eslint-disable func-names */
4
1
  // @ts-nocheck
5
2
  import { splitConditionTree } from '@pega/cosmos-react-condition-builder';
6
3
  import cloneDeep from 'lodash/cloneDeep.js';
@@ -55,7 +52,6 @@ export function launchLocalAction(getPConnect, rowContext, action, cb) {
55
52
  // "ASSIGN-WORKLIST ON8TTL-C11NGALL-WORK LAT-3!ENTERINFO_FLOW_1" use case
56
53
  const [assignKey] = assignmentID.split('!');
57
54
  const [, className, workId] = assignKey.split(' ');
58
- // eslint-disable-next-line prefer-template
59
55
  caseID = className + ' ' + workId;
60
56
  }
61
57
  openLocalAction(action.ID, {
@@ -254,7 +250,7 @@ export const isSelfReferencedProperty = (param, referenceProp) => {
254
250
  /*
255
251
  convert configured descriptors/parameters fieldNames
256
252
  for leaf level property - @P .Employee.Name -> Name
257
- for embedded porperty - @P .Employee.Address.City -> !P!Address:City
253
+ for embedded property - @P .Employee.Address.City -> !P!Address:City
258
254
  */
259
255
  export function getDescriptorsFieldName(property, pageClass) {
260
256
  if (property.startsWith('@')) {
@@ -268,7 +264,6 @@ export function getDescriptorsFieldName(property, pageClass) {
268
264
  return property;
269
265
  }
270
266
 
271
- // eslint-disable-next-line, sonarjs/cognitive-complexity
272
267
  export function preparePatchQueryFields(fields, isDataObject = false, classID = '', getPConnect) {
273
268
  const queryFields = [];
274
269
  // Descriptors can be configured only for single selectionMode properties
@@ -363,12 +358,7 @@ export function prepareFilters(keys = [], data = {}, logicOperator = '') {
363
358
  const filterConditions = {};
364
359
  keys.forEach((key, index) => {
365
360
  const value = data[key];
366
- let filterExpression = {};
367
- if (value) {
368
- filterExpression = getFilterExpression(key, value, 'EQ');
369
- } else {
370
- filterExpression = getFilterExpression(key);
371
- }
361
+ const filterExpression = value ? getFilterExpression(key, value, 'EQ') : getFilterExpression(key);
372
362
  filterConditions[`T${index + 1}`] = filterExpression;
373
363
 
374
364
  if (index + 1 !== keys.length) {
@@ -646,7 +636,7 @@ export function getLeafValue(data, fieldName, fieldSeparator) {
646
636
  return getLeafValue(data[first], rest.join(fieldSeparator));
647
637
  }
648
638
 
649
- // Builds a uniquely identifyable aggregation/calculation ID for sending to the server.
639
+ // Builds a uniquely identifiable aggregation/calculation ID for sending to the server.
650
640
  export const buildAggOrCalcId = (columnId, functionName) => {
651
641
  // Server does not support agg/calc ID's containing special chars, but Association ID's can contain - and _
652
642
  // AND the data_views API uses : to separate the assoc ID and the field ID
@@ -48,7 +48,6 @@ const TableImage = imageProps => {
48
48
  propUrlLabel
49
49
  } = imageProps;
50
50
  const demoButtonRef = useRef(null);
51
- let imageDisplayComp = null;
52
51
  const [images, setImages] = useState(null);
53
52
  const imgDescription = {
54
53
  id: 'url',
@@ -75,7 +74,7 @@ const TableImage = imageProps => {
75
74
  };
76
75
  let btnVal = value;
77
76
  btnVal = urlLabelVal(urlLabelSelection, btnVal, urlLabel, propUrlLabel);
78
- imageDisplayComp = (
77
+ const imageDisplayComp = (
79
78
  <>
80
79
  {btnVal !== null && (
81
80
  <Button ref={demoButtonRef} variant='link' compact={false} onClick={onClick} autoFocus>
@@ -140,7 +139,7 @@ export const urlFormatter = (value, options) => {
140
139
  customWidth
141
140
  } = options;
142
141
 
143
- let urlFormatComp = null;
142
+ let urlFormatComp;
144
143
  if (
145
144
  (displayAs === 'labelText' || (isTableFormatter && tableDisplayAs === 'link')) &&
146
145
  (urlLabel !== '' || propUrlLabel !== '')
@@ -1,13 +1,13 @@
1
1
  import { useEffect, useRef } from 'react';
2
- import equal from 'fast-deep-equal';
3
- import get from 'lodash.get';
2
+ import isEqual from 'lodash/isEqual.js';
3
+ import get from 'lodash/get.js';
4
4
 
5
5
  import { getFieldNameFromEmbeddedFieldName } from './embed-utils';
6
6
 
7
7
  import { buildColumnForDisplayValue, setValuesToPropertyList } from './index';
8
8
 
9
9
  export function usePaginate() {
10
- const paginatationProperties = useRef({
10
+ const paginationProperties = useRef({
11
11
  startIndex: 0,
12
12
  endIndex: 50,
13
13
  matchPosition: '',
@@ -18,21 +18,21 @@ export function usePaginate() {
18
18
  // clean up on unmount
19
19
  return () => {
20
20
  // @ts-ignore
21
- paginatationProperties.current = null;
21
+ paginationProperties.current = null;
22
22
  };
23
23
  }, []);
24
24
 
25
25
  const getInitialPaginatedRecords = (totalRecords: any, matchPosition: string) => {
26
26
  const initialPaginatedRecords = totalRecords.slice(0, 50);
27
- paginatationProperties.current.startIndex = 0;
28
- paginatationProperties.current.endIndex = 50;
29
- paginatationProperties.current.matchPosition = matchPosition;
30
- paginatationProperties.current.totalRecords = totalRecords;
27
+ paginationProperties.current.startIndex = 0;
28
+ paginationProperties.current.endIndex = 50;
29
+ paginationProperties.current.matchPosition = matchPosition;
30
+ paginationProperties.current.totalRecords = totalRecords;
31
31
  return initialPaginatedRecords;
32
32
  };
33
33
 
34
34
  const positionMatches = (text: string, searchText: string) => {
35
- switch (paginatationProperties.current.matchPosition) {
35
+ switch (paginationProperties.current.matchPosition) {
36
36
  case 'start':
37
37
  return text.toLowerCase().startsWith(searchText.toLowerCase());
38
38
  case 'contains':
@@ -44,27 +44,27 @@ export function usePaginate() {
44
44
 
45
45
  const fetchData = (searchText: string, onScroll: boolean, columns = []) => {
46
46
  let progressivePaginatedRecords;
47
- paginatationProperties.current.startIndex += 50;
48
- paginatationProperties.current.endIndex += 50;
47
+ paginationProperties.current.startIndex += 50;
48
+ paginationProperties.current.endIndex += 50;
49
49
 
50
50
  if (searchText === '' || searchText === undefined || searchText === null) {
51
51
  // paginate on entire resultset
52
- progressivePaginatedRecords = paginatationProperties.current.totalRecords.slice(
53
- paginatationProperties.current.startIndex,
54
- paginatationProperties.current.endIndex
52
+ progressivePaginatedRecords = paginationProperties.current.totalRecords.slice(
53
+ paginationProperties.current.startIndex,
54
+ paginationProperties.current.endIndex
55
55
  );
56
56
  } else if (onScroll) {
57
57
  // paginate on filtered resultset
58
58
  // @ts-ignore
59
- progressivePaginatedRecords = paginatationProperties.current.filteredRecords.slice(
60
- paginatationProperties.current.startIndex,
61
- paginatationProperties.current.endIndex
59
+ progressivePaginatedRecords = paginationProperties.current.filteredRecords.slice(
60
+ paginationProperties.current.startIndex,
61
+ paginationProperties.current.endIndex
62
62
  );
63
63
  } else {
64
64
  // @ts-ignore
65
65
  const searchInSecondaryItem = columns.some(e => e.secondary && e.useForSearch);
66
66
  // Filter the items and paginate on filtered resultset
67
- const filteredRecords = paginatationProperties.current.totalRecords.filter(
67
+ const filteredRecords = paginationProperties.current.totalRecords.filter(
68
68
  filteritem =>
69
69
  // @ts-ignore
70
70
  (filteritem.primary && positionMatches(filteritem.primary, searchText)) ||
@@ -77,32 +77,32 @@ export function usePaginate() {
77
77
  filteritem.secondary.find(item => positionMatches(item, searchText)))
78
78
  );
79
79
  progressivePaginatedRecords = filteredRecords.slice(
80
- paginatationProperties.current.startIndex,
81
- paginatationProperties.current.endIndex
80
+ paginationProperties.current.startIndex,
81
+ paginationProperties.current.endIndex
82
82
  );
83
83
  // @ts-ignore
84
- paginatationProperties.current.filteredRecords = filteredRecords;
84
+ paginationProperties.current.filteredRecords = filteredRecords;
85
85
  }
86
86
  return progressivePaginatedRecords;
87
87
  };
88
88
 
89
89
  const resetIndexes = () => {
90
- paginatationProperties.current.startIndex = -50;
91
- paginatationProperties.current.endIndex = 0;
90
+ paginationProperties.current.startIndex = -50;
91
+ paginationProperties.current.endIndex = 0;
92
92
  };
93
93
 
94
94
  const hasMoreResults = (searchText: string) => {
95
95
  if (searchText === '' || searchText === undefined || searchText === null) {
96
96
  return (
97
- paginatationProperties.current.startIndex + 50 <
98
- paginatationProperties.current.totalRecords.length
97
+ paginationProperties.current.startIndex + 50 <
98
+ paginationProperties.current.totalRecords.length
99
99
  );
100
100
  }
101
101
  return (
102
102
  // @ts-ignore
103
- paginatationProperties.current.startIndex + 50 <
103
+ paginationProperties.current.startIndex + 50 <
104
104
  // @ts-ignore
105
- paginatationProperties.current.filteredRecords.length
105
+ paginationProperties.current.filteredRecords.length
106
106
  );
107
107
  };
108
108
 
@@ -117,7 +117,7 @@ export function usePaginate() {
117
117
  export function useDeepMemo(memoFn: any, key: any) {
118
118
  const ref = useRef();
119
119
  // @ts-ignore
120
- if (!ref.current || !equal(key, ref.current.key)) {
120
+ if (!ref.current || !isEqual(key, ref.current.key)) {
121
121
  // @ts-ignore
122
122
  ref.current = { key, value: memoFn() };
123
123
  }
@@ -117,11 +117,11 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
117
117
  if (placeholder) {
118
118
  items.push(
119
119
  <RadioButton
120
+ key={`${fullReference}.EMPTY`}
120
121
  {...autoFocusProp}
121
122
  defaultChecked={value === ''}
122
123
  id={`${fullReference}.EMPTY`}
123
124
  value=''
124
- key={`${fullReference}.EMPTY`}
125
125
  label={placeholder}
126
126
  name={fullReference}
127
127
  />
@@ -135,11 +135,11 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
135
135
  }
136
136
  items.push(
137
137
  <RadioButton
138
+ key={`${fullReference}.${item.key}`}
138
139
  {...autoFocusProp}
139
140
  checked={`${value}` === `${item.key}`}
140
141
  id={`${fullReference}.${item.key}`}
141
142
  value={item.key}
142
- key={`${fullReference}.${item.key}`}
143
143
  label={isDatapageLocale
144
144
  ? pConn
145
145
  .getLocalizationService()
@@ -33,7 +33,6 @@ const isImage = (url) => /\.(jpg|jpeg|png|webp|avif|gif|svg)$/.test(url);
33
33
  const TableImage = (imageProps) => {
34
34
  const { value, altText, altTextOfImage, propaltTextOfImage, urlLabelSelection, urlLabel, propUrlLabel } = imageProps;
35
35
  const demoButtonRef = useRef(null);
36
- let imageDisplayComp = null;
37
36
  const [images, setImages] = useState(null);
38
37
  const imgDescription = {
39
38
  id: 'url',
@@ -60,7 +59,7 @@ const TableImage = (imageProps) => {
60
59
  };
61
60
  let btnVal = value;
62
61
  btnVal = urlLabelVal(urlLabelSelection, btnVal, urlLabel, propUrlLabel);
63
- imageDisplayComp = (
62
+ const imageDisplayComp = (
64
63
  <>
65
64
  {btnVal !== null && (
66
65
  <Button ref={demoButtonRef} variant='link' compact={false} onClick={onClick} autoFocus>
@@ -125,7 +124,7 @@ export const urlFormatter = (value, options) => {
125
124
  customWidth
126
125
  } = options;
127
126
 
128
- let urlFormatComp = null;
127
+ let urlFormatComp;
129
128
  if (
130
129
  (displayAs === 'labelText' || (isTableFormatter && tableDisplayAs === 'link')) &&
131
130
  (urlLabel !== '' || propUrlLabel !== '')
@@ -1,8 +1,6 @@
1
1
  import {
2
2
  Input,
3
- FieldValueList,
4
- Text,
5
- EmailDisplay,
3
+ EmailDisplay,
6
4
  PhoneDisplay,
7
5
  URLDisplay,
8
6
  withConfiguration
@@ -73,7 +71,7 @@ export const textFormatter = (formatter: string, value: string) => {
73
71
  // props passed in combination of props from property panel (config.json) and run time props from Constellation
74
72
  // any default values in config.pros should be set in defaultProps at bottom of this file
75
73
  function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
76
- const { getPConnect, value, placeholder, disabled = false, displayMode, readOnly = false, required = false, label, hideLabel = false, testId, isTableFormatter = false, variant = 'inline' } = props;
74
+ const { getPConnect, value, placeholder, disabled = false, displayMode, readOnly = false, required = false, label, hideLabel = false, testId, isTableFormatter = false } = props;
77
75
 
78
76
  const pConn = getPConnect();
79
77
  const actions = pConn.getActionsApi();
@@ -86,43 +84,16 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
86
84
  actions.updateFieldValue(propName, updatedValue);
87
85
  };
88
86
 
89
- if (displayMode === 'LABELS_LEFT' || displayMode === 'DISPLAY_ONLY') {
87
+ if (displayMode === 'DISPLAY_ONLY') {
90
88
  let displayComp = value || <span aria-hidden='true'>&ndash;&ndash;</span>;
91
89
  if (isTableFormatter && formatExists(formatter)) {
92
90
  displayComp = textFormatter(formatter, value);
93
91
  }
94
- return displayMode === 'DISPLAY_ONLY' ? (
92
+ return (
95
93
  <Styled{{COMPONENT_CLASS_NAME}}Wrapper> {displayComp} </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
96
- ) : (
97
- <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
98
- <FieldValueList
99
- variant={hideLabel ? 'stacked' : variant}
100
- data-testid={testId}
101
- fields={[{ id: '1', name: hideLabel ? '' : label, value: displayComp }]}
102
- />
103
- </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
104
94
  );
105
95
  }
106
96
 
107
- if (displayMode === 'STACKED_LARGE_VAL') {
108
- const isValDefined = typeof value !== 'undefined' && value !== '';
109
- const val = isValDefined ? (
110
- <Text variant='h1' as='span'>
111
- {value}
112
- </Text>
113
- ) : (
114
- ''
115
- );
116
- return (
117
- <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
118
- <FieldValueList
119
- variant='stacked'
120
- data-testid={testId}
121
- fields={[{ id: '2', name: hideLabel ? '' : label, value: val }]}
122
- />
123
- </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
124
- );
125
- }
126
97
 
127
98
  return (
128
99
  <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
@@ -1,5 +1,5 @@
1
1
  import { useState, useEffect, useRef } from 'react';
2
- import { Input, EmailDisplay, FieldValueList, Text, URLDisplay, PhoneDisplay, withConfiguration } from '@pega/cosmos-react-core';
2
+ import { Input, EmailDisplay, URLDisplay, PhoneDisplay, withConfiguration } from '@pega/cosmos-react-core';
3
3
  import type { PConnFieldProps } from './PConnProps';
4
4
  import './create-nonce';
5
5
 
@@ -85,7 +85,6 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
85
85
  testId,
86
86
  displayMode,
87
87
  additionalProps = {},
88
- variant = 'inline',
89
88
  isTableFormatter = false,
90
89
  hasSuggestions = false
91
90
  } = props;
@@ -123,46 +122,17 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
123
122
  displayComp = <EmailDisplay value={value} displayText={inputValue} variant='link' />;
124
123
  }
125
124
 
126
- if (displayMode === 'LABELS_LEFT' || displayMode === 'DISPLAY_ONLY') {
125
+ if (displayMode === 'DISPLAY_ONLY') {
127
126
  if (isTableFormatter && formatExists(formatter)) {
128
127
  displayComp = textFormatter(formatter, value);
129
128
  }
130
- return displayMode === 'DISPLAY_ONLY' ? (
129
+ return (
131
130
  <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
132
131
  {displayComp}
133
132
  </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
134
- ) : (
135
- <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
136
- <FieldValueList
137
- variant={hideLabel ? 'stacked' : variant}
138
- data-testid={testId}
139
- fields={[{ id: '1', name: hideLabel ? '' : label, value: displayComp }]}
140
- />
141
- </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
142
133
  );
143
134
  }
144
135
 
145
- if (displayMode === 'STACKED_LARGE_VAL') {
146
- return (
147
- <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
148
- <FieldValueList
149
- variant='stacked'
150
- data-testid={testId}
151
- fields={[
152
- {
153
- id: '2',
154
- name: hideLabel ? '' : label,
155
- value: (
156
- <Text variant='h1' as='span'>
157
- {displayComp}
158
- </Text>
159
- )
160
- }
161
- ]}
162
- />
163
- </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
164
- );
165
- }
166
136
 
167
137
  const onResolveSuggestionHandler = (accepted: boolean) => {
168
138
  suggestionsHandler(accepted, pConn, setStatus);
@@ -1,5 +1,5 @@
1
1
  import { useEffect, useState, useRef } from 'react';
2
- import { Input, FieldValueList, Text, EmailDisplay, PhoneDisplay, URLDisplay, withConfiguration } from '@pega/cosmos-react-core';
2
+ import { Input, FieldValueList, EmailDisplay, PhoneDisplay, URLDisplay, withConfiguration } from '@pega/cosmos-react-core';
3
3
  import type { PConnFieldProps } from './PConnProps';
4
4
  import './create-nonce';
5
5
 
@@ -87,7 +87,6 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
87
87
  additionalProps = {},
88
88
  displayMode,
89
89
  displayAsStatus,
90
- variant = 'inline',
91
90
  hasSuggestions = false,
92
91
  isTableFormatter = false
93
92
  } = props;
@@ -138,43 +137,16 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
138
137
  }
139
138
  }
140
139
 
141
- if (displayMode === 'LABELS_LEFT' || displayMode === 'DISPLAY_ONLY') {
140
+ if (displayMode === 'DISPLAY_ONLY') {
142
141
  let displayComp = value || <span aria-hidden='true'>&ndash;&ndash;</span>;
143
142
  if (isTableFormatter && formatExists(formatter)) {
144
143
  displayComp = textFormatter(formatter, value);
145
144
  }
146
- return displayMode === 'DISPLAY_ONLY' ? (
145
+ return (
147
146
  <Styled{{COMPONENT_CLASS_NAME}}Wrapper> {displayComp} </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
148
- ) : (
149
- <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
150
- <FieldValueList
151
- variant={hideLabel ? 'stacked' : variant}
152
- data-testid={testId}
153
- fields={[{ id: '1', name: hideLabel ? '' : label, value: displayComp }]}
154
- />
155
- </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
156
147
  );
157
148
  }
158
149
 
159
- if (displayMode === 'STACKED_LARGE_VAL') {
160
- const isValDefined = typeof value !== 'undefined' && value !== '';
161
- const val = isValDefined ? (
162
- <Text variant='h1' as='span'>
163
- {value}
164
- </Text>
165
- ) : (
166
- ''
167
- );
168
- return (
169
- <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
170
- <FieldValueList
171
- variant='stacked'
172
- data-testid={testId}
173
- fields={[{ id: '2', name: hideLabel ? '' : label, value: val }]}
174
- />
175
- </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
176
- );
177
- }
178
150
 
179
151
  const handleChange = (event: any) => {
180
152
  if (hasSuggestions) {
@@ -1,5 +1,5 @@
1
1
  import { useState, useEffect, useRef } from 'react';
2
- import { TextArea as CosmosTextArea, FieldValueList, ParagraphDisplay, Text, EmailDisplay, PhoneDisplay, URLDisplay, withConfiguration } from '@pega/cosmos-react-core';
2
+ import { TextArea as CosmosTextArea, ParagraphDisplay, EmailDisplay, PhoneDisplay, URLDisplay, withConfiguration } from '@pega/cosmos-react-core';
3
3
 
4
4
  import type { PConnFieldProps } from './PConnProps';
5
5
  import './create-nonce';
@@ -87,7 +87,6 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
87
87
  fieldMetadata = {},
88
88
  displayMode,
89
89
  additionalProps = {},
90
- variant = 'inline',
91
90
  isTableFormatter = false,
92
91
  hasSuggestions = false
93
92
  } = props;
@@ -120,45 +119,18 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
120
119
  }
121
120
  }, [validatemessage, hasSuggestions, status]);
122
121
 
123
- if (displayMode === 'LABELS_LEFT' || displayMode === 'DISPLAY_ONLY') {
122
+ if (displayMode === 'DISPLAY_ONLY') {
124
123
  let displayComp = <ParagraphDisplay value={value || undefined} />;
125
124
  if (isTableFormatter && formatExists(formatter) && formatter !== 'TextInput') {
126
125
  displayComp = textFormatter(formatter, value);
127
126
  }
128
- return displayMode === 'DISPLAY_ONLY' ? (
127
+ return (
129
128
  <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
130
129
  {displayComp}
131
130
  </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
132
- ) : (
133
- <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
134
- <FieldValueList
135
- variant={hideLabel ? 'stacked' : variant}
136
- data-testid={testId}
137
- fields={[{ id: '1', name: hideLabel ? '' : label, value: displayComp }]}
138
- />
139
- </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
140
131
  );
141
132
  }
142
133
 
143
- if (displayMode === 'STACKED_LARGE_VAL') {
144
- const isValDefined = typeof value !== 'undefined' && value !== '';
145
- const val = isValDefined ? (
146
- <Text variant='h1' as='span'>
147
- {value}
148
- </Text>
149
- ) : (
150
- ''
151
- );
152
- return (
153
- <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
154
- <FieldValueList
155
- variant='stacked'
156
- data-testid={testId}
157
- fields={[{ id: '2', name: hideLabel ? '' : label, value: val }]}
158
- />
159
- </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
160
- );
161
- }
162
134
 
163
135
  const onResolveSuggestionHandler = (accepted: boolean) => {
164
136
  suggestionsHandler(accepted, pConn, setStatus);
@@ -3,9 +3,7 @@ import {
3
3
  PhoneInput as CosmosPhone,
4
4
  getPhoneNumberParts,
5
5
  PhoneDisplay,
6
- FieldValueList,
7
- Text,
8
- EmailDisplay,
6
+ EmailDisplay,
9
7
  URLDisplay,
10
8
  withConfiguration
11
9
  } from '@pega/cosmos-react-core';
@@ -98,7 +96,6 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
98
96
  testId,
99
97
  displayMode,
100
98
  additionalProps = {},
101
- variant = 'inline',
102
99
  isTableFormatter = false,
103
100
  hasSuggestions = false
104
101
  } = props;
@@ -157,46 +154,17 @@ function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
157
154
  displayComp = <PhoneDisplay value={value} variant='link' />;
158
155
  }
159
156
 
160
- if (displayMode === 'LABELS_LEFT' || displayMode === 'DISPLAY_ONLY') {
157
+ if (displayMode === 'DISPLAY_ONLY') {
161
158
  if (isTableFormatter && formatExists(formatter)) {
162
159
  displayComp = textFormatter(formatter, value);
163
160
  }
164
- return displayMode === 'DISPLAY_ONLY' ? (
161
+ return (
165
162
  <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
166
163
  {displayComp}
167
164
  </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
168
- ) : (
169
- <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
170
- <FieldValueList
171
- variant={hideLabel ? 'stacked' : variant}
172
- data-testid={testId}
173
- fields={[{ id: '1', name: hideLabel ? '' : label, value: displayComp }]}
174
- />
175
- </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
176
165
  );
177
166
  }
178
167
 
179
- if (displayMode === 'STACKED_LARGE_VAL') {
180
- return (
181
- <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
182
- <FieldValueList
183
- variant='stacked'
184
- data-testid={testId}
185
- fields={[
186
- {
187
- id: '2',
188
- name: hideLabel ? '' : label,
189
- value: (
190
- <Text variant='h1' as='span'>
191
- {displayComp}
192
- </Text>
193
- )
194
- }
195
- ]}
196
- />
197
- </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
198
- );
199
- }
200
168
 
201
169
  const onResolveSuggestionHandler = (accepted: boolean) => {
202
170
  suggestionsHandler(accepted, pConn, setStatus);