@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,8 +1,3 @@
1
- ---
2
- description: DSE component skill: DetailsFields
3
- alwaysApply: false
4
- ---
5
-
6
1
  # Skill: DetailsFields
7
2
 
8
3
  Read-only field display component that receives an array of PConnect-aware field objects and renders each as a label/value pair. Delegates value rendering to `PConnectComponent` in DISPLAY_ONLY mode.
@@ -16,6 +11,7 @@ Read-only field display component that receives an array of PConnect-aware field
16
11
  Renders a vertical list of read-only field name/value pairs for a details/summary panel. Each field is a PConnect-aware object. The component extracts type, label, and view config from each field's PConnect, forces the view into `readOnly + DISPLAY_ONLY` mode, and delegates rendering to `PConnectComponent`.
17
12
 
18
13
  Supports three item layouts:
14
+
19
15
  - **Reference type:** Renders the value directly (no label/value grid wrapper).
20
16
  - **React element value:** Renders value in a single full-width cell (no label).
21
17
  - **Label + value pair:** Renders label in a 6-col cell and value in a 6-col cell.
@@ -28,15 +24,65 @@ Supports three item layouts:
28
24
 
29
25
  ## Props
30
26
 
31
- | Prop | Type | Required | Description |
32
- |------|------|----------|-------------|
33
- | `fields` | `any[]` | Yes | Array of PConnect-aware field objects. Each must have `.getPConnect()` method |
27
+ | Prop | Type | Required | Description |
28
+ | -------- | ------- | -------- | ----------------------------------------------------------------------------- |
29
+ | `fields` | `any[]` | Yes | Array of PConnect-aware field objects. Each must have `.getPConnect()` method |
30
+
31
+ ## Component Skeleton
32
+
33
+ ```typescript
34
+ import { createElement, isValidElement } from 'react';
35
+ import { PConnectComponent } from '@pega/sdk-react';
36
+ import { format } from '../../helpers/formatters';
37
+
38
+ interface DetailsFieldsProps { fields: any[]; }
39
+
40
+ export default function DetailsFields(props: DetailsFieldsProps) {
41
+ const { fields = [] } = props;
42
+ const fieldComponents: any[] = [];
43
+
44
+ // 1. Build field components array
45
+ fields?.forEach((field, index) => {
46
+ const thePConn = field.getPConnect();
47
+ const theCompType = thePConn.getComponentName().toLowerCase();
48
+ const { label } = thePConn.getConfigProps();
49
+ const configObj = thePConn.getReferencedView();
50
+ configObj.config.readOnly = true;
51
+ configObj.config.displayMode = 'DISPLAY_ONLY';
52
+ if (theCompType === 'reference') configObj.config.label = thePConn.getInheritedProps()?.label;
53
+ fieldComponents.push({
54
+ type: theCompType, label,
55
+ value: createElement(PConnectComponent, thePConn.getReferencedViewPConnect()),
56
+ });
57
+ });
58
+
59
+ // 2. Render grid items per field
60
+ return (
61
+ <>
62
+ {fieldComponents.map((field, index) => {
63
+ if (field.type === 'reference') return field.value;
64
+ if (isValidElement(field.value)) {
65
+ return <GridRow key={index}><GridItem xs={12}>{field.value}</GridItem></GridRow>;
66
+ }
67
+ const formattedValue = field.type === 'date' ? format(field.value, 'date') : field.value;
68
+ return (
69
+ <GridRow key={index} style={{ padding: '4px 0' }}>
70
+ <GridItem xs={6}><Label>{field.label}</Label></GridItem>
71
+ <GridItem xs={6}><Value>{formattedValue || '---'}</Value></GridItem>
72
+ </GridRow>
73
+ );
74
+ })}
75
+ </>
76
+ );
77
+ }
78
+ ```
34
79
 
35
80
  ## Behavioral Contract
36
81
 
