@neural-ui/core 1.6.0 → 1.6.1

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 (136) hide show
  1. package/fesm2022/neural-ui-core-accordion.mjs +13 -9
  2. package/fesm2022/neural-ui-core-accordion.mjs.map +1 -1
  3. package/fesm2022/neural-ui-core-alert.mjs +25 -14
  4. package/fesm2022/neural-ui-core-alert.mjs.map +1 -1
  5. package/fesm2022/neural-ui-core-autocomplete.mjs +53 -28
  6. package/fesm2022/neural-ui-core-autocomplete.mjs.map +1 -1
  7. package/fesm2022/neural-ui-core-avatar.mjs +23 -13
  8. package/fesm2022/neural-ui-core-avatar.mjs.map +1 -1
  9. package/fesm2022/neural-ui-core-badge.mjs +15 -9
  10. package/fesm2022/neural-ui-core-badge.mjs.map +1 -1
  11. package/fesm2022/neural-ui-core-block-ui.mjs +16 -11
  12. package/fesm2022/neural-ui-core-block-ui.mjs.map +1 -1
  13. package/fesm2022/neural-ui-core-breadcrumb.mjs +8 -6
  14. package/fesm2022/neural-ui-core-breadcrumb.mjs.map +1 -1
  15. package/fesm2022/neural-ui-core-button.mjs +29 -16
  16. package/fesm2022/neural-ui-core-button.mjs.map +1 -1
  17. package/fesm2022/neural-ui-core-calendar.mjs +75 -50
  18. package/fesm2022/neural-ui-core-calendar.mjs.map +1 -1
  19. package/fesm2022/neural-ui-core-card.mjs +13 -8
  20. package/fesm2022/neural-ui-core-card.mjs.map +1 -1
  21. package/fesm2022/neural-ui-core-chart.mjs +45 -24
  22. package/fesm2022/neural-ui-core-chart.mjs.map +1 -1
  23. package/fesm2022/neural-ui-core-checkbox.mjs +15 -9
  24. package/fesm2022/neural-ui-core-checkbox.mjs.map +1 -1
  25. package/fesm2022/neural-ui-core-chip.mjs +23 -13
  26. package/fesm2022/neural-ui-core-chip.mjs.map +1 -1
  27. package/fesm2022/neural-ui-core-code-block.mjs +32 -17
  28. package/fesm2022/neural-ui-core-code-block.mjs.map +1 -1
  29. package/fesm2022/neural-ui-core-color-picker.mjs +19 -11
  30. package/fesm2022/neural-ui-core-color-picker.mjs.map +1 -1
  31. package/fesm2022/neural-ui-core-command-palette.mjs +16 -11
  32. package/fesm2022/neural-ui-core-command-palette.mjs.map +1 -1
  33. package/fesm2022/neural-ui-core-confirm-dialog.mjs +6 -6
  34. package/fesm2022/neural-ui-core-context-menu.mjs +12 -9
  35. package/fesm2022/neural-ui-core-context-menu.mjs.map +1 -1
  36. package/fesm2022/neural-ui-core-dashboard-grid.mjs +11 -7
  37. package/fesm2022/neural-ui-core-dashboard-grid.mjs.map +1 -1
  38. package/fesm2022/neural-ui-core-date-input.mjs +111 -57
  39. package/fesm2022/neural-ui-core-date-input.mjs.map +1 -1
  40. package/fesm2022/neural-ui-core-divider.mjs +7 -5
  41. package/fesm2022/neural-ui-core-divider.mjs.map +1 -1
  42. package/fesm2022/neural-ui-core-empty-state.mjs +13 -8
  43. package/fesm2022/neural-ui-core-empty-state.mjs.map +1 -1
  44. package/fesm2022/neural-ui-core-filter-bar.mjs +19 -11
  45. package/fesm2022/neural-ui-core-filter-bar.mjs.map +1 -1
  46. package/fesm2022/neural-ui-core-icon.mjs +11 -7
  47. package/fesm2022/neural-ui-core-icon.mjs.map +1 -1
  48. package/fesm2022/neural-ui-core-image-gallery.mjs +23 -13
  49. package/fesm2022/neural-ui-core-image-gallery.mjs.map +1 -1
  50. package/fesm2022/neural-ui-core-image-viewer.mjs +22 -14
  51. package/fesm2022/neural-ui-core-image-viewer.mjs.map +1 -1
  52. package/fesm2022/neural-ui-core-input-otp.mjs +19 -11
  53. package/fesm2022/neural-ui-core-input-otp.mjs.map +1 -1
  54. package/fesm2022/neural-ui-core-input.mjs +67 -35
  55. package/fesm2022/neural-ui-core-input.mjs.map +1 -1
  56. package/fesm2022/neural-ui-core-kanban.mjs +17 -11
  57. package/fesm2022/neural-ui-core-kanban.mjs.map +1 -1
  58. package/fesm2022/neural-ui-core-knob.mjs +41 -22
  59. package/fesm2022/neural-ui-core-knob.mjs.map +1 -1
  60. package/fesm2022/neural-ui-core-meter-group.mjs +23 -13
  61. package/fesm2022/neural-ui-core-meter-group.mjs.map +1 -1
  62. package/fesm2022/neural-ui-core-modal.mjs +16 -11
  63. package/fesm2022/neural-ui-core-modal.mjs.map +1 -1
  64. package/fesm2022/neural-ui-core-multiselect.mjs +72 -39
  65. package/fesm2022/neural-ui-core-multiselect.mjs.map +1 -1
  66. package/fesm2022/neural-ui-core-nav.mjs +22 -13
  67. package/fesm2022/neural-ui-core-nav.mjs.map +1 -1
  68. package/fesm2022/neural-ui-core-notification-center.mjs +27 -10
  69. package/fesm2022/neural-ui-core-notification-center.mjs.map +1 -1
  70. package/fesm2022/neural-ui-core-number-input.mjs +35 -19
  71. package/fesm2022/neural-ui-core-number-input.mjs.map +1 -1
  72. package/fesm2022/neural-ui-core-pagination.mjs +15 -9
  73. package/fesm2022/neural-ui-core-pagination.mjs.map +1 -1
  74. package/fesm2022/neural-ui-core-popover.mjs +22 -14
  75. package/fesm2022/neural-ui-core-popover.mjs.map +1 -1
  76. package/fesm2022/neural-ui-core-progress-bar.mjs +19 -11
  77. package/fesm2022/neural-ui-core-progress-bar.mjs.map +1 -1
  78. package/fesm2022/neural-ui-core-radio.mjs +24 -15
  79. package/fesm2022/neural-ui-core-radio.mjs.map +1 -1
  80. package/fesm2022/neural-ui-core-rating.mjs +13 -8
  81. package/fesm2022/neural-ui-core-rating.mjs.map +1 -1
  82. package/fesm2022/neural-ui-core-rich-text-editor.mjs +63 -30
  83. package/fesm2022/neural-ui-core-rich-text-editor.mjs.map +1 -1
  84. package/fesm2022/neural-ui-core-scheduler-gantt.mjs +41 -22
  85. package/fesm2022/neural-ui-core-scheduler-gantt.mjs.map +1 -1
  86. package/fesm2022/neural-ui-core-select.mjs +77 -43
  87. package/fesm2022/neural-ui-core-select.mjs.map +1 -1
  88. package/fesm2022/neural-ui-core-sidebar.mjs +23 -14
  89. package/fesm2022/neural-ui-core-sidebar.mjs.map +1 -1
  90. package/fesm2022/neural-ui-core-skeleton.mjs +11 -7
  91. package/fesm2022/neural-ui-core-skeleton.mjs.map +1 -1
  92. package/fesm2022/neural-ui-core-slider.mjs +23 -13
  93. package/fesm2022/neural-ui-core-slider.mjs.map +1 -1
  94. package/fesm2022/neural-ui-core-spinner.mjs +17 -10
  95. package/fesm2022/neural-ui-core-spinner.mjs.map +1 -1
  96. package/fesm2022/neural-ui-core-split-button.mjs +27 -15
  97. package/fesm2022/neural-ui-core-split-button.mjs.map +1 -1
  98. package/fesm2022/neural-ui-core-splitter.mjs +9 -6
  99. package/fesm2022/neural-ui-core-splitter.mjs.map +1 -1
  100. package/fesm2022/neural-ui-core-stats-card.mjs +19 -11
  101. package/fesm2022/neural-ui-core-stats-card.mjs.map +1 -1
  102. package/fesm2022/neural-ui-core-stepper.mjs +13 -8
  103. package/fesm2022/neural-ui-core-stepper.mjs.map +1 -1
  104. package/fesm2022/neural-ui-core-switch.mjs +15 -9
  105. package/fesm2022/neural-ui-core-switch.mjs.map +1 -1
  106. package/fesm2022/neural-ui-core-table.mjs +242 -124
  107. package/fesm2022/neural-ui-core-table.mjs.map +1 -1
  108. package/fesm2022/neural-ui-core-tabs.mjs +30 -18
  109. package/fesm2022/neural-ui-core-tabs.mjs.map +1 -1
  110. package/fesm2022/neural-ui-core-textarea.mjs +43 -23
  111. package/fesm2022/neural-ui-core-textarea.mjs.map +1 -1
  112. package/fesm2022/neural-ui-core-timeline-grid.mjs +21 -12
  113. package/fesm2022/neural-ui-core-timeline-grid.mjs.map +1 -1
  114. package/fesm2022/neural-ui-core-timeline.mjs +5 -4
  115. package/fesm2022/neural-ui-core-timeline.mjs.map +1 -1
  116. package/fesm2022/neural-ui-core-toast.mjs +25 -9
  117. package/fesm2022/neural-ui-core-toast.mjs.map +1 -1
  118. package/fesm2022/neural-ui-core-toggle-button-group.mjs +17 -10
  119. package/fesm2022/neural-ui-core-toggle-button-group.mjs.map +1 -1
  120. package/fesm2022/neural-ui-core-toolbar.mjs +13 -8
  121. package/fesm2022/neural-ui-core-toolbar.mjs.map +1 -1
  122. package/fesm2022/neural-ui-core-tooltip.mjs +16 -11
  123. package/fesm2022/neural-ui-core-tooltip.mjs.map +1 -1
  124. package/fesm2022/neural-ui-core-tree-table.mjs +57 -30
  125. package/fesm2022/neural-ui-core-tree-table.mjs.map +1 -1
  126. package/fesm2022/neural-ui-core-tree.mjs +31 -17
  127. package/fesm2022/neural-ui-core-tree.mjs.map +1 -1
  128. package/fesm2022/neural-ui-core-uploader.mjs +91 -47
  129. package/fesm2022/neural-ui-core-uploader.mjs.map +1 -1
  130. package/fesm2022/neural-ui-core-url-state.mjs +7 -5
  131. package/fesm2022/neural-ui-core-url-state.mjs.map +1 -1
  132. package/fesm2022/neural-ui-core-virtual-list.mjs +32 -19
  133. package/fesm2022/neural-ui-core-virtual-list.mjs.map +1 -1
  134. package/package.json +1 -1
  135. package/types/neural-ui-core-notification-center.d.ts +2 -0
  136. package/types/neural-ui-core-toast.d.ts +2 -0
