2.0.1 • Published 2 years ago

gitlab-calendar v2.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

Github Build Codacy Badge Codebeat Badge CodeFactor Badge DeepScan grade Analytics

Gitlab Calendar

Embed your Gitlab Contributions Calendar anywhere

This package allows you to embed your Gitlab Contributions Calendar in any website.

The package does not handle network requests, this is left to the developer to decide and implement. Gitlab Calendar requires the data as it is provided by the calendar endpoint of the Gitlab API (https://gitlab.com/users/$USER/calendar.json).

This project was inspired by Github Calendar.

Visitor stats

GitHub stars GitHub forks GitHub watchers GitHub followers

Code stats

GitHub code size in bytes GitHub repo size GitHub language count GitHub top language GitHub last commit

Live preview (link)

Gitlab Calendar Screenshot

Installation

npm i gitlab-calendar

# or

yarn add gitlab-calendar

Usage

import GitlabCalendar from 'gitlab-calendar';

new GitlabCalendar(document.getElementById('gitlab-calendar'), data, options);

Data format

The data is obtained by fetching the https://gitlab.com/users/$USER/calendar.json endpoint.

This exercise is left to the developer implementing it.

gitlab-calendar requires the data in the following format:

{
    "2020-12-07": 1,
    "2020-12-09": 2,
    "2020-12-10": 5,
    ...
}

Options

NameTypeDefault value
daySizenumber15
hintTextstring'Issues, merge requests, pushes, and comments.'
daySpacenumber1
utcOffsetnumber0
dayTitlesRecord<ActivityCalendarWeekday, string>{ monday: 'M', wednesday: 'W', friday: 'F', saturday: 'S', sunday: 'S' }
monthsAgonumber12
monthNamesstring[]'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
inputFormatstring'yyyy-MM-dd'
weekdayNamesstring[]'Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'
legendValuesActivityCalendarLegendValue[] { title: 'No contributions', min: 0 }, { title: '1-9 contributions', min: 1 }, { title: '10-19 contributions', min: 10 }, { title: '20-29 contributions', min: 20 }, { title: '30+ contributions', min: 30 }
firstDayOfWeeknumber0
tooltipDateFormatstring'MMM d, yyyy'
tooltipFormatter(count: number, dayName: string, dateText: string) => string(count: number, dayName: string, dateText: string) => { let contribText = 'No contributions';if (count > 0) {contribText = count === 1 ? '1 contribution' : ${count} contributions;}return ${contribText} on ${dayName} ${dateText};}

LICENSE

MIT