37
82
  ### 1. Field Iteration and PConnect Setup
38
83
 
39
84
  For each field in `fields`:
85
+
40
86
  1. Call `field.getPConnect()` to get `thePConn`.
41
87
  2. Get `theCompType = thePConn.getComponentName().toLowerCase()`.
42
88
  3. Get `label = thePConn.getConfigProps().label`.
@@ -50,11 +96,11 @@ For each field in `fields`:
50
96
 
51
97
  Choose the layout based on the field:
52
98
 
53
- | Condition | Layout |
54
- |-----------|--------|
55
- | `type === 'reference'` | Render `field.value` directly with no wrapper |
56
- | `isValidElement(field.value)` | Single 12-col cell containing `field.value` (no label) |
57
- | Default (string/primitive value) | 6-col label cell + 6-col value cell |
99
+ | Condition | Layout |
100
+ | -------------------------------- | ------------------------------------------------------ |
101
+ | `type === 'reference'` | Render `field.value` directly with no wrapper |
102
+ | `isValidElement(field.value)` | Single 12-col cell containing `field.value` (no label) |
103
+ | Default (string/primitive value) | 6-col label cell + 6-col value cell |
58
104
 
59
105
  ### 3. Label/Value Grid Row
60
106
 
@@ -78,28 +124,29 @@ Derived from `DetailsFields.tsx` makeStyles:
78
124
 
79
125
  ### Label
80
126
 
81
- | Property | Value |
82
- |----------|-------|
83
- | Display | block |
84
- | Font weight | 400 |
85
- | Color | `theme.palette.text.secondary` |
86
- | Typography | `body2` (≈ 0.875rem / 14px) |
127
+ | Property | Value |
128
+ | ----------- | ------------------------------ |
129
+ | Display | block |
130
+ | Font weight | 400 |
131
+ | Color | `theme.palette.text.secondary` |
132
+ | Typography | `body2` (≈ 0.875rem / 14px) |
87
133
 
88
134
  ### Value
89
135
 
90
- | Property | Value |
91
- |----------|-------|
92
- | Font weight | 400 |
93
- | Color | `theme.palette.text.primary` |
94
- | Typography | `body2` (≈ 0.875rem / 14px) |
136
+ | Property | Value |
137
+ | ----------- | ---------------------------- |
138
+ | Font weight | 400 |
139
+ | Color | `theme.palette.text.primary` |
140
+ | Typography | `body2` (≈ 0.875rem / 14px) |
95
141
 
96
142
  ### Row Padding
97
143
 
98
- | Property | Value |
99
- |----------|-------|
144
+ | Property | Value |
145
+ | --------- | ------------------ |
100
146
  | Row style | `padding: 4px 0px` |
101
147
 
102
148
  **CSS-only implementation notes:**
149
+
103
150
  - Each row: `display: grid; grid-template-columns: 1fr 1fr; padding: 4px 0; gap: 8px`.
104
151
  - Label: `font-size: 0.875rem; font-weight: 400; color: var(--text-secondary); display: block`.
105
152
  - Value: `font-size: 0.875rem; font-weight: 400; color: var(--text-primary)`.
@@ -132,15 +179,16 @@ Derived from `DetailsFields.tsx` makeStyles:
132
179
 
133
180
  Listed design systems are examples only.
134
181
 
135
- | Design System | Recommended Component |
136
- |---|---|
137
- | Default (CSS only) | CSS grid 2-column rows per field pair |
138
- | MUI | `<Grid container spacing={1}>` per row with `<Typography>` label and value |
139
- | Ant Design | `<Descriptions layout='horizontal' column={1}>` with PConnect-rendered values |
140
- | Chakra UI | `<Grid templateColumns='1fr 1fr'>` rows with `<Text>` label/value |
141
- | Shadcn/ui | `<div class='grid grid-cols-2'>` rows |
182
+ | Design System | Recommended Component |
183
+ | ------------------ | ----------------------------------------------------------------------------- |
184
+ | Default (CSS only) | CSS grid 2-column rows per field pair |
185
+ | MUI | `<Grid container spacing={1}>` per row with `<Typography>` label and value |
186
+ | Ant Design | `<Descriptions layout='horizontal' column={1}>` with PConnect-rendered values |
187
+ | Chakra UI | `<Grid templateColumns='1fr 1fr'>` rows with `<Text>` label/value |
188
+ | Shadcn/ui | `<div class='grid grid-cols-2'>` rows |
142
189
 
