@pega/dx-component-builder-sdk 23.1.15 → 24.1.10

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 (311) hide show
  1. package/README.md +3 -3
  2. package/package.json +1 -1
  3. package/src/cli.js +1 -1
  4. package/src/constants.js +4 -0
  5. package/src/tasks/build-all/helper.js +6 -0
  6. package/src/tasks/build-comp/helper.js +6 -0
  7. package/src/tasks/bundle/builderAngular/webpack.config.js +14 -1
  8. package/src/tasks/bundle/builderAssociated/webpack.config.js +13 -0
  9. package/src/tasks/bundle/builderReact/webpack.config.js +14 -1
  10. package/src/tasks/create/templates/Constellation/field/Boolean/index.tsx.mustache +3 -2
  11. package/src/tasks/create/templates/Constellation/field/Icon-Button-URL/PConnProps.d.ts.mustache +46 -0
  12. package/src/tasks/create/templates/Constellation/field/Icon-Button-URL/config.json.mustache +64 -0
  13. package/src/tasks/create/templates/Constellation/field/Icon-Button-URL/demo.stories.tsx.mustache +99 -0
  14. package/src/tasks/create/templates/Constellation/field/Icon-Button-URL/index.tsx.mustache +204 -0
  15. package/src/tasks/create/templates/Constellation/field/Icon-Button-URL/mock.ts.mustache +5 -0
  16. package/src/tasks/create/templates/Constellation/field/Icon-Button-URL/styles.ts.mustache +8 -0
  17. package/src/tasks/create/templates/Constellation/field/Picklist/index.tsx.mustache +0 -1
  18. package/src/tasks/create/templates/Constellation/field/Picklist-Autocomplete/date.ts.mustache +15 -37
  19. package/src/tasks/create/templates/Constellation/field/Picklist-Autocomplete/index.tsx.mustache +11 -0
  20. package/src/tasks/create/templates/Constellation/field/Picklist-Autocomplete/utils.ts.mustache +3 -0
  21. package/src/tasks/create/templates/Constellation/field/Text/index.tsx.mustache +94 -4
  22. package/src/tasks/create/templates/Constellation/template/DETAILS/Avatar.tsx.mustache +78 -0
  23. package/src/tasks/create/templates/Constellation/template/DETAILS/DetailsRender.tsx.mustache +55 -0
  24. package/src/tasks/create/templates/Constellation/template/DETAILS/HighlightRender.tsx.mustache +49 -0
  25. package/src/tasks/create/templates/Constellation/template/DETAILS/Operator.tsx.mustache +218 -0
  26. package/src/tasks/create/templates/Constellation/template/DETAILS/demo.stories.tsx.mustache +77 -23
  27. package/src/tasks/create/templates/Constellation/template/DETAILS/index.tsx.mustache +51 -40
  28. package/src/tasks/create/templates/Constellation/template/DETAILS/mock.ts.mustache +78 -20
  29. package/src/tasks/create/templates/Constellation/template/DETAILS/styles.ts.mustache +16 -0
  30. package/src/tasks/create/templates/Constellation/template/DETAILS-region/Avatar.tsx.mustache +78 -0
  31. package/src/tasks/create/templates/Constellation/template/DETAILS-region/DetailsRender.tsx.mustache +55 -0
  32. package/src/tasks/create/templates/Constellation/template/DETAILS-region/HighlightRender.tsx.mustache +49 -0
  33. package/src/tasks/create/templates/Constellation/template/DETAILS-region/Operator.tsx.mustache +218 -0
  34. package/src/tasks/create/templates/Constellation/template/DETAILS-region/demo.stories.tsx.mustache +95 -26
  35. package/src/tasks/create/templates/Constellation/template/DETAILS-region/index.tsx.mustache +42 -39
  36. package/src/tasks/create/templates/Constellation/template/DETAILS-region/mock.ts.mustache +68 -10
  37. package/src/tasks/create/templates/Constellation/template/DETAILS-region/styles.ts.mustache +15 -0
  38. package/src/tasks/create/templates/Constellation/template/FORM/DetailsRender.tsx +59 -0
  39. package/src/tasks/create/templates/Constellation/template/FORM/demo.stories.tsx.mustache +73 -8
  40. package/src/tasks/create/templates/Constellation/template/FORM/index.tsx.mustache +33 -5
  41. package/src/tasks/create/templates/Constellation/template/FORM-region/DetailsRender.tsx +59 -0
  42. package/src/tasks/create/templates/Constellation/template/FORM-region/demo.stories.tsx.mustache +95 -15
  43. package/src/tasks/create/templates/Constellation/template/FORM-region/index.tsx.mustache +29 -7
  44. package/src/tasks/create/templates/Constellation/template/PAGE/GetNextWork.tsx.mustache +2 -1
  45. package/src/tasks/create/templates/Constellation/template/PAGE/localizations.json.mustache +4 -2
  46. package/src/tasks/create/templates/Constellation/widget/PAGE/demo.stories.tsx.mustache +87 -6
  47. package/src/tasks/create/templates/Constellation/widget/PAGE/index.tsx.mustache +67 -5
  48. package/src/tasks/create/templates/SDK-Angular/field/Boolean/boolean.component.html.mustache +19 -18
  49. package/src/tasks/create/templates/SDK-Angular/field/Boolean/boolean.component.ts.mustache +127 -44
  50. package/src/tasks/create/templates/SDK-Angular/field/Icon-Button-URL/config.json.mustache +64 -0
  51. package/src/tasks/create/templates/SDK-Angular/field/Icon-Button-URL/demo.stories.tsx.mustache +63 -0
  52. package/src/tasks/create/templates/SDK-Angular/field/Icon-Button-URL/icon-button-url.component.html.mustache +40 -0
  53. package/src/tasks/create/templates/SDK-Angular/field/Icon-Button-URL/icon-button-url.component.scss.mustache +24 -0
  54. package/src/tasks/create/templates/SDK-Angular/field/Icon-Button-URL/icon-button-url.component.spec.ts.mustache +26 -0
  55. package/src/tasks/create/templates/SDK-Angular/field/Icon-Button-URL/icon-button-url.component.ts.mustache +195 -0
  56. package/src/tasks/create/templates/SDK-Angular/field/Icon-Button-URL/mock.ts.mustache +37 -0
  57. package/src/tasks/create/templates/SDK-Angular/field/Text-URL/text-url.component.html.mustache +1 -0
  58. package/src/tasks/create/templates/SDK-Angular/field/Text-URL/text-url.component.ts.mustache +2 -0
  59. package/src/tasks/create/templates/SDK-Angular/field/TimeOfDay/time-of-day.component.html.mustache +1 -0
  60. package/src/tasks/create/templates/SDK-Angular/field/TimeOfDay/time-of-day.component.ts.mustache +2 -0
  61. package/src/tasks/create/templates/SDK-Angular/template/FORM-region/form.component.scss.mustache +1 -1
  62. package/src/tasks/create/templates/SDK-Angular/widget/CASE/case.component.ts.mustache +2 -2
  63. package/src/tasks/create/templates/SDK-Angular/widget/PAGE/demo.stories.tsx.mustache +22 -5
  64. package/src/tasks/create/templates/SDK-Angular/widget/PAGE/mock.ts.mustache +25 -0
  65. package/src/tasks/create/templates/SDK-Angular/widget/PAGE/page.component.html.mustache +11 -1
  66. package/src/tasks/create/templates/SDK-Angular/widget/PAGE/page.component.ts.mustache +93 -1
  67. package/src/tasks/create/templates/SDK-React/field/Boolean/demo.stories.tsx.mustache +1 -1
  68. package/src/tasks/create/templates/SDK-React/field/Boolean/mock.ts.mustache +8 -8
  69. package/src/tasks/create/templates/SDK-React/field/Date/index.tsx.mustache +2 -2
  70. package/src/tasks/create/templates/SDK-React/field/Date/mock.ts.mustache +7 -7
  71. package/src/tasks/create/templates/SDK-React/field/DateTime/demo.stories.tsx.mustache +1 -1
  72. package/src/tasks/create/templates/SDK-React/field/DateTime/index.tsx.mustache +2 -3
  73. package/src/tasks/create/templates/SDK-React/field/DateTime/mock.ts.mustache +6 -6
  74. package/src/tasks/create/templates/SDK-React/field/Decimal/index.tsx.mustache +51 -35
  75. package/src/tasks/create/templates/SDK-React/field/Decimal/mock.ts.mustache +1 -1
  76. package/src/tasks/create/templates/SDK-React/field/Decimal-Currency/config.json.mustache +1 -1
  77. package/src/tasks/create/templates/SDK-React/field/Decimal-Currency/demo.stories.tsx.mustache +1 -1
  78. package/src/tasks/create/templates/SDK-React/field/Decimal-Currency/index.tsx.mustache +47 -37
  79. package/src/tasks/create/templates/SDK-React/field/Decimal-Currency/mock.ts.mustache +1 -1
  80. package/src/tasks/create/templates/SDK-React/field/Decimal-Percentage/config.json.mustache +1 -1
  81. package/src/tasks/create/templates/SDK-React/field/Decimal-Percentage/index.tsx.mustache +36 -21
  82. package/src/tasks/create/templates/SDK-React/field/Decimal-Percentage/mock.ts.mustache +1 -1
  83. package/src/tasks/create/templates/SDK-React/field/Icon-Button-URL/config.json.mustache +64 -0
  84. package/src/tasks/create/templates/SDK-React/field/Icon-Button-URL/demo.stories.tsx.mustache +91 -0
  85. package/src/tasks/create/templates/SDK-React/field/Icon-Button-URL/index.tsx.mustache +160 -0
  86. package/src/tasks/create/templates/SDK-React/field/Icon-Button-URL/mock.ts.mustache +4 -0
  87. package/src/tasks/create/templates/SDK-React/field/Icon-Button-URL/styles.js.mustache +7 -0
  88. package/src/tasks/create/templates/SDK-React/field/Integer/config.json.mustache +1 -1
  89. package/src/tasks/create/templates/SDK-React/field/Integer/index.tsx.mustache +19 -20
  90. package/src/tasks/create/templates/SDK-React/field/Integer/mock.ts.mustache +1 -1
  91. package/src/tasks/create/templates/SDK-React/field/Picklist/index.tsx.mustache +26 -26
  92. package/src/tasks/create/templates/SDK-React/field/Picklist-RadioButtons/mock.ts.mustache +0 -1
  93. package/src/tasks/create/templates/SDK-React/field/Text/config.json.mustache +1 -1
  94. package/src/tasks/create/templates/SDK-React/field/Text/index.tsx.mustache +0 -1
  95. package/src/tasks/create/templates/SDK-React/field/Text/mock.ts.mustache +1 -1
  96. package/src/tasks/create/templates/SDK-React/field/Text-Email/config.json.mustache +1 -1
  97. package/src/tasks/create/templates/SDK-React/field/Text-Email/mock.ts.mustache +1 -1
  98. package/src/tasks/create/templates/SDK-React/field/Text-Input/config.json.mustache +1 -1
  99. package/src/tasks/create/templates/SDK-React/field/Text-Input/index.tsx.mustache +0 -1
  100. package/src/tasks/create/templates/SDK-React/field/Text-Input/mock.ts.mustache +1 -1
  101. package/src/tasks/create/templates/SDK-React/field/Text-Paragraph/index.tsx.mustache +1 -3
  102. package/src/tasks/create/templates/SDK-React/field/Text-Paragraph/mock.ts.mustache +1 -1
  103. package/src/tasks/create/templates/SDK-React/field/Text-Phone/index.tsx.mustache +17 -9
  104. package/src/tasks/create/templates/SDK-React/field/Text-URL/index.tsx.mustache +1 -2
  105. package/src/tasks/create/templates/SDK-React/field/Text-URL/mock.ts.mustache +1 -1
  106. package/src/tasks/create/templates/SDK-React/field/TimeOfDay/demo.stories.tsx.mustache +4 -4
  107. package/src/tasks/create/templates/SDK-React/field/TimeOfDay/index.tsx.mustache +0 -2
  108. package/src/tasks/create/templates/SDK-React/field/TimeOfDay/mock.ts.mustache +6 -6
  109. package/src/tasks/create/templates/SDK-React/template/DETAILS/demo.stories.tsx.mustache +1 -7
  110. package/src/tasks/create/templates/SDK-React/template/DETAILS/index.tsx.mustache +4 -9
  111. package/src/tasks/create/templates/SDK-React/template/DETAILS/mock.ts.mustache +197 -164
  112. package/src/tasks/create/templates/SDK-React/template/DETAILS-region/demo.stories.tsx.mustache +1 -6
  113. package/src/tasks/create/templates/SDK-React/template/DETAILS-region/index.tsx.mustache +4 -9
  114. package/src/tasks/create/templates/SDK-React/template/DETAILS-region/mock.ts.mustache +207 -163
  115. package/src/tasks/create/templates/SDK-React/template/FORM/config.json.mustache +1 -1
  116. package/src/tasks/create/templates/SDK-React/template/FORM/demo.stories.tsx.mustache +13 -1
  117. package/src/tasks/create/templates/SDK-React/template/FORM/index.tsx.mustache +14 -16
  118. package/src/tasks/create/templates/SDK-React/template/FORM/utils.ts.mustache +1 -1
  119. package/src/tasks/create/templates/SDK-React/template/FORM-region/demo.stories.tsx.mustache +0 -2
  120. package/src/tasks/create/templates/SDK-React/template/FORM-region/mock.ts.mustache +121 -122
  121. package/src/tasks/create/templates/SDK-React/template/PAGE/OneColumn.tsx.mustache +12 -13
  122. package/src/tasks/create/templates/SDK-React/template/PAGE/demo.stories.tsx.mustache +1 -1
  123. package/src/tasks/create/templates/SDK-React/template/PAGE/index.tsx.mustache +3 -5
  124. package/src/tasks/create/templates/SDK-React/template/PAGE/mock.ts.mustache +8 -9
  125. package/src/tasks/create/templates/SDK-React/widget/CASE/config.json.mustache +2 -2
  126. package/src/tasks/create/templates/SDK-React/widget/CASE/demo.stories.tsx.mustache +19 -20
  127. package/src/tasks/create/templates/SDK-React/widget/CASE/index.tsx.mustache +3 -3
  128. package/src/tasks/create/templates/SDK-React/widget/PAGE/config.json.mustache +43 -43
  129. package/src/tasks/create/templates/SDK-React/widget/PAGE/demo.stories.tsx.mustache +45 -2
  130. package/src/tasks/create/templates/SDK-React/widget/PAGE/index.tsx.mustache +168 -3
  131. package/src/tasks/create/templates/SDK-React/widget/PAGE/mock.ts.mustache +26 -1
  132. package/src/tasks/create/templates/SDK-React/widget/PAGE-CASE/demo.stories.tsx.mustache +20 -21
  133. package/src/tasks/create/templates/SDK-React/widget/PAGE-CASE/index.tsx.mustache +0 -1
  134. package/src/tasks/create/templates/SDK-React/widget/PAGE-CASE/mock.ts.mustache +0 -1
  135. package/src/tasks/create-all/index.js +3 -0
  136. package/src/tasks/publish/helper.js +4 -0
  137. package/src/tasks/publish-all/helper.js +6 -2
  138. package/src/tasks/validator/index.js +7 -1
  139. package/tests/assets/sdk-r/components/create/custom-constellation/field/Pega_DXIL_MyTestText/index.tsx +94 -4
  140. package/tests/assets/sdk-r/components/create/custom-sdk/field/Pega_DXIL_MyTestText/config.json +1 -1
  141. package/tests/assets/sdk-r/components/create/custom-sdk/field/Pega_DXIL_MyTestText/index.tsx +0 -1
  142. package/tests/assets/sdk-r/components/create/custom-sdk/field/Pega_DXIL_MyTestText/mock.ts +1 -1
  143. package/tests/assets/sdk-r/components/create/override-sdk/designSystemExtension/CaseSummaryFields/CaseSummaryFields.tsx +2 -2
  144. package/tests/assets/sdk-r/components/create/override-sdk/field/CancelAlert/CancelAlert.tsx +2 -0
  145. package/tests/assets/sdk-r/components/create/override-sdk/field/Currency/Currency.tsx +36 -26
  146. package/tests/assets/sdk-r/components/create/override-sdk/field/Decimal/Decimal.tsx +33 -19
  147. package/tests/assets/sdk-r/components/create/override-sdk/field/Multiselect/Multiselect.tsx +1 -1
  148. package/tests/assets/sdk-r/components/create/override-sdk/field/Percentage/Percentage.tsx +33 -18
  149. package/tests/assets/sdk-r/components/create/override-sdk/field/Phone/Phone.tsx +16 -7
  150. package/tests/assets/sdk-r/components/create/override-sdk/field/ScalarList/ScalarList.tsx +2 -0
  151. package/tests/assets/sdk-r/components/create/override-sdk/field/UserReference/UserReference.tsx +11 -1
  152. package/tests/assets/sdk-r/components/create/override-sdk/infra/Assignment/Assignment.tsx +28 -1
  153. package/tests/assets/sdk-r/components/create/override-sdk/infra/DashboardFilter/DashboardFilter.tsx +1 -1
  154. package/tests/assets/sdk-r/components/create/override-sdk/infra/DeferLoad/DeferLoad.tsx +5 -1
  155. package/tests/assets/sdk-r/components/create/override-sdk/infra/MultiStep/MultiStep.tsx +3 -1
  156. package/tests/assets/sdk-r/components/create/override-sdk/infra/NavBar/NavBar.tsx +2 -2
  157. package/tests/assets/sdk-r/components/create/override-sdk/template/CaseView/CaseView.tsx +2 -1
  158. package/tests/assets/sdk-r/components/create/override-sdk/template/CaseViewActionsMenu/CaseViewActionsMenu.tsx +1 -1
  159. package/tests/assets/sdk-r/components/create/override-sdk/template/DataReference/DataReference.tsx +1 -1
  160. package/tests/assets/sdk-r/components/create/override-sdk/template/DefaultForm/utils/index.ts +2 -7
  161. package/tests/assets/sdk-r/components/create/override-sdk/template/Details/Details.tsx +1 -1
  162. package/tests/assets/sdk-r/components/create/override-sdk/template/DetailsThreeColumn/DetailsThreeColumn.tsx +1 -1
  163. package/tests/assets/sdk-r/components/create/override-sdk/template/DetailsTwoColumn/DetailsTwoColumn.tsx +1 -1
  164. package/tests/assets/sdk-r/components/create/override-sdk/template/FieldGroupTemplate/FieldGroupTemplate.tsx +2 -0
  165. package/tests/assets/sdk-r/components/create/override-sdk/template/ListView/ListView.tsx +20 -31
  166. package/tests/assets/sdk-r/components/create/override-sdk/template/MultiReferenceReadOnly/MultiReferenceReadOnly.tsx +1 -1
  167. package/tests/assets/sdk-r/components/create/override-sdk/template/NarrowWideDetails/NarrowWideDetails.tsx +1 -1
  168. package/tests/assets/sdk-r/components/create/override-sdk/template/PromotedFilters/PromotedFilters.tsx +1 -0
  169. package/tests/assets/sdk-r/components/create/override-sdk/template/SimpleTableManual/SimpleTableManual.tsx +4 -0
  170. package/tests/assets/sdk-r/components/create/override-sdk/template/SingleReferenceReadOnly/SingleReferenceReadOnly.tsx +1 -1
  171. package/tests/assets/sdk-r/components/create/override-sdk/template/WideNarrowDetails/WideNarrowDetails.tsx +1 -1
  172. package/tests/assets/sdk-r/components/create/override-sdk/widget/Attachment/Attachment.tsx +3 -2
  173. package/tests/assets/sdk-r/components/create/override-sdk/widget/FileUtility/FileUtility.tsx +1 -1
  174. package/tests/assets/sdk-r/components/create/override-sdk/widget/QuickCreate/QuickCreate.tsx +1 -0
  175. package/tests/assets/sdk-r/components/createAll/custom-constellation/field/Pega_DXIL_MyBoolean/index.tsx +3 -2
  176. package/tests/assets/sdk-r/components/createAll/custom-constellation/field/Pega_DXIL_MyIconButtonURL/PConnProps.d.ts +46 -0
  177. package/tests/assets/sdk-r/components/createAll/custom-constellation/field/Pega_DXIL_MyIconButtonURL/demo.stories.tsx +99 -0
  178. package/tests/assets/sdk-r/components/createAll/custom-constellation/field/Pega_DXIL_MyIconButtonURL/index.tsx +201 -0
  179. package/tests/assets/sdk-r/components/createAll/custom-constellation/field/Pega_DXIL_MyIconButtonURL/mock.ts +5 -0
  180. package/tests/assets/sdk-r/components/createAll/custom-constellation/field/Pega_DXIL_MyIconButtonURL/styles.ts +8 -0
  181. package/tests/assets/sdk-r/components/createAll/custom-constellation/field/Pega_DXIL_MyPicklist/index.tsx +0 -1
  182. package/tests/assets/sdk-r/components/createAll/custom-constellation/field/Pega_DXIL_MySearchbox/date.ts +15 -37
  183. package/tests/assets/sdk-r/components/createAll/custom-constellation/field/Pega_DXIL_MySearchbox/index.tsx +11 -0
  184. package/tests/assets/sdk-r/components/createAll/custom-constellation/field/Pega_DXIL_MySearchbox/utils.ts +3 -0
  185. package/tests/assets/sdk-r/components/createAll/custom-constellation/field/Pega_DXIL_MyText/index.tsx +94 -4
  186. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyDetails/Avatar.tsx +78 -0
  187. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyDetails/DetailsRender.tsx +52 -0
  188. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyDetails/HighlightRender.tsx +46 -0
  189. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyDetails/Operator.tsx +215 -0
  190. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyDetails/demo.stories.tsx +77 -23
  191. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyDetails/index.tsx +48 -37
  192. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyDetails/mock.ts +78 -20
  193. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyDetails/styles.ts +16 -0
  194. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyForm/DetailsRender.tsx +59 -0
  195. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyForm/demo.stories.tsx +73 -8
  196. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyForm/index.tsx +30 -5
  197. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyPage/GetNextWork.tsx +2 -1
  198. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyPage/localizations.json +4 -2
  199. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyTwoColumnDetails/Avatar.tsx +78 -0
  200. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyTwoColumnDetails/DetailsRender.tsx +52 -0
  201. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyTwoColumnDetails/HighlightRender.tsx +46 -0
  202. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyTwoColumnDetails/Operator.tsx +215 -0
  203. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyTwoColumnDetails/demo.stories.tsx +95 -26
  204. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyTwoColumnDetails/index.tsx +39 -36
  205. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyTwoColumnDetails/mock.ts +68 -10
  206. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyTwoColumnDetails/styles.ts +15 -0
  207. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyTwoColumnForm/DetailsRender.tsx +59 -0
  208. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyTwoColumnForm/demo.stories.tsx +95 -15
  209. package/tests/assets/sdk-r/components/createAll/custom-constellation/template/Pega_DXIL_MyTwoColumnForm/index.tsx +23 -4
  210. package/tests/assets/sdk-r/components/createAll/custom-constellation/widget/Pega_DXIL_MyPageWidget/demo.stories.tsx +87 -6
  211. package/tests/assets/sdk-r/components/createAll/custom-constellation/widget/Pega_DXIL_MyPageWidget/index.tsx +67 -5
  212. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyBoolean/demo.stories.tsx +1 -1
  213. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyBoolean/mock.ts +8 -8
  214. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyCurrency/config.json +1 -1
  215. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyCurrency/demo.stories.tsx +1 -1
  216. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyCurrency/index.tsx +44 -34
  217. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyCurrency/mock.ts +1 -1
  218. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyDate/index.tsx +2 -2
  219. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyDate/mock.ts +7 -7
  220. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyDateTime/demo.stories.tsx +1 -1
  221. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyDateTime/index.tsx +2 -3
  222. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyDateTime/mock.ts +6 -6
  223. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyDecimal/index.tsx +48 -32
  224. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyDecimal/mock.ts +1 -1
  225. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyEmail/config.json +1 -1
  226. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyEmail/mock.ts +1 -1
  227. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyIconButtonURL/config.json +64 -0
  228. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyIconButtonURL/demo.stories.tsx +91 -0
  229. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyIconButtonURL/index.tsx +157 -0
  230. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyIconButtonURL/mock.ts +4 -0
  231. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyIconButtonURL/styles.js +7 -0
  232. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyInteger/config.json +1 -1
  233. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyInteger/index.tsx +16 -17
  234. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyInteger/mock.ts +1 -1
  235. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyParagraph/index.tsx +1 -3
  236. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyParagraph/mock.ts +1 -1
  237. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyPercentage/config.json +1 -1
  238. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyPercentage/index.tsx +34 -19
  239. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyPercentage/mock.ts +1 -1
  240. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyPhone/index.tsx +17 -9
  241. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyPicklist/index.tsx +23 -23
  242. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyRadiobuttons/mock.ts +0 -1
  243. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyText/config.json +1 -1
  244. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyText/index.tsx +0 -1
  245. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyText/mock.ts +1 -1
  246. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyTextInput/config.json +1 -1
  247. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyTextInput/index.tsx +0 -1
  248. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyTextInput/mock.ts +1 -1
  249. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyTimeOfDay/demo.stories.tsx +4 -4
  250. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyTimeOfDay/index.tsx +0 -2
  251. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyTimeOfDay/mock.ts +6 -6
  252. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyURL/index.tsx +1 -2
  253. package/tests/assets/sdk-r/components/createAll/custom-sdk/field/Pega_DXIL_MyURL/mock.ts +1 -1
  254. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyDetails/demo.stories.tsx +1 -7
  255. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyDetails/index.tsx +4 -9
  256. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyDetails/mock.ts +197 -164
  257. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyForm/config.json +1 -1
  258. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyForm/demo.stories.tsx +13 -1
  259. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyForm/index.tsx +11 -13
  260. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyForm/utils.ts +1 -1
  261. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyPage/OneColumn.tsx +12 -13
  262. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyPage/demo.stories.tsx +1 -1
  263. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyPage/index.tsx +3 -5
  264. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyPage/mock.ts +8 -9
  265. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyTwoColumnDetails/demo.stories.tsx +1 -6
  266. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyTwoColumnDetails/index.tsx +4 -9
  267. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyTwoColumnDetails/mock.ts +207 -163
  268. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyTwoColumnForm/demo.stories.tsx +0 -2
  269. package/tests/assets/sdk-r/components/createAll/custom-sdk/template/Pega_DXIL_MyTwoColumnForm/mock.ts +121 -122
  270. package/tests/assets/sdk-r/components/createAll/custom-sdk/widget/Pega_DXIL_MyCaseWidget/config.json +2 -2
  271. package/tests/assets/sdk-r/components/createAll/custom-sdk/widget/Pega_DXIL_MyCaseWidget/demo.stories.tsx +19 -20
  272. package/tests/assets/sdk-r/components/createAll/custom-sdk/widget/Pega_DXIL_MyCaseWidget/index.tsx +3 -3
  273. package/tests/assets/sdk-r/components/createAll/custom-sdk/widget/Pega_DXIL_MyPageCaseWidget/demo.stories.tsx +20 -21
  274. package/tests/assets/sdk-r/components/createAll/custom-sdk/widget/Pega_DXIL_MyPageCaseWidget/index.tsx +0 -1
  275. package/tests/assets/sdk-r/components/createAll/custom-sdk/widget/Pega_DXIL_MyPageCaseWidget/mock.ts +0 -1
  276. package/tests/assets/sdk-r/components/createAll/custom-sdk/widget/Pega_DXIL_MyPageWidget/config.json +43 -43
  277. package/tests/assets/sdk-r/components/createAll/custom-sdk/widget/Pega_DXIL_MyPageWidget/demo.stories.tsx +45 -2
  278. package/tests/assets/sdk-r/components/createAll/custom-sdk/widget/Pega_DXIL_MyPageWidget/index.tsx +168 -3
  279. package/tests/assets/sdk-r/components/createAll/custom-sdk/widget/Pega_DXIL_MyPageWidget/mock.ts +26 -1
  280. package/tests/assets/sdk-r/components/createAll/override-sdk/designSystemExtension/CaseSummaryFields/CaseSummaryFields.tsx +2 -2
  281. package/tests/assets/sdk-r/components/createAll/override-sdk/field/CancelAlert/CancelAlert.tsx +2 -0
  282. package/tests/assets/sdk-r/components/createAll/override-sdk/field/Currency/Currency.tsx +36 -26
  283. package/tests/assets/sdk-r/components/createAll/override-sdk/field/Decimal/Decimal.tsx +33 -19
  284. package/tests/assets/sdk-r/components/createAll/override-sdk/field/Multiselect/Multiselect.tsx +1 -1
  285. package/tests/assets/sdk-r/components/createAll/override-sdk/field/Percentage/Percentage.tsx +33 -18
  286. package/tests/assets/sdk-r/components/createAll/override-sdk/field/Phone/Phone.tsx +16 -7
  287. package/tests/assets/sdk-r/components/createAll/override-sdk/field/ScalarList/ScalarList.tsx +2 -0
  288. package/tests/assets/sdk-r/components/createAll/override-sdk/field/UserReference/UserReference.tsx +11 -1
  289. package/tests/assets/sdk-r/components/createAll/override-sdk/infra/Assignment/Assignment.tsx +28 -1
  290. package/tests/assets/sdk-r/components/createAll/override-sdk/infra/DashboardFilter/DashboardFilter.tsx +1 -1
  291. package/tests/assets/sdk-r/components/createAll/override-sdk/infra/DeferLoad/DeferLoad.tsx +5 -1
  292. package/tests/assets/sdk-r/components/createAll/override-sdk/infra/MultiStep/MultiStep.tsx +3 -1
  293. package/tests/assets/sdk-r/components/createAll/override-sdk/infra/NavBar/NavBar.tsx +2 -2
  294. package/tests/assets/sdk-r/components/createAll/override-sdk/template/CaseView/CaseView.tsx +2 -1
  295. package/tests/assets/sdk-r/components/createAll/override-sdk/template/CaseViewActionsMenu/CaseViewActionsMenu.tsx +1 -1
  296. package/tests/assets/sdk-r/components/createAll/override-sdk/template/DataReference/DataReference.tsx +1 -1
  297. package/tests/assets/sdk-r/components/createAll/override-sdk/template/DefaultForm/utils/index.ts +2 -7
  298. package/tests/assets/sdk-r/components/createAll/override-sdk/template/Details/Details.tsx +1 -1
  299. package/tests/assets/sdk-r/components/createAll/override-sdk/template/DetailsThreeColumn/DetailsThreeColumn.tsx +1 -1
  300. package/tests/assets/sdk-r/components/createAll/override-sdk/template/DetailsTwoColumn/DetailsTwoColumn.tsx +1 -1
  301. package/tests/assets/sdk-r/components/createAll/override-sdk/template/FieldGroupTemplate/FieldGroupTemplate.tsx +2 -0
  302. package/tests/assets/sdk-r/components/createAll/override-sdk/template/ListView/ListView.tsx +20 -31
  303. package/tests/assets/sdk-r/components/createAll/override-sdk/template/MultiReferenceReadOnly/MultiReferenceReadOnly.tsx +1 -1
  304. package/tests/assets/sdk-r/components/createAll/override-sdk/template/NarrowWideDetails/NarrowWideDetails.tsx +1 -1
  305. package/tests/assets/sdk-r/components/createAll/override-sdk/template/PromotedFilters/PromotedFilters.tsx +1 -0
  306. package/tests/assets/sdk-r/components/createAll/override-sdk/template/SimpleTableManual/SimpleTableManual.tsx +4 -0
  307. package/tests/assets/sdk-r/components/createAll/override-sdk/template/SingleReferenceReadOnly/SingleReferenceReadOnly.tsx +1 -1
  308. package/tests/assets/sdk-r/components/createAll/override-sdk/template/WideNarrowDetails/WideNarrowDetails.tsx +1 -1
  309. package/tests/assets/sdk-r/components/createAll/override-sdk/widget/Attachment/Attachment.tsx +3 -2
  310. package/tests/assets/sdk-r/components/createAll/override-sdk/widget/FileUtility/FileUtility.tsx +1 -1
  311. package/tests/assets/sdk-r/components/createAll/override-sdk/widget/QuickCreate/QuickCreate.tsx +1 -0
