@wernfried/daterangepicker 5.4.10 → 5.5.2
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 +21 -5
- package/README.md +21 -19
- package/dist/cjs/daterangepicker.cjs +30 -13
- package/dist/cjs/daterangepicker.cjs.map +1 -1
- package/dist/cjs/daterangepicker.min.cjs +1 -1
- package/dist/cjs/daterangepicker.min.cjs.map +1 -1
- package/dist/esm/daterangepicker.js +30 -13
- package/dist/esm/daterangepicker.js.map +1 -1
- package/dist/esm/daterangepicker.min.js +1 -1
- package/dist/esm/daterangepicker.min.js.map +1 -1
- package/dist/global/daterangepicker.js +30 -13
- package/dist/global/daterangepicker.js.map +1 -1
- package/dist/global/daterangepicker.min.js +1 -1
- package/dist/global/daterangepicker.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -40,6 +40,7 @@ var DateRangePicker = (function(exports, luxon2) {
|
|
|
40
40
|
this.isInvalidTime = null;
|
|
41
41
|
this.isCustomDate = null;
|
|
42
42
|
this.onOutsideClick = "apply";
|
|
43
|
+
this.stopPropagation = true;
|
|
43
44
|
this.opens = this.element?.classList.contains("pull-right") ? "left" : "right";
|
|
44
45
|
this.drops = this.element?.classList.contains("dropup") ? "up" : "down";
|
|
45
46
|
this.buttonClasses = "btn btn-sm";
|
|
@@ -221,7 +222,8 @@ var DateRangePicker = (function(exports, luxon2) {
|
|
|
221
222
|
"autoApply",
|
|
222
223
|
"autoUpdateInput",
|
|
223
224
|
"showLabel",
|
|
224
|
-
"showOnClick"
|
|
225
|
+
"showOnClick",
|
|
226
|
+
"stopPropagation"
|
|
225
227
|
]) {
|
|
226
228
|
if (typeof options[key2] === "boolean")
|
|
227
229
|
this[key2] = options[key2];
|
|
@@ -2320,33 +2322,50 @@ var DateRangePicker = (function(exports, luxon2) {
|
|
|
2320
2322
|
* @private
|
|
2321
2323
|
*/
|
|
2322
2324
|
addListener(element, eventName, selector, delegate) {
|
|
2325
|
+
const stopPropagation = this.stopPropagation;
|
|
2323
2326
|
this.container.querySelectorAll(element).forEach((el) => {
|
|
2324
2327
|
el.addEventListener(eventName, function(event) {
|
|
2325
2328
|
const target = event.target.closest(selector);
|
|
2326
|
-
if (target && el.contains(target))
|
|
2329
|
+
if (target && el.contains(target)) {
|
|
2330
|
+
if (stopPropagation)
|
|
2331
|
+
event.stopPropagation();
|
|
2327
2332
|
delegate.call(target, event);
|
|
2333
|
+
}
|
|
2328
2334
|
});
|
|
2329
2335
|
});
|
|
2330
2336
|
}
|
|
2331
2337
|
/**
|
|
2332
|
-
*
|
|
2333
|
-
*
|
|
2338
|
+
* Adding event listener to input element where dateragnepicker is attached to.
|
|
2339
|
+
* Wrapper to give easy access for `addEventListener()` on DateRangePicker instance.
|
|
2334
2340
|
*
|
|
2335
|
-
* @param {string} type - The event name (
|
|
2341
|
+
* @param {string} type - The event name, either native DOM-Event or [DateRangePicker](API_Doc.md#event) specific event
|
|
2336
2342
|
* @param {function} listener - The callback function invoked when the event fires
|
|
2337
2343
|
* @param {boolean|object} [options] - Optional event options:
|
|
2338
2344
|
* - `boolean capture`: Whether to listen in the capture phase (default: `false`)
|
|
2339
2345
|
* - `object signal`: An `AbortSignal` for later removal of the listener (default: `undefined`)
|
|
2340
2346
|
*
|
|
2341
2347
|
* @example
|
|
2342
|
-
*
|
|
2343
|
-
* console.log('Picker element was
|
|
2348
|
+
* picker.addEventListener('hide', (e) => {
|
|
2349
|
+
* console.log('Picker element was hidden', e);
|
|
2344
2350
|
* });
|
|
2345
2351
|
*
|
|
2346
2352
|
*/
|
|
2347
2353
|
addEventListener(type, listener, options) {
|
|
2348
2354
|
this.element.addEventListener(type, listener, options);
|
|
2349
2355
|
}
|
|
2356
|
+
/**
|
|
2357
|
+
* Counterpart to `addEventListener()`
|
|
2358
|
+
* Note, `listener` most be a named function to enable remove.
|
|
2359
|
+
*
|
|
2360
|
+
* @param {string} type - The event name, either native
|
|
2361
|
+
* @param {function} listener - The callback function invoked when the event fires
|
|
2362
|
+
* @param {boolean|object} [options] - Optional event options:
|
|
2363
|
+
* - `boolean capture`: Whether to listen in the capture phase (default: `false`)
|
|
2364
|
+
* - `object signal`: An `AbortSignal` for later removal of the listener (default: `undefined`)
|
|
2365
|
+
*/
|
|
2366
|
+
removeEventListener(type, listener, options) {
|
|
2367
|
+
this.element.removeEventListener(type, listener, options);
|
|
2368
|
+
}
|
|
2350
2369
|
}
|
|
2351
2370
|
function createElementFromHTML(html) {
|
|
2352
2371
|
const template = document.createElement("template");
|
|
@@ -2399,9 +2418,8 @@ var DateRangePicker = (function(exports, luxon2) {
|
|
|
2399
2418
|
for (const el of Array.from(element)) {
|
|
2400
2419
|
if (el._daterangepicker && typeof el._daterangepicker.remove === "function")
|
|
2401
2420
|
el._daterangepicker.remove();
|
|
2402
|
-
|
|
2403
|
-
el._daterangepicker
|
|
2404
|
-
ret.push(picker);
|
|
2421
|
+
el._daterangepicker = new DateRangePicker2(el, options || {}, callback);
|
|
2422
|
+
ret.push(el._daterangepicker);
|
|
2405
2423
|
}
|
|
2406
2424
|
return ret;
|
|
2407
2425
|
} else if (typeof element === "string") {
|
|
@@ -2410,9 +2428,8 @@ var DateRangePicker = (function(exports, luxon2) {
|
|
|
2410
2428
|
for (const el of Array.from(document.querySelectorAll(element))) {
|
|
2411
2429
|
if (el._daterangepicker && typeof el._daterangepicker.remove === "function")
|
|
2412
2430
|
el._daterangepicker.remove();
|
|
2413
|
-
|
|
2414
|
-
el._daterangepicker
|
|
2415
|
-
ret.push(picker);
|
|
2431
|
+
el._daterangepicker = new DateRangePicker2(el, options || {}, callback);
|
|
2432
|
+
ret.push(el._daterangepicker);
|
|
2416
2433
|
}
|
|
2417
2434
|
return ret;
|
|
2418
2435
|
} else if (document.querySelectorAll(element).length === 1) {
|