Premium

Repeated-task views

Present categorized task occurrences across a month or week. This is a dedicated task-oriented layout, distinct from ordinary recurring events in the standard calendar.

Repeated-task views — Screenshot of the actual WTS Calendar package with sample data. Static image, not a live demo. Preview build: @wts-calendar/core@1.1.0 (unpublished).
Screenshot of the actual WTS Calendar package with sample data. Static image, not a live demo. Preview build: @wts-calendar/core@1.1.0 (unpublished).

What you configure

view
Choose monthly-repeated-task or weekly-repeated-task.
task / taskSources
Supply task categories and their occurrences statically or through sources.
IDs and versions
Keep category and occurrence IDs stable; preserve optional concurrency versions.

Integration code example

  1. Register the repeated-tasks module with its own repeated-task-views entitlement.
  2. Map task categories, occurrence dates, status, and labels into the task model.
  3. Connect source refresh or pagination and persist accepted task changes in your application.

Copy this TypeScript into your application, not the browser console. Replace YOUR_WTS_LICENSE_KEY with an entitlement issued for your deployment origin. A WTS license is not a Google, Microsoft or CalDAV credential. These examples are documentation only and never execute on this page.

Install command
npm install @wts-calendar/core
Host markup
<div id="calendar"></div>
Global CSS / SCSS
@import '@wts-calendar/core/styles/calendar.css';
TypeScript integration
import { WtsCalendar, verifyCalendarLicense } from '@wts-calendar/core';
import { repeatedTasksModule } from '@wts-calendar/core/repeated-tasks';

const license = await verifyCalendarLicense('YOUR_WTS_LICENSE_KEY');
const container = document.querySelector<HTMLElement>('#calendar');
if (!container) throw new Error('Calendar container not found');
const calendar = new WtsCalendar({
  container,
  license,
  plugins: [repeatedTasksModule],
  view: 'weekly-repeated-task',
  viewDate: '2026-09-07',
  timeZone: 'UTC',
  height: 560,
  headerToolbar: {
    start: 'prev,next',
    center: 'title',
    end: 'weekly-repeated-task,monthly-repeated-task',
  },
  task: [
    {
      id: 'checks',
      name: 'checks',
      title: 'Equipment checks',
      enable: true,
      color: '#18796b',
      icon: '',
      data: [
        {
          id: 'inspection',
          start: '2026-09-07',
          end: '2026-09-07',
          reason: 'Safety inspection',
          status: 'pending',
        },
      ],
    },
  ],
});
export function completeInspection() {
  calendar.setTaskStatus('checks', 'inspection', 'completed');
}
export function dispose() {
  calendar.destroy();
}

Application responsibilities

Mount in a web component lifecycle and dispose on unmount. Task data is separate from ordinary calendar events; persist changes in your own application if needed.

Add the stylesheet once to your global CSS/SCSS file using a bundler that resolves npm package imports. Keep it separate from component TypeScript.

Behavior and lifecycle

  • Source refreshes replace their owned task snapshot without removing static or other-source tasks.
  • Stable occurrence IDs allow paginated data to merge and later refreshes to reconcile records.

Limits and responsibilities

  • These Premium views are not required for standard recurring calendar events.
  • No task database or background task-execution service is included.
Premium

Enable this capability

Optional module
@wts-calendar/core/repeated-tasks
Signed entitlement
repeated-task-views

Request the required features and deployment origins by email. Pricing and terms are confirmed privately. A WTS license is separate from provider credentials; do not send passwords or production access tokens.

Email for a license key →

This public guide does not execute Premium modules or collect license tokens.