@@ -14,6 +14,7 @@
14
14
  type="url"
15
15
  [value]="value$"
16
16
  [required]="bRequired$"
17
+ [attr.data-test-id]="testId"
17
18
  [formControl]="fieldControl"
18
19
  (change)="fieldOnChange($event)"
19
20
  (blur)="fieldOnBlur($event)"
@@ -36,6 +36,7 @@ export class {{COMPONENT_CLASS_NAME}}Component implements OnInit, OnDestroy {
36
36
  bVisible$ = true;
37
37
  displayMode$?: string = '';
38
38
  controlName$: string;
39
+ testId = '';
39
40
  bHasForm$ = true;
40
41
  componentReference = '';
41
42
  helperText: string;
@@ -106,6 +107,7 @@ export class {{COMPONENT_CLASS_NAME}}Component implements OnInit, OnDestroy {
106
107
  this.value$ = this.configProps$.value;
107
108
  }
108
109
 
110
+ this.testId = this.configProps$.testId;
109
111
  this.label$ = this.configProps$.label;
110
112
  this.displayMode$ = this.configProps$.displayMode;
111
113
  this.helperText = this.configProps$.helperText;
@@ -14,6 +14,7 @@
14
14
  type="time"
15
15
  [value]="value$"
16
16
  [required]="bRequired$"
17
+ [attr.data-test-id]="testId"
17
18
  [formControl]="fieldControl"
18
19
  (change)="fieldOnChange($event)"
19
20
  (blur)="fieldOnBlur($event)"
@@ -36,6 +36,7 @@ export class {{COMPONENT_CLASS_NAME}}Component implements OnInit, OnDestroy {
36
36
  bVisible$ = true;
37
37
  displayMode$?: string = '';
38
38
  controlName$: string;
39
+ testId = '';
39
40
  bHasForm$ = true;
40
41
  componentReference = '';
41
42
  helperText: string;
@@ -100,6 +101,7 @@ export class {{COMPONENT_CLASS_NAME}}Component implements OnInit, OnDestroy {
100
101
  // moved this from ngOnInit() and call this from there instead...
101
102
  this.configProps$ = this.pConn$.resolveConfigProps(this.pConn$.getConfigProps()) as {{COMPONENT_CLASS_NAME}}Props;
102
103
 
104
+ this.testId = this.configProps$.testId;
103
105
  this.label$ = this.configProps$.label;
104
106
  this.displayMode$ = this.configProps$.displayMode;
105
107
 
@@ -11,7 +11,7 @@
11
11
  .psdk-two-column-column {
12
12
  width: 50%;
13
13
  float: left;
14
- padding: 0rem 0.3125rem;
14
+ padding: 0rem 0rem;
15
15
  height: 100%;
16
16
  }
17
17
 
@@ -50,7 +50,7 @@ export class {{COMPONENT_CLASS_NAME}}Component implements OnInit {
50
50
 
51
51
  const tableDataResults = this.updateData(historyJSON.data.data, this.fields$);
52
52
 
53
- this.displayedColumns$ = this.getDisplayColumns(this.fields$ as never[]);
53
+ this.displayedColumns$ = this.getDisplayColumns(this.fields$);
54
54
 
55
55
  this.repeatList$ = new MatTableDataSource(tableDataResults);
56
56
 
@@ -87,7 +87,7 @@ export class {{COMPONENT_CLASS_NAME}}Component implements OnInit {
87
87
  }
88
88
 
89
89
  getDisplayColumns(fields: any[] = []) {
90
- return fields.map((field: { fieldName: any }) => {
90
+ return fields.map(field => {
91
91
  return field.fieldName;
92
92
  });
93
93
  }
@@ -1,9 +1,20 @@
1
1
  import type { Meta, StoryObj } from '@storybook/angular';
2
2
 
3
- import { configProps } from './mock';
3
+ import { configProps, worklistData } from './mock';
4
4
 
5
5
  import {{! pick new delimiters for mustache }}{{=<% %>=}}{<%={{ }}=%> {{COMPONENT_CLASS_NAME}}Component {{=<% %>=}}}<%={{ }}=%>{{! revert delimiters for mustache }} from './{{COMPONENT_CLASS_NAME_KEBAB}}.component';
6
6
 
7
+ window.PCore = {
8
+ ...window.PCore,
9
+ getDataApiUtils: () => {
10
+ return {
11
+ getData: () => {
12
+ return Promise.resolve(worklistData);
13
+ }
14
+ } as any;
15
+ }
16
+ };
17
+
7
18
  const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
8
19
  title: '{{COMPONENT_CLASS_NAME}}',
9
20
  component: {{COMPONENT_CLASS_NAME}}Component,
@@ -12,10 +23,16 @@ const meta: Meta<{{COMPONENT_CLASS_NAME}}Component> = {
12
23
  props: {
13
24
  ...args,
14
25
  pConn$: {
15
- getConfigProps: () => {
16
- return configProps;
17
- }
18
- } as any
26
+ getContextName: () => {
27
+ return 'app/primary_1';
28
+ },
29
+ getLocalizedValue: value => {
30
+ return value;
31
+ },
32
+ getConfigProps: () => {
33
+ return configProps;
34
+ }
35
+ } as any
19
36
  }
20
37
  })
21
38
  };
@@ -21,3 +21,28 @@ export const configProps = {
21
21
  fields: {}
22
22
  }
23
23
  };
24
+
25
+ export const worklistData = {
26
+ data: {
27
+ data: [
28
+ {
29
+ pxProcessName: 'Loan',
30
+ pxRefObjectInsName: ' A-8002',
31
+ pyAssignmentStatus: 'New',
32
+ pxTaskLabel: 'Details'
33
+ },
34
+ {
35
+ pxProcessName: 'Loan',
36
+ pxRefObjectInsName: ' A-7001',
37
+ pyAssignmentStatus: 'Open',
38
+ pxTaskLabel: 'Info'
39
+ },
40
+ {
41
+ pxProcessName: 'Loan',
42
+ pxRefObjectInsName: ' A-9000',
43
+ pyAssignmentStatus: 'Open',
44
+ pxTaskLabel: 'Amount'
45
+ }
46
+ ]
47
+ }
48
+ };
@@ -12,6 +12,16 @@
12
12
  </ul>
13
13
  </div>
14
14
  </div>
15
- <a *ngIf="configProps$.whatsnewlink !== ''" mat-raised-button color="primary" [href]="configProps$.whatsnewlink">See what's new</a>
15
+ <a *ngIf="configProps$.whatsnewlink != ''" mat-raised-button color="primary" [href]="configProps$.whatsnewlink">See what's new</a>
16
16
  </article>
17
+ <br />
18
+ <table mat-table [dataSource]="workList">
19
+ <ng-container *ngFor="let dCol of fields$" [matColumnDef]="dCol.fieldName">
20
+ <th mat-header-cell *matHeaderCellDef>{{ dCol.label }}</th>
21
+ <td mat-cell *matCellDef="let element">{{ element[dCol.fieldName] }}</td>
22
+ </ng-container>
23
+
24
+ <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
25
+ <tr mat-row *matRowDef="let row; columns: displayedColumns"></tr>
26
+ </table>
17
27
  <%={{ }}=%> {{! revert delimiters for mustache }}
@@ -1,6 +1,8 @@
1
1
  import { Component, OnInit, Input } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { MatButtonModule } from '@angular/material/button';
4
+ import { MatTableDataSource, MatTableModule } from '@angular/material/table';
5
+ import { Utils } from '@pega/angular-sdk-components';
4
6
 
5
7
  interface {{COMPONENT_CLASS_NAME}}Props {
6
8
  // If any, enter additional props that only exist on this component
@@ -16,13 +18,20 @@ interface {{COMPONENT_CLASS_NAME}}Props {
16
18
  templateUrl: './{{COMPONENT_CLASS_NAME_KEBAB}}.component.html',
17
19
  styleUrls: ['./{{COMPONENT_CLASS_NAME_KEBAB}}.component.scss'],
18
20
  standalone: true,
19
- imports: [CommonModule, MatButtonModule]
21
+ imports: [CommonModule, MatButtonModule, MatTableModule]
20
22
  })
21
23
  export class {{COMPONENT_CLASS_NAME}}Component implements OnInit {
22
24
  @Input() pConn$: typeof PConnect;
23
25
 
24
26
  configProps$: {{COMPONENT_CLASS_NAME}}Props;
25
27
  details$: any[];
28
+ fields$: any[];
29
+ displayedColumns: any[];
30
+
31
+ workList: MatTableDataSource<any>;
32
+ waitingForData = false;
33
+
34
+ constructor(private utils: Utils) {}
26
35
 
27
36
  ngOnInit(): void {
28
37
  this.configProps$ = this.pConn$.getConfigProps();
@@ -31,5 +40,88 @@ export class {{COMPONENT_CLASS_NAME}}Component implements OnInit {
31
40
  if (datasource?.source) {
32
41
  this.details$ = datasource.source.map(item => item.name);
33
42
  }
43
+
44
+ // going to get data for worklist to put into a table
45
+ // data comes from calling a PCore function to get
46
+ // get data from a data page and a PConnect function
47
+ // to get getContextName
48
+
49
+ const dataViewName = 'D_pyMyWorkList';
50
+ const context = this.pConn$.getContextName();
51
+ this.waitingForData = true;
52
+ const workListData = PCore.getDataApiUtils().getData(dataViewName, {}, context) as Promise<any>;
53
+
54
+ workListData
55
+ .then((response: any) => {
56
+ if (response.data.data !== null) {
57
+ this.fields$ = [
58
+ {
59
+ label: this.pConn$.getLocalizedValue('Case type', '', ''),
60
+ type: 'TextInput',
61
+ fieldName: 'pxProcessName'
62
+ }, // 2nd and 3rd args empty string until typedef marked correctly
63
+ {
64
+ label: this.pConn$.getLocalizedValue('Key', '', ''),
65
+ type: 'TextInput',
66
+ fieldName: 'pxRefObjectInsName'
67
+ }, // 2nd and 3rd args empty string until typedef marked correctly
68
+ {
69
+ label: this.pConn$.getLocalizedValue('Status', '', ''),
70
+ type: 'TextInput',
71
+ fieldName: 'pyAssignmentStatus'
72
+ }, // 2nd and 3rd args empty string until typedef marked correctly
73
+ {
74
+ label: this.pConn$.getLocalizedValue('Stage', '', ''),
75
+ type: 'TextInput',
76
+ fieldName: 'pxTaskLabel'
77
+ } // 2nd and 3rd args empty string until typedef marked correctly
78
+ ];
79
+ const tableDataResults = this.updateData(response.data.data, this.fields$);
80
+ this.displayedColumns = this.getDisplayColumns(this.fields$);
81
+ this.workList = new MatTableDataSource(tableDataResults);
82
+ this.waitingForData = false;
83
+ } else {
84
+ this.workList = new MatTableDataSource();
85
+ this.waitingForData = false;
86
+ }
87
+ })
88
+ .catch((error: any) => {
89
+ this.workList = new MatTableDataSource();
90
+ this.waitingForData = false;
91
+ console.log(error);
92
+ });
93
+ }
94
+
95
+ updateData(listData: any[], fieldData: any[]): any[] {
96
+ const returnList: any[] = new Array<any>();
97
+ listData.forEach(row => {
98
+ const rowData = JSON.parse(JSON.stringify(row));
99
+
100
+ for (const field of fieldData) {
101
+ const fieldName = field.fieldName;
102
+ let formattedDate;
103
+
104
+ switch (field.type) {
105
+ case 'Date':
106
+ formattedDate = this.utils.generateDate(rowData[fieldName], 'Date-Short-YYYY');
107
+ rowData[fieldName] = formattedDate;
108
+ break;
109
+ case 'DateTime':
110
+ formattedDate = this.utils.generateDateTime(rowData[fieldName], 'DateTime-Short-YYYY');
111
+ rowData[fieldName] = formattedDate;
112
+ break;
113
+ default:
114
+ break;
115
+ }
116
+ }
117
+ returnList.push(rowData);
118
+ });
119
+ return returnList;
120
+ }
121
+
122
+ getDisplayColumns(fields: any[] = []) {
123
+ return fields.map(field => {
124
+ return field.fieldName;
125
+ });
34
126
  }
35
127
  }
@@ -51,7 +51,7 @@ export const Base{{COMPONENT_CLASS_NAME}}: Story = args => {
51
51
  }
52
52
  };
53
53
 
54
- return <{{COMPONENT_CLASS_NAME}} {...props} {...args} value={value} />
54
+ return <{{COMPONENT_CLASS_NAME}} {...props} {...args} value={value} />;
55
55
  };
56
56
 
57
57
  Base{{COMPONENT_CLASS_NAME}}.args = {
@@ -1,11 +1,11 @@
1
1
  export const configProps = {
2
- caption: "Boolean Caption SDK",
2
+ caption: 'Boolean Caption SDK',
3
3
  value: false,
4
- trueLabel: "Yes",
5
- falseLabel: "No",
6
- label: "Boolean Sample",
7
- helperText: "Boolean Helper Text",
8
- testId: "boolean-12345678",
4
+ trueLabel: 'Yes',
5
+ falseLabel: 'No',
6
+ label: 'Boolean Sample',
7
+ helperText: 'Boolean Helper Text',
8
+ testId: 'boolean-12345678',
9
9
  hasSuggestions: false,
10
10
  readOnly: false,
11
11
  disabled: false,
@@ -17,6 +17,6 @@ export const configProps = {
17
17
  };
18
18
 
19
19
  export const stateProps = {
20
- value: ".BooleanSample",
20
+ value: '.BooleanSample',
21
21
  hasSuggestions: false
22
- };
22
+ };
@@ -2,7 +2,7 @@ import { KeyboardDatePicker, MuiPickersUtilsProvider } from '@material-ui/picker
2
2
  import DayjsUtils from '@date-io/dayjs';
3
3
  import handleEvent from '@pega/react-sdk-components/lib/components/helpers/event-utils';
4
4
  import { format } from '@pega/react-sdk-components/lib/components/helpers/formatters';
5
- import { dateFormatInfoDefault, getDateFormatInfo} from '@pega/react-sdk-components/lib/components/helpers/date-format-utils';
5
+ import { dateFormatInfoDefault, getDateFormatInfo } from '@pega/react-sdk-components/lib/components/helpers/date-format-utils';
6
6
  import { getComponentFromMap } from '@pega/react-sdk-components/lib/bridge/helpers/sdk_component_map';
7
7
  import { PConnFieldProps } from '@pega/react-sdk-components/lib/types/PConnProps';
8
8
  import Styled{{COMPONENT_CLASS_NAME}}Wrapper from './styles';
@@ -118,7 +118,7 @@ export default function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}
118
118
  InputProps={{ ...testProp }}
119
119
  <%={{ }}=%> {{! revert delimiters for mustache }}
120
120
  />
121
- </MuiPickersUtilsProvider>
121
+ </MuiPickersUtilsProvider>
122
122
  </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
123
123
  );
