@luzmo/ngx-lucero 2.4.2 → 2.5.0

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.
@@ -0,0 +1,242 @@
1
+ import { ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, Input, output, Renderer2 } from '@angular/core';
2
+ import '@luzmo/lucero/table';
3
+ import * as i0 from "@angular/core";
4
+ const _c0 = ["*"];
5
+ /**
6
+ * Angular wrapper component for <luzmo-table>
7
+ *
8
+ * @slot (default) - `luzmo-table-head` and `luzmo-table-body`.
9
+ */
10
+ export class LuzmoTable {
11
+ elementRef = inject(ElementRef);
12
+ renderer = inject(Renderer2);
13
+ destroyRef = inject(DestroyRef);
14
+ host = this.elementRef.nativeElement;
15
+ listenerCleanup = [];
16
+ /** The underlying custom element instance. Use to call imperative methods. */
17
+ get nativeElement() {
18
+ return this.host;
19
+ }
20
+ role;
21
+ /** Row density. Unset is regular. */
22
+ density;
23
+ /** Use the accent color for selected rows and checkboxes. */
24
+ emphasized;
25
+ /** Remove the outer border and background. */
26
+ quiet;
27
+ /** Scroll the body inside the table's block size, keeping the head in view. */
28
+ scroller;
29
+ /** Row selection mode. Unset disables selection. */
30
+ selects;
31
+ /** Selected row values. */
32
+ selected;
33
+ /** Accessible name of the select-all checkbox. Overrides `labels.selectAll`. */
34
+ selectAllLabel;
35
+ /** Row records. Setting an array switches the table to data mode. */
36
+ items;
37
+ /** Stable, unique selection value of a data-mode row. Defaults to the item index. */
38
+ itemValue;
39
+ /** Accessible name of a data-mode row checkbox. Defaults to the first column's text, then `labels.selectRow`. */
40
+ itemLabel;
41
+ /** Cell content of a data-mode row. Return `luzmo-table-cell` elements. */
42
+ renderItem;
43
+ /** Expanded row values. Setting `renderDetails` enables data-mode disclosure. */
44
+ expanded;
45
+ /** Details content of a data-mode row. Its presence enables row disclosure for every non-information row. */
46
+ renderDetails;
47
+ /** Resized column widths, in pixels, keyed by column id. A resize updates this map without changing `columns`. */
48
+ columnWidths;
49
+ /** Data-mode columns, used when no `luzmo-table-head` is slotted. */
50
+ columns;
51
+ /** Mount only the visible rows. Data mode only; needs a bounded block size. */
52
+ virtualized;
53
+ /** Translatable copy. */
54
+ labels;
55
+ size;
56
+ /** `selected` changed. Cancel it to keep the previous selection. */
57
+ changeEvent = output();
58
+ /** A sortable header was activated. `detail` is `{ sortKey, sortDirection }`. Cancel it in data mode to skip the client sort. */
59
+ luzmoTableSorted = output({ alias: 'luzmo-table-sorted' });
60
+ /** A row's details were expanded or collapsed. `detail` is `{ value, expanded }`. Cancel it to keep the previous state. */
61
+ luzmoTableRowToggle = output({ alias: 'luzmo-table-row-toggle' });
62
+ /** A column resize committed. `detail` is `{ columnId, width, columnWidths }`. */
63
+ luzmoColumnResized = output({ alias: 'luzmo-column-resized' });
64
+ /** The mounted window of a virtualized table changed. `detail` is `{ first, last }`. */
65
+ luzmoRangeChanged = output({ alias: 'luzmo-range-changed' });
66
+ constructor() {
67
+ this.bindEvents();
68
+ this.destroyRef.onDestroy(() => {
69
+ for (const cleanup of this.listenerCleanup) {
70
+ cleanup();
71
+ }
72
+ });
73
+ }
74
+ ngOnChanges(changes) {
75
+ for (const key of Object.keys(changes)) {
76
+ switch (key) {
77
+ case 'role':
78
+ this.setHostProperty('role', changes['role'].currentValue);
79
+ break;
80
+ case 'density':
81
+ this.setHostProperty('density', changes['density'].currentValue);
82
+ break;
83
+ case 'emphasized':
84
+ this.setHostProperty('emphasized', changes['emphasized'].currentValue);
85
+ break;
86
+ case 'quiet':
87
+ this.setHostProperty('quiet', changes['quiet'].currentValue);
88
+ break;
89
+ case 'scroller':
90
+ this.setHostProperty('scroller', changes['scroller'].currentValue);
91
+ break;
92
+ case 'selects':
93
+ this.setHostProperty('selects', changes['selects'].currentValue);
94
+ break;
95
+ case 'selected':
96
+ this.setHostProperty('selected', changes['selected'].currentValue);
97
+ break;
98
+ case 'selectAllLabel':
99
+ this.setHostProperty('selectAllLabel', changes['selectAllLabel'].currentValue);
100
+ break;
101
+ case 'items':
102
+ this.setHostProperty('items', changes['items'].currentValue);
103
+ break;
104
+ case 'itemValue':
105
+ this.setHostProperty('itemValue', changes['itemValue'].currentValue);
106
+ break;
107
+ case 'itemLabel':
108
+ this.setHostProperty('itemLabel', changes['itemLabel'].currentValue);
109
+ break;
110
+ case 'renderItem':
111
+ this.setHostProperty('renderItem', changes['renderItem'].currentValue);
112
+ break;
113
+ case 'expanded':
114
+ this.setHostProperty('expanded', changes['expanded'].currentValue);
115
+ break;
116
+ case 'renderDetails':
117
+ this.setHostProperty('renderDetails', changes['renderDetails'].currentValue);
118
+ break;
119
+ case 'columnWidths':
120
+ this.setHostProperty('columnWidths', changes['columnWidths'].currentValue);
121
+ break;
122
+ case 'columns':
123
+ this.setHostProperty('columns', changes['columns'].currentValue);
124
+ break;
125
+ case 'virtualized':
126
+ this.setHostProperty('virtualized', changes['virtualized'].currentValue);
127
+ break;
128
+ case 'labels':
129
+ this.setHostProperty('labels', changes['labels'].currentValue);
130
+ break;
131
+ case 'size':
132
+ this.setHostProperty('size', changes['size'].currentValue);
133
+ break;
134
+ default:
135
+ break;
136
+ }
137
+ }
138
+ }
139
+ /**
140
+ * Forward a wrapper @Input to the underlying host element via Renderer2 so
141
+ * the wrapper stays compatible with non-DOM Angular platforms (SSR, tests).
142
+ * Unlike a "skip undefined" guard, this lets consumers reset values back to
143
+ * undefined / null by clearing their bindings.
144
+ */
145
+ setHostProperty(key, value) {
146
+ this.renderer.setProperty(this.host, key, value);
147
+ }
148
+ bindEvents() {
149
+ this.listenerCleanup.push(this.renderer.listen(this.host, 'change', (event) => {
150
+ this.changeEvent.emit(event);
151
+ }));
152
+ this.listenerCleanup.push(this.renderer.listen(this.host, 'luzmo-table-sorted', (event) => {
153
+ this.luzmoTableSorted.emit(event);
154
+ }));
155
+ this.listenerCleanup.push(this.renderer.listen(this.host, 'luzmo-table-row-toggle', (event) => {
156
+ this.luzmoTableRowToggle.emit(event);
157
+ }));
158
+ this.listenerCleanup.push(this.renderer.listen(this.host, 'luzmo-column-resized', (event) => {
159
+ this.luzmoColumnResized.emit(event);
160
+ }));
161
+ this.listenerCleanup.push(this.renderer.listen(this.host, 'luzmo-range-changed', (event) => {
162
+ this.luzmoRangeChanged.emit(event);
163
+ }));
164
+ }
165
+ /** Moves focus to the grid's current cell. */
166
+ focus(options) {
167
+ return this.host.focus(options);
168
+ }
169
+ static ɵfac = function LuzmoTable_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoTable)(); };
170
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoTable, selectors: [["luzmo-table"]], inputs: { role: "role", density: "density", emphasized: "emphasized", quiet: "quiet", scroller: "scroller", selects: "selects", selected: "selected", selectAllLabel: "selectAllLabel", items: "items", itemValue: "itemValue", itemLabel: "itemLabel", renderItem: "renderItem", expanded: "expanded", renderDetails: "renderDetails", columnWidths: "columnWidths", columns: "columns", virtualized: "virtualized", labels: "labels", size: "size" }, outputs: { changeEvent: "changeEvent", luzmoTableSorted: "luzmo-table-sorted", luzmoTableRowToggle: "luzmo-table-row-toggle", luzmoColumnResized: "luzmo-column-resized", luzmoRangeChanged: "luzmo-range-changed" }, exportAs: ["luzmoTable"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoTable_Template(rf, ctx) { if (rf & 1) {
171
+ i0.ɵɵprojectionDef();
172
+ i0.ɵɵprojection(0);
173
+ } }, encapsulation: 2 });
174
+ }
175
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(LuzmoTable, [{
176
+ type: Component,
177
+ args: [{
178
+ selector: 'luzmo-table',
179
+ exportAs: 'luzmoTable',
180
+ standalone: true,
181
+ changeDetection: ChangeDetectionStrategy.OnPush,
182
+ template: '<ng-content />'
183
+ }]
184
+ }], () => [], { role: [{
185
+ type: Input,
186
+ args: [{ alias: 'role' }]
187
+ }], density: [{
188
+ type: Input,
189
+ args: [{ alias: 'density' }]
190
+ }], emphasized: [{
191
+ type: Input,
192
+ args: [{ alias: 'emphasized' }]
193
+ }], quiet: [{
194
+ type: Input,
195
+ args: [{ alias: 'quiet' }]
196
+ }], scroller: [{
197
+ type: Input,
198
+ args: [{ alias: 'scroller' }]
199
+ }], selects: [{
200
+ type: Input,
201
+ args: [{ alias: 'selects' }]
202
+ }], selected: [{
203
+ type: Input,
204
+ args: [{ alias: 'selected' }]
205
+ }], selectAllLabel: [{
206
+ type: Input,
207
+ args: [{ alias: 'selectAllLabel' }]
208
+ }], items: [{
209
+ type: Input,
210
+ args: [{ alias: 'items' }]
211
+ }], itemValue: [{
212
+ type: Input,
213
+ args: [{ alias: 'itemValue' }]
214
+ }], itemLabel: [{
215
+ type: Input,
216
+ args: [{ alias: 'itemLabel' }]
217
+ }], renderItem: [{
218
+ type: Input,
219
+ args: [{ alias: 'renderItem' }]
220
+ }], expanded: [{
221
+ type: Input,
222
+ args: [{ alias: 'expanded' }]
223
+ }], renderDetails: [{
224
+ type: Input,
225
+ args: [{ alias: 'renderDetails' }]
226
+ }], columnWidths: [{
227
+ type: Input,
228
+ args: [{ alias: 'columnWidths' }]
229
+ }], columns: [{
230
+ type: Input,
231
+ args: [{ alias: 'columns' }]
232
+ }], virtualized: [{
233
+ type: Input,
234
+ args: [{ alias: 'virtualized' }]
235
+ }], labels: [{
236
+ type: Input,
237
+ args: [{ alias: 'labels' }]
238
+ }], size: [{
239
+ type: Input,
240
+ args: [{ alias: 'size' }]
241
+ }], changeEvent: [{ type: i0.Output, args: ["changeEvent"] }], luzmoTableSorted: [{ type: i0.Output, args: ["luzmo-table-sorted"] }], luzmoTableRowToggle: [{ type: i0.Output, args: ["luzmo-table-row-toggle"] }], luzmoColumnResized: [{ type: i0.Output, args: ["luzmo-column-resized"] }], luzmoRangeChanged: [{ type: i0.Output, args: ["luzmo-range-changed"] }] }); })();
242
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LuzmoTable, { className: "LuzmoTable", filePath: "components/table.ts", lineNumber: 17 }); })();
package/esm/index.d.ts CHANGED
@@ -66,6 +66,15 @@ import { LuzmoSwatchGroup } from './components/swatch-group.js';
66
66
  import { LuzmoSwitch } from './components/switch.js';
67
67
  import { LuzmoTab } from './components/tab.js';
68
68
  import { LuzmoTabPanel } from './components/tab-panel.js';
69
+ import { LuzmoTable } from './components/table.js';
70
+ import { LuzmoTableBody } from './components/table-body.js';
71
+ import { LuzmoTableCell } from './components/table-cell.js';
72
+ import { LuzmoTableCheckboxCell } from './components/table-checkbox-cell.js';
73
+ import { LuzmoTableDisclosureCell } from './components/table-disclosure-cell.js';
74
+ import { LuzmoTableHead } from './components/table-head.js';
75
+ import { LuzmoTableHeadCell } from './components/table-head-cell.js';
76
+ import { LuzmoTableRow } from './components/table-row.js';
77
+ import { LuzmoTableRowDetails } from './components/table-row-details.js';
69
78
  import { LuzmoTabs } from './components/tabs.js';
70
79
  import { LuzmoTabsOverflow } from './components/tabs-overflow.js';
71
80
  import { LuzmoTag } from './components/tag.js';
@@ -143,6 +152,15 @@ export { LuzmoSwatchGroup, type LuzmoSwatchGroupElement } from './components/swa
143
152
  export { LuzmoSwitch, type LuzmoSwitchElement } from './components/switch.js';
144
153
  export { LuzmoTab, type LuzmoTabElement } from './components/tab.js';
