@pega/sdk 0.0.3 → 0.0.5

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 (508) hide show
  1. package/LICENSE +183 -183
  2. package/README.md +6 -6
  3. package/SECURITY.md +2 -1
  4. package/dist/index.js +299 -56
  5. package/package.json +7 -6
  6. package/templates/angular-sdk-reference/package.json +15 -15
  7. package/templates/angular-sdk-reference/tsconfig.json +2 -2
  8. package/templates/react-native-sdk-reference/App.tsx +2 -4
  9. package/templates/react-native-sdk-reference/expo-env.d.ts +3 -0
  10. package/templates/react-native-sdk-reference/package.json +6 -6
  11. package/templates/react-native-sdk-reference/tsconfig.json +2 -1
  12. package/templates/react-sdk-reference/.ai-common/agents/implementation-expert.md +132 -0
  13. package/templates/react-sdk-reference/{.github/copilot-instructions.md → .ai-common/global/ai-agent-instructions.md} +7 -7
  14. package/templates/react-sdk-reference/{.github/instructions/component-map.instructions.md → .ai-common/instructions/component-map.md} +9 -2
  15. package/templates/react-sdk-reference/{.github/instructions/dse-component.instructions.md → .ai-common/instructions/dse-component.md} +1 -1
  16. package/templates/react-sdk-reference/{.cursor/rules/field-component.mdrules → .ai-common/instructions/field-component.md} +6 -2
  17. package/templates/react-sdk-reference/{.github/instructions/template-component.instructions.md → .ai-common/instructions/template-component.md} +3 -2
  18. package/templates/react-sdk-reference/{.github/instructions/widget-component.instructions.md → .ai-common/instructions/widget-component.md} +2 -1
  19. package/templates/react-sdk-reference/.ai-common/prompts/add-component.md +219 -0
  20. package/templates/react-sdk-reference/.ai-common/prompts/component-manifest.json +199 -0
  21. package/templates/react-sdk-reference/.ai-common/prompts/generate-all-components.md +528 -0
  22. package/templates/react-sdk-reference/.ai-common/prompts/generate-dse-components.md +216 -0
  23. package/templates/react-sdk-reference/.ai-common/prompts/generate-field-components.md +239 -0
  24. package/templates/react-sdk-reference/.ai-common/prompts/generate-template-components.md +283 -0
  25. package/templates/react-sdk-reference/.ai-common/prompts/generate-widget-components.md +222 -0
  26. package/templates/react-sdk-reference/.ai-common/prompts/identify-components.md +109 -0
  27. package/templates/react-sdk-reference/{.cursor/rules/prompts/replace-design-system.mdrules → .ai-common/prompts/replace-design-system.md} +2 -3
  28. package/templates/react-sdk-reference/.ai-common/skills/design-system-extension-skills/AlertBanner.md +187 -0
  29. package/templates/react-sdk-reference/.ai-common/skills/design-system-extension-skills/Banner.md +196 -0
  30. package/templates/react-sdk-reference/.ai-common/skills/design-system-extension-skills/CaseSummaryFields.md +213 -0
  31. package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/DetailsFields.mdrules → .ai-common/skills/design-system-extension-skills/DetailsFields.md} +81 -33
  32. package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/FieldGroup.mdrules → .ai-common/skills/design-system-extension-skills/FieldGroup.md} +82 -40
  33. package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/FieldGroupList.mdrules → .ai-common/skills/design-system-extension-skills/FieldGroupList.md} +68 -28
  34. package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/FieldValueList.mdrules → .ai-common/skills/design-system-extension-skills/FieldValueList.md} +75 -31
  35. package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/Operator.mdrules → .ai-common/skills/design-system-extension-skills/Operator.md} +99 -31
  36. package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension-skills/Pulse.mdrules → .ai-common/skills/design-system-extension-skills/Pulse.md} +37 -20
  37. package/templates/react-sdk-reference/.ai-common/skills/design-system-extension-skills/RichTextEditor.md +290 -0
  38. package/templates/react-sdk-reference/.ai-common/skills/design-system-extension-skills/WssQuickCreate.md +168 -0
  39. package/templates/react-sdk-reference/{.cursor/rules/skills/design-system-extension.mdrules → .ai-common/skills/design-system-extension.md} +14 -17
  40. package/templates/react-sdk-reference/{.cursor/rules/skills/field-components.mdrules → .ai-common/skills/field-components.md} +27 -14
  41. package/templates/react-sdk-reference/.ai-common/skills/field-skills/AutoComplete.md +298 -0
  42. package/templates/react-sdk-reference/.ai-common/skills/field-skills/CancelAlert.md +340 -0
  43. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Checkbox.md +358 -0
  44. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Currency.md +230 -0
  45. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Date.md +221 -0
  46. package/templates/react-sdk-reference/.ai-common/skills/field-skills/DateTime.md +213 -0
  47. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Decimal.md +198 -0
  48. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Dropdown.md +260 -0
  49. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Email.md +177 -0
  50. package/templates/react-sdk-reference/{.cursor/rules/skills/field-skills/Group.mdrules → .ai-common/skills/field-skills/Group.md} +72 -20
  51. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Integer.md +169 -0
  52. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Location.md +250 -0
  53. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Multiselect.md +258 -0
  54. package/templates/react-sdk-reference/{.cursor/rules/skills/field-skills/ObjectReference.mdrules → .ai-common/skills/field-skills/ObjectReference.md} +101 -23
  55. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Percentage.md +177 -0
  56. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Phone.md +210 -0
  57. package/templates/react-sdk-reference/.ai-common/skills/field-skills/RadioButtons.md +260 -0
  58. package/templates/react-sdk-reference/{.cursor/rules/skills/field-skills/RichText.mdrules → .ai-common/skills/field-skills/RichText.md} +108 -17
  59. package/templates/react-sdk-reference/.ai-common/skills/field-skills/ScalarList.md +188 -0
  60. package/templates/react-sdk-reference/.ai-common/skills/field-skills/SelectableCard.md +286 -0
  61. package/templates/react-sdk-reference/{.cursor/rules/skills/field-skills/SemanticLink.mdrules → .ai-common/skills/field-skills/SemanticLink.md} +98 -32
  62. package/templates/react-sdk-reference/.ai-common/skills/field-skills/TextArea.md +164 -0
  63. package/templates/react-sdk-reference/{.cursor/rules/skills/field-skills/TextContent.mdrules → .ai-common/skills/field-skills/TextContent.md} +66 -27
  64. package/templates/react-sdk-reference/.ai-common/skills/field-skills/TextInput.md +174 -0
  65. package/templates/react-sdk-reference/.ai-common/skills/field-skills/Time.md +156 -0
  66. package/templates/react-sdk-reference/.ai-common/skills/field-skills/URL.md +145 -0
  67. package/templates/react-sdk-reference/.ai-common/skills/field-skills/UserReference.md +293 -0
  68. package/templates/react-sdk-reference/.ai-common/skills/run-and-verify.md +70 -0
  69. package/templates/react-sdk-reference/{.cursor/rules/skills/template-components.mdrules → .ai-common/skills/template-components.md} +89 -64
  70. package/templates/react-sdk-reference/.ai-common/skills/template-skills/AdvancedSearch.md +227 -0
  71. package/templates/react-sdk-reference/.ai-common/skills/template-skills/AppShell.md +273 -0
  72. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/BannerPage.mdrules → .ai-common/skills/template-skills/BannerPage.md} +58 -21
  73. package/templates/react-sdk-reference/.ai-common/skills/template-skills/CaseSummary.md +185 -0
  74. package/templates/react-sdk-reference/.ai-common/skills/template-skills/CaseView.md +399 -0
  75. package/templates/react-sdk-reference/.ai-common/skills/template-skills/CaseViewActionsMenu.md +282 -0
  76. package/templates/react-sdk-reference/.ai-common/skills/template-skills/Confirmation.md +198 -0
  77. package/templates/react-sdk-reference/.ai-common/skills/template-skills/DataReference.md +174 -0
  78. package/templates/react-sdk-reference/.ai-common/skills/template-skills/DefaultForm.md +221 -0
  79. package/templates/react-sdk-reference/.ai-common/skills/template-skills/DefaultPage.md +161 -0
  80. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/Details.mdrules → .ai-common/skills/template-skills/Details.md} +78 -22
  81. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/DetailsSubTabs.mdrules → .ai-common/skills/template-skills/DetailsSubTabs.md} +82 -25
  82. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/DetailsThreeColumn.mdrules → .ai-common/skills/template-skills/DetailsThreeColumn.md} +31 -22
  83. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/DetailsTwoColumn.mdrules → .ai-common/skills/template-skills/DetailsTwoColumn.md} +31 -22
  84. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/DynamicTabs.mdrules → .ai-common/skills/template-skills/DynamicTabs.md} +82 -15
  85. package/templates/react-sdk-reference/.ai-common/skills/template-skills/FieldGroupTemplate.md +231 -0
  86. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/HierarchicalForm.mdrules → .ai-common/skills/template-skills/HierarchicalForm.md} +63 -20
  87. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/InlineDashboard.mdrules → .ai-common/skills/template-skills/InlineDashboard.md} +58 -18
  88. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/InlineDashboardPage.mdrules → .ai-common/skills/template-skills/InlineDashboardPage.md} +66 -18
  89. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/ListPage.mdrules → .ai-common/skills/template-skills/ListPage.md} +27 -12
  90. package/templates/react-sdk-reference/.ai-common/skills/template-skills/ListView.md +419 -0
  91. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/MultiReferenceReadOnly.mdrules → .ai-common/skills/template-skills/MultiReferenceReadOnly.md} +53 -16
  92. package/templates/react-sdk-reference/.ai-common/skills/template-skills/NarrowWide.md +209 -0
  93. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/OneColumn.mdrules → .ai-common/skills/template-skills/OneColumn.md} +59 -25
  94. package/templates/react-sdk-reference/.ai-common/skills/template-skills/PromotedFilters.md +222 -0
  95. package/templates/react-sdk-reference/.ai-common/skills/template-skills/SelfServiceCaseView.md +198 -0
  96. package/templates/react-sdk-reference/.ai-common/skills/template-skills/SimpleTable.md +190 -0
  97. package/templates/react-sdk-reference/.ai-common/skills/template-skills/SingleReferenceReadOnly.md +160 -0
  98. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/SubTabs.mdrules → .ai-common/skills/template-skills/SubTabs.md} +61 -16
  99. package/templates/react-sdk-reference/{.cursor/rules/skills/template-skills/TwoColumn.mdrules → .ai-common/skills/template-skills/TwoColumn.md} +83 -37
  100. package/templates/react-sdk-reference/{.claude → .ai-common}/skills/template-skills/WideNarrow.md +48 -46
  101. package/templates/react-sdk-reference/.ai-common/skills/template-skills/WssNavBar.md +210 -0
  102. package/templates/react-sdk-reference/{.cursor/rules/skills/widget-components.mdrules → .ai-common/skills/widget-components.md} +12 -28
  103. package/templates/react-sdk-reference/.ai-common/skills/widget-skills/AppAnnouncement.md +121 -0
  104. package/templates/react-sdk-reference/.ai-common/skills/widget-skills/Attachment.md +209 -0
  105. package/templates/react-sdk-reference/{.cursor/rules/skills/widget-skills/CaseHistory.mdrules → .ai-common/skills/widget-skills/CaseHistory.md} +81 -20
  106. package/templates/react-sdk-reference/.ai-common/skills/widget-skills/FileUtility.md +273 -0
  107. package/templates/react-sdk-reference/{.cursor/rules/skills/widget-skills/Followers.mdrules → .ai-common/skills/widget-skills/Followers.md} +43 -24
  108. package/templates/react-sdk-reference/{.cursor/rules/skills/widget-skills/QuickCreate.mdrules → .ai-common/skills/widget-skills/QuickCreate.md} +68 -21
  109. package/templates/react-sdk-reference/{.cursor/rules/skills/widget-skills/SummaryItem.mdrules → .ai-common/skills/widget-skills/SummaryItem.md} +92 -29
  110. package/templates/react-sdk-reference/.ai-common/skills/widget-skills/ToDo.md +492 -0
  111. package/templates/react-sdk-reference/index.html +1 -4
  112. package/templates/react-sdk-reference/package.json +15 -15
  113. package/templates/react-sdk-reference/package.minimal.json +29 -0
  114. package/templates/react-sdk-reference/pega-sdk-react-0.1.0.tgz +0 -0
  115. package/templates/react-sdk-reference/src/AppProviders.tsx +17 -0
  116. package/templates/react-sdk-reference/src/AppSelector.tsx +6 -6
  117. package/templates/react-sdk-reference/src/FallbackComponent.tsx +2 -6
  118. package/templates/react-sdk-reference/src/MashupApp.styles.ts +269 -41
  119. package/templates/react-sdk-reference/src/MashupApp.tsx +194 -104
  120. package/templates/react-sdk-reference/src/PortalApp.tsx +15 -50
  121. package/templates/react-sdk-reference/src/components/component-map.ts +2 -7
  122. package/templates/react-sdk-reference/src/components/designSystemExtension/AlertBanner/AlertBanner.tsx +7 -28
  123. package/templates/react-sdk-reference/src/components/designSystemExtension/Banner/Banner.tsx +12 -7
  124. package/templates/react-sdk-reference/src/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.tsx +35 -33
  125. package/templates/react-sdk-reference/src/components/designSystemExtension/DetailsFields/DetailsFields.tsx +6 -27
  126. package/templates/react-sdk-reference/src/components/designSystemExtension/FieldGroup/FieldGroup.tsx +15 -11
  127. package/templates/react-sdk-reference/src/components/designSystemExtension/FieldGroupList/FieldGroupList.tsx +7 -7
  128. package/templates/react-sdk-reference/src/components/designSystemExtension/FieldValueList/FieldValueList.tsx +18 -12
  129. package/templates/react-sdk-reference/src/components/designSystemExtension/Operator/Operator.tsx +27 -25
  130. package/templates/react-sdk-reference/src/components/designSystemExtension/Pulse/Pulse.tsx +4 -4
  131. package/templates/react-sdk-reference/src/components/designSystemExtension/RichTextEditor/RichTextEditor.tsx +8 -40
  132. package/templates/react-sdk-reference/src/components/designSystemExtension/WssQuickCreate/WssQuickCreate.tsx +9 -9
  133. package/templates/react-sdk-reference/src/components/field/AutoComplete/AutoComplete.tsx +26 -20
  134. package/templates/react-sdk-reference/src/components/field/CancelAlert/CancelAlert.tsx +35 -17
  135. package/templates/react-sdk-reference/src/components/field/Checkbox/Checkbox.tsx +27 -25
  136. package/templates/react-sdk-reference/src/components/field/Currency/Currency.tsx +10 -6
  137. package/templates/react-sdk-reference/src/components/field/Currency/currency-utils.ts +1 -1
  138. package/templates/react-sdk-reference/src/components/field/Date/Date.tsx +20 -7
  139. package/templates/react-sdk-reference/src/components/field/DateTime/DateTime.tsx +23 -8
  140. package/templates/react-sdk-reference/src/components/field/Decimal/Decimal.tsx +5 -5
  141. package/templates/react-sdk-reference/src/components/field/Dropdown/Dropdown.tsx +45 -25
  142. package/templates/react-sdk-reference/src/components/field/Email/Email.tsx +8 -8
  143. package/templates/react-sdk-reference/src/components/field/Group/Group.tsx +1 -1
  144. package/templates/react-sdk-reference/src/components/field/Integer/Integer.tsx +5 -5
  145. package/templates/react-sdk-reference/src/components/field/Location/Location.tsx +21 -16
  146. package/templates/react-sdk-reference/src/components/field/Multiselect/Multiselect.tsx +42 -27
  147. package/templates/react-sdk-reference/src/components/field/Multiselect/utils.ts +43 -29
  148. package/templates/react-sdk-reference/src/components/field/ObjectReference/ObjectReference.tsx +53 -30
  149. package/templates/react-sdk-reference/src/components/field/ObjectReference/utils.ts +12 -11
  150. package/templates/react-sdk-reference/src/components/field/Percentage/Percentage.tsx +6 -6
  151. package/templates/react-sdk-reference/src/components/field/Phone/Phone.tsx +12 -12
  152. package/templates/react-sdk-reference/src/components/field/RadioButtons/RadioButtons.tsx +38 -16
  153. package/templates/react-sdk-reference/src/components/field/RichText/RichText.tsx +17 -4
  154. package/templates/react-sdk-reference/src/components/field/ScalarList/ScalarList.tsx +5 -5
  155. package/templates/react-sdk-reference/src/components/field/SelectableCard/SelectableCard.tsx +31 -18
  156. package/templates/react-sdk-reference/src/components/field/SelectableCard/utils.tsx +28 -20
  157. package/templates/react-sdk-reference/src/components/field/SemanticLink/SemanticLink.tsx +28 -19
  158. package/templates/react-sdk-reference/src/components/field/SemanticLink/utils.ts +3 -1
  159. package/templates/react-sdk-reference/src/components/field/TextArea/TextArea.tsx +4 -4
  160. package/templates/react-sdk-reference/src/components/field/TextInput/TextInput.tsx +4 -4
  161. package/templates/react-sdk-reference/src/components/field/Time/Time.tsx +20 -7
  162. package/templates/react-sdk-reference/src/components/field/URL/URL.tsx +7 -7
  163. package/templates/react-sdk-reference/src/components/field/UserReference/UserReference.tsx +14 -14
  164. package/templates/react-sdk-reference/src/components/field/UserReference/UserReferenceUtils.ts +2 -2
  165. package/templates/react-sdk-reference/src/components/helpers/case-utils.tsx +5 -5
  166. package/templates/react-sdk-reference/src/components/helpers/data_page.ts +3 -3
  167. package/templates/react-sdk-reference/src/components/helpers/date-format-utils.ts +5 -5
  168. package/templates/react-sdk-reference/src/components/helpers/field-group-utils.ts +2 -7
  169. package/templates/react-sdk-reference/src/components/helpers/formatters/Boolean.ts +9 -3
  170. package/templates/react-sdk-reference/src/components/helpers/formatters/Currency.ts +18 -6
  171. package/templates/react-sdk-reference/src/components/helpers/formatters/CurrencyMap.ts +168 -168
  172. package/templates/react-sdk-reference/src/components/helpers/formatters/Date.ts +5 -5
  173. package/templates/react-sdk-reference/src/components/helpers/formatters/index.ts +8 -5
  174. package/templates/react-sdk-reference/src/components/helpers/instructions-utils.ts +2 -2
  175. package/templates/react-sdk-reference/src/components/helpers/simpleTableHelpers.ts +54 -30
  176. package/templates/react-sdk-reference/src/components/helpers/state-utils.tsx +5 -2
  177. package/templates/react-sdk-reference/src/components/helpers/template-utils.ts +5 -4
  178. package/templates/react-sdk-reference/src/components/helpers/utils.ts +3 -3
  179. package/templates/react-sdk-reference/src/components/helpers/versionHelpers.ts +3 -1
  180. package/templates/react-sdk-reference/src/components/index.ts +1 -4
  181. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/AdvancedSearch.tsx +18 -10
  182. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroup/persistUtils.ts +3 -3
  183. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroups/SearchGroups.tsx +26 -90
  184. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroups/hooks.ts +8 -5
  185. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroups/utils.ts +8 -4
  186. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/TemplateContext.ts +1 -1
  187. package/templates/react-sdk-reference/src/components/template/AppShell/AppShell.tsx +28 -19
  188. package/templates/react-sdk-reference/src/components/template/BannerPage/BannerPage.tsx +2 -2
  189. package/templates/react-sdk-reference/src/components/template/CaseSummary/CaseSummary.tsx +5 -5
  190. package/templates/react-sdk-reference/src/components/template/CaseView/CaseView.tsx +35 -16
  191. package/templates/react-sdk-reference/src/components/template/CaseViewActionsMenu/CaseViewActionsMenu.tsx +10 -10
  192. package/templates/react-sdk-reference/src/components/template/Confirmation/Confirmation.tsx +12 -26
  193. package/templates/react-sdk-reference/src/components/template/DataReference/DataReference.tsx +41 -124
  194. package/templates/react-sdk-reference/src/components/template/DataReference/DataReferenceAdvancedSearchContext.ts +2 -2
  195. package/templates/react-sdk-reference/src/components/template/DataReference/SearchForm.tsx +18 -78
  196. package/templates/react-sdk-reference/src/components/template/DataReference/utils.ts +18 -12
  197. package/templates/react-sdk-reference/src/components/template/DefaultForm/DefaultForm.tsx +4 -12
  198. package/templates/react-sdk-reference/src/components/template/DefaultForm/utils/index.ts +3 -3
  199. package/templates/react-sdk-reference/src/components/template/DefaultPage/DefaultPage.tsx +3 -3
  200. package/templates/react-sdk-reference/src/components/template/Details/Details/Details.tsx +6 -8
  201. package/templates/react-sdk-reference/src/components/template/Details/DetailsThreeColumn/DetailsThreeColumn.tsx +7 -14
  202. package/templates/react-sdk-reference/src/components/template/Details/DetailsTwoColumn/DetailsTwoColumn.tsx +7 -14
  203. package/templates/react-sdk-reference/src/components/template/Details/DynamicTabs/DynamicTabs.tsx +16 -8
  204. package/templates/react-sdk-reference/src/components/template/FieldGroupTemplate/FieldGroupTemplate.tsx +7 -4
  205. package/templates/react-sdk-reference/src/components/template/HierarchicalForm/HierarchicalForm.tsx +20 -5
  206. package/templates/react-sdk-reference/src/components/template/HierarchicalForm/hooks.ts +35 -77
  207. package/templates/react-sdk-reference/src/components/template/InlineDashboard/InlineDashboard.tsx +10 -10
  208. package/templates/react-sdk-reference/src/components/template/ListView/DefaultViewMeta.ts +31 -31
  209. package/templates/react-sdk-reference/src/components/template/ListView/ListView.tsx +173 -133
  210. package/templates/react-sdk-reference/src/components/template/ListView/hooks.ts +17 -10
  211. package/templates/react-sdk-reference/src/components/template/ListView/utils.ts +64 -51
  212. package/templates/react-sdk-reference/src/components/template/MultiReferenceReadOnly/MultiReferenceReadOnly.tsx +6 -6
  213. package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWide/NarrowWide.tsx +6 -6
  214. package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.tsx +8 -18
  215. package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWideForm/NarrowWideForm.tsx +3 -3
  216. package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWidePage/NarrowWidePage.tsx +7 -1
  217. package/templates/react-sdk-reference/src/components/template/OneColumn/OneColumn/OneColumn.tsx +3 -3
  218. package/templates/react-sdk-reference/src/components/template/OneColumn/OneColumnTab/OneColumnTab.tsx +1 -1
  219. package/templates/react-sdk-reference/src/components/template/PromotedFilters/PromotedFilters.tsx +13 -40
  220. package/templates/react-sdk-reference/src/components/template/SelfServiceCaseView/SelfServiceCaseView.tsx +19 -16
  221. package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTable/SimpleTable.tsx +8 -7
  222. package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.tsx +84 -203
  223. package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.tsx +15 -5
  224. package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTableSelectReadonly/SimpleTableSelectReadonly.tsx +15 -29
  225. package/templates/react-sdk-reference/src/components/template/SingleReferenceReadOnly/SingleReferenceReadOnly.tsx +7 -7
  226. package/templates/react-sdk-reference/src/components/template/SubTabs/SubTabs.tsx +1 -1
  227. package/templates/react-sdk-reference/src/components/template/SubTabs/tabUtils.ts +13 -11
  228. package/templates/react-sdk-reference/src/components/template/TwoColumn/TwoColumn/TwoColumn.tsx +3 -3
  229. package/templates/react-sdk-reference/src/components/template/TwoColumn/TwoColumnTab/TwoColumnTab.tsx +3 -3
  230. package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrow/WideNarrow.tsx +6 -6
  231. package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.tsx +13 -24
  232. package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrowForm/WideNarrowForm.tsx +3 -3
  233. package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrowPage/WideNarrowPage.tsx +7 -1
  234. package/templates/react-sdk-reference/src/components/template/WssNavBar/WssNavBar.tsx +25 -25
  235. package/templates/react-sdk-reference/src/components/template/utils.tsx +6 -6
  236. package/templates/react-sdk-reference/src/components/widget/AppAnnouncement/AppAnnouncement.tsx +9 -9
  237. package/templates/react-sdk-reference/src/components/widget/Attachment/Attachment.tsx +125 -79
  238. package/templates/react-sdk-reference/src/components/widget/Attachment/AttachmentUtils.ts +58 -33
  239. package/templates/react-sdk-reference/src/components/widget/CaseHistory/CaseHistory.tsx +14 -12
  240. package/templates/react-sdk-reference/src/components/widget/FileUtility/ActionButtonsForFileUtil/ActionButtonsForFileUtil.tsx +19 -7
  241. package/templates/react-sdk-reference/src/components/widget/FileUtility/FileUtility/FileUtility.tsx +137 -107
  242. package/templates/react-sdk-reference/src/components/widget/Followers/Followers.tsx +4 -4
  243. package/templates/react-sdk-reference/src/components/widget/QuickCreate/QuickCreate.tsx +15 -11
  244. package/templates/react-sdk-reference/src/components/widget/SummaryItem/SummaryItem.tsx +25 -18
  245. package/templates/react-sdk-reference/src/components/widget/SummaryList/SummaryList.tsx +7 -2
  246. package/templates/react-sdk-reference/src/components/widget/ToDo/ToDo.tsx +30 -116
  247. package/templates/react-sdk-reference/src/main.tsx +1 -1
  248. package/templates/react-sdk-reference/tsconfig.json +2 -1
  249. package/templates/react-sdk-reference/vite.config.ts +51 -26
  250. package/templates/wc-sdk-reference/package.json +3 -3
  251. package/templates/wc-sdk-reference/src/index.ts +10 -10
  252. package/templates/wc-sdk-reference/tsconfig.json +1 -0
  253. package/templates/react-sdk-reference/.claude/instructions/component-map.md +0 -38
  254. package/templates/react-sdk-reference/.claude/instructions/dse-component.md +0 -75
  255. package/templates/react-sdk-reference/.claude/instructions/field-component.md +0 -71
  256. package/templates/react-sdk-reference/.claude/instructions/template-component.md +0 -92
  257. package/templates/react-sdk-reference/.claude/instructions/widget-component.md +0 -87
  258. package/templates/react-sdk-reference/.claude/prompts/add-component.md +0 -144
  259. package/templates/react-sdk-reference/.claude/prompts/component-manifest.json +0 -111
  260. package/templates/react-sdk-reference/.claude/prompts/generate-all-components.md +0 -149
  261. package/templates/react-sdk-reference/.claude/prompts/generate-dse-components.md +0 -126
  262. package/templates/react-sdk-reference/.claude/prompts/generate-field-components.md +0 -139
  263. package/templates/react-sdk-reference/.claude/prompts/generate-template-components.md +0 -151
  264. package/templates/react-sdk-reference/.claude/prompts/generate-widget-components.md +0 -124
  265. package/templates/react-sdk-reference/.claude/prompts/identify-components.md +0 -105
  266. package/templates/react-sdk-reference/.claude/prompts/replace-design-system.md +0 -519
  267. package/templates/react-sdk-reference/.claude/skills/component-contracts.md +0 -140
  268. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/AlertBanner.md +0 -135
  269. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Banner.md +0 -149
  270. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/CaseSummaryFields.md +0 -154
  271. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/DetailsFields.md +0 -144
  272. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldGroup.md +0 -131
  273. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldGroupList.md +0 -111
  274. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldValueList.md +0 -115
  275. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Operator.md +0 -149
  276. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Pulse.md +0 -83
  277. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/RichTextEditor.md +0 -206
  278. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/WssQuickCreate.md +0 -135
  279. package/templates/react-sdk-reference/.claude/skills/design-system-extension.md +0 -289
  280. package/templates/react-sdk-reference/.claude/skills/field-components.md +0 -294
  281. package/templates/react-sdk-reference/.claude/skills/field-skills/AutoComplete.md +0 -112
  282. package/templates/react-sdk-reference/.claude/skills/field-skills/CancelAlert.md +0 -203
  283. package/templates/react-sdk-reference/.claude/skills/field-skills/Checkbox.md +0 -158
  284. package/templates/react-sdk-reference/.claude/skills/field-skills/Currency.md +0 -106
  285. package/templates/react-sdk-reference/.claude/skills/field-skills/Date.md +0 -99
  286. package/templates/react-sdk-reference/.claude/skills/field-skills/DateTime.md +0 -103
  287. package/templates/react-sdk-reference/.claude/skills/field-skills/Decimal.md +0 -98
  288. package/templates/react-sdk-reference/.claude/skills/field-skills/Dropdown.md +0 -114
  289. package/templates/react-sdk-reference/.claude/skills/field-skills/Email.md +0 -107
  290. package/templates/react-sdk-reference/.claude/skills/field-skills/Group.md +0 -90
  291. package/templates/react-sdk-reference/.claude/skills/field-skills/Integer.md +0 -87
  292. package/templates/react-sdk-reference/.claude/skills/field-skills/Location.md +0 -136
  293. package/templates/react-sdk-reference/.claude/skills/field-skills/Multiselect.md +0 -164
  294. package/templates/react-sdk-reference/.claude/skills/field-skills/ObjectReference.md +0 -164
  295. package/templates/react-sdk-reference/.claude/skills/field-skills/Percentage.md +0 -92
  296. package/templates/react-sdk-reference/.claude/skills/field-skills/Phone.md +0 -110
  297. package/templates/react-sdk-reference/.claude/skills/field-skills/RadioButtons.md +0 -146
  298. package/templates/react-sdk-reference/.claude/skills/field-skills/RichText.md +0 -138
  299. package/templates/react-sdk-reference/.claude/skills/field-skills/ScalarList.md +0 -124
  300. package/templates/react-sdk-reference/.claude/skills/field-skills/SelectableCard.md +0 -216
  301. package/templates/react-sdk-reference/.claude/skills/field-skills/SemanticLink.md +0 -148
  302. package/templates/react-sdk-reference/.claude/skills/field-skills/TextArea.md +0 -96
  303. package/templates/react-sdk-reference/.claude/skills/field-skills/TextContent.md +0 -101
  304. package/templates/react-sdk-reference/.claude/skills/field-skills/TextInput.md +0 -104
  305. package/templates/react-sdk-reference/.claude/skills/field-skills/Time.md +0 -88
  306. package/templates/react-sdk-reference/.claude/skills/field-skills/URL.md +0 -85
  307. package/templates/react-sdk-reference/.claude/skills/field-skills/UserReference.md +0 -180
  308. package/templates/react-sdk-reference/.claude/skills/run-and-verify.md +0 -68
  309. package/templates/react-sdk-reference/.claude/skills/template-components.md +0 -322
  310. package/templates/react-sdk-reference/.claude/skills/template-skills/AdvancedSearch.md +0 -144
  311. package/templates/react-sdk-reference/.claude/skills/template-skills/AppShell.md +0 -122
  312. package/templates/react-sdk-reference/.claude/skills/template-skills/BannerPage.md +0 -83
  313. package/templates/react-sdk-reference/.claude/skills/template-skills/CaseSummary.md +0 -100
  314. package/templates/react-sdk-reference/.claude/skills/template-skills/CaseView.md +0 -131
  315. package/templates/react-sdk-reference/.claude/skills/template-skills/CaseViewActionsMenu.md +0 -126
  316. package/templates/react-sdk-reference/.claude/skills/template-skills/Confirmation.md +0 -107
  317. package/templates/react-sdk-reference/.claude/skills/template-skills/DataReference.md +0 -120
  318. package/templates/react-sdk-reference/.claude/skills/template-skills/DefaultForm.md +0 -102
  319. package/templates/react-sdk-reference/.claude/skills/template-skills/DefaultPage.md +0 -110
  320. package/templates/react-sdk-reference/.claude/skills/template-skills/Details.md +0 -88
  321. package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsSubTabs.md +0 -95
  322. package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsThreeColumn.md +0 -78
  323. package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsTwoColumn.md +0 -78
  324. package/templates/react-sdk-reference/.claude/skills/template-skills/DynamicTabs.md +0 -101
  325. package/templates/react-sdk-reference/.claude/skills/template-skills/FieldGroupTemplate.md +0 -109
  326. package/templates/react-sdk-reference/.claude/skills/template-skills/HierarchicalForm.md +0 -113
  327. package/templates/react-sdk-reference/.claude/skills/template-skills/InlineDashboard.md +0 -104
  328. package/templates/react-sdk-reference/.claude/skills/template-skills/InlineDashboardPage.md +0 -85
  329. package/templates/react-sdk-reference/.claude/skills/template-skills/ListPage.md +0 -68
  330. package/templates/react-sdk-reference/.claude/skills/template-skills/ListView.md +0 -139
  331. package/templates/react-sdk-reference/.claude/skills/template-skills/MultiReferenceReadOnly.md +0 -80
  332. package/templates/react-sdk-reference/.claude/skills/template-skills/NarrowWide.md +0 -141
  333. package/templates/react-sdk-reference/.claude/skills/template-skills/OneColumn.md +0 -109
  334. package/templates/react-sdk-reference/.claude/skills/template-skills/PromotedFilters.md +0 -124
  335. package/templates/react-sdk-reference/.claude/skills/template-skills/SelfServiceCaseView.md +0 -135
  336. package/templates/react-sdk-reference/.claude/skills/template-skills/SimpleTable.md +0 -127
  337. package/templates/react-sdk-reference/.claude/skills/template-skills/SingleReferenceReadOnly.md +0 -103
  338. package/templates/react-sdk-reference/.claude/skills/template-skills/SubTabs.md +0 -79
  339. package/templates/react-sdk-reference/.claude/skills/template-skills/TwoColumn.md +0 -131
  340. package/templates/react-sdk-reference/.claude/skills/template-skills/WssNavBar.md +0 -135
  341. package/templates/react-sdk-reference/.claude/skills/widget-components.md +0 -271
  342. package/templates/react-sdk-reference/.claude/skills/widget-skills/AppAnnouncement.md +0 -82
  343. package/templates/react-sdk-reference/.claude/skills/widget-skills/Attachment.md +0 -146
  344. package/templates/react-sdk-reference/.claude/skills/widget-skills/CaseHistory.md +0 -107
  345. package/templates/react-sdk-reference/.claude/skills/widget-skills/FileUtility.md +0 -200
  346. package/templates/react-sdk-reference/.claude/skills/widget-skills/Followers.md +0 -99
  347. package/templates/react-sdk-reference/.claude/skills/widget-skills/QuickCreate.md +0 -114
  348. package/templates/react-sdk-reference/.claude/skills/widget-skills/SummaryItem.md +0 -167
  349. package/templates/react-sdk-reference/.claude/skills/widget-skills/ToDo.md +0 -190
  350. package/templates/react-sdk-reference/.cursor/rules/component-map.mdrules +0 -41
  351. package/templates/react-sdk-reference/.cursor/rules/dse-component.mdrules +0 -78
  352. package/templates/react-sdk-reference/.cursor/rules/pega-sdk.mdrules +0 -247
  353. package/templates/react-sdk-reference/.cursor/rules/prompts/add-component.mdrules +0 -149
  354. package/templates/react-sdk-reference/.cursor/rules/prompts/component-manifest.json +0 -111
  355. package/templates/react-sdk-reference/.cursor/rules/prompts/generate-all-components.mdrules +0 -154
  356. package/templates/react-sdk-reference/.cursor/rules/prompts/generate-dse-components.mdrules +0 -131
  357. package/templates/react-sdk-reference/.cursor/rules/prompts/generate-field-components.mdrules +0 -144
  358. package/templates/react-sdk-reference/.cursor/rules/prompts/generate-template-components.mdrules +0 -156
  359. package/templates/react-sdk-reference/.cursor/rules/prompts/generate-widget-components.mdrules +0 -129
  360. package/templates/react-sdk-reference/.cursor/rules/prompts/identify-components.mdrules +0 -110
  361. package/templates/react-sdk-reference/.cursor/rules/skills/component-contracts.mdrules +0 -145
  362. package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/AlertBanner.mdrules +0 -140
  363. package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/Banner.mdrules +0 -154
  364. package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/CaseSummaryFields.mdrules +0 -159
  365. package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/RichTextEditor.mdrules +0 -211
  366. package/templates/react-sdk-reference/.cursor/rules/skills/design-system-extension-skills/WssQuickCreate.mdrules +0 -140
  367. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/AutoComplete.mdrules +0 -117
  368. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/CancelAlert.mdrules +0 -208
  369. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Checkbox.mdrules +0 -163
  370. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Currency.mdrules +0 -111
  371. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Date.mdrules +0 -104
  372. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/DateTime.mdrules +0 -108
  373. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Decimal.mdrules +0 -103
  374. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Dropdown.mdrules +0 -119
  375. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Email.mdrules +0 -112
  376. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Integer.mdrules +0 -92
  377. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Location.mdrules +0 -141
  378. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Multiselect.mdrules +0 -169
  379. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Percentage.mdrules +0 -97
  380. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Phone.mdrules +0 -115
  381. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/RadioButtons.mdrules +0 -151
  382. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/ScalarList.mdrules +0 -129
  383. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/SelectableCard.mdrules +0 -221
  384. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/TextArea.mdrules +0 -101
  385. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/TextInput.mdrules +0 -109
  386. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/Time.mdrules +0 -93
  387. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/URL.mdrules +0 -90
  388. package/templates/react-sdk-reference/.cursor/rules/skills/field-skills/UserReference.mdrules +0 -185
  389. package/templates/react-sdk-reference/.cursor/rules/skills/run-and-verify.mdrules +0 -73
  390. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/AdvancedSearch.mdrules +0 -149
  391. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/AppShell.mdrules +0 -127
  392. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/CaseSummary.mdrules +0 -105
  393. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/CaseView.mdrules +0 -136
  394. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/CaseViewActionsMenu.mdrules +0 -131
  395. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/Confirmation.mdrules +0 -112
  396. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DataReference.mdrules +0 -125
  397. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DefaultForm.mdrules +0 -107
  398. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/DefaultPage.mdrules +0 -115
  399. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/FieldGroupTemplate.mdrules +0 -114
  400. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/ListView.mdrules +0 -144
  401. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/NarrowWide.mdrules +0 -146
  402. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/PromotedFilters.mdrules +0 -129
  403. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/SelfServiceCaseView.mdrules +0 -140
  404. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/SimpleTable.mdrules +0 -132
  405. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/SingleReferenceReadOnly.mdrules +0 -108
  406. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/WideNarrow.mdrules +0 -155
  407. package/templates/react-sdk-reference/.cursor/rules/skills/template-skills/WssNavBar.mdrules +0 -140
  408. package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/AppAnnouncement.mdrules +0 -87
  409. package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/Attachment.mdrules +0 -151
  410. package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/FileUtility.mdrules +0 -205
  411. package/templates/react-sdk-reference/.cursor/rules/skills/widget-skills/ToDo.mdrules +0 -195
  412. package/templates/react-sdk-reference/.cursor/rules/template-component.mdrules +0 -95
  413. package/templates/react-sdk-reference/.cursor/rules/widget-component.mdrules +0 -90
  414. package/templates/react-sdk-reference/.github/instructions/field-component.instructions.md +0 -73
  415. package/templates/react-sdk-reference/.github/prompts/add-component.prompt.md +0 -149
  416. package/templates/react-sdk-reference/.github/prompts/component-manifest.json +0 -111
  417. package/templates/react-sdk-reference/.github/prompts/generate-all-components.prompt.md +0 -154
  418. package/templates/react-sdk-reference/.github/prompts/generate-dse-components.prompt.md +0 -131
  419. package/templates/react-sdk-reference/.github/prompts/generate-field-components.prompt.md +0 -144
  420. package/templates/react-sdk-reference/.github/prompts/generate-template-components.prompt.md +0 -156
  421. package/templates/react-sdk-reference/.github/prompts/generate-widget-components.prompt.md +0 -129
  422. package/templates/react-sdk-reference/.github/prompts/identify-components.prompt.md +0 -110
  423. package/templates/react-sdk-reference/.github/prompts/replace-design-system.prompt.md +0 -524
  424. package/templates/react-sdk-reference/.github/skills/component-contracts.md +0 -140
  425. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/AlertBanner.md +0 -135
  426. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Banner.md +0 -149
  427. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/CaseSummaryFields.md +0 -154
  428. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/DetailsFields.md +0 -144
  429. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldGroup.md +0 -131
  430. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldGroupList.md +0 -111
  431. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldValueList.md +0 -115
  432. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Operator.md +0 -149
  433. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Pulse.md +0 -83
  434. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/RichTextEditor.md +0 -206
  435. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/WssQuickCreate.md +0 -135
  436. package/templates/react-sdk-reference/.github/skills/design-system-extension.md +0 -289
  437. package/templates/react-sdk-reference/.github/skills/field-components.md +0 -294
  438. package/templates/react-sdk-reference/.github/skills/field-skills/AutoComplete.md +0 -112
  439. package/templates/react-sdk-reference/.github/skills/field-skills/CancelAlert.md +0 -203
  440. package/templates/react-sdk-reference/.github/skills/field-skills/Checkbox.md +0 -158
  441. package/templates/react-sdk-reference/.github/skills/field-skills/Currency.md +0 -106
  442. package/templates/react-sdk-reference/.github/skills/field-skills/Date.md +0 -99
  443. package/templates/react-sdk-reference/.github/skills/field-skills/DateTime.md +0 -103
  444. package/templates/react-sdk-reference/.github/skills/field-skills/Decimal.md +0 -98
  445. package/templates/react-sdk-reference/.github/skills/field-skills/Dropdown.md +0 -114
  446. package/templates/react-sdk-reference/.github/skills/field-skills/Email.md +0 -107
  447. package/templates/react-sdk-reference/.github/skills/field-skills/Group.md +0 -90
  448. package/templates/react-sdk-reference/.github/skills/field-skills/Integer.md +0 -87
  449. package/templates/react-sdk-reference/.github/skills/field-skills/Location.md +0 -136
  450. package/templates/react-sdk-reference/.github/skills/field-skills/Multiselect.md +0 -164
  451. package/templates/react-sdk-reference/.github/skills/field-skills/ObjectReference.md +0 -164
  452. package/templates/react-sdk-reference/.github/skills/field-skills/Percentage.md +0 -92
  453. package/templates/react-sdk-reference/.github/skills/field-skills/Phone.md +0 -110
  454. package/templates/react-sdk-reference/.github/skills/field-skills/RadioButtons.md +0 -146
  455. package/templates/react-sdk-reference/.github/skills/field-skills/RichText.md +0 -138
  456. package/templates/react-sdk-reference/.github/skills/field-skills/ScalarList.md +0 -124
  457. package/templates/react-sdk-reference/.github/skills/field-skills/SelectableCard.md +0 -216
  458. package/templates/react-sdk-reference/.github/skills/field-skills/SemanticLink.md +0 -148
  459. package/templates/react-sdk-reference/.github/skills/field-skills/TextArea.md +0 -96
  460. package/templates/react-sdk-reference/.github/skills/field-skills/TextContent.md +0 -101
  461. package/templates/react-sdk-reference/.github/skills/field-skills/TextInput.md +0 -104
  462. package/templates/react-sdk-reference/.github/skills/field-skills/Time.md +0 -88
  463. package/templates/react-sdk-reference/.github/skills/field-skills/URL.md +0 -85
  464. package/templates/react-sdk-reference/.github/skills/field-skills/UserReference.md +0 -180
  465. package/templates/react-sdk-reference/.github/skills/run-and-verify.md +0 -68
  466. package/templates/react-sdk-reference/.github/skills/template-components.md +0 -322
  467. package/templates/react-sdk-reference/.github/skills/template-skills/AdvancedSearch.md +0 -144
  468. package/templates/react-sdk-reference/.github/skills/template-skills/AppShell.md +0 -122
  469. package/templates/react-sdk-reference/.github/skills/template-skills/BannerPage.md +0 -83
  470. package/templates/react-sdk-reference/.github/skills/template-skills/CaseSummary.md +0 -100
  471. package/templates/react-sdk-reference/.github/skills/template-skills/CaseView.md +0 -131
  472. package/templates/react-sdk-reference/.github/skills/template-skills/CaseViewActionsMenu.md +0 -126
  473. package/templates/react-sdk-reference/.github/skills/template-skills/Confirmation.md +0 -107
  474. package/templates/react-sdk-reference/.github/skills/template-skills/DataReference.md +0 -120
  475. package/templates/react-sdk-reference/.github/skills/template-skills/DefaultForm.md +0 -102
  476. package/templates/react-sdk-reference/.github/skills/template-skills/DefaultPage.md +0 -110
  477. package/templates/react-sdk-reference/.github/skills/template-skills/Details.md +0 -88
  478. package/templates/react-sdk-reference/.github/skills/template-skills/DetailsSubTabs.md +0 -95
  479. package/templates/react-sdk-reference/.github/skills/template-skills/DetailsThreeColumn.md +0 -78
  480. package/templates/react-sdk-reference/.github/skills/template-skills/DetailsTwoColumn.md +0 -78
  481. package/templates/react-sdk-reference/.github/skills/template-skills/DynamicTabs.md +0 -101
  482. package/templates/react-sdk-reference/.github/skills/template-skills/FieldGroupTemplate.md +0 -109
  483. package/templates/react-sdk-reference/.github/skills/template-skills/HierarchicalForm.md +0 -113
  484. package/templates/react-sdk-reference/.github/skills/template-skills/InlineDashboard.md +0 -104
  485. package/templates/react-sdk-reference/.github/skills/template-skills/InlineDashboardPage.md +0 -85
  486. package/templates/react-sdk-reference/.github/skills/template-skills/ListPage.md +0 -68
  487. package/templates/react-sdk-reference/.github/skills/template-skills/ListView.md +0 -139
  488. package/templates/react-sdk-reference/.github/skills/template-skills/MultiReferenceReadOnly.md +0 -80
  489. package/templates/react-sdk-reference/.github/skills/template-skills/NarrowWide.md +0 -141
  490. package/templates/react-sdk-reference/.github/skills/template-skills/OneColumn.md +0 -109
  491. package/templates/react-sdk-reference/.github/skills/template-skills/PromotedFilters.md +0 -124
  492. package/templates/react-sdk-reference/.github/skills/template-skills/SelfServiceCaseView.md +0 -135
  493. package/templates/react-sdk-reference/.github/skills/template-skills/SimpleTable.md +0 -127
  494. package/templates/react-sdk-reference/.github/skills/template-skills/SingleReferenceReadOnly.md +0 -103
  495. package/templates/react-sdk-reference/.github/skills/template-skills/SubTabs.md +0 -79
  496. package/templates/react-sdk-reference/.github/skills/template-skills/TwoColumn.md +0 -131
  497. package/templates/react-sdk-reference/.github/skills/template-skills/WideNarrow.md +0 -150
  498. package/templates/react-sdk-reference/.github/skills/template-skills/WssNavBar.md +0 -135
  499. package/templates/react-sdk-reference/.github/skills/widget-components.md +0 -271
  500. package/templates/react-sdk-reference/.github/skills/widget-skills/AppAnnouncement.md +0 -82
  501. package/templates/react-sdk-reference/.github/skills/widget-skills/Attachment.md +0 -146
  502. package/templates/react-sdk-reference/.github/skills/widget-skills/CaseHistory.md +0 -107
  503. package/templates/react-sdk-reference/.github/skills/widget-skills/FileUtility.md +0 -200
  504. package/templates/react-sdk-reference/.github/skills/widget-skills/Followers.md +0 -99
  505. package/templates/react-sdk-reference/.github/skills/widget-skills/QuickCreate.md +0 -114
  506. package/templates/react-sdk-reference/.github/skills/widget-skills/SummaryItem.md +0 -167
  507. package/templates/react-sdk-reference/.github/skills/widget-skills/ToDo.md +0 -190
  508. package/templates/react-sdk-reference/AGENTS.md +0 -247