143
190
  When implementing in a specific design system, map the following:
191
+
144
192
  - Label → secondary muted text, `body2` size
145
193
  - Value → primary text, `body2` size
146
194
  - Row padding → `4px 0` vertical spacing between pairs
@@ -1,8 +1,3 @@
1
- ---
2
- description: DSE component skill: FieldGroup
3
- alwaysApply: false
4
- ---
5
-
6
1
  # Skill: FieldGroup
7
2
 
8
3
  Collapsible or static container that groups related fields under an optional section header and instructions text.
@@ -14,6 +9,7 @@ Collapsible or static container that groups related fields under an optional sec
14
9
  ## Component Purpose
15
10
 
16
11
  Renders a labeled section that wraps one or more field components. Supports optional:
12
+
17
13
  - **Section name** — rendered as a bold header above the fields.
18
14
  - **Collapsible behavior** — the name header becomes a toggle that shows/hides the fields.
19
15
  - **Instructions text** — rendered as HTML below the header and above the fields.
@@ -28,12 +24,56 @@ Children are rendered inside a full-width inner container.
28
24
 
29
25
  ## Props
30
26
 
31
- | Prop | Type | Required | Description |
32
- |------|------|----------|-------------|
33
- | `children` | `ReactNode` | No | Field components to render inside the group |
34
- | `name` | `string` | No | Section heading displayed above the fields |
35
- | `collapsible` | `boolean` | No | If `true`, the header acts as a collapse/expand toggle. Default `false` |
36
- | `instructions` | `string` | No | HTML string of instruction text shown between header and fields |
27
+ | Prop | Type | Required | Description |
28
+ | -------------- | ----------- | -------- | ----------------------------------------------------------------------- |
29
+ | `children` | `ReactNode` | No | Field components to render inside the group |
30
+ | `name` | `string` | No | Section heading displayed above the fields |
31
+ | `collapsible` | `boolean` | No | If `true`, the header acts as a collapse/expand toggle. Default `false` |
32
+ | `instructions` | `string` | No | HTML string of instruction text shown between header and fields |
33
+
34
+ ## Component Skeleton
35
+
36
+ ```typescript
37
+ import { type PropsWithChildren, useState } from 'react';
38
+
39
+ interface FieldGroupProps {
40
+ name?: string;
41
+ collapsible?: boolean;
42
+ instructions?: string;
43
+ }
44
+
45
+ export default function FieldGroup(props: PropsWithChildren<FieldGroupProps>) {
46
+ const { children, name, collapsible = false, instructions } = props;
47
+ const [collapsed, setCollapsed] = useState(false);
48
+
49
+ return (
50
+ <OuterContainer spacing={4}>
51
+ <InnerFullWidth>
52
+ {/* Header */}
53
+ {name && (
54
+ <div className="field-margin">
55
+ {collapsible ? (
56
+ <span id="field-group-header" className="header-clickable"
57
+ style={{ cursor: 'pointer' }} onClick={() => setCollapsed(c => !c)}>
58
+ {collapsed ? <ArrowRightIcon /> : <ArrowDownIcon />}
59
+ <b>{name}</b>
60
+ </span>
61
+ ) : (
62
+ <b>{name}</b>
63
+ )}
64
+ </div>
65
+ )}
66
+ {/* Instructions (skip if === 'none') */}
67
+ {instructions && instructions !== 'none' && (
68
+ <div className="instruction-text" dangerouslySetInnerHTML={{ __html: instructions }} />
69
+ )}
70
+ {/* Children (hidden when collapsed) */}
71
+ {!collapsed && <div style={{ width: '100%' }}>{children}</div>}
72
+ </InnerFullWidth>
73
+ </OuterContainer>
74
+ );
75
+ }
76
+ ```
37
77
 