145
154
  export { LuzmoTabPanel, type LuzmoTabPanelElement } from './components/tab-panel.js';
155
+ export { LuzmoTable, type LuzmoTableElement } from './components/table.js';
156
+ export { LuzmoTableBody, type LuzmoTableBodyElement } from './components/table-body.js';
157
+ export { LuzmoTableCell, type LuzmoTableCellElement } from './components/table-cell.js';
158
+ export { LuzmoTableCheckboxCell, type LuzmoTableCheckboxCellElement } from './components/table-checkbox-cell.js';
159
+ export { LuzmoTableDisclosureCell, type LuzmoTableDisclosureCellElement } from './components/table-disclosure-cell.js';
160
+ export { LuzmoTableHead, type LuzmoTableHeadElement } from './components/table-head.js';
161
+ export { LuzmoTableHeadCell, type LuzmoTableHeadCellElement } from './components/table-head-cell.js';
162
+ export { LuzmoTableRow, type LuzmoTableRowElement } from './components/table-row.js';
163
+ export { LuzmoTableRowDetails, type LuzmoTableRowDetailsElement } from './components/table-row-details.js';
146
164
  export { LuzmoTabs, type LuzmoTabsElement } from './components/tabs.js';
147
165
  export { LuzmoTabsOverflow, type LuzmoTabsOverflowElement } from './components/tabs-overflow.js';
