Componente Calendar para Angular | ng-hub-ui-calendar

Componente calendario para Angular con vistas de eventos, drag and drop, plantillas, internacionalización y variables CSS para interfaces de scheduling.

Última actualización 17 ago 2026

Visión General

Por qué los equipos buscan esta librería

Este componente calendario para Angular está diseñado para interfaces de scheduling que necesitan vistas configurables, renderizado de eventos, drag and drop y theming listo para producción.

Instalación

npm install ng-hub-ui-calendar

Ir a

Ideal para

  • herramientas de reservas
  • calendarios de equipo
  • planificación de recursos
  • gestión de eventos

Sobre calendar

ng-hub-ui-calendar ayuda a los equipos Angular a construir herramientas de reservas, agendas de equipo y pantallas de planificación con una superficie de calendario reutilizable. Soporta el tipo de renderizado e interacción con eventos que se espera en productos reales de scheduling.

Guías de uso

Vistas y navegación

Cambia entre las vistas de mes, semana, día y año y desplázate entre periodos

Ejemplos:
Vistas de calendario

Vistas de calendario

August 2026

Sun
Mon
Tue
Wed
Thu
Fri
Sat
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Team Meeting
Lunch Break
30
Project Deadline
31
1
2
3
4
5
Navegación

Navegación

Eventos

Muestra eventos y gestiona las interacciones con eventos y días

Ejemplos:
Gestión de eventos

Gestión de eventos

August 2026

Sun
Mon
Tue
Wed
Thu
Fri
Sat
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Important Meeting
Casual Lunch
30
Project Review
31
1
2
3
4
5
Overflow del contenido de eventos

Overflow del contenido de eventos

This example uses very long event titles and descriptions to verify that overflowing content does not resize calendar columns or break the month grid layout.

August 2026

Sun
Mon
Tue
Wed
Thu
Fri
Sat
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
LONG_EVENT_IDENTIFIER_WITHOUT_BREAKS_2026_RELEASE_READINESS_CHECKLIST_PHASE_ALPHA_001
31
1
Cross-team review with architecture, platform, QA, operations, and compliance stakeholders
2
3
Customer workshop: scope alignment, backlog refinement, and technical constraints review
4
5
Eventos drag & drop

Eventos drag & drop

Drag events to move them to different days.

August 2026

Sun
Mon
Tue
Wed
Thu
Fri
Sat
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Movable Meeting
30
Reschedule This
31
Flexible Task
1
2
3
4
5

Drop Log:

No drops yet. Try dragging an event!

Plantillas

Personaliza el renderizado de eventos y celdas de día con plantillas

Ejemplos:
Plantillas personalizadas

Plantillas personalizadas

August 2026

Sun
Mon
Tue
Wed
Thu
Fri
Sat
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
292 events
301 events
31
1
2
3
4
5

Configuración

Ajusta el comportamiento del calendario mediante opciones de configuración

Ejemplos:
Configuración del calendario

Configuración del calendario

August 2026

Mon
Tue
Wed
Thu
Fri
Sat
Sun
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Morning Standup
Lunch Break
30
31
1
2
3
4
5
6

Estilos e i18n

Aplica temas mediante variables CSS y localiza el calendario

Ejemplos:
Tematización con variables CSS

Tematización con variables CSS

This example customizes the calendar using --hub-calendar-* CSS variables.

August 2026

Sun
Mon
Tue
Wed
Thu
Fri
Sat
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Design Review
30
Client Call
31
Roadmap Planning
1
2
3
4
5
Internacionalización (i18n)

Internacionalización (i18n)

Agosto 2026

Lun
Mar
Mié
Jue
Vie
Sáb
Dom
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
International Meeting
30
31
1
2
3
4
5
6

What moves with the locale

Weekday and month names, the Today shortcut and the view switcher all read from the same dictionary — chrome and data in one language, never half of each.

en and es ship with the library. Pick fr to see the documented fallback: an unbundled locale resolves to English rather than rendering blanks or raw keys.

To override the bundled strings, feed HUBUI.CALENDAR.* through provideHubTranslationAdapter(); the dictionary wins over locale, and the built-in entries remain the fallback.

Características clave

Cambios recientes

Version 22.6.1 - 8/16/26, 12:00 AM

fixed: The header buttons ignored the locale. Today was written into the template by hand and the view switcher title-cased the enum, while the weekday and month names came from the dictionary — so a calendar with locale="es" rendered "Lun, Mar, Mié" underneath "Today / Month / Week / Day / Year", with nothing a consumer could pass to reconcile them. All five labels now resolve through the same lookup as the day and month names, honouring the injected translation service first and falling back to the built-in dictionary. English is unchanged.

Version 22.6.0 - 8/14/26, 12:00 AM

changed: Labels now resolve HUBUI.CALENDAR.* before the legacy calendar.* branch. The collision-safe namespace lets an application dictionary feed the calendar through provideHubTranslationAdapter() without reserving a top-level calendar key. Existing calendar.* dictionaries keep working — the legacy branch is still the fallback.

changed: Dictionary changes are now reactive. The component tracks translation-source emissions, so switching language refreshes the calendar labels instead of leaving the strings resolved at first render under OnPush.

added: README documentation for the application-wide translation adapter (provideHubTranslationAdapter() from ng-hub-ui-utils).

Version 22.5.1 - 8/8/26, 12:00 AM

fixed: Documentation links now point at the canonical localized URLs. The README linked to https://hubui.dev/<path> with no locale prefix and no trailing slash, and both forms are 301-redirected, so every reader arriving from npm or GitHub landed on a redirect instead of the canonical page.

Version 22.5.0 - 7/28/26, 12:00 AM

added: WAI-ARIA grid semantics on the month view (grid/row/columnheader/gridcell, aria-selected, aria-current="date", localized full-date labels).

added: Keyboard navigation on the month grid: roving tabindex, arrow keys by day/week, Home/End, PageUp/PageDown across months, Enter/Space to activate a day.

added: Event chips and year-view month cards are keyboard-activatable buttons (role="button", tabindex, Enter/Space); labelled prev/next buttons and aria-pressed view switcher.

added: Starter unit test suite for the component (rendering, navigation, keyboard, ARIA).

fixed: SSR-safe drag-end cleanup: the drag-over class sweep is scoped to the host element instead of the global document.

Version 22.4.1 - 7/26/26, 12:00 AM

fixed: Declared the real ng-hub-ui-utils peer range (>=22.6.0); the previous >=1.0.0 floor resolved to a utils major without HubOverflowTooltipDirective.

Version 21.1.1 - 3/19/26, 12:00 AM

changed: Co-locate SCSS with component via styleUrl; no manual @use import needed.

changed: Removed hardcoded design system token defaults from stylesheet.

fixed: Fixed grid overflow: added min-width: 0 to tracks, day cells, and event containers.

Version 21.1.0 - 3/10/26, 12:00 AM

added: Multiple calendar views: month, week, day, year.

added: Native drag-and-drop event support.