Skip to content

Commit e7c4c72

Browse files
committed
version bump
1 parent 56a9167 commit e7c4c72

6 files changed

+50
-40
lines changed

bower.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "jt.timepicker",
3-
"version": "1.14.0",
3+
"version": "1.14.1",
44
"description": "A jQuery timepicker plugin inspired by Google Calendar.",
55
"homepage": "http://jonthornton.github.com/jquery-timepicker",
66
"main": ["./jquery.timepicker.js", "./jquery.timepicker.css"],

jquery.timepicker.js

+44-34
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*!
2-
* jquery-timepicker v1.14.0 - A jQuery timepicker plugin inspired by Google Calendar. It supports both mouse and keyboard navigation.
2+
* jquery-timepicker v1.14.1 - A jQuery timepicker plugin inspired by Google Calendar. It supports both mouse and keyboard navigation.
33
* Copyright (c) 2021 Jon Thornton - https://www.jonthornton.com/jquery-timepicker/
44
* License: MIT
55
*/
@@ -168,6 +168,11 @@
168168
}
169169

170170
var ONE_DAY = 86400;
171+
var EVENT_DEFAULTS = {
172+
bubbles: true,
173+
cancelable: false,
174+
detail: null
175+
};
171176

172177
var roundingFunction = function roundingFunction(seconds, settings) {
173178
if (seconds === null) {
@@ -239,12 +244,6 @@
239244
hrs: "hrs"
240245
};
241246

242-
var EVENT_DEFAULTS = {
243-
bubbles: true,
244-
cancelable: false,
245-
detail: null
246-
};
247-
248247
var Timepicker = /*#__PURE__*/function () {
249248
function Timepicker(targetEl) {
250249
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -431,7 +430,7 @@
431430

432431
timeString = timeString.toLowerCase().replace(/[\s\.]/g, ""); // if the last character is an "a" or "p", add the "m"
433432

434-
if (timeString.slice(-1) == "a" || timeString.slice(-1) == "p") {
433+
if (this.settings.lang.am === "am" && (timeString.slice(-1) == "a" || timeString.slice(-1) == "p")) {
435434
timeString += "m";
436435
}
437436

@@ -817,10 +816,34 @@
817816
return;
818817
}
819818

820-
var rangeError = false; // check that the time in within bounds
819+
var rangeError = this._isTimeRangeError(seconds, settings);
820+
821+
if (settings.forceRoundTime) {
822+
var roundSeconds = settings.roundingFunction(seconds, settings);
823+
824+
if (roundSeconds != seconds) {
825+
seconds = roundSeconds;
826+
origin = null;
827+
}
828+
}
829+
830+
var prettyTime = this._int2time(seconds);
831+
832+
if (rangeError) {
833+
this._setTimeValue(prettyTime);
821834

835+
var timeRangeErrorEvent = new CustomEvent('timeRangeError', EVENT_DEFAULTS);
836+
this.targetEl.dispatchEvent(timeRangeErrorEvent);
837+
} else {
838+
this._setTimeValue(prettyTime, origin);
839+
}
840+
}
841+
}, {
842+
key: "_isTimeRangeError",
843+
value: function _isTimeRangeError(seconds, settings) {
844+
// check that the time in within bounds
822845
if (settings.minTime !== null && settings.maxTime !== null && (seconds < settings.minTime() || seconds > settings.maxTime())) {
823-
rangeError = true;
846+
return true;
824847
} // check that time isn't within disabled time ranges
825848

826849

@@ -832,8 +855,7 @@
832855
var range = _step.value;
833856

834857
if (seconds >= range[0] && seconds < range[1]) {
835-
rangeError = true;
836-
break;
858+
return true;
837859
}
838860
}
839861
} catch (err) {
@@ -842,25 +864,7 @@
842864
_iterator.f();
843865
}
844866

845-
if (settings.forceRoundTime) {
846-
var roundSeconds = settings.roundingFunction(seconds, settings);
847-
848-
if (roundSeconds != seconds) {
849-
seconds = roundSeconds;
850-
origin = null;
851-
}
852-
}
853-
854-
var prettyTime = this._int2time(seconds);
855-
856-
if (rangeError) {
857-
this._setTimeValue(prettyTime);
858-
859-
var timeRangeErrorEvent = new CustomEvent('timeRangeError', EVENT_DEFAULTS);
860-
this.targetEl.dispatchEvent(timeRangeErrorEvent);
861-
} else {
862-
this._setTimeValue(prettyTime, origin);
863-
}
867+
return false;
864868
}
865869
}, {
866870
key: "_generateNoneElement",
@@ -1143,7 +1147,7 @@
11431147

11441148
function _renderSelectItem(item) {
11451149
var el = document.createElement('option');
1146-
el.value = item.label;
1150+
el.value = item.value || item.label;
11471151

11481152
if (item.duration) {
11491153
el.appendChild(document.createTextNode(item.label + ' (' + item.duration + ')'));
@@ -1536,11 +1540,17 @@
15361540
setTime: function setTime(value) {
15371541
var tp = this[0].timepickerObj;
15381542
var settings = tp.settings;
1543+
var seconds = tp.anytime2int(value);
1544+
1545+
if (tp._isTimeRangeError(seconds, settings)) {
1546+
var timeRangeErrorEvent = new CustomEvent('timeRangeError', EVENT_DEFAULTS);
1547+
tp.targetEl.dispatchEvent(timeRangeErrorEvent);
1548+
}
15391549

15401550
if (settings.forceRoundTime) {
1541-
var prettyTime = tp._roundAndFormatTime(tp.anytime2int(value));
1551+
var prettyTime = tp._roundAndFormatTime(seconds);
15421552
} else {
1543-
var prettyTime = tp._int2time(tp.anytime2int(value));
1553+
var prettyTime = tp._int2time(seconds);
15441554
}
15451555

15461556
if (value && prettyTime === null && settings.noneOption) {

jquery.timepicker.min.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

jt.timepicker.jquery.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "jt.timepicker",
3-
"version": "1.14.0",
3+
"version": "1.14.1",
44
"title": "jquery-timepicker",
55
"description": "A jQuery timepicker plugin inspired by Google Calendar. It supports both mouse and keyboard navigation.",
66
"author": {

package-lock.json

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "timepicker",
3-
"version": "1.14.0",
3+
"version": "1.14.1",
44
"title": "jquery-timepicker",
55
"author": {
66
"name": "Jon Thornton",

0 commit comments

Comments
 (0)