@@ -5,14 +5,20 @@ import { ScrollingModule, CdkVirtualScrollViewport } from '@angular/cdk/scrollin
5
5
  import { NgTemplateOutlet } from '@angular/common';
6
6
 
7
7
  class NeuVirtualListRowComponent {
8
- item = input.required(...(ngDevMode ? [{ debugName: "item" }] : /* istanbul ignore next */ []));
9
- index = input.required(...(ngDevMode ? [{ debugName: "index" }] : /* istanbul ignore next */ []));
10
- itemSize = input.required(...(ngDevMode ? [{ debugName: "itemSize" }] : /* istanbul ignore next */ []));
11
- label = input.required(...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
12
- template = input(null, ...(ngDevMode ? [{ debugName: "template" }] : /* istanbul ignore next */ []));
13
- context = computed(() => ({ $implicit: this.item(), index: this.index() }), ...(ngDevMode ? [{ debugName: "context" }] : /* istanbul ignore next */ []));
14
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: NeuVirtualListRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
15
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: NeuVirtualListRowComponent, isStandalone: true, selector: "neu-virtual-list-row", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: true, transformFunction: null }, index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: true, transformFunction: null }, itemSize: { classPropertyName: "itemSize", publicName: "itemSize", isSignal: true, isRequired: true, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
8
+ item = input.required(/* @ts-ignore */
9
+ ...(ngDevMode ? [{ debugName: "item" }] : /* istanbul ignore next */ []));
10
+ index = input.required(/* @ts-ignore */
11
+ ...(ngDevMode ? [{ debugName: "index" }] : /* istanbul ignore next */ []));
12
+ itemSize = input.required(/* @ts-ignore */
13
+ ...(ngDevMode ? [{ debugName: "itemSize" }] : /* istanbul ignore next */ []));
14
+ label = input.required(/* @ts-ignore */
15
+ ...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
16
+ template = input(null, /* @ts-ignore */
17
+ ...(ngDevMode ? [{ debugName: "template" }] : /* istanbul ignore next */ []));
18
+ context = computed(() => ({ $implicit: this.item(), index: this.index() }), /* @ts-ignore */
19
+ ...(ngDevMode ? [{ debugName: "context" }] : /* istanbul ignore next */ []));
20
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: NeuVirtualListRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
21
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.4", type: NeuVirtualListRowComponent, isStandalone: true, selector: "neu-virtual-list-row", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: true, transformFunction: null }, index: { classPropertyName: "index", publicName: "index", isSignal: true, isRequired: true, transformFunction: null }, itemSize: { classPropertyName: "itemSize", publicName: "itemSize", isSignal: true, isRequired: true, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, template: { classPropertyName: "template", publicName: "template", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
16
22
  @if (template(); as projectedTemplate) {
17
23
  <ng-container [ngTemplateOutlet]="projectedTemplate" [ngTemplateOutletContext]="context()" />
18
24
  } @else {
@@ -22,7 +28,7 @@ class NeuVirtualListRowComponent {
22
28
  }
23
29
  `, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
24
30
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: NeuVirtualListRowComponent, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: NeuVirtualListRowComponent, decorators: [{
26
32
  type: Component,
27
33
  args: [{
28
34
  selector: 'neu-virtual-list-row',
@@ -67,20 +73,27 @@ class NeuVirtualListComponent {
67
73
  this._viewport?.checkViewportSize();
68
74
  }
69
75
  /** Array de ítems / Item array */
70
- items = input([], ...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
76
+ items = input([], /* @ts-ignore */
77
+ ...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
71
78
  /** Altura de cada fila en px / Row height in px */
72
- itemSize = input(48, ...(ngDevMode ? [{ debugName: "itemSize" }] : /* istanbul ignore next */ []));
79
+ itemSize = input(48, /* @ts-ignore */
80
+ ...(ngDevMode ? [{ debugName: "itemSize" }] : /* istanbul ignore next */ []));
73
81
  /** Número de filas visibles / Visible row count (sets container height) */
74
- visibleRows = input(10, ...(ngDevMode ? [{ debugName: "visibleRows" }] : /* istanbul ignore next */ []));
82
+ visibleRows = input(10, /* @ts-ignore */
83
+ ...(ngDevMode ? [{ debugName: "visibleRows" }] : /* istanbul ignore next */ []));
75
84
  /** Texto cuando la lista está vacía / Empty state text */
76
- emptyLabel = input('Sin resultados', ...(ngDevMode ? [{ debugName: "emptyLabel" }] : /* istanbul ignore next */ []));
85
+ emptyLabel = input('Sin resultados', /* @ts-ignore */
86
+ ...(ngDevMode ? [{ debugName: "emptyLabel" }] : /* istanbul ignore next */ []));
77
87
  /** Función de tracking / Tracking function */
78
- trackBy = input((i) => i, ...(ngDevMode ? [{ debugName: "trackBy" }] : /* istanbul ignore next */ []));
88
+ trackBy = input((i) => i, /* @ts-ignore */
89
+ ...(ngDevMode ? [{ debugName: "trackBy" }] : /* istanbul ignore next */ []));
79
90
  /** Emitido al hacer click en un ítem / Emitted on item click */
80
91
  itemClick = output();
81
92
  itemTemplate = null;
82
- _containerHeight = computed(() => `${this.itemSize() * this.visibleRows()}px`, ...(ngDevMode ? [{ debugName: "_containerHeight" }] : /* istanbul ignore next */ []));
83
- _isEmpty = computed(() => this.items().length === 0, ...(ngDevMode ? [{ debugName: "_isEmpty" }] : /* istanbul ignore next */ []));
93
+ _containerHeight = computed(() => `${this.itemSize() * this.visibleRows()}px`, /* @ts-ignore */
94
+ ...(ngDevMode ? [{ debugName: "_containerHeight" }] : /* istanbul ignore next */ []));
95
+ _isEmpty = computed(() => this.items().length === 0, /* @ts-ignore */
96
+ ...(ngDevMode ? [{ debugName: "_isEmpty" }] : /* istanbul ignore next */ []));
84
97
  _trackBy = (index, item) => this.trackBy()(index, item);
85
98
  _itemTemplateOrDefault(fallback) {
86
99
  return this.itemTemplate ?? fallback;
@@ -91,8 +104,8 @@ class NeuVirtualListComponent {
91
104
  _defaultItemLabel(item) {
92
105
  return String(item);
93
106
  }
94
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: NeuVirtualListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
95
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: NeuVirtualListComponent, isStandalone: true, selector: "neu-virtual-list", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, itemSize: { classPropertyName: "itemSize", publicName: "itemSize", isSignal: true, isRequired: false, transformFunction: null }, visibleRows: { classPropertyName: "visibleRows", publicName: "visibleRows", isSignal: true, isRequired: false, transformFunction: null }, emptyLabel: { classPropertyName: "emptyLabel", publicName: "emptyLabel", isSignal: true, isRequired: false, transformFunction: null }, trackBy: { classPropertyName: "trackBy", publicName: "trackBy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { itemClick: "itemClick" }, host: { properties: { "style.height": "_containerHeight()" }, classAttribute: "neu-virtual-list" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: TemplateRef, descendants: true }], viewQueries: [{ propertyName: "_viewport", first: true, predicate: CdkVirtualScrollViewport, descendants: true }], ngImport: i0, template: `
107
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: NeuVirtualListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
108
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.4", type: NeuVirtualListComponent, isStandalone: true, selector: "neu-virtual-list", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, itemSize: { classPropertyName: "itemSize", publicName: "itemSize", isSignal: true, isRequired: false, transformFunction: null }, visibleRows: { classPropertyName: "visibleRows", publicName: "visibleRows", isSignal: true, isRequired: false, transformFunction: null }, emptyLabel: { classPropertyName: "emptyLabel", publicName: "emptyLabel", isSignal: true, isRequired: false, transformFunction: null }, trackBy: { classPropertyName: "trackBy", publicName: "trackBy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { itemClick: "itemClick" }, host: { properties: { "style.height": "_containerHeight()" }, classAttribute: "neu-virtual-list" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: TemplateRef, descendants: true }], viewQueries: [{ propertyName: "_viewport", first: true, predicate: CdkVirtualScrollViewport, descendants: true }], ngImport: i0, template: `
96
109
  <cdk-virtual-scroll-viewport
97
110
  class="neu-virtual-list__viewport"
98
111
  [itemSize]="itemSize()"
@@ -114,7 +127,7 @@ class NeuVirtualListComponent {
114
127
  }
115
128
  `, isInline: true, styles: [".neu-virtual-list{display:block;overflow:hidden}.neu-virtual-list__viewport{width:100%;overflow-y:auto}.neu-virtual-list__item-default{display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--neu-border);font-size:.875rem;color:var(--neu-text)}.neu-virtual-list__empty{display:flex;align-items:center;justify-content:center;padding:32px;color:var(--neu-text-muted);font-size:.875rem}\n"], dependencies: [{ kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i1.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i1.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i1.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: NeuVirtualListRowComponent, selector: "neu-virtual-list-row", inputs: ["item", "index", "itemSize", "label", "template"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
116
129
  }
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: NeuVirtualListComponent, decorators: [{
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.4", ngImport: i0, type: NeuVirtualListComponent, decorators: [{
118
131
  type: Component,
119
132
  args: [{ selector: 'neu-virtual-list', imports: [ScrollingModule, NeuVirtualListRowComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
120
133
  class: 'neu-virtual-list',
@@ -1 +1 @@
1
- {"version":3,"file":"neural-ui-core-virtual-list.mjs","sources":["../../../../projects/ui-core/virtual-list/neu-virtual-list.component.ts","../../../../projects/ui-core/virtual-list/neural-ui-core-virtual-list.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n afterNextRender,\n computed,\n input,\n output,\n} from '@angular/core';\nimport { CdkVirtualScrollViewport, ScrollingModule } from '@angular/cdk/scrolling';\nimport { NgTemplateOutlet } from '@angular/common';\n\n@Component({\n selector: 'neu-virtual-list-row',\n standalone: true,\n imports: [NgTemplateOutlet],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n @if (template(); as projectedTemplate) {\n <ng-container [ngTemplateOutlet]=\"projectedTemplate\" [ngTemplateOutletContext]=\"context()\" />\n } @else {\n <div class=\"neu-virtual-list__item-default\" [style.height.px]=\"itemSize()\">\n {{ label() }}\n </div>\n }\n `,\n})\nexport class NeuVirtualListRowComponent {\n readonly item = input.required<unknown>();\n readonly index = input.required<number>();\n readonly itemSize = input.required<number>();\n readonly label = input.required<string>();\n readonly template = input<TemplateRef<{ $implicit: unknown; index: number }> | null>(null);\n\n readonly context = computed(() => ({ $implicit: this.item(), index: this.index() }));\n}\n\n/**\n * NeuralUI VirtualList\n *\n * Wrapper sobre CDK VirtualScrollViewport para listas de miles de ítems.\n * Proyecta contenido mediante `ng-template` con let-item.\n *\n * Uso:\n * <neu-virtual-list [items]=\"bigArray\" [itemSize]=\"40\">\n * <ng-template neuVirtualItem let-item>\n * <div class=\"my-row\">{{ item.name }}</div>\n * </ng-template>\n * </neu-virtual-list>\n */\n@Component({\n selector: 'neu-virtual-list',\n imports: [ScrollingModule, NeuVirtualListRowComponent],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'neu-virtual-list',\n '[style.height]': '_containerHeight()',\n },\n template: `\n <cdk-virtual-scroll-viewport\n class=\"neu-virtual-list__viewport\"\n [itemSize]=\"itemSize()\"\n [style.height]=\"_containerHeight()\"\n tabindex=\"0\"\n >\n <ng-container *cdkVirtualFor=\"let item of items(); let index = index; trackBy: _trackBy\">\n <neu-virtual-list-row\n [item]=\"item\"\n [index]=\"index\"\n [itemSize]=\"itemSize()\"\n [label]=\"_defaultItemLabel(item)\"\n [template]=\"itemTemplate\"\n />\n </ng-container>\n </cdk-virtual-scroll-viewport>\n @if (_isEmpty()) {\n <div class=\"neu-virtual-list__empty\" role=\"status\">{{ emptyLabel() }}</div>\n }\n `,\n styleUrl: './neu-virtual-list.component.scss',\n})\nexport class NeuVirtualListComponent<T = unknown> implements AfterViewInit {\n /** Referencia al viewport CDK — para forzar remeasure tras render / CDK viewport ref — to force remeasure after render */\n @ViewChild(CdkVirtualScrollViewport) private readonly _viewport?: CdkVirtualScrollViewport;\n\n constructor() {\n // Fuerza checkViewportSize() tras el primer paint completo (necesario en modo zoneless)\n // Forces checkViewportSize() after the first full paint (needed in zoneless mode)\n afterNextRender(() => this._viewport?.checkViewportSize());\n }\n\n ngAfterViewInit(): void {\n // Segundo intento de medición sincrona por si afterNextRender no cubre todos los casos\n // Second synchronous measurement pass as a fallback\n this._viewport?.checkViewportSize();\n }\n /** Array de ítems / Item array */\n readonly items = input<T[]>([]);\n\n /** Altura de cada fila en px / Row height in px */\n readonly itemSize = input<number>(48);\n\n /** Número de filas visibles / Visible row count (sets container height) */\n readonly visibleRows = input<number>(10);\n\n /** Texto cuando la lista está vacía / Empty state text */\n readonly emptyLabel = input<string>('Sin resultados');\n\n /** Función de tracking / Tracking function */\n readonly trackBy = input<(index: number, item: T) => unknown>((i) => i);\n\n /** Emitido al hacer click en un ítem / Emitted on item click */\n readonly itemClick = output<{ item: T; index: number }>();\n\n @ContentChild(TemplateRef) itemTemplate: TemplateRef<{ $implicit: T; index: number }> | null =\n null;\n\n readonly _containerHeight = computed(() => `${this.itemSize() * this.visibleRows()}px`);\n readonly _isEmpty = computed(() => this.items().length === 0);\n\n _trackBy = (index: number, item: T) => this.trackBy()(index, item);\n\n protected _itemTemplateOrDefault(\n fallback: TemplateRef<{ $implicit: T; index: number }>,\n ): TemplateRef<{ $implicit: T; index: number }> {\n return this.itemTemplate ?? fallback;\n }\n\n protected _itemContext(item: T, index: number): { $implicit: T; index: number } {\n return { $implicit: item, index };\n }\n\n protected _defaultItemLabel(item: T): string {\n return String(item);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"neural-ui-core-virtual-list.mjs","sources":["../../../../projects/ui-core/virtual-list/neu-virtual-list.component.ts","../../../../projects/ui-core/virtual-list/neural-ui-core-virtual-list.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n TemplateRef,\n ViewChild,\n ViewEncapsulation,\n afterNextRender,\n computed,\n input,\n output,\n} from '@angular/core';\nimport { CdkVirtualScrollViewport, ScrollingModule } from '@angular/cdk/scrolling';\nimport { NgTemplateOutlet } from '@angular/common';\n\n@Component({\n selector: 'neu-virtual-list-row',\n standalone: true,\n imports: [NgTemplateOutlet],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n @if (template(); as projectedTemplate) {\n <ng-container [ngTemplateOutlet]=\"projectedTemplate\" [ngTemplateOutletContext]=\"context()\" />\n } @else {\n <div class=\"neu-virtual-list__item-default\" [style.height.px]=\"itemSize()\">\n {{ label() }}\n </div>\n }\n `,\n})\nexport class NeuVirtualListRowComponent {\n readonly item = input.required<unknown>();\n readonly index = input.required<number>();\n readonly itemSize = input.required<number>();\n readonly label = input.required<string>();\n readonly template = input<TemplateRef<{ $implicit: unknown; index: number }> | null>(null);\n\n readonly context = computed(() => ({ $implicit: this.item(), index: this.index() }));\n}\n\n/**\n * NeuralUI VirtualList\n *\n * Wrapper sobre CDK VirtualScrollViewport para listas de miles de ítems.\n * Proyecta contenido mediante `ng-template` con let-item.\n *\n * Uso:\n * <neu-virtual-list [items]=\"bigArray\" [itemSize]=\"40\">\n * <ng-template neuVirtualItem let-item>\n * <div class=\"my-row\">{{ item.name }}</div>\n * </ng-template>\n * </neu-virtual-list>\n */\n@Component({\n selector: 'neu-virtual-list',\n imports: [ScrollingModule, NeuVirtualListRowComponent],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'neu-virtual-list',\n '[style.height]': '_containerHeight()',\n },\n template: `\n <cdk-virtual-scroll-viewport\n class=\"neu-virtual-list__viewport\"\n [itemSize]=\"itemSize()\"\n [style.height]=\"_containerHeight()\"\n tabindex=\"0\"\n >\n <ng-container *cdkVirtualFor=\"let item of items(); let index = index; trackBy: _trackBy\">\n <neu-virtual-list-row\n [item]=\"item\"\n [index]=\"index\"\n [itemSize]=\"itemSize()\"\n [label]=\"_defaultItemLabel(item)\"\n [template]=\"itemTemplate\"\n />\n </ng-container>\n </cdk-virtual-scroll-viewport>\n @if (_isEmpty()) {\n <div class=\"neu-virtual-list__empty\" role=\"status\">{{ emptyLabel() }}</div>\n }\n `,\n styleUrl: './neu-virtual-list.component.scss',\n})\nexport class NeuVirtualListComponent<T = unknown> implements AfterViewInit {\n /** Referencia al viewport CDK — para forzar remeasure tras render / CDK viewport ref — to force remeasure after render */\n @ViewChild(CdkVirtualScrollViewport) private readonly _viewport?: CdkVirtualScrollViewport;\n\n constructor() {\n // Fuerza checkViewportSize() tras el primer paint completo (necesario en modo zoneless)\n // Forces checkViewportSize() after the first full paint (needed in zoneless mode)\n afterNextRender(() => this._viewport?.checkViewportSize());\n }\n\n ngAfterViewInit(): void {\n // Segundo intento de medición sincrona por si afterNextRender no cubre todos los casos\n // Second synchronous measurement pass as a fallback\n this._viewport?.checkViewportSize();\n }\n /** Array de ítems / Item array */\n readonly items = input<T[]>([]);\n\n /** Altura de cada fila en px / Row height in px */\n readonly itemSize = input<number>(48);\n\n /** Número de filas visibles / Visible row count (sets container height) */\n readonly visibleRows = input<number>(10);\n\n /** Texto cuando la lista está vacía / Empty state text */\n readonly emptyLabel = input<string>('Sin resultados');\n\n /** Función de tracking / Tracking function */\n readonly trackBy = input<(index: number, item: T) => unknown>((i) => i);\n\n /** Emitido al hacer click en un ítem / Emitted on item click */\n readonly itemClick = output<{ item: T; index: number }>();\n\n @ContentChild(TemplateRef) itemTemplate: TemplateRef<{ $implicit: T; index: number }> | null =\n null;\n\n readonly _containerHeight = computed(() => `${this.itemSize() * this.visibleRows()}px`);\n readonly _isEmpty = computed(() => this.items().length === 0);\n\n _trackBy = (index: number, item: T) => this.trackBy()(index, item);\n\n protected _itemTemplateOrDefault(\n fallback: TemplateRef<{ $implicit: T; index: number }>,\n ): TemplateRef<{ $implicit: T; index: number }> {\n return this.itemTemplate ?? fallback;\n }\n\n protected _itemContext(item: T, index: number): { $implicit: T; index: number } {\n return { $implicit: item, index };\n }\n\n protected _defaultItemLabel(item: T): string {\n return String(item);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neural-ui/core",
3
- "version": "1.6.0",
3
+ "version": "1.6.1",
4
4
  "description": "Modern Angular UI component library built with signals, standalone components, and OnPush change detection.",
5
5
  "author": "PedroMorenoTrujillo",
6
6
  "keywords": [
@@ -28,6 +28,7 @@ interface NeuNotificationOptions extends Omit<NeuNotification, 'id' | 'timestamp
28
28
  declare class NeuNotificationService {
29
29
  readonly notifications: i0.WritableSignal<NeuNotification[]>;
30
30
  readonly unreadCount: i0.Signal<number>;
31
+ private readonly timers;
31
32
  /** Agrega una notificación / Adds a notification */
32
33
  push(opts: Partial<NeuNotificationOptions> & Pick<NeuNotificationOptions, 'message'>): string;
33
34
  /** Elimina una notificación / Removes a notification */
@@ -36,6 +37,7 @@ declare class NeuNotificationService {
36
37
  markAllRead(): void;
37
38
  /** Elimina todas / Clears all */
38
39
  clearAll(): void;
40
+ private clearTimer;
39
41
  static ɵfac: i0.ɵɵFactoryDeclaration<NeuNotificationService, never>;
40
42
  static ɵprov: i0.ɵɵInjectableDeclaration<NeuNotificationService>;
41
43
  }
@@ -33,6 +33,7 @@ declare class NeuToastService {
33
33
  readonly toasts: i0.WritableSignal<NeuToastItem[]>;
34
34
  /** Posición del contenedor de toasts / Toast container position */
35
35
  readonly position: i0.WritableSignal<NeuToastPosition>;
36
+ private readonly timers;
36
37
  setPosition(position: NeuToastPosition): void;
37
38
  show(options: NeuToastOptions): string;
38
39
  success(message: string, opts?: Partial<NeuToastOptions>): string;
@@ -41,6 +42,7 @@ declare class NeuToastService {
41
42
  warning(message: string, opts?: Partial<NeuToastOptions>): string;
42
43
  dismiss(id: string): void;
43
44
  clear(): void;
45
+ private clearTimer;
44
46
  static ɵfac: i0.ɵɵFactoryDeclaration<NeuToastService, never>;
45
47
  static ɵprov: i0.ɵɵInjectableDeclaration<NeuToastService>;
46
48
  }