124
124
  }
@@ -1,8 +1,8 @@
1
1
  export const configProps = {
2
- value: "",
3
- label: "Date Sample",
4
- helperText: "Date Helper Text",
5
- testId: "date-12345678",
2
+ value: '',
3
+ label: 'Date Sample',
4
+ helperText: 'Date Helper Text',
5
+ testId: 'date-12345678',
6
6
  readOnly: false,
7
7
  disabled: false,
8
8
  required: true,
@@ -10,9 +10,9 @@ export const configProps = {
10
10
  hideLabel: false,
11
11
  displayMode: '',
12
12
  validatemessage: ''
13
- }
13
+ };
14
14
 
15
15
  export const stateProps = {
16
- value: ".DateSample",
16
+ value: '.DateSample',
17
17
  hasSuggestions: false
18
- }
18
+ };
@@ -22,7 +22,7 @@ window.PCore = {
22
22
  return value;
23
23
  }
24
24
  };
25
- },
25
+ }
26
26
  };
27
27
 
28
28
  const meta: Meta<typeof {{COMPONENT_CLASS_NAME}}> = {
@@ -2,7 +2,7 @@ import { KeyboardDateTimePicker, MuiPickersUtilsProvider } from '@material-ui/pi
2
2
  import DayjsUtils from '@date-io/dayjs';
3
3
  import handleEvent from '@pega/react-sdk-components/lib/components/helpers/event-utils';
4
4
  import { format } from '@pega/react-sdk-components/lib/components/helpers/formatters/';
5
- import { dateFormatInfoDefault, getDateFormatInfo} from '@pega/react-sdk-components/lib/components/helpers/date-format-utils';
5
+ import { dateFormatInfoDefault, getDateFormatInfo } from '@pega/react-sdk-components/lib/components/helpers/date-format-utils';
6
6
  import { getComponentFromMap } from '@pega/react-sdk-components/lib/bridge/helpers/sdk_component_map';
7
7
  import { PConnFieldProps } from '@pega/react-sdk-components/lib/types/PConnProps';
8
8
 
@@ -106,8 +106,7 @@ export default function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}
106
106
  onAccept={handleAccept}
