@pega/custom-dx-components 0.23.20 → 0.23.21

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 (554) hide show
  1. package/package.json +35 -35
  2. package/src/constants.js +14 -3
  3. package/src/tasks/authenticate/helper.js +44 -32
  4. package/src/tasks/authenticate/index.js +3 -1
  5. package/src/tasks/build-all/index.js +1 -1
  6. package/src/tasks/{build → build-comp}/index.js +1 -1
  7. package/src/tasks/create/index.js +20 -7
  8. package/src/tasks/create/templates/Constellation/Field/Boolean/PConnProps.d.ts.mustache +46 -0
  9. package/src/tasks/create/templates/Constellation/Field/Boolean/{boolean-format.js.mustache → boolean-format.ts.mustache} +2 -2
  10. package/src/tasks/create/templates/Constellation/Field/Boolean/demo.stories.jsx.mustache +3 -3
  11. package/src/tasks/create/templates/Constellation/Field/Boolean/event-utils.ts.mustache +18 -0
  12. package/src/tasks/create/templates/Constellation/Field/Boolean/{index.jsx.mustache → index.tsx.mustache} +35 -10
  13. package/src/tasks/create/templates/Constellation/Field/{Date/styles.js.mustache → Boolean/styles.ts.mustache} +1 -1
  14. package/src/tasks/create/templates/Constellation/Field/Date/DateFormatter.js.mustache +1 -1
  15. package/src/tasks/create/templates/Constellation/Field/Date/FormattedText.jsx.mustache +1 -1
  16. package/src/tasks/create/templates/Constellation/Field/Date/PConnProps.d.ts.mustache +46 -0
  17. package/src/tasks/create/templates/Constellation/Field/Date/date.js.mustache +0 -2
  18. package/src/tasks/create/templates/Constellation/Field/Date/demo.stories.jsx.mustache +3 -3
  19. package/src/tasks/create/templates/Constellation/Field/Date/{index.jsx.mustache → index.tsx.mustache} +82 -38
  20. package/src/tasks/create/templates/Constellation/Field/{Boolean/styles.js.mustache → Date/styles.ts.mustache} +1 -1
  21. package/src/tasks/create/templates/Constellation/Field/Date/suggestions-handler.ts +9 -0
  22. package/src/tasks/create/templates/Constellation/Field/DateTime/PConnProps.d.ts.mustache +46 -0
  23. package/src/tasks/create/templates/Constellation/Field/DateTime/date-time.js.mustache +1 -1
  24. package/src/tasks/create/templates/Constellation/Field/DateTime/date-utils.js.mustache +1 -2
  25. package/src/tasks/create/templates/Constellation/Field/DateTime/date.js.mustache +1 -2
  26. package/src/tasks/create/templates/Constellation/Field/DateTime/demo.stories.jsx.mustache +3 -3
  27. package/src/tasks/create/templates/Constellation/Field/DateTime/{index.jsx.mustache → index.tsx.mustache} +64 -22
  28. package/src/tasks/create/templates/Constellation/Field/{Decimal-Currency/styles.js.mustache → DateTime/styles.ts.mustache} +1 -1
  29. package/src/tasks/create/templates/Constellation/Field/DateTime/suggestions-handler.ts +10 -0
  30. package/src/tasks/create/templates/Constellation/Field/Decimal/PConnProps.d.ts.mustache +46 -0
  31. package/src/tasks/create/templates/Constellation/Field/Decimal/demo.stories.jsx.mustache +3 -3
  32. package/src/tasks/create/templates/Constellation/Field/Decimal/event-utils.ts.mustache +18 -0
  33. package/src/tasks/create/templates/Constellation/Field/Decimal/{index.jsx.mustache → index.tsx.mustache} +38 -9
  34. package/src/tasks/create/templates/Constellation/Field/Decimal/styles.ts.mustache +15 -0
  35. package/src/tasks/create/templates/Constellation/Field/Decimal/suggestions-handler.ts +9 -0
  36. package/src/tasks/create/templates/Constellation/Field/Decimal-Currency/PConnProps.d.ts.mustache +46 -0
  37. package/src/tasks/create/templates/Constellation/Field/Decimal-Currency/demo.stories.jsx.mustache +3 -3
  38. package/src/tasks/create/templates/Constellation/Field/Decimal-Currency/event-utils.ts.mustache +18 -0
  39. package/src/tasks/create/templates/Constellation/Field/Decimal-Currency/{index.jsx.mustache → index.tsx.mustache} +50 -14
  40. package/src/tasks/create/templates/Constellation/Field/{DateTime/styles.js.mustache → Decimal-Currency/styles.ts.mustache} +1 -1
  41. package/src/tasks/create/templates/Constellation/Field/Decimal-Currency/suggestions-handler.ts +9 -0
  42. package/src/tasks/create/templates/Constellation/Field/Decimal-Percentage/PConnProps.d.ts.mustache +46 -0
  43. package/src/tasks/create/templates/Constellation/Field/Decimal-Percentage/demo.stories.jsx.mustache +3 -3
  44. package/src/tasks/create/templates/Constellation/Field/Decimal-Percentage/event-utils.ts.mustache +18 -0
  45. package/src/tasks/create/templates/Constellation/Field/Decimal-Percentage/{index.jsx.mustache → index.tsx.mustache} +37 -8
  46. package/src/tasks/create/templates/Constellation/Field/Decimal-Percentage/styles.ts.mustache +15 -0
  47. package/src/tasks/create/templates/Constellation/Field/Decimal-Percentage/suggestions-handler.ts +9 -0
  48. package/src/tasks/create/templates/Constellation/Field/Integer/PConnProps.d.ts.mustache +46 -0
  49. package/src/tasks/create/templates/Constellation/Field/Integer/demo.stories.jsx.mustache +3 -3
  50. package/src/tasks/create/templates/Constellation/Field/Integer/event-utils.ts.mustache +18 -0
  51. package/src/tasks/create/templates/Constellation/Field/Integer/{index.jsx.mustache → index.tsx.mustache} +52 -11
  52. package/src/tasks/create/templates/Constellation/Field/Integer/styles.ts.mustache +15 -0
  53. package/src/tasks/create/templates/Constellation/Field/Integer/suggestions-handler.ts +9 -0
  54. package/src/tasks/create/templates/Constellation/Field/Picklist/PConnProps.d.ts.mustache +46 -0
  55. package/src/tasks/create/templates/Constellation/Field/Picklist/demo.stories.jsx.mustache +3 -3
  56. package/src/tasks/create/templates/Constellation/Field/Picklist/event-utils.ts.mustache +18 -0
  57. package/src/tasks/create/templates/Constellation/Field/Picklist/{index.jsx.mustache → index.tsx.mustache} +54 -15
  58. package/src/tasks/create/templates/Constellation/Field/Picklist/styles.ts.mustache +15 -0
  59. package/src/tasks/create/templates/Constellation/Field/Picklist/suggestions-handler.ts +9 -0
  60. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/PConnProps.d.ts +46 -0
  61. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/component-constants.js +5 -0
  62. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/config.json.mustache +115 -0
  63. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/date.js.mustache +161 -0
  64. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/demo.stories.jsx.mustache +90 -0
  65. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/embed-utils.js.mustache +310 -0
  66. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/event-utils.ts.mustache +18 -0
  67. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/format-constants.js.mustache +41 -0
  68. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/index.tsx.mustache +1238 -0
  69. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/picklist-utils.js.mustache +88 -0
  70. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/repeat-constants.js.mustache +20 -0
  71. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/repeat-utils.js.mustache +657 -0
  72. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/styles.ts.mustache +15 -0
  73. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/suggestions-handler.ts.mustache +9 -0
  74. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/textformat-utils.jsx.mustache +161 -0
  75. package/src/tasks/create/templates/Constellation/Field/Picklist-Autocomplete/utils.ts.mustache +218 -0
  76. package/src/tasks/create/templates/Constellation/Field/Picklist-RadioButtons/PConnProps.d.ts +46 -0
  77. package/src/tasks/create/templates/Constellation/Field/Picklist-RadioButtons/config.json.mustache +113 -0
  78. package/src/tasks/create/templates/Constellation/Field/Picklist-RadioButtons/demo.stories.jsx.mustache +85 -0
  79. package/src/tasks/create/templates/Constellation/Field/Picklist-RadioButtons/event-utils.ts.mustache +18 -0
  80. package/src/tasks/create/templates/Constellation/Field/Picklist-RadioButtons/index.tsx.mustache +243 -0
  81. package/src/tasks/create/templates/Constellation/Field/Picklist-RadioButtons/styles.ts.mustache +15 -0
  82. package/src/tasks/create/templates/Constellation/Field/Picklist-RadioButtons/suggestions-handler.ts.mustache +9 -0
  83. package/src/tasks/create/templates/Constellation/Field/Picklist-RadioButtons/textformat-utils.jsx.mustache +161 -0
  84. package/src/tasks/create/templates/Constellation/Field/Text/PConnProps.d.ts +46 -0
  85. package/src/tasks/create/templates/Constellation/Field/Text/demo.stories.jsx.mustache +3 -3
  86. package/src/tasks/create/templates/Constellation/Field/Text/{index.jsx.mustache → index.tsx.mustache} +17 -6
  87. package/src/tasks/create/templates/Constellation/Field/Text/styles.ts.mustache +15 -0
  88. package/src/tasks/create/templates/Constellation/Field/Text-Email/PConnProps.d.ts +46 -0
  89. package/src/tasks/create/templates/Constellation/Field/Text-Email/demo.stories.jsx.mustache +3 -3
  90. package/src/tasks/create/templates/Constellation/Field/Text-Email/event-utils.ts.mustache +18 -0
  91. package/src/tasks/create/templates/Constellation/Field/Text-Email/{index.jsx.mustache → index.tsx.mustache} +30 -12
  92. package/src/tasks/create/templates/Constellation/Field/Text-Email/styles.ts.mustache +15 -0
  93. package/src/tasks/create/templates/Constellation/Field/Text-Email/suggestions-handler.ts.mustache +9 -0
  94. package/src/tasks/create/templates/Constellation/Field/Text-Input/PConnProps.d.ts.mustache +46 -0
  95. package/src/tasks/create/templates/Constellation/Field/Text-Input/StatusWork.tsx +30 -0
  96. package/src/tasks/create/templates/Constellation/Field/Text-Input/demo.stories.jsx.mustache +3 -3
  97. package/src/tasks/create/templates/Constellation/Field/Text-Input/event-utils.ts.mustache +18 -0
  98. package/src/tasks/create/templates/Constellation/Field/Text-Input/{index.jsx.mustache → index.tsx.mustache} +54 -31
  99. package/src/tasks/create/templates/Constellation/Field/Text-Input/styles.ts.mustache +15 -0
  100. package/src/tasks/create/templates/Constellation/Field/Text-Input/suggestions-handler.ts.mustache +9 -0
  101. package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/PConnProps.d.ts.mustache +46 -0
  102. package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/demo.stories.jsx.mustache +3 -3
  103. package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/event-utils.ts.mustache +18 -0
  104. package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/{index.jsx.mustache → index.tsx.mustache} +30 -13
  105. package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/styles.ts.mustache +15 -0
  106. package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/suggestions-handler.ts.mustache +9 -0
  107. package/src/tasks/create/templates/Constellation/Field/Text-Phone/PConnProps.d.ts.mustache +46 -0
  108. package/src/tasks/create/templates/Constellation/Field/Text-Phone/demo.stories.jsx.mustache +3 -3
  109. package/src/tasks/create/templates/Constellation/Field/Text-Phone/event-utils.ts.mustache +18 -0
  110. package/src/tasks/create/templates/Constellation/Field/Text-Phone/{index.jsx.mustache → index.tsx.mustache} +37 -16
  111. package/src/tasks/create/templates/Constellation/Field/Text-Phone/styles.ts.mustache +15 -0
  112. package/src/tasks/create/templates/Constellation/Field/Text-Phone/suggestions-handler.ts.mustache +9 -0
  113. package/src/tasks/create/templates/Constellation/Field/Text-URL/PConnProps.d.ts.mustache +46 -0
  114. package/src/tasks/create/templates/Constellation/Field/Text-URL/demo.stories.jsx.mustache +3 -3
  115. package/src/tasks/create/templates/Constellation/Field/Text-URL/event-utils.ts.mustache +18 -0
  116. package/src/tasks/create/templates/Constellation/Field/Text-URL/{index.jsx.mustache → index.tsx.mustache} +39 -11
  117. package/src/tasks/create/templates/Constellation/Field/Text-URL/styles.ts.mustache +15 -0
  118. package/src/tasks/create/templates/Constellation/Field/Text-URL/suggestions-handler.ts.mustache +9 -0
  119. package/src/tasks/create/templates/Constellation/Field/Text-URL/text-url.jsx.mustache +2 -1
  120. package/src/tasks/create/templates/Constellation/Field/TimeOfDay/PConnProps.d.ts.mustache +46 -0
  121. package/src/tasks/create/templates/Constellation/Field/{TimeofDay → TimeOfDay}/demo.stories.jsx.mustache +3 -3
  122. package/src/tasks/create/templates/Constellation/Field/{TimeofDay/index.jsx.mustache → TimeOfDay/index.tsx.mustache} +46 -16
  123. package/src/tasks/create/templates/Constellation/Field/TimeOfDay/styles.ts.mustache +15 -0
  124. package/src/tasks/create/templates/Constellation/Field/TimeOfDay/suggestions-handler.ts.mustache +9 -0
  125. package/src/tasks/create/templates/Constellation/Field/{TimeofDay → TimeOfDay}/time-of-day.js.mustache +0 -2
  126. package/src/tasks/create/templates/Constellation/Template/DETAILS/PConnProps.d.ts.mustache +46 -0
  127. package/src/tasks/create/templates/Constellation/Template/{DETAILS-region/StatusWork.jsx.mustache → DETAILS/StatusWork.tsx.mustache} +2 -3
  128. package/src/tasks/create/templates/Constellation/Template/DETAILS/demo.stories.jsx.mustache +3 -4
  129. package/src/tasks/create/templates/Constellation/Template/{DETAILS-region/index.jsx.mustache → DETAILS/index.tsx.mustache} +22 -5
  130. package/src/tasks/create/templates/Constellation/Template/DETAILS/styles.ts.mustache +15 -0
  131. package/src/tasks/create/templates/Constellation/Template/DETAILS/utils.js.mustache +2 -3
  132. package/src/tasks/create/templates/Constellation/Template/DETAILS-region/PConnProps.d.ts.mustache +46 -0
  133. package/src/tasks/create/templates/Constellation/{Field/Text-Input/StatusWork.jsx → Template/DETAILS-region/StatusWork.tsx.mustache} +2 -3
  134. package/src/tasks/create/templates/Constellation/Template/DETAILS-region/demo.stories.jsx.mustache +3 -4
  135. package/src/tasks/create/templates/Constellation/Template/{DETAILS/index.jsx.mustache → DETAILS-region/index.tsx.mustache} +21 -5
  136. package/src/tasks/create/templates/Constellation/Template/DETAILS-region/styles.ts.mustache +15 -0
  137. package/src/tasks/create/templates/Constellation/Template/DETAILS-region/utils.js.mustache +0 -4
  138. package/src/tasks/create/templates/Constellation/Template/FORM/PConnProps.d.ts.mustache +46 -0
  139. package/src/tasks/create/templates/Constellation/Template/FORM/demo.stories.jsx.mustache +15 -13
  140. package/src/tasks/create/templates/Constellation/Template/FORM/{index.jsx.mustache → index.tsx.mustache} +11 -7
  141. package/src/tasks/create/templates/Constellation/Template/FORM/styles.ts.mustache +15 -0
  142. package/src/tasks/create/templates/Constellation/Template/FORM-region/PConnProps.d.ts.mustache +46 -0
  143. package/src/tasks/create/templates/Constellation/Template/FORM-region/demo.stories.jsx.mustache +7 -8
  144. package/src/tasks/create/templates/Constellation/Template/FORM-region/{index.jsx.mustache → index.tsx.mustache} +14 -3
  145. package/src/tasks/create/templates/Constellation/Template/FORM-region/styles.ts.mustache +15 -0
  146. package/src/tasks/create/templates/Constellation/Template/PAGE/{GetNextWork.jsx.mustache → GetNextWork.tsx.mustache} +13 -6
  147. package/src/tasks/create/templates/Constellation/Template/PAGE/PConnProps.d.ts.mustache +46 -0
  148. package/src/tasks/create/templates/Constellation/Template/PAGE/demo.stories.jsx.mustache +3 -3
  149. package/src/tasks/create/templates/Constellation/Template/PAGE/{index.jsx.mustache → index.tsx.mustache} +18 -6
  150. package/src/tasks/create/templates/Constellation/Template/PAGE/styles.ts.mustache +15 -0
  151. package/src/tasks/create/templates/Constellation/Template/PAGE/utils.js.mustache +1 -4
  152. package/src/tasks/create/templates/Constellation/Widget/CASE/PConnProps.d.ts.mustache +46 -0
  153. package/src/tasks/create/templates/Constellation/Widget/CASE/demo.stories.jsx.mustache +3 -3
  154. package/src/tasks/create/templates/Constellation/Widget/CASE/{index.jsx.mustache → index.tsx.mustache} +19 -10
  155. package/src/tasks/create/templates/Constellation/Widget/CASE/styles.ts.mustache +15 -0
  156. package/src/tasks/create/templates/Constellation/Widget/PAGE/PConnProps.d.ts.mustache +46 -0
  157. package/src/tasks/create/templates/Constellation/Widget/PAGE/demo.stories.jsx.mustache +3 -3
  158. package/src/tasks/create/templates/Constellation/Widget/PAGE/{index.jsx.mustache → index.tsx.mustache} +14 -2
  159. package/src/tasks/create/templates/Constellation/Widget/PAGE/styles.ts.mustache +15 -0
  160. package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/{Avatar.jsx.mustache → Avatar.tsx.mustache} +21 -10
  161. package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/{Operator.jsx.mustache → Operator.tsx.mustache} +30 -9
  162. package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/PConnProps.d.ts.mustache +46 -0
  163. package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/demo.stories.jsx.mustache +2 -3
  164. package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/{index.jsx.mustache → index.tsx.mustache} +25 -4
  165. package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/styles.ts.mustache +15 -0
  166. package/src/tasks/create/templates/Launchpad/Widget/CASE/demo.stories.jsx.mustache +3 -3
  167. package/src/tasks/create/templates/Launchpad/Widget/CASE/index.jsx.mustache +0 -2
  168. package/src/tasks/create/templates/Launchpad/Widget/CASE/styles.js.mustache +1 -1
  169. package/src/tasks/create/templates/Launchpad/Widget/PAGE-CASE/Avatar.jsx.mustache +2 -4
  170. package/src/tasks/create/templates/Launchpad/Widget/PAGE-CASE/Operator.jsx.mustache +1 -2
  171. package/src/tasks/create/templates/Launchpad/Widget/PAGE-CASE/demo.stories.jsx.mustache +2 -3
  172. package/src/tasks/create/templates/Launchpad/Widget/PAGE-CASE/index.jsx.mustache +1 -2
  173. package/src/tasks/create/templates/Launchpad/Widget/PAGE-CASE/styles.js.mustache +1 -1
  174. package/src/tasks/create-all/index.js +9 -1
  175. package/src/tasks/index.js +1 -1
  176. package/src/tasks/init/helper.js +0 -1
  177. package/src/tasks/init/index.js +31 -16
  178. package/src/tasks/init/template/.eslintrc.json +15 -10
  179. package/src/tasks/init/template/.storybook/main.js +12 -0
  180. package/src/tasks/init/template/.storybook/preview.js +14 -0
  181. package/src/tasks/init/template/package.json.mustache +36 -35
  182. package/src/tasks/publish/helper.js +34 -14
  183. package/src/tasks/publish/index.js +1 -1
  184. package/src/tasks/publish-all/helper.js +42 -16
  185. package/src/tasks/publish-all/index.js +1 -1
  186. package/src/tasks/revert-webpack/index.js +5 -7
  187. package/src/tasks/upgrade/index.js +1 -1
  188. package/src/util.js +68 -44
  189. package/tests/assets/components/create/Pega_DXIL_MyTestText/demo.stories.jsx +17 -11
  190. package/tests/assets/components/create/Pega_DXIL_MyTestText/index.jsx +0 -1
  191. package/tests/assets/components/create/Pega_DXIL_MyTestText/styles.js +1 -1
  192. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/component-constants.js +5 -0
  193. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/config.json +115 -0
  194. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/date.js +161 -0
  195. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/demo.stories.jsx +91 -0
  196. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/embed-utils.js +310 -0
  197. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/format-constants.js +41 -0
  198. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/index.jsx +1042 -0
  199. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/mock.js +69 -0
  200. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/picklist-utils.js +88 -0
  201. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/repeat-constants.js +20 -0
  202. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/repeat-utils.js +657 -0
  203. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/styles.js +15 -0
  204. package/{src/tasks/create/templates/Constellation/Field/Date → tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete}/suggestions-handler.js +0 -1
  205. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/textformat-utils.jsx +161 -0
  206. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/utils.js +182 -0
  207. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyBoolean/boolean-format.js +1 -1
  208. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyBoolean/demo.stories.jsx +8 -7
  209. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyBoolean/index.jsx +0 -2
  210. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyBoolean/styles.js +1 -1
  211. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyCaseWidget/demo.stories.jsx +22 -12
  212. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyCaseWidget/index.jsx +0 -2
  213. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyCaseWidget/styles.js +1 -1
  214. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyCurrency/demo.stories.jsx +23 -12
  215. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyCurrency/index.jsx +2 -2
  216. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyCurrency/styles.js +1 -1
  217. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyCurrency/suggestions-handler.js +0 -1
  218. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDate/DateFormatter.js +1 -1
  219. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDate/FormattedText.jsx +1 -1
  220. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDate/date.js +0 -2
  221. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDate/demo.stories.jsx +20 -9
  222. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDate/index.jsx +1 -3
  223. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDate/styles.js +1 -1
  224. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDate/suggestions-handler.js +0 -1
  225. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDateTime/date-time.js +1 -1
  226. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDateTime/date-utils.js +1 -2
  227. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDateTime/date.js +1 -2
  228. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDateTime/demo.stories.jsx +20 -9
  229. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDateTime/index.jsx +1 -3
  230. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDateTime/styles.js +1 -1
  231. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDateTime/suggestions-handler.js +0 -1
  232. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDecimal/demo.stories.jsx +20 -11
  233. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDecimal/index.jsx +1 -2
  234. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDecimal/styles.js +1 -1
  235. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDecimal/suggestions-handler.js +0 -1
  236. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDetails/StatusWork.jsx +0 -1
  237. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDetails/demo.stories.jsx +2 -4
  238. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDetails/index.jsx +0 -1
  239. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDetails/styles.js +1 -1
  240. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDetails/utils.js +2 -3
  241. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyEmail/demo.stories.jsx +20 -12
  242. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyEmail/index.jsx +1 -2
  243. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyEmail/styles.js +1 -1
  244. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyEmail/suggestions-handler.js +0 -1
  245. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyForm/demo.stories.jsx +15 -21
  246. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyForm/index.jsx +0 -1
  247. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyForm/styles.js +1 -1
  248. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyInteger/demo.stories.jsx +20 -11
  249. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyInteger/index.jsx +2 -3
  250. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyInteger/styles.js +1 -1
  251. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyInteger/suggestions-handler.js +0 -1
  252. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPage/GetNextWork.jsx +1 -4
  253. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPage/demo.stories.jsx +20 -10
  254. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPage/index.jsx +3 -3
  255. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPage/styles.js +1 -1
  256. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPage/utils.js +1 -4
  257. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPageCaseWidget/Avatar.jsx +2 -4
  258. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPageCaseWidget/Operator.jsx +2 -3
  259. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPageCaseWidget/demo.stories.jsx +22 -12
  260. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPageCaseWidget/index.jsx +2 -1
  261. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPageCaseWidget/styles.js +1 -1
  262. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPageWidget/demo.stories.jsx +4 -7
  263. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPageWidget/index.jsx +0 -1
  264. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPageWidget/styles.js +1 -1
  265. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyParagraph/demo.stories.jsx +20 -12
  266. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyParagraph/index.jsx +1 -2
  267. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyParagraph/styles.js +1 -1
  268. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyParagraph/suggestions-handler.js +0 -1
  269. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPercentage/demo.stories.jsx +20 -11
  270. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPercentage/index.jsx +1 -2
  271. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPercentage/styles.js +1 -1
  272. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPercentage/suggestions-handler.js +0 -1
  273. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPhone/demo.stories.jsx +20 -10
  274. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPhone/index.jsx +1 -2
  275. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPhone/styles.js +1 -1
  276. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPhone/suggestions-handler.js +0 -1
  277. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPicklist/demo.stories.jsx +20 -12
  278. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPicklist/index.jsx +3 -3
  279. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPicklist/mock.js +69 -0
  280. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPicklist/styles.js +1 -1
  281. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPicklist/suggestions-handler.js +0 -1
  282. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyRadioButtons/config.json +113 -0
  283. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyRadioButtons/demo.stories.jsx +91 -0
  284. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyRadioButtons/index.jsx +218 -0
  285. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyRadioButtons/mock.js +69 -0
  286. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyRadioButtons/styles.js +15 -0
  287. package/{src/tasks/create/templates/Constellation/Field/DateTime → tests/assets/components/createAll/Constellation/Pega_DXIL_MyRadioButtons}/suggestions-handler.js +0 -1
  288. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyRadioButtons/textformat-utils.jsx +161 -0
  289. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyText/demo.stories.jsx +17 -11
  290. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyText/index.jsx +0 -1
  291. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyText/styles.js +1 -1
  292. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTextInput/StatusWork.jsx +15 -16
  293. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTextInput/demo.stories.jsx +20 -10
  294. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTextInput/index.jsx +1 -2
  295. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTextInput/styles.js +1 -1
  296. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTextInput/suggestions-handler.js +0 -1
  297. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTimeOfDay/demo.stories.jsx +18 -8
  298. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTimeOfDay/index.jsx +1 -2
  299. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTimeOfDay/styles.js +1 -1
  300. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTimeOfDay/suggestions-handler.js +0 -1
  301. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTimeOfDay/time-of-day.js +0 -2
  302. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTwoColumnDetails/StatusWork.jsx +0 -1
  303. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTwoColumnDetails/demo.stories.jsx +2 -4
  304. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTwoColumnDetails/index.jsx +0 -1
  305. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTwoColumnDetails/styles.js +1 -1
  306. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTwoColumnDetails/utils.js +0 -4
  307. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTwoColumnForm/demo.stories.jsx +6 -11
  308. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTwoColumnForm/index.jsx +0 -1
  309. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTwoColumnForm/styles.js +1 -1
  310. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyURL/demo.stories.jsx +20 -10
  311. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyURL/index.jsx +1 -2
  312. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyURL/styles.js +1 -1
  313. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyURL/suggestions-handler.js +0 -1
  314. package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyURL/text-url.jsx +2 -1
  315. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/component-constants.js +5 -0
  316. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/config.json +115 -0
  317. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/date.js +161 -0
  318. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/demo.stories.jsx +89 -0
  319. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/embed-utils.js +310 -0
  320. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/format-constants.js +41 -0
  321. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/index.jsx +1042 -0
  322. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/mock.js +69 -0
  323. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/picklist-utils.js +88 -0
  324. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/repeat-constants.js +20 -0
  325. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/repeat-utils.js +657 -0
  326. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/styles.js +15 -0
  327. package/{src/tasks/create/templates/Constellation/Field/Decimal-Percentage → tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete}/suggestions-handler.js +0 -1
  328. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/textformat-utils.jsx +161 -0
  329. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/utils.js +182 -0
  330. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyBoolean/boolean-format.js +1 -1
  331. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyBoolean/demo.stories.jsx +8 -7
  332. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyBoolean/index.jsx +0 -2
  333. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyBoolean/styles.js +1 -1
  334. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyCaseWidget/demo.stories.jsx +22 -14
  335. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyCaseWidget/index.jsx +0 -2
  336. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyCaseWidget/styles.js +1 -1
  337. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyCurrency/demo.stories.jsx +23 -13
  338. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyCurrency/index.jsx +2 -2
  339. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyCurrency/styles.js +1 -1
  340. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyCurrency/suggestions-handler.js +0 -1
  341. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDate/DateFormatter.js +1 -1
  342. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDate/FormattedText.jsx +1 -1
  343. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDate/date.js +0 -2
  344. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDate/demo.stories.jsx +21 -10
  345. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDate/index.jsx +1 -3
  346. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDate/styles.js +1 -1
  347. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDate/suggestions-handler.js +0 -1
  348. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDateTime/date-time.js +1 -1
  349. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDateTime/date-utils.js +1 -2
  350. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDateTime/date.js +1 -2
  351. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDateTime/demo.stories.jsx +21 -10
  352. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDateTime/index.jsx +1 -3
  353. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDateTime/styles.js +1 -1
  354. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDateTime/suggestions-handler.js +0 -1
  355. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDecimal/demo.stories.jsx +20 -12
  356. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDecimal/index.jsx +1 -2
  357. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDecimal/styles.js +1 -1
  358. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDecimal/suggestions-handler.js +0 -1
  359. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDetails/StatusWork.jsx +0 -1
  360. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDetails/demo.stories.jsx +5 -6
  361. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDetails/index.jsx +0 -1
  362. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDetails/styles.js +1 -1
  363. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDetails/utils.js +2 -3
  364. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyEmail/demo.stories.jsx +20 -12
  365. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyEmail/index.jsx +1 -2
  366. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyEmail/styles.js +1 -1
  367. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyEmail/suggestions-handler.js +0 -1
  368. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyForm/demo.stories.jsx +23 -24
  369. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyForm/index.jsx +0 -1
  370. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyForm/styles.js +1 -1
  371. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyInteger/demo.stories.jsx +20 -12
  372. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyInteger/index.jsx +2 -3
  373. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyInteger/styles.js +1 -1
  374. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyInteger/suggestions-handler.js +0 -1
  375. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPage/GetNextWork.jsx +1 -4
  376. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPage/demo.stories.jsx +20 -11
  377. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPage/index.jsx +3 -3
  378. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPage/styles.js +1 -1
  379. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPage/utils.js +1 -4
  380. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPageCaseWidget/Avatar.jsx +2 -4
  381. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPageCaseWidget/Operator.jsx +1 -2
  382. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPageCaseWidget/demo.stories.jsx +23 -15
  383. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPageCaseWidget/index.jsx +1 -2
  384. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPageCaseWidget/styles.js +1 -1
  385. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPageWidget/demo.stories.jsx +4 -9
  386. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPageWidget/index.jsx +0 -1
  387. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPageWidget/styles.js +1 -1
  388. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyParagraph/demo.stories.jsx +20 -12
  389. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyParagraph/index.jsx +1 -2
  390. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyParagraph/styles.js +1 -1
  391. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyParagraph/suggestions-handler.js +0 -1
  392. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPercentage/demo.stories.jsx +20 -12
  393. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPercentage/index.jsx +1 -2
  394. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPercentage/styles.js +1 -1
  395. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPercentage/suggestions-handler.js +0 -1
  396. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPhone/demo.stories.jsx +20 -11
  397. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPhone/index.jsx +1 -2
  398. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPhone/styles.js +1 -1
  399. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPhone/suggestions-handler.js +0 -1
  400. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPicklist/demo.stories.jsx +20 -12
  401. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPicklist/index.jsx +3 -3
  402. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPicklist/mock.js +69 -0
  403. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPicklist/styles.js +1 -1
  404. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPicklist/suggestions-handler.js +0 -1
  405. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyRadioButtons/config.json +113 -0
  406. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyRadioButtons/demo.stories.jsx +89 -0
  407. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyRadioButtons/index.jsx +218 -0
  408. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyRadioButtons/mock.js +69 -0
  409. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyRadioButtons/styles.js +15 -0
  410. package/{src/tasks/create/templates/Constellation/Field/Decimal-Currency → tests/assets/components/createAll/Launchpad/Pega_DXIL_MyRadioButtons}/suggestions-handler.js +0 -1
  411. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyRadioButtons/textformat-utils.jsx +161 -0
  412. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyText/demo.stories.jsx +17 -11
  413. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyText/index.jsx +0 -1
  414. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyText/styles.js +1 -1
  415. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTextInput/StatusWork.jsx +15 -16
  416. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTextInput/demo.stories.jsx +20 -12
  417. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTextInput/index.jsx +1 -2
  418. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTextInput/styles.js +1 -1
  419. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTextInput/suggestions-handler.js +0 -1
  420. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTimeOfDay/demo.stories.jsx +18 -9
  421. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTimeOfDay/index.jsx +1 -2
  422. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTimeOfDay/styles.js +1 -1
  423. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTimeOfDay/suggestions-handler.js +0 -1
  424. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTimeOfDay/time-of-day.js +0 -2
  425. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTwoColumnDetails/StatusWork.jsx +0 -1
  426. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTwoColumnDetails/demo.stories.jsx +5 -6
  427. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTwoColumnDetails/index.jsx +0 -1
  428. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTwoColumnDetails/styles.js +1 -1
  429. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTwoColumnDetails/utils.js +0 -4
  430. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTwoColumnForm/demo.stories.jsx +14 -14
  431. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTwoColumnForm/index.jsx +0 -1
  432. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTwoColumnForm/styles.js +1 -1
  433. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyURL/demo.stories.jsx +20 -11
  434. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyURL/index.jsx +1 -2
  435. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyURL/styles.js +1 -1
  436. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyURL/suggestions-handler.js +0 -1
  437. package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyURL/text-url.jsx +2 -1
  438. package/src/tasks/create/templates/Constellation/Field/Decimal/styles.js.mustache +0 -15
  439. package/src/tasks/create/templates/Constellation/Field/Decimal/suggestions-handler.js +0 -10
  440. package/src/tasks/create/templates/Constellation/Field/Decimal-Percentage/styles.js.mustache +0 -15
  441. package/src/tasks/create/templates/Constellation/Field/Integer/event-utils.js.mustache +0 -18
  442. package/src/tasks/create/templates/Constellation/Field/Integer/styles.js.mustache +0 -15
  443. package/src/tasks/create/templates/Constellation/Field/Integer/suggestions-handler.js +0 -10
  444. package/src/tasks/create/templates/Constellation/Field/Picklist/event-utils.js.mustache +0 -18
  445. package/src/tasks/create/templates/Constellation/Field/Picklist/styles.js.mustache +0 -15
  446. package/src/tasks/create/templates/Constellation/Field/Picklist/suggestions-handler.js +0 -10
  447. package/src/tasks/create/templates/Constellation/Field/Text/styles.js.mustache +0 -15
  448. package/src/tasks/create/templates/Constellation/Field/Text-Email/event-utils.js.mustache +0 -18
  449. package/src/tasks/create/templates/Constellation/Field/Text-Email/styles.js.mustache +0 -15
  450. package/src/tasks/create/templates/Constellation/Field/Text-Email/suggestions-handler.js +0 -10
  451. package/src/tasks/create/templates/Constellation/Field/Text-Input/event-utils.js.mustache +0 -18
  452. package/src/tasks/create/templates/Constellation/Field/Text-Input/styles.js.mustache +0 -15
  453. package/src/tasks/create/templates/Constellation/Field/Text-Input/suggestions-handler.js +0 -10
  454. package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/event-utils.js.mustache +0 -18
  455. package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/styles.js.mustache +0 -15
  456. package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/suggestions-handler.js +0 -10
  457. package/src/tasks/create/templates/Constellation/Field/Text-Phone/event-utils.js.mustache +0 -18
  458. package/src/tasks/create/templates/Constellation/Field/Text-Phone/styles.js.mustache +0 -15
  459. package/src/tasks/create/templates/Constellation/Field/Text-Phone/suggestions-handler.js +0 -10
  460. package/src/tasks/create/templates/Constellation/Field/Text-URL/event-utils.js.mustache +0 -18
  461. package/src/tasks/create/templates/Constellation/Field/Text-URL/styles.js.mustache +0 -15
  462. package/src/tasks/create/templates/Constellation/Field/Text-URL/suggestions-handler.js +0 -10
  463. package/src/tasks/create/templates/Constellation/Field/TimeofDay/styles.js.mustache +0 -15
  464. package/src/tasks/create/templates/Constellation/Field/TimeofDay/suggestions-handler.js +0 -10
  465. package/src/tasks/create/templates/Constellation/Template/DETAILS/StatusWork.jsx.mustache +0 -27
  466. package/src/tasks/create/templates/Constellation/Template/DETAILS/styles.js.mustache +0 -15
  467. package/src/tasks/create/templates/Constellation/Template/DETAILS-region/styles.js.mustache +0 -15
  468. package/src/tasks/create/templates/Constellation/Template/FORM/styles.js.mustache +0 -15
  469. package/src/tasks/create/templates/Constellation/Template/FORM-region/styles.js.mustache +0 -15
  470. package/src/tasks/create/templates/Constellation/Template/PAGE/styles.js.mustache +0 -15
  471. package/src/tasks/create/templates/Constellation/Widget/CASE/styles.js.mustache +0 -15
  472. package/src/tasks/create/templates/Constellation/Widget/PAGE/styles.js.mustache +0 -15
  473. package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/styles.js.mustache +0 -15
  474. package/src/tasks/init/template/.storybook/main.cjs +0 -6
  475. package/src/tasks/init/template/.storybook/package.json +0 -1
  476. package/src/tasks/init/template/.storybook/preview.tsx +0 -44
  477. /package/src/tasks/{build → build-comp}/helper.js +0 -0
  478. /package/src/tasks/create/templates/Constellation/Field/Boolean/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  479. /package/src/tasks/create/templates/Constellation/Field/Date/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  480. /package/src/tasks/create/templates/Constellation/Field/DateTime/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  481. /package/src/tasks/create/templates/Constellation/Field/Decimal/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  482. /package/src/tasks/create/templates/Constellation/Field/Decimal-Currency/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  483. /package/src/tasks/create/templates/Constellation/Field/Decimal-Percentage/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  484. /package/src/tasks/create/templates/Constellation/Field/Integer/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  485. /package/{tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPicklist/mock.stories.js → src/tasks/create/templates/Constellation/Field/Picklist/mock.js.mustache} +0 -0
  486. /package/src/tasks/create/templates/Constellation/Field/{Picklist/mock.stories.js.mustache → Picklist-Autocomplete/mock.js.mustache} +0 -0
  487. /package/{tests/assets/components/createAll/Constellation/Pega_DXIL_MyPicklist/mock.stories.js → src/tasks/create/templates/Constellation/Field/Picklist-RadioButtons/mock.js.mustache} +0 -0
  488. /package/src/tasks/create/templates/Constellation/Field/Text/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  489. /package/src/tasks/create/templates/Constellation/Field/Text-Email/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  490. /package/src/tasks/create/templates/Constellation/Field/Text-Input/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  491. /package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  492. /package/src/tasks/create/templates/Constellation/Field/Text-Phone/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  493. /package/src/tasks/create/templates/Constellation/Field/Text-URL/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  494. /package/src/tasks/create/templates/Constellation/Field/{TimeofDay → TimeOfDay}/config.json.mustache +0 -0
  495. /package/src/tasks/create/templates/Constellation/Field/{TimeofDay/mock.stories.js.mustache → TimeOfDay/mock.js.mustache} +0 -0
  496. /package/src/tasks/create/templates/Constellation/Template/DETAILS/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  497. /package/src/tasks/create/templates/Constellation/Template/DETAILS-region/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  498. /package/src/tasks/create/templates/Constellation/Template/FORM/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  499. /package/src/tasks/create/templates/Constellation/Template/FORM-region/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  500. /package/src/tasks/create/templates/Constellation/Template/PAGE/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  501. /package/src/tasks/create/templates/Constellation/Widget/CASE/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  502. /package/src/tasks/create/templates/Constellation/Widget/PAGE/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  503. /package/src/tasks/create/templates/Constellation/Widget/PAGE-CASE/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  504. /package/src/tasks/create/templates/Launchpad/Widget/CASE/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  505. /package/src/tasks/create/templates/Launchpad/Widget/PAGE-CASE/{mock.stories.js.mustache → mock.js.mustache} +0 -0
  506. /package/tests/assets/components/create/Pega_DXIL_MyTestText/{mock.stories.js → mock.js} +0 -0
  507. /package/{src/tasks/create/templates/Constellation/Field/Boolean/event-utils.js.mustache → tests/assets/components/createAll/Constellation/Pega_DXIL_MyAutocomplete/event-utils.js} +0 -0
  508. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyBoolean/{mock.stories.js → mock.js} +0 -0
  509. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyCaseWidget/{mock.stories.js → mock.js} +0 -0
  510. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyCurrency/{mock.stories.js → mock.js} +0 -0
  511. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDate/{mock.stories.js → mock.js} +0 -0
  512. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDateTime/{mock.stories.js → mock.js} +0 -0
  513. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDecimal/{mock.stories.js → mock.js} +0 -0
  514. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDetails/{mock.stories.js → mock.js} +0 -0
  515. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyEmail/{mock.stories.js → mock.js} +0 -0
  516. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyForm/{mock.stories.js → mock.js} +0 -0
  517. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyInteger/{mock.stories.js → mock.js} +0 -0
  518. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPage/{mock.stories.js → mock.js} +0 -0
  519. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPageCaseWidget/{mock.stories.js → mock.js} +0 -0
  520. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPageWidget/{mock.stories.js → mock.js} +0 -0
  521. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyParagraph/{mock.stories.js → mock.js} +0 -0
  522. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPercentage/{mock.stories.js → mock.js} +0 -0
  523. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPhone/{mock.stories.js → mock.js} +0 -0
  524. /package/{src/tasks/create/templates/Constellation/Field/Decimal-Currency/event-utils.js.mustache → tests/assets/components/createAll/Constellation/Pega_DXIL_MyRadioButtons/event-utils.js} +0 -0
  525. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyText/{mock.stories.js → mock.js} +0 -0
  526. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTextInput/{mock.stories.js → mock.js} +0 -0
  527. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTimeOfDay/{mock.stories.js → mock.js} +0 -0
  528. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTwoColumnDetails/{mock.stories.js → mock.js} +0 -0
  529. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTwoColumnForm/{mock.stories.js → mock.js} +0 -0
  530. /package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyURL/{mock.stories.js → mock.js} +0 -0
  531. /package/{src/tasks/create/templates/Constellation/Field/Decimal-Percentage/event-utils.js.mustache → tests/assets/components/createAll/Launchpad/Pega_DXIL_MyAutocomplete/event-utils.js} +0 -0
  532. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyBoolean/{mock.stories.js → mock.js} +0 -0
  533. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyCaseWidget/{mock.stories.js → mock.js} +0 -0
  534. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyCurrency/{mock.stories.js → mock.js} +0 -0
  535. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDate/{mock.stories.js → mock.js} +0 -0
  536. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDateTime/{mock.stories.js → mock.js} +0 -0
  537. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDecimal/{mock.stories.js → mock.js} +0 -0
  538. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDetails/{mock.stories.js → mock.js} +0 -0
  539. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyEmail/{mock.stories.js → mock.js} +0 -0
  540. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyForm/{mock.stories.js → mock.js} +0 -0
  541. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyInteger/{mock.stories.js → mock.js} +0 -0
  542. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPage/{mock.stories.js → mock.js} +0 -0
  543. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPageCaseWidget/{mock.stories.js → mock.js} +0 -0
  544. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPageWidget/{mock.stories.js → mock.js} +0 -0
  545. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyParagraph/{mock.stories.js → mock.js} +0 -0
  546. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPercentage/{mock.stories.js → mock.js} +0 -0
  547. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPhone/{mock.stories.js → mock.js} +0 -0
  548. /package/{src/tasks/create/templates/Constellation/Field/Decimal/event-utils.js.mustache → tests/assets/components/createAll/Launchpad/Pega_DXIL_MyRadioButtons/event-utils.js} +0 -0
  549. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyText/{mock.stories.js → mock.js} +0 -0
  550. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTextInput/{mock.stories.js → mock.js} +0 -0
  551. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTimeOfDay/{mock.stories.js → mock.js} +0 -0
  552. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTwoColumnDetails/{mock.stories.js → mock.js} +0 -0
  553. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTwoColumnForm/{mock.stories.js → mock.js} +0 -0
  554. /package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyURL/{mock.stories.js → mock.js} +0 -0
