@salesforce/templates 66.13.7 → 66.13.8

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 (653) hide show
  1. package/lib/templates/project/angularextapp/CHANGELOG.md +232 -0
  2. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/angular.json +2 -7
  3. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/components.json +6 -0
  4. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/eslint.config.js +9 -1
  5. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/package-lock.json +19242 -9456
  6. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/package.json +17 -11
  7. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/app.config.ts +4 -6
  8. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/app.routes.ts +2 -2
  9. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/alert/alert.html +9 -13
  10. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/alert/alert.ts +16 -28
  11. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/button/button.html +19 -10
  12. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/button/button.ts +34 -25
  13. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/card/card.ts +40 -50
  14. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/collapsible/collapsible.html +38 -10
  15. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/collapsible/collapsible.ts +6 -11
  16. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-picker/date-picker.html +17 -22
  17. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-picker/date-picker.ts +29 -21
  18. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-range-picker/date-range-picker.html +16 -30
  19. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-range-picker/date-range-picker.ts +39 -36
  20. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/dialog/dialog.html +13 -30
  21. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/dialog/dialog.ts +6 -21
  22. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/dropdown-menu/dropdown-menu.html +20 -0
  23. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/dropdown-menu/dropdown-menu.ts +100 -0
  24. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/field/field.html +5 -11
  25. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/field/field.ts +10 -18
  26. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/field-appearance.ts +8 -0
  27. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/icon/icon.ts +62 -0
  28. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/input/input.html +32 -17
  29. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/input/input.ts +57 -14
  30. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/label/label.ts +8 -4
  31. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/paginator/paginator.html +74 -10
  32. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/paginator/paginator.ts +74 -18
  33. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/paginator/types.ts +13 -0
  34. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/popover/popover.html +10 -38
  35. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/popover/popover.ts +12 -15
  36. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/select/select.html +34 -22
  37. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/select/select.ts +25 -34
  38. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/separator/separator.ts +11 -36
  39. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/skeleton/skeleton.ts +5 -9
  40. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/spinner/spinner.ts +14 -21
  41. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/authentication/auth-form/auth-form.html +2 -3
  42. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/authentication/menu/auth-menu/auth-menu.html +31 -21
  43. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/authentication/menu/auth-menu/auth-menu.ts +6 -18
  44. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/authentication/session/session.html +2 -2
  45. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/authentication/submit-button/submit-button.html +8 -4
  46. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/authentication/submit-button/submit-button.ts +4 -16
  47. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/breadcrumb/breadcrumb.html +4 -24
  48. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/breadcrumb/breadcrumb.ts +3 -16
  49. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/date-filter.ts +1 -1
  50. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/date-range-filter.html +2 -1
  51. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/date-range-filter.ts +6 -15
  52. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/filter-field-wrapper.html +2 -0
  53. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/filter-field-wrapper.ts +2 -17
  54. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/multi-select-filter.html +2 -1
  55. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/numeric-range-filter.ts +3 -21
  56. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/search-filter.html +3 -3
  57. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/search-filter.ts +9 -13
  58. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/select-filter.html +2 -5
  59. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/select-filter.ts +1 -15
  60. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/text-filter.html +2 -5
  61. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/text-filter.ts +3 -17
  62. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/pagination/pagination.ts +4 -20
  63. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/search-bar/search-bar.html +10 -59
  64. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/search-bar/search-bar.ts +13 -93
  65. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/sort-control/sort-control.html +3 -29
  66. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/object-search/sort-control/sort-control.ts +5 -12
  67. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/pages/account-detail/account-detail-page.html +1 -23
  68. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/pages/account-detail/account-detail-page.ts +3 -23
  69. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/pages/account-search/account-search-page.html +1 -19
  70. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/pages/account-search/account-search-page.ts +8 -36
  71. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/pages/home/home.html +15 -4
  72. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/pages/home/home.spec.ts +8 -6
  73. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/pages/home/home.ts +56 -4
  74. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/alert/hlm-alert-action.ts +14 -0
  75. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/alert/hlm-alert-description.ts +17 -0
  76. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/alert/hlm-alert-title.ts +17 -0
  77. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/alert/hlm-alert.ts +35 -0
  78. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/alert/index.ts +16 -0
  79. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/button/hlm-button.token.ts +22 -0
  80. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/button/hlm-button.ts +72 -0
  81. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/button/index.ts +6 -0
  82. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/calendar/hlm-calendar-multi.ts +195 -0
  83. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/calendar/hlm-calendar-range.ts +194 -0
  84. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/calendar/hlm-calendar.ts +189 -0
  85. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/calendar/hlm-month-year-calendar.ts +119 -0
  86. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/calendar/index.ts +16 -0
  87. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-action.ts +12 -0
  88. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-avatar.ts +14 -0
  89. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-content.ts +12 -0
  90. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-description.ts +12 -0
  91. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-footer.ts +12 -0
  92. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-header.ts +15 -0
  93. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-title.ts +12 -0
  94. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card.token.ts +19 -0
  95. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card.ts +22 -0
  96. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/card/index.ts +28 -0
  97. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/collapsible/hlm-collapsible-content.ts +14 -0
  98. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/collapsible/hlm-collapsible-trigger.ts +9 -0
  99. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/collapsible/hlm-collapsible.ts +15 -0
  100. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/collapsible/index.ts +13 -0
  101. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-multi-input.ts +104 -0
  102. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker-anchor.ts +23 -0
  103. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker-input.ts +118 -0
  104. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker-multi.token.ts +109 -0
  105. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker-multi.ts +220 -0
  106. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker-trigger.ts +104 -0
  107. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker.token.ts +69 -0
  108. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker.ts +203 -0
  109. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-range-input.ts +120 -0
  110. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-range-picker.token.ts +86 -0
  111. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-range-picker.ts +252 -0
  112. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-month-year-input.ts +105 -0
  113. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-month-year-picker.token.ts +89 -0
  114. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-month-year-picker.ts +196 -0
  115. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/index.ts +38 -0
  116. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-close.ts +9 -0
  117. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-content.ts +74 -0
  118. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-description.ts +17 -0
  119. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-footer.ts +15 -0
  120. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-header.ts +12 -0
  121. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-overlay.ts +27 -0
  122. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-portal.ts +8 -0
  123. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-title.ts +14 -0
  124. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-trigger.ts +14 -0
  125. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog.service.ts +46 -0
  126. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog.ts +24 -0
  127. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/index.ts +35 -0
  128. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-checkbox-indicator.ts +21 -0
  129. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-checkbox.ts +54 -0
  130. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-focus-on-hover.ts +35 -0
  131. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-group.ts +14 -0
  132. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-item-sub-indicator.ts +19 -0
  133. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-item.ts +42 -0
  134. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-label.ts +20 -0
  135. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-radio-indicator.ts +21 -0
  136. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-radio.ts +49 -0
  137. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-separator.ts +12 -0
  138. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-shortcut.ts +15 -0
  139. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-sub-trigger.ts +52 -0
  140. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-sub.ts +53 -0
  141. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-token.ts +26 -0
  142. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-trigger.ts +46 -0
  143. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu.ts +57 -0
  144. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/index.ts +49 -0
  145. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-content.ts +12 -0
  146. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-description.ts +53 -0
  147. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-error.ts +100 -0
  148. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-group.ts +15 -0
  149. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-label.ts +17 -0
  150. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-legend.ts +19 -0
  151. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-separator.ts +24 -0
  152. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-set.ts +15 -0
  153. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-title.ts +15 -0
  154. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field.ts +47 -0
  155. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/field/index.ts +34 -0
  156. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/input/hlm-input.ts +21 -0
  157. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/input/index.ts +5 -0
  158. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/hlm-input-group-addon.ts +40 -0
  159. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/hlm-input-group-button.ts +47 -0
  160. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/hlm-input-group-input.ts +17 -0
  161. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/hlm-input-group-text.ts +14 -0
  162. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/hlm-input-group.ts +18 -0
  163. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/index.ts +19 -0
  164. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/label/hlm-label.ts +17 -0
  165. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/label/index.ts +5 -0
  166. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/label/label.html +11 -0
  167. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-numbered-pagination-query-params.ts +191 -0
  168. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-numbered-pagination.ts +290 -0
  169. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-content.ts +12 -0
  170. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-ellipsis.ts +27 -0
  171. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-item.ts +7 -0
  172. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-link.ts +51 -0
  173. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-next.ts +65 -0
  174. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-previous.ts +65 -0
  175. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination.ts +19 -0
  176. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/index.ts +31 -0
  177. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-content.ts +25 -0
  178. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-description.ts +12 -0
  179. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-header.ts +12 -0
  180. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-portal.ts +8 -0
  181. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-title.ts +12 -0
  182. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-trigger.ts +14 -0
  183. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover.ts +23 -0
  184. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/popover/index.ts +25 -0
  185. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-content.ts +44 -0
  186. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-group.ts +14 -0
  187. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-item.ts +36 -0
  188. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-label.ts +14 -0
  189. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-multiple.ts +37 -0
  190. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-placeholder.ts +17 -0
  191. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-portal.ts +8 -0
  192. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-scroll-down.ts +22 -0
  193. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-scroll-up.ts +22 -0
  194. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-separator.ts +14 -0
  195. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-trigger.ts +59 -0
  196. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-value-template.ts +5 -0
  197. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-value.ts +18 -0
  198. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-values-content.ts +9 -0
  199. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-values.ts +5 -0
  200. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select.ts +37 -0
  201. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/select/index.ts +52 -0
  202. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/separator/hlm-separator.ts +19 -0
  203. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/separator/index.ts +5 -0
  204. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/skeleton/hlm-skeleton.ts +14 -0
  205. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/skeleton/index.ts +5 -0
  206. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/spinner/hlm-spinner.ts +26 -0
  207. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/spinner/index.ts +5 -0
  208. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/utils/hlm.ts +313 -0
  209. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/utils/index.ts +2 -0
  210. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/shared/utils/provide-spartan-hlm.ts +34 -0
  211. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/index.html +0 -1
  212. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/{styles.scss → styles.css} +7 -38
  213. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/tsconfig.json +4 -1
  214. package/lib/templates/project/angularextapp/package.json +1 -1
  215. package/lib/templates/project/angularintapp/CHANGELOG.md +224 -0
  216. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/angular.json +2 -7
  217. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/components.json +6 -0
  218. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/eslint.config.js +9 -1
  219. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/package-lock.json +19257 -9471
  220. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/package.json +18 -12
  221. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/app.config.ts +4 -6
  222. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/app.routes.ts +3 -2
  223. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/alert/alert.html +9 -13
  224. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/alert/alert.ts +16 -28
  225. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/button/button.html +19 -10
  226. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/button/button.ts +34 -25
  227. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/card/card.ts +40 -50
  228. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/collapsible/collapsible.html +38 -10
  229. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/collapsible/collapsible.ts +6 -11
  230. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-picker/date-picker.html +17 -22
  231. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-picker/date-picker.ts +29 -21
  232. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-range-picker/date-range-picker.html +16 -30
  233. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-range-picker/date-range-picker.ts +39 -36
  234. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/dialog/dialog.html +13 -30
  235. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/dialog/dialog.ts +6 -21
  236. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/dropdown-menu/dropdown-menu.html +20 -0
  237. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/dropdown-menu/dropdown-menu.ts +100 -0
  238. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/field/field.html +5 -11
  239. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/field/field.ts +10 -18
  240. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/field-appearance.ts +8 -0
  241. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/icon/icon.ts +62 -0
  242. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/input/input.html +32 -17
  243. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/input/input.ts +57 -14
  244. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/label/label.ts +8 -4
  245. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/paginator/paginator.html +74 -10
  246. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/paginator/paginator.ts +74 -18
  247. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/paginator/types.ts +13 -0
  248. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/popover/popover.html +10 -38
  249. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/popover/popover.ts +12 -15
  250. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/select/select.html +34 -22
  251. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/select/select.ts +25 -34
  252. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/separator/separator.ts +11 -36
  253. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/skeleton/skeleton.ts +5 -9
  254. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/spinner/spinner.ts +14 -21
  255. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/agentforce/agentforce-embed.service.ts +13 -141
  256. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/agentforce/conversation.html +1 -1
  257. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/agentforce/conversation.ts +0 -3
  258. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/breadcrumb/breadcrumb.html +4 -24
  259. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/breadcrumb/breadcrumb.ts +3 -16
  260. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/date-filter.ts +1 -1
  261. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/date-range-filter.html +2 -1
  262. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/date-range-filter.ts +6 -15
  263. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/filter-field-wrapper.html +2 -0
  264. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/filter-field-wrapper.ts +2 -17
  265. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/multi-select-filter.html +2 -1
  266. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/numeric-range-filter.ts +3 -21
  267. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/search-filter.html +3 -3
  268. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/search-filter.ts +9 -13
  269. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/select-filter.html +2 -5
  270. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/select-filter.ts +1 -15
  271. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/text-filter.html +2 -5
  272. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/filters/text-filter.ts +3 -17
  273. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/pagination/pagination.ts +4 -20
  274. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/search-bar/search-bar.html +10 -59
  275. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/search-bar/search-bar.ts +13 -93
  276. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/sort-control/sort-control.html +3 -29
  277. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/features/object-search/sort-control/sort-control.ts +5 -12
  278. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/pages/account-detail/account-detail-page.html +1 -23
  279. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/pages/account-detail/account-detail-page.ts +3 -23
  280. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/pages/account-search/account-search-page.html +1 -19
  281. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/pages/account-search/account-search-page.ts +8 -36
  282. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/pages/home/home.html +15 -4
  283. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/pages/home/home.spec.ts +8 -6
  284. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/pages/home/home.ts +56 -4
  285. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/alert/hlm-alert-action.ts +14 -0
  286. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/alert/hlm-alert-description.ts +17 -0
  287. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/alert/hlm-alert-title.ts +17 -0
  288. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/alert/hlm-alert.ts +35 -0
  289. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/alert/index.ts +16 -0
  290. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/button/hlm-button.token.ts +22 -0
  291. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/button/hlm-button.ts +72 -0
  292. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/button/index.ts +6 -0
  293. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/calendar/hlm-calendar-multi.ts +195 -0
  294. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/calendar/hlm-calendar-range.ts +194 -0
  295. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/calendar/hlm-calendar.ts +189 -0
  296. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/calendar/hlm-month-year-calendar.ts +119 -0
  297. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/calendar/index.ts +16 -0
  298. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-action.ts +12 -0
  299. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-avatar.ts +14 -0
  300. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-content.ts +12 -0
  301. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-description.ts +12 -0
  302. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-footer.ts +12 -0
  303. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-header.ts +15 -0
  304. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card-title.ts +12 -0
  305. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card.token.ts +19 -0
  306. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/card/hlm-card.ts +22 -0
  307. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/card/index.ts +28 -0
  308. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/collapsible/hlm-collapsible-content.ts +14 -0
  309. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/collapsible/hlm-collapsible-trigger.ts +9 -0
  310. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/collapsible/hlm-collapsible.ts +15 -0
  311. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/collapsible/index.ts +13 -0
  312. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-multi-input.ts +104 -0
  313. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker-anchor.ts +23 -0
  314. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker-input.ts +118 -0
  315. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker-multi.token.ts +109 -0
  316. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker-multi.ts +220 -0
  317. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker-trigger.ts +104 -0
  318. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker.token.ts +69 -0
  319. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-picker.ts +203 -0
  320. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-range-input.ts +120 -0
  321. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-range-picker.token.ts +86 -0
  322. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-date-range-picker.ts +252 -0
  323. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-month-year-input.ts +105 -0
  324. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-month-year-picker.token.ts +89 -0
  325. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/hlm-month-year-picker.ts +196 -0
  326. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/date-picker/index.ts +38 -0
  327. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-close.ts +9 -0
  328. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-content.ts +74 -0
  329. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-description.ts +17 -0
  330. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-footer.ts +15 -0
  331. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-header.ts +12 -0
  332. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-overlay.ts +27 -0
  333. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-portal.ts +8 -0
  334. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-title.ts +14 -0
  335. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog-trigger.ts +14 -0
  336. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog.service.ts +46 -0
  337. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/hlm-dialog.ts +24 -0
  338. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dialog/index.ts +35 -0
  339. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-checkbox-indicator.ts +21 -0
  340. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-checkbox.ts +54 -0
  341. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-focus-on-hover.ts +35 -0
  342. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-group.ts +14 -0
  343. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-item-sub-indicator.ts +19 -0
  344. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-item.ts +42 -0
  345. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-label.ts +20 -0
  346. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-radio-indicator.ts +21 -0
  347. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-radio.ts +49 -0
  348. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-separator.ts +12 -0
  349. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-shortcut.ts +15 -0
  350. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-sub-trigger.ts +52 -0
  351. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-sub.ts +53 -0
  352. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-token.ts +26 -0
  353. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu-trigger.ts +46 -0
  354. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/hlm-dropdown-menu.ts +57 -0
  355. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/dropdown-menu/index.ts +49 -0
  356. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-content.ts +12 -0
  357. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-description.ts +53 -0
  358. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-error.ts +100 -0
  359. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-group.ts +15 -0
  360. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-label.ts +17 -0
  361. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-legend.ts +19 -0
  362. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-separator.ts +24 -0
  363. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-set.ts +15 -0
  364. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field-title.ts +15 -0
  365. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/field/hlm-field.ts +47 -0
  366. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/field/index.ts +34 -0
  367. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/input/hlm-input.ts +21 -0
  368. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/input/index.ts +5 -0
  369. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/hlm-input-group-addon.ts +40 -0
  370. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/hlm-input-group-button.ts +47 -0
  371. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/hlm-input-group-input.ts +17 -0
  372. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/hlm-input-group-text.ts +14 -0
  373. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/hlm-input-group.ts +18 -0
  374. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/input-group/index.ts +19 -0
  375. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/label/hlm-label.ts +17 -0
  376. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/label/index.ts +5 -0
  377. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/label/label.html +11 -0
  378. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-numbered-pagination-query-params.ts +191 -0
  379. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-numbered-pagination.ts +290 -0
  380. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-content.ts +12 -0
  381. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-ellipsis.ts +27 -0
  382. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-item.ts +7 -0
  383. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-link.ts +51 -0
  384. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-next.ts +65 -0
  385. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination-previous.ts +65 -0
  386. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/hlm-pagination.ts +19 -0
  387. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/pagination/index.ts +31 -0
  388. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-content.ts +25 -0
  389. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-description.ts +12 -0
  390. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-header.ts +12 -0
  391. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-portal.ts +8 -0
  392. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-title.ts +12 -0
  393. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover-trigger.ts +14 -0
  394. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/popover/hlm-popover.ts +23 -0
  395. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/popover/index.ts +25 -0
  396. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-content.ts +44 -0
  397. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-group.ts +14 -0
  398. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-item.ts +36 -0
  399. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-label.ts +14 -0
  400. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-multiple.ts +37 -0
  401. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-placeholder.ts +17 -0
  402. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-portal.ts +8 -0
  403. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-scroll-down.ts +22 -0
  404. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-scroll-up.ts +22 -0
  405. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-separator.ts +14 -0
  406. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-trigger.ts +59 -0
  407. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-value-template.ts +5 -0
  408. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-value.ts +18 -0
  409. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-values-content.ts +9 -0
  410. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select-values.ts +5 -0
  411. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/hlm-select.ts +37 -0
  412. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/select/index.ts +52 -0
  413. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/separator/hlm-separator.ts +19 -0
  414. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/separator/index.ts +5 -0
  415. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/skeleton/hlm-skeleton.ts +14 -0
  416. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/skeleton/index.ts +5 -0
  417. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/spinner/hlm-spinner.ts +26 -0
  418. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/spinner/index.ts +5 -0
  419. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/utils/hlm.ts +313 -0
  420. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/utils/index.ts +2 -0
  421. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/shared/utils/provide-spartan-hlm.ts +34 -0
  422. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/index.html +0 -1
  423. package/lib/templates/{uiBundles/angularbasic/src/styles.scss → project/angularintapp/_p_/_m_/_w_/_a_/src/styles.css} +7 -38
  424. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/tsconfig.json +4 -1
  425. package/lib/templates/project/angularintapp/package.json +1 -1
  426. package/lib/templates/project/reactexternalapp/_p_/_m_/_w_/_a_/package-lock.json +40 -40
  427. package/lib/templates/project/reactinternalapp/_p_/_m_/_w_/_a_/package-lock.json +43 -43
  428. package/lib/templates/uiBundles/angularbasic/angular.json +2 -7
  429. package/lib/templates/uiBundles/angularbasic/components.json +6 -0
  430. package/lib/templates/uiBundles/angularbasic/eslint.config.js +9 -1
  431. package/lib/templates/uiBundles/angularbasic/package-lock.json +19242 -9456
  432. package/lib/templates/uiBundles/angularbasic/package.json +17 -11
  433. package/lib/templates/uiBundles/angularbasic/src/app/app.config.ts +4 -6
  434. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/alert/alert.html +9 -13
  435. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/alert/alert.ts +16 -28
  436. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/button/button.html +19 -10
  437. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/button/button.ts +34 -25
  438. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/card/card.ts +40 -50
  439. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/collapsible/collapsible.html +38 -10
  440. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/collapsible/collapsible.ts +6 -11
  441. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/date-picker/date-picker.html +17 -22
  442. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/date-picker/date-picker.ts +29 -21
  443. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/date-range-picker/date-range-picker.html +16 -30
  444. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/date-range-picker/date-range-picker.ts +39 -36
  445. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/dialog/dialog.html +13 -30
  446. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/dialog/dialog.ts +6 -21
  447. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/dropdown-menu/dropdown-menu.html +20 -0
  448. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/dropdown-menu/dropdown-menu.ts +100 -0
  449. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/field/field.html +5 -11
  450. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/field/field.ts +10 -18
  451. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/field-appearance.ts +8 -0
  452. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/icon/icon.ts +62 -0
  453. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/input/input.html +32 -17
  454. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/input/input.ts +57 -14
  455. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/label/label.ts +8 -4
  456. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/paginator/paginator.html +74 -10
  457. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/paginator/paginator.ts +74 -18
  458. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/paginator/types.ts +13 -0
  459. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/popover/popover.html +10 -38
  460. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/popover/popover.ts +12 -15
  461. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/select/select.html +34 -22
  462. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/select/select.ts +25 -34
  463. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/separator/separator.ts +11 -36
  464. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/skeleton/skeleton.ts +5 -9
  465. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/spinner/spinner.ts +14 -21
  466. package/lib/templates/uiBundles/angularbasic/src/app/shared/alert/hlm-alert-action.ts +14 -0
  467. package/lib/templates/uiBundles/angularbasic/src/app/shared/alert/hlm-alert-description.ts +17 -0
  468. package/lib/templates/uiBundles/angularbasic/src/app/shared/alert/hlm-alert-title.ts +17 -0
  469. package/lib/templates/uiBundles/angularbasic/src/app/shared/alert/hlm-alert.ts +35 -0
  470. package/lib/templates/uiBundles/angularbasic/src/app/shared/alert/index.ts +16 -0
  471. package/lib/templates/uiBundles/angularbasic/src/app/shared/button/hlm-button.token.ts +22 -0
  472. package/lib/templates/uiBundles/angularbasic/src/app/shared/button/hlm-button.ts +72 -0
  473. package/lib/templates/uiBundles/angularbasic/src/app/shared/button/index.ts +6 -0
  474. package/lib/templates/uiBundles/angularbasic/src/app/shared/calendar/hlm-calendar-multi.ts +195 -0
  475. package/lib/templates/uiBundles/angularbasic/src/app/shared/calendar/hlm-calendar-range.ts +194 -0
  476. package/lib/templates/uiBundles/angularbasic/src/app/shared/calendar/hlm-calendar.ts +189 -0
  477. package/lib/templates/uiBundles/angularbasic/src/app/shared/calendar/hlm-month-year-calendar.ts +119 -0
  478. package/lib/templates/uiBundles/angularbasic/src/app/shared/calendar/index.ts +16 -0
  479. package/lib/templates/uiBundles/angularbasic/src/app/shared/card/hlm-card-action.ts +12 -0
  480. package/lib/templates/uiBundles/angularbasic/src/app/shared/card/hlm-card-avatar.ts +14 -0
  481. package/lib/templates/uiBundles/angularbasic/src/app/shared/card/hlm-card-content.ts +12 -0
  482. package/lib/templates/uiBundles/angularbasic/src/app/shared/card/hlm-card-description.ts +12 -0
  483. package/lib/templates/uiBundles/angularbasic/src/app/shared/card/hlm-card-footer.ts +12 -0
  484. package/lib/templates/uiBundles/angularbasic/src/app/shared/card/hlm-card-header.ts +15 -0
  485. package/lib/templates/uiBundles/angularbasic/src/app/shared/card/hlm-card-title.ts +12 -0
  486. package/lib/templates/uiBundles/angularbasic/src/app/shared/card/hlm-card.token.ts +19 -0
  487. package/lib/templates/uiBundles/angularbasic/src/app/shared/card/hlm-card.ts +22 -0
  488. package/lib/templates/uiBundles/angularbasic/src/app/shared/card/index.ts +28 -0
  489. package/lib/templates/uiBundles/angularbasic/src/app/shared/collapsible/hlm-collapsible-content.ts +14 -0
  490. package/lib/templates/uiBundles/angularbasic/src/app/shared/collapsible/hlm-collapsible-trigger.ts +9 -0
  491. package/lib/templates/uiBundles/angularbasic/src/app/shared/collapsible/hlm-collapsible.ts +15 -0
  492. package/lib/templates/uiBundles/angularbasic/src/app/shared/collapsible/index.ts +13 -0
  493. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-date-multi-input.ts +104 -0
  494. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-date-picker-anchor.ts +23 -0
  495. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-date-picker-input.ts +118 -0
  496. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-date-picker-multi.token.ts +109 -0
  497. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-date-picker-multi.ts +220 -0
  498. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-date-picker-trigger.ts +104 -0
  499. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-date-picker.token.ts +69 -0
  500. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-date-picker.ts +203 -0
  501. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-date-range-input.ts +120 -0
  502. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-date-range-picker.token.ts +86 -0
  503. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-date-range-picker.ts +252 -0
  504. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-month-year-input.ts +105 -0
  505. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-month-year-picker.token.ts +89 -0
  506. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/hlm-month-year-picker.ts +196 -0
  507. package/lib/templates/uiBundles/angularbasic/src/app/shared/date-picker/index.ts +38 -0
  508. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/hlm-dialog-close.ts +9 -0
  509. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/hlm-dialog-content.ts +74 -0
  510. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/hlm-dialog-description.ts +17 -0
  511. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/hlm-dialog-footer.ts +15 -0
  512. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/hlm-dialog-header.ts +12 -0
  513. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/hlm-dialog-overlay.ts +27 -0
  514. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/hlm-dialog-portal.ts +8 -0
  515. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/hlm-dialog-title.ts +14 -0
  516. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/hlm-dialog-trigger.ts +14 -0
  517. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/hlm-dialog.service.ts +46 -0
  518. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/hlm-dialog.ts +24 -0
  519. package/lib/templates/uiBundles/angularbasic/src/app/shared/dialog/index.ts +35 -0
  520. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-checkbox-indicator.ts +21 -0
  521. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-checkbox.ts +54 -0
  522. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-focus-on-hover.ts +35 -0
  523. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-group.ts +14 -0
  524. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-item-sub-indicator.ts +19 -0
  525. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-item.ts +42 -0
  526. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-label.ts +20 -0
  527. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-radio-indicator.ts +21 -0
  528. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-radio.ts +49 -0
  529. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-separator.ts +12 -0
  530. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-shortcut.ts +15 -0
  531. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-sub-trigger.ts +52 -0
  532. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-sub.ts +53 -0
  533. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-token.ts +26 -0
  534. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu-trigger.ts +46 -0
  535. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/hlm-dropdown-menu.ts +57 -0
  536. package/lib/templates/uiBundles/angularbasic/src/app/shared/dropdown-menu/index.ts +49 -0
  537. package/lib/templates/uiBundles/angularbasic/src/app/shared/field/hlm-field-content.ts +12 -0
  538. package/lib/templates/uiBundles/angularbasic/src/app/shared/field/hlm-field-description.ts +53 -0
  539. package/lib/templates/uiBundles/angularbasic/src/app/shared/field/hlm-field-error.ts +100 -0
  540. package/lib/templates/uiBundles/angularbasic/src/app/shared/field/hlm-field-group.ts +15 -0
  541. package/lib/templates/uiBundles/angularbasic/src/app/shared/field/hlm-field-label.ts +17 -0
  542. package/lib/templates/uiBundles/angularbasic/src/app/shared/field/hlm-field-legend.ts +19 -0
  543. package/lib/templates/uiBundles/angularbasic/src/app/shared/field/hlm-field-separator.ts +24 -0
  544. package/lib/templates/uiBundles/angularbasic/src/app/shared/field/hlm-field-set.ts +15 -0
  545. package/lib/templates/uiBundles/angularbasic/src/app/shared/field/hlm-field-title.ts +15 -0
  546. package/lib/templates/uiBundles/angularbasic/src/app/shared/field/hlm-field.ts +47 -0
  547. package/lib/templates/uiBundles/angularbasic/src/app/shared/field/index.ts +34 -0
  548. package/lib/templates/uiBundles/angularbasic/src/app/shared/input/hlm-input.ts +21 -0
  549. package/lib/templates/uiBundles/angularbasic/src/app/shared/input/index.ts +5 -0
  550. package/lib/templates/uiBundles/angularbasic/src/app/shared/input-group/hlm-input-group-addon.ts +40 -0
  551. package/lib/templates/uiBundles/angularbasic/src/app/shared/input-group/hlm-input-group-button.ts +47 -0
  552. package/lib/templates/uiBundles/angularbasic/src/app/shared/input-group/hlm-input-group-input.ts +17 -0
  553. package/lib/templates/uiBundles/angularbasic/src/app/shared/input-group/hlm-input-group-text.ts +14 -0
  554. package/lib/templates/uiBundles/angularbasic/src/app/shared/input-group/hlm-input-group.ts +18 -0
  555. package/lib/templates/uiBundles/angularbasic/src/app/shared/input-group/index.ts +19 -0
  556. package/lib/templates/uiBundles/angularbasic/src/app/shared/label/hlm-label.ts +17 -0
  557. package/lib/templates/uiBundles/angularbasic/src/app/shared/label/index.ts +5 -0
  558. package/lib/templates/uiBundles/angularbasic/src/app/shared/label/label.html +11 -0
  559. package/lib/templates/uiBundles/angularbasic/src/app/shared/pagination/hlm-numbered-pagination-query-params.ts +191 -0
  560. package/lib/templates/uiBundles/angularbasic/src/app/shared/pagination/hlm-numbered-pagination.ts +290 -0
  561. package/lib/templates/uiBundles/angularbasic/src/app/shared/pagination/hlm-pagination-content.ts +12 -0
  562. package/lib/templates/uiBundles/angularbasic/src/app/shared/pagination/hlm-pagination-ellipsis.ts +27 -0
  563. package/lib/templates/uiBundles/angularbasic/src/app/shared/pagination/hlm-pagination-item.ts +7 -0
  564. package/lib/templates/uiBundles/angularbasic/src/app/shared/pagination/hlm-pagination-link.ts +51 -0
  565. package/lib/templates/uiBundles/angularbasic/src/app/shared/pagination/hlm-pagination-next.ts +65 -0
  566. package/lib/templates/uiBundles/angularbasic/src/app/shared/pagination/hlm-pagination-previous.ts +65 -0
  567. package/lib/templates/uiBundles/angularbasic/src/app/shared/pagination/hlm-pagination.ts +19 -0
  568. package/lib/templates/uiBundles/angularbasic/src/app/shared/pagination/index.ts +31 -0
  569. package/lib/templates/uiBundles/angularbasic/src/app/shared/popover/hlm-popover-content.ts +25 -0
  570. package/lib/templates/uiBundles/angularbasic/src/app/shared/popover/hlm-popover-description.ts +12 -0
  571. package/lib/templates/uiBundles/angularbasic/src/app/shared/popover/hlm-popover-header.ts +12 -0
  572. package/lib/templates/uiBundles/angularbasic/src/app/shared/popover/hlm-popover-portal.ts +8 -0
  573. package/lib/templates/uiBundles/angularbasic/src/app/shared/popover/hlm-popover-title.ts +12 -0
  574. package/lib/templates/uiBundles/angularbasic/src/app/shared/popover/hlm-popover-trigger.ts +14 -0
  575. package/lib/templates/uiBundles/angularbasic/src/app/shared/popover/hlm-popover.ts +23 -0
  576. package/lib/templates/uiBundles/angularbasic/src/app/shared/popover/index.ts +25 -0
  577. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-content.ts +44 -0
  578. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-group.ts +14 -0
  579. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-item.ts +36 -0
  580. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-label.ts +14 -0
  581. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-multiple.ts +37 -0
  582. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-placeholder.ts +17 -0
  583. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-portal.ts +8 -0
  584. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-scroll-down.ts +22 -0
  585. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-scroll-up.ts +22 -0
  586. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-separator.ts +14 -0
  587. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-trigger.ts +59 -0
  588. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-value-template.ts +5 -0
  589. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-value.ts +18 -0
  590. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-values-content.ts +9 -0
  591. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select-values.ts +5 -0
  592. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/hlm-select.ts +37 -0
  593. package/lib/templates/uiBundles/angularbasic/src/app/shared/select/index.ts +52 -0
  594. package/lib/templates/uiBundles/angularbasic/src/app/shared/separator/hlm-separator.ts +19 -0
  595. package/lib/templates/uiBundles/angularbasic/src/app/shared/separator/index.ts +5 -0
  596. package/lib/templates/uiBundles/angularbasic/src/app/shared/skeleton/hlm-skeleton.ts +14 -0
  597. package/lib/templates/uiBundles/angularbasic/src/app/shared/skeleton/index.ts +5 -0
  598. package/lib/templates/uiBundles/angularbasic/src/app/shared/spinner/hlm-spinner.ts +26 -0
  599. package/lib/templates/uiBundles/angularbasic/src/app/shared/spinner/index.ts +5 -0
  600. package/lib/templates/uiBundles/angularbasic/src/app/shared/utils/hlm.ts +313 -0
  601. package/lib/templates/uiBundles/angularbasic/src/app/shared/utils/index.ts +2 -0
  602. package/lib/templates/uiBundles/angularbasic/src/app/shared/utils/provide-spartan-hlm.ts +34 -0
  603. package/lib/templates/uiBundles/angularbasic/src/index.html +0 -1
  604. package/lib/templates/{project/angularintapp/_p_/_m_/_w_/_a_/src/styles.scss → uiBundles/angularbasic/src/styles.css} +7 -38
  605. package/lib/templates/uiBundles/angularbasic/tsconfig.json +4 -1
  606. package/lib/templates/uiBundles/reactbasic/package-lock.json +18 -18
  607. package/package.json +5 -5
  608. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/_field-size.scss +0 -42
  609. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/button/button.scss +0 -112
  610. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/card/card.scss +0 -34
  611. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-picker/date-picker.scss +0 -36
  612. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-range-picker/date-range-picker.scss +0 -33
  613. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/input/input.scss +0 -35
  614. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/label/label.html +0 -3
  615. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/select/select.scss +0 -35
  616. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/separator/separator.html +0 -1
  617. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/separator/separator.scss +0 -23
  618. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/skeleton/skeleton.html +0 -1
  619. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/components/ui/skeleton/skeleton.scss +0 -28
  620. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/features/authentication/submit-button/submit-button.scss +0 -17
  621. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/pages/account-detail/account-detail-page.scss +0 -7
  622. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/pages/home/home-page.html +0 -18
  623. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/app/pages/home/home-page.ts +0 -47
  624. package/lib/templates/project/angularextapp/_p_/_m_/_w_/_a_/src/theme.scss +0 -39
  625. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/_field-size.scss +0 -42
  626. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/button/button.scss +0 -112
  627. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/card/card.scss +0 -34
  628. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-picker/date-picker.scss +0 -36
  629. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/date-range-picker/date-range-picker.scss +0 -33
  630. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/input/input.scss +0 -35
  631. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/label/label.html +0 -3
  632. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/select/select.scss +0 -35
  633. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/separator/separator.html +0 -1
  634. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/separator/separator.scss +0 -23
  635. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/skeleton/skeleton.html +0 -1
  636. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/components/ui/skeleton/skeleton.scss +0 -28
  637. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/pages/account-detail/account-detail-page.scss +0 -7
  638. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/pages/home/home-page.html +0 -18
  639. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/app/pages/home/home-page.ts +0 -47
  640. package/lib/templates/project/angularintapp/_p_/_m_/_w_/_a_/src/theme.scss +0 -39
  641. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/_field-size.scss +0 -42
  642. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/button/button.scss +0 -112
  643. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/card/card.scss +0 -34
  644. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/date-picker/date-picker.scss +0 -36
  645. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/date-range-picker/date-range-picker.scss +0 -33
  646. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/input/input.scss +0 -35
  647. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/label/label.html +0 -3
  648. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/select/select.scss +0 -35
  649. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/separator/separator.html +0 -1
  650. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/separator/separator.scss +0 -23
  651. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/skeleton/skeleton.html +0 -1
  652. package/lib/templates/uiBundles/angularbasic/src/app/components/ui/skeleton/skeleton.scss +0 -28
  653. package/lib/templates/uiBundles/angularbasic/src/theme.scss +0 -39