148
166
  export { LuzmoTag, type LuzmoTagElement } from './components/tag.js';
@@ -152,6 +170,6 @@ export { LuzmoToast, type LuzmoToastElement } from './components/toast.js';
152
170
  export { LuzmoTooltip, type LuzmoTooltipElement } from './components/tooltip.js';
153
171
  export { LuzmoTopNav, type LuzmoTopNavElement } from './components/top-nav.js';
154
172
  export { LuzmoTopNavItem, type LuzmoTopNavItemElement } from './components/top-nav-item.js';
155
- export declare const LUZMO_ANGULAR_COMPONENTS: readonly [typeof LuzmoAccordion, typeof LuzmoAccordionItem, typeof LuzmoActionBar, typeof LuzmoActionButton, typeof LuzmoActionGroup, typeof LuzmoActionMenu, typeof LuzmoAvatar, typeof LuzmoBadge, typeof LuzmoButton, typeof LuzmoButtonGroup, typeof LuzmoCalendar, typeof LuzmoChatMessage, typeof LuzmoChatMessageGroup, typeof LuzmoCheckbox, typeof LuzmoClearButton, typeof LuzmoCloseButton, typeof LuzmoColorArea, typeof LuzmoColorField, typeof LuzmoColorHandle, typeof LuzmoColorLoupe, typeof LuzmoColorMenu, typeof LuzmoColorPalette, typeof LuzmoColorPaletteGroup, typeof LuzmoColorPicker, typeof LuzmoColorSlider, typeof LuzmoDateRangePicker, typeof LuzmoDateTimePicker, typeof LuzmoDivider, typeof LuzmoFieldGroup, typeof LuzmoFieldLabel, typeof LuzmoHelpText, typeof LuzmoIcon, typeof LuzmoInfieldButton, typeof LuzmoLabel, typeof LuzmoMenu, typeof LuzmoMenuDivider, typeof LuzmoMenuGroup, typeof LuzmoMenuItem, typeof LuzmoMultiLanguageField, typeof LuzmoNotice, typeof LuzmoNumberField, typeof LuzmoOption, typeof LuzmoOptions, typeof LuzmoOptionsDivider, typeof LuzmoOverlay, typeof LuzmoOverlayTrigger, typeof LuzmoPicker, typeof LuzmoPickerButton, typeof LuzmoPopover, typeof LuzmoProgressBar, typeof LuzmoProgressCircle, typeof LuzmoProgressSteps, typeof LuzmoPromptBox, typeof LuzmoQuestionBox, typeof LuzmoRadio, typeof LuzmoRadioGroup, typeof LuzmoSearch, typeof LuzmoSelect, typeof LuzmoSkeletonLoader, typeof LuzmoSlider, typeof LuzmoSliderHandle, typeof LuzmoSplitView, typeof LuzmoStatusLight, typeof LuzmoSwatch, typeof LuzmoSwatchGroup, typeof LuzmoSwitch, typeof LuzmoTab, typeof LuzmoTabPanel, typeof LuzmoTabs, typeof LuzmoTabsOverflow, typeof LuzmoTag, typeof LuzmoTags, typeof LuzmoTextField, typeof LuzmoToast, typeof LuzmoTooltip, typeof LuzmoTopNav, typeof LuzmoTopNavItem];
156
- export declare const LUZMO_ANGULAR_COMPONENT_NAMES: readonly ["LuzmoAccordion", "LuzmoAccordionItem", "LuzmoActionBar", "LuzmoActionButton", "LuzmoActionGroup", "LuzmoActionMenu", "LuzmoAvatar", "LuzmoBadge", "LuzmoButton", "LuzmoButtonGroup", "LuzmoCalendar", "LuzmoChatMessage", "LuzmoChatMessageGroup", "LuzmoCheckbox", "LuzmoClearButton", "LuzmoCloseButton", "LuzmoColorArea", "LuzmoColorField", "LuzmoColorHandle", "LuzmoColorLoupe", "LuzmoColorMenu", "LuzmoColorPalette", "LuzmoColorPaletteGroup", "LuzmoColorPicker", "LuzmoColorSlider", "LuzmoDateRangePicker", "LuzmoDateTimePicker", "LuzmoDivider", "LuzmoFieldGroup", "LuzmoFieldLabel", "LuzmoHelpText", "LuzmoIcon", "LuzmoInfieldButton", "LuzmoLabel", "LuzmoMenu", "LuzmoMenuDivider", "LuzmoMenuGroup", "LuzmoMenuItem", "LuzmoMultiLanguageField", "LuzmoNotice", "LuzmoNumberField", "LuzmoOption", "LuzmoOptions", "LuzmoOptionsDivider", "LuzmoOverlay", "LuzmoOverlayTrigger", "LuzmoPicker", "LuzmoPickerButton", "LuzmoPopover", "LuzmoProgressBar", "LuzmoProgressCircle", "LuzmoProgressSteps", "LuzmoPromptBox", "LuzmoQuestionBox", "LuzmoRadio", "LuzmoRadioGroup", "LuzmoSearch", "LuzmoSelect", "LuzmoSkeletonLoader", "LuzmoSlider", "LuzmoSliderHandle", "LuzmoSplitView", "LuzmoStatusLight", "LuzmoSwatch", "LuzmoSwatchGroup", "LuzmoSwitch", "LuzmoTab", "LuzmoTabPanel", "LuzmoTabs", "LuzmoTabsOverflow", "LuzmoTag", "LuzmoTags", "LuzmoTextField", "LuzmoToast", "LuzmoTooltip", "LuzmoTopNav", "LuzmoTopNavItem"];
173
+ export declare const LUZMO_ANGULAR_COMPONENTS: readonly [typeof LuzmoAccordion, typeof LuzmoAccordionItem, typeof LuzmoActionBar, typeof LuzmoActionButton, typeof LuzmoActionGroup, typeof LuzmoActionMenu, typeof LuzmoAvatar, typeof LuzmoBadge, typeof LuzmoButton, typeof LuzmoButtonGroup, typeof LuzmoCalendar, typeof LuzmoChatMessage, typeof LuzmoChatMessageGroup, typeof LuzmoCheckbox, typeof LuzmoClearButton, typeof LuzmoCloseButton, typeof LuzmoColorArea, typeof LuzmoColorField, typeof LuzmoColorHandle, typeof LuzmoColorLoupe, typeof LuzmoColorMenu, typeof LuzmoColorPalette, typeof LuzmoColorPaletteGroup, typeof LuzmoColorPicker, typeof LuzmoColorSlider, typeof LuzmoDateRangePicker, typeof LuzmoDateTimePicker, typeof LuzmoDivider, typeof LuzmoFieldGroup, typeof LuzmoFieldLabel, typeof LuzmoHelpText, typeof LuzmoIcon, typeof LuzmoInfieldButton, typeof LuzmoLabel, typeof LuzmoMenu, typeof LuzmoMenuDivider, typeof LuzmoMenuGroup, typeof LuzmoMenuItem, typeof LuzmoMultiLanguageField, typeof LuzmoNotice, typeof LuzmoNumberField, typeof LuzmoOption, typeof LuzmoOptions, typeof LuzmoOptionsDivider, typeof LuzmoOverlay, typeof LuzmoOverlayTrigger, typeof LuzmoPicker, typeof LuzmoPickerButton, typeof LuzmoPopover, typeof LuzmoProgressBar, typeof LuzmoProgressCircle, typeof LuzmoProgressSteps, typeof LuzmoPromptBox, typeof LuzmoQuestionBox, typeof LuzmoRadio, typeof LuzmoRadioGroup, typeof LuzmoSearch, typeof LuzmoSelect, typeof LuzmoSkeletonLoader, typeof LuzmoSlider, typeof LuzmoSliderHandle, typeof LuzmoSplitView, typeof LuzmoStatusLight, typeof LuzmoSwatch, typeof LuzmoSwatchGroup, typeof LuzmoSwitch, typeof LuzmoTab, typeof LuzmoTabPanel, typeof LuzmoTable, typeof LuzmoTableBody, typeof LuzmoTableCell, typeof LuzmoTableCheckboxCell, typeof LuzmoTableDisclosureCell, typeof LuzmoTableHead, typeof LuzmoTableHeadCell, typeof LuzmoTableRow, typeof LuzmoTableRowDetails, typeof LuzmoTabs, typeof LuzmoTabsOverflow, typeof LuzmoTag, typeof LuzmoTags, typeof LuzmoTextField, typeof LuzmoToast, typeof LuzmoTooltip, typeof LuzmoTopNav, typeof LuzmoTopNavItem];
174
+ export declare const LUZMO_ANGULAR_COMPONENT_NAMES: readonly ["LuzmoAccordion", "LuzmoAccordionItem", "LuzmoActionBar", "LuzmoActionButton", "LuzmoActionGroup", "LuzmoActionMenu", "LuzmoAvatar", "LuzmoBadge", "LuzmoButton", "LuzmoButtonGroup", "LuzmoCalendar", "LuzmoChatMessage", "LuzmoChatMessageGroup", "LuzmoCheckbox", "LuzmoClearButton", "LuzmoCloseButton", "LuzmoColorArea", "LuzmoColorField", "LuzmoColorHandle", "LuzmoColorLoupe", "LuzmoColorMenu", "LuzmoColorPalette", "LuzmoColorPaletteGroup", "LuzmoColorPicker", "LuzmoColorSlider", "LuzmoDateRangePicker", "LuzmoDateTimePicker", "LuzmoDivider", "LuzmoFieldGroup", "LuzmoFieldLabel", "LuzmoHelpText", "LuzmoIcon", "LuzmoInfieldButton", "LuzmoLabel", "LuzmoMenu", "LuzmoMenuDivider", "LuzmoMenuGroup", "LuzmoMenuItem", "LuzmoMultiLanguageField", "LuzmoNotice", "LuzmoNumberField", "LuzmoOption", "LuzmoOptions", "LuzmoOptionsDivider", "LuzmoOverlay", "LuzmoOverlayTrigger", "LuzmoPicker", "LuzmoPickerButton", "LuzmoPopover", "LuzmoProgressBar", "LuzmoProgressCircle", "LuzmoProgressSteps", "LuzmoPromptBox", "LuzmoQuestionBox", "LuzmoRadio", "LuzmoRadioGroup", "LuzmoSearch", "LuzmoSelect", "LuzmoSkeletonLoader", "LuzmoSlider", "LuzmoSliderHandle", "LuzmoSplitView", "LuzmoStatusLight", "LuzmoSwatch", "LuzmoSwatchGroup", "LuzmoSwitch", "LuzmoTab", "LuzmoTabPanel", "LuzmoTable", "LuzmoTableBody", "LuzmoTableCell", "LuzmoTableCheckboxCell", "LuzmoTableDisclosureCell", "LuzmoTableHead", "LuzmoTableHeadCell", "LuzmoTableRow", "LuzmoTableRowDetails", "LuzmoTabs", "LuzmoTabsOverflow", "LuzmoTag", "LuzmoTags", "LuzmoTextField", "LuzmoToast", "LuzmoTooltip", "LuzmoTopNav", "LuzmoTopNavItem"];
157
175
  export type LuzmoAngularComponentName = (typeof LUZMO_ANGULAR_COMPONENT_NAMES)[number];
