@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
@@ -1,6 +1,7 @@
1
1
  import { Grid, Flex, FieldGroup, withConfiguration } from '@pega/cosmos-react-core';
2
2
 
3
3
  import type { PConnFieldProps } from './PConnProps';
4
+ import DetailsRender from './DetailsRender';
4
5
 
5
6
  import StyledPegaDxilMyTwoColumnFormWrapper from './styles';
6
7
 
@@ -11,19 +12,17 @@ interface PegaDxilMyTwoColumnFormProps extends PConnFieldProps {
11
12
  children: any;
12
13
  }
13
14
 
14
- // Duplicated runtime code from Constellation Design System Component
15
-
16
15
  // props passed in combination of props from property panel (config.json) and run time props from Constellation
17
16
  // any default values in config.pros should be set in defaultProps at bottom of this file
18
17
  function PegaDxilMyTwoColumnForm(props: PegaDxilMyTwoColumnFormProps) {
19
18
 
20
19
 
21
- const { children = [], label, showLabel, getPConnect } = props;
20
+ const { children = [], label, showLabel, getPConnect, readOnly, displayMode } = props;
22
21
  const propsToUse = { label, showLabel, ...getPConnect().getInheritedProps() };
23
22
 
24
23
  const numRegions = children?.length;
25
24
  const gridRepeat = "repeat(".concat(numRegions).concat(", 1fr)");
26
- const gridContainer = {"colGap" : 1};
25
+ const gridContainer = {"colGap" : 6};
27
26
  // @ts-ignore
28
27
  gridContainer.cols = gridRepeat;
29
28
  // @ts-ignore
@@ -33,6 +32,26 @@ function PegaDxilMyTwoColumnForm(props: PegaDxilMyTwoColumnFormProps) {
33
32
  // @ts-ignore
34
33
  flexContainer.gap = 2;
35
34
 
35
+ if (readOnly && readOnly === true || displayMode && displayMode === 'DISPLAY_ONLY') {
36
+ return (
37
+ <StyledPegaDxilMyTwoColumnFormWrapper>
38
+ <FieldGroup name={propsToUse.showLabel ? propsToUse.label : ''}>
39
+ <Grid container={gridContainer} data-testid={`column-count-${numRegions}`}>
40
+ {children.map((child: any, i: number) => (
41
+ <Flex
42
+ // @ts-ignore
43
+ container={{ direction: 'column', alignItems: 'normal', colGap: 1, rowGap: 1.5 }}
44
+ key={`r-${i + 1}`}
45
+ >
46
+ <DetailsRender child={child} />
47
+ </Flex>
48
+ ))}
49
+ </Grid>
50
+ </FieldGroup>
51
+ </StyledPegaDxilMyTwoColumnFormWrapper>
52
+ );
53
+ }
54
+
36
55
  return (
37
56
  <StyledPegaDxilMyTwoColumnFormWrapper>
38
57
  <FieldGroup name={propsToUse.showLabel ? propsToUse.label : ''}>
@@ -17,17 +17,98 @@ const meta: Meta<typeof PegaDxilMyPageWidget> = {
17
17
  export default meta;
18
18
  type Story = StoryObj<typeof PegaDxilMyPageWidget>;
19
19
 
20
+ if (!window.PCore) {
21
+ window.PCore = {};
22
+ }
23
+
24
+ const worklistData = {
25
+ data: {
26
+ data: [
27
+ {
28
+ pxProcessName: 'Loan',
29
+ pxRefObjectInsName: ' A-8002',
30
+ pyAssignmentStatus: 'New',
31
+ pxTaskLabel: 'Details'
32
+ },
33
+ {
34
+ pxProcessName: 'Loan',
35
+ pxRefObjectInsName: ' A-7001',
36
+ pyAssignmentStatus: 'Open',
37
+ pxTaskLabel: 'Info'
38
+ },
39
+ {
40
+ pxProcessName: 'Loan',
41
+ pxRefObjectInsName: ' A-9000',
42
+ pyAssignmentStatus: 'Open',
43
+ pxTaskLabel: 'Amount'
44
+ }
45
+ ]
46
+ }
47
+ };
48
+
49
+ window.PCore.getDataApiUtils = () => {
50
+ return {
51
+ getData: () => {
52
+ return new Promise(resolve => {
53
+ resolve(worklistData);
54
+ });
55
+ },
56
+ getDataAsync: () => {
57
+ return new Promise(resolve => {
58
+ resolve(worklistData);
59
+ });
60
+ }
61
+ };
62
+ };
63
+
64
+
65
+
20
66
  export const BasePegaDxilMyPageWidget: Story = args => {
21
67
 
22
68
  const props = {
23
- image: configProps.image
69
+ ...configProps,
70
+ getPConnect: () => {
71
+ return {
72
+ getValue: value => {
73
+ return value;
74
+ },
75
+ getContextName: () => {
76
+ return 'app/primary_1';
77
+ },
78
+ getLocalizedValue: value => {
79
+ return value;
80
+ },
81
+ getActionsApi: () => {
82
+ return {
83
+ updateFieldValue: () => {
84
+ /* nothing */
85
+ },
86
+ triggerFieldChange: () => {
87
+ /* nothing */
88
+ }
89
+ };
90
+ },
91
+ ignoreSuggestion: () => {
92
+ /* nothing */
93
+ },
94
+ acceptSuggestion: () => {
95
+ /* nothing */
96
+ },
97
+ setInheritedProps: () => {
98
+ /* nothing */
99
+ },
100
+ resolveConfigProps: () => {
101
+ /* nothing */
102
+ }
103
+ };
104
+ }
24
105
  };
25
106
 
26
- return (
27
- <>
28
- <PegaDxilMyPageWidget {...props} {...args} />
29
- </>
30
- );
107
+ return (
108
+ <>
109
+ <PegaDxilMyPageWidget {...props} {...args} />
110
+ </>
111
+ );
31
112
  };
32
113
 
33
114
  BasePegaDxilMyPageWidget.args = {
@@ -1,4 +1,5 @@
1
- import { withConfiguration } from '@pega/cosmos-react-core';
1
+ import { useEffect, useState } from 'react';
2
+ import { withConfiguration, Table } from '@pega/cosmos-react-core';
2
3
  import { AppAnnouncement as PegaAppAnnouncement } from '@pega/cosmos-react-work';
3
4
  import type { PConnFieldProps } from './PConnProps';
4
5
 
@@ -14,14 +15,17 @@ interface PegaDxilMyPageWidgetProps extends PConnFieldProps {
14
15
  image: string;
15
16
  }
16
17
 
17
-
18
- // Duplicated runtime code from Constellation Design System Component
19
-
20
18
  // props passed in combination of props from property panel (config.json) and run time props from Constellation
21
19
  // any default values in config.pros should be set in defaultProps at bottom of this file
22
20
  function PegaDxilMyPageWidget(props: PegaDxilMyPageWidgetProps) {
23
21
 
24
- const { header, description, datasource = [], whatsnewlink, image } = props;
22
+ const { header, description, datasource = [], whatsnewlink, image, getPConnect } = props;
23
+ const [worklist, setWorklist] = useState([]);
24
+ const [isLoading, setIsLoading] = useState(true);
25
+ const PConnect = getPConnect();
26
+ const dataViewName = 'D_pyMyWorkList';
27
+ const context = PConnect.getContextName();
28
+
25
29
  let details = [];
26
30
  // @ts-ignore
27
31
  if (datasource && datasource.source) {
@@ -30,6 +34,56 @@ function PegaDxilMyPageWidget(props: PegaDxilMyPageWidgetProps) {
30
34
  return item.name;
31
35
  });
32
36
  }
37
+
38
+ // setting up columns for the work list table
39
+ const columns = [
40
+ { renderer: 'caseType', label: PConnect.getLocalizedValue('Case type', '', '') },
41
+ { renderer: 'insKey', label: PConnect.getLocalizedValue('Key', '', '') },
42
+ { renderer: 'status', label: PConnect.getLocalizedValue('Status', '', '') },
43
+ { renderer: 'stage', label: PConnect.getLocalizedValue('Stage', '', '') }
44
+ ];
45
+
46
+ // going to get data for worklist to put into a table
47
+ // data comes from calling a PCore function to get
48
+ // get data from a data page and a PConnect function
49
+ // to get getContextName
50
+ useEffect(() => {
51
+
52
+ PCore.getDataApiUtils()
53
+ .getData(dataViewName, {}, context)
54
+ // @ts-ignore
55
+ .then((response: any) => {
56
+ setIsLoading(false);
57
+ if (response.data.data !== null) {
58
+ // table requires an index or will get setExtraStackFrame error
59
+ setWorklist(
60
+ response.data.data.map((entry: any, index: number) => {
61
+ // mapping the data into the column names
62
+ // MUST have an id/index or will get a setExtraStackFrame error
63
+ // put a key in the table
64
+ return {
65
+ caseType: entry.pxProcessName,
66
+ insKey: entry.pxRefObjectInsName,
67
+ status: entry.pyAssignmentStatus,
68
+ stage: entry.pxTaskLabel,
69
+ id: index
70
+ };
71
+ })
72
+ );
73
+ }
74
+ else {
75
+ setWorklist([]);
76
+ setIsLoading(false);
77
+ }
78
+
79
+ })
80
+ .catch((error: any) => {
81
+ setWorklist([]);
82
+ setIsLoading(false);
83
+ console.log(error);
84
+ });
85
+ }, [context]);
86
+
33
87
  return (
34
88
  <StyledPegaDxilMyPageWidgetWrapper>
35
89
  <PegaAppAnnouncement
@@ -39,6 +93,14 @@ function PegaDxilMyPageWidget(props: PegaDxilMyPageWidgetProps) {
39
93
  whatsNewLink={whatsnewlink}
40
94
  image={image.replace(/ /g, '+')}
41
95
  />
96
+ <br />
97
+ <Table
98
+ title={PConnect.getLocalizedValue('Work list', '', '')}
99
+ columns={columns}
100
+ data={worklist}
101
+ loading={isLoading}
102
+ loadingMessage={PConnect.getLocalizedValue('Loading Work list', '', '')}
103
+ />
42
104
  </StyledPegaDxilMyPageWidgetWrapper>
43
105
  );
44
106
 
@@ -51,7 +51,7 @@ export const BasePegaDxilMyBoolean: Story = args => {
51
51
  }
52
52
  };
53
53
 
54
- return <PegaDxilMyBoolean {...props} {...args} value={value} />
54
+ return <PegaDxilMyBoolean {...props} {...args} value={value} />;
55
55
  };
56
56
 
57
57
  BasePegaDxilMyBoolean.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
+ };
@@ -10,7 +10,7 @@
10
10
  "type": "Field",
11
11
  "subtype": "Decimal-Currency",
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 PegaDxilMyCurrency> = {
@@ -1,5 +1,6 @@
1
- import CurrencyTextField from '@unicef/material-ui-currency-textfield';
2
-
1
+ import { TextField } from '@material-ui/core';
2
+ import { useState } from 'react';
3
+ import { NumericFormat } from 'react-number-format';
3
4
  import { getComponentFromMap } from '@pega/react-sdk-components/lib/bridge/helpers/sdk_component_map';
4
5
  import { PConnFieldProps } from '@pega/react-sdk-components/lib/types/PConnProps';
5
6
  import handleEvent from '@pega/react-sdk-components/lib/components/helpers/event-utils';
@@ -7,13 +8,14 @@ import { format } from '@pega/react-sdk-components/lib/components/helpers/format
7
8
  import { getCurrencyCharacters, getCurrencyOptions } from '@pega/react-sdk-components/lib/components/field/Currency/currency-utils.js';
8
9
  import StyledPegaDxilMyCurrencyWrapper from './styles';
9
10
 
10
- /* Using @unicef/material-ui-currency-textfield component here, since it allows formatting decimal values,
11
+ /* Using react-number-format component here, since it allows formatting decimal values,
11
12
  as per the locale.
12
13
  */
13
14
 
14
15
  interface PegaDxilMyCurrencyProps extends PConnFieldProps {
15
16
  // If any, enter additional props that only exist on this componentName
16
17
  currencyISOCode?: string;
18
+ allowDecimals: boolean;
17
19
  }
18
20
 
19
21
  // Duplicated runtime code from React SDK
@@ -38,15 +40,15 @@ export default function PegaDxilMyCurrency(props: PegaDxilMyCurrencyProps) {
38
40
  displayMode,
39
41
  hideLabel,
40
42
  currencyISOCode = 'USD',
41
- placeholder
43
+ placeholder,
44
+ allowDecimals
42
45
  } = props;
43
46
 
44
47
  const pConn = getPConnect();
45
48
  const actions = pConn.getActionsApi();
46
49
  const propName = (pConn.getStateProps() as any).value;
47
50
  const helperTextToDisplay = validatemessage || helperText;
48
-
49
- // console.log(`Currency: label: ${label} value: ${value}`);
51
+ const [values, setValues] = useState(value.toString());
50
52
 
51
53
  const testProp = {
52
54
  'data-test-id': testId
@@ -61,6 +63,15 @@ export default function PegaDxilMyCurrency(props: PegaDxilMyCurrencyProps) {
61
63
  const theCurrencyOptions = getCurrencyOptions(currencyISOCode);
62
64
  const formattedValue = format(value, pConn.getComponentName().toLowerCase(), theCurrencyOptions);
63
65
 
66
+ let readOnlyProp = {}; // Note: empty if NOT ReadOnly
67
+
68
+ if (readOnly) {
69
+ readOnlyProp = { readOnly: true };
70
+ }
71
+
72
+ let currencyProp = {};
73
+ currencyProp = { prefix: theCurrSym, decimalSeparator: theCurrDec, thousandSeparator: theCurrSep };
74
+
64
75
  if (displayMode === 'LABELS_LEFT') {
65
76
  return <FieldValueList name={hideLabel ? '' : label} value={formattedValue} />;
66
77
  }
@@ -69,37 +80,36 @@ export default function PegaDxilMyCurrency(props: PegaDxilMyCurrencyProps) {
69
80
  return <FieldValueList name={hideLabel ? '' : label} value={formattedValue} variant='stacked' />;
70
81
  }
71
82
 
72
- function currOnBlur(event, inValue) {
73
- // console.log(`Currency currOnBlur inValue: ${inValue}`);
74
- handleEvent(actions, 'changeNblur', propName, inValue !== '' ? Number(inValue) : inValue);
83
+ function currOnBlur() {
84
+ handleEvent(actions, 'changeNblur', propName, values);
75
85
  }
76
86
 
77
- // console.log(`theCurrSym: ${theCurrSym} | theCurrDec: ${theCurrDec} | theCurrSep: ${theCurrSep}`);
87
+ const handleChange = val => {
88
+ setValues(val.value);
89
+ };
78
90
 
79
91
  return (
80
- <StyledPegaDxilMyCurrencyWrapper>
81
- <CurrencyTextField
82
- fullWidth
83
- variant={readOnly ? 'standard' : 'outlined'}
84
- helperText={helperTextToDisplay}
85
- placeholder={placeholder ?? ''}
86
- size='small'
87
- required={required}
88
- disabled={disabled}
89
- readOnly={!!readOnly}
90
- error={status === 'error'}
91
- label={label}
92
- value={value}
93
- type='text'
94
- outputFormat='number'
95
- textAlign='left'
96
- InputProps={{ inputProps: { ...testProp } }}
97
- currencySymbol={theCurrSym}
98
- decimalCharacter={theCurrDec}
99
- digitGroupSeparator={theCurrSep}
100
- onBlur={!readOnly ? currOnBlur : undefined}
101
- />
102
- </StyledPegaDxilMyCurrencyWrapper>
92
+ <StyledPegaDxilMyCurrencyWrapper>
93
+ <NumericFormat
94
+ valueIsNumericString
95
+ label={label}
96
+ helperText={helperTextToDisplay}
97
+ placeholder={placeholder ?? ''}
98
+ required={required}
99
+ disabled={disabled}
100
+ onValueChange={val => {
101
+ handleChange(val);
102
+ }}
103
+ onBlur={!readOnly ? currOnBlur : undefined}
104
+ error={status === 'error'}
105
+ name='numberformat'
106
+ value={values}
107
+ {...currencyProp}
108
+ decimalScale={allowDecimals !== false ? 2 : 0}
109
+ fixedDecimalScale={allowDecimals}
110
+ InputProps={{ ...readOnlyProp, inputProps: { ...testProp } }}
111
+ customInput={TextField}
112
+ />
113
+ </StyledPegaDxilMyCurrencyWrapper>
103
114
  );
104
115
  }
105
-
@@ -18,4 +18,4 @@ export const fieldMetadata = {
18
18
  type: 'Decimal',
19
19
  displayAs: 'pxCurrency',
20
20
  label: 'Currency sample'
21
- };
21
+ };
@@ -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 StyledPegaDxilMyDateWrapper from './styles';
@@ -115,7 +115,7 @@ export default function PegaDxilMyDate(props: PegaDxilMyDateProps) {
115
115
  onAccept={handleAccept}
116
116
  InputProps={{ ...testProp }}
117
117
  />
118
- </MuiPickersUtilsProvider>
118
+ </MuiPickersUtilsProvider>
119
119
  </StyledPegaDxilMyDateWrapper>
120
120
  );
121
121
  }
@@ -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 PegaDxilMyDateTime> = {
@@ -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 PegaDxilMyDateTime(props: PegaDxilMyDateTimeProps) {
106
106
  onAccept={handleAccept}
107
107
  data-test-id={testId}
108
108
  />
109
- </MuiPickersUtilsProvider>
109
+ </MuiPickersUtilsProvider>
110
110
  </StyledPegaDxilMyDateTimeWrapper>
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
+ };