38
78
  ## Behavioral Contract
39
79
 
@@ -57,43 +97,44 @@ Derived from `FieldGroup.tsx` makeStyles:
57
97
 
58
98
  ### Outer Container
59
99
 
60
- | Property | Value |
61
- |----------|-------|
62
- | Spacing | 4 units (≈ 32px in MUI default) |
100
+ | Property | Value |
101
+ | -------- | ------------------------------- |
102
+ | Spacing | 4 units (≈ 32px in MUI default) |
63
103
 
64
104
  ### Component Root Margins
65
105
 
66
- | Property | Value |
67
- |----------|-------|
68
- | Margin right | `theme.spacing(1)` (≈ 8px) |
69
- | Margin left | `theme.spacing(1)` |
70
- | Margin top | `theme.spacing(1)` |
71
- | Margin bottom | `theme.spacing(1)` |
106
+ | Property | Value |
107
+ | ------------- | -------------------------- |
108
+ | Margin right | `theme.spacing(1)` (≈ 8px) |
109
+ | Margin left | `theme.spacing(1)` |
110
+ | Margin top | `theme.spacing(1)` |
111
+ | Margin bottom | `theme.spacing(1)` |
72
112
 
73
113
  ### Field Margin (name row)
74
114
 
75
- | Property | Value |
76
- |----------|-------|
77
- | Padding top | `theme.spacing(1)` |
115
+ | Property | Value |
116
+ | -------------- | ------------------ |
117
+ | Padding top | `theme.spacing(1)` |
78
118
  | Padding bottom | `theme.spacing(1)` |
79
- | Margin top | `theme.spacing(1)` |
119
+ | Margin top | `theme.spacing(1)` |
80
120
 
81
121
  ### Header Row (collapsible)
82
122
 
83
- | Property | Value |
84
- |----------|-------|
85
- | Display | flex |
86
- | Align items | center |
87
- | Gap | 5px |
88
- | Cursor | `pointer` (collapsible) or `auto` (non-collapsible) |
123
+ | Property | Value |
124
+ | ----------- | --------------------------------------------------- |
125
+ | Display | flex |
126
+ | Align items | center |
127
+ | Gap | 5px |
128
+ | Cursor | `pointer` (collapsible) or `auto` (non-collapsible) |
89
129
 
90
130
  ### Instructions
91
131
 
92
- | Property | Value |
93
- |----------|-------|
94
- | Padding | `5px 0` |
132
+ | Property | Value |
133
+ | -------- | ------- |
134
+ | Padding | `5px 0` |
95
135
 
96
136
  **CSS-only implementation notes:**
137
+
97
138
  - Outer wrapper: `margin: 8px`.
98
139
  - Name row: `padding: 8px 0; margin-top: 8px`.
99
140
  - Collapsible header: `display: flex; align-items: center; gap: 5px; cursor: pointer; user-select: none`.
@@ -121,15 +162,16 @@ Derived from `FieldGroup.tsx` makeStyles:
121
162
 
122
163
  Listed design systems are examples only.
123
164
 