107
107
  data-test-id={testId}
108
108
  />
109
- </MuiPickersUtilsProvider>
109
+ </MuiPickersUtilsProvider>
110
110
  </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
111
111
  );
112
112
  }
113
-
@@ -1,8 +1,8 @@
1
1
  export const configProps = {
2
- value: "",
3
- label: "Date Time Sample",
4
- helperText: "Date Time Helper Text",
5
- testId: "datetime-12345678",
2
+ value: '',
3
+ label: 'Date Time Sample',
4
+ helperText: 'Date Time Helper Text',
5
+ testId: 'datetime-12345678',
6
6
  readOnly: false,
7
7
  disabled: false,
8
8
  required: true,
@@ -13,6 +13,6 @@ export const configProps = {
13
13
  };
14
14
 
15
15
  export const stateProps = {
16
- value: ".DateTimeSample",
16
+ value: '.DateTimeSample',
17
17
  hasSuggestions: false
18
- };
18
+ };
@@ -1,5 +1,6 @@
1
- import CurrencyTextField from '@unicef/material-ui-currency-textfield';
2
-
1
+ import { TextField } from '@material-ui/core';
2
+ import { NumericFormat } from 'react-number-format';
3
+ import { useState } from 'react';
3
4
  import { getCurrencyCharacters, getCurrencyOptions } from '@pega/react-sdk-components/lib/components/field/Currency/currency-utils.js';
