@wernfried/daterangepicker 5.4.2 → 5.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/API_Doc.md CHANGED
@@ -10,7 +10,7 @@
10
10
  ## Functions
11
11
 
12
12
  <dl>
13
- <dt><a href="#daterangepicker">daterangepicker(elements, options, callback)</a> ⇒ <code>HTMLElement</code> | <code>Array.&lt;HTMLElement&gt;</code></dt>
13
+ <dt><a href="#daterangepicker">daterangepicker(element, options, callback)</a> ⇒ <code><a href="#DateRangePicker">DateRangePicker</a></code> | <code><a href="#DateRangePicker">Array.&lt;DateRangePicker&gt;</a></code></dt>
14
14
  <dd><p>Initiate a new DateRangePicker</p>
15
15
  </dd>
16
16
  <dt><a href="#getDateRangePicker">getDateRangePicker(target)</a> ⇒ <code><a href="#DateRangePicker">DateRangePicker</a></code></dt>
@@ -366,15 +366,15 @@ Helper function to dispatch events
366
366
  **Extends**: <code>Event</code>
367
367
  <a name="daterangepicker"></a>
368
368
 
369
- ## daterangepicker(elements, options, callback) ⇒ <code>HTMLElement</code> \| <code>Array.&lt;HTMLElement&gt;</code>
369
+ ## daterangepicker(element, options, callback) ⇒ [<code>DateRangePicker</code>](#DateRangePicker) \| [<code>Array.&lt;DateRangePicker&gt;</code>](#DateRangePicker)
370
370
  Initiate a new DateRangePicker
371
371
 
372
372
  **Kind**: global function
