@pega/sdk 0.0.3 → 0.0.4

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 (346) hide show
  1. package/LICENSE +183 -183
  2. package/README.md +6 -6
  3. package/SECURITY.md +2 -1
  4. package/dist/index.js +12 -55
  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/package.json +6 -6
  10. package/templates/react-native-sdk-reference/tsconfig.json +2 -1
  11. package/templates/react-sdk-reference/.claude/instructions/component-map.md +1 -1
  12. package/templates/react-sdk-reference/.claude/instructions/field-component.md +4 -0
  13. package/templates/react-sdk-reference/.claude/instructions/template-component.md +2 -1
  14. package/templates/react-sdk-reference/.claude/instructions/widget-component.md +1 -0
  15. package/templates/react-sdk-reference/.claude/prompts/add-component.md +18 -10
  16. package/templates/react-sdk-reference/.claude/prompts/component-manifest.json +165 -83
  17. package/templates/react-sdk-reference/.claude/prompts/generate-all-components.md +26 -17
  18. package/templates/react-sdk-reference/.claude/prompts/generate-dse-components.md +27 -13
  19. package/templates/react-sdk-reference/.claude/prompts/generate-field-components.md +42 -28
  20. package/templates/react-sdk-reference/.claude/prompts/generate-template-components.md +48 -34
  21. package/templates/react-sdk-reference/.claude/prompts/generate-widget-components.md +25 -11
  22. package/templates/react-sdk-reference/.claude/prompts/identify-components.md +65 -65
  23. package/templates/react-sdk-reference/.claude/skills/component-contracts.md +99 -99
  24. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/AlertBanner.md +40 -38
  25. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Banner.md +54 -51
  26. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/CaseSummaryFields.md +51 -46
  27. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/DetailsFields.md +32 -28
  28. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldGroup.md +38 -35
  29. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldGroupList.md +25 -23
  30. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/FieldValueList.md +29 -26
  31. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Operator.md +32 -26
  32. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/Pulse.md +17 -15
  33. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/RichTextEditor.md +85 -59
  34. package/templates/react-sdk-reference/.claude/skills/design-system-extension-skills/WssQuickCreate.md +49 -47
  35. package/templates/react-sdk-reference/.claude/skills/design-system-extension.md +13 -11
  36. package/templates/react-sdk-reference/.claude/skills/field-components.md +9 -8
  37. package/templates/react-sdk-reference/.claude/skills/field-skills/AutoComplete.md +27 -26
  38. package/templates/react-sdk-reference/.claude/skills/field-skills/CancelAlert.md +30 -22
  39. package/templates/react-sdk-reference/.claude/skills/field-skills/Checkbox.md +60 -43
  40. package/templates/react-sdk-reference/.claude/skills/field-skills/Currency.md +23 -20
  41. package/templates/react-sdk-reference/.claude/skills/field-skills/Date.md +19 -17
  42. package/templates/react-sdk-reference/.claude/skills/field-skills/DateTime.md +18 -15
  43. package/templates/react-sdk-reference/.claude/skills/field-skills/Decimal.md +22 -21
  44. package/templates/react-sdk-reference/.claude/skills/field-skills/Dropdown.md +50 -30
  45. package/templates/react-sdk-reference/.claude/skills/field-skills/Email.md +20 -18
  46. package/templates/react-sdk-reference/.claude/skills/field-skills/Group.md +21 -15
  47. package/templates/react-sdk-reference/.claude/skills/field-skills/Integer.md +17 -16
  48. package/templates/react-sdk-reference/.claude/skills/field-skills/Location.md +30 -21
  49. package/templates/react-sdk-reference/.claude/skills/field-skills/Multiselect.md +66 -42
  50. package/templates/react-sdk-reference/.claude/skills/field-skills/ObjectReference.md +27 -18
  51. package/templates/react-sdk-reference/.claude/skills/field-skills/Percentage.md +22 -21
  52. package/templates/react-sdk-reference/.claude/skills/field-skills/Phone.md +36 -17
  53. package/templates/react-sdk-reference/.claude/skills/field-skills/RadioButtons.md +56 -35
  54. package/templates/react-sdk-reference/.claude/skills/field-skills/RichText.md +23 -12
  55. package/templates/react-sdk-reference/.claude/skills/field-skills/ScalarList.md +41 -31
  56. package/templates/react-sdk-reference/.claude/skills/field-skills/SelectableCard.md +70 -55
  57. package/templates/react-sdk-reference/.claude/skills/field-skills/SemanticLink.md +34 -27
  58. package/templates/react-sdk-reference/.claude/skills/field-skills/TextArea.md +24 -22
  59. package/templates/react-sdk-reference/.claude/skills/field-skills/TextContent.md +38 -22
  60. package/templates/react-sdk-reference/.claude/skills/field-skills/TextInput.md +24 -21
  61. package/templates/react-sdk-reference/.claude/skills/field-skills/Time.md +16 -15
  62. package/templates/react-sdk-reference/.claude/skills/field-skills/URL.md +16 -15
  63. package/templates/react-sdk-reference/.claude/skills/field-skills/UserReference.md +57 -34
  64. package/templates/react-sdk-reference/.claude/skills/run-and-verify.md +10 -8
  65. package/templates/react-sdk-reference/.claude/skills/template-components.md +7 -8
  66. package/templates/react-sdk-reference/.claude/skills/template-skills/AdvancedSearch.md +27 -21
  67. package/templates/react-sdk-reference/.claude/skills/template-skills/AppShell.md +17 -15
  68. package/templates/react-sdk-reference/.claude/skills/template-skills/BannerPage.md +19 -16
  69. package/templates/react-sdk-reference/.claude/skills/template-skills/CaseSummary.md +19 -13
  70. package/templates/react-sdk-reference/.claude/skills/template-skills/CaseView.md +23 -17
  71. package/templates/react-sdk-reference/.claude/skills/template-skills/CaseViewActionsMenu.md +34 -29
  72. package/templates/react-sdk-reference/.claude/skills/template-skills/Confirmation.md +18 -16
  73. package/templates/react-sdk-reference/.claude/skills/template-skills/DataReference.md +36 -32
  74. package/templates/react-sdk-reference/.claude/skills/template-skills/DefaultForm.md +23 -21
  75. package/templates/react-sdk-reference/.claude/skills/template-skills/DefaultPage.md +31 -29
  76. package/templates/react-sdk-reference/.claude/skills/template-skills/Details.md +19 -17
  77. package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsSubTabs.md +22 -20
  78. package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsThreeColumn.md +19 -17
  79. package/templates/react-sdk-reference/.claude/skills/template-skills/DetailsTwoColumn.md +19 -17
  80. package/templates/react-sdk-reference/.claude/skills/template-skills/DynamicTabs.md +15 -10
  81. package/templates/react-sdk-reference/.claude/skills/template-skills/FieldGroupTemplate.md +19 -16
  82. package/templates/react-sdk-reference/.claude/skills/template-skills/HierarchicalForm.md +18 -15
  83. package/templates/react-sdk-reference/.claude/skills/template-skills/InlineDashboard.md +17 -13
  84. package/templates/react-sdk-reference/.claude/skills/template-skills/InlineDashboardPage.md +10 -13
  85. package/templates/react-sdk-reference/.claude/skills/template-skills/ListPage.md +9 -7
  86. package/templates/react-sdk-reference/.claude/skills/template-skills/ListView.md +33 -30
  87. package/templates/react-sdk-reference/.claude/skills/template-skills/MultiReferenceReadOnly.md +13 -11
  88. package/templates/react-sdk-reference/.claude/skills/template-skills/NarrowWide.md +42 -40
  89. package/templates/react-sdk-reference/.claude/skills/template-skills/OneColumn.md +25 -20
  90. package/templates/react-sdk-reference/.claude/skills/template-skills/PromotedFilters.md +25 -19
  91. package/templates/react-sdk-reference/.claude/skills/template-skills/SelfServiceCaseView.md +36 -29
  92. package/templates/react-sdk-reference/.claude/skills/template-skills/SimpleTable.md +31 -27
  93. package/templates/react-sdk-reference/.claude/skills/template-skills/SingleReferenceReadOnly.md +29 -24
  94. package/templates/react-sdk-reference/.claude/skills/template-skills/SubTabs.md +14 -11
  95. package/templates/react-sdk-reference/.claude/skills/template-skills/TwoColumn.md +34 -32
  96. package/templates/react-sdk-reference/.claude/skills/template-skills/WideNarrow.md +48 -46
  97. package/templates/react-sdk-reference/.claude/skills/template-skills/WssNavBar.md +23 -19
  98. package/templates/react-sdk-reference/.claude/skills/widget-components.md +11 -22
  99. package/templates/react-sdk-reference/.claude/skills/widget-skills/AppAnnouncement.md +22 -20
  100. package/templates/react-sdk-reference/.claude/skills/widget-skills/Attachment.md +33 -28
  101. package/templates/react-sdk-reference/.claude/skills/widget-skills/CaseHistory.md +18 -15
  102. package/templates/react-sdk-reference/.claude/skills/widget-skills/FileUtility.md +43 -37
  103. package/templates/react-sdk-reference/.claude/skills/widget-skills/Followers.md +23 -19
  104. package/templates/react-sdk-reference/.claude/skills/widget-skills/QuickCreate.md +20 -16
  105. package/templates/react-sdk-reference/.claude/skills/widget-skills/SummaryItem.md +26 -24
  106. package/templates/react-sdk-reference/.claude/skills/widget-skills/ToDo.md +43 -35
  107. package/templates/react-sdk-reference/.cursor/rules/prompts/component-manifest.json +165 -83
  108. package/templates/react-sdk-reference/.github/agents/implementation-expert.agent.md +135 -0
  109. package/templates/react-sdk-reference/.github/instructions/component-map.instructions.md +2 -2
  110. package/templates/react-sdk-reference/.github/instructions/dse-component.instructions.md +1 -1
  111. package/templates/react-sdk-reference/.github/instructions/field-component.instructions.md +5 -1
  112. package/templates/react-sdk-reference/.github/instructions/template-component.instructions.md +3 -2
  113. package/templates/react-sdk-reference/.github/instructions/widget-component.instructions.md +2 -1
  114. package/templates/react-sdk-reference/.github/prompts/add-component.prompt.md +58 -15
  115. package/templates/react-sdk-reference/.github/prompts/component-manifest.json +165 -83
  116. package/templates/react-sdk-reference/.github/prompts/generate-all-components.prompt.md +322 -65
  117. package/templates/react-sdk-reference/.github/prompts/generate-dse-components.prompt.md +124 -50
  118. package/templates/react-sdk-reference/.github/prompts/generate-field-components.prompt.md +145 -66
  119. package/templates/react-sdk-reference/.github/prompts/generate-template-components.prompt.md +146 -73
  120. package/templates/react-sdk-reference/.github/prompts/generate-widget-components.prompt.md +128 -49
  121. package/templates/react-sdk-reference/.github/prompts/identify-components.prompt.md +65 -65
  122. package/templates/react-sdk-reference/.github/skills/component-contracts.md +99 -99
  123. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/AlertBanner.md +40 -38
  124. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Banner.md +54 -51
  125. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/CaseSummaryFields.md +51 -46
  126. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/DetailsFields.md +32 -28
  127. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldGroup.md +38 -35
  128. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldGroupList.md +25 -23
  129. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/FieldValueList.md +29 -26
  130. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Operator.md +32 -26
  131. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/Pulse.md +17 -15
  132. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/RichTextEditor.md +85 -59
  133. package/templates/react-sdk-reference/.github/skills/design-system-extension-skills/WssQuickCreate.md +49 -47
  134. package/templates/react-sdk-reference/.github/skills/design-system-extension.md +13 -11
  135. package/templates/react-sdk-reference/.github/skills/field-components.md +9 -8
  136. package/templates/react-sdk-reference/.github/skills/field-skills/AutoComplete.md +27 -26
  137. package/templates/react-sdk-reference/.github/skills/field-skills/CancelAlert.md +30 -22
  138. package/templates/react-sdk-reference/.github/skills/field-skills/Checkbox.md +60 -43
  139. package/templates/react-sdk-reference/.github/skills/field-skills/Currency.md +23 -20
  140. package/templates/react-sdk-reference/.github/skills/field-skills/Date.md +19 -17
  141. package/templates/react-sdk-reference/.github/skills/field-skills/DateTime.md +18 -15
  142. package/templates/react-sdk-reference/.github/skills/field-skills/Decimal.md +22 -21
  143. package/templates/react-sdk-reference/.github/skills/field-skills/Dropdown.md +50 -30
  144. package/templates/react-sdk-reference/.github/skills/field-skills/Email.md +20 -18
  145. package/templates/react-sdk-reference/.github/skills/field-skills/Group.md +21 -15
  146. package/templates/react-sdk-reference/.github/skills/field-skills/Integer.md +17 -16
  147. package/templates/react-sdk-reference/.github/skills/field-skills/Location.md +30 -21
  148. package/templates/react-sdk-reference/.github/skills/field-skills/Multiselect.md +66 -42
  149. package/templates/react-sdk-reference/.github/skills/field-skills/ObjectReference.md +27 -18
  150. package/templates/react-sdk-reference/.github/skills/field-skills/Percentage.md +22 -21
  151. package/templates/react-sdk-reference/.github/skills/field-skills/Phone.md +36 -17
  152. package/templates/react-sdk-reference/.github/skills/field-skills/RadioButtons.md +56 -35
  153. package/templates/react-sdk-reference/.github/skills/field-skills/RichText.md +23 -12
  154. package/templates/react-sdk-reference/.github/skills/field-skills/ScalarList.md +41 -31
  155. package/templates/react-sdk-reference/.github/skills/field-skills/SelectableCard.md +70 -55
  156. package/templates/react-sdk-reference/.github/skills/field-skills/SemanticLink.md +34 -27
  157. package/templates/react-sdk-reference/.github/skills/field-skills/TextArea.md +24 -22
  158. package/templates/react-sdk-reference/.github/skills/field-skills/TextContent.md +38 -22
  159. package/templates/react-sdk-reference/.github/skills/field-skills/TextInput.md +24 -21
  160. package/templates/react-sdk-reference/.github/skills/field-skills/Time.md +16 -15
  161. package/templates/react-sdk-reference/.github/skills/field-skills/URL.md +16 -15
  162. package/templates/react-sdk-reference/.github/skills/field-skills/UserReference.md +57 -34
  163. package/templates/react-sdk-reference/.github/skills/run-and-verify.md +10 -8
  164. package/templates/react-sdk-reference/.github/skills/template-components.md +7 -8
  165. package/templates/react-sdk-reference/.github/skills/template-skills/AdvancedSearch.md +27 -21
  166. package/templates/react-sdk-reference/.github/skills/template-skills/AppShell.md +17 -15
  167. package/templates/react-sdk-reference/.github/skills/template-skills/BannerPage.md +19 -16
  168. package/templates/react-sdk-reference/.github/skills/template-skills/CaseSummary.md +19 -13
  169. package/templates/react-sdk-reference/.github/skills/template-skills/CaseView.md +23 -17
  170. package/templates/react-sdk-reference/.github/skills/template-skills/CaseViewActionsMenu.md +34 -29
  171. package/templates/react-sdk-reference/.github/skills/template-skills/Confirmation.md +18 -16
  172. package/templates/react-sdk-reference/.github/skills/template-skills/DataReference.md +36 -32
  173. package/templates/react-sdk-reference/.github/skills/template-skills/DefaultForm.md +23 -21
  174. package/templates/react-sdk-reference/.github/skills/template-skills/DefaultPage.md +31 -29
  175. package/templates/react-sdk-reference/.github/skills/template-skills/Details.md +19 -17
  176. package/templates/react-sdk-reference/.github/skills/template-skills/DetailsSubTabs.md +22 -20
  177. package/templates/react-sdk-reference/.github/skills/template-skills/DetailsThreeColumn.md +19 -17
  178. package/templates/react-sdk-reference/.github/skills/template-skills/DetailsTwoColumn.md +19 -17
  179. package/templates/react-sdk-reference/.github/skills/template-skills/DynamicTabs.md +15 -10
  180. package/templates/react-sdk-reference/.github/skills/template-skills/FieldGroupTemplate.md +19 -16
  181. package/templates/react-sdk-reference/.github/skills/template-skills/HierarchicalForm.md +18 -15
  182. package/templates/react-sdk-reference/.github/skills/template-skills/InlineDashboard.md +17 -13
  183. package/templates/react-sdk-reference/.github/skills/template-skills/InlineDashboardPage.md +10 -13
  184. package/templates/react-sdk-reference/.github/skills/template-skills/ListPage.md +9 -7
  185. package/templates/react-sdk-reference/.github/skills/template-skills/ListView.md +33 -30
  186. package/templates/react-sdk-reference/.github/skills/template-skills/MultiReferenceReadOnly.md +13 -11
  187. package/templates/react-sdk-reference/.github/skills/template-skills/NarrowWide.md +42 -40
  188. package/templates/react-sdk-reference/.github/skills/template-skills/OneColumn.md +25 -20
  189. package/templates/react-sdk-reference/.github/skills/template-skills/PromotedFilters.md +25 -19
  190. package/templates/react-sdk-reference/.github/skills/template-skills/SelfServiceCaseView.md +36 -29
  191. package/templates/react-sdk-reference/.github/skills/template-skills/SimpleTable.md +31 -27
  192. package/templates/react-sdk-reference/.github/skills/template-skills/SingleReferenceReadOnly.md +29 -24
  193. package/templates/react-sdk-reference/.github/skills/template-skills/SubTabs.md +14 -11
  194. package/templates/react-sdk-reference/.github/skills/template-skills/TwoColumn.md +34 -32
  195. package/templates/react-sdk-reference/.github/skills/template-skills/WideNarrow.md +48 -46
  196. package/templates/react-sdk-reference/.github/skills/template-skills/WssNavBar.md +23 -19
  197. package/templates/react-sdk-reference/.github/skills/widget-components.md +11 -22
  198. package/templates/react-sdk-reference/.github/skills/widget-skills/AppAnnouncement.md +22 -20
  199. package/templates/react-sdk-reference/.github/skills/widget-skills/Attachment.md +33 -28
  200. package/templates/react-sdk-reference/.github/skills/widget-skills/CaseHistory.md +18 -15
  201. package/templates/react-sdk-reference/.github/skills/widget-skills/FileUtility.md +43 -37
  202. package/templates/react-sdk-reference/.github/skills/widget-skills/Followers.md +23 -19
  203. package/templates/react-sdk-reference/.github/skills/widget-skills/QuickCreate.md +20 -16
  204. package/templates/react-sdk-reference/.github/skills/widget-skills/SummaryItem.md +26 -24
  205. package/templates/react-sdk-reference/.github/skills/widget-skills/ToDo.md +43 -35
  206. package/templates/react-sdk-reference/AGENTS.md +0 -1
  207. package/templates/react-sdk-reference/index.html +1 -4
  208. package/templates/react-sdk-reference/package.json +15 -15
  209. package/templates/react-sdk-reference/pega-sdk-react-0.1.0.tgz +0 -0
  210. package/templates/react-sdk-reference/src/AppSelector.tsx +6 -6
  211. package/templates/react-sdk-reference/src/FallbackComponent.tsx +2 -6
  212. package/templates/react-sdk-reference/src/MashupApp.styles.ts +269 -41
  213. package/templates/react-sdk-reference/src/MashupApp.tsx +186 -85
  214. package/templates/react-sdk-reference/src/PortalApp.tsx +10 -34
  215. package/templates/react-sdk-reference/src/components/component-map.ts +2 -7
  216. package/templates/react-sdk-reference/src/components/designSystemExtension/AlertBanner/AlertBanner.tsx +7 -28
  217. package/templates/react-sdk-reference/src/components/designSystemExtension/Banner/Banner.tsx +12 -7
  218. package/templates/react-sdk-reference/src/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.tsx +35 -33
  219. package/templates/react-sdk-reference/src/components/designSystemExtension/DetailsFields/DetailsFields.tsx +6 -27
  220. package/templates/react-sdk-reference/src/components/designSystemExtension/FieldGroup/FieldGroup.tsx +15 -11
  221. package/templates/react-sdk-reference/src/components/designSystemExtension/FieldGroupList/FieldGroupList.tsx +7 -7
  222. package/templates/react-sdk-reference/src/components/designSystemExtension/FieldValueList/FieldValueList.tsx +18 -12
  223. package/templates/react-sdk-reference/src/components/designSystemExtension/Operator/Operator.tsx +27 -25
  224. package/templates/react-sdk-reference/src/components/designSystemExtension/Pulse/Pulse.tsx +4 -4
  225. package/templates/react-sdk-reference/src/components/designSystemExtension/RichTextEditor/RichTextEditor.tsx +8 -40
  226. package/templates/react-sdk-reference/src/components/designSystemExtension/WssQuickCreate/WssQuickCreate.tsx +9 -9
  227. package/templates/react-sdk-reference/src/components/field/AutoComplete/AutoComplete.tsx +26 -20
  228. package/templates/react-sdk-reference/src/components/field/CancelAlert/CancelAlert.tsx +35 -17
  229. package/templates/react-sdk-reference/src/components/field/Checkbox/Checkbox.tsx +27 -25
  230. package/templates/react-sdk-reference/src/components/field/Currency/Currency.tsx +10 -6
  231. package/templates/react-sdk-reference/src/components/field/Currency/currency-utils.ts +1 -1
  232. package/templates/react-sdk-reference/src/components/field/Date/Date.tsx +20 -7
  233. package/templates/react-sdk-reference/src/components/field/DateTime/DateTime.tsx +23 -8
  234. package/templates/react-sdk-reference/src/components/field/Decimal/Decimal.tsx +5 -5
  235. package/templates/react-sdk-reference/src/components/field/Dropdown/Dropdown.tsx +45 -25
  236. package/templates/react-sdk-reference/src/components/field/Email/Email.tsx +8 -8
  237. package/templates/react-sdk-reference/src/components/field/Group/Group.tsx +1 -1
  238. package/templates/react-sdk-reference/src/components/field/Integer/Integer.tsx +5 -5
  239. package/templates/react-sdk-reference/src/components/field/Location/Location.tsx +21 -16
  240. package/templates/react-sdk-reference/src/components/field/Multiselect/Multiselect.tsx +42 -27
  241. package/templates/react-sdk-reference/src/components/field/Multiselect/utils.ts +43 -29
  242. package/templates/react-sdk-reference/src/components/field/ObjectReference/ObjectReference.tsx +53 -30
  243. package/templates/react-sdk-reference/src/components/field/ObjectReference/utils.ts +12 -11
  244. package/templates/react-sdk-reference/src/components/field/Percentage/Percentage.tsx +6 -6
  245. package/templates/react-sdk-reference/src/components/field/Phone/Phone.tsx +12 -12
  246. package/templates/react-sdk-reference/src/components/field/RadioButtons/RadioButtons.tsx +38 -16
  247. package/templates/react-sdk-reference/src/components/field/RichText/RichText.tsx +17 -4
  248. package/templates/react-sdk-reference/src/components/field/ScalarList/ScalarList.tsx +5 -5
  249. package/templates/react-sdk-reference/src/components/field/SelectableCard/SelectableCard.tsx +31 -18
  250. package/templates/react-sdk-reference/src/components/field/SelectableCard/utils.tsx +28 -20
  251. package/templates/react-sdk-reference/src/components/field/SemanticLink/SemanticLink.tsx +28 -19
  252. package/templates/react-sdk-reference/src/components/field/SemanticLink/utils.ts +3 -1
  253. package/templates/react-sdk-reference/src/components/field/TextArea/TextArea.tsx +4 -4
  254. package/templates/react-sdk-reference/src/components/field/TextInput/TextInput.tsx +4 -4
  255. package/templates/react-sdk-reference/src/components/field/Time/Time.tsx +20 -7
  256. package/templates/react-sdk-reference/src/components/field/URL/URL.tsx +7 -7
  257. package/templates/react-sdk-reference/src/components/field/UserReference/UserReference.tsx +14 -14
  258. package/templates/react-sdk-reference/src/components/field/UserReference/UserReferenceUtils.ts +2 -2
  259. package/templates/react-sdk-reference/src/components/helpers/case-utils.tsx +5 -5
  260. package/templates/react-sdk-reference/src/components/helpers/data_page.ts +3 -3
  261. package/templates/react-sdk-reference/src/components/helpers/date-format-utils.ts +5 -5
  262. package/templates/react-sdk-reference/src/components/helpers/field-group-utils.ts +2 -7
  263. package/templates/react-sdk-reference/src/components/helpers/formatters/Boolean.ts +9 -3
  264. package/templates/react-sdk-reference/src/components/helpers/formatters/Currency.ts +18 -6
  265. package/templates/react-sdk-reference/src/components/helpers/formatters/CurrencyMap.ts +168 -168
  266. package/templates/react-sdk-reference/src/components/helpers/formatters/Date.ts +5 -5
  267. package/templates/react-sdk-reference/src/components/helpers/formatters/index.ts +8 -5
  268. package/templates/react-sdk-reference/src/components/helpers/instructions-utils.ts +2 -2
  269. package/templates/react-sdk-reference/src/components/helpers/simpleTableHelpers.ts +54 -30
  270. package/templates/react-sdk-reference/src/components/helpers/state-utils.tsx +5 -2
  271. package/templates/react-sdk-reference/src/components/helpers/template-utils.ts +5 -4
  272. package/templates/react-sdk-reference/src/components/helpers/utils.ts +3 -3
  273. package/templates/react-sdk-reference/src/components/helpers/versionHelpers.ts +3 -1
  274. package/templates/react-sdk-reference/src/components/index.ts +1 -4
  275. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/AdvancedSearch.tsx +18 -10
  276. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroup/persistUtils.ts +3 -3
  277. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroups/SearchGroups.tsx +26 -90
  278. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroups/hooks.ts +8 -5
  279. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/SearchGroups/utils.ts +8 -4
  280. package/templates/react-sdk-reference/src/components/template/AdvancedSearch/TemplateContext.ts +1 -1
  281. package/templates/react-sdk-reference/src/components/template/AppShell/AppShell.tsx +28 -19
  282. package/templates/react-sdk-reference/src/components/template/BannerPage/BannerPage.tsx +2 -2
  283. package/templates/react-sdk-reference/src/components/template/CaseSummary/CaseSummary.tsx +5 -5
  284. package/templates/react-sdk-reference/src/components/template/CaseView/CaseView.tsx +35 -16
  285. package/templates/react-sdk-reference/src/components/template/CaseViewActionsMenu/CaseViewActionsMenu.tsx +10 -10
  286. package/templates/react-sdk-reference/src/components/template/Confirmation/Confirmation.tsx +12 -26
  287. package/templates/react-sdk-reference/src/components/template/DataReference/DataReference.tsx +41 -124
  288. package/templates/react-sdk-reference/src/components/template/DataReference/DataReferenceAdvancedSearchContext.ts +2 -2
  289. package/templates/react-sdk-reference/src/components/template/DataReference/SearchForm.tsx +18 -78
  290. package/templates/react-sdk-reference/src/components/template/DataReference/utils.ts +18 -12
  291. package/templates/react-sdk-reference/src/components/template/DefaultForm/DefaultForm.tsx +4 -12
  292. package/templates/react-sdk-reference/src/components/template/DefaultForm/utils/index.ts +3 -3
  293. package/templates/react-sdk-reference/src/components/template/DefaultPage/DefaultPage.tsx +3 -3
  294. package/templates/react-sdk-reference/src/components/template/Details/Details/Details.tsx +6 -8
  295. package/templates/react-sdk-reference/src/components/template/Details/DetailsThreeColumn/DetailsThreeColumn.tsx +7 -14
  296. package/templates/react-sdk-reference/src/components/template/Details/DetailsTwoColumn/DetailsTwoColumn.tsx +7 -14
  297. package/templates/react-sdk-reference/src/components/template/Details/DynamicTabs/DynamicTabs.tsx +16 -8
  298. package/templates/react-sdk-reference/src/components/template/FieldGroupTemplate/FieldGroupTemplate.tsx +7 -4
  299. package/templates/react-sdk-reference/src/components/template/HierarchicalForm/HierarchicalForm.tsx +20 -5
  300. package/templates/react-sdk-reference/src/components/template/HierarchicalForm/hooks.ts +35 -77
  301. package/templates/react-sdk-reference/src/components/template/InlineDashboard/InlineDashboard.tsx +10 -10
  302. package/templates/react-sdk-reference/src/components/template/ListView/DefaultViewMeta.ts +31 -31
  303. package/templates/react-sdk-reference/src/components/template/ListView/ListView.tsx +173 -133
  304. package/templates/react-sdk-reference/src/components/template/ListView/hooks.ts +17 -10
  305. package/templates/react-sdk-reference/src/components/template/ListView/utils.ts +64 -51
  306. package/templates/react-sdk-reference/src/components/template/MultiReferenceReadOnly/MultiReferenceReadOnly.tsx +6 -6
  307. package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWide/NarrowWide.tsx +6 -6
  308. package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.tsx +8 -18
  309. package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWideForm/NarrowWideForm.tsx +3 -3
  310. package/templates/react-sdk-reference/src/components/template/NarrowWide/NarrowWidePage/NarrowWidePage.tsx +7 -1
  311. package/templates/react-sdk-reference/src/components/template/OneColumn/OneColumn/OneColumn.tsx +3 -3
  312. package/templates/react-sdk-reference/src/components/template/OneColumn/OneColumnTab/OneColumnTab.tsx +1 -1
  313. package/templates/react-sdk-reference/src/components/template/PromotedFilters/PromotedFilters.tsx +13 -40
  314. package/templates/react-sdk-reference/src/components/template/SelfServiceCaseView/SelfServiceCaseView.tsx +19 -16
  315. package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTable/SimpleTable.tsx +8 -7
  316. package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.tsx +84 -203
  317. package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.tsx +15 -5
  318. package/templates/react-sdk-reference/src/components/template/SimpleTable/SimpleTableSelectReadonly/SimpleTableSelectReadonly.tsx +15 -29
  319. package/templates/react-sdk-reference/src/components/template/SingleReferenceReadOnly/SingleReferenceReadOnly.tsx +7 -7
  320. package/templates/react-sdk-reference/src/components/template/SubTabs/SubTabs.tsx +1 -1
  321. package/templates/react-sdk-reference/src/components/template/SubTabs/tabUtils.ts +13 -11
  322. package/templates/react-sdk-reference/src/components/template/TwoColumn/TwoColumn/TwoColumn.tsx +3 -3
  323. package/templates/react-sdk-reference/src/components/template/TwoColumn/TwoColumnTab/TwoColumnTab.tsx +3 -3
  324. package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrow/WideNarrow.tsx +6 -6
  325. package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.tsx +13 -24
  326. package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrowForm/WideNarrowForm.tsx +3 -3
  327. package/templates/react-sdk-reference/src/components/template/WideNarrow/WideNarrowPage/WideNarrowPage.tsx +7 -1
  328. package/templates/react-sdk-reference/src/components/template/WssNavBar/WssNavBar.tsx +25 -25
  329. package/templates/react-sdk-reference/src/components/template/utils.tsx +6 -6
  330. package/templates/react-sdk-reference/src/components/widget/AppAnnouncement/AppAnnouncement.tsx +9 -9
  331. package/templates/react-sdk-reference/src/components/widget/Attachment/Attachment.tsx +125 -79
  332. package/templates/react-sdk-reference/src/components/widget/Attachment/AttachmentUtils.ts +58 -33
  333. package/templates/react-sdk-reference/src/components/widget/CaseHistory/CaseHistory.tsx +14 -12
  334. package/templates/react-sdk-reference/src/components/widget/FileUtility/ActionButtonsForFileUtil/ActionButtonsForFileUtil.tsx +19 -7
  335. package/templates/react-sdk-reference/src/components/widget/FileUtility/FileUtility/FileUtility.tsx +137 -107
  336. package/templates/react-sdk-reference/src/components/widget/Followers/Followers.tsx +4 -4
  337. package/templates/react-sdk-reference/src/components/widget/QuickCreate/QuickCreate.tsx +15 -11
  338. package/templates/react-sdk-reference/src/components/widget/SummaryItem/SummaryItem.tsx +25 -18
  339. package/templates/react-sdk-reference/src/components/widget/SummaryList/SummaryList.tsx +7 -2
  340. package/templates/react-sdk-reference/src/components/widget/ToDo/ToDo.tsx +30 -116
  341. package/templates/react-sdk-reference/src/main.tsx +1 -1
  342. package/templates/react-sdk-reference/tsconfig.json +2 -1
  343. package/templates/react-sdk-reference/vite.config.ts +51 -26
  344. package/templates/wc-sdk-reference/package.json +3 -3
  345. package/templates/wc-sdk-reference/src/index.ts +10 -10
  346. package/templates/wc-sdk-reference/tsconfig.json +1 -0