4
5
  import handleEvent from '@pega/react-sdk-components/lib/components/helpers/event-utils';
5
6
  import { format } from '@pega/react-sdk-components/lib/components/helpers/formatters';
@@ -7,13 +8,15 @@ import { getComponentFromMap } from '@pega/react-sdk-components/lib/bridge/helpe
7
8
  import { PConnFieldProps } from '@pega/react-sdk-components/lib/types/PConnProps';
8
9
  import Styled{{COMPONENT_CLASS_NAME}}Wrapper from './styles';
9
10
 
10
- // Using control from: https://github.com/unicef/material-ui-currency-textfield
11
+ /* Using react-number-format component here, since it allows formatting decimal values,
12
+ as per the locale.
13
+ */
11
14
 
12
15
  interface {{COMPONENT_CLASS_NAME}}Props extends PConnFieldProps {
13
16
  // If any, enter additional props that only exist on this componentName
14
17
  currencyISOCode?: string;
15
18
  decimalPrecision?: number;
16
- showGroupSeparators?: string;
19
+ showGroupSeparators?: boolean;
17
20
  formatter?: string;
18
21
  }
19
22
 
@@ -38,13 +41,15 @@ export default function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}
38
41
  displayMode,
39
42
  hideLabel,
40
43
  currencyISOCode = 'USD',