package/esm/index.js CHANGED
@@ -67,6 +67,15 @@ import { LuzmoSwatchGroup } from './components/swatch-group.js';
67
67
  import { LuzmoSwitch } from './components/switch.js';
68
68
  import { LuzmoTab } from './components/tab.js';
69
69
  import { LuzmoTabPanel } from './components/tab-panel.js';
70
+ import { LuzmoTable } from './components/table.js';
71
+ import { LuzmoTableBody } from './components/table-body.js';
72
+ import { LuzmoTableCell } from './components/table-cell.js';
73
+ import { LuzmoTableCheckboxCell } from './components/table-checkbox-cell.js';
74
+ import { LuzmoTableDisclosureCell } from './components/table-disclosure-cell.js';
75
+ import { LuzmoTableHead } from './components/table-head.js';
76
+ import { LuzmoTableHeadCell } from './components/table-head-cell.js';
77
+ import { LuzmoTableRow } from './components/table-row.js';
78
+ import { LuzmoTableRowDetails } from './components/table-row-details.js';
70
79
  import { LuzmoTabs } from './components/tabs.js';
71
80
  import { LuzmoTabsOverflow } from './components/tabs-overflow.js';
72
81
  import { LuzmoTag } from './components/tag.js';
@@ -144,6 +153,15 @@ export { LuzmoSwatchGroup } from './components/swatch-group.js';
144
153
  export { LuzmoSwitch } from './components/switch.js';
145
154
  export { LuzmoTab } from './components/tab.js';
146
155
  export { LuzmoTabPanel } from './components/tab-panel.js';
156
+ export { LuzmoTable } from './components/table.js';
157
+ export { LuzmoTableBody } from './components/table-body.js';
158
+ export { LuzmoTableCell } from './components/table-cell.js';
159
+ export { LuzmoTableCheckboxCell } from './components/table-checkbox-cell.js';
160
+ export { LuzmoTableDisclosureCell } from './components/table-disclosure-cell.js';
161
+ export { LuzmoTableHead } from './components/table-head.js';
162
+ export { LuzmoTableHeadCell } from './components/table-head-cell.js';
163
+ export { LuzmoTableRow } from './components/table-row.js';
164
+ export { LuzmoTableRowDetails } from './components/table-row-details.js';
147
165
  export { LuzmoTabs } from './components/tabs.js';
148
166
  export { LuzmoTabsOverflow } from './components/tabs-overflow.js';
149
167
  export { LuzmoTag } from './components/tag.js';
@@ -222,6 +240,15 @@ export const LUZMO_ANGULAR_COMPONENTS = [
222
240
  LuzmoSwitch,
223
241
  LuzmoTab,
224
242
  LuzmoTabPanel,
243
+ LuzmoTable,
244
+ LuzmoTableBody,
245
+ LuzmoTableCell,
246
+ LuzmoTableCheckboxCell,
247
+ LuzmoTableDisclosureCell,
248
+ LuzmoTableHead,
249
+ LuzmoTableHeadCell,
250
+ LuzmoTableRow,
251
+ LuzmoTableRowDetails,
225
252
  LuzmoTabs,
226
253
  LuzmoTabsOverflow,
227
254
  LuzmoTag,
@@ -301,6 +328,15 @@ export const LUZMO_ANGULAR_COMPONENT_NAMES = [
301
328
  'LuzmoSwitch',
302
329
  'LuzmoTab',
303
330
  'LuzmoTabPanel',
331
+ 'LuzmoTable',
332
+ 'LuzmoTableBody',
333
+ 'LuzmoTableCell',
334
+ 'LuzmoTableCheckboxCell',
335
+ 'LuzmoTableDisclosureCell',
336
+ 'LuzmoTableHead',
337
+ 'LuzmoTableHeadCell',
338
+ 'LuzmoTableRow',
339
+ 'LuzmoTableRowDetails',
304
340
  'LuzmoTabs',
305
341
  'LuzmoTabsOverflow',
306
342
  'LuzmoTag',
package/package.json CHANGED
@@ -29,9 +29,9 @@
29
29
  "peerDependencies": {
30
30
  "@angular/core": "^17.3.0 || ^18.0.0 || ^19.0.0 || ^20.0.0 || ^21.0.0 || ^22.0.0",
31
31
  "@angular/forms": "^17.3.0 || ^18.0.0 || ^19.0.0 || ^20.0.0 || ^21.0.0 || ^22.0.0",
32
- "@luzmo/lucero": "2.4.2"
32
+ "@luzmo/lucero": "2.5.0"
33
33
  },
34
- "version": "2.4.2",
34
+ "version": "2.5.0",
35
35
  "peerDependenciesMeta": {
36
36
  "@angular/forms": {
37
37
  "optional": true