@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,140 +0,0 @@
1
- ---
2
- description: Template component skill: SelfServiceCaseView
3
- alwaysApply: false
4
- ---
5
-
6
- # Skill: SelfServiceCaseView
7
-
8
- Self-service portal case view template. Renders a case workspace optimized for self-service channels, with a compact summary sidebar, main content area, and optional utilities panel.
9
-
10
- > **Prerequisite skill:** [`template-components.md`](../template-components.md) — covers architecture, child rendering patterns, and registration conventions common to ALL template components.
11
-
12
- ---
13
-
14
- ## Component Purpose
15
-
16
- A case view variant designed for self-service portal channels. Uses a horizontal flex layout (25% summary / flex:1 main / 25% utilities) instead of the 3-column grid of `CaseView`. Filters case summary data to only include fields available in the self-service channel, and filters utilities to self-service-appropriate actions.
17
-
18
- ## Pega Metadata
19
-
20
- - **Registration key:** `SelfServiceCaseView` (in `component-map.ts`)
21
- - **Category:** Page template — self-service case workspace
22
- - **Extends:** `PConnProps`
23
-
24
- ## Props
25
-
26
- | Prop | Type | Required | Description |
27
- |------|------|----------|-------------|
28
- | `children` | `ReactNode[]` | Yes | Region children (variable count based on `isObjectType`) |
29
- | `isObjectType` | `boolean` | No | Whether the case is an object-type (affects child region count) |
30
- | `getPConnect` | `function` | Yes | PConnect getter |
31
-
32
- ## Behavioral Contract
33
-
34
- ### Region Assignment by Child Index
35
-
36
- Child indexing depends on `isObjectType`:
37
-
38
- **`isObjectType === false` (5 children):**
39
- | Index | Region |
40
- |-------|--------|
41
- | 0 | Summary |
42
- | 1 | (Header/Stages) |
43
- | 2 | Main content |
44
- | 3 | Utilities |
45
- | 4 | (Additional) |
46
-
47
- **`isObjectType === true` (3 children):**
48
- | Index | Region |
49
- |-------|--------|
50
- | 0 | Summary |
51
- | 1 | Main content |
52
- | 2 | Utilities |
53
-
54
- Show/hide individual regions based on:
55
- - `showSummary`: always show summary region.
56
- - `showMain`: always show main content region.
57
- - `showUtilities`: show utilities only if the region has content.
58
-
59
- ### `selfServiceCaseViewHeader`
60
-
61
- Renders a slim header bar above the main flex layout showing:
62
- - Case ID / case type name
63
- - Case status badge
64
-
65
- ### Case Summary Data
66
-
67
- Call `prepareCaseSummaryData(primaryFields, secondaryFields, getPConnect)` with a filter:
68
- - Only include fields where `availableInChannel.selfService === true`.
69
-
70
- ### Utilities Filter
71
-
72
- Call `filterUtilities(utilitiesChildren, getPConnect)` to remove utilities not appropriate for self-service channels.
73
-
74
- ### Render Structure
75
-
76
- ```
77
- <div className="psdk-ss-case-view">
78
- <selfServiceCaseViewHeader />
79
- <div className="psdk-ss-case-view-body" style="display:flex; flex-direction:row">
80
- <div style="flex: 0 0 25%"> {/* Summary */}
81
- {showSummary && summaryRegion}
82
- </div>
83
- <div style="flex: 1"> {/* Main content */}
84
- {showMain && mainRegion}
85
- </div>
86
- <div style="flex: 0 0 25%"> {/* Utilities */}
87
- {showUtilities && utilitiesRegion}
88
- </div>
89
- </div>
90
- </div>
91
- ```
92
-
93
- ## Visual Specifications
94
-
95
- | Column | Width | Contents |
96
- |--------|-------|----------|
97
- | Summary | 25% (fixed) | Case summary fields (self-service filtered) |
98
- | Main | flex: 1 | Main case content / assignment form |
99
- | Utilities | 25% (fixed) | Filtered utilities |
100
-
101
- **CSS-only implementation notes:**
102
- - Body layout: `display: flex; flex-direction: row; gap: 1rem`.
103
- - Summary column: `flex: 0 0 25%; min-width: 0`.
104
- - Main column: `flex: 1 1 auto; min-width: 0`.
105
- - Utilities column: `flex: 0 0 25%; min-width: 0`.
106
- - Header bar: `display: flex; align-items: center; gap: 1rem; padding: 0.5rem 0; margin-bottom: 1rem`.
107
- - Responsive: collapse to single column on mobile.
108
-
109
- ## Edge Cases & Special Logic
110
-
111
- - `isObjectType` changes the number of `children` — always derive regions by index based on this flag.
112
- - `filterUtilities` may return empty array — `showUtilities` should be `false` in that case (hide the column entirely).
113
- - Summary fields filtered by `availableInChannel.selfService` — if all fields are filtered out, the summary column may be empty.
114
- - The self-service header differs from the standard case header — it is a separate sub-component, not the full `CaseView` header.
115
-
116
- ## Dependencies
117
-
118
- - `prepareCaseSummaryData` from `./utils` — with self-service channel filter applied
119
- - `filterUtilities` from `./utils` — removes non-self-service utilities
120
- - `selfServiceCaseViewHeader` — inline sub-component or imported header
121
- - `PConnectComponent` from `@pega/sdk-react`
122
-
123
- ## Design System Mapping
124
-
125
- **UI control type:** Self-service portal case workspace — horizontal 3-panel flex layout.
126
-
127
- Listed design systems are examples only.
128
-
129
- | Design System | Layout | Header Bar |
130
- |---|---|---|
131
- | Default (CSS only) | CSS `display:flex` with percentage widths | Custom `<header>` |
132
- | MUI | `<Box display='flex' flexDirection='row'>` with `<Box flex='0 0 25%'>` | `<Box>` with `<Typography>` |
133
- | Ant Design | `<Layout>` with `<Sider>` + `<Content>` | `<PageHeader>` |
134
- | Chakra UI | `<HStack align='stretch'>` with width constraints | `<Flex>` |
135
- | Shadcn/ui | Tailwind `flex flex-row` | Custom header |
136
-
137
- When implementing in a specific design system:
138
- - `isObjectType` determines child count — do not assume fixed child order without checking this flag
139
- - Self-service channel filter on summary data is mandatory — `availableInChannel.selfService === true`
140
- - `filterUtilities` result controls utilities column visibility
@@ -1,132 +0,0 @@
1
- ---
2
- description: Template component skill: SimpleTable
3
- alwaysApply: false
4
- ---
5
-
6
- # Skill: SimpleTable
7
-
8
- Simple table template. Routes to FieldGroupTemplate, ListView (read-only), or the manual editable table based on configuration. Also covers `SimpleTableManual`, `SimpleTableSelect`, and `SimpleTableSelectReadonly` sub-variants.
9
-
10
- > **Prerequisite skill:** [`template-components.md`](../template-components.md) — covers architecture, child rendering patterns, and registration conventions common to ALL template components.
11
-
12
- ---
13
-
14
- ## Component Purpose
15
-
16
- Entry-point template for embedded table data in a form or detail view. Routes to the appropriate sub-component based on `multiRecordDisplayAs`, `fieldMetadata.dataRetrievalType`, and `readOnly`/`displayMode` flags. Sub-variants handle selection, read-only display, and full manual editing.
17
-
18
- ## Pega Metadata
19
-
20
- - **Registration keys:** `SimpleTable`, `SimpleTableManual`, `SimpleTableSelect`, `SimpleTableSelectReadonly` (all in `component-map.ts`)
21
- - **Category:** Data display / Form template — embedded table
22
- - **Extends:** `PConnProps`
23
-
24
- ## Props
25
-
26
- | Prop | Type | Required | Description |
27
- |------|------|----------|-------------|
28
- | `multiRecordDisplayAs` | `string` | No | `'fieldGroup'` delegates to FieldGroupTemplate; else table |
29
- | `fieldMetadata` | `object` | No | Field-level metadata including `dataRetrievalType` |
30
- | `referenceList` | `string` | No | Property path to the reference list |
31
- | `displayAs` | `string` | No | For SimpleTableSelectReadonly: `'readonlyMulti'`, `'combobox'`, `'checkboxgroup'` routing |
32
- | `selectionMode` | `string` | No | `'single'` or `'multi'` (for SimpleTableSelect) |
33
- | `displayMode` | `string` | No | `'DISPLAY_ONLY'` triggers read-only sub-variant |
34
- | `readOnly` | `boolean` | No | Alternative read-only flag |
35
- | `getPConnect` | `function` | Yes | PConnect getter |
36
-
37
- ## Behavioral Contract
38
-
39
- ### SimpleTable — Routing Logic
40
-
41
- ```
42
- if multiRecordDisplayAs === 'fieldGroup':
43
- → render FieldGroupTemplate
44
- else if fieldMetadata.dataRetrievalType === 'refer':
45
- → render ListView (read-only, bInForm: true)
46
- else:
47
- → render SimpleTableManual (editable table)
48
- ```
49
-
50
- ### SimpleTableManual — Full Editable Table
51
-
52
- Full MUI table with add/delete rows, inline editing, sort, filter, and column customization (~600+ lines).
53
-
54
- Key behaviors:
55
- 1. **Row data source:** `referenceList` property path via `pConn.getValue(referenceList + '.pxResults')`.
56
- 2. **Add row:** `pConn.getListActions().insert({})`.
57
- 3. **Delete row:** `pConn.getListActions().deleteEntry(index)`.
58
- 4. **Inline field editing:** Each cell renders the field's registered edit component via `buildView(pConn, rowIndex, colFieldName)`.
59
- 5. **Sort:** Client-side sort on loaded data.
60
- 6. **Column customization:** Visibility toggles per column via a settings popover.
61
- 7. **Filter dialog:** Same filter pattern as ListView.
62
-
63
- ### SimpleTableSelect — Selection Mode
64
-
65
- Wraps `ListView` with additional selection configuration:
66
- - Passes `additionalTableConfig` with `selectionMode: 'single'` or `'multi'`.
67
- - On selection: calls `pConn.getListActions().setSelectedRow(selectedData)`.
68
- - Used when `DataReference` routes to table-based selection.
69
-
70
- ### SimpleTableSelectReadonly — Read-Only with Modal
71
-
72
- 1. Renders a link/chip showing the current selection count.
73
- 2. On click: opens a `<Dialog>` containing a `<SimpleTableManual>` in read-only mode.
74
- 3. Props: same as `SimpleTableManual` but all fields locked (no add/delete/edit).
75
-
76
- ## Visual Specifications
77
-
78
- ### SimpleTableManual
79
-
80
- | Element | Description |
81
- |---------|-------------|
82
- | Toolbar | Column settings button, filter button, optional search |
83
- | Table | Full-width, alternating row colors |
84
- | Add row | `"+ Add row"` button below the table |
85
- | Delete row | Trash icon per row (rightmost column) |
86
- | Column settings | Popover with checkboxes for visibility toggles |
87
-
88
- **CSS-only implementation notes:**
89
- - Table: `width: 100%; border-collapse: collapse`.
90
- - Add row button: `margin-top: 0.5rem; text-align: left`.
91
- - Delete cell: `width: 40px; text-align: center`.
92
- - Read-only mode: hide add/delete controls; cells show plain text.
93
-
94
- ### SimpleTableSelectReadonly
95
-
96
- | Element | Description |
97
- |---------|-------------|
98
- | Trigger | Link or chip showing selection count |
99
- | Modal | Full-screen or large dialog with SimpleTableManual |
100
- | Modal close | `X` button in modal header |
101
-
102
- ## Edge Cases & Special Logic
103
-
104
- - `multiRecordDisplayAs === 'fieldGroup'` — completely bypasses table; delegates to `FieldGroupTemplate`.
105
- - `dataRetrievalType === 'refer'` — data comes from a reference list, not a full data page; use `ListView` in read-only mode.
106
- - `SimpleTableManual` with 600+ lines — break into sub-hooks if re-implementing.
107
- - Row keys must be unique — use composite keys from `compositeKeys` config if available.
108
- - Column customization state is local — not persisted across navigation.
109
-
110
- ## Dependencies
111
-
112
- - `FieldGroupTemplate` (for `multiRecordDisplayAs === 'fieldGroup'` routing)
113
- - `ListView` (for `dataRetrievalType === 'refer'` routing)
114
- - `buildView` from `../../helpers/field-group-utils` (for inline cell rendering in SimpleTableManual)
115
- - MUI: `<Table>`, `<Dialog>`, `<Popover>`, `<IconButton>`, `<Button>`, `<Checkbox>`
116
-
117
- ## Design System Mapping
118
-
119
- **UI control type:** Embedded data table with routing to field group, read-only list, or fully editable table.
120
-
121
- Listed design systems are examples only.
122
-
123
- | Sub-variant | Default (CSS only) | MUI |
124
- |---|---|---|
125
- | SimpleTableManual | `<table>` + custom controls | MUI `<Table>` |
126
- | SimpleTableSelect | Custom table + radio/checkbox | `<ListView>` wrapper |
127
- | SimpleTableSelectReadonly | Link + `<dialog>` | Chip + `<Dialog>` |
128
-
129
- When implementing in a specific design system:
130
- - Always check `multiRecordDisplayAs === 'fieldGroup'` first — this bypasses the table entirely
131
- - `SimpleTableManual` add/delete row controls must be hidden when `readOnly === true` or `displayMode === 'DISPLAY_ONLY'`
132
- - `SimpleTableSelect` uses the same `ListView` but adds selection callbacks
@@ -1,108 +0,0 @@
1
- ---
2
- description: Template component skill: SingleReferenceReadOnly
3
- alwaysApply: false
4
- ---
5
-
6
- # Skill: SingleReferenceReadOnly
7
-
8
- Single reference read-only template. Renders a read-only reference field as a semantic link for editable field types, or as a plain label otherwise.
9
-
10
- > **Prerequisite skill:** [`template-components.md`](../template-components.md) — covers architecture, child rendering patterns, and registration conventions common to ALL template components.
11
-
12
- ---
13
-
14
- ## Component Purpose
15
-
16
- Renders a single data reference field in read-only mode. For fields that were displayed as editable selection controls (autocomplete, table select, dropdown), renders a `SemanticLink` component so the reference value is clickable/navigable. For other display types, renders a plain read-only label.
17
-
18
- ## Pega Metadata
19
-
20
- - **Registration key:** `SingleReferenceReadOnly` (in `component-map.ts`)
21
- - **Category:** Display template — read-only reference
22
- - **Extends:** `PConnProps`
23
-
24
- ## Props
25
-
26
- | Prop | Type | Required | Description |
27
- |------|------|----------|-------------|
28
- | `label` | `string` | Yes | Field label |
29
- | `displayAs` | `string` | Yes | The edit-mode display type this field was configured with |
30
- | `value` | `string` | No | Current field value (display text) |
31
- | `caseClass` | `string` | No | Class identifier for the referenced case |
32
- | `text` | `string` | No | Display text for the semantic link |
33
- | `caseID` | `string` | No | Case ID for the semantic link |
34
- | `contextPage` | `string` | No | Context page identifier |
35
- | `resourceParams` | `object` | No | Parameters for the referenced resource |
36
- | `resourcePayload` | `object` | No | Payload for resource navigation |
37
- | `getPConnect` | `function` | Yes | PConnect getter |
38
-
39
- ## Behavioral Contract
40
-
41
- ### Editable Component Check
42
-
43
- ```
44
- editableComponents = ['AutoComplete', 'SimpleTableSelect', 'Dropdown']
45
- ```
46
-
47
- If `displayAs` is in `editableComponents`:
48
- 1. Build config with: `caseClass`, `text`, `caseID`, `contextPage`, `resourceParams`, `resourcePayload`.
49
- 2. Create: `createComponent({ type: 'SemanticLink', config: { ...builtConfig } })`.
50
- 3. Render the created `SemanticLink` component.
51
-
52
- Else:
53
- - Render a plain read-only display using `<FormControl variant='standard'>` + `<FormLabel>` + value text.
54
-
55
- ### Layout
56
-
57
- For both variants, wrap with:
58
- ```tsx
59
- <FormControl variant='standard' sx={{ flexDirection: 'row' }}>
60
- <FormLabel sx={{ marginRight: '2rem' }}>{label}</FormLabel>
61
- {semanLinkOrValue}
62
- </FormControl>
63
- ```
64
-
65
- ## Visual Specifications
66
-
67
- | Variant | Layout |
68
- |---------|--------|
69
- | SemanticLink | Label (left) + clickable link (right) |
70
- | Plain read-only | Label (left) + plain text (right) |
71
-
72
- **CSS-only implementation notes:**
73
- - Wrapper: `display: flex; flex-direction: row; align-items: baseline; gap: 1rem`.
74
- - Label: `font-size: 0.875rem; color: var(--secondary-text-color); min-width: 120px`.
75
- - Semantic link: `color: var(--link-color); text-decoration: underline; cursor: pointer`.
76
- - Plain value: `font-size: 0.875rem; color: var(--primary-text-color)`.
77
-
78
- ## Edge Cases & Special Logic
79
-
80
- - `displayAs` check is case-sensitive — values are `'AutoComplete'`, `'SimpleTableSelect'`, `'Dropdown'` (exact match).
81
- - `createComponent` returns a PConnect config — render via `createElement(PConnectComponent, { ...createdConfig })`.
82
- - If `text` is empty/undefined, the semantic link shows the `caseID` as fallback text.
83
- - `SemanticLink` navigation requires `caseClass` and `caseID` — if either is missing, fall back to plain read-only display.
84
-
85
- ## Dependencies
86
-
87
- - `PConnectComponent` from `@pega/sdk-react` — for rendering the `SemanticLink`
88
- - `getPConnect().createComponent()` — creates the SemanticLink component config
89
- - MUI: `<FormControl>`, `<FormLabel>`
90
-
91
- ## Design System Mapping
92
-
93
- **UI control type:** Read-only reference field — semantic link for navigable references, plain label otherwise.
94
-
95
- Listed design systems are examples only.
96
-
97
- | Design System | Semantic Link | Plain Read-Only |
98
- |---|---|---|
99
- | Default (CSS only) | `<a>` with case navigation | `<span>` |
100
- | MUI | `SemanticLink` rendered via `createComponent` | `<Typography>` |
101
- | Ant Design | `<Typography.Link>` | `<Typography.Text>` |
102
- | Chakra UI | `<Link>` | `<Text>` |
103
- | Shadcn/ui | Custom link | `<span>` |
104
-
105
- When implementing in a specific design system:
106
- - The `editableComponents` list (`'AutoComplete'`, `'SimpleTableSelect'`, `'Dropdown'`) controls semantic link vs plain display
107
- - `SemanticLink` must be rendered via `createComponent` — do not implement the link logic directly in this component
108
- - Horizontal label + value layout (row direction) is required
@@ -1,155 +0,0 @@
1
- ---
2
- description: Template component skill: WideNarrow
3
- alwaysApply: false
4
- ---
5
-
6
- # Skill: WideNarrow
7
-
8
- Asymmetric two-column layout with a wide left column (~67%) and a narrow right column (~33%). Mirror of NarrowWide. Includes four sub-variants.
9
-
10
- > **Prerequisite skill:** [`template-components.md`](../template-components.md) — covers architecture, child rendering patterns, and registration conventions common to ALL template components.
11
-
12
- ---
13
-
14
- ## Component Purpose
15
-
16
- Renders two children side by side with the left column wider than the right. Typically used when the main content occupies the left and a utility/sidebar panel sits on the right. Four sub-variants:
17
-
18
- - **`WideNarrow`** — core CSS-based layout, accepts either `a`/`b` slot props or React `children[0]`/`children[1]`
19
- - **`WideNarrowPage`** — wrapper that passes React children as `a` and `b` slot props to `WideNarrow`
20
- - **`WideNarrowForm`** — simplified wrapper using only `children`
21
- - **`WideNarrowDetails`** — details read-only variant; sets children to DISPLAY_ONLY mode and supports highlighted data
22
-
23
- > This component is the mirror of `NarrowWide`. All behavioral and structural patterns are identical except column order and CSS class names. See the `NarrowWide` skill for detailed pattern descriptions.
24
-
25
- ## Pega Metadata
26
-
27
- | Variant | Registration Key |
28
- |---------|-----------------|
29
- | WideNarrow | `WideNarrow` |
30
- | WideNarrowPage | `WideNarrowPage` |
31
- | WideNarrowForm | `WideNarrowForm` |
32
- | WideNarrowDetails | `WideNarrowDetails` |
33
-
34
- All extend `PConnProps`.
35
-
36
- ## Props
37
-
38
- ### WideNarrow
39
-
40
- | Prop | Type | Required | Description |
41
- |------|------|----------|-------------|
42
- | `children` | `ReactNode[]` | No | Two children — `[0]` → wide (left), `[1]` → narrow (right) |
43
- | `a` | `any` | No | Wide (left) column content |
44
- | `b` | `any` | No | Narrow (right) column content |
45
- | `title` | `string` | No | Optional title (not rendered) |
46
- | `cols` | `string` | No | Column template (not rendered) |
47
- | `icon` | `string` | No | Icon name (not rendered) |
48
-
49
- ### WideNarrowPage
50
-
51
- | Prop | Type | Required | Description |
52
- |------|------|----------|-------------|
53
- | `children` | `ReactNode[]` | Yes | Two children — `[0]` → wide slot, `[1]` → narrow slot |
54
- | `title` | `string` | Yes | Page title (passed to WideNarrow) |
55
- | `templateCol` | `string` | No | Column ratio (default `'1fr 1fr'`) |
56
- | `icon` | `string` | No | Icon name (strips `'pi pi-'` prefix) |
57
-
58
- ### WideNarrowForm
59
-
60
- | Prop | Type | Required | Description |
61
- |------|------|----------|-------------|
62
- | `children` | `ReactNode[]` | Yes | Two children rendered in wide/narrow slots |
63
-
64
- ### WideNarrowDetails
65
-
66
- | Prop | Type | Required | Description |
67
- |------|------|----------|-------------|
68
- | `label` | `string` | No | Section label for FieldGroup |
69
- | `showLabel` | `boolean` | No | Whether to show the label. Default `true` |
70
- | `showHighlightedData` | `boolean` | No | Whether to render highlighted data fields. Default `false` |
71
- | `getPConnect` | `function` | Yes | PConnect getter |
72
-
73
- ## Behavioral Contract
74
-
75
- ### WideNarrow
76
-
77
- 1. If `children` is provided and has exactly 2 items: render `children[0]` in `.psdk-wide-column-column` and `children[1]` in `.psdk-narrow-column-column` (both wrapped in `.psdk-wide-narrow-column`).
78
- 2. If `a` and `b` are provided: render `a` in the wide slot and `b` in the narrow slot.
79
- 3. `children` takes priority over `a`/`b` when both are present.
80
-
81
- ### WideNarrowPage
82
-
83
- 1. Extract `childArray = Children.toArray(children)`.
84
- 2. Retrieve `WideNarrow` from the component registry.
85
- 3. Render `<WideNarrow a={childArray[0]} b={childArray[1]} title={title} cols={templateCol} icon={icon?.replace('pi pi-', '')} />`.
86
-
87
- ### WideNarrowForm
88
-
89
- 1. Render using `children` path — checks `children.length === 2`, renders wide/narrow CSS divs.
90
-
91
- ### WideNarrowDetails
92
-
93
- 1. Set `getPConnect().setInheritedProp('displayMode', 'DISPLAY_ONLY')` and `setInheritedProp('readOnly', true)`.
94
- 2. Map `getPConnect().getChildren()` → `createElement(PConnectComponent, { ...configObject, key: index })`.
95
- 3. If `showHighlightedData` is true, read `getRawMetadata().config.highlightedData`, set each field's `displayMode = 'STACKED_LARGE_VAL'`, mark `pyStatusWork` as `displayAsStatus=true`, and create components via `getPConnect().createComponent(field, '', 0, {})`.
96
- 4. Wrap in `<FieldGroup name={theName}>` using `propsToUse.showLabel && propsToUse.label`.
97
- 5. Layout: highlighted data in `Grid size={{ xs: COLUMN_WIDTHS[i] }}` where **`COLUMN_WIDTHS = [8, 4]`** (wide left, narrow right — reversed vs NarrowWideDetails).
98
- 6. Children rendered in `Grid size={{ xs: 12 }}` rows.
99
-
100
- ## Visual Specifications
101
-
102
- Derived from `WideNarrow.css`:
103
-
104
- ### Container
105
-
106
- | CSS Class | Property | Value |
107
- |-----------|----------|-------|
108
- | `.psdk-wide-narrow-column` | Display | two-column row layout |
109
- | `.psdk-wide-column-column` | Width | ~67% (2 of 3 parts) — LEFT column |
110
- | `.psdk-narrow-column-column` | Width | ~33% (1 of 3 parts) — RIGHT column |
111
-
112
- **CSS-only implementation notes:**
113
- - `.psdk-wide-narrow-column`: `display: grid; grid-template-columns: 2fr 1fr; gap: 1rem`.
114
- - Wide column (left): `2fr` — takes the first grid column.
115
- - Narrow column (right): `1fr` — takes the second grid column.
116
- - On mobile: `grid-template-columns: 1fr` (stacks vertically, wide on top).
117
-
118
- ### Key Difference from NarrowWide
119
-
120
- | | NarrowWide | WideNarrow |
121
- |---|---|---|
122
- | Left column | Narrow (~33%) | Wide (~67%) |
123
- | Right column | Wide (~67%) | Narrow (~33%) |
124
- | CSS container class | `.psdk-narrow-wide-column` | `.psdk-wide-narrow-column` |
125
- | `COLUMN_WIDTHS` (Details) | `[4, 8]` | `[8, 4]` |
126
-
127
- ## Edge Cases & Special Logic
128
-
129
- - `WideNarrowDetails` defaults `children` to empty (`= []`) — safe even if no children are provided.
130
- - Highlighted data guard: check `if (!theConfigObject) theConfigObject = {}` before creating PConnectComponent — prevents crash on null config objects.
131
- - Icon cleanup in `WideNarrowPage`: strip `'pi pi-'` from icon string before passing to `WideNarrow`.
132
-
133
- ## Dependencies
134
-
135
- - `WideNarrowPage`: `getComponentFromRegistry` from `@pega/sdk-react`
136
- - `WideNarrowDetails`: `getComponentFromRegistry('FieldGroup')`, `PConnectComponent` from `@pega/sdk-react`
137
-
138
- ## Design System Mapping
139
-
140
- **UI control type:** Asymmetric two-column layout (main content + sidebar).
141
-
142
- Listed design systems are examples only.
143
-
144
- | Design System | Recommended Component |
145
- |---|---|
146
- | Default (CSS only) | CSS Grid `grid-template-columns: 2fr 1fr; gap: 1rem` |
147
- | MUI | `<Grid container><Grid size={{ xs: 12, md: 8 }}><Grid size={{ xs: 12, md: 4 }}>` |
148
- | Ant Design | `<Row gutter={16}><Col xs={24} md={16}><Col xs={24} md={8}>` |
149
- | Chakra UI | `<Grid templateColumns={{ base: '1fr', md: '2fr 1fr' }} gap={4}>` |
150
- | Shadcn/ui | Tailwind `grid grid-cols-1 md:grid-cols-[2fr_1fr] gap-4` |
151
-
152
- When implementing in a specific design system:
153
- - Wide column ≈ 67% width (left side)
154
- - Narrow column ≈ 33% width (right side)
155
- - `WideNarrowDetails` forces DISPLAY_ONLY + readOnly on all children
@@ -1,140 +0,0 @@
1
- ---
2
- description: Template component skill: WssNavBar
3
- alwaysApply: false
4
- ---
5
-
6
- # Skill: WssNavBar
7
-
8
- WSS (Web Self-Service) navigation bar template. Renders the app bar for WSS portal with responsive hamburger menu, navigation links, operator avatar, and logout.
9
-
10
- > **Prerequisite skill:** [`template-components.md`](../template-components.md) — covers architecture, child rendering patterns, and registration conventions common to ALL template components.
11
-
12
- ---
13
-
14
- ## Component Purpose
15
-
16
- Provides the top navigation bar for WSS (Web Self-Service) portals. Responsive: shows a hamburger menu on mobile, full nav links on desktop. Navigation position and alignment are configurable. Includes operator avatar with initials and a logout action.
17
-
18
- ## Pega Metadata
19
-
20
- - **Registration key:** `WssNavBar` (in `component-map.ts`)
21
- - **Category:** Navigation template — WSS portal
22
- - **Extends:** `PConnProps`
23
-
24
- ## Props
25
-
26
- | Prop | Type | Required | Description |
27
- |------|------|----------|-------------|
28
- | `links` | `array` | Yes | Array of `{ label, url, id }` navigation link objects |
29
- | `navDisplayOptions` | `object` | No | `{ alignment: 'left'|'right'|'center', position: 'inline'|'below' }` |
30
- | `portalLogoUrl` | `string` | No | URL for the portal logo image |
31
- | `operatorInfo` | `object` | No | `{ displayName: string }` — for avatar initials |
32
- | `getPConnect` | `function` | Yes | PConnect getter |
33
-
34
- ## Behavioral Contract
35
-
36
- ### Responsive Layout
37
-
38
- - **Mobile (xs breakpoint):** Hamburger menu button (`<MenuIcon>`) shown; nav links hidden.
39
- - On click: opens a `<Drawer>` or dropdown menu with nav links.
40
- - CSS: `display: { xs: 'flex', md: 'none' }` on hamburger; `display: { xs: 'none', md: 'flex' }` on nav links.
41
- - **Desktop (md+ breakpoint):** Nav links shown inline; hamburger hidden.
42
-
43
- ### Navigation Position
44
-
45
- From `navDisplayOptions.position`:
46
- - `'inline'` — nav links appear in the same row as the logo.
47
- - `'below'` — nav links appear in a second row below the logo/title row.
48
-
49
- ### Navigation Alignment
50
-
51
- From `navDisplayOptions.alignment`:
52
- - `'left'` — links flush left.
53
- - `'right'` — links pushed to the right (flex with `ml: 'auto'`).
54
- - `'center'` — links centered.
55
-
56
- ### Operator Avatar
57
-
58
- - Extract initials from `operatorInfo.displayName`:
59
- - Split by space, take first letter of first and last word.
60
- - E.g. `"John Smith"` → `"JS"`.
61
- - Render as `<Avatar>{initials}</Avatar>`.
62
- - Clicking avatar opens a menu with a Logout option.
63
-
64
- ### Logout
65
-
66
- - Import `logout` from `@pega/auth/lib/sdk-auth-manager`.
67
- - Call `logout()` when the Logout menu item is clicked.
68
-
69
- ### Render Structure
70
-
71
- ```
72
- <AppBar position='static'>
73
- <Toolbar>
74
- {/* Logo */}
75
- {portalLogoUrl && <img src={portalLogoUrl} alt='logo' />}
76
-
77
- {/* Hamburger (mobile) */}
78
- <IconButton sx={{ display: { xs: 'flex', md: 'none' } }} onClick={openMobileMenu}>
79
- <MenuIcon />
80
- </IconButton>
81
-
82
- {/* Nav links (desktop) */}
83
- <Box sx={{ display: { xs: 'none', md: 'flex' }, ...alignmentStyles }}>
84
- {links.map(link => <Button key={link.id} href={link.url}>{link.label}</Button>)}
85
- </Box>
86
-
87
- {/* Operator avatar */}
88
- <Avatar onClick={openUserMenu}>{initials}</Avatar>
89
- </Toolbar>
90
- </AppBar>
91
- ```
92
-
93
- ## Visual Specifications
94
-
95
- | Element | Mobile | Desktop |
96
- |---------|--------|---------|
97
- | Logo | Shown | Shown |
98
- | Nav links | Hidden (hamburger menu) | Shown inline or below |
99
- | Avatar | Shown | Shown |
100
- | Hamburger | Shown | Hidden |
101
-
102
- **CSS-only implementation notes:**
103
- - App bar: `background: var(--app-primary-color); color: white`.
104
- - Toolbar: `display: flex; align-items: center; gap: 1rem; padding: 0 1rem`.
105
- - Hamburger: `display: none`. At mobile breakpoint: `display: flex`.
106
- - Nav links: `display: flex; gap: 0.5rem`. At mobile breakpoint: `display: none`.
107
- - Avatar: `width: 36px; height: 36px; border-radius: 50%; background: var(--avatar-bg); cursor: pointer`.
108
- - Logout menu: `position: absolute; top: 100%; right: 0; background: white; box-shadow: 0 2px 8px rgba(0,0,0,0.2)`.
109
-
110
- ## Edge Cases & Special Logic
111
-
112
- - `portalLogoUrl` is async — show fallback text until resolved.
113
- - `operatorInfo.displayName` may be undefined — guard and show a default avatar (single letter or icon).
114
- - `navDisplayOptions` may be absent — default to `{ alignment: 'left', position: 'inline' }`.
115
- - Mobile drawer state must be managed separately from the user menu state.
116
-
117
- ## Dependencies
118
-
119
- - `logout` from `@pega/auth/lib/sdk-auth-manager` — logout handler
120
- - MUI: `<AppBar>`, `<Toolbar>`, `<IconButton>`, `<Avatar>`, `<Menu>`, `<MenuItem>`, `<Button>`, `<Box>`
121
- - MUI Icons: `<MenuIcon>`
122
-
123
- ## Design System Mapping
124
-
125
- **UI control type:** Responsive application navigation bar with avatar and logout.
126
-
127
- Listed design systems are examples only.
128
-
129
- | Design System | App Bar | Avatar | Mobile Menu |
130
- |---|---|---|---|
131
- | Default (CSS only) | `<header>` + CSS | `<div class='avatar'>` | CSS hamburger + dropdown |
132
- | MUI | `<AppBar>` + `<Toolbar>` | `<Avatar>` | `<Drawer>` or `<Menu>` |
133
- | Ant Design | `<Layout.Header>` | `<Avatar>` | `<Drawer>` |
134
- | Chakra UI | `<Box as='header'>` | `<Avatar>` | `<Drawer>` |
135
- | Shadcn/ui | Custom `<header>` | Custom initials avatar | `<Sheet>` (drawer) |
136
-
137
- When implementing in a specific design system:
138
- - `logout` from `@pega/auth/lib/sdk-auth-manager` is mandatory — always call the SDK logout, not a custom one
139
- - Responsive breakpoints for hamburger/nav visibility must be implemented
140
- - `navDisplayOptions.alignment` and `.position` must be respected