@@ -19,6 +19,7 @@ Renders a combined date and time picker. Stores values as ISO 8601 UTC strings.
19
19
  ## Props (component-specific)
20
20
 
21
21
  No props beyond `PConnFieldProps`. Import type as:
22
+
22
23
  ```typescript
23
24
  import type { PConnFieldProps } from '@pega/sdk-react';
24
25
  ```
@@ -46,27 +47,29 @@ import type { PConnFieldProps } from '@pega/sdk-react';
46
47
  ## Display Mode Rendering
47
48
 
48
49
  Format using `format(value, 'datetime', { format: \`${dateFormatString} hh:mm a\` })`:
50
+
49
51
  - **`DISPLAY_ONLY`:** `<FieldValueList name={hideLabel ? '' : label} value={formattedDateTime} />`.
50
52
  - **`STACKED_LARGE_VAL`:** `<FieldValueList name={hideLabel ? '' : label} value={formattedDateTime} variant='stacked' />`.
51
53
 
52
54
  ## Read-Only Rendering
53
55
 
54
56
  Format value as `format(props.value, 'datetime')` then pass to `TextInput`:
57
+
55
58
  ```
56
59
  return <TextInput {...props} value={formattedDateTime} />
57
60
  ```
58
61
 
59
62
  ## Visual Specifications