41
- decimalPrecision = 2,
42
- showGroupSeparators = true,
44
+ decimalPrecision,
45
+ showGroupSeparators,
43
46
  testId,
44
47
  placeholder,
45
48
  formatter
46
49
  } = props;
47
50
 
51
+ const [values, setValues] = useState(value.toString());
52
+
48
53
  const pConn = getPConnect();
49
54
  const actions = pConn.getActionsApi();
50
55
  const propName = (pConn.getStateProps() as any).value;
@@ -57,6 +62,12 @@ export default function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}
57
62
 
58
63
  const theCurrencyOptions = getCurrencyOptions(currencyISOCode);
59
64
 
65
+ let readOnlyProp = {}; // Note: empty if NOT ReadOnly
66
+
67
+ if (readOnly) {
68
+ readOnlyProp = { readOnly: true };
69
+ }
70
+
60
71
  let formattedValue = '';
61
72
  if (formatter === 'Currency') {
62
73
  formattedValue = format(value, formatter.toLowerCase(), theCurrencyOptions);
@@ -76,37 +87,42 @@ export default function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}
76
87
  'data-test-id': testId
77
88
  };
78
89
 
79
- function decimalOnBlur(event, inValue) {
80
- handleEvent(actions, 'changeNblur', propName, inValue !== '' ? Number(inValue) : inValue);
90
+ function decimalOnBlur() {
91
+ handleEvent(actions, 'changeNblur', propName, values);
81
92
  }
82
93
 
94
+ const handleChange = val => {
95
+ setValues(val.value);
96
+ };
97
+
83
98
  return (
84
- <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
85
- <CurrencyTextField
86
- fullWidth
87
- variant={readOnly ? 'standard' : 'outlined'}
88
- helperText={helperTextToDisplay}
89
- placeholder={placeholder ?? ''}
90
- size='small'
91
- required={required}
92
- disabled={disabled}
93
- error={status === 'error'}
94
- label={label}
95
- value={value}
96
- readOnly={!!readOnly}
97
- type='text'
98
- outputFormat='number'
99
- textAlign='left'
100
- {{! pick new delimiters for mustache }}
101
- {{=<% %>=}}
102
- InputProps={{ inputProps: { ...testProp } }}
103
- <%={{ }}=%> {{! revert delimiters for mustache }}
104
- currencySymbol={readOnly && formatter === 'Currency' ? theCurrSym : ''}
105
- decimalCharacter={theCurrDec}
106
- digitGroupSeparator={showGroupSeparators ? theCurrSep : ''}
107
- decimalPlaces={decimalPrecision}
108
- onBlur={!readOnly ? decimalOnBlur : undefined}
109
- />
110
- </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
99
+ <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
100
+ <NumericFormat
101
+ valueIsNumericString
102
+ fullWidth
103
+ variant={readOnly ? 'standard' : 'outlined'}
104
+ helperText={helperTextToDisplay}
105
+ placeholder={placeholder ?? ''}
106
+ size='small'
107
+ required={required}
108
+ disabled={disabled}
109
+ error={status === 'error'}
110
+ label={label}
111
+ value={values}
112
+ onValueChange={val => {
113
+ handleChange(val);
114
+ }}
115
+ onBlur={!readOnly ? decimalOnBlur : undefined}
116
+ prefix={readOnly && formatter === 'Currency' ? theCurrSym : ''}
117
+ decimalSeparator={theCurrDec}
118
+ thousandSeparator={showGroupSeparators ? theCurrSep : ''}
119
+ decimalScale={readOnly && formatter === 'Currency' ? undefined : decimalPrecision}
120
+ {{! pick new delimiters for mustache }}
121
+ {{=<% %>=}}
122
+ InputProps={{ ...readOnlyProp, inputProps: { ...testProp } }}
123
+ <%={{ }}=%> {{! revert delimiters for mustache }}
124
+ customInput={TextField}
125
+ />
126
+ </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
111
127
  );
112
128
  }
@@ -18,4 +18,4 @@ export const fieldMetadata = {
18
18
  type: 'Decimal',
19
19
  displayAs: 'pxNumber',
20
20
  label: 'Decimal sample'
21
- };
21
+ };
@@ -10,7 +10,7 @@
10
10
  "type": "{{TYPE}}",
11
11
  "subtype": {{{SUB_TYPE}}},
12
12
  "icon": "images/pz-currency-active.svg",
13
- "properties": [
13
+ "properties": [
14
14
  {
15
15
  "name": "label",
16
16
  "label": "Label value",
@@ -15,7 +15,7 @@ window.PCore = {
15
15
  return 'en-GB';
16
16
  }
17
17
  };
18
- }
18
+ }
19
19
  };
20
20
 
21
21
  const meta: Meta<typeof {{COMPONENT_CLASS_NAME}}> = {