@@ -4,21 +4,17 @@
4
4
  * For full license text, see the LICENSE.txt file
5
5
  */
6
6
  import { ChangeDetectionStrategy, Component } from '@angular/core';
7
+ import { HlmSkeleton } from '@spartan-ng/styles/skeleton';
7
8
 
8
- /**
9
- * Loading skeleton — a pulsing block sized by host `class` utilities (e.g.
10
- * `class="h-4 w-32"`); it has no intrinsic size, so always set width/height.
11
- * `aria-hidden`, so announce loading via the container's `aria-busy`.
12
- */
13
9
  @Component({
14
10
  selector: 'app-skeleton',
15
11
  changeDetection: ChangeDetectionStrategy.OnPush,
16
- templateUrl: './skeleton.html',
17
- styleUrl: './skeleton.scss',
12
+ hostDirectives: [HlmSkeleton],
18
13
  host: {
19
- 'data-slot': 'skeleton',
20
14
  'aria-hidden': 'true',
21
- class: 'bg-accent rounded-md',
22
15
  },
16
+ template: '<ng-content />',
23
17
  })
24
18
  export class SkeletonComponent {}
19
+
20
+ export const SkeletonImports = [SkeletonComponent] as const;
@@ -4,32 +4,25 @@
4
4
  * For full license text, see the LICENSE.txt file