60
63
 
61
- | Property | Value |
62
- |----------|-------|
63
- | Width | Auto |
64
- | Size | Small |
65
- | Variant | Outlined |
66
- | Format | `MM/DD/YYYY hh:mm a` (locale-aware date + 12h time) |
67
- | Placeholder | Lowercase format, e.g., `mm/dd/yyyy hh:mm a` |
68
- | Minutes step | 5 minutes |
69
- | Error state | Red border + red helper text |
64
+ | Property | Value |
65
+ | ------------ | --------------------------------------------------- |
66
+ | Width | Auto |
67
+ | Size | Small |
68
+ | Variant | Outlined |
69
+ | Format | `MM/DD/YYYY hh:mm a` (locale-aware date + 12h time) |
70
+ | Placeholder | Lowercase format, e.g., `mm/dd/yyyy hh:mm a` |
71
+ | Minutes step | 5 minutes |
72
+ | Error state | Red border + red helper text |
70
73
 
71
74
  **Note on known issue:** Keyboard input in the minute field may jump to the am/pm field after one digit — this is a known quirk of some date-time picker library versions.
72
75
 
@@ -95,9 +98,9 @@ return <TextInput {...props} value={formattedDateTime} />
95
98
 
96
99
  Listed design systems are examples only.
97
100
 