@@ -0,0 +1,1238 @@
1
+ /* eslint-disable react-hooks/exhaustive-deps */
2
+ import { useEffect, useRef, useState, memo, useMemo, MutableRefObject, SetStateAction } from 'react';
3
+ import { ComboBox, menuHelpers, debounce, throttle, Button, Icon, MenuGroupProps, MenuItemProps } from '@pega/cosmos-react-core';
4
+ import PropTypes from 'prop-types';
5
+ import get from 'lodash.get';
6
+ import type { PConnFieldProps } from './PConnProps';
7
+
8
+ // includes in bundle
9
+ import handleEvent from "./event-utils";
10
+ import { suggestionsHandler } from './suggestions-handler';
11
+
12
+ import { formatExists, textFormatter } from './textformat-utils.jsx';
13
+ import { flattenParameters } from './picklist-utils.js';
14
+ import { isSelfReferencedProperty, getDescriptorsFieldName } from './repeat-utils.js';
15
+ import { getFieldNameFromEmbeddedFieldName } from './embed-utils.js';
16
+
17
+ import { usePaginate, useDeepMemo, useIsMount, updatePropertiesForNewRecord } from './utils';
18
+
19
+ import Styled{{COMPONENT_CLASS_NAME}}Wrapper from './styles';
20
+
21
+ // interface for props
22
+ interface {{COMPONENT_CLASS_NAME}}Props extends PConnFieldProps {
23
+ // If any, enter additional props that only exist on TextInput here
24
+ isTableFormatter?: boolean;
25
+ hasSuggestions?: boolean;
26
+ formatter: string;
27
+ maxResultsDisplay: string;
28
+ matchPosition: string;
29
+ listType: string;
30
+ parameters: any;
31
+ columns: Array<any>;
32
+ cacheLifeSpan: string;
33
+ createNewRecord: any;
34
+ onRecordChange: any;
35
+ datasourceMetadata: any;
36
+ datasource: Array<any>;
37
+ deferDatasource: boolean;
38
+ additionalProps: any;
39
+ referenceType: string;
40
+ primaryField: string;
41
+ selected: boolean;
42
+ actualValue: any;
43
+ descriptors: any;
44
+ dataRelationshipContext: any;
45
+ contextClass: string;
46
+ isSearchableOnKey: boolean;
47
+ }
48
+
49
+ interface {{COMPONENT_CLASS_NAME}}PropsSubSet {
50
+ selected: any;
51
+ actualValue: any;
52
+ isTableFormatter?: boolean;
53
+ formatter: string;
54
+ }
55
+
56
+ // interface for StateProps object
57
+ interface StateProps {
58
+ value: string;
59
+ hasSuggestions: boolean;
60
+ }
61
+
62
+
63
+ export const preProcessColumns = (columns: Array<any>) => {
64
+ return columns.map(col => {
65
+ const tempColObj = { ...col };
66
+ tempColObj.value = col.value && col.value.startsWith('.') ? col.value.substring(1) : col.value;
67
+ return tempColObj;
68
+ });
69
+ };
70
+
71
+ export const getDisplayFieldsMetaData = (columns: Array<any>) => {
72
+ const visibleAndSecondaryColumns = columns.filter(
73
+ col => col.display === 'true' || col.secondary === 'true'
74
+ );
75
+ const metaDataObj = { key: '', primary: '', secondary: [], hidden: [] };
76
+ const keyCol = columns.filter(col => col.key === 'true');
77
+ metaDataObj.key = keyCol.length > 0 ? keyCol[0].value : 'auto';
78
+ for (let index = 0; index < visibleAndSecondaryColumns.length; index += 1) {
79
+ if (visibleAndSecondaryColumns[index].primary === 'true') {
80
+ metaDataObj.primary = visibleAndSecondaryColumns[index].value;
81
+ } else {
82
+ if (visibleAndSecondaryColumns[index].display === 'false') {
83
+ metaDataObj.hidden.push(visibleAndSecondaryColumns[index].value as never);
84
+ }
85
+ metaDataObj.secondary.push(visibleAndSecondaryColumns[index].value as never);
86
+ }
87
+ }
88
+ return metaDataObj;
89
+ };
90
+
91
+ export const buildColumnForDisplayValue = (dataObj: any) => {
92
+ if (dataObj.columns) {
93
+ dataObj.columns = dataObj.columns.map((column: any) => {
94
+ const tempColObj = { ...column };
95
+ if (tempColObj.key === 'true') {
96
+ tempColObj.useForSearch = true;
97
+ } else {
98
+ tempColObj.useForSearch = false;
99
+ }
100
+ return tempColObj;
101
+ });
102
+ }
103
+ };
104
+
105
+ export const doSearch = (
106
+ searchText: string,
107
+ displayFieldMeta: { key: any; primary: any; secondary: any; hidden: any },
108
+ dataApiObj: { fetchData?: any; columns?: any; isQueryable?: any; matchPosition?: any },
109
+ setItems: {
110
+ (value: SetStateAction<Array<never>>): void;
111
+ (value: SetStateAction<Array<never>>): void;
112
+ (value: SetStateAction<Array<never>>): void;
113
+ (arg0: Array<MenuItemProps | MenuGroupProps>): void;
114
+ },
115
+ setLoading: {
116
+ (value: SetStateAction<boolean>): void;
117
+ (value: SetStateAction<boolean>): void;
118
+ (value: SetStateAction<boolean>): void;
119
+ (arg0: boolean): void;
120
+ },
121
+ hasMoreResults: MutableRefObject<boolean>,
122
+ extraProps = {}
123
+ ) => {
124
+ if (dataApiObj && Object.keys(dataApiObj).length > 0 && dataApiObj.fetchData) {
125
+ let columnsWithSetProperty: string | Array<any> = [];
126
+ if (dataApiObj.columns) {
127
+ columnsWithSetProperty = dataApiObj.columns
128
+ .filter(
129
+ (col: { setProperty: string }) =>
130
+ col.setProperty && col.setProperty !== 'Associated property'
131
+ )
132
+ .map((col: { value: any }) => {
133
+ return col.value;
134
+ });
135
+ }
136
+ let listObjData = {};
137
+ dataApiObj
138
+ .fetchData(searchText)
139
+ .then((response: { data: Array<never> }) => {
140
+ listObjData = response.data || [];
141
+ // @ts-ignore
142
+ const searchedItems = listObjData.map((entry: { [x: string]: any }) => {
143
+ const secondaryArr: Array<any> = [];
144
+ const secondaryFieldValues: Array<any> = [];
145
+ displayFieldMeta.secondary.forEach((col: string) => {
146
+ if (!displayFieldMeta.hidden.includes(col)) secondaryArr.push(entry[col]);
147
+ if (columnsWithSetProperty.includes(col)) {
148
+ if (dataApiObj.isQueryable) {
149
+ secondaryFieldValues.push(entry[col]);
150
+ } else {
151
+ secondaryFieldValues.push(get(entry, getFieldNameFromEmbeddedFieldName(col)));
152
+ }
153
+ }
154
+ });
155
+ return {
156
+ id: entry[displayFieldMeta.key],
157
+ primary: entry[displayFieldMeta.primary],
158
+ secondary: secondaryArr,
159
+ secondaryFieldValues
160
+ };
161
+ });
162
+ hasMoreResults.current = true;
163
+ const {
164
+ fetchDisplayValue,
165
+ displayItem,
166
+ value,
167
+ AC_TYPE,
168
+ setSelected,
169
+ setFilterValue,
170
+ paginateHelperApis
171
+ } = extraProps as any;
172
+ if (dataApiObj.isQueryable === false) {
173
+ const progressivePaginatedRecords = paginateHelperApis.getInitialPaginatedRecords(
174
+ searchedItems,
175
+ dataApiObj.matchPosition
176
+ );
177
+ const updatedItems = menuHelpers.selectItem(searchedItems, value, AC_TYPE);
178
+ const selectedItem = menuHelpers.getSelected(updatedItems)[0];
179
+ let listIndex = -1;
180
+ const findSelectedItem = progressivePaginatedRecords.find(
181
+ (record: { id: string }, index: number) => {
182
+ if (record.id === selectedItem?.id) {
183
+ listIndex = index;
184
+ return true;
185
+ }
186
+ return false;
187
+ }
188
+ );
189
+ if (!findSelectedItem && selectedItem) {
190
+ progressivePaginatedRecords.unshift(selectedItem);
191
+ } else if (selectedItem) {
192
+ progressivePaginatedRecords.splice(listIndex, 1);
193
+ progressivePaginatedRecords.unshift(selectedItem);
194
+ }
195
+
196
+ if (fetchDisplayValue) {
197
+ setItems(progressivePaginatedRecords);
198
+ setSelected(selectedItem);
199
+ } else {
200
+ setItems(progressivePaginatedRecords);
201
+ setSelected(displayItem);
202
+ }
203
+ } else if (dataApiObj.isQueryable) {
204
+ if (value && value !== '') {
205
+ const updatedItems = menuHelpers.selectItem(searchedItems, value, AC_TYPE);
206
+ const selectedItem = menuHelpers.getSelected(updatedItems)[0];
207
+ if (!selectedItem) {
208
+ let searchedItem = [];
209
+ if (fetchDisplayValue) {
210
+ dataApiObj.matchPosition = 'equals';
211
+ buildColumnForDisplayValue(dataApiObj);
212
+ dataApiObj.fetchData(value).then((displayResponse: { data: Array<never> }) => {
213
+ const displayResponseData = displayResponse.data || [];
214
+
215
+ searchedItem = displayResponseData.map((entry: { [x: string]: any }) => {
216
+ const secondaryArr: Array<any> = [];
217
+ const secondaryFieldValues: Array<any> = [];
218
+ displayFieldMeta.secondary.forEach((col: string) => {
219
+ if (!displayFieldMeta.hidden.includes(col)) {
220
+ secondaryArr.push(entry[col]);
221
+ }
222
+ if (columnsWithSetProperty.includes(col)) {
223
+ if (dataApiObj.isQueryable) {
224
+ secondaryFieldValues.push(entry[col]);
225
+ } else {
226
+ secondaryFieldValues.push(
227
+ get(entry, getFieldNameFromEmbeddedFieldName(col))
228
+ );
229
+ }
230
+ }
231
+ });
232
+ return {
233
+ id: entry[displayFieldMeta.key],
234
+ primary: entry[displayFieldMeta.primary],
235
+ secondary: secondaryArr,
236
+ secondaryFieldValues
237
+ };
238
+ });
239
+ setItems(
240
+ menuHelpers.selectItem([...searchedItem, ...searchedItems], value, AC_TYPE)
241
+ );
242
+ setSelected(searchedItem[0]);
243
+ setFilterValue('');
244
+ });
245
+ } else if (displayItem) {
246
+ searchedItem = [displayItem];
247
+ setItems(
248
+ menuHelpers.selectItem([...searchedItem, ...searchedItems], value, AC_TYPE)
249
+ );
250
+ setSelected(searchedItem[0]);
251
+ setFilterValue('');
252
+ }
253
+ } else {
254
+ setItems(searchedItems);
255
+ setSelected(selectedItem);
256
+ setFilterValue('');
257
+ }
258
+ } else {
259
+ setItems(searchedItems);
260
+ if (value === '') {
261
+ setSelected(null);
262
+ }
263
+ }
264
+ } else {
265
+ setItems(searchedItems);
266
+ }
267
+ })
268
+ .catch(() => {
269
+ listObjData = [];
270
+ })
271
+ .finally(() => {
272
+ setLoading(false);
273
+ });
274
+ }
275
+ };
276
+
277
+ export const setValuesToPropertyList = (
278
+ selectedItem: any,
279
+ assocProp: any,
280
+ item: any,
281
+ columns: Array<any>,
282
+ actions: any
283
+ ) => {
284
+ const setPropertyList = columns
285
+ .filter(col => col.setProperty)
286
+ .map(col => {
287
+ return {
288
+ source: col.value,
289
+ target: col.setProperty,
290
+ key: col.key,
291
+ primary: col.value,
292
+ secondary: col.secondary
293
+ };
294
+ });
295
+ let valueToSet: any = null;
296
+ if (setPropertyList.length > 0) {
297
+ let secIndex = 0;
298
+ setPropertyList.forEach(prop => {
299
+ if (prop.key === 'true' && item) {
300
+ valueToSet = item?.id ?? '';
301
+ } else if (prop.primary === 'true' || !item) {
302
+ valueToSet = selectedItem?.primary ?? '';
303
+ }
304
+ if (prop.target === 'Associated property') {
305
+ handleEvent(actions, 'changeNblur', assocProp, valueToSet);
306
+ } else {
307
+ actions.updateFieldValue(
308
+ `.${prop.target.startsWith('.') ? prop.target.substring(1) : prop.target}`,
309
+ item?.secondaryFieldValues[secIndex]
310
+ );
311
+ actions.triggerFieldChange(
312
+ `.${prop.target.startsWith('.') ? prop.target.substring(1) : prop.target}`,
313
+ item?.secondaryFieldValues[secIndex],
314
+ true
315
+ );
316
+
317
+ secIndex += 1;
318
+ }
319
+ });
320
+ }
321
+ return valueToSet;
322
+ };
323
+
324
+ export const setValueToAssocProp = (
325
+ assocProp: any,
326
+ selectedItem: any,
327
+ listType: string,
328
+ listSource: Array<any>,
329
+ actions: any,
330
+ columns: Array<any>
331
+ ) => {
332
+ let searchedEntry = null;
333
+ let retValue;
334
+ if (listSource && listSource.length > 0 && listSource[0]) {
335
+ searchedEntry = listSource.filter(
336
+ item =>
337
+ item.id &&
338
+ selectedItem?.id &&
339
+ item.id.length === selectedItem?.id.length &&
340
+ item.id.toString().toLowerCase() === selectedItem?.id.toString().toLowerCase()
341
+ );
342
+ }
343
+ if (listType === 'associated') {
344
+ if (searchedEntry && searchedEntry.length > 0 && searchedEntry[0].id) {
345
+ retValue = searchedEntry[0].id;
346
+ handleEvent(actions, 'changeNblur', assocProp, searchedEntry[0].id);
347
+ } else {
348
+ retValue = selectedItem?.id ?? '';
349
+ handleEvent(actions, 'changeNblur', assocProp, selectedItem?.id);
350
+ }
351
+ } else if (listType === 'datapage') {
352
+ retValue = setValuesToPropertyList(
353
+ selectedItem,
354
+ assocProp,
355
+ searchedEntry?.[0],
356
+ columns,
357
+ actions
358
+ );
359
+ }
360
+ return retValue;
361
+ };
362
+
363
+ const DisplayComponent = (props: {{COMPONENT_CLASS_NAME}}PropsSubSet) => {
364
+ const { selected, actualValue, isTableFormatter, formatter } = props;
365
+
366
+ const displayCompValue = selected ? selected.primary : actualValue;
367
+ const formattedValue =
368
+ isTableFormatter && formatExists(formatter)
369
+ ? textFormatter(formatter, displayCompValue)
370
+ : displayCompValue;
371
+
372
+ return formattedValue || <span aria-hidden='true'>&ndash;&ndash;</span>;
373
+ };
374
+
375
+
376
+ // Duplicated runtime code from Constellation Design System Component
377
+
378
+ // props passed in combination of props from property panel (config.json) and run time props from Constellation
379
+ // any default values in config.pros should be set in defaultProps at bottom of this file
380
+ export function {{COMPONENT_CLASS_NAME}}(props: {{COMPONENT_CLASS_NAME}}Props) {
381
+ const {
382
+ getPConnect,
383
+ value,
384
+ placeholder,
385
+ validatemessage,
386
+ label,
387
+ hideLabel,
388
+ helperText,
389
+ testId,
390
+ matchPosition,
391
+ maxResultsDisplay,
392
+ cacheLifeSpan,
393
+ displayMode,
394
+ onRecordChange,
395
+ createNewRecord,
396
+ datasourceMetadata,
397
+ deferDatasource,
398
+ additionalProps,
399
+ referenceType,
400
+ primaryField,
401
+ isTableFormatter,
402
+ descriptors,
403
+ dataRelationshipContext,
404
+ hasSuggestions,
405
+ contextClass
406
+ } = props;
407
+ const { formatter } = props;
408
+ let { listType, datasource, parameters, columns } = props;
409
+
410
+ // enable searhing based on the key
411
+ const { isSearchableOnKey } = props;
412
+
413
+ const [items, setItems] = useState(() => []);
414
+ let selectItem: ((id: string, ev?: any) => void) | ((arg0: never) => void);
415
+
416
+ // convert associated to datapage listtype and transform props
417
+ // Process deferDatasource when datapage name is present. WHhen tableType is promptList / localList
418
+ // no need to make any datapage call
419
+ if (deferDatasource && datasourceMetadata?.datasource?.name) {
420
+ listType = 'datapage';
421
+ datasource = datasourceMetadata.datasource.name;
422
+ parameters = flattenParameters(datasourceMetadata.datasource.parameters);
423
+ let displayProp = datasourceMetadata.datasource.propertyForDisplayText.startsWith('@P')
424
+ ? datasourceMetadata.datasource.propertyForDisplayText.substring(3)
425
+ : datasourceMetadata.datasource.propertyForDisplayText;
426
+ const valueProp = datasourceMetadata.datasource.propertyForValue.startsWith('@P')
427
+ ? datasourceMetadata.datasource.propertyForValue.substring(3)
428
+ : datasourceMetadata.datasource.propertyForValue;
429
+ if (displayProp === '') {
430
+ displayProp = valueProp;
431
+ }
432
+ let hasKey = false;
433
+ let hasAPrimaryColumn = false;
434
+ columns?.forEach(column => {
435
+ if (!hasKey && column.key === 'true') {
436
+ hasKey = true;
437
+ }
438
+ if (!hasAPrimaryColumn && column.primary === 'true') {
439
+ hasAPrimaryColumn = true;
440
+ }
441
+ });
442
+ if (!hasKey) {
443
+ columns = [
444
+ ...columns,
445
+ {
446
+ key: 'true',
447
+ setProperty: 'Associated property',
448
+ value: valueProp
449
+ }
450
+ ];
451
+ }
452
+ if (!hasAPrimaryColumn) {
453
+ columns = [
454
+ ...columns,
455
+ {
456
+ display: 'true',
457
+ primary: 'true',
458
+ useForSearch: true,
459
+ value: displayProp
460
+ }
461
+ ];
462
+ }
463
+
464
+ // to make the Autosearch Searchable on the key value
465
+ if (isSearchableOnKey) {
466
+ const existingColObj = columns.filter(col => col.value === valueProp);
467
+ if (existingColObj) {
468
+ columns.forEach(col => {
469
+ if (col.value === valueProp) {
470
+ col.useForSearch = true;
471
+ col.display = 'true';
472
+ col.secondary = 'true';
473
+ }
474
+ });
475
+ } else {
476
+ columns = [
477
+ ...columns,
478
+ {
479
+ display: 'true',
480
+ secondary: 'true',
481
+ useForSearch: true,
482
+ value: valueProp
483
+ }
484
+ ];
485
+ }
486
+ }
487
+ }
488
+
489
+ // BUG-547602: Temporary type coercion for 8.5 until DXAPIs are enhanced to pass original pxViewMetadata JSON, respecting boolean primitives
490
+ let { readOnly, required, disabled } = props;
491
+ [readOnly, required, disabled] = [readOnly, required, disabled].map(
492
+ prop => prop === true || (typeof prop === 'string' && prop === 'true')
493
+ );
494
+
495
+ const AC_TYPE = 'single-select';
496
+ const pConn = getPConnect();
497
+ const contextName = getPConnect().getContextName();
498
+ const actions = pConn.getActionsApi();
499
+ const [dataApiObj, setDataApiObj] = useState(() => ({}));
500
+ const [filterValue, setFilterValue] = useState('');
501
+ const [loading, setLoading] = useState(listType !== 'associated');
502
+ // const selected = useMemo(() => menuHelpers.getSelected(items)[0], [items]);
503
+ const [selected, setSelected] = useState();
504
+ const hasMoreResults = useRef(true);
505
+ const inputValueRef = useRef('');
506
+ const displayFieldMeta = useRef(null);
507
+ const [actualValue, setActualValue] = useState();
508
+ const [newRecordCreated, setNewRecordCreated] = useState();
509
+
510
+ const searchHandlerThrottled = throttle(doSearch, 500);
511
+ const searchHandlerDebounced = debounce(doSearch, 500);
512
+ const paginateHelperApis = usePaginate();
513
+ const isMount = useIsMount();
514
+ const [status, setStatus] = useState(hasSuggestions ? 'pending' : undefined);
515
+ const memoizedParameters = useDeepMemo(() => {
516
+ return parameters;
517
+ }, [parameters]);
518
+
519
+ const updatedColumns = useMemo(() => {
520
+ const isSecondaryColumnAvailable = columns.some(col => col.secondary === 'true');
521
+ if (referenceType === 'Case' && !isSecondaryColumnAvailable) {
522
+ const valueProp = columns.filter(col => col.key === 'true')[0].value;
523
+ const existingColObj = columns.filter(col => col.value === valueProp);
524
+ if (existingColObj) {
525
+ columns.forEach(col => {
526
+ if (col.value === valueProp) {
527
+ col.display = 'true';
528
+ col.secondary = 'true';
529
+ col.useForSearch = 'true';
530
+ }
531
+ });
532
+ } else {
533
+ columns = [
534
+ ...columns,
535
+ {
536
+ value: valueProp.startsWith('.') ? valueProp.substring(1) : valueProp,
537
+ display: 'true',
538
+ secondary: 'true',
539
+ useForSearch: 'true'
540
+ }
541
+ ];
542
+ }
543
+ }
544
+
545
+ if (descriptors && (referenceType === 'Case' || referenceType === 'Data')) {
546
+ const descriptorColumns = descriptors.map((item: string) => {
547
+ if (isSelfReferencedProperty(item, dataRelationshipContext) && !item.includes('(')) {
548
+ const name = getDescriptorsFieldName(item, contextClass);
549
+ return {
550
+ value: name,
551
+ display: 'false',
552
+ secondary: 'true',
553
+ useForSearch: 'false',
554
+ setProperty: `${item.substring(3)}`
555
+ };
556
+ }
557
+ return item;
558
+ });
559
+ columns = descriptorColumns ? [...columns, ...descriptorColumns] : columns;
560
+ }
561
+ return columns;
562
+ }, [listType]);
563
+
564
+ const dataConfig = useDeepMemo(() => {
565
+ return {
566
+ dataSource: datasource,
567
+ parameters: memoizedParameters,
568
+ matchPosition,
569
+ listType,
570
+ columns: preProcessColumns(updatedColumns),
571
+ cacheLifeSpan: cacheLifeSpan || 'form',
572
+ deferDatasource,
573
+ pageSize: '50',
574
+ enablePagination: true
575
+ };
576
+ }, [datasource, memoizedParameters, matchPosition, listType, maxResultsDisplay]);
577
+
578
+ useEffect(() => {
579
+ if (validatemessage !== '') {
580
+ setStatus('error');
581
+ }
582
+ if (hasSuggestions) {
583
+ setStatus('pending');
584
+ } else if (!hasSuggestions && status !== 'success') {
585
+ setStatus(validatemessage !== '' ? 'error' : undefined);
586
+ }
587
+ }, [validatemessage, hasSuggestions]);
588
+
589
+ // Rearranging the columns to default columns defined as key to be used as secondary columns for Case references
590
+ useEffect(() => {
591
+ displayFieldMeta.current =
592
+ listType !== 'associated'
593
+ ? getDisplayFieldsMetaData(dataConfig.columns as Array<any>)
594
+ : ({ key: '', primary: '', secondary: [], hidden: [] } as any);
595
+ }, []);
596
+
597
+ // Handling setting the combobox list for listType associated use case
598
+ useEffect(() => {
599
+ if (listType === 'associated') {
600
+ const associatedItems = datasource.map((entry: { key: any; value: any }) => {
601
+ return { id: entry.key, primary: entry.value };
602
+ });
603
+ const updatedItems = menuHelpers.selectItem(associatedItems, value?.toString(), AC_TYPE);
604
+ const selectedItem = menuHelpers.getSelected(updatedItems)[0];
605
+ const initialPaginatedRecords = paginateHelperApis.getInitialPaginatedRecords(
606
+ associatedItems,
607
+ dataConfig.matchPosition
608
+ );
609
+ const findSelectedItem = initialPaginatedRecords.find(
610
+ (record: { id: string }) => record.id === selectedItem?.id
611
+ );
612
+ if (!findSelectedItem && selectedItem) {
613
+ initialPaginatedRecords.push(selectedItem);
614
+ }
615
+ setItems(initialPaginatedRecords);
616
+ setSelected(selectedItem as SetStateAction<any>);
617
+ setActualValue(value);
618
+ setFilterValue('');
619
+ inputValueRef.current = '';
620
+ }
621
+ }, [listType, datasource, value]);
622
+
623
+ useEffect(() => {
624
+ if (!displayMode && listType === 'datapage') {
625
+ let displayItem:
626
+ | ((prevState: undefined) => undefined)
627
+ | { id: any; primary: string; secondary: Array<any> }
628
+ | { id: any; primary: string; secondary?: undefined }
629
+ | null
630
+ | undefined = null;
631
+ if (referenceType === 'Case' || referenceType === 'Data') {
632
+ displayItem =
633
+ referenceType === 'Case'
634
+ ? {
635
+ id: value,
636
+ primary: primaryField,
637
+ secondary: [value]
638
+ }
639
+ : {
640
+ id: value,
641
+ primary: primaryField
642
+ };
643
+ setSelected(displayItem as any);
644
+ }
645
+ PCore.getDataApi()
646
+ .init(dataConfig, contextName)
647
+ .then(dataObj => {
648
+ setDataApiObj(dataObj);
649
+ // To avoid calling doSearch if someone types/pastes value before the API call is made
650
+ if (!filterValue)
651
+ doSearch(
652
+ '',
653
+ getDisplayFieldsMetaData(dataConfig.columns),
654
+ dataObj,
655
+ setItems as any,
656
+ setLoading,
657
+ hasMoreResults,
658
+ {
659
+ fetchDisplayValue: false,
660
+ value,
661
+ displayItem,
662
+ AC_TYPE,
663
+ setSelected,
664
+ setFilterValue,
665
+ paginateHelperApis,
666
+ pConn
667
+ }
668
+ );
669
+ });
670
+ }
671
+ }, [value, primaryField, newRecordCreated]);
672
+
673
+ useEffect(() => {
674
+ // Checking if Case/Data ref is only called for re-render and not for mount
675
+ const dataRefMount = isMount && (referenceType === 'Case' || referenceType === 'Data');
676
+ if (!dataRefMount && !displayMode && listType === 'datapage') {
677
+ PCore.getDataApi()
678
+ .init(dataConfig, contextName)
679
+ .then(dataObj => {
680
+ setDataApiObj(dataObj);
681
+ // To avoid calling doSearch if someone types/pastes value before the API call is made
682
+ if (!filterValue) {
683
+ // @ts-ignore
684
+ if (displayFieldMeta?.current?.key === displayFieldMeta?.current?.primary) {
685
+ const displayItem = {
686
+ id: value,
687
+ primary: value,
688
+ secondary: [],
689
+ secondaryFieldValues: []
690
+ };
691
+ setSelected(displayItem as any);
692
+ doSearch(
693
+ '',
694
+ getDisplayFieldsMetaData(dataConfig.columns),
695
+ dataObj,
696
+ setItems as any,
697
+ setLoading,
698
+ hasMoreResults,
699
+ {
700
+ fetchDisplayValue: false,
701
+ value,
702
+ displayItem,
703
+ AC_TYPE,
704
+ setSelected,
705
+ setFilterValue,
706
+ paginateHelperApis,
707
+ pConn
708
+ }
709
+ );
710
+ } else {
711
+ doSearch(
712
+ '',
713
+ getDisplayFieldsMetaData(dataConfig.columns),
714
+ dataObj,
715
+ setItems as any,
716
+ setLoading,
717
+ hasMoreResults,
718
+ {
719
+ fetchDisplayValue: true,
720
+ value,
721
+ AC_TYPE,
722
+ setSelected,
723
+ setFilterValue,
724
+ paginateHelperApis,
725
+ pConn
726
+ }
727
+ );
728
+ }
729
+ }
730
+ });
731
+ }
732
+ }, [listType, dataConfig, contextName, value, memoizedParameters]);
733
+
734
+ useEffect(() => {
735
+ if (listType === 'datapage' && displayMode && displayMode?.length > 0 && value !== '') {
736
+ let displayItem = null;
737
+ if (referenceType === 'Case' || referenceType === 'Data') {
738
+ displayItem =
739
+ referenceType === 'Case'
740
+ ? {
741
+ id: value,
742
+ primary: primaryField,
743
+ secondary: [value]
744
+ }
745
+ : {
746
+ id: value,
747
+ primary: primaryField
748
+ };
749
+ }
750
+ setSelected(displayItem as any);
751
+ setActualValue(value);
752
+ }
753
+ }, [value, primaryField]);
754
+
755
+ useEffect(() => {
756
+ if (newRecordCreated) {
757
+ selectItem(newRecordCreated);
758
+ setNewRecordCreated(undefined);
759
+ }
760
+ }, [items.length]);
761
+
762
+ useEffect(() => {
763
+ if (
764
+ listType === 'datapage' &&
765
+ displayMode &&
766
+ displayMode?.length > 0 &&
767
+ value !== '' &&
768
+ !(referenceType === 'Case' || referenceType === 'Data')
769
+ ) {
770
+ PCore.getDataApi()
771
+ .init(dataConfig, contextName)
772
+ .then(dataObj => {
773
+ setDataApiObj(dataObj);
774
+ buildColumnForDisplayValue(dataObj);
775
+ // SET matchPosition to EQUALS to return exact matching record
776
+ dataObj.matchPosition = 'equals';
777
+ dataObj
778
+ .fetchData(value)
779
+ .then((displayResponse: { data: Array<never> }) => {
780
+ let columnsWithSetProperty: string | Array<any> = [];
781
+ // @ts-ignore
782
+ if (dataApiObj.columns) {
783
+ // @ts-ignore
784
+ columnsWithSetProperty = dataApiObj.columns
785
+ .filter(
786
+ (col: { setProperty: string }) =>
787
+ col.setProperty && col.setProperty !== 'Associated property'
788
+ )
789
+ .map((col: { value: any }) => {
790
+ return col.value;
791
+ });
792
+ }
793
+ const displayResponseData = displayResponse.data || [];
794
+
795
+ const searchedItem = displayResponseData.map((entry: { [x: string]: any }) => {
796
+ const secondaryArr: Array<any> = [];
797
+ const secondaryFieldValues: Array<any> = [];
798
+ // @ts-ignore
799
+ displayFieldMeta.current.secondary.forEach((col: string) => {
800
+ // @ts-ignore
801
+ if (!displayFieldMeta.hidden.includes(col)) secondaryArr.push(entry[col]);
802
+ if (columnsWithSetProperty.includes(col)) {
803
+ // @ts-ignore
804
+ if (dataApiObj.isQueryable) {
805
+ secondaryFieldValues.push(entry[col]);
806
+ } else {
807
+ secondaryFieldValues.push(get(entry, getFieldNameFromEmbeddedFieldName(col)));
808
+ }
809
+ }
810
+ });
811
+ return {
812
+ // @ts-ignore
813
+ id: entry[displayFieldMeta.current.key],
814
+ // @ts-ignore
815
+ primary: entry[displayFieldMeta.current.primary],
816
+ secondary: secondaryArr,
817
+ secondaryFieldValues
818
+ };
819
+ });
820
+
821
+ // @ts-ignore
822
+ setSelected(searchedItem[0]);
823
+ setActualValue(value);
824
+ // RESET matchPosition
825
+ dataObj.matchPosition = dataConfig.matchPosition;
826
+ })
827
+ .catch(() => {
828
+ setActualValue(value);
829
+ // RESET matchPosition
830
+ dataObj.matchPosition = dataConfig.matchPosition;
831
+ });
832
+ });
833
+ }
834
+ }, [listType, dataConfig, contextName, value, memoizedParameters]);
835
+
836
+ /* @ts-ignore */
837
+ const clearSelections = () => {
838
+ // @ts-ignore
839
+ setItems(cur =>
840
+ menuHelpers.mapTree(cur, item => {
841
+ return {
842
+ ...item,
843
+ selected: false
844
+ };
845
+ })
846
+ );
847
+ // @ts-ignore
848
+ setSelected(null);
849
+ inputValueRef.current = '';
850
+ };
851
+
852
+ const onChangeHandler = (ev: { target: { value: any } }) => {
853
+ if (hasSuggestions) {
854
+ // @ts-ignore
855
+ pConn.ignoreSuggestion();
856
+ setStatus(undefined);
857
+ }
858
+
859
+ // @ts-ignore
860
+ dataApiObj.columns = dataConfig.columns;
861
+ // @ts-ignore
862
+ dataApiObj.matchPosition = dataConfig.matchPosition;
863
+ const searchText = ev.target.value;
864
+ inputValueRef.current = searchText;
865
+ // If the user backspaces or deletes in full the input filterValue, Cosmos UX advises to deselect any items.
866
+ if (!searchText) {
867
+ clearSelections();
868
+ }
869
+ setFilterValue(searchText);
870
+ // @ts-ignore
871
+ if (listType === 'datapage' && dataApiObj.isQueryable) {
872
+ hasMoreResults.current = true;
873
+ if (searchText.length < 5) {
874
+ searchHandlerThrottled(
875
+ searchText,
876
+ // @ts-ignore
877
+ displayFieldMeta.current,
878
+ dataApiObj,
879
+ setItems,
880
+ setLoading,
881
+ hasMoreResults
882
+ );
883
+ } else {
884
+ searchHandlerDebounced(
885
+ searchText,
886
+ // @ts-ignore
887
+ displayFieldMeta.current,
888
+ dataApiObj,
889
+ setItems,
890
+ setLoading,
891
+ hasMoreResults
892
+ );
893
+ }
894
+ } else if (
895
+ listType === 'associated' ||
896
+ // @ts-ignore
897
+ (listType === 'datapage' && dataApiObj?.isQueryable === false)
898
+ ) {
899
+ paginateHelperApis.resetIndexes();
900
+ const progressivePaginatedRecords = paginateHelperApis.fetchData(
901
+ inputValueRef.current,
902
+ false,
903
+ // @ts-ignore
904
+ dataApiObj.columns
905
+ );
906
+ setItems(progressivePaginatedRecords);
907
+ }
908
+ };
909
+
910
+ const onBlurHandler = (ev: any) => {
911
+ // @ts-ignore
912
+ if (!ev?.id || ev?.id !== selected?.id) {
913
+ const stateProps = pConn.getStateProps() as StateProps;
914
+ const assocProp = stateProps.value;
915
+ const propValue = setValueToAssocProp(
916
+ assocProp,
917
+ selected || null,
918
+ listType,
919
+ items,
920
+ actions,
921
+ dataConfig.columns
922
+ );
923
+ if (onRecordChange) {
924
+ onRecordChange(ev, propValue);
925
+ }
926
+ }
927
+
928
+ setFilterValue('');
929
+ if (!selected && inputValueRef.current !== '') {
930
+ // @ts-ignore
931
+ if (listType === 'datapage' && dataApiObj.isQueryable) {
932
+ hasMoreResults.current = true;
933
+ searchHandlerThrottled(
934
+ '',
935
+ // @ts-ignore
936
+ displayFieldMeta.current,
937
+ dataApiObj,
938
+ setItems,
939
+ setLoading,
940
+ hasMoreResults
941
+ );
942
+ } else if (
943
+ listType === 'associated' ||
944
+ // @ts-ignore
945
+ (listType === 'datapage' && dataApiObj?.isQueryable === false)
946
+ ) {
947
+ paginateHelperApis.resetIndexes();
948
+ const progressivePaginatedRecords = paginateHelperApis.fetchData('', false);
949
+ setItems(progressivePaginatedRecords);
950
+ }
951
+ }
952
+ };
953
+
954
+ // const filtered = useMemo(() => {
955
+ // return filterValue && listType === "associated"
956
+ // ? filterAssociatedItems()
957
+ // : items;
958
+ // }, [filterValue, items, listType]);
959
+
960
+ selectItem = (id: string, ev: any = {}) => {
961
+ const updatedItems = menuHelpers.selectItem(items, id, AC_TYPE);
962
+ // @ts-ignore
963
+ setItems(cur => menuHelpers.selectItem(cur, id, AC_TYPE));
964
+ // @ts-ignore
965
+ setSelected(menuHelpers.getSelected(updatedItems)[0]);
966
+ // const { id: itemId } = menuHelpers.getSelected(updatedItems)[0];
967
+ // @ts-ignore
968
+ const assocProp = pConn.getStateProps().value;
969
+ const propValue = setValueToAssocProp(
970
+ assocProp,
971
+ menuHelpers.getSelected(updatedItems)[0],
972
+ listType,
973
+ updatedItems,
974
+ actions,
975
+ dataConfig.columns
976
+ );
977
+ setFilterValue('');
978
+ inputValueRef.current = '';
979
+ if (onRecordChange) {
980
+ ev.id = id;
981
+ onRecordChange(ev, propValue);
982
+ }
983
+ };
984
+
985
+ const removeDuplicates = (arrayOne: string | Array<any>, arrayTwo: Array<any>) => {
986
+ arrayTwo = arrayTwo.filter((item: { id: any }) => {
987
+ for (let i = 0, len = arrayOne.length; i < len; i += 1) {
988
+ if (arrayOne[i].id === item.id) {
989
+ return false;
990
+ }
991
+ }
992
+ return true;
993
+ });
994
+ return arrayTwo;
995
+ };
996
+
997
+ const loadMore = () => {
998
+ if (
999
+ (listType === 'associated' ||
1000
+ // @ts-ignore
1001
+ (listType === 'datapage' && dataApiObj?.isQueryable === false)) &&
1002
+ paginateHelperApis.hasMoreResults(inputValueRef.current)
1003
+ ) {
1004
+ let progressivePaginatedRecords = paginateHelperApis.fetchData(inputValueRef.current, true);
1005
+ // @ts-ignore
1006
+ setItems(previousItems => {
1007
+ progressivePaginatedRecords = removeDuplicates(previousItems, progressivePaginatedRecords);
1008
+ return [...previousItems, ...progressivePaginatedRecords];
1009
+ });
1010
+ // @ts-ignore
1011
+ } else if (listType === 'datapage' && dataApiObj.isQueryable && hasMoreResults.current) {
1012
+ setLoading(true);
1013
+ dataApiObj
1014
+ // @ts-ignore
1015
+ .fetchPaginatedData(inputValueRef.current)
1016
+ .then((response: { pageSize: number; data: Array<never> }) => {
1017
+ setLoading(false);
1018
+ // @ts-ignore
1019
+ if (response.pageSize === 0 || response.pageSize < dataApiObj.pageSize) {
1020
+ hasMoreResults.current = false;
1021
+ }
1022
+ const listObjData = response.data || [];
1023
+ let columnsWithSetProperty: string | Array<any> = [];
1024
+ // @ts-ignore
1025
+ if (dataApiObj.columns) {
1026
+ // @ts-ignore
1027
+ columnsWithSetProperty = dataApiObj.columns
1028
+ .filter(
1029
+ (col: { setProperty: string }) =>
1030
+ col.setProperty && col.setProperty !== 'Associated property'
1031
+ )
1032
+ .map((col: { value: any }) => {
1033
+ return col.value;
1034
+ });
1035
+ }
1036
+
1037
+ const searchedItems = listObjData.map((entry: { [x: string]: any }) => {
1038
+ const secondaryArr: Array<any> = [];
1039
+ const secondaryFieldValues: Array<any> = [];
1040
+ // @ts-ignore
1041
+ displayFieldMeta.current.secondary.forEach((col: string) => {
1042
+ // @ts-ignore
1043
+ if (!displayFieldMeta.current.hidden.includes(col)) secondaryArr.push(entry[col]);
1044
+ if (columnsWithSetProperty.includes(col)) {
1045
+ // @ts-ignore
1046
+ if (dataApiObj.isQueryable) {
1047
+ secondaryFieldValues.push(entry[col]);
1048
+ } else {
1049
+ secondaryFieldValues.push(get(entry, getFieldNameFromEmbeddedFieldName(col)));
1050
+ }
1051
+ }
1052
+ });
1053
+ return {
1054
+ // @ts-ignore
1055
+ id: entry[displayFieldMeta.current.key],
1056
+ // @ts-ignore
1057
+ primary: entry[displayFieldMeta.current.primary],
1058
+ secondary: secondaryArr,
1059
+ secondaryFieldValues
1060
+ };
1061
+ });
1062
+ // @ts-ignore
1063
+ setItems(previousItems => [...previousItems, ...searchedItems]);
1064
+ })
1065
+ .catch(() => {
1066
+ setLoading(false);
1067
+ // @ts-ignore
1068
+ dataApiObj.pageSize -= 1;
1069
+ });
1070
+ }
1071
+ };
1072
+
1073
+ const displayComponent = useMemo(() => {
1074
+ return <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
1075
+ <DisplayComponent {...{ selected, actualValue, isTableFormatter, formatter }} />
1076
+ </Styled{{COMPONENT_CLASS_NAME}}Wrapper>;
1077
+ }, [selected, actualValue, isTableFormatter, formatter]);
1078
+
1079
+ if (displayMode) {
1080
+ return displayComponent;
1081
+ }
1082
+
1083
+ const onResolveSuggestionHandler = (accepted: boolean) => {
1084
+ suggestionsHandler(accepted, pConn, setStatus);
1085
+ };
1086
+
1087
+ const createNewButtonHandler = () => {
1088
+ const { CREATE_STAGE_DONE } = PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS;
1089
+ createNewRecord().then(() => {
1090
+ PCore.getPubSubUtils().subscribe(
1091
+ CREATE_STAGE_DONE,
1092
+ (data: { caseId: string; caseType: string }) => {
1093
+ PCore.getDataApi().clearContextedCache(contextName);
1094
+ const newCaseId = data.caseId.split(' ').pop();
1095
+ if (data.caseType === contextClass && newRecordCreated !== newCaseId) {
1096
+ // @ts-ignore
1097
+ if (pConn.isMounted && dataConfig.pageSize > items.length) {
1098
+ // @ts-ignore
1099
+ setNewRecordCreated(newCaseId);
1100
+ } else {
1101
+ updatePropertiesForNewRecord(
1102
+ dataConfig,
1103
+ contextName,
1104
+ dataApiObj,
1105
+ setDataApiObj,
1106
+ displayFieldMeta,
1107
+ pConn,
1108
+ columns,
1109
+ actions,
1110
+ newCaseId
1111
+ );
1112
+ }
1113
+
1114
+ PCore.getPubSubUtils().unsubscribe(CREATE_STAGE_DONE, contextClass);
1115
+ }
1116
+ },
1117
+ contextClass
1118
+ );
1119
+ });
1120
+ };
1121
+
1122
+
1123
+ return (
1124
+ <Styled{{COMPONENT_CLASS_NAME}}Wrapper>
1125
+ <ComboBox
1126
+ {...additionalProps}
1127
+ testId={testId ?? label}
1128
+ info={validatemessage || helperText}
1129
+ status={status}
1130
+ value={filterValue}
1131
+ label={label}
1132
+ labelHidden={hideLabel}
1133
+ readOnly={readOnly}
1134
+ required={required}
1135
+ disabled={disabled}
1136
+ placeholder={placeholder}
1137
+ {{! pick new delimiters for mustache }}
1138
+ {{=<% %>=}}
1139
+ selected={{
1140
+ // @ts-ignore
1141
+ items: selected ? { text: selected.primary, id: selected.id } : undefined
1142
+ }}
1143
+ onChange={onChangeHandler}
1144
+ onBlur={onBlurHandler}
1145
+ menu={{
1146
+ items: menuHelpers.mapTree(items, (item) => ({
1147
+ ...item,
1148
+ testId: item.id ?? undefined,
1149
+ // @ts-ignore
1150
+ selected: item.items ? undefined : !!item.selected || item.id === selected?.id
1151
+ })),
1152
+ onItemClick: selectItem,
1153
+ // @ts-ignore
1154
+ emptyText: pConn.getLocalizedValue('No items'),
1155
+ loading,
1156
+ loadMore,
1157
+ footer: createNewRecord ? (
1158
+ <Button
1159
+ label={PCore.getLocaleUtils().getLocaleValue('Create new', 'ComponentFields')}
1160
+ onClick={createNewButtonHandler}
1161
+ variant='link'
1162
+ // @ts-ignore
1163
+ compact='true'
1164
+ >
1165
+ <Icon name='plus' /> {PCore.getLocaleUtils().getLocaleValue('Create new', 'ComponentFields')}
1166
+ </Button>
1167
+ ) : undefined
1168
+ }}
1169
+ <%={{ }}=%> {{! revert delimiters for mustache }}
1170
+ mode={AC_TYPE}
1171
+ onResolveSuggestion={onResolveSuggestionHandler}
1172
+ />
1173
+ </Styled{{COMPONENT_CLASS_NAME}}Wrapper>
1174
+ );
1175
+ }
1176
+
1177
+ export default memo({{COMPONENT_CLASS_NAME}});
1178
+
1179
+ {{COMPONENT_CLASS_NAME}}.defaultProps = {
1180
+ value: '',
1181
+ matchPosition: 'contains',
1182
+ maxResultsDisplay: '',
1183
+ placeholder: '',
1184
+ hideLabel: false,
1185
+ validatemessage: '',
1186
+ helperText: '',
1187
+ disabled: false,
1188
+ readOnly: false,
1189
+ required: false,
1190
+ testId: '',
1191
+ datasource: [],
1192
+ listType: '',
1193
+ parameters: {},
1194
+ columns: [],
1195
+ cacheLifeSpan: '',
1196
+ displayMode: null,
1197
+ onRecordChange: null,
1198
+ datasourceMetadata: null,
1199
+ deferDatasource: false,
1200
+ additionalProps: {},
1201
+ formatter: '',
1202
+ referenceType: null,
1203
+ isTableFormatter: false,
1204
+ primaryField: '',
1205
+ hasSuggestions: false
1206
+ };
1207
+
1208
+ {{COMPONENT_CLASS_NAME}}.propTypes = {
1209
+ value: PropTypes.string,
1210
+ maxResultsDisplay: PropTypes.string,
1211
+ matchPosition: PropTypes.string,
1212
+ placeholder: PropTypes.string,
1213
+ label: PropTypes.string.isRequired,
1214
+ hideLabel: PropTypes.bool,
1215
+ getPConnect: PropTypes.func.isRequired,
1216
+ validatemessage: PropTypes.string,
1217
+ helperText: PropTypes.string,
1218
+ disabled: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),
1219
+ readOnly: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),
1220
+ required: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),
1221
+ testId: PropTypes.string,
1222
+ datasource: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.any), PropTypes.string]),
1223
+ listType: PropTypes.string,
1224
+ parameters: PropTypes.objectOf(PropTypes.any),
1225
+ columns: PropTypes.arrayOf(PropTypes.object),
1226
+ cacheLifeSpan: PropTypes.string,
1227
+ displayMode: PropTypes.string,
1228
+ createNewRecord: PropTypes.func,
1229
+ onRecordChange: PropTypes.func,
1230
+ datasourceMetadata: PropTypes.objectOf(PropTypes.any),
1231
+ deferDatasource: PropTypes.bool,
1232
+ additionalProps: PropTypes.objectOf(PropTypes.any),
1233
+ formatter: PropTypes.string,
1234
+ referenceType: PropTypes.string,
1235
+ primaryField: PropTypes.string,
1236
+ isTableFormatter: PropTypes.bool,
1237
+ hasSuggestions: PropTypes.bool
1238
+ };