@spartan-ng/cli 0.0.1-alpha.506 → 0.0.1-alpha.508

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 (195) hide show
  1. package/generators.json +26 -0
  2. package/package.json +1 -1
  3. package/src/generators/base/lib/build-dependency-array.d.ts +0 -1
  4. package/src/generators/base/lib/build-dependency-array.js +1 -1
  5. package/src/generators/base/lib/build-dependency-array.js.map +1 -1
  6. package/src/generators/healthcheck/generator.js +4 -0
  7. package/src/generators/healthcheck/generator.js.map +1 -1
  8. package/src/generators/healthcheck/healthchecks/brn-separator.d.ts +2 -0
  9. package/src/generators/healthcheck/healthchecks/brn-separator.js +34 -0
  10. package/src/generators/healthcheck/healthchecks/brn-separator.js.map +1 -0
  11. package/src/generators/healthcheck/healthchecks/hlm.d.ts +2 -0
  12. package/src/generators/healthcheck/healthchecks/hlm.js +32 -0
  13. package/src/generators/healthcheck/healthchecks/hlm.js.map +1 -0
  14. package/src/generators/healthcheck/healthchecks.d.ts +1 -1
  15. package/src/generators/healthcheck/healthchecks.js.map +1 -1
  16. package/src/generators/migrate-hlm/compat.d.ts +2 -0
  17. package/src/generators/migrate-hlm/compat.js +7 -0
  18. package/src/generators/migrate-hlm/compat.js.map +1 -0
  19. package/src/generators/migrate-hlm/generator.d.ts +4 -0
  20. package/src/generators/migrate-hlm/generator.js +102 -0
  21. package/src/generators/migrate-hlm/generator.js.map +1 -0
  22. package/src/generators/migrate-hlm/schema.d.ts +4 -0
  23. package/src/generators/migrate-hlm/schema.json +14 -0
  24. package/src/generators/migrate-separator/compat.d.ts +2 -0
  25. package/src/generators/migrate-separator/compat.js +7 -0
  26. package/src/generators/migrate-separator/compat.js.map +1 -0
  27. package/src/generators/migrate-separator/generator.d.ts +4 -0
  28. package/src/generators/migrate-separator/generator.js +78 -0
  29. package/src/generators/migrate-separator/generator.js.map +1 -0
  30. package/src/generators/migrate-separator/schema.d.ts +3 -0
  31. package/src/generators/migrate-separator/schema.json +14 -0
  32. package/src/generators/theme/__snapshots__/generator.spec.ts.snap +40 -20
  33. package/src/generators/theme/libs/add-theme-to-application-styles.js +7 -7
  34. package/src/generators/theme/libs/add-theme-to-application-styles.js.map +1 -1
  35. package/src/generators/ui/libs/ui-accordion-helm/files/lib/hlm-accordion-content.ts.template +2 -2
  36. package/src/generators/ui/libs/ui-accordion-helm/files/lib/hlm-accordion-icon.ts.template +1 -1
  37. package/src/generators/ui/libs/ui-accordion-helm/files/lib/hlm-accordion-item.ts.template +2 -2
  38. package/src/generators/ui/libs/ui-accordion-helm/files/lib/hlm-accordion-trigger.ts.template +2 -2
  39. package/src/generators/ui/libs/ui-accordion-helm/files/lib/hlm-accordion.ts.template +1 -1
  40. package/src/generators/ui/libs/ui-alert-dialog-helm/files/lib/hlm-alert-dialog-content.ts.template +3 -2
  41. package/src/generators/ui/libs/ui-alert-dialog-helm/files/lib/hlm-alert-dialog-description.ts.template +1 -1
  42. package/src/generators/ui/libs/ui-alert-dialog-helm/files/lib/hlm-alert-dialog-footer.ts.template +1 -1
  43. package/src/generators/ui/libs/ui-alert-dialog-helm/files/lib/hlm-alert-dialog-header.ts.template +1 -1
  44. package/src/generators/ui/libs/ui-alert-dialog-helm/files/lib/hlm-alert-dialog-overlay.ts.template +3 -2
  45. package/src/generators/ui/libs/ui-alert-dialog-helm/files/lib/hlm-alert-dialog-title.ts.template +1 -1
  46. package/src/generators/ui/libs/ui-alert-helm/files/lib/hlm-alert-description.ts.template +1 -1
  47. package/src/generators/ui/libs/ui-alert-helm/files/lib/hlm-alert-title.ts.template +1 -1
  48. package/src/generators/ui/libs/ui-alert-helm/files/lib/hlm-alert.ts.template +3 -3
  49. package/src/generators/ui/libs/ui-aspect-ratio-helm/files/lib/helm-aspect-ratio.ts.template +2 -2
  50. package/src/generators/ui/libs/ui-avatar-helm/files/lib/fallback/hlm-avatar-fallback.ts.template +1 -1
  51. package/src/generators/ui/libs/ui-avatar-helm/files/lib/hlm-avatar.ts.template +2 -2
  52. package/src/generators/ui/libs/ui-avatar-helm/files/lib/image/hlm-avatar-image.ts.template +1 -1
  53. package/src/generators/ui/libs/ui-badge-helm/files/lib/hlm-badge.ts.template +5 -5
  54. package/src/generators/ui/libs/ui-breadcrumb-helm/files/lib/hlm-breadcrumb-ellipsis.ts.template +1 -1
  55. package/src/generators/ui/libs/ui-breadcrumb-helm/files/lib/hlm-breadcrumb-item.ts.template +1 -1
  56. package/src/generators/ui/libs/ui-breadcrumb-helm/files/lib/hlm-breadcrumb-link.ts.template +1 -1
  57. package/src/generators/ui/libs/ui-breadcrumb-helm/files/lib/hlm-breadcrumb-list.ts.template +2 -2
  58. package/src/generators/ui/libs/ui-breadcrumb-helm/files/lib/hlm-breadcrumb-page.ts.template +2 -2
  59. package/src/generators/ui/libs/ui-breadcrumb-helm/files/lib/hlm-breadcrumb-separator.ts.template +2 -2
  60. package/src/generators/ui/libs/ui-breadcrumb-helm/files/lib/hlm-breadcrumb.ts.template +1 -1
  61. package/src/generators/ui/libs/ui-button-helm/files/lib/hlm-button.ts.template +5 -5
  62. package/src/generators/ui/libs/ui-calendar-helm/files/lib/hlm-calendar-multi.ts.template +13 -11
  63. package/src/generators/ui/libs/ui-calendar-helm/files/lib/hlm-calendar-range.ts.template +13 -11
  64. package/src/generators/ui/libs/ui-calendar-helm/files/lib/hlm-calendar.ts.template +13 -11
  65. package/src/generators/ui/libs/ui-card-helm/files/lib/hlm-card-action.ts.template +1 -1
  66. package/src/generators/ui/libs/ui-card-helm/files/lib/hlm-card-content.ts.template +1 -1
  67. package/src/generators/ui/libs/ui-card-helm/files/lib/hlm-card-description.ts.template +1 -1
  68. package/src/generators/ui/libs/ui-card-helm/files/lib/hlm-card-footer.ts.template +2 -2
  69. package/src/generators/ui/libs/ui-card-helm/files/lib/hlm-card-header.ts.template +2 -2
  70. package/src/generators/ui/libs/ui-card-helm/files/lib/hlm-card-title.ts.template +2 -2
  71. package/src/generators/ui/libs/ui-card-helm/files/lib/hlm-card.ts.template +1 -1
  72. package/src/generators/ui/libs/ui-carousel-helm/files/lib/hlm-carousel-content.ts.template +1 -1
  73. package/src/generators/ui/libs/ui-carousel-helm/files/lib/hlm-carousel-item.ts.template +1 -1
  74. package/src/generators/ui/libs/ui-carousel-helm/files/lib/hlm-carousel-next.ts.template +1 -1
  75. package/src/generators/ui/libs/ui-carousel-helm/files/lib/hlm-carousel-previous.ts.template +1 -1
  76. package/src/generators/ui/libs/ui-carousel-helm/files/lib/hlm-carousel-slide-display.ts.template +1 -1
  77. package/src/generators/ui/libs/ui-carousel-helm/files/lib/hlm-carousel.ts.template +1 -1
  78. package/src/generators/ui/libs/ui-checkbox-helm/files/lib/hlm-checkbox.ts.template +2 -2
  79. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-dialog-close-button.ts.template +2 -2
  80. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-dialog.ts.template +2 -1
  81. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-empty.ts.template +1 -1
  82. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-group-label.ts.template +1 -1
  83. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-group.ts.template +2 -2
  84. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-icon.ts.template +1 -1
  85. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-item.ts.template +2 -2
  86. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-list.ts.template +2 -2
  87. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-search-input.ts.template +1 -1
  88. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-search.ts.template +1 -1
  89. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-separator.ts.template +2 -2
  90. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command-shortcut.ts.template +1 -1
  91. package/src/generators/ui/libs/ui-command-helm/files/lib/hlm-command.ts.template +1 -1
  92. package/src/generators/ui/libs/ui-date-picker-helm/files/lib/hlm-date-picker-multi.ts.template +3 -3
  93. package/src/generators/ui/libs/ui-date-picker-helm/files/lib/hlm-date-picker.ts.template +3 -3
  94. package/src/generators/ui/libs/ui-date-picker-helm/files/lib/hlm-date-range-picker.ts.template +3 -3
  95. package/src/generators/ui/libs/ui-dialog-helm/files/lib/hlm-dialog-close.ts.template +2 -2
  96. package/src/generators/ui/libs/ui-dialog-helm/files/lib/hlm-dialog-content.ts.template +2 -2
  97. package/src/generators/ui/libs/ui-dialog-helm/files/lib/hlm-dialog-description.ts.template +2 -2
  98. package/src/generators/ui/libs/ui-dialog-helm/files/lib/hlm-dialog-footer.ts.template +2 -2
  99. package/src/generators/ui/libs/ui-dialog-helm/files/lib/hlm-dialog-header.ts.template +2 -4
  100. package/src/generators/ui/libs/ui-dialog-helm/files/lib/hlm-dialog-overlay.ts.template +3 -2
  101. package/src/generators/ui/libs/ui-dialog-helm/files/lib/hlm-dialog-title.ts.template +3 -5
  102. package/src/generators/ui/libs/ui-form-field-helm/files/lib/hlm-error.ts.template +2 -2
  103. package/src/generators/ui/libs/ui-form-field-helm/files/lib/hlm-form-field.ts.template +2 -2
  104. package/src/generators/ui/libs/ui-form-field-helm/files/lib/hlm-hint.ts.template +2 -2
  105. package/src/generators/ui/libs/ui-hover-card-helm/files/lib/hlm-hover-card-content.ts.template +3 -2
  106. package/src/generators/ui/libs/ui-input-helm/files/lib/hlm-input-error.ts.template +1 -1
  107. package/src/generators/ui/libs/ui-input-helm/files/lib/hlm-input.ts.template +2 -2
  108. package/src/generators/ui/libs/ui-input-otp-helm/files/lib/hlm-input-otp-group.ts.template +1 -1
  109. package/src/generators/ui/libs/ui-input-otp-helm/files/lib/hlm-input-otp-separator.ts.template +1 -1
  110. package/src/generators/ui/libs/ui-input-otp-helm/files/lib/hlm-input-otp-slot.ts.template +3 -3
  111. package/src/generators/ui/libs/ui-input-otp-helm/files/lib/hlm-input-otp.ts.template +2 -2
  112. package/src/generators/ui/libs/ui-label-helm/files/lib/hlm-label.ts.template +2 -2
  113. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-bar-item.ts.template +2 -2
  114. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-bar.ts.template +2 -2
  115. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-item-check.ts.template +2 -2
  116. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-item-checkbox.ts.template +2 -2
  117. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-item-icon.ts.template +1 -1
  118. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-item-radio-indicator.ts.template +2 -2
  119. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-item-radio.ts.template +2 -2
  120. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-item-sub-indicator.ts.template +1 -1
  121. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-item.ts.template +2 -2
  122. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-label.ts.template +1 -1
  123. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-separator.ts.template +2 -2
  124. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu-shortcut.ts.template +1 -1
  125. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-menu.ts.template +2 -2
  126. package/src/generators/ui/libs/ui-menu-helm/files/lib/hlm-sub-menu.ts.template +2 -2
  127. package/src/generators/ui/libs/ui-pagination-helm/files/lib/hlm-pagination-content.ts.template +1 -1
  128. package/src/generators/ui/libs/ui-pagination-helm/files/lib/hlm-pagination-ellipsis.ts.template +1 -1
  129. package/src/generators/ui/libs/ui-pagination-helm/files/lib/hlm-pagination-item.ts.template +1 -1
  130. package/src/generators/ui/libs/ui-pagination-helm/files/lib/hlm-pagination-link.ts.template +1 -1
  131. package/src/generators/ui/libs/ui-pagination-helm/files/lib/hlm-pagination-next.ts.template +1 -1
  132. package/src/generators/ui/libs/ui-pagination-helm/files/lib/hlm-pagination-previous.ts.template +1 -1
  133. package/src/generators/ui/libs/ui-pagination-helm/files/lib/hlm-pagination.ts.template +1 -1
  134. package/src/generators/ui/libs/ui-popover-helm/files/lib/hlm-popover-close.ts.template +2 -2
  135. package/src/generators/ui/libs/ui-popover-helm/files/lib/hlm-popover-content.ts.template +3 -2
  136. package/src/generators/ui/libs/ui-progress-helm/files/lib/hlm-progress-indicator.ts.template +1 -1
  137. package/src/generators/ui/libs/ui-progress-helm/files/lib/hlm-progress.ts.template +2 -2
  138. package/src/generators/ui/libs/ui-radio-group-helm/files/lib/hlm-radio-group.ts.template +1 -1
  139. package/src/generators/ui/libs/ui-radio-group-helm/files/lib/hlm-radio-indicator.ts.template +2 -2
  140. package/src/generators/ui/libs/ui-radio-group-helm/files/lib/hlm-radio.ts.template +1 -1
  141. package/src/generators/ui/libs/ui-scroll-area-helm/files/lib/hlm-scroll-area.ts.template +1 -1
  142. package/src/generators/ui/libs/ui-select-helm/files/lib/hlm-select-content.ts.template +3 -2
  143. package/src/generators/ui/libs/ui-select-helm/files/lib/hlm-select-group.ts.template +1 -1
  144. package/src/generators/ui/libs/ui-select-helm/files/lib/hlm-select-label.ts.template +2 -2
  145. package/src/generators/ui/libs/ui-select-helm/files/lib/hlm-select-option.ts.template +2 -2
  146. package/src/generators/ui/libs/ui-select-helm/files/lib/hlm-select-scroll-down.ts.template +1 -1
  147. package/src/generators/ui/libs/ui-select-helm/files/lib/hlm-select-scroll-up.ts.template +1 -1
  148. package/src/generators/ui/libs/ui-select-helm/files/lib/hlm-select-trigger.ts.template +2 -2
  149. package/src/generators/ui/libs/ui-select-helm/files/lib/hlm-select-value.ts.template +2 -2
  150. package/src/generators/ui/libs/ui-select-helm/files/lib/hlm-select.ts.template +1 -1
  151. package/src/generators/ui/libs/ui-separator-helm/files/index.ts.template +4 -2
  152. package/src/generators/ui/libs/ui-separator-helm/files/lib/hlm-separator.ts.template +6 -7
  153. package/src/generators/ui/libs/ui-sheet-helm/files/lib/hlm-sheet-close.ts.template +2 -2
  154. package/src/generators/ui/libs/ui-sheet-helm/files/lib/hlm-sheet-content.ts.template +3 -2
  155. package/src/generators/ui/libs/ui-sheet-helm/files/lib/hlm-sheet-description.ts.template +1 -1
  156. package/src/generators/ui/libs/ui-sheet-helm/files/lib/hlm-sheet-footer.ts.template +1 -1
  157. package/src/generators/ui/libs/ui-sheet-helm/files/lib/hlm-sheet-header.ts.template +1 -1
  158. package/src/generators/ui/libs/ui-sheet-helm/files/lib/hlm-sheet-overlay.ts.template +3 -2
  159. package/src/generators/ui/libs/ui-sheet-helm/files/lib/hlm-sheet-title.ts.template +1 -1
  160. package/src/generators/ui/libs/ui-skeleton-helm/files/lib/hlm-skeleton.ts.template +2 -2
  161. package/src/generators/ui/libs/ui-slider-helm/files/lib/hlm-slider.ts.template +1 -1
  162. package/src/generators/ui/libs/ui-sonner-helm/files/lib/hlm-toaster.ts.template +1 -1
  163. package/src/generators/ui/libs/ui-spinner-helm/files/lib/hlm-spinner.ts.template +2 -2
  164. package/src/generators/ui/libs/ui-switch-helm/files/lib/hlm-switch-thumb.ts.template +2 -2
  165. package/src/generators/ui/libs/ui-switch-helm/files/lib/hlm-switch.ts.template +2 -2
  166. package/src/generators/ui/libs/ui-table-helm/files/lib/hlm-table.ts.template +1 -1
  167. package/src/generators/ui/libs/ui-tabs-helm/files/lib/hlm-tabs-content.ts.template +2 -2
  168. package/src/generators/ui/libs/ui-tabs-helm/files/lib/hlm-tabs-list.ts.template +3 -3
  169. package/src/generators/ui/libs/ui-tabs-helm/files/lib/hlm-tabs-paginated-list.ts.template +2 -2
  170. package/src/generators/ui/libs/ui-tabs-helm/files/lib/hlm-tabs-trigger.ts.template +2 -2
  171. package/src/generators/ui/libs/ui-tabs-helm/files/lib/hlm-tabs.ts.template +1 -1
  172. package/src/generators/ui/libs/ui-toggle-group-helm/files/lib/hlm-toggle-group.ts.template +2 -2
  173. package/src/generators/ui/libs/ui-toggle-group-helm/files/lib/hlm-toggle-item.ts.template +6 -6
  174. package/src/generators/ui/libs/ui-toggle-helm/files/lib/hlm-toggle.ts.template +3 -3
  175. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-blockquote.ts.template +1 -1
  176. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-code.ts.template +1 -1
  177. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-h1.ts.template +1 -1
  178. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-h2.ts.template +1 -1
  179. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-h3.ts.template +1 -1
  180. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-h4.ts.template +1 -1
  181. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-large.ts.template +1 -1
  182. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-lead.ts.template +1 -1
  183. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-muted.ts.template +1 -1
  184. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-p.ts.template +1 -1
  185. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-small.ts.template +1 -1
  186. package/src/generators/ui/libs/ui-typography-helm/files/lib/hlm-ul.ts.template +1 -1
  187. package/src/generators/ui/libs/ui-utils-helm/files/index.ts.template +1 -0
  188. package/src/generators/ui/libs/ui-utils-helm/files/lib/hlm.ts.template +6 -0
  189. package/src/generators/ui/libs/ui-utils-helm/generator.d.ts +3 -0
  190. package/src/generators/ui/libs/ui-utils-helm/generator.js +14 -0
  191. package/src/generators/ui/libs/ui-utils-helm/generator.js.map +1 -0
  192. package/src/generators/ui/primitive-deps.js +42 -41
  193. package/src/generators/ui/primitive-deps.js.map +1 -1
  194. package/src/generators/ui/primitives.d.ts +1 -1
  195. package/src/generators/ui/supported-ui-libraries.json +37 -44