5
5
  */
6
6
  import { ChangeDetectionStrategy, Component, input } from '@angular/core';
7
- import { MatProgressSpinnerModule, ProgressSpinnerMode } from '@angular/material/progress-spinner';
7
+ import { HlmSpinnerImports } from '@spartan-ng/styles/spinner';
8
+ import { classes } from '@spartan-ng/styles/utils';
8
9
 
9
- /**
10
- * Thin wrapper over Material's `mat-progress-spinner`. Defaults to an
11
- * indeterminate 24px spinner. `ariaLabel` names the `role="progressbar"`.
12
- */
13
10
  @Component({
14
11
  selector: 'app-spinner',
12
+ imports: [HlmSpinnerImports],
15
13
  changeDetection: ChangeDetectionStrategy.OnPush,
16
- imports: [MatProgressSpinnerModule],
17
- template: `
18
- <mat-progress-spinner
19
- [mode]="mode()"
20
- [diameter]="diameter()"
21
- [value]="value()"
22
- [attr.aria-label]="ariaLabel()"
23
- />
24
- `,
14
+ host: {
15
+ role: 'status',
16
+ '[attr.aria-label]': 'ariaLabel()',
17
+ },
18
+ template: `<hlm-spinner />`,
25
19
  })
26
20
  export class SpinnerComponent {
27
- readonly diameter = input<number>(24);
28
- readonly mode = input<ProgressSpinnerMode>('indeterminate');
21
+ public readonly ariaLabel = input<string>('Loading', { alias: 'aria-label' });
29
22
 
30
- /** Progress value (0–100) used only when `mode` is `determinate`. */
31
- readonly value = input<number>(0);
32
-
33
- /** Accessible name announced by assistive tech. */
34
- readonly ariaLabel = input<string>('Loading', { alias: 'aria-label' });
23
+ constructor() {
24
+ classes(() => 'text-[length:--spacing(4)]');
25
+ }
35
26
  }