124
- | Design System | Recommended Component |
125
- |---|---|
126
- | Default (CSS only) | `<div>` with toggled `display: none` on children, `<b>` header |
127
- | MUI | Grid container with `KeyboardArrowRight/Down` icons for collapse toggle |
128
- | Ant Design | `<Collapse>` or `<Card>` with collapsible panels |
129
- | Chakra UI | `<Accordion>` or manual `<Box>` with toggle state |
130
- | Shadcn/ui | `<Collapsible>` + `<CollapsibleTrigger>` + `<CollapsibleContent>` |
165
+ | Design System | Recommended Component |
166
+ | ------------------ | ----------------------------------------------------------------------- |
167
+ | Default (CSS only) | `<div>` with toggled `display: none` on children, `<b>` header |
168
+ | MUI | Grid container with `KeyboardArrowRight/Down` icons for collapse toggle |
169
+ | Ant Design | `<Collapse>` or `<Card>` with collapsible panels |
170
+ | Chakra UI | `<Accordion>` or manual `<Box>` with toggle state |
171
+ | Shadcn/ui | `<Collapsible>` + `<CollapsibleTrigger>` + `<CollapsibleContent>` |
131
172
 
132
173
  When implementing in a specific design system, map the following:
174
+
133
175
  - `collapsed` toggle → design system's collapse/expand state or controlled component
134
176
  - Arrow direction → visual indicator of expand/collapse state (chevron or arrow icon)
135
177
  - `instructions` HTML → design system's `dangerouslySetInnerHTML` or rich content slot
@@ -1,8 +1,3 @@
1
- ---
2
- description: DSE component skill: FieldGroupList
3
- alwaysApply: false
4
- ---
5
-
6
1
  # Skill: FieldGroupList
7
2
 
8
3
  Repeating list of named field groups, each with its own children. Supports per-item delete and a global "+Add" link at the bottom.
@@ -23,11 +18,54 @@ Renders a vertical list of field group items. Each item has a bold name header,
23
18
 
24
19
  ## Props
25
20
 
26
- | Prop | Type | Required | Description |
27
- |------|------|----------|-------------|
28
- | `items` | `Array<{ name: string; id: string; children: ReactNode }>` | Yes | List of field group items to render |
29
- | `onDelete` | `(id: string) => void` | No | Called with the item's `id` when the delete button is clicked. If not provided, no delete button is shown |
30
- | `onAdd` | `() => void` | No | Called when the "+Add" link is clicked. If not provided, no add link or dividers are shown |
21
+ | Prop | Type | Required | Description |
22
+ | ---------- | ---------------------------------------------------------- | -------- | --------------------------------------------------------------------------------------------------------- |
23
+ | `items` | `Array<{ name: string; id: string; children: ReactNode }>` | Yes | List of field group items to render |
24
+ | `onDelete` | `(id: string) => void` | No | Called with the item's `id` when the delete button is clicked. If not provided, no delete button is shown |
25
+ | `onAdd` | `() => void` | No | Called when the "+Add" link is clicked. If not provided, no add link or dividers are shown |
26
+
27
+ ## Component Skeleton
28
+
29
+ ```typescript
30
+ import { Utils } from '../../helpers/utils';
31
+
32
+ interface FieldGroupListProps {
33
+ items: Array<{ name: string; id: string; children: any }>;
34
+ onDelete?: (id: string) => void;
35
+ onAdd?: () => void;
36
+ }
37
+
38
+ export default function FieldGroupList(props: FieldGroupListProps) {
39
+ const trashIcon = Utils.getImageSrc('trash', Utils.getSDKStaticConentUrl());
40
+
41
+ return (
42
+ <OuterContainer spacing={4}>
43
+ <InnerFullWidth>
44
+ <InnerGrid spacing={1}>
45
+ {props.items.map(item => (
46
+ <FullWidthItem key={item.name}>
47
+ <b>{item.name}</b>
48
+ {props.onDelete && (
49
+ <button type="button" style={{ float: 'right' }} className="psdk-utility-button"
50
+ id={`delete-row-${item.id}`} aria-label="Delete Row"
51
+ onClick={() => props.onDelete(item.id)}>
52
+ <img className="psdk-utility-card-action-svg-icon" src={trashIcon} />
53
+ </button>
54
+ )}
55
+ {item.children}
56
+ <br />
57
+ {props.onAdd && <><Divider /><br /></>}
58
+ </FullWidthItem>
59
+ ))}
60
+ {props.onAdd && (
61
+ <LinkButton onClick={props.onAdd} style={{ cursor: 'pointer' }}>+Add</LinkButton>
62
+ )}
63
+ </InnerGrid>
64
+ </InnerFullWidth>
65
+ </OuterContainer>
66
+ );
67
+ }
68
+ ```
31
69
 
