ForwardWidgets
Widgets for Douban and Trakt watchlists plus personalized recommendations, live TV streaming including PlutoTV, Yatu ra…
Full featured, responsive, lightweight calendar in the browser.
git clone https://github.com/altinselimi/kalendar.gitaltinselimi/kalendarYour best friend when it comes to events management in Vue.
You can run the demo locally :
The code for the demo app is in src/serve-dev.vue - a small but complete calendar app.
This is a good place to learn how thing work and a good starting point for your own implementation.
npm install kalendar-vue portal-vue -S
src/serve-dev.vue into your project and start from that.Step by Step:
import Vue from "vue";
import PortalVue from "portal-vue";
Vue.use(PortalVue);
import { Kalendar } from 'kalendar-vue';
...
components: {
Kalendar,
...
},
sync modifier when passing the configuration prop to the component or else switching weeks will break.<template>
<kalendar :configuration="calendar_settings" :events.sync="events" />
</template>
<script>
...
data: () => ({
calendar_settings: {
style: 'material_design',
view_type: 'week',
cell_height: 20,
scrollToNow: true,
start_day: new Date().toISOString(),
read_only: false,
day_starts_at: 0,
day_ends_at: 24,
overlap: true,
hide_dates: ['2019-10-31'], // Spooky
hide_days: [6],
past_event_creation: true
},
events: [
{
from: '2020-03-18T18:00:00Z',
to: '2020-03-18T19:00:00Z',
data: 'Event 1',
},
{
from: '2020-03-18T19:00:00Z',
to: '2020-03-18T21:00:00Z',
data: 'Olive & Friends',
},
...
],
...
})
</script>
| Option | Default Value | Type | Description |
|---|---|---|---|
| view_type | 'week' | string | Determines the mode of kalendar. You can pick either 'week' or 'day'. Day is recommended for mobile devices. |
| cell_height | 10 | string | Determines the height in pixels of a cell |
| start_day | new Date().toISOString() | string | Determines the week or day which is shown in the kalendar on first load |
| style | 'material_design' | string | You can pick either 'material_design' or 'flat_design' (iOS) |
| read_only | false | boolean | Enabled, viewers won't be able to interact with kalendar |
| day_starts_at | 0 | integer | Determines what hour the kalendar starts from (0 to 24) |
| day_ends_at | 24 | integer | Determines what hour the kalendar ends at (0 to 24) |
| overlap | true | boolean | Enables ability to create multiple events (overlapping) at the same timeframe |
| hide_dates | [] | Array | Hides the provided dates from kalendar. Array of strings each being a valid date in YYYY-MM-DD format. |
| hide_days | [6] | Array | Hides the provided days from kalendar. Monday = 0 ... Sunday = 6 |
| past_event_creation | true | boolean | Determines the ability of creating events that have happened in the past |
| scrollToNow | true | boolean | Scroll kalendar to current time on render |
| formatLeftHours | (date) => { return format(date, 'HH') } | function | A function which accepts an ISO date and determines how the hours on the left side are shown |
| formatDayTitle | (date) => { return format(date, 'DDD dd') } | function | A function which accepts an ISO date and determines what the day column title shows |
| formatWeekNavigator | (date) => { return ${startDate(date)} - ${endDate(date)}} |
function | A function which accepts an ISO date and determines what the week view navigator (at the top) shows |
| formatDayNavigator | (date) => { return new Date(date).toUTCString().slice(5, 11) } | function | A function which accepts an ISO date and determines what the day view navigator (at the top) shows |
The plugin can turn incredibly useful using scoped slots. You can customize all the essential parts of it.
| Slot name | Slot scope | Slot description |
|---|---|---|
| created-card | event_information | Display information about an existing event |
| creating-card | event_information | Display information about an event which is being created (mouse is being dragged) |
| popup-form | popup_information | Display information about a temporary event (after user finishes dragging the mouse) |
| Field | Type | Description | ||
|---|---|---|---|---|
| start_time | String | Start time as ISO Date String of the event | ||
| end_time | String | End time as ISO Date String of the event | ||
| kalendar_id | String | Unique ID used for operations internally by kalendar | ||
| key | String | Key of the event used internally by kalendar | ||
| data | Object | Data object which can hold any type of information which may prove useful for you |
for in loop * Use event delegation and remove listeners from every cell. Use event target instead, to manipulate the cell DOM object.more like this
Widgets for Douban and Trakt watchlists plus personalized recommendations, live TV streaming including PlutoTV, Yatu ra…
A lightweight, simplified, RedNotebook-inspired journal/diary app. Built with Electron. Makes dated text files.
View and plan your life in an online calendar by visually by seeing it from days to decades
search projects, people, and tags