98
- | Design System | Recommended Component |
99
- |---|---|
100
- | Default (CSS only) | `<input type="datetime-local">` (no timezone control) |
101
- | MUI | `<DateTimePicker />` from `@mui/x-date-pickers` + `dayjs.tz` |
102
- | Ant Design | `<DatePicker showTime />` |
103
- | Chakra UI | Third-party datetime picker |
101
+ | Design System | Recommended Component |
102
+ | ------------------ | ------------------------------------------------------------ |
103
+ | Default (CSS only) | `<input type="datetime-local">` (no timezone control) |
104
+ | MUI | `<DateTimePicker />` from `@mui/x-date-pickers` + `dayjs.tz` |
105
+ | Ant Design | `<DatePicker showTime />` |
106
+ | Chakra UI | Third-party datetime picker |
@@ -18,12 +18,12 @@ Renders a numeric input that accepts decimal values. Supports configurable decim
18
18
 
19
19
  ## Props (component-specific)
20
20
 
21
- | Prop | Type | Default | Description |
22
- |------|------|---------|-------------|
23
- | `currencyISOCode` | `string` (optional) | `'USD'` | ISO code for symbol/separator lookup (used when `formatter === 'Currency'`) |
24
- | `decimalPrecision` | `number` (optional) | — | Number of decimal places to show |
25
- | `showGroupSeparators` | `boolean` (optional) | — | Whether to show thousands separators |
26
- | `formatter` | `string` (optional) | — | `'Currency'` or `'Percentage'` — changes display mode formatting and read-only prefix/suffix |
21
+ | Prop | Type | Default | Description |
22
+ | --------------------- | -------------------- | ------- | -------------------------------------------------------------------------------------------- |
23
+ | `currencyISOCode` | `string` (optional) | `'USD'` | ISO code for symbol/separator lookup (used when `formatter === 'Currency'`) |
24
+ | `decimalPrecision` | `number` (optional) | — | Number of decimal places to show |
25
+ | `showGroupSeparators` | `boolean` (optional) | — | Whether to show thousands separators |
26
+ | `formatter` | `string` (optional) | — | `'Currency'` or `'Percentage'` — changes display mode formatting and read-only prefix/suffix |
27
27
 