32
70
  ## Behavioral Contract
33
71
 
@@ -54,27 +92,28 @@ Derived from `FieldGroupList.tsx`:
54
92
 
55
93
  ### Outer Layout
56
94
 
57
- | Property | Value |
58
- |----------|-------|
95
+ | Property | Value |
96
+ | ---------------------- | ---------- |
59
97
  | Grid container spacing | 4 (≈ 32px) |
60
98
 
61
99
  ### Delete Button
62
100
 
63
- | Property | Value |
64
- |----------|-------|
65
- | Float | right |
66
- | Style class | `psdk-utility-button` |
101
+ | Property | Value |
102
+ | ----------- | ----------------------------------------------------------- |
103
+ | Float | right |
104
+ | Style class | `psdk-utility-button` |
67
105
  | Icon source | `Utils.getImageSrc('trash', Utils.getSDKStaticConentUrl())` |
68
106
 
69
107
  ### "+Add" Link
70
108
 
71
- | Property | Value |
72
- |----------|-------|
73
- | Cursor | pointer |
74
- | Underline | hover |
75
- | Text | `'+Add'` |
109
+ | Property | Value |
110
+ | --------- | -------- |
111
+ | Cursor | pointer |
112
+ | Underline | hover |
113
+ | Text | `'+Add'` |
76
114
 
77
115
  **CSS-only implementation notes:**
116
+
78
117
  - Outer wrapper: `display: flex; flex-direction: column; gap: 32px`.
79
118
  - Item wrapper: `display: flex; flex-direction: column; gap: 8px; width: 100%`.
80
119
  - Item header row: `display: flex; justify-content: space-between; align-items: center`.
@@ -101,15 +140,16 @@ Derived from `FieldGroupList.tsx`:
101
140
 
102
141
  Listed design systems are examples only.
103
142
 
104
- | Design System | Recommended Component |
105
- |---|---|
106
- | Default (CSS only) | Flex column layout with `<hr>` divider and `<button>` delete |
107
- | MUI | `<Grid container>` items with `<Divider>` and `<Link>` for "+Add" |
108
- | Ant Design | `<List>` items with `<Divider>` and `<Button type='link'>` for "+Add" |
109
- | Chakra UI | `<VStack>` with `<Divider>` and `<Button variant='link'>` |
110
- | Shadcn/ui | `<div>` flex column with `<Separator>` and a link button |
143
+ | Design System | Recommended Component |
144
+ | ------------------ | --------------------------------------------------------------------- |
145
+ | Default (CSS only) | Flex column layout with `<hr>` divider and `<button>` delete |
146
+ | MUI | `<Grid container>` items with `<Divider>` and `<Link>` for "+Add" |
147
+ | Ant Design | `<List>` items with `<Divider>` and `<Button type='link'>` for "+Add" |
148
+ | Chakra UI | `<VStack>` with `<Divider>` and `<Button variant='link'>` |
149
+ | Shadcn/ui | `<div>` flex column with `<Separator>` and a link button |
111
150
 
112
151
  When implementing in a specific design system, map the following:
152
+
113
153
  - Delete button → icon button or `danger` variant button placed at the item top-right
114
154
  - Divider between items → `<Divider>` / `<hr>` (only when `onAdd` is present)
115
155
  - "+Add" link → a text link / `Button variant='link'` that calls `onAdd`