@@ -1,167 +0,0 @@
1
- # Skill: SummaryItem
2
-
3
- Individual item card for displaying an attachment, file, or link with an icon, name, metadata, and an actions menu. Also covers `SummaryList` — the container that renders multiple `SummaryItem` cards.
4
-
5
- > **Prerequisite skill:** [`widget-components.md`](../widget-components.md) — covers architecture, props interface, data-fetching patterns, and registration conventions common to ALL widget components.
6
-
7
- ---
8
-
9
- ## Component Purpose
10
-
11
- `SummaryItem` renders a single row/card for an attachment or link item. It shows a file-type icon, the item name (as a link for URLs or plain text for files), secondary metadata text, and an action menu. Used by `FileUtility` via the `SummaryList` container.
12
-
13
- `SummaryList` is a thin wrapper that maps an array of item objects to individual `SummaryItem` cards, passing down menu icon overrides for all items.
14
-
15
- ## Pega Metadata
16
-
17
- - **Registration keys:**
18
- - `SummaryItem` — the individual item card
19
- - `SummaryList` — the container/list component
20
- - **Category:** Widget — display / composition
21
- - **Extends:** `PConnProps`
22
-
23
- ---
24
-
25
- ## SummaryItem
26
-
27
- ### Props
28
-
29
- | Prop | Type | Required | Description |
30
- |------|------|----------|-------------|
31
- | `arItems$` | `object` | Yes | A single item object (see Item Structure below) |
32
- | `menuIconOverride$` | `string` | No | If provided, replaces the standard actions menu with a single direct-action icon button |
33
- | `menuIconOverrideAction$` | `function` | No | Callback invoked when the override icon button is clicked |
34
- | `getPConnect` | `function` | Yes | PConnect getter |
35
-
36
- ### Item Structure (`arItems$`)
37
-
38
- ```typescript
39
- {
40
- id: string;
41
- visual: {
42
- icon: string; // Icon identifier or URL
43
- progress?: number; // Upload progress 0–100 (optional)
44
- };
45
- primary: {
46
- type: 'FILE' | 'URL';
47
- name: string; // Display name of the item
48
- icon: string; // Icon for the primary element
49
- click: () => void; // Download (FILE) or open in new tab (URL)
50
- };
51
- secondary: {
52
- text: string; // Metadata text (e.g., "John Smith · 01/15/2025")
53
- error?: boolean; // If true, render text in error/red color
54
- };
55
- actions: Array<{
56
- id: string;
57
- text: string; // Menu item label
58
- icon: string; // Menu item icon identifier
59
- onClick: () => void; // Action callback
60
- }>;
61
- }
62
- ```
63
-
64
- ### Behavioral Contract
65
-
66
- 1. **Visual area:** Render `visual.icon` (file type icon). If `visual.progress` is defined and between 0–99, overlay a progress indicator.
67
- 2. **Primary element:**
68
- - `type === 'FILE'`: render `primary.name` as plain text (clicking calls `primary.click` which triggers download).
69
- - `type === 'URL'`: render `primary.name` as a link button that calls `primary.click` (opens URL in new tab).
70
- 3. **Secondary text:** Render `secondary.text` below the primary element. If `secondary.error === true`, render in error/red color.
71
- 4. **Actions:**
72
- - **Standard mode (no `menuIconOverride$`):** Render a `<MoreVertIcon>` icon button. On click, open a `<Menu>` with one `<MenuItem>` per `actions` entry.
73
- - **Override mode (`menuIconOverride$` provided):** Render a single direct-action icon button using `menuIconOverride$` as the icon. On click, call `menuIconOverrideAction$()`. No menu rendered.
74
-
75
- ## Visual Specifications
76
-
77
- ### Item Layout
78
-
79
- ```
80
- [File Icon] [Name (link if URL)]
81
- [Secondary metadata text]
82
- [Actions button (⋮ or override)]
83
- ```
84
-
85
- | Element | Description |
86
- |---------|-------------|
87
- | File icon | Left side, fixed size (~36px square) |
88
- | Name | Bold, truncated with ellipsis if too long |
89
- | Metadata | Smaller, secondary-color text |
90
- | Actions button | Right side, `<MoreVertIcon>` or override icon |
91
-
92
- **CSS-only implementation notes:**
93
- - Row: `display: flex; align-items: center; gap: 0.75rem; padding: 8px 0`.
94
- - File icon: `width: 36px; height: 36px; flex-shrink: 0`.
95
- - Content area: `flex: 1; min-width: 0` (prevents text overflow).
96
- - Name: `font-size: 0.875rem; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap`.
97
- - Metadata: `font-size: 0.75rem; color: var(--secondary-text-color)`.
98
- - Error metadata: `color: var(--error-color)`.
99
- - Actions button: `flex-shrink: 0; margin-left: auto`.
100
- - URL name: `color: var(--link-color); cursor: pointer; text-decoration: underline`.
101
-
102
- ## Edge Cases & Special Logic
103
-
104
- - `visual.progress` — show a progress indicator only when `0 <= progress < 100`. When `progress === 100` (complete) or `progress === undefined`, show only the file icon.
105
- - `secondary.error === true` — the metadata text (e.g., upload error message) must be red, not the normal secondary color.
106
- - `menuIconOverride$` replaces the menu entirely — do not render `<MoreVertIcon>` when an override is provided.
107
- - `actions` may be empty — if empty and no override provided, do not render the actions button at all.
108
-
109
- ---
110
-
111
- ## SummaryList
112
-
113
- ### Props
114
-
115
- | Prop | Type | Required | Description |
116
- |------|------|----------|-------------|
117
- | `arItems$` | `any[]` | Yes | Array of item objects (same shape as `SummaryItem`'s `arItems$`) |
118
- | `menuIconOverride$` | `string` | No | Passed to every `SummaryItem` |
119
- | `menuIconOverrideAction$` | `any` | No | Passed to every `SummaryItem` |
120
- | `getPConnect` | `function` | Yes | PConnect getter |
121
-
122
- ### Behavioral Contract
123
-
124
- ```tsx
125
- const SummaryItemComp = getComponentFromRegistry('SummaryItem');
126
-
127
- return (
128
- <div>
129
- {arItems$.map((item, i) => (
130
- <SummaryItemComp
131
- key={item.id || i}
132
- arItems$={item}
133
- menuIconOverride$={menuIconOverride$}
134
- menuIconOverrideAction$={menuIconOverrideAction$}
135
- getPConnect={getPConnect}
136
- />
137
- ))}
138
- </div>
139
- );
140
- ```
141
-
142
- No state, no data fetching — purely a mapping wrapper.
143
-
144
- ## Dependencies
145
-
146
- - **SummaryItem:** MUI `<IconButton>`, `<Menu>`, `<MenuItem>`, MUI Icons `<MoreVertIcon>`, utils helper for icon path resolution
147
- - **SummaryList:** `getComponentFromRegistry('SummaryItem')` — resolves the item component dynamically
148
-
149
- ## Design System Mapping
150
-
151
- **UI control type:** File/link item row with icon, name, metadata, and action menu.
152
-
153
- Listed design systems are examples only.
154
-
155
- | Design System | Row Layout | Action Menu |
156
- |---|---|---|
157
- | Default (CSS only) | `<div>` flexbox row | `<button>` + custom dropdown |
158
- | MUI | `<ListItem>` or `<Box display='flex'>` | `<IconButton>` + `<Menu>/<MenuItem>` |
159
- | Ant Design | `<List.Item>` | `<Dropdown menu={{ items }}>` |
160
- | Chakra UI | `<HStack>` | `<Menu>/<MenuButton>/<MenuList>` |
161
- | Shadcn/ui | `<div>` flexbox | `<DropdownMenu>` |
162
-
163
- When implementing in a specific design system:
164
- - `menuIconOverride$` completely replaces the standard `⋮` menu — check for it before rendering the actions area
165
- - `type === 'URL'` must render the name as a clickable link (not plain text)
166
- - `secondary.error` is a boolean — apply error styling to the `secondary.text` when `true`
167
- - `SummaryList` is purely compositional — no logic beyond mapping items to `SummaryItem`
@@ -1,190 +0,0 @@
1
- # Skill: ToDo
2
-
3
- Assignment worklist widget. Displays the current user's pending assignments with expand/collapse, click-to-open, priority indicators, badge counts, responsive layout, and snackbar error notifications.
4
-
5
- > **Prerequisite skill:** [`widget-components.md`](../widget-components.md) — covers architecture, props interface, data-fetching patterns, and registration conventions common to ALL widget components.
6
-
7
- ---
8
-
9
- ## Component Purpose
10
-
11
- Renders a compact to-do / worklist panel showing the user's pending assignments. Shows the top 3 items by default with a "Show more" / "Show less" toggle. Supports two modes: `worklist` (personal workbasket) and `todo` (case-level assignments). Clicking an item opens the assignment. A badge in the card header shows the total count.
12
-
13
- ## Pega Metadata
14
-
15
- - **Registration key:** `Todo` (note: lowercase `o` in the key; file is `ToDo.tsx`)
16
- - **Category:** Widget — assignment / action
17
- - **Extends:** `PConnProps`
18
-
19
- ## Props
20
-
21
- | Prop | Type | Required | Description |
22
- |------|------|----------|-------------|
23
- | `datasource` | `any` | No | Array of assignments passed directly (used in `todo` type). If provided, skips the data page fetch |
24
- | `myWorkList` | `any` | No | Work list config object `{ datapage: string, fields: [...] }` — for `worklist` type |
25
- | `caseInfoID` | `string` | No | Case ID to filter assignments (used in `todo` type) |
26
- | `headerText` | `string` | No | Widget title. Default: `"To do"` |
27
- | `itemKey` | `string` | No | Field key (reserved, currently unused) |
28
- | `showTodoList` | `boolean` | No | Whether to show the assignment list. Default `true` |
29
- | `type` | `string` | No | `'worklist'` (personal work) or `'todo'` (case-level). Default `'worklist'` |
30
- | `context` | `string` | No | Context name for API calls. Falls back to `pConn.getContextName()` |
31
- | `isConfirm` | `boolean` | No | Confirmation mode — adjusts rendering for post-submit confirmation view |
32
- | `getPConnect` | `function` | Yes | PConnect getter |
33
-
34
- ## Behavioral Contract
35
-
36
- ### Data Source Resolution
37
-
38
- **`type === 'todo'` (case-level):**
39
- - Use `datasource` prop directly (array of assignment objects).
40
- - `caseInfoID` is used to scope the assignments.
41
-
42
- **`type === 'worklist'` (personal work):**
43
- - Fetch from `myWorkList.datapage` (e.g., `D_WorkList`) via:
44
- ```
45
- PCore.getDataPageUtils().getDataAsync(
46
- myWorkList.datapage,
47
- context,
48
- {},
49
- { pageNumber: 1, pageSize: 50 },
50
- { select: myWorkList.fields },
51
- { invalidateCache: true }
52
- )
53
- ```
54
- - Map the response to assignment objects.
55
-
56
- ### Top 3 + Show More
57
-
58
- - `showCount` state: default `3`.
59
- - Render only `assignments.slice(0, showCount)`.
60
- - If `assignments.length > 3`:
61
- - Show a `"Show more"` button → sets `showCount = assignments.length`.
62
- - When expanded: show `"Show less"` button → sets `showCount = 3`.
63
-
64
- ### Badge Count
65
-
66
- - Render a `<Badge badgeContent={assignments.length}>` on the card header or alongside the title.
67
- - Badge shows the total count of assignments, not the currently-visible count.
68
-
69
- ### Open Assignment
70
-
71
- On item click:
72
- ```typescript
73
- pConn.getActionsApi().openAssignment(
74
- assignment.pxRefObjectKey, // case key
75
- assignment.pxRefObjectClass, // class name
76
- {
77
- containerName: pConn.getContainerName() || PCore.getConstants().APP.APP,
78
- channelName: ''
79
- }
80
- );
81
- ```
82
-
83
- ### Assignment Item Rendering
84
-
85
- For each assignment, show:
86
- - **Avatar:** Circle with user initials (derived from `pConn.getContextObject?.().pyLabel` or operator name).
87
- - **Name/title:** `assignment.pyLabel` — the assignment task name.
88
- - **Status badge (worklist only):** `assignment.pyStatusWork` — colored status pill.
89
- - **Priority/urgency:** `assignment.pyUrgencyWork` — urgency level indicator.
90
- - **Child case indicator:** If `assignment.isChild === true`, show an indent or nested indicator.
91
- - **Arrow icon:** Right-pointing arrow (`<ArrowForwardIosOutlinedIcon>`) indicating clickable.
92
-
93
- ### Responsive Layout
94
-
95
- Use `useMediaQuery(theme.breakpoints.down('sm'))` (MUI) to detect mobile:
96
- - **Desktop:** Show avatar, name, status, priority, and arrow in a horizontal row.
97
- - **Mobile:** Stack or truncate elements for narrow display.
98
-
99
- ### `canPerform` Permission Check
100
-
101
- If an assignment has `canPerform === false`, render it as non-clickable (greyed out, no onClick handler).
102
-
103
- ### Snackbar Error
104
-
105
- - On `openAssignment` failure, catch the error and show a `<Snackbar>` with the error message.
106
- - Auto-hide after 3000ms.
107
- - `<IconButton>` (`<CloseIcon>`) to manually dismiss.
108
-
109
- ### Operator Avatar Initials
110
-
111
- Extract initials from `PCore.getEnvironmentInfo().getOperatorName()`:
112
- ```typescript
113
- const initials = operatorName
114
- .split(' ')
115
- .map(w => w[0])
116
- .join('')
117
- .substring(0, 2)
118
- .toUpperCase();
119
- ```
120
-
121
- ## Visual Specifications
122
-
123
- ### Card Layout
124
-
125
- | Element | Description |
126
- |---------|-------------|
127
- | Card header | `headerText` (default `"To do"`) + badge with count |
128
- | Assignment rows | Up to `showCount` items |
129
- | Show more/less button | Below the last visible item |
130
-
131
- ### Assignment Row
132
-
133
- | Element | Desktop | Mobile |
134
- |---------|---------|--------|
135
- | Avatar circle | Shown | Shown |
136
- | Task name | Full text | Truncated |
137
- | Status badge | Shown | Hidden or small |
138
- | Priority indicator | Shown | Simplified |
139
- | Arrow icon | Shown | Shown |
140
-
141
- **CSS-only implementation notes:**
142
- - Card: standard card layout.
143
- - Assignment row: `display: flex; align-items: center; gap: 0.75rem; padding: 10px 0; cursor: pointer; border-bottom: 1px solid var(--divider-color)`.
144
- - Avatar: `width: 36px; height: 36px; border-radius: 50%; background: var(--avatar-bg); display: flex; align-items: center; justify-content: center; font-size: 0.875rem; font-weight: 600`.
145
- - Status badge: `padding: 2px 6px; border-radius: 10px; font-size: 0.75rem; background: var(--status-bg-color)`.
146
- - Priority: `font-size: 0.75rem; color: var(--secondary-text-color)`.
147
- - Arrow: `margin-left: auto; color: var(--secondary-text-color)`.
148
- - Non-clickable (canPerform=false): `opacity: 0.5; cursor: not-allowed`.
149
- - Show more button: `width: 100%; text-align: center; padding: 8px; color: var(--app-primary-color)`.
150
-
151
- ## Edge Cases & Special Logic
152
-
153
- - `type` defaults to `'worklist'` — handle the fallback gracefully if `type` is undefined.
154
- - `datasource` prop vs fetch: if `datasource` is provided (non-empty), skip the data page fetch entirely.
155
- - `myWorkList` may be undefined for `todo` type — do not attempt a fetch if it's missing.
156
- - `showTodoList === false` — render only the card header (with badge count) and hide the list body.
157
- - `isConfirm === true` — used in the Confirmation template context; may adjust layout to hide certain elements (e.g., hide status badge, show simpler view).
158
- - Empty assignments — show a `"No tasks"` or `"You're all caught up!"` empty state message.
159
- - `canPerform` check: if `false`, disable click and show cursor `not-allowed`. Do not open the assignment.
160
- - Container name fallback: `pConn.getContainerName() || PCore.getConstants().APP.APP` — always provide a container name to `openAssignment`.
161
-
162
- ## Dependencies
163
-
164
- - `PCore.getDataPageUtils().getDataAsync()` — worklist data page fetch
165
- - `PCore.getEnvironmentInfo()` — operator name for avatar initials
166
- - `PCore.getConstants()` — CASE_INFO, WORK_BASKET, TODO, APP constants
167
- - `PCore.getLocaleUtils()` — assignment label localization
168
- - `pConn.getActionsApi().openAssignment()` — opens the selected assignment
169
- - MUI: `<Card>`, `<CardContent>`, `<CardHeader>`, `<Avatar>`, `<Typography>`, `<Badge>`, `<List>`, `<ListItem>`, `<ListItemText>`, `<Button>`, `<Snackbar>`, `<IconButton>`, `useMediaQuery`, `useTheme`
170
- - MUI Icons: `<CloseIcon>`, `<ArrowForwardIosOutlinedIcon>`
171
-
172
- ## Design System Mapping
173
-
174
- **UI control type:** Assignment worklist widget with expand/collapse, click-to-open, badge count, and error toast.
175
-
176
- Listed design systems are examples only.
177
-
178
- | Design System | Card | List | Badge | Snackbar |
179
- |---|---|---|---|---|
180
- | Default (CSS only) | `<div>` card | `<ul>/<li>` | CSS counter badge | Custom toast overlay |
181
- | MUI | `<Card>` + `<CardHeader>` | `<List>/<ListItem>` | `<Badge>` | `<Snackbar>/<Alert>` |
182
- | Ant Design | `<Card>` | `<List>` | `<Badge count={N}>` | `message.error()` |
183
- | Chakra UI | `<Card>` | `<VStack>` | `<Badge>` | `useToast()` |
184
- | Shadcn/ui | `<Card>` | `<ul>/<li>` | Custom badge | `<Toaster>` + `toast.error()` |
185
-
186
- When implementing in a specific design system:
187
- - Show top 3 items by default — `showCount` state controls slice; "Show more/less" toggles between 3 and full length
188
- - `canPerform === false` must make the row non-clickable — check this before calling `openAssignment`
189
- - `type === 'worklist'` fetches from a data page; `type === 'todo'` uses the `datasource` prop — both paths must be implemented
190
- - Operator initials for the avatar must be derived from `PCore.getEnvironmentInfo().getOperatorName()`
@@ -1,247 +0,0 @@
1
- # AGENTS — React SDK Reference
2
-
3
- > Claude Code instructions for the Pega React SDK reference application.
4
- > Skill files and workflow prompts are in `.claude/skills/` and `.claude/prompts/`. Read them when asked to generate or replace components.
5
-
6
-
7
- You are assisting developers in a React reference application that demonstrates the Pega Infinity SDK. Customers clone this repo and **replace the sample UI components with their own design system** (MUI, Chakra, Radix, Shadcn, Ant Design, or any other).
8
-
9
- ---
10
-
11
- ## 1. Repository Purpose
12
-
13
- This is a **reference implementation** — not a framework. The UI components (fields, templates, widgets) are intentionally simple MUI-based implementations meant to be swapped out. The SDK wiring (bootstrap, PConnect bridge, component registry) is reusable infrastructure that should NOT be modified.
14
-
15
- ---
16
-
17
- ## 2. What Is Replaceable vs. Infrastructure
18
-
19
- ### Replaceable (customer modifies these)
20
-
21
- | Directory | Purpose |
22
- | --------------------------------------- | ----------------------------------------------------------- |
23
- | `src/components/field/` | Form field components (TextInput, Dropdown, Date, etc.) |
24
- | `src/components/template/` | Layout templates (OneColumn, TwoColumn, Details, etc.) |
25
- | `src/components/widget/` | Data widgets (ToDo, Attachment, CaseHistory, etc.) |
26
- | `src/components/designSystemExtension/` | Extended UI (AlertBanner, FieldGroup, RichTextEditor, etc.) |
27
-
28
- ### Infrastructure (do NOT modify unless you know what you're doing)
29
-
30
- | File/Directory | Purpose |
31
- | --------------------------------------- | --------------------------------------------------------- |
32
- | `src/MashupApp.tsx` | Auth + bootstrap + root rendering |
33
- | `src/components/component-map.ts` | Registry wiring (only add/remove entries) |
34
- | `src/components/infra/` | Infrastructure components (ActionButtons, Stages, NavBar) |
35
- | `src/components/helpers/event-utils.ts` | PConnect event handler utility |
36
- | `@pega/sdk-react` | SDK bridge — never modify |
37
-
38
- ---
39
-
40
- ## 3. Component Architecture
41
-
42
- ### The PConnect Bridge
43
-
44
- Every component receives `getPConnect` as a prop. This is the bridge to the Pega platform:
45
-
46
- ```typescript
47
- const pConn = getPConnect();
48
- const actions = pConn.getActionsApi(); // For field updates
49
- const propName = (pConn.getStateProps() as any).value; // Property path
50
- ```
51
-
52
- ### Event Handling Pattern
53
-
54
- All field components use this pattern for two-way binding:
55
-
56
- ```typescript
57
- import handleEvent from '../../helpers/event-utils';
58
-
59
- // On change (local state only):
60
- function handleChange(event) {
61
- setInputValue(event.target.value);
62
- }
63
-
64
- // On blur (push to platform):
65
- function handleBlur() {
66
- handleEvent(actions, 'changeNblur', propName, inputValue);
67
- }
68
- ```
69
-
70
- ### Display Mode Handling
71
-
72
- Field components must handle `displayMode` prop:
73
-
74
- - `undefined` → render editable input
75
- - `'DISPLAY_ONLY'` → render read-only value via `FieldValueList`
76
- - `'STACKED_LARGE_VAL'` → render stacked read-only via `FieldValueList` with `variant='stacked'`
77
-
78
- ### Component Registry
79
-
80
- Components are registered by name in `src/components/component-map.ts`:
81
-
82
- ```typescript
83
- import { sdkComponents } from '@pega/sdk-react';
84
-
85
- function getSampleComponentMap() {
86
- return {
87
- ...sdkComponents, // Infrastructure (View, Region, FlowContainer, etc.)
88
- TextInput, // Your field components
89
- Dropdown,
90
- // ...
91
- };
92
- }
93
- ```
94
-
95
- To add a new component: add the import + add to the map object.
96
- To replace a component: change the import to point to your new implementation.
97
-
98
- ---
99
-
100
- ## 4. Props Interfaces
101
-
102
- ### Field Components (`PConnFieldProps`)
103
-
104
- ```typescript
105
- import type { PConnFieldProps } from '@pega/sdk-react';
106
-
107
- interface PConnFieldProps {
108
- getPConnect: () => typeof PConnect;
109
- label: string;
110
- required: boolean;
111
- disabled: boolean;
112
- value?: string;
113
- validatemessage: string;
114
- status?: string; // 'error' | 'warning' | undefined
115
- onChange: any;
116
- onBlur?: any;
117
- readOnly: boolean;
118
- testId: string;
119
- helperText: string;
120
- displayMode?: string; // 'DISPLAY_ONLY' | 'STACKED_LARGE_VAL'
121
- hideLabel: boolean;
122
- placeholder?: string;
123
- }
124
- ```
125
-
126
- ### Template/Widget Components (`PConnProps`)
127
-
128
- ```typescript
129
- import type { PConnProps } from '@pega/sdk-react';
130
-
131
- interface PConnProps {
132
- getPConnect: () => typeof PConnect;
133
- }
134
- ```
135
-
136
- ---
137
-
138
- ## 5. Rules for Replacing Components
139
-
140
- 1. **Keep the same default export name** — the component-map references it.
141
- 2. **Keep `getPConnect` wiring intact** — extract props, call `handleEvent` on blur.
142
- 3. **Handle `displayMode`** — return `FieldValueList` for read-only modes.
143
- 4. **Handle validation** — show `validatemessage` when `status === 'error'`.
144
- 5. **Preserve `data-test-id`** — pass `testId` to the root interactive element.
145
- 6. **Use `getComponentFromRegistry`** to render sub-components (e.g., `FieldValueList`) — don't hardcode imports for components that might also be replaced.
146
-
147
- ---
148
-
149
- ## 6. Build & Dev Commands
150
-
151
- ```bash
152
- # From monorepo root (if developing locally with source packages):
153
- npm run build # Build all packages + samples
154
- npm run dev:react # Build + dev server
155
-
156
- # From this directory (standalone):
157
- npm run dev # Vite dev server (port 3500)
158
- npm run build # Production build
159
- ```
160
-
161
- ---
162
-
163
- ## 7. Key Imports
164
-
165
- ```typescript
166
- // From SDK (never modify these)
167
- import {
168
- PConnectComponent,
169
- PegaStoreContext,
170
- registerComponentCreator,
171
- getComponentFromRegistry,
172
- sdkComponents,
173
- } from '@pega/sdk-react';
174
- import type { PConnProps, PConnFieldProps } from '@pega/sdk-react';
175
-
176
- // Event utility (preserve this)
177
- import handleEvent from '../../helpers/event-utils';
178
- ```
179
-
180
- ---
181
-
182
- ## 8. Do NOT
183
-
184
- - Modify `MashupApp.tsx` bootstrap flow when replacing design system components.
185
- - Import from `@pega/sdk-react/src/...` — use the package entry point only.
186
- - Hardcode component references — use `getComponentFromRegistry('Name')` for components that may be overridden.
187
- - Remove the `...sdkComponents` spread from `component-map.ts`.
188
- - Use `any` without justification — prefer `unknown` and narrow.
189
- - Add `@ts-ignore` — use `@ts-expect-error` with explanation if truly needed.
190
-
191
- ---
192
-
193
- ## 9. Component Generation Workflow — Single Component
194
-
195
- When the user asks to generate, create, add, or replace **a single UI component** (e.g., "generate an AutoComplete component", "add a Dropdown using Chakra UI"),
196
- read the full contents of `.claude/prompts/add-component.md` and
197
- execute every step in order before writing any code.
198
- Do not skip steps or proceed without reading the required skill files first.
199
-
200
- > For generating **multiple field components** at once, see Section 10.
201
-
202
- ---
203
-
204
- ## 10. Batch Field Component Generation
205
-
206
- When the user asks to generate, create, or replace **multiple field components** or **all field components** with a design system (e.g., "generate field components with Ant Design", "replace all fields with Chakra UI", "generate all field components using Radix"),
207
- read the full contents of `.claude/prompts/generate-field-components.md` and
208
- execute every step in order before writing any code.
209
- Do not skip steps or proceed without reading the required skill files first.
210
-
211
- ---
212
-
213
- ## 11. Batch Template Component Generation
214
-
215
- When the user asks to generate, create, or replace **multiple template components** or **all template components** with a design system (e.g., "generate template components with Ant Design", "replace all templates with Chakra UI", "generate layout templates using Radix"),
216
- read the full contents of `.claude/prompts/generate-template-components.md` and
217
- execute every step in order before writing any code.
218
- Do not skip steps or proceed without reading the required skill files first.
219
-
220
- ---
221
-
222
- ## 12. Batch Widget Component Generation
223
-
224
- When the user asks to generate, create, or replace **multiple widget components** or **all widget components** with a design system (e.g., "generate widget components with Ant Design", "replace all widgets with Chakra UI", "generate widgets using Carbon"),
225
- read the full contents of `.claude/prompts/generate-widget-components.md` and
226
- execute every step in order before writing any code.
227
- Do not skip steps or proceed without reading the required skill files first.
228
-
229
- ---
230
-
231
- ## 13. Batch Design System Extension Component Generation
232
-
233
- When the user asks to generate, create, or replace **multiple design system extension components** or **all DSE components** with a design system (e.g., "generate DSE components with Ant Design", "replace design system extension components with Chakra UI", "generate designSystemExtension components using Carbon"),
234
- read the full contents of `.claude/prompts/generate-dse-components.md` and
235
- execute every step in order before writing any code.
236
- Do not skip steps or proceed without reading the required skill files first.
237
-
238
- ---
239
-
240
- ## 14. Generate All Components (Multi-Type)
241
-
242
- When the user asks to generate, create, or replace components across **multiple types** or **all component types** at once (e.g., "generate all components with Ant Design", "replace everything with Chakra UI", "generate field and widget components using Carbon", "regenerate all components"),
243
- read the full contents of `.claude/prompts/generate-all-components.md` and
244
- execute every step in order before writing any code.
245
- Do not skip steps or proceed without reading the required skill files first.
246
-
247
- > Use this section when the request spans more than one component type. For a single type, use Sections 10–13.