28
28
  ## Behavioral Contract
29
29
 
@@ -48,6 +48,7 @@ Renders a numeric input that accepts decimal values. Supports configurable decim
48
48
  - **`STACKED_LARGE_VAL`:** `<FieldValueList name={hideLabel ? '' : label} value={formattedValue} variant='stacked' />`.
49
49
 
50
50
  `formattedValue` is computed before display-mode check:
51
+
51
52
  - `formatter === 'Currency'` → currency-formatted string.
52
53
  - Otherwise → decimal-formatted string using `pConn.getComponentName()?.toLowerCase()` as format key.
53
54
 
@@ -57,16 +58,16 @@ Keep numeric format input with `readOnly: true`. Apply prefix (`$`) or suffix (`
57
58
 
58
59
  ## Visual Specifications
59
60
 
60
- | Property | Standard (editable) | Read-only |
61
- |----------|---------------------|-----------|
62
- | Width | 100% | 100% |
63
- | Size | Small | Small |
64
- | Variant | Outlined | Standard (flat) |
65
- | Prefix | None (unless read-only Currency) | Currency symbol if `formatter='Currency'` |
66
- | Suffix | None (unless read-only Percentage) | `%` if `formatter='Percentage'` |
67
- | Thousands separator | Only when `showGroupSeparators=true` | Same |
68
- | Decimal scale | From `decimalPrecision` | Undefined for Currency, `decimalPrecision` otherwise |
69
- | Placeholder | From `placeholder` prop | — |
61
+ | Property | Standard (editable) | Read-only |
62
+ | ------------------- | ------------------------------------ | ---------------------------------------------------- |
63
+ | Width | 100% | 100% |
64
+ | Size | Small | Small |
65
+ | Variant | Outlined | Standard (flat) |
66
+ | Prefix | None (unless read-only Currency) | Currency symbol if `formatter='Currency'` |
67
+ | Suffix | None (unless read-only Percentage) | `%` if `formatter='Percentage'` |
68
+ | Thousands separator | Only when `showGroupSeparators=true` | Same |
69
+ | Decimal scale | From `decimalPrecision` | Undefined for Currency, `decimalPrecision` otherwise |
70
+ | Placeholder | From `placeholder` prop | — |
70
71
 
71
72
  ## Edge Cases & Special Logic
72
73
 
@@ -90,9 +91,9 @@ Keep numeric format input with `readOnly: true`. Apply prefix (`$`) or suffix (`
90
91
 
91
92
  Listed design systems are examples only.
92
93
 
93
- | Design System | Recommended Component |
94
- |---|---|
94
+ | Design System | Recommended Component |
95
+ | ------------------ | ------------------------------------------------- |
95
96
  | Default (CSS only) | `<input type="text">` with custom numeric masking |
96
- | MUI | `NumericFormat` with `customInput={TextField}` |
97
- | Ant Design | `<InputNumber precision={decimalPrecision} />` |
98
- | Chakra UI | `<NumberInput>` |
97
+ | MUI | `NumericFormat` with `customInput={TextField}` |
98
+ | Ant Design | `<InputNumber precision={decimalPrecision} />` |
99
+ | Chakra UI | `<NumberInput>` |
@@ -18,16 +18,16 @@ Renders a single-select dropdown (select box). Options are loaded from a Pega da
18
18
 
19
19
  ## Props (component-specific)
20
20
 
21
- | Prop | Type | Description |
22
- |------|------|-------------|
23
- | `listType` | `string` | `'associated'` or `'datapage'` — determines how options are loaded |
24
- | `datasource` | `any[]` (optional) | The raw datasource (array for associated, string name for datapage) |
25
- | `columns` | `any[]` | Column config for extracting key/value from datasource records |
26
- | `parameters` | `any` (optional) | Query parameters for data page calls |
27
- | `deferDatasource` | `boolean` (optional) | If true, transform `datasourceMetadata` into datapage config |
28
- | `datasourceMetadata` | `any` (optional) | Metadata from deferred datasource resolution |
29
- | `fieldMetadata` | `any` (optional) | Field metadata for localization context |
30
- | `onRecordChange` | `any` (optional) | Callback fired after a selection change |
21
+ | Prop | Type | Description |
22
+ | -------------------- | -------------------- | ------------------------------------------------------------------- |
23
+ | `listType` | `string` | `'associated'` or `'datapage'` — determines how options are loaded |
24
+ | `datasource` | `any[]` (optional) | The raw datasource (array for associated, string name for datapage) |
25
+ | `columns` | `any[]` | Column config for extracting key/value from datasource records |
26
+ | `parameters` | `any` (optional) | Query parameters for data page calls |
27
+ | `deferDatasource` | `boolean` (optional) | If true, transform `datasourceMetadata` into datapage config |
28
+ | `datasourceMetadata` | `any` (optional) | Metadata from deferred datasource resolution |
29
+ | `fieldMetadata` | `any` (optional) | Field metadata for localization context |
30
+ | `onRecordChange` | `any` (optional) | Callback fired after a selection change |
31
31
 
32
32
  ## Behavioral Contract
33
33
 
@@ -42,7 +42,7 @@ Renders a single-select dropdown (select box). Options are loaded from a Pega da
42
42
  5. **Loading options for `associated` listType:** In `useEffect` watching `theDatasource`, call `Utils.getOptionList(props, pConn.getDataObject(''))`. Prepend a placeholder option `{key: placeholder, value: localizedPlaceholder}`.
43
43
  6. **Loading options for `datapage` listType:** In mount-time `useEffect`, call `getDataPage(datasource, parameters, context)`. Map results using `getDisplayFieldsMetaData(columns)` to extract `key` and `value` per row.
44
44
  7. **Placeholder:** Default `'Select...'` if not provided. Prepended as the first option for associated lists.
45
- 8. **On change:**
45
+ 8. **On change:**
46
46
  - If selected value equals `placeholder`, treat as empty string: `selectedValue = evt.target.value === placeholder ? '' : evt.target.value`.
47
47
  - Commit via `handleEvent(actionsApi, 'changeNblur', propName, selectedValue)`.
48
48
  - Fire `onRecordChange(evt)` if provided.
@@ -52,10 +52,13 @@ Renders a single-select dropdown (select box). Options are loaded from a Pega da
52
52
  ## Display Mode Rendering
53
53
 
54
54
  Display modes use the **resolved display value** (the `value` string matching the selected `key`), NOT the raw stored key:
55
+
55
56
  ```
56
57
  options.find(option => option.key === value)?.value || value
57
58
  ```
59
+
58
60
  Both modes pass this resolved value through `pConn.getLocalizedValue()` for localization:
61
+
59
62
  - **`DISPLAY_ONLY`:** `<FieldValueList name={hideLabel ? '' : label} value={localizedDisplayValue} />`
60
63
  - **`STACKED_LARGE_VAL`:** `<FieldValueList name={hideLabel ? '' : label} value={localizedDisplayValue} variant='stacked' />`
61
64
 
@@ -65,22 +68,39 @@ Set `readOnly: true` on the select element. Flat/borderless variant. Change hand
65
68
 
66
69
  ## Visual Specifications
67
70
 
68
- | Property | Standard (editable) | Read-only |
69
- |----------|---------------------|-----------|
70
- | Width | 100% | 100% |
71
- | Size | Small | Small |
72
- | Variant | Outlined | Standard (flat) |
73
- | Placeholder option | First option in list (`'Select...'`) | Not shown |
74
- | Options | Rendered as select menu items | — |
75
- | Error state | Red border + red helper text | — |
76
- | Label | Floating label | — |
71
+ | Property | Standard (editable) | Read-only |
72
+ | ------------------ | ------------------------------------ | --------------- |
73
+ | Width | 100% | 100% |
74
+ | Size | Small | Small |
75
+ | Variant | Outlined | Standard (flat) |
76
+ | Placeholder option | First option in list (`'Select...'`) | Not shown |
77
+ | Options | Rendered as select menu items | — |
78
+ | Error state | Red border + red helper text | — |
79
+ | Label | Floating label | — |
77
80
 
78
81
  **CSS-only notes:**
82
+
79
83
  ```css
80
- select { width: 100%; height: 40px; border: 1px solid rgba(0,0,0,0.23); border-radius: 4px; padding: 8px 12px; font-size: 0.875rem; }
81
- select:focus { border-color: #1976d2; outline: none; }
82
- select.error { border-color: #d32f2f; }
83
- select[readonly] { border: none; background: transparent; pointer-events: none; }
84
+ select {
85
+ width: 100%;
86
+ height: 40px;
87
+ border: 1px solid rgba(0, 0, 0, 0.23);
88
+ border-radius: 4px;
89
+ padding: 8px 12px;
90
+ font-size: 0.875rem;
91
+ }
92
+ select:focus {
93
+ border-color: #1976d2;
94
+ outline: none;
95
+ }
96
+ select.error {
97
+ border-color: #d32f2f;
98
+ }
99
+ select[readonly] {
100
+ border: none;
101
+ background: transparent;
102
+ pointer-events: none;
103
+ }
84
104
  ```
85
105
 
86
106
  ## Edge Cases & Special Logic
@@ -106,9 +126,9 @@ select[readonly] { border: none; background: transparent; pointer-events: none;
106
126
 
107
127
  Listed design systems are examples only.
108
128
 
109
- | Design System | Recommended Component |
110
- |---|---|
111
- | Default (CSS only) | `<select>` with `<option>` elements |
112
- | MUI | `<TextField select>` with `<MenuItem>` children |
113
- | Ant Design | `<Select>` with `<Select.Option>` |
114
- | Chakra UI | `<Select>` |
129
+ | Design System | Recommended Component |
130
+ | ------------------ | ----------------------------------------------- |
131
+ | Default (CSS only) | `<select>` with `<option>` elements |
132
+ | MUI | `<TextField select>` with `<MenuItem>` children |
133
+ | Ant Design | `<Select>` with `<Select.Option>` |
134
+ | Chakra UI | `<Select>` |
@@ -19,6 +19,7 @@ Renders a single-line text input of type `email` with a leading mail icon adornm
19
19
  ## Props (component-specific)
20
20
 
21
21
  No props beyond `PConnFieldProps`. Import type as:
22
+
22
23
  ```typescript
23
24
  import type { PConnFieldProps } from '@pega/sdk-react';
24
25
  ```
@@ -45,20 +46,21 @@ Delegate to `TextInput`: `return <TextInput {...props} />`. This means the mail
45
46
 
46
47
  Derived from the reference component's MUI props and styles:
47
48
 
48
- | Property | Value |
49
- |----------|-------|
50
- | Width | 100% |
51
- | Size | Small (~40px height) |
52
- | Variant | Outlined |
53
- | Leading icon | Mail/envelope icon (`position='start'` adornment) |
54
- | Icon color | Inherits text color |
55
- | Border | 1px solid outlined |
56
- | Border radius | 4px |
57
- | Error state | Red border + red helper text |
58
- | Helper text | Below input |
59
- | Placeholder | From `placeholder` prop (`''` default) |
49
+ | Property | Value |
50
+ | ------------- | ------------------------------------------------- |
51
+ | Width | 100% |
52
+ | Size | Small (~40px height) |
53
+ | Variant | Outlined |
54
+ | Leading icon | Mail/envelope icon (`position='start'` adornment) |
55
+ | Icon color | Inherits text color |
56
+ | Border | 1px solid outlined |
57
+ | Border radius | 4px |
58
+ | Error state | Red border + red helper text |
59
+ | Helper text | Below input |
60
+ | Placeholder | From `placeholder` prop (`''` default) |
60
61
 
61
62
  **CSS-only implementation notes:**
63
+
62
64
  ```css
63
65
  .email-input-wrapper {
64
66
  position: relative;
@@ -99,9 +101,9 @@ Derived from the reference component's MUI props and styles:
99
101
 
100
102
  Listed design systems are examples only.
101
103
 
102
- | Design System | Recommended Component |
103
- |---|---|
104
- | Default (CSS only) | `<input type="email">` with absolutely-positioned icon |
105
- | MUI | `<TextField type='email' InputProps={{ startAdornment: <MailIcon /> }} />` |
106
- | Ant Design | `<Input type="email" prefix={<MailOutlined />} />` |
107
- | Chakra UI | `<InputGroup><InputLeftElement><EmailIcon /></InputLeftElement><Input type="email" /></InputGroup>` |
104
+ | Design System | Recommended Component |
105
+ | ------------------ | --------------------------------------------------------------------------------------------------- |
106
+ | Default (CSS only) | `<input type="email">` with absolutely-positioned icon |
107
+ | MUI | `<TextField type='email' InputProps={{ startAdornment: <MailIcon /> }} />` |
108
+ | Ant Design | `<Input type="email" prefix={<MailOutlined />} />` |
109
+ | Chakra UI | `<InputGroup><InputLeftElement><EmailIcon /></InputLeftElement><Input type="email" /></InputGroup>` |
@@ -18,14 +18,14 @@ A layout/structural component (not a form input). Wraps a set of child field com
18
18
 
19
19
  ## Props (component-specific)
20
20
 
21
- | Prop | Type | Description |
22
- |------|------|-------------|
23
- | `children` | `ReactElement[]` | Child field components to render inside the group |
24
- | `heading` | `string` | The group heading/title |
25
- | `showHeading` | `boolean` | Whether to display the heading |
26
- | `instructions` | `string` (optional) | Instructional text shown below the heading |
27
- | `collapsible` | `boolean` | Whether the group can be collapsed |
28
- | `type` | `string` | Group type (used for layout context) |
21
+ | Prop | Type | Description |
22
+ | -------------- | ------------------- | ------------------------------------------------- |
23
+ | `children` | `ReactElement[]` | Child field components to render inside the group |
24
+ | `heading` | `string` | The group heading/title |
25
+ | `showHeading` | `boolean` | Whether to display the heading |
26
+ | `instructions` | `string` (optional) | Instructional text shown below the heading |
27
+ | `collapsible` | `boolean` | Whether the group can be collapsed |
28
+ | `type` | `string` | Group type (used for layout context) |
29
29
 
30
30
  `displayMode` is also consumed from `PConnFieldProps`.
31
31
 
@@ -54,11 +54,17 @@ Grid container (spacing=2):
54
54
  ```
55
55
 
56
56
  **CSS-only grid layout:**
57
+
57
58
  ```css
58
- .field-group-children { display: grid; grid-template-columns: 1fr; gap: 16px; }
59
+ .field-group-children {
60
+ display: grid;
61
+ grid-template-columns: 1fr;
62
+ gap: 16px;
63
+ }
59
64
  ```
60
65
 
61
66
  The `FieldGroup` component itself provides:
67
+
62
68
  - Optional heading/title above the children
63
69
  - Optional collapse/expand control
64
70
  - Optional instructions text
@@ -82,9 +88,9 @@ The `FieldGroup` component itself provides:
82
88
 
83
89
  Listed design systems are examples only.
84
90
 
85
- | Design System | Recommended Component |
86
- |---|---|
87
- | Default (CSS only) | `<fieldset>` or `<details>/<summary>` for collapsible |
88
- | MUI | `<Grid container spacing={2}>` with `<Grid size={{ xs: 12 }}>` per child |
89
- | Ant Design | `<Collapse>` panel or `<Card>` |
90
- | Chakra UI | `<Box>` or `<Accordion>` |
91
+ | Design System | Recommended Component |
92
+ | ------------------ | ------------------------------------------------------------------------ |
93
+ | Default (CSS only) | `<fieldset>` or `<details>/<summary>` for collapsible |
94
+ | MUI | `<Grid container spacing={2}>` with `<Grid size={{ xs: 12 }}>` per child |
95
+ | Ant Design | `<Collapse>` panel or `<Card>` |
96
+ | Chakra UI | `<Box>` or `<Accordion>` |
@@ -19,6 +19,7 @@ Renders a single-line text input restricted to integer values. Actively filters
19
19
  ## Props (component-specific)
20
20
 
21
21
  No props beyond `PConnFieldProps`. Import type as:
22
+
22
23
  ```typescript
23
24
  import type { PConnFieldProps } from '@pega/sdk-react';
24
25
  ```
@@ -49,16 +50,16 @@ Delegate to `TextInput`: `return <TextInput {...props} />`.
49
50
 
50
51
  Identical to `TextInput` visually:
51
52
 
52
- | Property | Value |
53
- |----------|-------|
54
- | Width | 100% |
55
- | Size | Small (~40px height) |
56
- | Variant | Outlined |
57
- | Border | 1px solid |
58
- | Border radius | 4px |
59
- | Error state | Red border + red helper text |
60
- | Input mode | `numeric` (shows numeric keyboard on mobile) |
61
- | Pattern | `[0-9]*` |
53
+ | Property | Value |
54
+ | ------------- | -------------------------------------------- |
55
+ | Width | 100% |
56
+ | Size | Small (~40px height) |
57
+ | Variant | Outlined |
58
+ | Border | 1px solid |
59
+ | Border radius | 4px |
60
+ | Error state | Red border + red helper text |
61
+ | Input mode | `numeric` (shows numeric keyboard on mobile) |
62
+ | Pattern | `[0-9]*` |
62
63
 
63
64
  ## Edge Cases & Special Logic
64
65
 
@@ -79,9 +80,9 @@ Identical to `TextInput` visually:
79
80
 
80
81
  Listed design systems are examples only.
81
82
 
82
- | Design System | Recommended Component |
83
- |---|---|
84
- | Default (CSS only) | `<input type="text" inputMode="numeric" pattern="[0-9]*">` |
85
- | MUI | `<TextField type='text' slotProps={{ htmlInput: { inputMode: 'numeric', pattern: '[0-9]*' } }} />` |
86
- | Ant Design | `<InputNumber precision={0} />` or `<Input />` with custom `onChange` filter |
87
- | Chakra UI | `<NumberInput allowMouseWheel={false} />` or plain `<Input>` with filter |
83
+ | Design System | Recommended Component |
84
+ | ------------------ | -------------------------------------------------------------------------------------------------- |
85
+ | Default (CSS only) | `<input type="text" inputMode="numeric" pattern="[0-9]*">` |
86
+ | MUI | `<TextField type='text' slotProps={{ htmlInput: { inputMode: 'numeric', pattern: '[0-9]*' } }} />` |
87
+ | Ant Design | `<InputNumber precision={0} />` or `<Input />` with custom `onChange` filter |
88
+ | Chakra UI | `<NumberInput allowMouseWheel={false} />` or plain `<Input>` with filter |
@@ -18,12 +18,12 @@ Renders a text input that integrates with Google Maps Places API for address/loc
18
18
 
19
19
  ## Props (component-specific)
20
20
 
21
- | Prop | Type | Default | Description |
22
- |------|------|---------|-------------|
23
- | `coordinates` | `string` (optional) | `''` | Comma-separated lat/lng string (e.g., `'18.5204, 73.8567'`) |
21
+ | Prop | Type | Default | Description |
22
+ | ----------------- | -------------------- | ------- | ------------------------------------------------------------------------ |
23
+ | `coordinates` | `string` (optional) | `''` | Comma-separated lat/lng string (e.g., `'18.5204, 73.8567'`) |
24
24
  | `onlyCoordinates` | `boolean` (optional) | `false` | If `true`, store and display lat/lng coordinates instead of address text |
25
- | `showMap` | `boolean` (optional) | — | Show the interactive map in editable mode |
26
- | `showMapReadOnly` | `boolean` (optional) | — | Show the map in read-only mode |
25
+ | `showMap` | `boolean` (optional) | — | Show the interactive map in editable mode |
26
+ | `showMapReadOnly` | `boolean` (optional) | — | Show the map in read-only mode |
27
27
 
28
28
  ## Behavioral Contract
29
29
 
@@ -58,13 +58,17 @@ Renders a text input that integrates with Google Maps Places API for address/loc
58
58
  ### Map configuration (disabled state)
59
59
 
60
60
  When `disabled`, map options disable all interactions:
61
+
61
62
  - `gestureHandling: 'none'`, `keyboardShortcuts: false`, `disableDefaultUI: true`, `clickableIcons: false`
62
63
  - Map opacity: `0.7` when disabled
63
64
 
64
65
  ### CSS for Google Maps autocomplete dropdown z-index:
66
+
65
67
  ```css
66
68
  /* Location.css */
67
- .pac-container { z-index: 2147483647; }
69
+ .pac-container {
70
+ z-index: 2147483647;
71
+ }
68
72
  ```
69
73
 
70
74
  ## Display Mode Rendering
@@ -83,23 +87,28 @@ When `disabled`, map options disable all interactions:
83
87
 
84
88
  ## Visual Specifications
85
89
 
86
- | Property | Value |
87
- |----------|-------|
88
- | Width | 100% |
89
- | Input variant | Default (outlined, from `TextField`) |
90
- | Trailing icon | Location pin icon button (for current location) |
91
- | Error alert | Alert banner ABOVE the input field when `hasError` |
92
- | Map container | `width: 100%`, `height: 300px`, `marginTop: 0px` |
93
- | Map render | Only shown when `isLoaded && (showMap || showMapReadOnly)` |
94
- | Disabled map opacity | `0.7` |
90
+ | Property | Value |
91
+ | -------------------- | -------------------------------------------------- |
92
+ | Width | 100% |
93
+ | Input variant | Default (outlined, from `TextField`) |
94
+ | Trailing icon | Location pin icon button (for current location) |
95
+ | Error alert | Alert banner ABOVE the input field when `hasError` |
96
+ | Map container | `width: 100%`, `height: 300px`, `marginTop: 0px` |
97
+ | Map render | Only shown when `isLoaded && (showMap | | showMapReadOnly)` |
98
+ | Disabled map opacity | `0.7` |
95
99
 
96
100
  **CSS companion file required:** `Location.css` with:
101
+
97
102
  ```css
98
- .pac-container { z-index: 2147483647; }
103
+ .pac-container {
104
+ z-index: 2147483647;
105
+ }
99
106
  ```
107
+
100
108
  This ensures the Google Maps autocomplete dropdown appears above modal/dialog overlays.
101
109
 
102
110
  **CSS-only implementation notes:**
111
+
103
112
  - Location pin button: `<button>` with `position: absolute; right: 8px; top: 50%; transform: translateY(-50%);`
104
113
 
105
114
  ## Edge Cases & Special Logic
@@ -128,9 +137,9 @@ This ensures the Google Maps autocomplete dropdown appears above modal/dialog ov
128
137
 
129
138
  Listed design systems are examples only.
130
139
 
131
- | Design System | Recommended Component |
132
- |---|---|
140
+ | Design System | Recommended Component |
141
+ | ------------------ | ----------------------------------------------------------------------- |
133
142
  | Default (CSS only) | `<input type="text">` + Google Maps Autocomplete API + Google Map embed |
134
- | MUI | `<TextField>` + `InputAdornment` for icon + `@react-google-maps/api` |
135
- | Ant Design | `<Input suffix={<LocationIcon />}>` + Google Maps |
136
- | Chakra UI | `<InputGroup>` + `<InputRightElement>` + Google Maps |
143
+ | MUI | `<TextField>` + `InputAdornment` for icon + `@react-google-maps/api` |
144
+ | Ant Design | `<Input suffix={<LocationIcon />}>` + Google Maps |
145
+ | Chakra UI | `<InputGroup>` + `<InputRightElement>` + Google Maps |