@@ -1,8 +1,3 @@
1
- ---
2
- description: DSE component skill: FieldValueList
3
- alwaysApply: false
4
- ---
5
-
6
1
  # Skill: FieldValueList
7
2
 
8
3
  Single field-value pair display component. Renders a label and value in either an inline (side-by-side) or stacked layout. Also used as a display mode renderer by field components (e.g., `TextInput`, `Dropdown`, etc.).
@@ -14,6 +9,7 @@ Single field-value pair display component. Renders a label and value in either a
14
9
  ## Component Purpose
15
10
 
16
11
  Renders a single name/value pair in a compact read-only layout. Supports two layout variants:
12
+
17
13
  - **Inline:** Label and value are side by side (label 4/12 cols, value 8/12 cols).
18
14
  - **Stacked:** Label is on top, value is larger below (both 12/12 cols).
19
15
 
@@ -27,12 +23,58 @@ When no name is provided, only the value is rendered at full width. Used directl
27
23
 
28
24
  ## Props
29
25
 
30
- | Prop | Type | Required | Description |
31
- |------|------|----------|-------------|
32
- | `name` | `string` | No | Field label. If omitted, only the value is rendered |
33
- | `value` | `any` | Yes | Field value to display |
34
- | `variant` | `string` | No | Layout: `'inline'` (default) or `'stacked'` |
35
- | `isHtml` | `boolean` | No | If `true`, render value as raw HTML (default `false`) |
26
+ | Prop | Type | Required | Description |
27
+ | --------- | --------- | -------- | ----------------------------------------------------- |
28
+ | `name` | `string` | No | Field label. If omitted, only the value is rendered |
29
+ | `value` | `any` | Yes | Field value to display |
30
+ | `variant` | `string` | No | Layout: `'inline'` (default) or `'stacked'` |
31
+ | `isHtml` | `boolean` | No | If `true`, render value as raw HTML (default `false`) |
32
+
33
+ ## Component Skeleton
34
+
35
+ ```typescript
36
+ interface FieldValueListProps {
37
+ name?: string;
38
+ value: any;
39
+ variant?: string;
40
+ isHtml?: boolean;
41
+ }
42
+
43
+ export default function FieldValueList({ name, value, variant, isHtml = false }: FieldValueListProps) {
44
+ // 1. Fallback for empty value
45
+ const formattedValue = (value === undefined || value === '') ? '---' : value;
46
+
47
+ // 2. No-name case: render value only at full width
48
+ if (!name) {
49
+ const typography = variant === 'stacked' ? 'h6' : 'body2';
50
+ return isHtml
51
+ ? <ValueContainer typography={typography} dangerouslySetInnerHTML={{ __html: formattedValue }} />
52
+ : <ValueContainer typography={typography}>{formattedValue}</ValueContainer>;
53
+ }
54
+
55
+ // 3. Stacked variant: label on top, larger value below
56
+ if (variant === 'stacked') {
57
+ return (
58
+ <Row direction="column">
59
+ <Label style={{ paddingBottom: 0 }}>{name}</Label>
60
+ {isHtml
61
+ ? <Value typography="h6" style={{ paddingTop: 0 }} dangerouslySetInnerHTML={{ __html: formattedValue }} />
62
+ : <Value typography="h6" style={{ paddingTop: 0 }}>{formattedValue}</Value>}
63
+ </Row>
64
+ );
65
+ }
66
+
67
+ // 4. Inline variant (default): label 4 cols, value 8 cols
68
+ return (
69
+ <Row>
70
+ <Label xs={4}>{name}</Label>
71
+ {isHtml
72
+ ? <Value xs={8} dangerouslySetInnerHTML={{ __html: formattedValue }} />
73
+ : <Value xs={8}>{formattedValue}</Value>}
74
+ </Row>
75
+ );
76
+ }
77
+ ```
36
78
 
