@wernfried/daterangepicker 5.3.1 → 5.3.8

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/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@%npm_package_version%/dist/global/daterangepicker.min.js"></script>
23
- <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@%npm_package_version%/css/daterangepicker.min.css" rel="stylesheet" />
22
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.3.8/dist/global/daterangepicker.min.js"></script>
23
+ <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.3.8/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@%npm_package_version%/+esm"
43
+ "daterangepicker": "https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.3.8/+esm"
44
44
  }
45
45
  }
46
46
  </script>
47
- <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@%npm_package_version%/css/daterangepicker.min.css" rel="stylesheet" />
47
+ <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.3.8/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@%npm_package_version%/dist/global/daterangepicker.min.js"></script>
66
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.3.8/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@%npm_package_version%/css/daterangepicker.bulma.min.css" rel="stylesheet" />
68
+ <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.3.8/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@%npm_package_version%/dist/global/daterangepicker.min.js"></script>
125
- <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@%npm_package_version%/css/daterangepicker.min.css" rel="stylesheet" />
124
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.3.8/dist/global/daterangepicker.min.js"></script>
125
+ <link type="text/css" href="https://cdn.jsdelivr.net/npm/@wernfried/daterangepicker@5.3.8/css/daterangepicker.min.css" rel="stylesheet" />
126
126
 
127
127
  <input type="text" id="picker" />
128
128
 
@@ -254,6 +254,7 @@ Compared to [inital repository](https://github.com/dangrossman/daterangepicker),
254
254
  - Added option `onOutsideClick` where you can define whether picker shall apply or revert selected value
255
255
  - Added option `initalMonth` to show datepicker without an initial date
256
256
  - Added option `singleMonthView` to show single month calendar, useful for shorter ranges
257
+ - Added option `showOnClick` and `button` to provide better control when DateRangePicker pops up
257
258
  - Better validation of input parameters, errors are logged to console
258
259
  - Highlight range in calendar when hovering over pre-defined ranges
259
260
  - Option `autoUpdateInput` defines whether the attached `<input>` element is updated when the user clicks on a date value.<br>
@@ -267,21 +268,19 @@ but other frameworks may be added in future releases
267
268
  - ... and maybe some new bugs 😉
268
269
 
269
270
  ### Localization
270
- All date values are based on [luxon](https://moment.github.io/luxon/index.html#/intl) which provides great support for localization. Instead of providing date format, weekday and month names manually as strings, it is usually easier to set the default locale like this:
271
+ All date values are based on [luxon](https://moment.github.io/luxon/index.html#/intl) which provides great support for localization. Instead of providing date format, weekdays, month names, etc. manually it is usually easier to set the default locale like this:
271
272
  ```js
272
273
  const Settings = luxon.Settings;
273
274
  Settings.defaultLocale = 'fr-CA'
274
-
275
275
  daterangepicker('#picker', {
276
- timePicker: true,
277
- singleDatePicker: false
276
+ timePicker: true
278
277
  };
279
278
  ```
280
279
  instead of
281
280
  ```js
282
281
  daterangepicker('#picker', {
283
282
  timePicker: true,
284
- singleDatePicker: false,
283
+ timePicker24Hour: true,
285
284
  locale: {
286
285
  format: 'yyyyy-M-d H h m',
287
286
  daysOfWeek: [ 'lun.', 'mar.', 'mer.', 'jeu.', 'ven.', 'sam.', 'dim.' ],
@@ -87,7 +87,7 @@ class DateRangePicker {
87
87
  dataOptions[name] = ts.isValid && isDate ? ts : JSON.parse(item.value);
88
88
  }
89
89
  options = { ...dataOptions, ...options };
90
- if (["string", "object"].includes(typeof options.button)) {
90
+ if (["string", "object"].includes(typeof options.button) && options.button != null) {
91
91
  let button = options.button;
92
92
  if (typeof button === "string" && document.querySelectorAll(button).length === 1)
93
93
  button = document.querySelector(button);
@@ -178,7 +178,7 @@ class DateRangePicker {
178
178
  else
179
179
  console.error(`Option 'locale.direction' must be 'rtl' or 'ltr'`);
180
180
  }
181
- if (["string", "object"].includes(typeof options.locale.format))
181
+ if (["string", "object"].includes(typeof options.locale.format) && options.locale.format !== null)
182
182
  this.locale.format = options.locale.format;
183
183
  if (Array.isArray(options.locale.daysOfWeek)) {
184
184
  if (options.locale.daysOfWeek.some((x) => typeof x !== "string"))
@@ -458,7 +458,7 @@ class DateRangePicker {
458
458
  iterator--;
459
459
  }
460
460
  }
461
- if (!this.singleDatePicker && typeof options.ranges === "object") {
461
+ if (!this.singleDatePicker && typeof options.ranges === "object" && options.ranges != null) {
462
462
  for (let range in options.ranges) {
463
463
  let start, end;
464
464
  if (["string", "object"].includes(typeof options.ranges[range][0])) {