ak-datepicker

Incomplete document Introduction
482
Install
npm install ak-datepicker
Latest Version:1.0.10
Vue:3
Last Updated:Jan 28, 2024
Links: npm
Maintainer: amirkhodam

Vue AK-DatePicker component

Incomplete document

Introduction

The DatePicker component provides a simple and customizable date picker in 'jajali' and 'gregorian' calendar for Vue.js applications.

Usage

1. Install the DatePicker Component

npm install ak-datepicker

or

yarn add ak-datepicker

2. Import and Use in Your Vue Component


<script setup lang="ts">
  import { DatePicker } from 'ak-datepicker'
  import 'ak-datepicker/style.css'
  import { ref } from 'vue'

  const datePickerConfig = {
    dateType: 'gregorian',
    minDate: '1990-01-01',
    maxDate: '2050-01-01',
    range: false,
    format: 'yyyy-mm-dd'
  }
  const date = ref('')
</script>

<template>
  <DatePicker :config="datePickerConfig" v-model:value="date" />
</template>

3. Configuration Options

  • dateType: Type of date system, e.g., 'gregorian' or 'jalali'.
  • minDate: Minimum selectable date.
  • maxDate: Maximum selectable date.
  • range: Boolean indicating whether to select a range of dates.
  • format: Date format, e.g., 'yyyy-mm-dd'.

4. Example Configuration

In the sample code above, we configure the DatePicker component to use the Gregorian calendar with a date range between 1990-01-01 and 2050-01-01. The date is displayed in the format 'yyyy-mm-dd'. (Format is 'yyyy-MM-dd' right now.)

5. Data Binding

The selected date(s) are bound to the value variable using the v-model directive.

Configuration

Calendar configuration

You can provide configuration Object as:

import { provide } from 'vue'
import { ConfigInterface } from 'ak-datepicker'

const dateConfig: ConfigInterface = {
  "dateType": "jalali",
  "minDate": "1990-01-01",
  "maxDate": "2050-01-01",
  "range": true,
  "format": "yyyy-mm-dd"
}

export default {
  setup() {
    provide('akDatepickerConf', dateConfig)
  }
}

In other way you can pass config as props to the


<script setup lang="ts">
  import { ref } from 'vue'
  import { DatePicker } from 'ak-datepicker'
  import { ConfigInterface } from 'ak-datepicker'

  const dateConfig: ConfigInterface = {
    dateType: 'jalali',
    minDate: '1990-01-01',
    maxDate: '2050-01-01',
    range: true,
    format: 'yyyy-mm-dd'
  }
  const date = ref('')
</script>

<template>
  <DatePicker v-model:value="date" />
</template>

Style

You must import styles to app in one of these options:

1. Global import:

For global definition you must import styles in main.ts:
import { createApp } from 'vue'
import 'ak-datepicker/style.css'

// Other scripts

createApp(App).mount('#app')

// Other scripts

2. Local import

For local definition in specific page or component you must import styles in that desired page or component like this:
<script setup lang="ts">
  // Other imports
  import { DatePicker } from 'ak-datepicker'
  import 'ak-datepicker/style.css'
  
  // Other scripts
</script>

Customize colors:

:root {
    --bg-main: #0e141a;
    --main-color: #70d1f2;
    --primary-color: #005297;
    --select-trigger-bg: rgb(75 85 99 / var(--select-trigger-bg-opacity));
    --select-trigger-bg-opacity: 0.2;
    --hover-color: #4b5563;
    --in-range-date-bg: #0A273F
}
  • --bg-main: Background of datepicker
  • --main-color: First color. Color of selected date.
  • --primary-color: Primary color. Color of selected elements.
  • --select-trigger-bg: Background of trigger (trg: Year,Month,Date) box.
  • --select-trigger-bg-opacity: Opacity of trigger box.
  • --hover-color: Used color for hovering act.
  • --in-range-date-bg: Color of dates between two selected date. (range mode)

Related Packages

@litopis/vue

Vue components for Litopis date and calendar primitives.

1,144 3
@mahlaparvaz/vue-datepicker

Vue 3 datepicker supporting Jalali, Hijri, Gregorian, Chinese calendars with ran...

4,158 3
@hina-ui/vue

The design system behind Hikarinagi: Vue 3 components built on Tailwind CSS v4.

4,608 10
v-datepicker-lite

A lightweight Vue 3 date picker with date, time, date-time, week, and month mode...

5,117 0

Version History

Version Released Vue License
1.0.10 ^3.3.11
1.0.9 ^3.3.11
1.0.8 ^3.3.11
1.0.7 ^3.3.10
1.0.6 ^3.3.10