37
79
  ## Behavioral Contract
38
80
 
@@ -57,28 +99,29 @@ Derived from `FieldValueList.tsx` makeStyles:
57
99
 
58
100
  ### Label
59
101
 
60
- | Property | Value |
61
- |----------|-------|
62
- | Font weight | 400 |
63
- | Color | `theme.palette.text.secondary` (muted/secondary text) |
64
- | Typography | `body2` (≈ 0.875rem / 14px) |
102
+ | Property | Value |
103
+ | ----------- | ----------------------------------------------------- |
104
+ | Font weight | 400 |
105
+ | Color | `theme.palette.text.secondary` (muted/secondary text) |
106
+ | Typography | `body2` (≈ 0.875rem / 14px) |
65
107
 
66
108
  ### Value
67
109
 
68
- | Property | Value |
69
- |----------|-------|
70
- | Color | `theme.palette.text.primary` (default text) |
71
- | Typography (inline) | `body2` (≈ 0.875rem / 14px) |
72
- | Typography (stacked) | `h6` (≈ 1.25rem / 20px, weight 500) |
110
+ | Property | Value |
111
+ | -------------------- | ------------------------------------------- |
112
+ | Color | `theme.palette.text.primary` (default text) |
113
+ | Typography (inline) | `body2` (≈ 0.875rem / 14px) |
114
+ | Typography (stacked) | `h6` (≈ 1.25rem / 20px, weight 500) |
73
115
 
74
116
  ### Padding Adjustments (stacked only)
75
117
 
76
- | Property | Value |
77
- |----------|-------|
118
+ | Property | Value |
119
+ | -------------------- | -------------- |
78
120
  | Label bottom padding | `0 !important` |
79
- | Value top padding | `0 !important` |
121
+ | Value top padding | `0 !important` |
80
122
 
81
123
  **CSS-only implementation notes:**
124
+
82
125
  - Root row: `display: flex; justify-content: space-between; align-items: baseline; gap: 1rem`.
83
126
  - **Inline label:** `flex: 0 0 33%; font-weight: 400; font-size: 0.875rem; color: var(--text-secondary)`.
84
127
  - **Inline value:** `flex: 1; font-size: 0.875rem; color: var(--text-primary)`.
@@ -104,15 +147,16 @@ Derived from `FieldValueList.tsx` makeStyles:
104
147
 
105
148
  Listed design systems are examples only.
106
149
 
107
- | Design System | Recommended Component |
108
- |---|---|
109
- | Default (CSS only) | `<div class='field-value-inline'>` or `<div class='field-value-stacked'>` with CSS |
110
- | MUI | `<Grid container>` with `<Typography>` for label and value |
111
- | Ant Design | `<Descriptions>` item, or `<Typography.Text type='secondary'>` + `<Typography.Text>` |
112
- | Chakra UI | `<Stack direction='row'>` (inline) or `<Stack spacing={0}>` (stacked) |
113
- | Shadcn/ui | Custom label/value pair with Tailwind flex utilities |
150
+ | Design System | Recommended Component |
151
+ | ------------------ | ------------------------------------------------------------------------------------ |
152
+ | Default (CSS only) | `<div class='field-value-inline'>` or `<div class='field-value-stacked'>` with CSS |
153
+ | MUI | `<Grid container>` with `<Typography>` for label and value |
154
+ | Ant Design | `<Descriptions>` item, or `<Typography.Text type='secondary'>` + `<Typography.Text>` |
155
+ | Chakra UI | `<Stack direction='row'>` (inline) or `<Stack spacing={0}>` (stacked) |
156
+ | Shadcn/ui | Custom label/value pair with Tailwind flex utilities |
114
157
 
115
158
  When implementing in a specific design system, map the following:
159
+
116
160
  - Label → secondary/muted text style
117
161
  - Value inline → same size as label
118
162
  - Value stacked → larger typography (h6 equivalent)