27
+
28
+ export const SpinnerImports = [SpinnerComponent] as const;
@@ -8,6 +8,7 @@ import {
8
8
  embedAgentforceClient,
9
9
  type AgentforceClientConfig,
10
10
  } from "@salesforce/agentforce-conversation-client";
11
+ import { createAccEmbedder } from "@salesforce/agentforce-conversation-client/ui-bundle";
11
12
  import type {
12
13
  AgentforceErrorHandler,
13
14
  AgentforceReadyHandler,
@@ -20,30 +21,27 @@ export interface AgentforceEmbedHandlers {
20
21
  onError?: AgentforceErrorHandler;
21
22
  }
22
23
 
23
- const GLOBAL_HOST_ID = "agentforce-conversation-client-global-host";
24
- const EXISTING_EMBED_SELECTOR = 'lightning-out-application[data-lo="acc"]';
25
-
26
24
  /**
27
25
  * App-wide singleton that owns the one-time Lightning Out embed of the
28
- * Agentforce Conversation Client. The Angular analogue of the React
29
- * `window.__agentforceConversationClientSingleton`: because the service is
30
- * `providedIn: 'root'`, a single instance is shared across the app, so its
31
- * `initialized` / `initPromise` fields guarantee exactly one embed per app —
32
- * regardless of how many client components mount.
26
+ * Agentforce Conversation Client. Because the service is `providedIn: 'root'`,
27
+ * a single instance is shared across the app; it delegates to the shared,
28
+ * framework-agnostic `@salesforce/agentforce-conversation-client/ui-bundle`
29
+ * embedder, which owns the embed
30
+ * orchestration (window singleton, global host, dev frontdoor fetch, `SFDC_ENV`
31
+ * default, and partial-embed cleanup) that used to be duplicated here and in the
32
+ * React feature.
33
33
  *
34
- * A valid Salesforce session is required for the given org; auth is resolved at
35
- * embed time (frontdoor URL in dev via `/__lo/frontdoor`, `SFDC_ENV.orgUrl` in
36
- * prod). Config is passed through to the embed client as-is.
34
+ * A valid Salesforce session is required for the given org. Config is passed
35
+ * through to the embed client as-is.
37
36
  */
38
37
  @Injectable({ providedIn: "root" })
39
38
  export class AgentforceEmbedService {
40
- private initialized = false;
41
- private initPromise?: Promise<void>;
39
+ private readonly embedder = createAccEmbedder<AgentforceClientConfig>(embedAgentforceClient);
42
40
 
43
41
  /**
44
42
  * Embed the client once. Subsequent calls are no-ops while an embed is in
45
43
  * flight or already complete. `host` is the inline container element (when
46
- * rendering inline); when omitted the global floating host is used.
44
+ * rendering inline); when omitted the shared floating host is used.
47
45
  */
48
46
  embed(
49
47
  config: AgentforceClientConfig,
@@ -51,132 +49,6 @@ export class AgentforceEmbedService {
51
49
  host?: HTMLElement | null,
52
50
  handlers?: AgentforceEmbedHandlers,
53
51
  ): void {
54
- if (!config.agentId) {
55
- throw new Error(
56
- "AgentforceConversationClient requires agentId. " +
57
- "Pass flat inputs only (agentId, agentLabel, inline, headerEnabled, showHeaderIcon, width, height, styleTokens).",
58
- );
59
- }
60
-
61
- const inline = config.renderingConfig?.mode === "inline";
62
- if (inline && !host) {
63
- // Inline host not yet in the DOM — the component retries after render.
64
- return;
65
- }
66
-
67
- if (this.initialized || this.initPromise) {
68
- return;
69
- }
70
-
71
- const shouldFetchFrontdoor = window.location.hostname === "localhost";
72
-
73
- if (shouldFetchFrontdoor) {
74
- this.initPromise = fetch("/__lo/frontdoor")
75
- .then(async (res) => {
76
- if (!res.ok) {
77
- console.error("frontdoor fetch failed");
78
- return;
79
- }
80
- const { frontdoorUrl: resolvedFrontdoorUrl } = await res.json();
81
- this.safeInitialize(
82
- config,
83
- { ...overrides, frontdoorUrl: resolvedFrontdoorUrl },
84
- host,
85
- handlers,
86
- );
87
- })
88
- .catch((err) => {
89
- console.error("AgentforceConversationClient: failed to fetch frontdoor URL", err);
90
- })
91
- .finally(() => {
92
- this.initPromise = undefined;
93
- });
94
- } else {
95
- this.initPromise = Promise.resolve()
96
- .then(() => {
97
- this.safeInitialize(
98
- config,
99
- { ...this.getDefaultEmbedOptions(), ...this.stripUndefined(overrides) },
100
- host,
101
- handlers,
102
- );
103
- })
104
- .catch((err) => {
105
- console.error("AgentforceConversationClient: failed to embed Agentforce client", err);
106
- })
107
- .finally(() => {
108
- this.initPromise = undefined;
109
- });
110
- }
111
- }
112
-
113
- private safeInitialize(
114
- config: AgentforceClientConfig,
115
- options: ResolvedEmbedOptions,
116
- host?: HTMLElement | null,
117
- handlers?: AgentforceEmbedHandlers,
118
- ): void {
119
- try {
120
- this.initialize(config, options, host, handlers);
121
- } catch (initErr) {
122
- console.error("AgentforceConversationClient: initialization failed", initErr);
123
- this.initialized = false;
124
- }
125
- }
126
-
127
- private initialize(
128
- config: AgentforceClientConfig,
129
- options: ResolvedEmbedOptions,
130
- host?: HTMLElement | null,
131
- handlers?: AgentforceEmbedHandlers,
132
- ): void {
133
- if (this.initialized) {
134
- return;
135
- }
136
-
137
- const existingEmbed = document.querySelector(EXISTING_EMBED_SELECTOR);
138
- if (existingEmbed) {
139
- this.initialized = true;
140
- return;
141
- }
142
-
143
- const inline = config.renderingConfig?.mode === "inline";
144
- const container = inline ? host! : this.getOrCreateGlobalHost();
145
-
146
- try {
147
- embedAgentforceClient({
148
- container,
149
- salesforceOrigin: options.salesforceOrigin,
150
- frontdoorUrl: options.frontdoorUrl,
151
- agentforceClientConfig: config,
152
- onReady: handlers?.onReady,
153
- onError: handlers?.onError,
154
- });
155
- this.initialized = true;
156
- } catch (err) {
157
- // Strip a partially-created LO element so the next mount can retry.
158
- const partialEmbed = document.querySelector(EXISTING_EMBED_SELECTOR);
159
- partialEmbed?.remove();
160
- console.error("AgentforceConversationClient: initialization failed", err);
161
- }
162
- }
163
-
164
- private getOrCreateGlobalHost(): HTMLDivElement {
165
- let host = document.getElementById(GLOBAL_HOST_ID) as HTMLDivElement | null;
166
- if (!host) {
167
- host = document.createElement("div");
168
- host.id = GLOBAL_HOST_ID;
169
- document.body.appendChild(host);
170
- }
171
- return host;
172
- }
173
-
174
- private getDefaultEmbedOptions(): ResolvedEmbedOptions {
175
- return { salesforceOrigin: SFDC_ENV?.orgUrl };
176
- }
177
-
178
- /** Remove keys with undefined/null values so they don't override defaults when spread. */
179
- private stripUndefined(opts: ResolvedEmbedOptions): ResolvedEmbedOptions {
180
- return Object.fromEntries(Object.entries(opts).filter(([, v]) => v != null));
52
+ this.embedder.embedAcc(config, overrides, host, handlers);
181
53
  }
182
54
  }
@@ -1,3 +1,3 @@
1
- @if (isInline()) {
1
+ @if (inline()) {
2
2
  <div #host></div>
3
3
  }
@@ -97,9 +97,6 @@ export class AgentforceConversationClientComponent {
97
97
  };
98
98
  });
99
99
 
100
- /** Whether the chat should render inline (drives the host `<div>`). */
101
- protected readonly isInline = computed(() => this.config().renderingConfig?.mode === "inline");
102
-
103
100
  constructor() {
104
101
  // Embed after the view (and any inline host `<div>`) exists in the DOM —
105
102
  // the analogue of the React `useEffect`. The service guards against
@@ -6,18 +6,8 @@
6
6
  <li class="inline-flex items-center gap-1.5">
7
7
  <a [routerLink]="'/'" class="hover:text-foreground transition-colors">{{ homeLabel() }}</a>
8
8
  </li>
9
- <li aria-hidden="true" class="[&>svg]:size-3.5">
10
- <svg
11
- xmlns="http://www.w3.org/2000/svg"
12
- viewBox="0 0 24 24"
13
- fill="none"
14
- stroke="currentColor"
15
- stroke-width="2"
16
- stroke-linecap="round"
17
- stroke-linejoin="round"
18
- >
19
- <polyline points="9 18 15 12 9 6" />
20
- </svg>
9
+ <li aria-hidden="true">
10
+ <app-icon name="chevronRight" size="14px" class="flex" />
21
11
  </li>
22
12
  } @if (isDetailView()) {
23
13
  <li class="inline-flex items-center gap-1.5">
@@ -25,18 +15,8 @@
25
15
  >{{ listLabel() }}</a
26
16
  >
27
17
  </li>
28
- <li aria-hidden="true" class="[&>svg]:size-3.5">
29
- <svg
30
- xmlns="http://www.w3.org/2000/svg"
31
- viewBox="0 0 24 24"
32
- fill="none"
33
- stroke="currentColor"
34
- stroke-width="2"
35
- stroke-linecap="round"
36
- stroke-linejoin="round"
37
- >
38
- <polyline points="9 18 15 12 9 6" />
39
- </svg>
18
+ <li aria-hidden="true">
19
+ <app-icon name="chevronRight" size="14px" class="flex" />
40
20
  </li>
41
21
  <li class="inline-flex items-center gap-1.5">
42
22
  @if (loading() && !recordName()) {
@@ -5,36 +5,23 @@
5
5
  */
6
6
  import { ChangeDetectionStrategy, Component, computed, input } from "@angular/core";
7
7
  import { RouterLink } from "@angular/router";
8
+ import { IconComponent } from "../../../components/ui/icon/icon";
8
9
  import { SkeletonComponent } from "../../../components/ui/skeleton/skeleton";
9
10
 
10
- /**
11
- * Object-search breadcrumb — Home > Records list > (optional) Record name.
12
- *
13
- * Mirrors the React `ObjectBreadcrumb`. Renders the list-only crumb by default
14
- * and switches to the detail-view crumb (with record name + skeleton fallback)
15
- * as soon as `loading` or `recordName` is set. Uses Angular `routerLink` where
16
- * the React version uses `react-router`'s `Link`.
17
- */
11
+ /** Object-search breadcrumb — Home > Records list > (optional) Record name. */
18
12
  @Component({
19
13
  selector: "app-object-breadcrumb",
20
14
  changeDetection: ChangeDetectionStrategy.OnPush,
21
- imports: [RouterLink, SkeletonComponent],
15
+ imports: [RouterLink, IconComponent, SkeletonComponent],
22
16
  templateUrl: "./breadcrumb.html",
23
17
  })
24
18
  export class ObjectBreadcrumbComponent {
25
- /** Router path for the object list view (e.g. `/accounts`). */
26
19
  readonly listPath = input.required<string>();
27
- /** Label for the list crumb (e.g. `Accounts`). */
28
20
  readonly listLabel = input.required<string>();
29
- /** Record name for the detail-view leaf crumb; omit for list-only view. */
30
21
  readonly recordName = input<string | undefined>(undefined);
31
- /** Show a skeleton in the leaf crumb while the record is loading. */
32
22
  readonly loading = input<boolean>(false);
33
- /** Prepend a Home crumb (default `true`). */
34
23
  readonly includeHome = input<boolean>(true);
35
- /** Label for the Home crumb (default `Home`). */
36
24
  readonly homeLabel = input<string>("Home");
37
25
 
38
- /** `true` when the crumb should render list + record leaves. */
39
26
  protected readonly isDetailView = computed(() => this.loading() || !!this.recordName());
40
27
  }
@@ -85,7 +85,7 @@ export class DateFilterComponent {
85
85
  if (date) this.emit(op, date);
86
86
  }
87
87
 
88
- protected onDateChange(date: Date | null): void {
88
+ protected onDateChange(date: Date | null | undefined): void {
89
89
  const cfg = this.config();
90
90
  if (!date) {
91
91
  this.state.removeFilter(cfg.field);
@@ -1,6 +1,7 @@
1
- <app-filter-field-wrapper [label]="config().label" [helpText]="config().helpText">
1
+ <app-filter-field-wrapper [helpText]="config().helpText">
2
2
  <app-date-range-picker
3
3
  class="w-full"
4
+ [label]="config().label"
4
5
  startPlaceholder="Start"
5
6
  endPlaceholder="End"
6
7
  [readonly]="true"
@@ -4,8 +4,6 @@
4
4
  * For full license text, see the LICENSE.txt file
5
5
  */
6
6
  import { ChangeDetectionStrategy, Component, computed, inject, input } from "@angular/core";
7
- // Base-app UI wrapper, inherited (not recreated) by this feature. Post-compose
8
- // it lands at uiBundles/<target>/src/app/components/ui/date-range-picker/..., three levels up.
9
7
  import {
10
8
  DateRange,
11
9
  DateRangePickerComponent,
@@ -16,13 +14,8 @@ import { toDate, toDateString } from "./date-filter";
16
14
  import { FilterFieldWrapperComponent } from "./filter-field-wrapper";
17
15
 
18
16
  /**
19
- * Date range filter — a single two-ended range picker. Emits a `daterange`
20
- * (or `datetimerange`) filter with `min` / `max` as `YYYY-MM-DD` strings; the
21
- * filter builder wires each end into a `gte` / `lte` clause.
22
- *
23
- * Thin bridge over the base `app-date-range-picker` (Material's
24
- * `mat-date-range-picker`): it maps the picker's `DateRange<Date>` value to and
25
- * from the `min` / `max` string split the filter state stores.
17
+ * Date range filter — a two-ended range picker. Emits a `daterange` (or
18
+ * `datetimerange`) filter with `min` / `max` as `YYYY-MM-DD` strings.
26
19
  */
27
20
  @Component({
28
21
  selector: "app-date-range-filter",
@@ -33,17 +26,15 @@ import { FilterFieldWrapperComponent } from "./filter-field-wrapper";
33
26
  export class DateRangeFilterComponent {
34
27
  private readonly state = inject(ObjectSearchStateService);
35
28
 
36
- /** Field config: `field`, `label`, `helpText`, ... */
37
29
  readonly config = input.required<FilterFieldConfig>();
38
- /** Underlying filter type — `'daterange'` (default) or `'datetimerange'`. */
39
30
  readonly filterType = input<FilterFieldType>("daterange");
40
31
 
41
32
  private readonly active = computed(() => this.state.filterFor(this.config().field));
42
33
 
43
- /** The active filter's `min` / `max` strings surfaced as a picker range. */
44
- protected readonly range = computed<DateRange<Date>>(
45
- () => new DateRange(toDate(this.active()?.min), toDate(this.active()?.max)),
46
- );
34
+ protected readonly range = computed<DateRange<Date>>(() => ({
35
+ start: toDate(this.active()?.min),
36
+ end: toDate(this.active()?.max),
37
+ }));
47
38
 
48
39
  /** Cap the picker at today when the field can't hold a future date. */
49
40
  protected readonly maxDate = computed<Date | null>(() =>
@@ -1,5 +1,7 @@
1
1
  <div class="space-y-1">
2
+ @if (label()) {
2
3
  <app-label [for]="htmlFor()">{{ label() }}</app-label>
4
+ }
3
5
  <ng-content />
4
6
  <div class="min-h-4">
5
7
  @if (error(); as err) {
@@ -4,20 +4,9 @@
4
4
  * For full license text, see the LICENSE.txt file
5
5
  */
6
6
  import { ChangeDetectionStrategy, Component, input } from "@angular/core";
7
- // Base-app UI wrapper, inherited (not recreated) by this feature. Post-compose
8
- // it lands at uiBundles/<target>/src/app/components/ui/label/..., three levels up from this
9
- // filter folder (app/object-search/filters/ -> app/components/ui/).
7
+ // Post-compose, this lands 3 levels up at app/components/ui/label/__inherit__label.
10
8
  import { LabelComponent } from "../../../components/ui/label/label";
11
9
 
12
- /**
13
- * Standard label + control + help/error scaffold shared by every filter
14
- * component (the Angular analogue of the React `FilterFieldWrapper`).
15
- *
16
- * The control itself is content-projected so each filter can supply the
17
- * primitive that fits its data type (input, select, popover, date picker, ...)
18
- * while the wrapper keeps the layout, label, and error/help affordances
19
- * consistent across the search page.
20
- */
21
10
  @Component({
22
11
  selector: "app-filter-field-wrapper",
23
12
  changeDetection: ChangeDetectionStrategy.OnPush,
@@ -25,12 +14,8 @@ import { LabelComponent } from "../../../components/ui/label/label";
25
14
  templateUrl: "./filter-field-wrapper.html",
26
15
  })
27
16
  export class FilterFieldWrapperComponent {
28
- /** Visible field label rendered above the control. */
29
- readonly label = input.required<string>();
30
- /** Optional `for` attribute forwarded to the underlying `<label>`. */
17
+ readonly label = input<string>("");
31
18
  readonly htmlFor = input<string | null>(null);
32
- /** Advisory copy rendered below the control when there is no error. */
33
19
  readonly helpText = input<string | undefined>(undefined);
34
- /** Validation message; when set, replaces the help text. */
35
20
  readonly error = input<string | undefined>(undefined);
36
21
  }
@@ -1,6 +1,7 @@
1
- <app-filter-field-wrapper [label]="config().label" [helpText]="config().helpText">
1
+ <app-filter-field-wrapper [helpText]="config().helpText">
2
2
  <app-select
3
3
  multiple
4
+ [label]="config().label"
4
5
  [size]="size()"
5
6
  [options]="config().options ?? []"
6
7
  [placeholder]="placeholder()"
@@ -16,11 +16,6 @@ import {
16
16
  import { takeUntilDestroyed } from "@angular/core/rxjs-interop";
17
17
  import { Subject } from "rxjs";
18
18
  import { debounceTime } from "rxjs/operators";
19
- import { MatInputModule } from "@angular/material/input";
20
- import { MatFormFieldModule } from "@angular/material/form-field";
21
- import { FormsModule } from "@angular/forms";
22
- // Base-app UI wrapper, inherited (not recreated) by this feature. Post-compose
23
- // it lands at uiBundles/<target>/src/app/components/ui/input/..., three levels up.
24
19
  import { InputComponent } from "../../../components/ui/input/input";
25
20
  import { ObjectSearchStateService } from "../object-search-state.service";
26
21
  import { FILTER_DEBOUNCE_MS } from "../utils/debounce";
@@ -30,34 +25,21 @@ import { FilterFieldWrapperComponent } from "./filter-field-wrapper";
30
25
  /**
31
26
  * Numeric range filter — paired `min` / `max` inputs whose committed values are
32
27
  * written as strings on a `type: 'numeric'` filter (numeric coercion happens
33
- * in `buildSingleFilter`).
34
- *
35
- * Local signals drive the inputs immediately; a trailing debounce commits the
36
- * pair, but only when the range is self-consistent (`min <= max`) and within
37
- * `boundMin` / `boundMax` if provided — an inverted or out-of-bounds pair
38
- * shows the same inline error the React reference renders and skips the write.
28
+ * in `buildSingleFilter`). A trailing debounce commits the pair, skipping
29
+ * writes when the range is inverted or out of `boundMin` / `boundMax`.
39
30
  */
40
31
  @Component({
41
32
  selector: "app-numeric-range-filter",
42
33
  changeDetection: ChangeDetectionStrategy.OnPush,
43
- imports: [
44
- InputComponent,
45
- FilterFieldWrapperComponent,
46
- FormsModule,
47
- MatFormFieldModule,
48
- MatInputModule,
49
- ],
34
+ imports: [InputComponent, FilterFieldWrapperComponent],
50
35
  templateUrl: "./numeric-range-filter.html",
51
36
  })
52
37
  export class NumericRangeFilterComponent {
53
38
  private readonly state = inject(ObjectSearchStateService);
54
39
  private readonly destroyRef = inject(DestroyRef);
55
40
 
56
- /** Field config: `field`, `label`, `helpText`, ... */
57
41
  readonly config = input.required<FilterFieldConfig>();
58
- /** Optional lower bound accepted by the field (used for validation only). */
59
42
  readonly boundMin = input<number | undefined>(undefined);
60
- /** Optional upper bound accepted by the field (used for validation only). */
61
43
  readonly boundMax = input<number | undefined>(undefined);
62
44
 
63
45
  protected readonly localMin = signal<string>("");
@@ -1,6 +1,6 @@
1
- <app-filter-field-wrapper [label]="config().label" [htmlFor]="inputId()">
2
- <app-input
3
- type="search"
1
+ <app-filter-field-wrapper [label]="config().label" [htmlFor]="fieldId()">
2
+ <app-search-bar
3
+ [inputId]="fieldId()"
4
4
  [placeholder]="config().placeholder ?? 'Search...'"
5
5
  [value]="localValue()"
6
6
  (valueChange)="onValueChange($event)"
@@ -6,6 +6,7 @@
6
6
  import {
7
7
  ChangeDetectionStrategy,
8
8
  Component,
9
+ computed,
9
10
  DestroyRef,
10
11
  effect,
11
12
  inject,
@@ -15,37 +16,33 @@ import {
15
16
  import { takeUntilDestroyed } from "@angular/core/rxjs-interop";
16
17
  import { Subject } from "rxjs";
17
18
  import { debounceTime } from "rxjs/operators";
18
- // Base-app UI wrapper, inherited (not recreated) by this feature. Post-compose
19
- // it lands at uiBundles/<target>/src/app/components/ui/input/..., three levels up.
20
- import { InputComponent } from "../../../components/ui/input/input";
19
+ import { SearchBarComponent } from "../search-bar/search-bar";
21
20
  import { ObjectSearchStateService } from "../object-search-state.service";
22
21
  import { FILTER_DEBOUNCE_MS } from "../utils/debounce";
23
22
  import type { FilterFieldConfig } from "../utils/filter-utils";
24
23
  import { FilterFieldWrapperComponent } from "./filter-field-wrapper";
25
24
 
26
25
  /**
27
- * Multi-field search filter — a debounced input whose value is applied via
28
- * `like %value%` across every field named in `config.searchFields` (combined
29
- * with a top-level `or`, see {@link buildFilter}).
30
- *
31
- * Shape mirrors {@link TextFilterComponent} but emits a `type: 'search'`
32
- * {@link ActiveFilterValue} so `filter-utils` picks the multi-field path.
26
+ * Multi-field search filter — a debounced input applied via `like %value%`
27
+ * across every field named in `config.searchFields` (combined with a
28
+ * top-level `or`, see {@link buildFilter}).
33
29
  */
34
30
  @Component({
35
31
  selector: "app-search-filter",
36
32
  changeDetection: ChangeDetectionStrategy.OnPush,
37
- imports: [InputComponent, FilterFieldWrapperComponent],
33
+ imports: [SearchBarComponent, FilterFieldWrapperComponent],
38
34
  templateUrl: "./search-filter.html",
39
35
  })
40
36
  export class SearchFilterComponent {
41
37
  private readonly state = inject(ObjectSearchStateService);
42
38
  private readonly destroyRef = inject(DestroyRef);
43
39
 
44
- /** Field config: `field`, `label`, `placeholder`, `searchFields`, ... */
45
40
  readonly config = input.required<FilterFieldConfig>();
46
41
 
42
+ // Ties the wrapper's <label for> to the search input.
43
+ protected readonly fieldId = computed(() => `filter-${this.config().field}`);
44
+
47
45
  protected readonly localValue = signal<string>("");
48
- protected readonly inputId = signal<string>("");
49
46
  private readonly commit$ = new Subject<string>();
50
47
 
51
48
  constructor() {
@@ -55,7 +52,6 @@ export class SearchFilterComponent {
55
52
 
56
53
  effect(() => {
57
54
  const cfg = this.config();
58
- this.inputId.set(`filter-${cfg.field}`);
59
55
  const external = this.state.filterFor(cfg.field)?.value ?? "";
60
56
  this.localValue.set(external);
61
57
  });
@@ -1,9 +1,6 @@
1
- <app-filter-field-wrapper
2
- [label]="config().label"
3
- [htmlFor]="inputId()"
4
- [helpText]="config().helpText"
5
- >
1
+ <app-filter-field-wrapper [helpText]="config().helpText">
6
2
  <app-select
3
+ [label]="config().label"
7
4
  [placeholder]="'Select ' + config().label.toLowerCase()"
8
5
  [options]="options()"
9
6
  [value]="currentValue()"
@@ -4,8 +4,6 @@
4
4
  * For full license text, see the LICENSE.txt file
5
5
  */
6
6
  import { ChangeDetectionStrategy, Component, computed, inject, input } from "@angular/core";
7
- // Base-app UI wrapper, inherited (not recreated) by this feature. Post-compose
8
- // it lands at uiBundles/<target>/src/app/components/ui/select/..., three levels up.
9
7
  import {
10
8
  SelectComponent,
11
9
  type AppSelectOption,
@@ -14,13 +12,7 @@ import { ObjectSearchStateService } from "../object-search-state.service";
14
12
  import type { FilterFieldConfig } from "../utils/filter-utils";
15
13
  import { FilterFieldWrapperComponent } from "./filter-field-wrapper";
16
14
 
17
- /**
18
- * Single-value picklist filter — a select rendered from `config.options` with
19
- * a leading "All" entry (empty value) that clears the filter.
20
- *
21
- * Emits a `type: 'picklist'` filter which `buildSingleFilter` maps to
22
- * `{ [field]: { eq: value } }`.
23
- */
15
+ // A leading "All" entry (empty value) clears the filter.
24
16
  const ALL_VALUE = "";
25
17
 
26
18
  @Component({
@@ -32,19 +24,13 @@ const ALL_VALUE = "";
32
24
  export class SelectFilterComponent {
33
25
  private readonly state = inject(ObjectSearchStateService);
34
26
 
35
- /** Field config: `field`, `label`, `options`, `helpText`, ... */
36
27
  readonly config = input.required<FilterFieldConfig>();
37
28
 
38
- /** DOM id shared by the wrapper label and the underlying control. */
39
- protected readonly inputId = computed(() => `filter-${this.config().field}`);
40
-
41
- /** Options rendered in the select, with an "All" (clear) sentinel prepended. */
42
29
  protected readonly options = computed<readonly AppSelectOption[]>(() => [
43
30
  { value: ALL_VALUE, label: "All" },
44
31
  ...(this.config().options ?? []),
45
32
  ]);
46
33
 
47
- /** Current selection, reading through to shared state so URL changes reflect. */
48
34
  protected readonly currentValue = computed(
49
35
  () => this.state.filterFor(this.config().field)?.value ?? ALL_VALUE,
50
36
  );