Socket
Socket
Sign inDemoInstall

@gothassos/easepick-core

Package Overview
Dependencies
1
Maintainers
2
Versions
2
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @gothassos/easepick-core

The core of easepick.


Version published
Weekly downloads
9
increased by80%
Maintainers
2
Install size
69.9 kB
Created
Weekly downloads
 

Readme

Source

@easepick/core

npm version

This package does not need to be installed if you are using @easepick/bundle.

Main package of easepick.

Documentation

https://easepick.com/packages/core

Options

NameTypeDefaultDescription
elementHTMLElement
string
nullBind the datepicker to a element. Also is possible to bind to any element (not input) for example you need inline calendar.
docDocument
ShadowRoot
documentMay be required if you need to pass ShadowRoot.
cssstring
array
function
[]Pass a CSS file for picker. Don't mix types, if you are using css link then array should only contain links.
firstDaynumber1Day of start week. (0 - Sunday, 1 - Monday, 2 - Tuesday, etc…)
langstringen-USLanguage.
This option affect to day names, month names via Date.prototype.toLocaleString() and also affect to plural rules via Intl.PluralRules.
dateDate
string
number
nullPreselect date.
Date Object or Unix Timestamp (with milliseconds) or String (must be equal to option format).
formatstringYYYY-MM-DDThe default output format.
See tokens format.
gridnumber1Number of calendar columns.
calendarsnumber1Number of visible months.
readonlybooleantrueAdd readonly attribute to element.
autoApplybooleantrueHide the apply and cancel buttons, and automatically apply a new date range as soon as two dates are clicked.
zIndexnumbernullzIndex of picker.
inlinebooleanfalseShow calendar inline.
scrollToDatebooleantrueScroll to the selected date on open.
headerboolean
string
HTMLElement
falseAdd header to calendar.
localeobject{
nextMonth: '',
previousMonth: '',
cancel: 'Cancel',
apply: 'Apply'
}
Icon and text for buttons.
documentClickboolean
function
functionHide picker on click outside picker element.
setupfunctionnull
pluginsarray[]List of plugins.

Methods

NameDescription
versionreturn version of picker.
isShown()Determine if the picker is visible or not.
show()Show the picker.
hide()Hide the picker.
clear()Clear the picker selection.
gotoDate(date)Change visible month.
setDate(date)Set date programmatically.
getDate()Get selected date.
on(type, listener, options)Add listener to container element.
off(type, listener, options)Remove listener from container element.
trigger(type, detail)Dispatch an event.
renderAll()Redraw the calendar layout.
destroy()Destroy the picker.
Example
const picker = new easepick.create({
  element: document.getElementById('datepicker'),
  css: [
    'https://cdn.jsdelivr.net/npm/@easepick/core@[version.number]/dist/index.css',
  ],
});
// 
picker.setDate('2022-01-01');

Events

Events based on CustomEvent().

NameDescription
render
view
preselectEvent is called on select days (before submit selection). When autoApply option is false.
selectEvent is called when selection is submitted.

It is also allowed to use default events such as click, keydown, etc.

Example
const picker = new easepick.create({
  element: document.getElementById('datepicker'),
  css: [
    'https://cdn.jsdelivr.net/npm/@easepick/core@[version.number]/dist/index.css',
  ],
  setup(picker) {
    picker.on('view', (e) => {
      const { view, date, target } = e.detail;
      // do something
    });
  },
});

PluginManager

PluginManager allows you to manage plugins of created picker.

Methods
NameDescription
getInstance(pluginName)Returns the plugin instance. pluginName is a string (eg.: RangePlugin).
addInstance(pluginName)Adds a plugin to the picker. Returns an instance of the added plugin.
removeInstance(pluginName)Removes the plugin from the picker.Returns a boolean result.
reloadInstance(pluginName)Removes the plugin from the picker and adds it again. Returns an instance of the added plugin.
Example
// example use bundle version
const picker = new easepick.create({
  element: document.getElementById('datepicker'),
  css: [
    'https://cdn.jsdelivr.net/npm/@easepick/core@[version.number]/dist/index.css',
  ],
});

// add AmpPlugin to the picker
const ampPlugin = picker.PluginManager.addInstance('AmpPlugin');
// change plugin option
ampPlugin.options.resetButton = true;

FAQs

Last updated on 27 Nov 2023

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc