@ms-atlas/datastudio 0.1.19

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.

Potentially problematic release.


This version of @ms-atlas/datastudio might be problematic. Click here for more details.

Files changed (38) hide show
  1. package/ExternalLibraries/Monaco/vs/loader.js +2166 -0
  2. package/ExternalLibraries/URI.min.js +1901 -0
  3. package/ExternalLibraries/crossroads.min.js +453 -0
  4. package/ExternalLibraries/css.js +165 -0
  5. package/ExternalLibraries/d3.min.js +10857 -0
  6. package/ExternalLibraries/es6-promise.min.js +363 -0
  7. package/ExternalLibraries/hammer.js +2224 -0
  8. package/ExternalLibraries/hull.js +444 -0
  9. package/ExternalLibraries/i18n.min.js +115 -0
  10. package/ExternalLibraries/jquery-ui-timepicker-addon.min.css +76 -0
  11. package/ExternalLibraries/jquery-ui-timepicker-addon.min.js +1918 -0
  12. package/ExternalLibraries/jquery-ui.js +17201 -0
  13. package/ExternalLibraries/jquery-ui.min.css +1454 -0
  14. package/ExternalLibraries/jquery.history.js +2173 -0
  15. package/ExternalLibraries/jquery.min.js +5168 -0
  16. package/ExternalLibraries/jquery.mockjax.min.js +445 -0
  17. package/ExternalLibraries/jquery.modal.js +173 -0
  18. package/ExternalLibraries/jstree.js +10086 -0
  19. package/ExternalLibraries/jstree.style.css +1048 -0
  20. package/ExternalLibraries/jwt-decode.min.js +142 -0
  21. package/ExternalLibraries/knockout-latest.debug.js +7375 -0
  22. package/ExternalLibraries/knockout.mapping.min.js +534 -0
  23. package/ExternalLibraries/moment.js +3389 -0
  24. package/ExternalLibraries/q.js +1974 -0
  25. package/ExternalLibraries/require.js +2230 -0
  26. package/ExternalLibraries/signals.min.js +179 -0
  27. package/ExternalLibraries/text.js +445 -0
  28. package/ExternalLibraries/uuid.js +274 -0
  29. package/datastudio.application.mainpage.js +1502 -0
  30. package/datastudio.application.shared.js +626 -0
  31. package/datastudio.bootstrapper.js +517 -0
  32. package/fonts.css +14 -0
  33. package/nls/resx.js +1 -0
  34. package/nls/root/resx.js +22 -0
  35. package/package.json +22 -0
  36. package/scripts/application/sourceMapper.js +15 -0
  37. package/scripts/libs/adal/adal.js +720 -0
  38. package/stylesheets/main.css +8879 -0
@@ -0,0 +1,1918 @@
1
+ /*! jQuery Timepicker Addon - v1.5.5 - 2015-05-24
2
+ * http://trentrichardson.com/examples/timepicker
3
+ * Copyright (c) 2015 Trent Richardson; Licensed MIT */
4
+ (function (e) {
5
+ "function" == typeof define && define.amd
6
+ ? define(["jquery", "jquery.ui"], e)
7
+ : e(jQuery);
8
+ })(function ($) {
9
+ if ((($.ui.timepicker = $.ui.timepicker || {}), !$.ui.timepicker.version)) {
10
+ $.extend($.ui, { timepicker: { version: "1.5.5" } });
11
+ var Timepicker = function () {
12
+ (this.regional = []),
13
+ (this.regional[""] = {
14
+ currentText: "Now",
15
+ closeText: "Done",
16
+ amNames: ["AM", "A"],
17
+ pmNames: ["PM", "P"],
18
+ timeFormat: "HH:mm",
19
+ timeSuffix: "",
20
+ timeOnlyTitle: "Choose Time",
21
+ timeText: "Time",
22
+ hourText: "Hour",
23
+ minuteText: "Minute",
24
+ secondText: "Second",
25
+ millisecText: "Millisecond",
26
+ microsecText: "Microsecond",
27
+ timezoneText: "Time Zone",
28
+ isRTL: !1,
29
+ }),
30
+ (this._defaults = {
31
+ showButtonPanel: !0,
32
+ timeOnly: !1,
33
+ timeOnlyShowDate: !1,
34
+ showHour: null,
35
+ showMinute: null,
36
+ showSecond: null,
37
+ showMillisec: null,
38
+ showMicrosec: null,
39
+ showTimezone: null,
40
+ showTime: !0,
41
+ stepHour: 1,
42
+ stepMinute: 1,
43
+ stepSecond: 1,
44
+ stepMillisec: 1,
45
+ stepMicrosec: 1,
46
+ hour: 0,
47
+ minute: 0,
48
+ second: 0,
49
+ millisec: 0,
50
+ microsec: 0,
51
+ timezone: null,
52
+ hourMin: 0,
53
+ minuteMin: 0,
54
+ secondMin: 0,
55
+ millisecMin: 0,
56
+ microsecMin: 0,
57
+ hourMax: 23,
58
+ minuteMax: 59,
59
+ secondMax: 59,
60
+ millisecMax: 999,
61
+ microsecMax: 999,
62
+ minDateTime: null,
63
+ maxDateTime: null,
64
+ maxTime: null,
65
+ minTime: null,
66
+ onSelect: null,
67
+ hourGrid: 0,
68
+ minuteGrid: 0,
69
+ secondGrid: 0,
70
+ millisecGrid: 0,
71
+ microsecGrid: 0,
72
+ alwaysSetTime: !0,
73
+ separator: " ",
74
+ altFieldTimeOnly: !0,
75
+ altTimeFormat: null,
76
+ altSeparator: null,
77
+ altTimeSuffix: null,
78
+ altRedirectFocus: !0,
79
+ pickerTimeFormat: null,
80
+ pickerTimeSuffix: null,
81
+ showTimepicker: !0,
82
+ timezoneList: null,
83
+ addSliderAccess: !1,
84
+ sliderAccessArgs: null,
85
+ controlType: "slider",
86
+ oneLine: !1,
87
+ defaultValue: null,
88
+ parse: "strict",
89
+ afterInject: null,
90
+ }),
91
+ $.extend(this._defaults, this.regional[""]);
92
+ };
93
+ $.extend(Timepicker.prototype, {
94
+ $input: null,
95
+ $altInput: null,
96
+ $timeObj: null,
97
+ inst: null,
98
+ hour_slider: null,
99
+ minute_slider: null,
100
+ second_slider: null,
101
+ millisec_slider: null,
102
+ microsec_slider: null,
103
+ timezone_select: null,
104
+ maxTime: null,
105
+ minTime: null,
106
+ hour: 0,
107
+ minute: 0,
108
+ second: 0,
109
+ millisec: 0,
110
+ microsec: 0,
111
+ timezone: null,
112
+ hourMinOriginal: null,
113
+ minuteMinOriginal: null,
114
+ secondMinOriginal: null,
115
+ millisecMinOriginal: null,
116
+ microsecMinOriginal: null,
117
+ hourMaxOriginal: null,
118
+ minuteMaxOriginal: null,
119
+ secondMaxOriginal: null,
120
+ millisecMaxOriginal: null,
121
+ microsecMaxOriginal: null,
122
+ ampm: "",
123
+ formattedDate: "",
124
+ formattedTime: "",
125
+ formattedDateTime: "",
126
+ timezoneList: null,
127
+ units: ["hour", "minute", "second", "millisec", "microsec"],
128
+ support: {},
129
+ control: null,
130
+ setDefaults: function (e) {
131
+ return extendRemove(this._defaults, e || {}), this;
132
+ },
133
+ _newInst: function ($input, opts) {
134
+ var tp_inst = new Timepicker(),
135
+ inlineSettings = {},
136
+ fns = {},
137
+ overrides,
138
+ i;
139
+ for (var attrName in this._defaults)
140
+ if (this._defaults.hasOwnProperty(attrName)) {
141
+ var attrValue = $input.attr("time:" + attrName);
142
+ if (attrValue)
143
+ try {
144
+ inlineSettings[attrName] = eval(attrValue);
145
+ } catch (err) {
146
+ inlineSettings[attrName] = attrValue;
147
+ }
148
+ }
149
+ overrides = {
150
+ beforeShow: function (e, t) {
151
+ return $.isFunction(tp_inst._defaults.evnts.beforeShow)
152
+ ? tp_inst._defaults.evnts.beforeShow.call(
153
+ $input[0],
154
+ e,
155
+ t,
156
+ tp_inst
157
+ )
158
+ : void 0;
159
+ },
160
+ onChangeMonthYear: function (e, t, i) {
161
+ $.isFunction(tp_inst._defaults.evnts.onChangeMonthYear) &&
162
+ tp_inst._defaults.evnts.onChangeMonthYear.call(
163
+ $input[0],
164
+ e,
165
+ t,
166
+ i,
167
+ tp_inst
168
+ );
169
+ },
170
+ onClose: function (e, t) {
171
+ tp_inst.timeDefined === !0 &&
172
+ "" !== $input.val() &&
173
+ tp_inst._updateDateTime(t),
174
+ $.isFunction(tp_inst._defaults.evnts.onClose) &&
175
+ tp_inst._defaults.evnts.onClose.call($input[0], e, t, tp_inst);
176
+ },
177
+ };
178
+ for (i in overrides)
179
+ overrides.hasOwnProperty(i) &&
180
+ (fns[i] = opts[i] || this._defaults[i] || null);
181
+ (tp_inst._defaults = $.extend(
182
+ {},
183
+ this._defaults,
184
+ inlineSettings,
185
+ opts,
186
+ overrides,
187
+ { evnts: fns, timepicker: tp_inst }
188
+ )),
189
+ (tp_inst.amNames = $.map(tp_inst._defaults.amNames, function (e) {
190
+ return e.toUpperCase();
191
+ })),
192
+ (tp_inst.pmNames = $.map(tp_inst._defaults.pmNames, function (e) {
193
+ return e.toUpperCase();
194
+ })),
195
+ (tp_inst.support = detectSupport(
196
+ tp_inst._defaults.timeFormat +
197
+ (tp_inst._defaults.pickerTimeFormat
198
+ ? tp_inst._defaults.pickerTimeFormat
199
+ : "") +
200
+ (tp_inst._defaults.altTimeFormat
201
+ ? tp_inst._defaults.altTimeFormat
202
+ : "")
203
+ )),
204
+ "string" == typeof tp_inst._defaults.controlType
205
+ ? ("slider" === tp_inst._defaults.controlType &&
206
+ $.ui.slider === void 0 &&
207
+ (tp_inst._defaults.controlType = "select"),
208
+ (tp_inst.control =
209
+ tp_inst._controls[tp_inst._defaults.controlType]))
210
+ : (tp_inst.control = tp_inst._defaults.controlType);
211
+ var timezoneList = [
212
+ -720, -660, -600, -570, -540, -480, -420, -360, -300, -270, -240,
213
+ -210, -180, -120, -60, 0, 60, 120, 180, 210, 240, 270, 300, 330, 345,
214
+ 360, 390, 420, 480, 525, 540, 570, 600, 630, 660, 690, 720, 765, 780,
215
+ 840,
216
+ ];
217
+ null !== tp_inst._defaults.timezoneList &&
218
+ (timezoneList = tp_inst._defaults.timezoneList);
219
+ var tzl = timezoneList.length,
220
+ tzi = 0,
221
+ tzv = null;
222
+ if (tzl > 0 && "object" != typeof timezoneList[0])
223
+ for (; tzl > tzi; tzi++)
224
+ (tzv = timezoneList[tzi]),
225
+ (timezoneList[tzi] = {
226
+ value: tzv,
227
+ label: $.timepicker.timezoneOffsetString(
228
+ tzv,
229
+ tp_inst.support.iso8601
230
+ ),
231
+ });
232
+ return (
233
+ (tp_inst._defaults.timezoneList = timezoneList),
234
+ (tp_inst.timezone =
235
+ null !== tp_inst._defaults.timezone
236
+ ? $.timepicker.timezoneOffsetNumber(tp_inst._defaults.timezone)
237
+ : -1 * new Date().getTimezoneOffset()),
238
+ (tp_inst.hour =
239
+ tp_inst._defaults.hour < tp_inst._defaults.hourMin
240
+ ? tp_inst._defaults.hourMin
241
+ : tp_inst._defaults.hour > tp_inst._defaults.hourMax
242
+ ? tp_inst._defaults.hourMax
243
+ : tp_inst._defaults.hour),
244
+ (tp_inst.minute =
245
+ tp_inst._defaults.minute < tp_inst._defaults.minuteMin
246
+ ? tp_inst._defaults.minuteMin
247
+ : tp_inst._defaults.minute > tp_inst._defaults.minuteMax
248
+ ? tp_inst._defaults.minuteMax
249
+ : tp_inst._defaults.minute),
250
+ (tp_inst.second =
251
+ tp_inst._defaults.second < tp_inst._defaults.secondMin
252
+ ? tp_inst._defaults.secondMin
253
+ : tp_inst._defaults.second > tp_inst._defaults.secondMax
254
+ ? tp_inst._defaults.secondMax
255
+ : tp_inst._defaults.second),
256
+ (tp_inst.millisec =
257
+ tp_inst._defaults.millisec < tp_inst._defaults.millisecMin
258
+ ? tp_inst._defaults.millisecMin
259
+ : tp_inst._defaults.millisec > tp_inst._defaults.millisecMax
260
+ ? tp_inst._defaults.millisecMax
261
+ : tp_inst._defaults.millisec),
262
+ (tp_inst.microsec =
263
+ tp_inst._defaults.microsec < tp_inst._defaults.microsecMin
264
+ ? tp_inst._defaults.microsecMin
265
+ : tp_inst._defaults.microsec > tp_inst._defaults.microsecMax
266
+ ? tp_inst._defaults.microsecMax
267
+ : tp_inst._defaults.microsec),
268
+ (tp_inst.ampm = ""),
269
+ (tp_inst.$input = $input),
270
+ tp_inst._defaults.altField &&
271
+ ((tp_inst.$altInput = $(tp_inst._defaults.altField)),
272
+ tp_inst._defaults.altRedirectFocus === !0 &&
273
+ tp_inst.$altInput.css({ cursor: "pointer" }).focus(function () {
274
+ $input.trigger("focus");
275
+ })),
276
+ (0 === tp_inst._defaults.minDate ||
277
+ 0 === tp_inst._defaults.minDateTime) &&
278
+ (tp_inst._defaults.minDate = new Date()),
279
+ (0 === tp_inst._defaults.maxDate ||
280
+ 0 === tp_inst._defaults.maxDateTime) &&
281
+ (tp_inst._defaults.maxDate = new Date()),
282
+ void 0 !== tp_inst._defaults.minDate &&
283
+ tp_inst._defaults.minDate instanceof Date &&
284
+ (tp_inst._defaults.minDateTime = new Date(
285
+ tp_inst._defaults.minDate.getTime()
286
+ )),
287
+ void 0 !== tp_inst._defaults.minDateTime &&
288
+ tp_inst._defaults.minDateTime instanceof Date &&
289
+ (tp_inst._defaults.minDate = new Date(
290
+ tp_inst._defaults.minDateTime.getTime()
291
+ )),
292
+ void 0 !== tp_inst._defaults.maxDate &&
293
+ tp_inst._defaults.maxDate instanceof Date &&
294
+ (tp_inst._defaults.maxDateTime = new Date(
295
+ tp_inst._defaults.maxDate.getTime()
296
+ )),
297
+ void 0 !== tp_inst._defaults.maxDateTime &&
298
+ tp_inst._defaults.maxDateTime instanceof Date &&
299
+ (tp_inst._defaults.maxDate = new Date(
300
+ tp_inst._defaults.maxDateTime.getTime()
301
+ )),
302
+ tp_inst.$input.bind("focus", function () {
303
+ tp_inst._onFocus();
304
+ }),
305
+ tp_inst
306
+ );
307
+ },
308
+ _addTimePicker: function (e) {
309
+ var t = $.trim(
310
+ this.$altInput && this._defaults.altFieldTimeOnly
311
+ ? this.$input.val() + " " + this.$altInput.val()
312
+ : this.$input.val()
313
+ );
314
+ (this.timeDefined = this._parseTime(t)),
315
+ this._limitMinMaxDateTime(e, !1),
316
+ this._injectTimePicker(),
317
+ this._afterInject();
318
+ },
319
+ _parseTime: function (e, t) {
320
+ if (
321
+ (this.inst || (this.inst = $.datepicker._getInst(this.$input[0])),
322
+ t || !this._defaults.timeOnly)
323
+ ) {
324
+ var i = $.datepicker._get(this.inst, "dateFormat");
325
+ try {
326
+ var s = parseDateTimeInternal(
327
+ i,
328
+ this._defaults.timeFormat,
329
+ e,
330
+ $.datepicker._getFormatConfig(this.inst),
331
+ this._defaults
332
+ );
333
+ if (!s.timeObj) return !1;
334
+ $.extend(this, s.timeObj);
335
+ } catch (a) {
336
+ return (
337
+ $.timepicker.log(
338
+ "Error parsing the date/time string: " +
339
+ a +
340
+ "\ndate/time string = " +
341
+ e +
342
+ "\ntimeFormat = " +
343
+ this._defaults.timeFormat +
344
+ "\ndateFormat = " +
345
+ i
346
+ ),
347
+ !1
348
+ );
349
+ }
350
+ return !0;
351
+ }
352
+ var n = $.datepicker.parseTime(
353
+ this._defaults.timeFormat,
354
+ e,
355
+ this._defaults
356
+ );
357
+ return n ? ($.extend(this, n), !0) : !1;
358
+ },
359
+ _afterInject: function () {
360
+ var e = this.inst.settings;
361
+ $.isFunction(e.afterInject) && e.afterInject.call(this);
362
+ },
363
+ _injectTimePicker: function () {
364
+ var e = this.inst.dpDiv,
365
+ t = this.inst.settings,
366
+ i = this,
367
+ s = "",
368
+ a = "",
369
+ n = null,
370
+ r = {},
371
+ l = {},
372
+ o = null,
373
+ c = 0,
374
+ u = 0;
375
+ if (0 === e.find("div.ui-timepicker-div").length && t.showTimepicker) {
376
+ var m = " ui_tpicker_unit_hide",
377
+ d =
378
+ '<div class="ui-timepicker-div' +
379
+ (t.isRTL ? " ui-timepicker-rtl" : "") +
380
+ (t.oneLine && "select" === t.controlType
381
+ ? " ui-timepicker-oneLine"
382
+ : "") +
383
+ '"><dl>' +
384
+ '<dt class="ui_tpicker_time_label' +
385
+ (t.showTime ? "" : m) +
386
+ '">' +
387
+ t.timeText +
388
+ "</dt>" +
389
+ '<dd class="ui_tpicker_time ' +
390
+ (t.showTime ? "" : m) +
391
+ '"></dd>';
392
+ for (c = 0, u = this.units.length; u > c; c++) {
393
+ if (
394
+ ((s = this.units[c]),
395
+ (a = s.substr(0, 1).toUpperCase() + s.substr(1)),
396
+ (n = null !== t["show" + a] ? t["show" + a] : this.support[s]),
397
+ (r[s] = parseInt(
398
+ t[s + "Max"] - ((t[s + "Max"] - t[s + "Min"]) % t["step" + a]),
399
+ 10
400
+ )),
401
+ (l[s] = 0),
402
+ (d +=
403
+ '<dt class="ui_tpicker_' +
404
+ s +
405
+ "_label" +
406
+ (n ? "" : m) +
407
+ '">' +
408
+ t[s + "Text"] +
409
+ "</dt>" +
410
+ '<dd class="ui_tpicker_' +
411
+ s +
412
+ (n ? "" : m) +
413
+ '"><div class="ui_tpicker_' +
414
+ s +
415
+ "_slider" +
416
+ (n ? "" : m) +
417
+ '"></div>'),
418
+ n && t[s + "Grid"] > 0)
419
+ ) {
420
+ if (
421
+ ((d +=
422
+ '<div style="padding-left: 1px"><table class="ui-tpicker-grid-label"><tr>'),
423
+ "hour" === s)
424
+ )
425
+ for (
426
+ var h = t[s + "Min"];
427
+ r[s] >= h;
428
+ h += parseInt(t[s + "Grid"], 10)
429
+ ) {
430
+ l[s]++;
431
+ var p = $.datepicker.formatTime(
432
+ this.support.ampm ? "hht" : "HH",
433
+ { hour: h },
434
+ t
435
+ );
436
+ d += '<td data-for="' + s + '">' + p + "</td>";
437
+ }
438
+ else
439
+ for (
440
+ var _ = t[s + "Min"];
441
+ r[s] >= _;
442
+ _ += parseInt(t[s + "Grid"], 10)
443
+ )
444
+ l[s]++,
445
+ (d +=
446
+ '<td data-for="' +
447
+ s +
448
+ '">' +
449
+ (10 > _ ? "0" : "") +
450
+ _ +
451
+ "</td>");
452
+ d += "</tr></table></div>";
453
+ }
454
+ d += "</dd>";
455
+ }
456
+ var f =
457
+ null !== t.showTimezone ? t.showTimezone : this.support.timezone;
458
+ (d +=
459
+ '<dt class="ui_tpicker_timezone_label' +
460
+ (f ? "" : m) +
461
+ '">' +
462
+ t.timezoneText +
463
+ "</dt>"),
464
+ (d += '<dd class="ui_tpicker_timezone' + (f ? "" : m) + '"></dd>'),
465
+ (d += "</dl></div>");
466
+ var g = $(d);
467
+ for (
468
+ t.timeOnly === !0 &&
469
+ (g.prepend(
470
+ '<div class="ui-widget-header ui-helper-clearfix ui-corner-all"><div class="ui-datepicker-title">' +
471
+ t.timeOnlyTitle +
472
+ "</div>" +
473
+ "</div>"
474
+ ),
475
+ e.find(".ui-datepicker-header, .ui-datepicker-calendar").hide()),
476
+ c = 0,
477
+ u = i.units.length;
478
+ u > c;
479
+ c++
480
+ )
481
+ (s = i.units[c]),
482
+ (a = s.substr(0, 1).toUpperCase() + s.substr(1)),
483
+ (n = null !== t["show" + a] ? t["show" + a] : this.support[s]),
484
+ (i[s + "_slider"] = i.control.create(
485
+ i,
486
+ g.find(".ui_tpicker_" + s + "_slider"),
487
+ s,
488
+ i[s],
489
+ t[s + "Min"],
490
+ r[s],
491
+ t["step" + a]
492
+ )),
493
+ n &&
494
+ t[s + "Grid"] > 0 &&
495
+ ((o = (100 * l[s] * t[s + "Grid"]) / (r[s] - t[s + "Min"])),
496
+ g
497
+ .find(".ui_tpicker_" + s + " table")
498
+ .css({
499
+ width: o + "%",
500
+ marginLeft: t.isRTL ? "0" : o / (-2 * l[s]) + "%",
501
+ marginRight: t.isRTL ? o / (-2 * l[s]) + "%" : "0",
502
+ borderCollapse: "collapse",
503
+ })
504
+ .find("td")
505
+ .click(function () {
506
+ var e = $(this),
507
+ t = e.html(),
508
+ a = parseInt(t.replace(/[^0-9]/g), 10),
509
+ n = t.replace(/[^apm]/gi),
510
+ r = e.data("for");
511
+ "hour" === r &&
512
+ (-1 !== n.indexOf("p") && 12 > a
513
+ ? (a += 12)
514
+ : -1 !== n.indexOf("a") && 12 === a && (a = 0)),
515
+ i.control.value(i, i[r + "_slider"], s, a),
516
+ i._onTimeChange(),
517
+ i._onSelectHandler();
518
+ })
519
+ .css({
520
+ cursor: "pointer",
521
+ width: 100 / l[s] + "%",
522
+ textAlign: "center",
523
+ overflow: "hidden",
524
+ }));
525
+ if (
526
+ ((this.timezone_select = g
527
+ .find(".ui_tpicker_timezone")
528
+ .append("<select></select>")
529
+ .find("select")),
530
+ $.fn.append.apply(
531
+ this.timezone_select,
532
+ $.map(t.timezoneList, function (e) {
533
+ return $("<option />")
534
+ .val("object" == typeof e ? e.value : e)
535
+ .text("object" == typeof e ? e.label : e);
536
+ })
537
+ ),
538
+ this.timezone !== void 0 &&
539
+ null !== this.timezone &&
540
+ "" !== this.timezone)
541
+ ) {
542
+ var M =
543
+ -1 *
544
+ new Date(
545
+ this.inst.selectedYear,
546
+ this.inst.selectedMonth,
547
+ this.inst.selectedDay,
548
+ 12
549
+ ).getTimezoneOffset();
550
+ M === this.timezone
551
+ ? selectLocalTimezone(i)
552
+ : this.timezone_select.val(this.timezone);
553
+ } else
554
+ this.hour !== void 0 && null !== this.hour && "" !== this.hour
555
+ ? this.timezone_select.val(t.timezone)
556
+ : selectLocalTimezone(i);
557
+ this.timezone_select.change(function () {
558
+ i._onTimeChange(), i._onSelectHandler(), i._afterInject();
559
+ });
560
+ var v = e.find(".ui-datepicker-buttonpane");
561
+ if (
562
+ (v.length ? v.before(g) : e.append(g),
563
+ (this.$timeObj = g.find(".ui_tpicker_time")),
564
+ null !== this.inst)
565
+ ) {
566
+ var k = this.timeDefined;
567
+ this._onTimeChange(), (this.timeDefined = k);
568
+ }
569
+ if (this._defaults.addSliderAccess) {
570
+ var T = this._defaults.sliderAccessArgs,
571
+ D = this._defaults.isRTL;
572
+ (T.isRTL = D),
573
+ setTimeout(function () {
574
+ if (0 === g.find(".ui-slider-access").length) {
575
+ g.find(".ui-slider:visible").sliderAccess(T);
576
+ var e = g.find(".ui-slider-access:eq(0)").outerWidth(!0);
577
+ e &&
578
+ g.find("table:visible").each(function () {
579
+ var t = $(this),
580
+ i = t.outerWidth(),
581
+ s = (
582
+ "" + t.css(D ? "marginRight" : "marginLeft")
583
+ ).replace("%", ""),
584
+ a = i - e,
585
+ n = (s * a) / i + "%",
586
+ r = { width: a, marginRight: 0, marginLeft: 0 };
587
+ (r[D ? "marginRight" : "marginLeft"] = n), t.css(r);
588
+ });
589
+ }
590
+ }, 10);
591
+ }
592
+ i._limitMinMaxDateTime(this.inst, !0);
593
+ }
594
+ },
595
+ _limitMinMaxDateTime: function (e, t) {
596
+ var i = this._defaults,
597
+ s = new Date(e.selectedYear, e.selectedMonth, e.selectedDay);
598
+ if (this._defaults.showTimepicker) {
599
+ if (
600
+ null !== $.datepicker._get(e, "minDateTime") &&
601
+ void 0 !== $.datepicker._get(e, "minDateTime") &&
602
+ s
603
+ ) {
604
+ var a = $.datepicker._get(e, "minDateTime"),
605
+ n = new Date(
606
+ a.getFullYear(),
607
+ a.getMonth(),
608
+ a.getDate(),
609
+ 0,
610
+ 0,
611
+ 0,
612
+ 0
613
+ );
614
+ (null === this.hourMinOriginal ||
615
+ null === this.minuteMinOriginal ||
616
+ null === this.secondMinOriginal ||
617
+ null === this.millisecMinOriginal ||
618
+ null === this.microsecMinOriginal) &&
619
+ ((this.hourMinOriginal = i.hourMin),
620
+ (this.minuteMinOriginal = i.minuteMin),
621
+ (this.secondMinOriginal = i.secondMin),
622
+ (this.millisecMinOriginal = i.millisecMin),
623
+ (this.microsecMinOriginal = i.microsecMin)),
624
+ e.settings.timeOnly || n.getTime() === s.getTime()
625
+ ? ((this._defaults.hourMin = a.getHours()),
626
+ this.hour <= this._defaults.hourMin
627
+ ? ((this.hour = this._defaults.hourMin),
628
+ (this._defaults.minuteMin = a.getMinutes()),
629
+ this.minute <= this._defaults.minuteMin
630
+ ? ((this.minute = this._defaults.minuteMin),
631
+ (this._defaults.secondMin = a.getSeconds()),
632
+ this.second <= this._defaults.secondMin
633
+ ? ((this.second = this._defaults.secondMin),
634
+ (this._defaults.millisecMin =
635
+ a.getMilliseconds()),
636
+ this.millisec <= this._defaults.millisecMin
637
+ ? ((this.millisec = this._defaults.millisecMin),
638
+ (this._defaults.microsecMin =
639
+ a.getMicroseconds()))
640
+ : (this.microsec < this._defaults.microsecMin &&
641
+ (this.microsec =
642
+ this._defaults.microsecMin),
643
+ (this._defaults.microsecMin =
644
+ this.microsecMinOriginal)))
645
+ : ((this._defaults.millisecMin =
646
+ this.millisecMinOriginal),
647
+ (this._defaults.microsecMin =
648
+ this.microsecMinOriginal)))
649
+ : ((this._defaults.secondMin = this.secondMinOriginal),
650
+ (this._defaults.millisecMin =
651
+ this.millisecMinOriginal),
652
+ (this._defaults.microsecMin =
653
+ this.microsecMinOriginal)))
654
+ : ((this._defaults.minuteMin = this.minuteMinOriginal),
655
+ (this._defaults.secondMin = this.secondMinOriginal),
656
+ (this._defaults.millisecMin = this.millisecMinOriginal),
657
+ (this._defaults.microsecMin = this.microsecMinOriginal)))
658
+ : ((this._defaults.hourMin = this.hourMinOriginal),
659
+ (this._defaults.minuteMin = this.minuteMinOriginal),
660
+ (this._defaults.secondMin = this.secondMinOriginal),
661
+ (this._defaults.millisecMin = this.millisecMinOriginal),
662
+ (this._defaults.microsecMin = this.microsecMinOriginal));
663
+ }
664
+ if (
665
+ null !== $.datepicker._get(e, "maxDateTime") &&
666
+ void 0 !== $.datepicker._get(e, "maxDateTime") &&
667
+ s
668
+ ) {
669
+ var r = $.datepicker._get(e, "maxDateTime"),
670
+ l = new Date(
671
+ r.getFullYear(),
672
+ r.getMonth(),
673
+ r.getDate(),
674
+ 0,
675
+ 0,
676
+ 0,
677
+ 0
678
+ );
679
+ (null === this.hourMaxOriginal ||
680
+ null === this.minuteMaxOriginal ||
681
+ null === this.secondMaxOriginal ||
682
+ null === this.millisecMaxOriginal) &&
683
+ ((this.hourMaxOriginal = i.hourMax),
684
+ (this.minuteMaxOriginal = i.minuteMax),
685
+ (this.secondMaxOriginal = i.secondMax),
686
+ (this.millisecMaxOriginal = i.millisecMax),
687
+ (this.microsecMaxOriginal = i.microsecMax)),
688
+ e.settings.timeOnly || l.getTime() === s.getTime()
689
+ ? ((this._defaults.hourMax = r.getHours()),
690
+ this.hour >= this._defaults.hourMax
691
+ ? ((this.hour = this._defaults.hourMax),
692
+ (this._defaults.minuteMax = r.getMinutes()),
693
+ this.minute >= this._defaults.minuteMax
694
+ ? ((this.minute = this._defaults.minuteMax),
695
+ (this._defaults.secondMax = r.getSeconds()),
696
+ this.second >= this._defaults.secondMax
697
+ ? ((this.second = this._defaults.secondMax),
698
+ (this._defaults.millisecMax =
699
+ r.getMilliseconds()),
700
+ this.millisec >= this._defaults.millisecMax
701
+ ? ((this.millisec = this._defaults.millisecMax),
702
+ (this._defaults.microsecMax =
703
+ r.getMicroseconds()))
704
+ : (this.microsec > this._defaults.microsecMax &&
705
+ (this.microsec =
706
+ this._defaults.microsecMax),
707
+ (this._defaults.microsecMax =
708
+ this.microsecMaxOriginal)))
709
+ : ((this._defaults.millisecMax =
710
+ this.millisecMaxOriginal),
711
+ (this._defaults.microsecMax =
712
+ this.microsecMaxOriginal)))
713
+ : ((this._defaults.secondMax = this.secondMaxOriginal),
714
+ (this._defaults.millisecMax =
715
+ this.millisecMaxOriginal),
716
+ (this._defaults.microsecMax =
717
+ this.microsecMaxOriginal)))
718
+ : ((this._defaults.minuteMax = this.minuteMaxOriginal),
719
+ (this._defaults.secondMax = this.secondMaxOriginal),
720
+ (this._defaults.millisecMax = this.millisecMaxOriginal),
721
+ (this._defaults.microsecMax = this.microsecMaxOriginal)))
722
+ : ((this._defaults.hourMax = this.hourMaxOriginal),
723
+ (this._defaults.minuteMax = this.minuteMaxOriginal),
724
+ (this._defaults.secondMax = this.secondMaxOriginal),
725
+ (this._defaults.millisecMax = this.millisecMaxOriginal),
726
+ (this._defaults.microsecMax = this.microsecMaxOriginal));
727
+ }
728
+ if (null !== e.settings.minTime) {
729
+ var o = new Date("01/01/1970 " + e.settings.minTime);
730
+ this.hour < o.getHours()
731
+ ? ((this.hour = this._defaults.hourMin = o.getHours()),
732
+ (this.minute = this._defaults.minuteMin = o.getMinutes()))
733
+ : this.hour === o.getHours() && this.minute < o.getMinutes()
734
+ ? (this.minute = this._defaults.minuteMin = o.getMinutes())
735
+ : this._defaults.hourMin < o.getHours()
736
+ ? ((this._defaults.hourMin = o.getHours()),
737
+ (this._defaults.minuteMin = o.getMinutes()))
738
+ : (this._defaults.minuteMin =
739
+ (this._defaults.hourMin === o.getHours()) === this.hour &&
740
+ this._defaults.minuteMin < o.getMinutes()
741
+ ? o.getMinutes()
742
+ : 0);
743
+ }
744
+ if (null !== e.settings.maxTime) {
745
+ var c = new Date("01/01/1970 " + e.settings.maxTime);
746
+ this.hour > c.getHours()
747
+ ? ((this.hour = this._defaults.hourMax = c.getHours()),
748
+ (this.minute = this._defaults.minuteMax = c.getMinutes()))
749
+ : this.hour === c.getHours() && this.minute > c.getMinutes()
750
+ ? (this.minute = this._defaults.minuteMax = c.getMinutes())
751
+ : this._defaults.hourMax > c.getHours()
752
+ ? ((this._defaults.hourMax = c.getHours()),
753
+ (this._defaults.minuteMax = c.getMinutes()))
754
+ : (this._defaults.minuteMax =
755
+ (this._defaults.hourMax === c.getHours()) === this.hour &&
756
+ this._defaults.minuteMax > c.getMinutes()
757
+ ? c.getMinutes()
758
+ : 59);
759
+ }
760
+ if (void 0 !== t && t === !0) {
761
+ var u = parseInt(
762
+ this._defaults.hourMax -
763
+ ((this._defaults.hourMax - this._defaults.hourMin) %
764
+ this._defaults.stepHour),
765
+ 10
766
+ ),
767
+ m = parseInt(
768
+ this._defaults.minuteMax -
769
+ ((this._defaults.minuteMax - this._defaults.minuteMin) %
770
+ this._defaults.stepMinute),
771
+ 10
772
+ ),
773
+ d = parseInt(
774
+ this._defaults.secondMax -
775
+ ((this._defaults.secondMax - this._defaults.secondMin) %
776
+ this._defaults.stepSecond),
777
+ 10
778
+ ),
779
+ h = parseInt(
780
+ this._defaults.millisecMax -
781
+ ((this._defaults.millisecMax - this._defaults.millisecMin) %
782
+ this._defaults.stepMillisec),
783
+ 10
784
+ ),
785
+ p = parseInt(
786
+ this._defaults.microsecMax -
787
+ ((this._defaults.microsecMax - this._defaults.microsecMin) %
788
+ this._defaults.stepMicrosec),
789
+ 10
790
+ );
791
+ this.hour_slider &&
792
+ (this.control.options(this, this.hour_slider, "hour", {
793
+ min: this._defaults.hourMin,
794
+ max: u,
795
+ step: this._defaults.stepHour,
796
+ }),
797
+ this.control.value(
798
+ this,
799
+ this.hour_slider,
800
+ "hour",
801
+ this.hour - (this.hour % this._defaults.stepHour)
802
+ )),
803
+ this.minute_slider &&
804
+ (this.control.options(this, this.minute_slider, "minute", {
805
+ min: this._defaults.minuteMin,
806
+ max: m,
807
+ step: this._defaults.stepMinute,
808
+ }),
809
+ this.control.value(
810
+ this,
811
+ this.minute_slider,
812
+ "minute",
813
+ this.minute - (this.minute % this._defaults.stepMinute)
814
+ )),
815
+ this.second_slider &&
816
+ (this.control.options(this, this.second_slider, "second", {
817
+ min: this._defaults.secondMin,
818
+ max: d,
819
+ step: this._defaults.stepSecond,
820
+ }),
821
+ this.control.value(
822
+ this,
823
+ this.second_slider,
824
+ "second",
825
+ this.second - (this.second % this._defaults.stepSecond)
826
+ )),
827
+ this.millisec_slider &&
828
+ (this.control.options(this, this.millisec_slider, "millisec", {
829
+ min: this._defaults.millisecMin,
830
+ max: h,
831
+ step: this._defaults.stepMillisec,
832
+ }),
833
+ this.control.value(
834
+ this,
835
+ this.millisec_slider,
836
+ "millisec",
837
+ this.millisec - (this.millisec % this._defaults.stepMillisec)
838
+ )),
839
+ this.microsec_slider &&
840
+ (this.control.options(this, this.microsec_slider, "microsec", {
841
+ min: this._defaults.microsecMin,
842
+ max: p,
843
+ step: this._defaults.stepMicrosec,
844
+ }),
845
+ this.control.value(
846
+ this,
847
+ this.microsec_slider,
848
+ "microsec",
849
+ this.microsec - (this.microsec % this._defaults.stepMicrosec)
850
+ ));
851
+ }
852
+ }
853
+ },
854
+ _onTimeChange: function () {
855
+ if (this._defaults.showTimepicker) {
856
+ var e = this.hour_slider
857
+ ? this.control.value(this, this.hour_slider, "hour")
858
+ : !1,
859
+ t = this.minute_slider
860
+ ? this.control.value(this, this.minute_slider, "minute")
861
+ : !1,
862
+ i = this.second_slider
863
+ ? this.control.value(this, this.second_slider, "second")
864
+ : !1,
865
+ s = this.millisec_slider
866
+ ? this.control.value(this, this.millisec_slider, "millisec")
867
+ : !1,
868
+ a = this.microsec_slider
869
+ ? this.control.value(this, this.microsec_slider, "microsec")
870
+ : !1,
871
+ n = this.timezone_select ? this.timezone_select.val() : !1,
872
+ r = this._defaults,
873
+ l = r.pickerTimeFormat || r.timeFormat,
874
+ o = r.pickerTimeSuffix || r.timeSuffix;
875
+ "object" == typeof e && (e = !1),
876
+ "object" == typeof t && (t = !1),
877
+ "object" == typeof i && (i = !1),
878
+ "object" == typeof s && (s = !1),
879
+ "object" == typeof a && (a = !1),
880
+ "object" == typeof n && (n = !1),
881
+ e !== !1 && (e = parseInt(e, 10)),
882
+ t !== !1 && (t = parseInt(t, 10)),
883
+ i !== !1 && (i = parseInt(i, 10)),
884
+ s !== !1 && (s = parseInt(s, 10)),
885
+ a !== !1 && (a = parseInt(a, 10)),
886
+ n !== !1 && (n = "" + n);
887
+ var c = r[12 > e ? "amNames" : "pmNames"][0],
888
+ u =
889
+ e !== parseInt(this.hour, 10) ||
890
+ t !== parseInt(this.minute, 10) ||
891
+ i !== parseInt(this.second, 10) ||
892
+ s !== parseInt(this.millisec, 10) ||
893
+ a !== parseInt(this.microsec, 10) ||
894
+ (this.ampm.length > 0 &&
895
+ 12 > e !=
896
+ (-1 !== $.inArray(this.ampm.toUpperCase(), this.amNames))) ||
897
+ (null !== this.timezone && n !== "" + this.timezone);
898
+ u &&
899
+ (e !== !1 && (this.hour = e),
900
+ t !== !1 && (this.minute = t),
901
+ i !== !1 && (this.second = i),
902
+ s !== !1 && (this.millisec = s),
903
+ a !== !1 && (this.microsec = a),
904
+ n !== !1 && (this.timezone = n),
905
+ this.inst || (this.inst = $.datepicker._getInst(this.$input[0])),
906
+ this._limitMinMaxDateTime(this.inst, !0)),
907
+ this.support.ampm && (this.ampm = c),
908
+ (this.formattedTime = $.datepicker.formatTime(
909
+ r.timeFormat,
910
+ this,
911
+ r
912
+ )),
913
+ this.$timeObj &&
914
+ (l === r.timeFormat
915
+ ? this.$timeObj.text(this.formattedTime + o)
916
+ : this.$timeObj.text($.datepicker.formatTime(l, this, r) + o)),
917
+ (this.timeDefined = !0),
918
+ u && this._updateDateTime();
919
+ }
920
+ },
921
+ _onSelectHandler: function () {
922
+ var e = this._defaults.onSelect || this.inst.settings.onSelect,
923
+ t = this.$input ? this.$input[0] : null;
924
+ e && t && e.apply(t, [this.formattedDateTime, this]);
925
+ },
926
+ _updateDateTime: function (e) {
927
+ e = this.inst || e;
928
+ var t =
929
+ e.currentYear > 0
930
+ ? new Date(e.currentYear, e.currentMonth, e.currentDay)
931
+ : new Date(e.selectedYear, e.selectedMonth, e.selectedDay),
932
+ i = $.datepicker._daylightSavingAdjust(t),
933
+ s = $.datepicker._get(e, "dateFormat"),
934
+ a = $.datepicker._getFormatConfig(e),
935
+ n = null !== i && this.timeDefined;
936
+ this.formattedDate = $.datepicker.formatDate(
937
+ s,
938
+ null === i ? new Date() : i,
939
+ a
940
+ );
941
+ var r = this.formattedDate;
942
+ if (
943
+ ("" === e.lastVal &&
944
+ ((e.currentYear = e.selectedYear),
945
+ (e.currentMonth = e.selectedMonth),
946
+ (e.currentDay = e.selectedDay)),
947
+ this._defaults.timeOnly === !0 &&
948
+ this._defaults.timeOnlyShowDate === !1
949
+ ? (r = this.formattedTime)
950
+ : ((this._defaults.timeOnly !== !0 &&
951
+ (this._defaults.alwaysSetTime || n)) ||
952
+ (this._defaults.timeOnly === !0 &&
953
+ this._defaults.timeOnlyShowDate === !0)) &&
954
+ (r +=
955
+ this._defaults.separator +
956
+ this.formattedTime +
957
+ this._defaults.timeSuffix),
958
+ (this.formattedDateTime = r),
959
+ this._defaults.showTimepicker)
960
+ )
961
+ if (
962
+ this.$altInput &&
963
+ this._defaults.timeOnly === !1 &&
964
+ this._defaults.altFieldTimeOnly === !0
965
+ )
966
+ this.$altInput.val(this.formattedTime),
967
+ this.$input.val(this.formattedDate);
968
+ else if (this.$altInput) {
969
+ this.$input.val(r);
970
+ var l = "",
971
+ o =
972
+ null !== this._defaults.altSeparator
973
+ ? this._defaults.altSeparator
974
+ : this._defaults.separator,
975
+ c =
976
+ null !== this._defaults.altTimeSuffix
977
+ ? this._defaults.altTimeSuffix
978
+ : this._defaults.timeSuffix;
979
+ this._defaults.timeOnly ||
980
+ ((l = this._defaults.altFormat
981
+ ? $.datepicker.formatDate(
982
+ this._defaults.altFormat,
983
+ null === i ? new Date() : i,
984
+ a
985
+ )
986
+ : this.formattedDate),
987
+ l && (l += o)),
988
+ (l +=
989
+ null !== this._defaults.altTimeFormat
990
+ ? $.datepicker.formatTime(
991
+ this._defaults.altTimeFormat,
992
+ this,
993
+ this._defaults
994
+ ) + c
995
+ : this.formattedTime + c),
996
+ this.$altInput.val(l);
997
+ } else this.$input.val(r);
998
+ else this.$input.val(this.formattedDate);
999
+ this.$input.trigger("change");
1000
+ },
1001
+ _onFocus: function () {
1002
+ if (!this.$input.val() && this._defaults.defaultValue) {
1003
+ this.$input.val(this._defaults.defaultValue);
1004
+ var e = $.datepicker._getInst(this.$input.get(0)),
1005
+ t = $.datepicker._get(e, "timepicker");
1006
+ if (t && t._defaults.timeOnly && e.input.val() !== e.lastVal)
1007
+ try {
1008
+ $.datepicker._updateDatepicker(e);
1009
+ } catch (i) {
1010
+ $.timepicker.log(i);
1011
+ }
1012
+ }
1013
+ },
1014
+ _controls: {
1015
+ slider: {
1016
+ create: function (e, t, i, s, a, n, r) {
1017
+ var l = e._defaults.isRTL;
1018
+ return t.prop("slide", null).slider({
1019
+ orientation: "horizontal",
1020
+ value: l ? -1 * s : s,
1021
+ min: l ? -1 * n : a,
1022
+ max: l ? -1 * a : n,
1023
+ step: r,
1024
+ slide: function (t, s) {
1025
+ e.control.value(e, $(this), i, l ? -1 * s.value : s.value),
1026
+ e._onTimeChange();
1027
+ },
1028
+ stop: function () {
1029
+ e._onSelectHandler();
1030
+ },
1031
+ });
1032
+ },
1033
+ options: function (e, t, i, s, a) {
1034
+ if (e._defaults.isRTL) {
1035
+ if ("string" == typeof s)
1036
+ return "min" === s || "max" === s
1037
+ ? void 0 !== a
1038
+ ? t.slider(s, -1 * a)
1039
+ : Math.abs(t.slider(s))
1040
+ : t.slider(s);
1041
+ var n = s.min,
1042
+ r = s.max;
1043
+ return (
1044
+ (s.min = s.max = null),
1045
+ void 0 !== n && (s.max = -1 * n),
1046
+ void 0 !== r && (s.min = -1 * r),
1047
+ t.slider(s)
1048
+ );
1049
+ }
1050
+ return "string" == typeof s && void 0 !== a
1051
+ ? t.slider(s, a)
1052
+ : t.slider(s);
1053
+ },
1054
+ value: function (e, t, i, s) {
1055
+ return e._defaults.isRTL
1056
+ ? void 0 !== s
1057
+ ? t.slider("value", -1 * s)
1058
+ : Math.abs(t.slider("value"))
1059
+ : void 0 !== s
1060
+ ? t.slider("value", s)
1061
+ : t.slider("value");
1062
+ },
1063
+ },
1064
+ select: {
1065
+ create: function (e, t, i, s, a, n, r) {
1066
+ for (
1067
+ var l =
1068
+ '<select class="ui-timepicker-select ui-state-default ui-corner-all" data-unit="' +
1069
+ i +
1070
+ '" data-min="' +
1071
+ a +
1072
+ '" data-max="' +
1073
+ n +
1074
+ '" data-step="' +
1075
+ r +
1076
+ '">',
1077
+ o = e._defaults.pickerTimeFormat || e._defaults.timeFormat,
1078
+ c = a;
1079
+ n >= c;
1080
+ c += r
1081
+ )
1082
+ (l +=
1083
+ '<option value="' +
1084
+ c +
1085
+ '"' +
1086
+ (c === s ? " selected" : "") +
1087
+ ">"),
1088
+ (l +=
1089
+ "hour" === i
1090
+ ? $.datepicker.formatTime(
1091
+ $.trim(o.replace(/[^ht ]/gi, "")),
1092
+ { hour: c },
1093
+ e._defaults
1094
+ )
1095
+ : "millisec" === i || "microsec" === i || c >= 10
1096
+ ? c
1097
+ : "0" + ("" + c)),
1098
+ (l += "</option>");
1099
+ return (
1100
+ (l += "</select>"),
1101
+ t.children("select").remove(),
1102
+ $(l)
1103
+ .appendTo(t)
1104
+ .change(function () {
1105
+ e._onTimeChange(), e._onSelectHandler(), e._afterInject();
1106
+ }),
1107
+ t
1108
+ );
1109
+ },
1110
+ options: function (e, t, i, s, a) {
1111
+ var n = {},
1112
+ r = t.children("select");
1113
+ if ("string" == typeof s) {
1114
+ if (void 0 === a) return r.data(s);
1115
+ n[s] = a;
1116
+ } else n = s;
1117
+ return e.control.create(
1118
+ e,
1119
+ t,
1120
+ r.data("unit"),
1121
+ r.val(),
1122
+ n.min >= 0 ? n.min : r.data("min"),
1123
+ n.max || r.data("max"),
1124
+ n.step || r.data("step")
1125
+ );
1126
+ },
1127
+ value: function (e, t, i, s) {
1128
+ var a = t.children("select");
1129
+ return void 0 !== s ? a.val(s) : a.val();
1130
+ },
1131
+ },
1132
+ },
1133
+ }),
1134
+ $.fn.extend({
1135
+ timepicker: function (e) {
1136
+ e = e || {};
1137
+ var t = Array.prototype.slice.call(arguments);
1138
+ return (
1139
+ "object" == typeof e && (t[0] = $.extend(e, { timeOnly: !0 })),
1140
+ $(this).each(function () {
1141
+ $.fn.datetimepicker.apply($(this), t);
1142
+ })
1143
+ );
1144
+ },
1145
+ datetimepicker: function (e) {
1146
+ e = e || {};
1147
+ var t = arguments;
1148
+ return "string" == typeof e
1149
+ ? "getDate" === e ||
1150
+ ("option" === e && 2 === t.length && "string" == typeof t[1])
1151
+ ? $.fn.datepicker.apply($(this[0]), t)
1152
+ : this.each(function () {
1153
+ var e = $(this);
1154
+ e.datepicker.apply(e, t);
1155
+ })
1156
+ : this.each(function () {
1157
+ var t = $(this);
1158
+ t.datepicker($.timepicker._newInst(t, e)._defaults);
1159
+ });
1160
+ },
1161
+ }),
1162
+ ($.datepicker.parseDateTime = function (e, t, i, s, a) {
1163
+ var n = parseDateTimeInternal(e, t, i, s, a);
1164
+ if (n.timeObj) {
1165
+ var r = n.timeObj;
1166
+ n.date.setHours(r.hour, r.minute, r.second, r.millisec),
1167
+ n.date.setMicroseconds(r.microsec);
1168
+ }
1169
+ return n.date;
1170
+ }),
1171
+ ($.datepicker.parseTime = function (e, t, i) {
1172
+ var s = extendRemove(extendRemove({}, $.timepicker._defaults), i || {});
1173
+ -1 !== e.replace(/\'.*?\'/g, "").indexOf("Z");
1174
+ var a = function (e, t, i) {
1175
+ var s,
1176
+ a = function (e, t) {
1177
+ var i = [];
1178
+ return (
1179
+ e && $.merge(i, e),
1180
+ t && $.merge(i, t),
1181
+ (i = $.map(i, function (e) {
1182
+ return e.replace(/[.*+?|()\[\]{}\\]/g, "\\$&");
1183
+ })),
1184
+ "(" + i.join("|") + ")?"
1185
+ );
1186
+ },
1187
+ n = function (e) {
1188
+ var t = e
1189
+ .toLowerCase()
1190
+ .match(/(h{1,2}|m{1,2}|s{1,2}|l{1}|c{1}|t{1,2}|z|'.*?')/g),
1191
+ i = { h: -1, m: -1, s: -1, l: -1, c: -1, t: -1, z: -1 };
1192
+ if (t)
1193
+ for (var s = 0; t.length > s; s++)
1194
+ -1 === i[("" + t[s]).charAt(0)] &&
1195
+ (i[("" + t[s]).charAt(0)] = s + 1);
1196
+ return i;
1197
+ },
1198
+ r =
1199
+ "^" +
1200
+ ("" + e)
1201
+ .replace(
1202
+ /([hH]{1,2}|mm?|ss?|[tT]{1,2}|[zZ]|[lc]|'.*?')/g,
1203
+ function (e) {
1204
+ var t = e.length;
1205
+ switch (e.charAt(0).toLowerCase()) {
1206
+ case "h":
1207
+ return 1 === t ? "(\\d?\\d)" : "(\\d{" + t + "})";
1208
+ case "m":
1209
+ return 1 === t ? "(\\d?\\d)" : "(\\d{" + t + "})";
1210
+ case "s":
1211
+ return 1 === t ? "(\\d?\\d)" : "(\\d{" + t + "})";
1212
+ case "l":
1213
+ return "(\\d?\\d?\\d)";
1214
+ case "c":
1215
+ return "(\\d?\\d?\\d)";
1216
+ case "z":
1217
+ return "(z|[-+]\\d\\d:?\\d\\d|\\S+)?";
1218
+ case "t":
1219
+ return a(i.amNames, i.pmNames);
1220
+ default:
1221
+ return (
1222
+ "(" +
1223
+ e
1224
+ .replace(/\'/g, "")
1225
+ .replace(
1226
+ /(\.|\$|\^|\\|\/|\(|\)|\[|\]|\?|\+|\*)/g,
1227
+ function (e) {
1228
+ return "\\" + e;
1229
+ }
1230
+ ) +
1231
+ ")?"
1232
+ );
1233
+ }
1234
+ }
1235
+ )
1236
+ .replace(/\s/g, "\\s?") +
1237
+ i.timeSuffix +
1238
+ "$",
1239
+ l = n(e),
1240
+ o = "";
1241
+ s = t.match(RegExp(r, "i"));
1242
+ var c = { hour: 0, minute: 0, second: 0, millisec: 0, microsec: 0 };
1243
+ return s
1244
+ ? (-1 !== l.t &&
1245
+ (void 0 === s[l.t] || 0 === s[l.t].length
1246
+ ? ((o = ""), (c.ampm = ""))
1247
+ : ((o =
1248
+ -1 !==
1249
+ $.inArray(
1250
+ s[l.t].toUpperCase(),
1251
+ $.map(i.amNames, function (e) {
1252
+ return e.toUpperCase();
1253
+ })
1254
+ )
1255
+ ? "AM"
1256
+ : "PM"),
1257
+ (c.ampm = i["AM" === o ? "amNames" : "pmNames"][0]))),
1258
+ -1 !== l.h &&
1259
+ (c.hour =
1260
+ "AM" === o && "12" === s[l.h]
1261
+ ? 0
1262
+ : "PM" === o && "12" !== s[l.h]
1263
+ ? parseInt(s[l.h], 10) + 12
1264
+ : Number(s[l.h])),
1265
+ -1 !== l.m && (c.minute = Number(s[l.m])),
1266
+ -1 !== l.s && (c.second = Number(s[l.s])),
1267
+ -1 !== l.l && (c.millisec = Number(s[l.l])),
1268
+ -1 !== l.c && (c.microsec = Number(s[l.c])),
1269
+ -1 !== l.z &&
1270
+ void 0 !== s[l.z] &&
1271
+ (c.timezone = $.timepicker.timezoneOffsetNumber(s[l.z])),
1272
+ c)
1273
+ : !1;
1274
+ },
1275
+ n = function (e, t, i) {
1276
+ try {
1277
+ var s = new Date("2012-01-01 " + t);
1278
+ if (
1279
+ isNaN(s.getTime()) &&
1280
+ ((s = new Date("2012-01-01T" + t)),
1281
+ isNaN(s.getTime()) &&
1282
+ ((s = new Date("01/01/2012 " + t)), isNaN(s.getTime())))
1283
+ )
1284
+ throw "Unable to parse time with native Date: " + t;
1285
+ return {
1286
+ hour: s.getHours(),
1287
+ minute: s.getMinutes(),
1288
+ second: s.getSeconds(),
1289
+ millisec: s.getMilliseconds(),
1290
+ microsec: s.getMicroseconds(),
1291
+ timezone: -1 * s.getTimezoneOffset(),
1292
+ };
1293
+ } catch (n) {
1294
+ try {
1295
+ return a(e, t, i);
1296
+ } catch (r) {
1297
+ $.timepicker.log(
1298
+ "Unable to parse \ntimeString: " + t + "\ntimeFormat: " + e
1299
+ );
1300
+ }
1301
+ }
1302
+ return !1;
1303
+ };
1304
+ return "function" == typeof s.parse
1305
+ ? s.parse(e, t, s)
1306
+ : "loose" === s.parse
1307
+ ? n(e, t, s)
1308
+ : a(e, t, s);
1309
+ }),
1310
+ ($.datepicker.formatTime = function (e, t, i) {
1311
+ (i = i || {}),
1312
+ (i = $.extend({}, $.timepicker._defaults, i)),
1313
+ (t = $.extend(
1314
+ {
1315
+ hour: 0,
1316
+ minute: 0,
1317
+ second: 0,
1318
+ millisec: 0,
1319
+ microsec: 0,
1320
+ timezone: null,
1321
+ },
1322
+ t
1323
+ ));
1324
+ var s = e,
1325
+ a = i.amNames[0],
1326
+ n = parseInt(t.hour, 10);
1327
+ return (
1328
+ n > 11 && (a = i.pmNames[0]),
1329
+ (s = s.replace(
1330
+ /(?:HH?|hh?|mm?|ss?|[tT]{1,2}|[zZ]|[lc]|'.*?')/g,
1331
+ function (e) {
1332
+ switch (e) {
1333
+ case "HH":
1334
+ return ("0" + n).slice(-2);
1335
+ case "H":
1336
+ return n;
1337
+ case "hh":
1338
+ return ("0" + convert24to12(n)).slice(-2);
1339
+ case "h":
1340
+ return convert24to12(n);
1341
+ case "mm":
1342
+ return ("0" + t.minute).slice(-2);
1343
+ case "m":
1344
+ return t.minute;
1345
+ case "ss":
1346
+ return ("0" + t.second).slice(-2);
1347
+ case "s":
1348
+ return t.second;
1349
+ case "l":
1350
+ return ("00" + t.millisec).slice(-3);
1351
+ case "c":
1352
+ return ("00" + t.microsec).slice(-3);
1353
+ case "z":
1354
+ return $.timepicker.timezoneOffsetString(
1355
+ null === t.timezone ? i.timezone : t.timezone,
1356
+ !1
1357
+ );
1358
+ case "Z":
1359
+ return $.timepicker.timezoneOffsetString(
1360
+ null === t.timezone ? i.timezone : t.timezone,
1361
+ !0
1362
+ );
1363
+ case "T":
1364
+ return a.charAt(0).toUpperCase();
1365
+ case "TT":
1366
+ return a.toUpperCase();
1367
+ case "t":
1368
+ return a.charAt(0).toLowerCase();
1369
+ case "tt":
1370
+ return a.toLowerCase();
1371
+ default:
1372
+ return e.replace(/'/g, "");
1373
+ }
1374
+ }
1375
+ ))
1376
+ );
1377
+ }),
1378
+ ($.datepicker._base_selectDate = $.datepicker._selectDate),
1379
+ ($.datepicker._selectDate = function (e, t) {
1380
+ var i,
1381
+ s = this._getInst($(e)[0]),
1382
+ a = this._get(s, "timepicker");
1383
+ a && s.settings.showTimepicker
1384
+ ? (a._limitMinMaxDateTime(s, !0),
1385
+ (i = s.inline),
1386
+ (s.inline = s.stay_open = !0),
1387
+ this._base_selectDate(e, t),
1388
+ (s.inline = i),
1389
+ (s.stay_open = !1),
1390
+ this._notifyChange(s),
1391
+ this._updateDatepicker(s))
1392
+ : this._base_selectDate(e, t);
1393
+ }),
1394
+ ($.datepicker._base_updateDatepicker = $.datepicker._updateDatepicker),
1395
+ ($.datepicker._updateDatepicker = function (e) {
1396
+ var t = e.input[0];
1397
+ if (
1398
+ !(
1399
+ ($.datepicker._curInst &&
1400
+ $.datepicker._curInst !== e &&
1401
+ $.datepicker._datepickerShowing &&
1402
+ $.datepicker._lastInput !== t) ||
1403
+ ("boolean" == typeof e.stay_open && e.stay_open !== !1)
1404
+ )
1405
+ ) {
1406
+ this._base_updateDatepicker(e);
1407
+ var i = this._get(e, "timepicker");
1408
+ i && i._addTimePicker(e);
1409
+ }
1410
+ }),
1411
+ ($.datepicker._base_doKeyPress = $.datepicker._doKeyPress),
1412
+ ($.datepicker._doKeyPress = function (e) {
1413
+ var t = $.datepicker._getInst(e.target),
1414
+ i = $.datepicker._get(t, "timepicker");
1415
+ if (i && $.datepicker._get(t, "constrainInput")) {
1416
+ var s = i.support.ampm,
1417
+ a =
1418
+ null !== i._defaults.showTimezone
1419
+ ? i._defaults.showTimezone
1420
+ : i.support.timezone,
1421
+ n = $.datepicker._possibleChars($.datepicker._get(t, "dateFormat")),
1422
+ r =
1423
+ ("" + i._defaults.timeFormat)
1424
+ .replace(/[hms]/g, "")
1425
+ .replace(/TT/g, s ? "APM" : "")
1426
+ .replace(/Tt/g, s ? "AaPpMm" : "")
1427
+ .replace(/tT/g, s ? "AaPpMm" : "")
1428
+ .replace(/T/g, s ? "AP" : "")
1429
+ .replace(/tt/g, s ? "apm" : "")
1430
+ .replace(/t/g, s ? "ap" : "") +
1431
+ " " +
1432
+ i._defaults.separator +
1433
+ i._defaults.timeSuffix +
1434
+ (a ? i._defaults.timezoneList.join("") : "") +
1435
+ i._defaults.amNames.join("") +
1436
+ i._defaults.pmNames.join("") +
1437
+ n,
1438
+ l = String.fromCharCode(
1439
+ void 0 === e.charCode ? e.keyCode : e.charCode
1440
+ );
1441
+ return e.ctrlKey || " " > l || !n || r.indexOf(l) > -1;
1442
+ }
1443
+ return $.datepicker._base_doKeyPress(e);
1444
+ }),
1445
+ ($.datepicker._base_updateAlternate = $.datepicker._updateAlternate),
1446
+ ($.datepicker._updateAlternate = function (e) {
1447
+ var t = this._get(e, "timepicker");
1448
+ if (t) {
1449
+ var i = t._defaults.altField;
1450
+ if (i) {
1451
+ var s =
1452
+ (t._defaults.altFormat || t._defaults.dateFormat,
1453
+ this._getDate(e)),
1454
+ a = $.datepicker._getFormatConfig(e),
1455
+ n = "",
1456
+ r = t._defaults.altSeparator
1457
+ ? t._defaults.altSeparator
1458
+ : t._defaults.separator,
1459
+ l = t._defaults.altTimeSuffix
1460
+ ? t._defaults.altTimeSuffix
1461
+ : t._defaults.timeSuffix,
1462
+ o =
1463
+ null !== t._defaults.altTimeFormat
1464
+ ? t._defaults.altTimeFormat
1465
+ : t._defaults.timeFormat;
1466
+ (n += $.datepicker.formatTime(o, t, t._defaults) + l),
1467
+ t._defaults.timeOnly ||
1468
+ t._defaults.altFieldTimeOnly ||
1469
+ null === s ||
1470
+ (n = t._defaults.altFormat
1471
+ ? $.datepicker.formatDate(t._defaults.altFormat, s, a) + r + n
1472
+ : t.formattedDate + r + n),
1473
+ $(i).val(e.input.val() ? n : "");
1474
+ }
1475
+ } else $.datepicker._base_updateAlternate(e);
1476
+ }),
1477
+ ($.datepicker._base_doKeyUp = $.datepicker._doKeyUp),
1478
+ ($.datepicker._doKeyUp = function (e) {
1479
+ var t = $.datepicker._getInst(e.target),
1480
+ i = $.datepicker._get(t, "timepicker");
1481
+ if (i && i._defaults.timeOnly && t.input.val() !== t.lastVal)
1482
+ try {
1483
+ $.datepicker._updateDatepicker(t);
1484
+ } catch (s) {
1485
+ $.timepicker.log(s);
1486
+ }
1487
+ return $.datepicker._base_doKeyUp(e);
1488
+ }),
1489
+ ($.datepicker._base_gotoToday = $.datepicker._gotoToday),
1490
+ ($.datepicker._gotoToday = function (e) {
1491
+ var t = this._getInst($(e)[0]);
1492
+ t.dpDiv;
1493
+ var i = this._get(t, "timepicker");
1494
+ selectLocalTimezone(i);
1495
+ var s = new Date();
1496
+ this._setTime(t, s), this._setDate(t, s), this._base_gotoToday(e);
1497
+ }),
1498
+ ($.datepicker._disableTimepickerDatepicker = function (e) {
1499
+ var t = this._getInst(e);
1500
+ if (t) {
1501
+ var i = this._get(t, "timepicker");
1502
+ $(e).datepicker("getDate"),
1503
+ i &&
1504
+ ((t.settings.showTimepicker = !1),
1505
+ (i._defaults.showTimepicker = !1),
1506
+ i._updateDateTime(t));
1507
+ }
1508
+ }),
1509
+ ($.datepicker._enableTimepickerDatepicker = function (e) {
1510
+ var t = this._getInst(e);
1511
+ if (t) {
1512
+ var i = this._get(t, "timepicker");
1513
+ $(e).datepicker("getDate"),
1514
+ i &&
1515
+ ((t.settings.showTimepicker = !0),
1516
+ (i._defaults.showTimepicker = !0),
1517
+ i._addTimePicker(t),
1518
+ i._updateDateTime(t));
1519
+ }
1520
+ }),
1521
+ ($.datepicker._setTime = function (e, t) {
1522
+ var i = this._get(e, "timepicker");
1523
+ if (i) {
1524
+ var s = i._defaults;
1525
+ (i.hour = t ? t.getHours() : s.hour),
1526
+ (i.minute = t ? t.getMinutes() : s.minute),
1527
+ (i.second = t ? t.getSeconds() : s.second),
1528
+ (i.millisec = t ? t.getMilliseconds() : s.millisec),
1529
+ (i.microsec = t ? t.getMicroseconds() : s.microsec),
1530
+ i._limitMinMaxDateTime(e, !0),
1531
+ i._onTimeChange(),
1532
+ i._updateDateTime(e);
1533
+ }
1534
+ }),
1535
+ ($.datepicker._setTimeDatepicker = function (e, t, i) {
1536
+ var s = this._getInst(e);
1537
+ if (s) {
1538
+ var a = this._get(s, "timepicker");
1539
+ if (a) {
1540
+ this._setDateFromField(s);
1541
+ var n;
1542
+ t &&
1543
+ ("string" == typeof t
1544
+ ? (a._parseTime(t, i),
1545
+ (n = new Date()),
1546
+ n.setHours(a.hour, a.minute, a.second, a.millisec),
1547
+ n.setMicroseconds(a.microsec))
1548
+ : ((n = new Date(t.getTime())),
1549
+ n.setMicroseconds(t.getMicroseconds())),
1550
+ "Invalid Date" == "" + n && (n = void 0),
1551
+ this._setTime(s, n));
1552
+ }
1553
+ }
1554
+ }),
1555
+ ($.datepicker._base_setDateDatepicker = $.datepicker._setDateDatepicker),
1556
+ ($.datepicker._setDateDatepicker = function (e, t) {
1557
+ var i = this._getInst(e),
1558
+ s = t;
1559
+ if (i) {
1560
+ "string" == typeof t &&
1561
+ ((s = new Date(t)),
1562
+ s.getTime() ||
1563
+ (this._base_setDateDatepicker.apply(this, arguments),
1564
+ (s = $(e).datepicker("getDate"))));
1565
+ var a,
1566
+ n = this._get(i, "timepicker");
1567
+ s instanceof Date
1568
+ ? ((a = new Date(s.getTime())),
1569
+ a.setMicroseconds(s.getMicroseconds()))
1570
+ : (a = s),
1571
+ n &&
1572
+ a &&
1573
+ (n.support.timezone ||
1574
+ null !== n._defaults.timezone ||
1575
+ (n.timezone = -1 * a.getTimezoneOffset()),
1576
+ (s = $.timepicker.timezoneAdjust(s, n.timezone)),
1577
+ (a = $.timepicker.timezoneAdjust(a, n.timezone))),
1578
+ this._updateDatepicker(i),
1579
+ this._base_setDateDatepicker.apply(this, arguments),
1580
+ this._setTimeDatepicker(e, a, !0);
1581
+ }
1582
+ }),
1583
+ ($.datepicker._base_getDateDatepicker = $.datepicker._getDateDatepicker),
1584
+ ($.datepicker._getDateDatepicker = function (e, t) {
1585
+ var i = this._getInst(e);
1586
+ if (i) {
1587
+ var s = this._get(i, "timepicker");
1588
+ if (s) {
1589
+ void 0 === i.lastVal && this._setDateFromField(i, t);
1590
+ var a = this._getDate(i),
1591
+ n = $.trim(
1592
+ s.$altInput && s._defaults.altFieldTimeOnly
1593
+ ? s.$input.val() + " " + s.$altInput.val()
1594
+ : s.$input.val()
1595
+ );
1596
+ return (
1597
+ a &&
1598
+ s._parseTime(n, !i.settings.timeOnly) &&
1599
+ (a.setHours(s.hour, s.minute, s.second, s.millisec),
1600
+ a.setMicroseconds(s.microsec),
1601
+ null != s.timezone &&
1602
+ (s.support.timezone ||
1603
+ null !== s._defaults.timezone ||
1604
+ (s.timezone = -1 * a.getTimezoneOffset()),
1605
+ (a = $.timepicker.timezoneAdjust(a, s.timezone)))),
1606
+ a
1607
+ );
1608
+ }
1609
+ return this._base_getDateDatepicker(e, t);
1610
+ }
1611
+ }),
1612
+ ($.datepicker._base_parseDate = $.datepicker.parseDate),
1613
+ ($.datepicker.parseDate = function (e, t, i) {
1614
+ var s;
1615
+ try {
1616
+ s = this._base_parseDate(e, t, i);
1617
+ } catch (a) {
1618
+ if (!(a.indexOf(":") >= 0)) throw a;
1619
+ (s = this._base_parseDate(
1620
+ e,
1621
+ t.substring(0, t.length - (a.length - a.indexOf(":") - 2)),
1622
+ i
1623
+ )),
1624
+ $.timepicker.log(
1625
+ "Error parsing the date string: " +
1626
+ a +
1627
+ "\ndate string = " +
1628
+ t +
1629
+ "\ndate format = " +
1630
+ e
1631
+ );
1632
+ }
1633
+ return s;
1634
+ }),
1635
+ ($.datepicker._base_formatDate = $.datepicker._formatDate),
1636
+ ($.datepicker._formatDate = function (e) {
1637
+ var t = this._get(e, "timepicker");
1638
+ return t
1639
+ ? (t._updateDateTime(e), t.$input.val())
1640
+ : this._base_formatDate(e);
1641
+ }),
1642
+ ($.datepicker._base_optionDatepicker = $.datepicker._optionDatepicker),
1643
+ ($.datepicker._optionDatepicker = function (e, t, i) {
1644
+ var s,
1645
+ a = this._getInst(e);
1646
+ if (!a) return null;
1647
+ var n = this._get(a, "timepicker");
1648
+ if (n) {
1649
+ var r,
1650
+ l,
1651
+ o,
1652
+ c,
1653
+ u = null,
1654
+ m = null,
1655
+ d = null,
1656
+ h = n._defaults.evnts,
1657
+ p = {};
1658
+ if ("string" == typeof t) {
1659
+ if ("minDate" === t || "minDateTime" === t) u = i;
1660
+ else if ("maxDate" === t || "maxDateTime" === t) m = i;
1661
+ else if ("onSelect" === t) d = i;
1662
+ else if (h.hasOwnProperty(t)) {
1663
+ if (i === void 0) return h[t];
1664
+ (p[t] = i), (s = {});
1665
+ }
1666
+ } else if ("object" == typeof t) {
1667
+ t.minDate
1668
+ ? (u = t.minDate)
1669
+ : t.minDateTime
1670
+ ? (u = t.minDateTime)
1671
+ : t.maxDate
1672
+ ? (m = t.maxDate)
1673
+ : t.maxDateTime && (m = t.maxDateTime);
1674
+ for (r in h) h.hasOwnProperty(r) && t[r] && (p[r] = t[r]);
1675
+ }
1676
+ for (r in p)
1677
+ p.hasOwnProperty(r) &&
1678
+ ((h[r] = p[r]), s || (s = $.extend({}, t)), delete s[r]);
1679
+ if (s && isEmptyObject(s)) return;
1680
+ if (
1681
+ (u
1682
+ ? ((u = 0 === u ? new Date() : new Date(u)),
1683
+ (n._defaults.minDate = u),
1684
+ (n._defaults.minDateTime = u))
1685
+ : m
1686
+ ? ((m = 0 === m ? new Date() : new Date(m)),
1687
+ (n._defaults.maxDate = m),
1688
+ (n._defaults.maxDateTime = m))
1689
+ : d && (n._defaults.onSelect = d),
1690
+ u || m)
1691
+ )
1692
+ return (
1693
+ (c = $(e)),
1694
+ (o = c.datetimepicker("getDate")),
1695
+ (l = this._base_optionDatepicker.call(
1696
+ $.datepicker,
1697
+ e,
1698
+ s || t,
1699
+ i
1700
+ )),
1701
+ c.datetimepicker("setDate", o),
1702
+ l
1703
+ );
1704
+ }
1705
+ return void 0 === i
1706
+ ? this._base_optionDatepicker.call($.datepicker, e, t)
1707
+ : this._base_optionDatepicker.call($.datepicker, e, s || t, i);
1708
+ });
1709
+ var isEmptyObject = function (e) {
1710
+ var t;
1711
+ for (t in e) if (e.hasOwnProperty(t)) return !1;
1712
+ return !0;
1713
+ },
1714
+ extendRemove = function (e, t) {
1715
+ $.extend(e, t);
1716
+ for (var i in t) (null === t[i] || void 0 === t[i]) && (e[i] = t[i]);
1717
+ return e;
1718
+ },
1719
+ detectSupport = function (e) {
1720
+ var t = e.replace(/'.*?'/g, "").toLowerCase(),
1721
+ i = function (e, t) {
1722
+ return -1 !== e.indexOf(t) ? !0 : !1;
1723
+ };
1724
+ return {
1725
+ hour: i(t, "h"),
1726
+ minute: i(t, "m"),
1727
+ second: i(t, "s"),
1728
+ millisec: i(t, "l"),
1729
+ microsec: i(t, "c"),
1730
+ timezone: i(t, "z"),
1731
+ ampm: i(t, "t") && i(e, "h"),
1732
+ iso8601: i(e, "Z"),
1733
+ };
1734
+ },
1735
+ convert24to12 = function (e) {
1736
+ return (e %= 12), 0 === e && (e = 12), e + "";
1737
+ },
1738
+ computeEffectiveSetting = function (e, t) {
1739
+ return e && e[t] ? e[t] : $.timepicker._defaults[t];
1740
+ },
1741
+ splitDateTime = function (e, t) {
1742
+ var i = computeEffectiveSetting(t, "separator"),
1743
+ s = computeEffectiveSetting(t, "timeFormat"),
1744
+ a = s.split(i),
1745
+ n = a.length,
1746
+ r = e.split(i),
1747
+ l = r.length;
1748
+ return l > 1
1749
+ ? {
1750
+ dateString: r.splice(0, l - n).join(i),
1751
+ timeString: r.splice(0, n).join(i),
1752
+ }
1753
+ : { dateString: e, timeString: "" };
1754
+ },
1755
+ parseDateTimeInternal = function (e, t, i, s, a) {
1756
+ var n, r, l;
1757
+ if (
1758
+ ((r = splitDateTime(i, a)),
1759
+ (n = $.datepicker._base_parseDate(e, r.dateString, s)),
1760
+ "" === r.timeString)
1761
+ )
1762
+ return { date: n };
1763
+ if (((l = $.datepicker.parseTime(t, r.timeString, a)), !l))
1764
+ throw "Wrong time format";
1765
+ return { date: n, timeObj: l };
1766
+ },
1767
+ selectLocalTimezone = function (e, t) {
1768
+ if (e && e.timezone_select) {
1769
+ var i = t || new Date();
1770
+ e.timezone_select.val(-i.getTimezoneOffset());
1771
+ }
1772
+ };
1773
+ ($.timepicker = new Timepicker()),
1774
+ ($.timepicker.timezoneOffsetString = function (e, t) {
1775
+ if (isNaN(e) || e > 840 || -720 > e) return e;
1776
+ var i = e,
1777
+ s = i % 60,
1778
+ a = (i - s) / 60,
1779
+ n = t ? ":" : "",
1780
+ r =
1781
+ (i >= 0 ? "+" : "-") +
1782
+ ("0" + Math.abs(a)).slice(-2) +
1783
+ n +
1784
+ ("0" + Math.abs(s)).slice(-2);
1785
+ return "+00:00" === r ? "Z" : r;
1786
+ }),
1787
+ ($.timepicker.timezoneOffsetNumber = function (e) {
1788
+ var t = ("" + e).replace(":", "");
1789
+ return "Z" === t.toUpperCase()
1790
+ ? 0
1791
+ : /^(\-|\+)\d{4}$/.test(t)
1792
+ ? ("-" === t.substr(0, 1) ? -1 : 1) *
1793
+ (60 * parseInt(t.substr(1, 2), 10) + parseInt(t.substr(3, 2), 10))
1794
+ : e;
1795
+ }),
1796
+ ($.timepicker.timezoneAdjust = function (e, t) {
1797
+ var i = $.timepicker.timezoneOffsetNumber(t);
1798
+ return (
1799
+ isNaN(i) || e.setMinutes(e.getMinutes() + -e.getTimezoneOffset() - i),
1800
+ e
1801
+ );
1802
+ }),
1803
+ ($.timepicker.timeRange = function (e, t, i) {
1804
+ return $.timepicker.handleRange("timepicker", e, t, i);
1805
+ }),
1806
+ ($.timepicker.datetimeRange = function (e, t, i) {
1807
+ $.timepicker.handleRange("datetimepicker", e, t, i);
1808
+ }),
1809
+ ($.timepicker.dateRange = function (e, t, i) {
1810
+ $.timepicker.handleRange("datepicker", e, t, i);
1811
+ }),
1812
+ ($.timepicker.handleRange = function (e, t, i, s) {
1813
+ function a(a, n) {
1814
+ var r = t[e]("getDate"),
1815
+ l = i[e]("getDate"),
1816
+ o = a[e]("getDate");
1817
+ if (null !== r) {
1818
+ var c = new Date(r.getTime()),
1819
+ u = new Date(r.getTime());
1820
+ c.setMilliseconds(c.getMilliseconds() + s.minInterval),
1821
+ u.setMilliseconds(u.getMilliseconds() + s.maxInterval),
1822
+ s.minInterval > 0 && c > l
1823
+ ? i[e]("setDate", c)
1824
+ : s.maxInterval > 0 && l > u
1825
+ ? i[e]("setDate", u)
1826
+ : r > l && n[e]("setDate", o);
1827
+ }
1828
+ }
1829
+ function n(t, i, a) {
1830
+ if (t.val()) {
1831
+ var n = t[e].call(t, "getDate");
1832
+ null !== n &&
1833
+ s.minInterval > 0 &&
1834
+ ("minDate" === a &&
1835
+ n.setMilliseconds(n.getMilliseconds() + s.minInterval),
1836
+ "maxDate" === a &&
1837
+ n.setMilliseconds(n.getMilliseconds() - s.minInterval)),
1838
+ n.getTime && i[e].call(i, "option", a, n);
1839
+ }
1840
+ }
1841
+ s = $.extend(
1842
+ {},
1843
+ { minInterval: 0, maxInterval: 0, start: {}, end: {} },
1844
+ s
1845
+ );
1846
+ var r = !1;
1847
+ return (
1848
+ "timepicker" === e && ((r = !0), (e = "datetimepicker")),
1849
+ $.fn[e].call(
1850
+ t,
1851
+ $.extend(
1852
+ {
1853
+ timeOnly: r,
1854
+ onClose: function () {
1855
+ a($(this), i);
1856
+ },
1857
+ onSelect: function () {
1858
+ n($(this), i, "minDate");
1859
+ },
1860
+ },
1861
+ s,
1862
+ s.start
1863
+ )
1864
+ ),
1865
+ $.fn[e].call(
1866
+ i,
1867
+ $.extend(
1868
+ {
1869
+ timeOnly: r,
1870
+ onClose: function () {
1871
+ a($(this), t);
1872
+ },
1873
+ onSelect: function () {
1874
+ n($(this), t, "maxDate");
1875
+ },
1876
+ },
1877
+ s,
1878
+ s.end
1879
+ )
1880
+ ),
1881
+ a(t, i),
1882
+ n(t, i, "minDate"),
1883
+ n(i, t, "maxDate"),
1884
+ $([t.get(0), i.get(0)])
1885
+ );
1886
+ }),
1887
+ ($.timepicker.log = function () {
1888
+ window.console &&
1889
+ window.console.log.apply(
1890
+ window.console,
1891
+ Array.prototype.slice.call(arguments)
1892
+ );
1893
+ }),
1894
+ ($.timepicker._util = {
1895
+ _extendRemove: extendRemove,
1896
+ _isEmptyObject: isEmptyObject,
1897
+ _convert24to12: convert24to12,
1898
+ _detectSupport: detectSupport,
1899
+ _selectLocalTimezone: selectLocalTimezone,
1900
+ _computeEffectiveSetting: computeEffectiveSetting,
1901
+ _splitDateTime: splitDateTime,
1902
+ _parseDateTimeInternal: parseDateTimeInternal,
1903
+ }),
1904
+ Date.prototype.getMicroseconds ||
1905
+ ((Date.prototype.microseconds = 0),
1906
+ (Date.prototype.getMicroseconds = function () {
1907
+ return this.microseconds;
1908
+ }),
1909
+ (Date.prototype.setMicroseconds = function (e) {
1910
+ return (
1911
+ this.setMilliseconds(this.getMilliseconds() + Math.floor(e / 1e3)),
1912
+ (this.microseconds = e % 1e3),
1913
+ this
1914
+ );
1915
+ })),
1916
+ ($.timepicker.version = "1.5.5");
1917
+ }
1918
+ });