@@ -1,8 +1,8 @@
1
1
  import { BooleanInput, NumberInput } from '@angular/cdk/coercion';
2
2
  import {
3
+ booleanAttribute,
3
4
  ChangeDetectionStrategy,
4
5
  Component,
5
- booleanAttribute,
6
6
  computed,
7
7
  input,
8
8
  model,
@@ -21,13 +21,13 @@ import {
21
21
  BrnCalendarPreviousButton,
22
22
  BrnCalendarWeek,
23
23
  BrnCalendarWeekday,
24
- Weekday,
25
24
  injectBrnCalendarI18n,
25
+ Weekday,
26
26
  } from '@spartan-ng/brain/calendar';
27
- import { hlm } from '@spartan-ng/brain/core';
28
27
  import { injectDateAdapter } from '@spartan-ng/brain/date-time';
29
28
  import { buttonVariants } from '@spartan-ng/helm/button';
30
29
  import { HlmIcon } from '@spartan-ng/helm/icon';
30
+ import { hlm } from '@spartan-ng/helm/utils';
31
31
  import type { ClassValue } from 'clsx';
32
32
 
33
33
  @Component({
@@ -93,9 +93,9 @@ import type { ClassValue } from 'clsx';
93
93
  *brnCalendarWeekday="let weekday"
94
94
  scope="col"
95
95
  class="text-muted-foreground w-8 rounded-md text-[0.8rem] font-normal"
96
- [attr.aria-label]="_i18n.labelWeekday(weekday)"
96
+ [attr.aria-label]="_i18n.config().labelWeekday(weekday)"
97
97
  >
98
- {{ _i18n.formatWeekdayName(weekday) }}
98
+ {{ _i18n.config().formatWeekdayName(weekday) }}
99
99
  </th>
100
100
  </tr>
101
101
  </thead>
@@ -159,7 +159,7 @@ export class HlmCalendarMulti<T> {
159
159
  public readonly dateDisabled = input<(date: T) => boolean>(() => false);
160
160
 
161
161
  /** The day the week starts on */
162
- public readonly weekStartsOn = input<Weekday, NumberInput>(0, {
162
+ public readonly weekStartsOn = input<Weekday, NumberInput>(undefined, {
163
163
  transform: (v: unknown) => numberAttribute(v) as Weekday,
164
164
  });
165
165
 
@@ -171,16 +171,18 @@ export class HlmCalendarMulti<T> {
171
171
 
172
172
  /** Get the heading for the current month and year */
173
173
  protected readonly _heading = computed(() =>
174
- this._i18n.formatHeader(
175
- this._dateAdapter.getMonth(this._calendar().focusedDate()),
176
- this._dateAdapter.getYear(this._calendar().focusedDate()),
177
- ),
174
+ this._i18n
175
+ .config()
176
+ .formatHeader(
177
+ this._dateAdapter.getMonth(this._calendar().focusedDate()),
178
+ this._dateAdapter.getYear(this._calendar().focusedDate()),
179
+ ),
178
180
  );
179
181
 
180
182
  protected readonly _btnClass = hlm(
181
183
  buttonVariants({ variant: 'ghost' }),
182
184
  'size-8 p-0 font-normal aria-selected:opacity-100',
183
- 'data-[outside]:text-muted-foreground data-[outside]:opacity-50 data-[outside]:aria-selected:bg-accent/50 data-[outside]:aria-selected:text-muted-foreground data-[outside]:aria-selected:opacity-30',
185
+ 'data-[outside]:text-muted-foreground data-[outside]:aria-selected:bg-accent/50 data-[outside]:aria-selected:text-muted-foreground data-[outside]:opacity-50 data-[outside]:aria-selected:opacity-30',
184
186
  'data-[today]:bg-accent data-[today]:text-accent-foreground',
185
187
  'data-[selected]:bg-primary data-[selected]:text-primary-foreground data-[selected]:hover:bg-primary data-[selected]:hover:text-primary-foreground data-[selected]:focus:bg-primary data-[selected]:focus:text-primary-foreground',
186
188
  'data-[disabled]:text-muted-foreground data-[disabled]:opacity-50',
@@ -1,8 +1,8 @@
1
1
  import { BooleanInput, NumberInput } from '@angular/cdk/coercion';
2
2
  import {
3
+ booleanAttribute,
3
4
  ChangeDetectionStrategy,
4
5
  Component,
5
- booleanAttribute,
6
6
  computed,
7
7
  input,
8
8
  model,
@@ -21,13 +21,13 @@ import {
21
21
  BrnCalendarRange,
22
22
  BrnCalendarWeek,
23
23
  BrnCalendarWeekday,
24
- Weekday,
25
24
  injectBrnCalendarI18n,
25
+ Weekday,
26
26
  } from '@spartan-ng/brain/calendar';
27
- import { hlm } from '@spartan-ng/brain/core';
28
27
  import { injectDateAdapter } from '@spartan-ng/brain/date-time';
29
28
  import { buttonVariants } from '@spartan-ng/helm/button';
30
29
  import { HlmIcon } from '@spartan-ng/helm/icon';
30
+ import { hlm } from '@spartan-ng/helm/utils';
31
31
  import type { ClassValue } from 'clsx';
32
32
 
33
33
  @Component({
@@ -92,9 +92,9 @@ import type { ClassValue } from 'clsx';
92
92
  *brnCalendarWeekday="let weekday"
93
93
  scope="col"
94
94
  class="text-muted-foreground w-8 rounded-md text-[0.8rem] font-normal"
95
- [attr.aria-label]="_i18n.labelWeekday(weekday)"
95
+ [attr.aria-label]="_i18n.config().labelWeekday(weekday)"
96
96
  >
97
- {{ _i18n.formatWeekdayName(weekday) }}
97
+ {{ _i18n.config().formatWeekdayName(weekday) }}
98
98
  </th>
99
99
  </tr>
100
100
  </thead>
@@ -151,7 +151,7 @@ export class HlmCalendarRange<T> {
151
151
  public readonly dateDisabled = input<(date: T) => boolean>(() => false);
152
152
 
153
153
  /** The day the week starts on */
154
- public readonly weekStartsOn = input<Weekday, NumberInput>(0, {
154
+ public readonly weekStartsOn = input<Weekday, NumberInput>(undefined, {
155
155
  transform: (v: unknown) => numberAttribute(v) as Weekday,
156
156
  });
157
157
 
@@ -163,10 +163,12 @@ export class HlmCalendarRange<T> {
163
163
 
164
164
  /** Get the heading for the current month and year */
165
165
  protected readonly _heading = computed(() =>
166
- this._i18n.formatHeader(
167
- this._dateAdapter.getMonth(this._calendar().focusedDate()),
168
- this._dateAdapter.getYear(this._calendar().focusedDate()),
169
- ),
166
+ this._i18n
167
+ .config()
168
+ .formatHeader(
169
+ this._dateAdapter.getMonth(this._calendar().focusedDate()),
170
+ this._dateAdapter.getYear(this._calendar().focusedDate()),
171
+ ),
170
172
  );
171
173
 
172
174
  protected readonly _btnClass = hlm(
@@ -178,6 +180,6 @@ export class HlmCalendarRange<T> {
178
180
  'data-[disabled]:text-muted-foreground data-[disabled]:opacity-50',
179
181
  'data-[range-start]:rounded-l-md',
180
182
  'data-[range-end]:rounded-r-md',
181
- 'data-[range-between]:rounded-none data-[range-between]:bg-accent data-[range-between]:text-accent-foreground',
183
+ 'data-[range-between]:bg-accent data-[range-between]:text-accent-foreground data-[range-between]:rounded-none',
182
184
  );
183
185
  }
@@ -1,8 +1,8 @@
1
1
  import { BooleanInput, NumberInput } from '@angular/cdk/coercion';
2
2
  import {
3
+ booleanAttribute,
3
4
  ChangeDetectionStrategy,
4
5
  Component,
5
- booleanAttribute,
6
6
  computed,
7
7
  input,
8
8
  model,
@@ -21,13 +21,13 @@ import {
21
21
  BrnCalendarPreviousButton,
22
22
  BrnCalendarWeek,
23
23
  BrnCalendarWeekday,
24
- Weekday,
25
24
  injectBrnCalendarI18n,
25
+ Weekday,
26
26
  } from '@spartan-ng/brain/calendar';
27
- import { hlm } from '@spartan-ng/brain/core';
28
27
  import { injectDateAdapter } from '@spartan-ng/brain/date-time';
29
28
  import { buttonVariants } from '@spartan-ng/helm/button';
30
29
  import { HlmIcon } from '@spartan-ng/helm/icon';
30
+ import { hlm } from '@spartan-ng/helm/utils';
31
31
  import type { ClassValue } from 'clsx';
32
32
 
33
33
  @Component({
@@ -91,9 +91,9 @@ import type { ClassValue } from 'clsx';
91
91
  *brnCalendarWeekday="let weekday"
92
92
  scope="col"
93
93
  class="text-muted-foreground w-8 rounded-md text-[0.8rem] font-normal"
94
- [attr.aria-label]="_i18n.labelWeekday(weekday)"
94
+ [attr.aria-label]="_i18n.config().labelWeekday(weekday)"
95
95
  >
96
- {{ _i18n.formatWeekdayName(weekday) }}
96
+ {{ _i18n.config().formatWeekdayName(weekday) }}
97
97
  </th>
98
98
  </tr>
99
99
  </thead>
@@ -147,7 +147,7 @@ export class HlmCalendar<T> {
147
147
  public readonly dateDisabled = input<(date: T) => boolean>(() => false);
148
148
 
149
149
  /** The day the week starts on */
150
- public readonly weekStartsOn = input<Weekday, NumberInput>(0, {
150
+ public readonly weekStartsOn = input<Weekday, NumberInput>(undefined, {
151
151
  transform: (v: unknown) => numberAttribute(v) as Weekday,
152
152
  });
153
153
 
@@ -159,16 +159,18 @@ export class HlmCalendar<T> {
159
159
 
160
160
  /** Get the heading for the current month and year */
161
161
  protected readonly _heading = computed(() =>
162
- this._i18n.formatHeader(
163
- this._dateAdapter.getMonth(this._calendar().focusedDate()),
164
- this._dateAdapter.getYear(this._calendar().focusedDate()),
165
- ),
162
+ this._i18n
163
+ .config()
164
+ .formatHeader(
165
+ this._dateAdapter.getMonth(this._calendar().focusedDate()),
166
+ this._dateAdapter.getYear(this._calendar().focusedDate()),
167
+ ),
166
168
  );
167
169
 
168
170
  protected readonly _btnClass = hlm(
169
171
  buttonVariants({ variant: 'ghost' }),
170
172
  'size-8 p-0 font-normal aria-selected:opacity-100',
171
- 'data-[outside]:text-muted-foreground data-[outside]:opacity-50 data-[outside]:aria-selected:bg-accent/50 data-[outside]:aria-selected:text-muted-foreground data-[outside]:aria-selected:opacity-30',
173
+ 'data-[outside]:text-muted-foreground data-[outside]:aria-selected:bg-accent/50 data-[outside]:aria-selected:text-muted-foreground data-[outside]:opacity-50 data-[outside]:aria-selected:opacity-30',
172
174
  'data-[today]:bg-accent data-[today]:text-accent-foreground',
173
175
  'data-[selected]:bg-primary data-[selected]:text-primary-foreground data-[selected]:hover:bg-primary dark:hover:text-accent-foreground data-[selected]:focus:bg-primary data-[selected]:focus:text-primary-foreground',
174
176
  'data-[disabled]:text-muted-foreground data-[disabled]:opacity-50',
@@ -1,5 +1,5 @@
1
1
  import { Directive, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import type { ClassValue } from 'clsx';
4
4
 
5
5
  @Directive({
@@ -1,5 +1,5 @@
1
1
  import { Directive, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import type { ClassValue } from 'clsx';
4
4
 
5
5
  @Directive({
@@ -1,5 +1,5 @@
1
1
  import { Directive, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import type { ClassValue } from 'clsx';
4
4
 
5
5
  @Directive({
@@ -1,5 +1,5 @@
1
1
  import { Directive, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import type { ClassValue } from 'clsx';
4
4
 
5
5
  @Directive({
@@ -10,5 +10,5 @@ import type { ClassValue } from 'clsx';
10
10
  })
11
11
  export class HlmCardFooter {
12
12
  public readonly userClass = input<ClassValue>('', { alias: 'class' });
13
- protected readonly _computedClass = computed(() => hlm('flex items-center px-6 [.border-t]:pt-6', this.userClass()));
13
+ protected readonly _computedClass = computed(() => hlm('[.border-t]:pt-6 flex items-center px-6', this.userClass()));
14
14
  }
@@ -1,5 +1,5 @@
1
1
  import { Directive, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import type { ClassValue } from 'clsx';
4
4
 
5
5
  @Directive({
@@ -12,7 +12,7 @@ export class HlmCardHeader {
12
12
  public readonly userClass = input<ClassValue>('', { alias: 'class' });
13
13
  protected readonly _computedClass = computed(() =>
14
14
  hlm(
15
- '@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6',
15
+ '@container/card-header has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6 grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6',
16
16
  this.userClass(),
17
17
  ),
18
18
  );
@@ -1,5 +1,5 @@
1
1
  import { Directive, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import type { ClassValue } from 'clsx';
4
4
 
5
5
  @Directive({
@@ -10,5 +10,5 @@ import type { ClassValue } from 'clsx';
10
10
  })
11
11
  export class HlmCardTitle {
12
12
  public readonly userClass = input<ClassValue>('', { alias: 'class' });
13
- protected readonly _computedClass = computed(() => hlm('leading-none font-semibold', this.userClass()));
13
+ protected readonly _computedClass = computed(() => hlm('font-semibold leading-none', this.userClass()));
14
14
  }
@@ -1,5 +1,5 @@
1
1
  import { Directive, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import { type VariantProps, cva } from 'class-variance-authority';
4
4
  import type { ClassValue } from 'clsx';
5
5
 
@@ -1,5 +1,5 @@
1
1
  import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, inject, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import type { ClassValue } from 'clsx';
4
4
  import { HlmCarousel } from './hlm-carousel';
5
5
 
@@ -1,5 +1,5 @@
1
1
  import { ChangeDetectionStrategy, Component, ViewEncapsulation, computed, inject, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import type { ClassValue } from 'clsx';
4
4
  import { HlmCarousel } from './hlm-carousel';
5
5
 
@@ -10,9 +10,9 @@ import {
10
10
  } from '@angular/core';
11
11
  import { NgIcon, provideIcons } from '@ng-icons/core';
12
12
  import { lucideArrowRight } from '@ng-icons/lucide';
13
- import { hlm } from '@spartan-ng/brain/core';
14
13
  import { HlmButton, provideBrnButtonConfig } from '@spartan-ng/helm/button';
15
14
  import { HlmIcon } from '@spartan-ng/helm/icon';
15
+ import { hlm } from '@spartan-ng/helm/utils';
16
16
  import type { ClassValue } from 'clsx';
17
17
  import { HlmCarousel } from './hlm-carousel';
18
18
 
@@ -10,9 +10,9 @@ import {
10
10
  } from '@angular/core';
11
11
  import { NgIcon, provideIcons } from '@ng-icons/core';
12
12
  import { lucideArrowLeft } from '@ng-icons/lucide';
13
- import { hlm } from '@spartan-ng/brain/core';
14
13
  import { HlmButton, provideBrnButtonConfig } from '@spartan-ng/helm/button';
15
14
  import { HlmIcon } from '@spartan-ng/helm/icon';
15
+ import { hlm } from '@spartan-ng/helm/utils';
16
16
  import type { ClassValue } from 'clsx';
17
17
  import { HlmCarousel } from './hlm-carousel';
18
18
 
@@ -1,5 +1,5 @@
1
1
  import { ChangeDetectionStrategy, Component, computed, inject, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import { ClassValue } from 'clsx';
4
4
  import { HlmCarousel } from './hlm-carousel';
5
5
 
@@ -9,7 +9,7 @@ import {
9
9
  signal,
10
10
  viewChild,
11
11
  } from '@angular/core';
12
- import { hlm } from '@spartan-ng/brain/core';
12
+ import { hlm } from '@spartan-ng/helm/utils';
13
13
  import type { ClassValue } from 'clsx';
14
14
  import {
15
15
  EmblaCarouselDirective,
@@ -14,9 +14,9 @@ import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';
14
14
  import { NgIcon, provideIcons } from '@ng-icons/core';
15
15
  import { lucideCheck } from '@ng-icons/lucide';
16
16
  import { BrnCheckbox } from '@spartan-ng/brain/checkbox';
17
- import { hlm } from '@spartan-ng/brain/core';
18
17
  import type { ChangeFn, TouchFn } from '@spartan-ng/brain/forms';
19
18
  import { HlmIcon } from '@spartan-ng/helm/icon';
19
+ import { hlm } from '@spartan-ng/helm/utils';
20
20
  import type { ClassValue } from 'clsx';
21
21
 
22
22
  export const HLM_CHECKBOX_VALUE_ACCESSOR = {
@@ -66,7 +66,7 @@ export class HlmCheckbox implements ControlValueAccessor {
66
66
 
67
67
  protected readonly _computedClass = computed(() =>
68
68
  hlm(
69
- 'peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 cursor-default',
69
+ 'border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive shadow-xs peer size-4 shrink-0 cursor-default rounded-[4px] border outline-none transition-shadow focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50',
70
70
  this.userClass(),
71
71
  this._state().disabled() ? 'cursor-not-allowed opacity-50' : '',
72
72
  ),
@@ -1,8 +1,8 @@
1
1
  import { Directive, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
3
2
  import { BrnDialogClose } from '@spartan-ng/brain/dialog';
4
3
  import { HlmButton, provideBrnButtonConfig } from '@spartan-ng/helm/button';
5
4
  import { provideHlmIconConfig } from '@spartan-ng/helm/icon';
5
+ import { hlm } from '@spartan-ng/helm/utils';
6
6
  import type { ClassValue } from 'clsx';
7
7
 
8
8
  @Directive({
@@ -17,7 +17,7 @@ export class HlmCommandDialogCloseButton {
17
17
  public readonly userClass = input<ClassValue>('', { alias: 'class' });
18
18
  protected readonly _computedClass = computed(() =>
19
19
  hlm(
20
- 'absolute top-3 right-3 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ring font-medium h-10 hover:bg-accent hover:text-accent-foreground inline-flex items-center justify-center px-4 py-2 ring-offset-background rounded-md text-sm transition-colors !h-5 !p-1 !w-5',
20
+ 'focus-visible:ring-ring hover:bg-accent hover:text-accent-foreground ring-offset-background absolute right-3 top-3 inline-flex !h-5 h-10 !w-5 items-center justify-center rounded-md !p-1 px-4 py-2 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2',
21
21
  this.userClass(),
22
22
  ),
23
23
  );
@@ -1,6 +1,7 @@
1
1
  import { Directive, ElementRef, Renderer2, computed, contentChild, effect, inject, input, signal } from '@angular/core';
2
2
  import { BrnCommandSearchInputToken } from '@spartan-ng/brain/command';
3
- import { hlm, injectExposesStateProvider } from '@spartan-ng/brain/core';
3
+ import { injectExposesStateProvider } from '@spartan-ng/brain/core';
4
+ import { hlm } from '@spartan-ng/helm/utils';
4
5
  import type { ClassValue } from 'clsx';
5
6
 
6
7
  @Directive({
@@ -1,5 +1,5 @@
1
1
  import { Directive, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import type { ClassValue } from 'clsx';
4
4
 
5
5
  @Directive({
@@ -1,5 +1,5 @@
1
1
  import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
 
4
4
  @Component({
5
5
  selector: 'hlm-command-group-label',
@@ -1,6 +1,6 @@
1
1
  import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
2
2
  import { BrnCommandGroup } from '@spartan-ng/brain/command';
3
- import { hlm } from '@spartan-ng/brain/core';
3
+ import { hlm } from '@spartan-ng/helm/utils';
4
4
 
5
5
  @Component({
6
6
  selector: 'hlm-command-group',
@@ -22,6 +22,6 @@ export class HlmCommandGroup {
22
22
 
23
23
  /*** The styles to apply */
24
24
  protected readonly _computedClass = computed(() =>
25
- hlm('text-foreground overflow-hidden p-1 block data-[hidden]:hidden', this.userClass()),
25
+ hlm('text-foreground block overflow-hidden p-1 data-[hidden]:hidden', this.userClass()),
26
26
  );
27
27
  }
@@ -1,6 +1,6 @@
1
1
  import { computed, Directive, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
3
2
  import { provideHlmIconConfig } from '@spartan-ng/helm/icon';
3
+ import { hlm } from '@spartan-ng/helm/utils';
4
4
  import { ClassValue } from 'clsx';
5
5
 
6
6
  @Directive({
@@ -1,7 +1,7 @@
1
1
  import { BooleanInput } from '@angular/cdk/coercion';
2
2
  import { booleanAttribute, ChangeDetectionStrategy, Component, computed, input, output } from '@angular/core';
3
3
  import { BrnCommandItem } from '@spartan-ng/brain/command';
4
- import { hlm } from '@spartan-ng/brain/core';
4
+ import { hlm } from '@spartan-ng/helm/utils';
5
5
 
6
6
  @Component({
7
7
  selector: 'button[hlm-command-item]',
@@ -38,7 +38,7 @@ export class HlmCommandItem {
38
38
  /*** The styles to apply */
39
39
  protected readonly _computedClass = computed(() =>
40
40
  hlm(
41
- 'data-[selected]:bg-accent data-[selected=true]:text-accent-foreground [&>ng-icon]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>ng-icon]:pointer-events-none [&>ng-icon]:shrink-0 [&>ng-icon]:text-base w-full data-[hidden]:hidden',
41
+ 'data-[selected]:bg-accent data-[selected=true]:text-accent-foreground [&>ng-icon]:text-muted-foreground outline-hidden relative flex w-full cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm data-[disabled]:pointer-events-none data-[hidden]:hidden data-[disabled]:opacity-50 [&>ng-icon]:pointer-events-none [&>ng-icon]:shrink-0 [&>ng-icon]:text-base',
42
42
  this.userClass(),
43
43
  ),
44
44
  );
@@ -1,6 +1,6 @@
1
1
  import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
2
2
  import { BrnCommandList } from '@spartan-ng/brain/command';
3
- import { hlm } from '@spartan-ng/brain/core';
3
+ import { hlm } from '@spartan-ng/helm/utils';
4
4
 
5
5
  @Component({
6
6
  selector: 'hlm-command-list',
@@ -22,6 +22,6 @@ export class HlmCommandList {
22
22
 
23
23
  /** The styles to apply */
24
24
  protected readonly _computedClass = computed(() =>
25
- hlm('max-h-[300px] overflow-x-hidden overflow-y-auto', this.userClass()),
25
+ hlm('max-h-[300px] overflow-y-auto overflow-x-hidden', this.userClass()),
26
26
  );
27
27
  }
@@ -1,6 +1,6 @@
1
1
  import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
2
2
  import { BrnCommandSearchInput } from '@spartan-ng/brain/command';
3
- import { hlm } from '@spartan-ng/brain/core';
3
+ import { hlm } from '@spartan-ng/helm/utils';
4
4
  import type { ClassValue } from 'clsx';
5
5
 
6
6
  @Component({
@@ -1,6 +1,6 @@
1
1
  import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
3
2
  import { provideHlmIconConfig } from '@spartan-ng/helm/icon';
3
+ import { hlm } from '@spartan-ng/helm/utils';
4
4
  import type { ClassValue } from 'clsx';
5
5
 
6
6
  @Component({
@@ -1,5 +1,5 @@
1
1
  import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
 
4
4
  @Component({
5
5
  selector: 'hlm-command-separator',
@@ -15,5 +15,5 @@ export class HlmCommandSeparator {
15
15
  public readonly userClass = input<string>('', { alias: 'class' });
16
16
 
17
17
  /*** The styles to apply */
18
- protected readonly _computedClass = computed(() => hlm('block bg-border -mx-1 h-px', this.userClass()));
18
+ protected readonly _computedClass = computed(() => hlm('bg-border -mx-1 block h-px', this.userClass()));
19
19
  }
@@ -1,5 +1,5 @@
1
1
  import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
2
- import { hlm } from '@spartan-ng/brain/core';
2
+ import { hlm } from '@spartan-ng/helm/utils';
3
3
  import { ClassValue } from 'clsx';
4
4
 
5
5
  @Component({
@@ -1,6 +1,6 @@
1
1
  import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
2
2
  import { BrnCommand } from '@spartan-ng/brain/command';
3
- import { hlm } from '@spartan-ng/brain/core';
3
+ import { hlm } from '@spartan-ng/helm/utils';
4
4
  import type { ClassValue } from 'clsx';
5
5
 
6
6
  @Component({
@@ -14,13 +14,13 @@ import {
14
14
  import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';
15
15
  import { NgIcon, provideIcons } from '@ng-icons/core';
16
16
  import { lucideCalendar } from '@ng-icons/lucide';
17
- import { hlm } from '@spartan-ng/brain/core';
18
17
  import { BrnDialogState } from '@spartan-ng/brain/dialog';
19
18
  import { type ChangeFn, type TouchFn } from '@spartan-ng/brain/forms';
20
19
  import { BrnPopover, BrnPopoverContent, BrnPopoverTrigger } from '@spartan-ng/brain/popover';
21
20
  import { HlmCalendarMulti } from '@spartan-ng/helm/calendar';
22
21
  import { HlmIcon } from '@spartan-ng/helm/icon';
23
22
  import { HlmPopoverContent } from '@spartan-ng/helm/popover';
23
+ import { hlm } from '@spartan-ng/helm/utils';
24
24
  import type { ClassValue } from 'clsx';
25
25
  import { injectHlmDatePickerMultiConfig } from './hlm-date-picker-multi.token';
26
26
 
@@ -73,8 +73,8 @@ export class HlmDatePickerMulti<T> implements ControlValueAccessor {
73
73
  public readonly userClass = input<ClassValue>('', { alias: 'class' });
74
74
  protected readonly _computedClass = computed(() =>
75
75
  hlm(
76
- 'inline-flex items-center gap-2 whitespace-nowrap rounded-md text-sm ring-offset-background transition-all border border-input bg-background hover:bg-accent hover:text-accent-foreground h-10 px-4 py-2 w-[280px] justify-start text-left font-normal',
77
- 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',
76
+ 'ring-offset-background border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex h-10 w-[280px] items-center justify-start gap-2 whitespace-nowrap rounded-md border px-4 py-2 text-left text-sm font-normal transition-all',
77
+ 'focus-visible:ring-ring focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2',
78
78
  'disabled:pointer-events-none disabled:opacity-50',
79
79
  '[&_ng-icon]:pointer-events-none [&_ng-icon]:shrink-0',
80
80
  !this._mutableDate() ? 'text-muted-foreground' : '',
@@ -13,13 +13,13 @@ import {
13
13
  import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';
14
14
  import { NgIcon, provideIcons } from '@ng-icons/core';
15
15
  import { lucideChevronDown } from '@ng-icons/lucide';
16
- import { hlm } from '@spartan-ng/brain/core';
17
16
  import { BrnDialogState } from '@spartan-ng/brain/dialog';
18
17
  import { type ChangeFn, type TouchFn } from '@spartan-ng/brain/forms';
19
18
  import { BrnPopover, BrnPopoverContent, BrnPopoverTrigger } from '@spartan-ng/brain/popover';
20
19
  import { HlmCalendar } from '@spartan-ng/helm/calendar';
21
20
  import { HlmIcon } from '@spartan-ng/helm/icon';
22
21
  import { HlmPopoverContent } from '@spartan-ng/helm/popover';
22
+ import { hlm } from '@spartan-ng/helm/utils';
23
23
  import type { ClassValue } from 'clsx';
24
24
  import { injectHlmDatePickerConfig } from './hlm-date-picker.token';
25
25
 
@@ -70,8 +70,8 @@ export class HlmDatePicker<T> implements ControlValueAccessor {
70
70
  public readonly userClass = input<ClassValue>('', { alias: 'class' });
71
71
  protected readonly _computedClass = computed(() =>
72
72
  hlm(
73
- 'inline-flex items-center gap-2 whitespace-nowrap rounded-md text-sm transition-all disabled:pointer-events-none disabled:opacity-50 ring-offset-background border border-input bg-background hover:bg-accent dark:bg-input/30 dark:hover:bg-input/50 hover:text-accent-foreground h-9 px-3 py-2 w-[280px] justify-start text-left font-normal cursor-default justify-between',
74
- 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',
73
+ 'ring-offset-background border-input bg-background hover:bg-accent dark:bg-input/30 dark:hover:bg-input/50 hover:text-accent-foreground inline-flex h-9 w-[280px] cursor-default items-center justify-start justify-between gap-2 whitespace-nowrap rounded-md border px-3 py-2 text-left text-sm font-normal transition-all disabled:pointer-events-none disabled:opacity-50',
74
+ 'focus-visible:ring-ring focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2',
75
75
  'disabled:pointer-events-none disabled:opacity-50',
76
76
  '[&_ng-icon]:pointer-events-none [&_ng-icon]:shrink-0',
77
77
  !this._mutableDate() ? 'text-muted-foreground' : '',
@@ -14,13 +14,13 @@ import {
14
14
  import { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';
15
15
  import { NgIcon, provideIcons } from '@ng-icons/core';
16
16
  import { lucideCalendar } from '@ng-icons/lucide';
17
- import { hlm } from '@spartan-ng/brain/core';
18
17
  import { BrnDialogState } from '@spartan-ng/brain/dialog';
19
18
  import { type ChangeFn, type TouchFn } from '@spartan-ng/brain/forms';
20
19
  import { BrnPopover, BrnPopoverContent, BrnPopoverTrigger } from '@spartan-ng/brain/popover';
21
20
  import { HlmCalendarRange } from '@spartan-ng/helm/calendar';
22
21
  import { HlmIcon } from '@spartan-ng/helm/icon';
23
22
  import { HlmPopoverContent } from '@spartan-ng/helm/popover';
23
+ import { hlm } from '@spartan-ng/helm/utils';
24
24
  import type { ClassValue } from 'clsx';
25
25
  import { injectHlmDateRangePickerConfig } from './hlm-date-range-picker.token';
26
26
 
@@ -78,8 +78,8 @@ export class HlmDateRangePicker<T> implements ControlValueAccessor {
78
78
  public readonly userClass = input<ClassValue>('', { alias: 'class' });
79
79
  protected readonly _computedClass = computed(() =>
80
80
  hlm(
81
- 'inline-flex items-center gap-2 whitespace-nowrap rounded-md text-sm ring-offset-background transition-all border border-input bg-background hover:bg-accent hover:text-accent-foreground h-10 px-4 py-2 w-[280px] justify-start text-left font-normal',
82
- 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',
81
+ 'ring-offset-background border-input bg-background hover:bg-accent hover:text-accent-foreground inline-flex h-10 w-[280px] items-center justify-start gap-2 whitespace-nowrap rounded-md border px-4 py-2 text-left text-sm font-normal transition-all',
82
+ 'focus-visible:ring-ring focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2',
83
83
  'disabled:pointer-events-none disabled:opacity-50',
84
84
  '[&_ng-icon]:pointer-events-none [&_ng-icon]:shrink-0',
85
85
  !this._mutableDate() ? 'text-muted-foreground' : '',