373
- **Returns**: <code>HTMLElement</code> \| <code>Array.&lt;HTMLElement&gt;</code> - The input `element` instance or an array of HTMLElement instances if `elements` matches more than one element
373
+ **Returns**: [<code>DateRangePicker</code>](#DateRangePicker) \| [<code>Array.&lt;DateRangePicker&gt;</code>](#DateRangePicker) - The DateRangePicker instance or an array of DateRangePicker instances if `elements` matches more than one element
374
374
 
375
375
  | Param | Type | Description |
376
376
  | --- | --- | --- |
377
- | elements | <code>string</code> \| [<code>HTMLElement</code>](https://developer.mozilla.org/de/docs/Web/API/HTMLElement) | Element where DateRangePicker is attached |
377
+ | element | <code>string</code> \| [<code>HTMLElement</code>](https://developer.mozilla.org/de/docs/Web/API/HTMLElement) \| [<code>HTMLCollection</code>](https://developer.mozilla.org/de/docs/Web/API/HTMLCollection) | Element where DateRangePicker is attached |
378
378
  | options | [<code>Options</code>](#Options) | Object to configure the DateRangePicker |
379
379
  | callback | [<code>callback</code>](#callback) | Callback function executed when date is changed.<br/> Callback function is executed if selected date values has changed, before picker is hidden and before the attached `<input>` element is updated. As alternative listen to the ["apply"](#event_apply) event |
380
380
 
package/README.md CHANGED
@@ -19,8 +19,8 @@ Above samples are based on the [original repository](https://github.com/dangross
19
19
  #### Global import with `<script>` tags
20
20
  ```html
21
21
  <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/luxon@3.5.0/build/global/luxon.min.js"></script>
22
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.2/dist/global/daterangepicker.min.js"></script>
23
- <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.2/css/daterangepicker.min.css" rel="stylesheet" />
22
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.3/dist/global/daterangepicker.min.js"></script>
23
+ <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.3/css/daterangepicker.min.css" rel="stylesheet" />
24
24
 
25
25
  <input type="text" id="picker" />
26
26
 
@@ -40,11 +40,11 @@ Above samples are based on the [original repository](https://github.com/dangross
40
40
  {
41
41
  "imports": {
42
42
  "luxon": "https://cdn.jsdelivr.net/npm/luxon@3.7.2/+esm",
43
- "daterangepicker": "https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.2/+esm"
43
+ "daterangepicker": "https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.3/+esm"
44
44
  }
45
45
  }
46
46
  </script>
47
- <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.2/css/daterangepicker.min.css" rel="stylesheet" />
47
+ <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.3/css/daterangepicker.min.css" rel="stylesheet" />
48
48
 
49
49
  <input type="text" id="picker" />
50
50
 
@@ -63,9 +63,9 @@ Above samples are based on the [original repository](https://github.com/dangross
63
63
  #### Style with Bulma
64
64
  ```html
65
65
  <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/luxon@3.5.0/build/global/luxon.min.js"></script>
66
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.2/dist/global/daterangepicker.min.js"></script>
66
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.3/dist/global/daterangepicker.min.js"></script>
67
67
  <link type="text/css" href="https://cdn.jsdelivr.net/npm/bulma@1.0.4/css/bulma.min.css" rel="stylesheet" />
68
- <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.2/css/daterangepicker.bulma.min.css" rel="stylesheet" />
68
+ <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.3/css/daterangepicker.bulma.min.css" rel="stylesheet" />
69
69
 
70
70
  <input type="text" id="picker" />
71
71
 
@@ -121,8 +121,8 @@ Initialisation with jQuery is supported in version 5.x
121
121
  ```html
122
122
  <script type="text/javascript" src="https://cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script>
123
123
  <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/luxon@3.5.0/build/global/luxon.min.js"></script>
124
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.2/dist/global/daterangepicker.min.js"></script>
125
- <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.2/css/daterangepicker.min.css" rel="stylesheet" />
124
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.3/dist/global/daterangepicker.min.js"></script>
125
+ <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.4.3/css/daterangepicker.min.css" rel="stylesheet" />
126
126
 
127
127
  <input type="text" id="picker" />
128
128
 
@@ -2369,21 +2369,34 @@ function outerHeight(el, withMargin = false) {
2369
2369
  const style = getComputedStyle(el);
2370
2370
  return el.offsetHeight + parseFloat(style.marginTop) + parseFloat(style.marginBottom);
2371
2371
  }
2372
- function daterangepicker(elements, options, callback) {
2373
- if (typeof elements === "string")
2374
- return daterangepicker(document.querySelectorAll(elements), options, callback);
2375
- if (elements instanceof HTMLElement)
2376
- elements = [elements];
2377
- if (elements instanceof NodeList || elements instanceof HTMLCollection)
2378
- elements = Array.from(elements);
2379
- if (elements == null)
2380
- return new DateRangePicker(null, options || {}, callback);
2381
- elements.forEach((el) => {
2382
- if (el._daterangepicker && typeof el._daterangepicker.remove === "function")
2383
- el._daterangepicker.remove();
2384
- el._daterangepicker = new DateRangePicker(el, options || {}, callback);
2385
- });
2386
- return elements.length === 1 ? elements[0] : elements;
2372
+ function daterangepicker(element, options, callback) {
2373
+ if (element instanceof HTMLElement) {
2374
+ return new DateRangePicker(element, options || {}, callback);
2375
+ } else if (elements instanceof NodeList || element instanceof HTMLCollection) {
2376
+ const ret = [];
2377
+ for (const el of Array.from(element)) {
2378
+ if (el._daterangepicker && typeof el._daterangepicker.remove === "function")
2379
+ el._daterangepicker.remove();
2380
+ ret.push(new DateRangePicker(el, options || {}, callback));
2381
+ }
2382
+ return ret;
2383
+ } else if (typeof element === "string") {
2384
+ if (document.querySelectorAll(element).length > 1) {
2385
+ const ret = [];
2386
+ for (const el of Array.from(document.querySelectorAll(element))) {
2387
+ if (el._daterangepicker && typeof el._daterangepicker.remove === "function")
2388
+ el._daterangepicker.remove();
2389
+ ret.push(new DateRangePicker(el, options || {}, callback));
2390
+ }
2391
+ return ret;
2392
+ } else if (document.querySelectorAll(element).length === 1) {
2393
+ return new DateRangePicker(element, options || {}, callback);
2394
+ } else {
2395
+ return null;
2396
+ }
2397
+ } else {
2398
+ return null;
2399
+ }
2387
2400
  }
2388
2401
  function getDateRangePicker(target) {
2389
2402
  if (typeof target === "string")