@devjuliovilla/jv-ui 1.13.0 → 1.14.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.
- package/README.md +347 -308
- package/fesm2022/devjuliovilla-jv-ui.mjs +413 -127
- package/fesm2022/devjuliovilla-jv-ui.mjs.map +1 -1
- package/package.json +1 -1
- package/types/devjuliovilla-jv-ui.d.ts +42 -6
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@devjuliovilla/jv-ui",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.14.0",
|
|
4
4
|
"description": "Accessibility-first Angular component library — components, forms, data grids, dialogs, layout, services, and i18n infrastructure built with signals and standalone APIs.",
|
|
5
5
|
"author": "@devjuliovilla",
|
|
6
6
|
"license": "MIT",
|
|
@@ -8,7 +8,7 @@ type JvIntent = 'primary' | 'secondary' | 'outline' | 'ghost' | 'danger' | 'succ
|
|
|
8
8
|
type JvTone = 'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'info' | 'neutral';
|
|
9
9
|
|
|
10
10
|
declare class JvButtonComponent {
|
|
11
|
-
readonly type: _angular_core.InputSignal<"button" | "
|
|
11
|
+
readonly type: _angular_core.InputSignal<"button" | "reset" | "submit">;
|
|
12
12
|
readonly variant: _angular_core.InputSignal<JvIntent>;
|
|
13
13
|
readonly icon: _angular_core.InputSignal<string | null>;
|
|
14
14
|
readonly iconPosition: _angular_core.InputSignal<"start" | "end">;
|
|
@@ -571,7 +571,7 @@ declare class JvFormContainerComponent {
|
|
|
571
571
|
}
|
|
572
572
|
|
|
573
573
|
declare class JvInputComponent implements ControlValueAccessor {
|
|
574
|
-
readonly type: _angular_core.InputSignal<"number" | "
|
|
574
|
+
readonly type: _angular_core.InputSignal<"number" | "text" | "search" | "email" | "password">;
|
|
575
575
|
readonly placeholder: _angular_core.InputSignal<string>;
|
|
576
576
|
readonly required: _angular_core.InputSignal<boolean>;
|
|
577
577
|
readonly invalid: _angular_core.InputSignal<boolean>;
|
|
@@ -1324,6 +1324,7 @@ interface JvGridSortState {
|
|
|
1324
1324
|
direction: JvGridSortDirection;
|
|
1325
1325
|
}
|
|
1326
1326
|
type JvGridColumnType = 'text' | 'integer' | 'number' | 'currency' | 'percent' | 'date' | 'time' | 'datetime' | 'boolean';
|
|
1327
|
+
type JvGridEditType = 'text' | 'number' | 'date' | 'time' | 'datetime' | 'select' | 'boolean';
|
|
1327
1328
|
type JvGridColumnFormatOptions = Intl.NumberFormatOptions & Intl.DateTimeFormatOptions;
|
|
1328
1329
|
interface JvGridColumn<T = any> {
|
|
1329
1330
|
key: keyof T | string;
|
|
@@ -1344,7 +1345,7 @@ interface JvGridColumn<T = any> {
|
|
|
1344
1345
|
cellClass?: string;
|
|
1345
1346
|
headerClass?: string;
|
|
1346
1347
|
format?: (value: unknown, row: T) => string;
|
|
1347
|
-
editType?:
|
|
1348
|
+
editType?: JvGridEditType;
|
|
1348
1349
|
editOptions?: {
|
|
1349
1350
|
label: string;
|
|
1350
1351
|
value: unknown;
|
|
@@ -1389,6 +1390,7 @@ interface JvGridOptions {
|
|
|
1389
1390
|
exportFileName?: string;
|
|
1390
1391
|
columnFilters?: boolean;
|
|
1391
1392
|
rowDoubleClick?: boolean;
|
|
1393
|
+
keyboardNavigation?: boolean;
|
|
1392
1394
|
}
|
|
1393
1395
|
interface JvGridPageEvent {
|
|
1394
1396
|
pageIndex: number;
|
|
@@ -1418,6 +1420,8 @@ declare const JV_GRID_DEFAULT_OPTIONS: JvGridOptions;
|
|
|
1418
1420
|
declare class JvGridComponent<T = any> {
|
|
1419
1421
|
private readonly gridId;
|
|
1420
1422
|
protected readonly gridSearchInputId: string;
|
|
1423
|
+
private readonly destroyRef;
|
|
1424
|
+
private readonly document;
|
|
1421
1425
|
private readonly formatService;
|
|
1422
1426
|
private readonly translationService;
|
|
1423
1427
|
readonly data: _angular_core.InputSignal<T[]>;
|
|
@@ -1425,7 +1429,7 @@ declare class JvGridComponent<T = any> {
|
|
|
1425
1429
|
readonly actions: _angular_core.InputSignal<JvGridAction<T>[]>;
|
|
1426
1430
|
readonly options: _angular_core.InputSignal<Partial<JvGridOptions>>;
|
|
1427
1431
|
readonly trackBy: _angular_core.InputSignal<keyof T | ((row: T, index: number) => JvGridRowId) | null>;
|
|
1428
|
-
readonly selectedIds: _angular_core.InputSignal<JvGridRowId[]>;
|
|
1432
|
+
readonly selectedIds: _angular_core.InputSignal<JvGridRowId[] | null>;
|
|
1429
1433
|
readonly rowClick: _angular_core.OutputEmitterRef<T>;
|
|
1430
1434
|
readonly rowDoubleClick: _angular_core.OutputEmitterRef<T>;
|
|
1431
1435
|
readonly actionClick: _angular_core.OutputEmitterRef<{
|
|
@@ -1471,19 +1475,32 @@ declare class JvGridComponent<T = any> {
|
|
|
1471
1475
|
exportFileName?: string;
|
|
1472
1476
|
columnFilters?: boolean;
|
|
1473
1477
|
rowDoubleClick?: boolean;
|
|
1478
|
+
keyboardNavigation?: boolean;
|
|
1474
1479
|
}>;
|
|
1475
1480
|
protected readonly gridLabel: _angular_core.Signal<string>;
|
|
1476
1481
|
protected readonly columnOrder: _angular_core.WritableSignal<string[]>;
|
|
1477
1482
|
protected readonly colFilters: _angular_core.WritableSignal<Record<string, JvGridColumnFilter>>;
|
|
1478
1483
|
protected readonly columnWidths: _angular_core.WritableSignal<Record<string, string>>;
|
|
1484
|
+
protected readonly activeCell: _angular_core.WritableSignal<{
|
|
1485
|
+
row: number;
|
|
1486
|
+
column: number;
|
|
1487
|
+
}>;
|
|
1479
1488
|
protected readonly visibleColumns: _angular_core.Signal<JvGridColumn<T>[]>;
|
|
1480
1489
|
protected readonly groupedHeaders: _angular_core.Signal<JvGridColumn<T>[]>;
|
|
1481
1490
|
private readonly internalSelectedIds;
|
|
1482
1491
|
readonly searchTerm: _angular_core.WritableSignal<string>;
|
|
1483
1492
|
readonly sortState: _angular_core.WritableSignal<JvGridSortState>;
|
|
1484
1493
|
readonly pageIndex: _angular_core.WritableSignal<number>;
|
|
1494
|
+
private readonly internalPageSize;
|
|
1485
1495
|
protected readonly pageSize: _angular_core.Signal<number>;
|
|
1496
|
+
protected readonly pageSizeStr: _angular_core.Signal<string>;
|
|
1497
|
+
protected readonly pageSizeOptions: _angular_core.Signal<{
|
|
1498
|
+
label: string;
|
|
1499
|
+
value: string;
|
|
1500
|
+
}[]>;
|
|
1501
|
+
private readonly pageSizeInputSync;
|
|
1486
1502
|
private readonly searchPageResetter;
|
|
1503
|
+
private readonly pageBoundsGuard;
|
|
1487
1504
|
private readonly selectedIdSet;
|
|
1488
1505
|
protected readonly hasActiveFilters: _angular_core.Signal<boolean>;
|
|
1489
1506
|
protected readonly filteredData: _angular_core.Signal<T[]>;
|
|
@@ -1491,9 +1508,10 @@ declare class JvGridComponent<T = any> {
|
|
|
1491
1508
|
protected readonly effectiveTotalItems: _angular_core.Signal<number>;
|
|
1492
1509
|
protected readonly effectiveTotalPages: _angular_core.Signal<number>;
|
|
1493
1510
|
protected readonly displayData: _angular_core.Signal<T[]>;
|
|
1494
|
-
protected readonly
|
|
1511
|
+
protected readonly virtualScrollEnabled: _angular_core.Signal<boolean | undefined>;
|
|
1495
1512
|
protected readonly virtualStartIndex: _angular_core.WritableSignal<number>;
|
|
1496
1513
|
protected readonly virtualEndIndex: _angular_core.WritableSignal<number>;
|
|
1514
|
+
private readonly virtualRangeResetter;
|
|
1497
1515
|
protected readonly virtualDisplayData: _angular_core.Signal<T[]>;
|
|
1498
1516
|
protected readonly virtualTotalHeight: _angular_core.Signal<number>;
|
|
1499
1517
|
protected readonly virtualOffsetY: _angular_core.Signal<number>;
|
|
@@ -1504,6 +1522,13 @@ declare class JvGridComponent<T = any> {
|
|
|
1504
1522
|
protected readonly someSelected: _angular_core.Signal<boolean>;
|
|
1505
1523
|
protected readonly colspan: _angular_core.Signal<number>;
|
|
1506
1524
|
protected readonly densityClass: _angular_core.Signal<string>;
|
|
1525
|
+
protected cellTabIndex(rowIndex: number, columnIndex: number, col: JvGridColumn<T>): number | null;
|
|
1526
|
+
private flattenColumns;
|
|
1527
|
+
protected onCellFocus(rowIndex: number, columnIndex: number): void;
|
|
1528
|
+
protected onCellKeydown(event: KeyboardEvent, rowIndex: number, columnIndex: number): void;
|
|
1529
|
+
protected onCellF2(event: Event, rowIndex: number, columnIndex: number): void;
|
|
1530
|
+
protected onHeaderFocus(columnIndex: number): void;
|
|
1531
|
+
protected onHeaderKeydown(event: KeyboardEvent, columnIndex: number): void;
|
|
1507
1532
|
protected editState: _angular_core.WritableSignal<{
|
|
1508
1533
|
rowId: JvGridRowId;
|
|
1509
1534
|
colKey: string;
|
|
@@ -1514,6 +1539,14 @@ declare class JvGridComponent<T = any> {
|
|
|
1514
1539
|
protected getRawCellValue(row: T, col: JvGridColumn<T>): unknown;
|
|
1515
1540
|
protected getCellValue(row: T, col: JvGridColumn<T>): unknown;
|
|
1516
1541
|
protected getEditValue(row: T, col: JvGridColumn<T>): string;
|
|
1542
|
+
protected getBooleanEditValue(row: T, col: JvGridColumn<T>): boolean;
|
|
1543
|
+
protected isBooleanTrue(value: unknown): boolean;
|
|
1544
|
+
protected editType(col: JvGridColumn<T>): JvGridEditType;
|
|
1545
|
+
protected inputType(col: JvGridColumn<T>): 'text' | 'number' | 'date' | 'time' | 'datetime-local';
|
|
1546
|
+
protected normalizeEditValue(col: JvGridColumn<T>, value: unknown): unknown;
|
|
1547
|
+
private toDateInputValue;
|
|
1548
|
+
private toDateTimeInputValue;
|
|
1549
|
+
private toTimeInputValue;
|
|
1517
1550
|
protected formatValue(value: unknown, col: JvGridColumn<T>, _row: T): string;
|
|
1518
1551
|
protected getComparableValue(value: unknown, col: JvGridColumn<T>): string | number | boolean | null;
|
|
1519
1552
|
protected getSearchValue(value: unknown, col: JvGridColumn<T>): string;
|
|
@@ -1538,6 +1571,7 @@ declare class JvGridComponent<T = any> {
|
|
|
1538
1571
|
protected goToPage(page: number): void;
|
|
1539
1572
|
protected isSelected(row: T): boolean;
|
|
1540
1573
|
protected toggleRow(row: T): void;
|
|
1574
|
+
protected onPageSizeChange(value: string): void;
|
|
1541
1575
|
protected toggleSelectAll(checked: boolean): void;
|
|
1542
1576
|
protected onRowClick(event: Event | T, row?: T): void;
|
|
1543
1577
|
protected onRowDblClick(row: T): void;
|
|
@@ -1546,9 +1580,11 @@ declare class JvGridComponent<T = any> {
|
|
|
1546
1580
|
protected getRowLabel(row: T, index: number): string;
|
|
1547
1581
|
protected startEdit(row: T, col: JvGridColumn<T>, event: Event): void;
|
|
1548
1582
|
protected commitEdit(row: T, col: JvGridColumn<T>, value: unknown): void;
|
|
1583
|
+
protected commitEditFromKeyboard(event: Event, row: T, col: JvGridColumn<T>, value: unknown): void;
|
|
1549
1584
|
protected cancelEdit(): void;
|
|
1550
1585
|
protected onEditValueChange(row: T, col: JvGridColumn<T>, value: string): void;
|
|
1551
1586
|
private resizeData;
|
|
1587
|
+
constructor();
|
|
1552
1588
|
protected onResizeStart(event: MouseEvent, col: JvGridColumn<T>, _colIdx: number): void;
|
|
1553
1589
|
private readonly onResizeMove;
|
|
1554
1590
|
private readonly onResizeEnd;
|
|
@@ -1592,4 +1628,4 @@ declare class JvPaginationComponent {
|
|
|
1592
1628
|
}
|
|
1593
1629
|
|
|
1594
1630
|
export { EN, ES, JV_DEFAULT_LOCALE, JV_FALLBACK_ICON_NAME, JV_GRID_DEFAULT_OPTIONS, JV_LOCALE_DICTIONARIES, JV_LUCIDE_ICON_REGISTRY, JV_UI_CONFIG, JV_UI_CONFIG_DEFAULTS, JV_UI_DEFAULT_CONFIG, JvAccordionComponent, JvAccordionPanelDirective, JvAlertComponent, JvAnnouncementService, JvBadgeComponent, JvBreadcrumbComponent, JvButtonComponent, JvButtonGroupComponent, JvCardComponent, JvChangePasswordPageComponent, JvCheckboxComponent, JvCodeComponent, JvCollapsiblePanelComponent, JvConfirmDialogComponent, JvDashboardShellComponent, JvDatePickerComponent, JvDayPlannerComponent, JvDayPlannerDetailDirective, JvDayPlannerItemDirective, JvDialogComponent, JvDialogService, JvDividerComponent, JvFileInputComponent, JvForgotPasswordPageComponent, JvFormContainerComponent, JvFormatService, JvGridComponent, JvIconButtonComponent, JvIconComponent, JvImageGalleryComponent, JvImageSliderComponent, JvInputComponent, JvListComponent, JvListItemComponent, JvLoaderComponent, JvLoaderService, JvLoginPageComponent, JvModalSelectorComponent, JvMonthCalendarComponent, JvMonthCalendarDayDirective, JvPageComponent, JvPaginationComponent, JvRadioComponent, JvSectionComponent, JvSelectComponent, JvSidebarComponent, JvSwitchComponent, JvTabPanelDirective, JvTabsComponent, JvTextareaComponent, JvThemeService, JvToastComponent, JvToastService, JvTooltipDirective, JvTopbarComponent, JvTranslationService, JvWindowModalComponent, provideJvUi };
|
|
1595
|
-
export type { JvAccordionItem, JvActiveConfirmDialog, JvBreadcrumbItem, JvChangePasswordSubmitEvent, JvCodeFont, JvCollapsiblePanelVariant, JvConfirmOptions, JvDayPlannerDetailContext, JvDayPlannerItem, JvDayPlannerItemContext, JvDensity, JvFileInputRejection, JvForgotPasswordSubmitEvent, JvFormatKind, JvFormatOverrides, JvGalleryAction, JvGalleryImage, JvGridAction, JvGridColumn, JvGridColumnFilter, JvGridColumnFormatOptions, JvGridColumnReorderEvent, JvGridColumnResizeEvent, JvGridColumnType, JvGridColumnWidth, JvGridFilterOperator, JvGridOptions, JvGridPageEvent, JvGridRowEditEvent, JvGridRowId, JvGridSortDirection, JvGridSortState, JvGridTrackBy, JvIconDefinition, JvIconElement, JvIntent, JvListItemModel, JvLoaderState, JvLocale, JvLoginSubmitEvent, JvMessagesLocale, JvModalSelectorOption, JvMonthCalendarCell, JvMonthCalendarDayContext, JvMonthCalendarDayMeta, JvMonthCalendarNavigation, JvMonthCalendarResolvedMeta, JvNavItem, JvPaginationEvent, JvSelectOption, JvSliderImage, JvTabItem, JvTabTransition, JvTheme, JvThemeOption, JvToastItem, JvToastPosition, JvToastViewport, JvTone, JvTooltipPosition, JvTopbarAction, JvUiConfig, JvUiConfigInput, JvUiFormats };
|
|
1631
|
+
export type { JvAccordionItem, JvActiveConfirmDialog, JvBreadcrumbItem, JvChangePasswordSubmitEvent, JvCodeFont, JvCollapsiblePanelVariant, JvConfirmOptions, JvDayPlannerDetailContext, JvDayPlannerItem, JvDayPlannerItemContext, JvDensity, JvFileInputRejection, JvForgotPasswordSubmitEvent, JvFormatKind, JvFormatOverrides, JvGalleryAction, JvGalleryImage, JvGridAction, JvGridColumn, JvGridColumnFilter, JvGridColumnFormatOptions, JvGridColumnReorderEvent, JvGridColumnResizeEvent, JvGridColumnType, JvGridColumnWidth, JvGridEditType, JvGridFilterOperator, JvGridOptions, JvGridPageEvent, JvGridRowEditEvent, JvGridRowId, JvGridSortDirection, JvGridSortState, JvGridTrackBy, JvIconDefinition, JvIconElement, JvIntent, JvListItemModel, JvLoaderState, JvLocale, JvLoginSubmitEvent, JvMessagesLocale, JvModalSelectorOption, JvMonthCalendarCell, JvMonthCalendarDayContext, JvMonthCalendarDayMeta, JvMonthCalendarNavigation, JvMonthCalendarResolvedMeta, JvNavItem, JvPaginationEvent, JvSelectOption, JvSliderImage, JvTabItem, JvTabTransition, JvTheme, JvThemeOption, JvToastItem, JvToastPosition, JvToastViewport, JvTone, JvTooltipPosition, JvTopbarAction, JvUiConfig, JvUiConfigInput, JvUiFormats };
|