ngx-tethys 18.2.10 → 18.2.13

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.
Files changed (63) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/date-picker/abstract-picker.component.d.ts +6 -1
  3. package/date-picker/base-picker.component.d.ts +1 -1
  4. package/date-picker/lib/calendar/calendar-footer.component.d.ts +2 -1
  5. package/date-picker/lib/calendar/calendar-table.component.d.ts +4 -3
  6. package/date-picker/lib/popups/date-popup.component.d.ts +2 -1
  7. package/date-picker/lib/popups/inner-popup.component.d.ts +2 -1
  8. package/date-picker/picker.component.d.ts +2 -1
  9. package/date-picker/picker.util.d.ts +5 -5
  10. package/esm2022/cascader/cascader.component.mjs +2 -2
  11. package/esm2022/date-picker/abstract-picker.component.mjs +16 -28
  12. package/esm2022/date-picker/base-picker.component.mjs +17 -13
  13. package/esm2022/date-picker/date-picker.component.mjs +3 -3
  14. package/esm2022/date-picker/lib/calendar/calendar-footer.component.mjs +7 -5
  15. package/esm2022/date-picker/lib/calendar/calendar-table.component.mjs +6 -4
  16. package/esm2022/date-picker/lib/date/date-table.component.mjs +2 -2
  17. package/esm2022/date-picker/lib/popups/date-popup.component.mjs +29 -45
  18. package/esm2022/date-picker/lib/popups/inner-popup.component.mjs +7 -5
  19. package/esm2022/date-picker/month-picker.component.mjs +3 -3
  20. package/esm2022/date-picker/picker.component.mjs +9 -4
  21. package/esm2022/date-picker/picker.util.mjs +21 -15
  22. package/esm2022/date-picker/quarter-picker.component.mjs +3 -3
  23. package/esm2022/date-picker/range-picker.component.mjs +3 -3
  24. package/esm2022/date-picker/week-picker.component.mjs +3 -3
  25. package/esm2022/date-picker/year-picker.component.mjs +3 -3
  26. package/esm2022/i18n/i18n.service.mjs +3 -6
  27. package/esm2022/i18n/locale.mjs +17 -2
  28. package/esm2022/message/message-container.component.mjs +3 -3
  29. package/esm2022/notify/notify-container.component.mjs +3 -3
  30. package/esm2022/select/custom-select/custom-select.component.mjs +2 -2
  31. package/esm2022/time-picker/inner/inner-time-picker.component.mjs +13 -11
  32. package/esm2022/time-picker/inner/inner-time-picker.store.mjs +16 -16
  33. package/esm2022/time-picker/time-picker.utils.mjs +14 -14
  34. package/esm2022/util/date/tiny-date.mjs +23 -11
  35. package/esm2022/util/helpers/helpers.mjs +13 -1
  36. package/esm2022/version.mjs +2 -2
  37. package/fesm2022/ngx-tethys-cascader.mjs +1 -1
  38. package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
  39. package/fesm2022/ngx-tethys-date-picker.mjs +114 -121
  40. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  41. package/fesm2022/ngx-tethys-i18n.mjs +17 -5
  42. package/fesm2022/ngx-tethys-i18n.mjs.map +1 -1
  43. package/fesm2022/ngx-tethys-message.mjs +2 -2
  44. package/fesm2022/ngx-tethys-message.mjs.map +1 -1
  45. package/fesm2022/ngx-tethys-notify.mjs +2 -2
  46. package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
  47. package/fesm2022/ngx-tethys-select.mjs +1 -1
  48. package/fesm2022/ngx-tethys-select.mjs.map +1 -1
  49. package/fesm2022/ngx-tethys-time-picker.mjs +40 -38
  50. package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
  51. package/fesm2022/ngx-tethys-util.mjs +422 -398
  52. package/fesm2022/ngx-tethys-util.mjs.map +1 -1
  53. package/fesm2022/ngx-tethys.mjs +1 -1
  54. package/fesm2022/ngx-tethys.mjs.map +1 -1
  55. package/i18n/locale.d.ts +7 -1
  56. package/package.json +2 -1
  57. package/schematics/version.d.ts +1 -1
  58. package/schematics/version.js +1 -1
  59. package/table/styles/table.scss +9 -1
  60. package/time-picker/inner/inner-time-picker.component.d.ts +3 -1
  61. package/time-picker/inner/inner-time-picker.store.d.ts +5 -5
  62. package/time-picker/time-picker.utils.d.ts +5 -5
  63. package/util/helpers/helpers.d.ts +1 -0
@@ -62,20 +62,20 @@ function parseSeconds(value) {
62
62
  }
63
63
  return seconds;
64
64
  }
65
- function parseTime(value) {
65
+ function parseTime(value, timeZone) {
66
66
  if (typeof value === 'string') {
67
- return new TinyDate(value)?.nativeDate;
67
+ return new TinyDate(value, timeZone)?.nativeDate;
68
68
  }
69
69
  else if (value instanceof TinyDate) {
70
70
  return value?.nativeDate;
71
71
  }
72
72
  else {
73
- return new TinyDate(value)?.nativeDate;
73
+ return new TinyDate(value, timeZone)?.nativeDate;
74
74
  }
75
75
  }
76
- function changeTime(value, diff) {
76
+ function changeTime(value, diff, timeZone) {
77
77
  if (!value) {
78
- return changeTime(createDate(new TinyDate()?.nativeDate, 0, 0, 0), diff);
78
+ return changeTime(createDate(new TinyDate(undefined, timeZone)?.nativeDate, 0, 0, 0), diff, timeZone);
79
79
  }
80
80
  let hour = value.getHours();
81
81
  let minutes = value.getMinutes();
@@ -92,9 +92,9 @@ function changeTime(value, diff) {
92
92
  if (diff.seconds) {
93
93
  seconds = seconds + coerceNumberProperty(diff.seconds);
94
94
  }
95
- return createDate(value, hour, minutes, seconds);
95
+ return createDate(value, hour, minutes, seconds, timeZone);
96
96
  }
97
- function setTime(value, opts) {
97
+ function setTime(value, opts, timeZone) {
98
98
  let hour = parseHours(opts.hour);
99
99
  const minute = parseMinutes(opts.minute);
100
100
  const seconds = parseSeconds(opts.seconds) || 0;
@@ -103,17 +103,17 @@ function setTime(value, opts) {
103
103
  }
104
104
  if (!value) {
105
105
  if (!isNaN(hour) && !isNaN(minute)) {
106
- return createDate(new TinyDate()?.nativeDate, hour, minute, seconds);
106
+ return createDate(new TinyDate(undefined, timeZone)?.nativeDate, hour, minute, seconds, timeZone);
107
107
  }
108
108
  return value;
109
109
  }
110
110
  if (isNaN(hour) || isNaN(minute)) {
111
111
  return value;
112
112
  }
113
- return createDate(value, hour, minute, seconds);
113
+ return createDate(value, hour, minute, seconds, timeZone);
114
114
  }
115
- function createDate(value, hours, minutes, seconds) {
116
- return new TinyDate(value).setHours(hours).setMinutes(minutes).setSeconds(seconds).nativeDate;
115
+ function createDate(value, hours, minutes, seconds, timeZone) {
116
+ return new TinyDate(value, timeZone).setHours(hours).setMinutes(minutes).setSeconds(seconds).nativeDate;
117
117
  }
118
118
  function padNumber(value) {
119
119
  const _value = value.toString();
@@ -131,8 +131,8 @@ function isMinuteInputValid(minutes) {
131
131
  function isSecondInputValid(seconds) {
132
132
  return !isNaN(parseSeconds(seconds));
133
133
  }
134
- function isInputLimitValid(diff, max, min) {
135
- const newDate = setTime(new TinyDate()?.nativeDate, diff);
134
+ function isInputLimitValid(diff, max, min, timeZone) {
135
+ const newDate = setTime(new TinyDate(undefined, timeZone)?.nativeDate, diff, timeZone);
136
136
  if (max && newDate > max) {
137
137
  return false;
138
138
  }
@@ -330,50 +330,50 @@ class ThyTimePickerStore extends MiniStore {
330
330
  this.setState({ value: value });
331
331
  }
332
332
  }
333
- changeHours(event) {
333
+ changeHours(event, timeZone) {
334
334
  const state = this.snapshot;
335
335
  if (!canChangeValue(state.config, event) || !canChangeHours(event, state.controls)) {
336
336
  return state;
337
337
  }
338
- const _newTime = changeTime(state.value, { hour: event.step });
338
+ const _newTime = changeTime(state.value, { hour: event.step }, timeZone);
339
339
  if ((state.config.max || state.config.min) && !isValidLimit(state.config, _newTime)) {
340
340
  return state;
341
341
  }
342
342
  this.setState({ value: _newTime });
343
343
  }
344
- changeMinutes(event) {
344
+ changeMinutes(event, timeZone) {
345
345
  const state = this.snapshot;
346
346
  if (!canChangeValue(state.config, event) || !canChangeMinutes(event, state.controls)) {
347
347
  return state;
348
348
  }
349
- const _newTime = changeTime(state.value, { minute: event.step });
349
+ const _newTime = changeTime(state.value, { minute: event.step }, timeZone);
350
350
  if ((state.config.max || state.config.min) && !isValidLimit(state.config, _newTime)) {
351
351
  return state;
352
352
  }
353
353
  this.setState({ value: _newTime });
354
354
  }
355
- changeSeconds(event) {
355
+ changeSeconds(event, timeZone) {
356
356
  const state = this.snapshot;
357
357
  if (!canChangeValue(state.config, event) || !canChangeSeconds(event, state.controls)) {
358
358
  return state;
359
359
  }
360
360
  const _newTime = changeTime(state.value, {
361
361
  seconds: event.step
362
- });
362
+ }, timeZone);
363
363
  if ((state.config.max || state.config.min) && !isValidLimit(state.config, _newTime)) {
364
364
  return state;
365
365
  }
366
366
  this.setState({ value: _newTime });
367
367
  }
368
- setTime(value) {
368
+ setTime(value, timeZone) {
369
369
  const state = this.snapshot;
370
370
  if (!canChangeValue(state.config)) {
371
371
  return state;
372
372
  }
373
- const _newTime = setTime(state.value, value);
373
+ const _newTime = setTime(state.value, value, timeZone);
374
374
  this.setState({ value: _newTime });
375
375
  }
376
- updateControls(value) {
376
+ updateControls(value, timeZone) {
377
377
  const state = this.snapshot;
378
378
  const _newControlsState = timePickerControls(state.value, value);
379
379
  const _newState = {
@@ -383,7 +383,7 @@ class ThyTimePickerStore extends MiniStore {
383
383
  };
384
384
  if (state.config.showMeridian !== _newState.config.showMeridian) {
385
385
  if (state.value) {
386
- _newState.value = new TinyDate(state.value)?.nativeDate;
386
+ _newState.value = new TinyDate(state.value, timeZone)?.nativeDate;
387
387
  }
388
388
  }
389
389
  this.setState(_newState);
@@ -400,31 +400,31 @@ __decorate([
400
400
  __decorate([
401
401
  MiniAction(),
402
402
  __metadata("design:type", Function),
403
- __metadata("design:paramtypes", [Object]),
403
+ __metadata("design:paramtypes", [Object, String]),
404
404
  __metadata("design:returntype", void 0)
405
405
  ], ThyTimePickerStore.prototype, "changeHours", null);
406
406
  __decorate([
407
407
  MiniAction(),
408
408
  __metadata("design:type", Function),
409
- __metadata("design:paramtypes", [Object]),
409
+ __metadata("design:paramtypes", [Object, String]),
410
410
  __metadata("design:returntype", void 0)
411
411
  ], ThyTimePickerStore.prototype, "changeMinutes", null);
412
412
  __decorate([
413
413
  MiniAction(),
414
414
  __metadata("design:type", Function),
415
- __metadata("design:paramtypes", [Object]),
415
+ __metadata("design:paramtypes", [Object, String]),
416
416
  __metadata("design:returntype", void 0)
417
417
  ], ThyTimePickerStore.prototype, "changeSeconds", null);
418
418
  __decorate([
419
419
  MiniAction(),
420
420
  __metadata("design:type", Function),
421
- __metadata("design:paramtypes", [Object]),
421
+ __metadata("design:paramtypes", [Object, String]),
422
422
  __metadata("design:returntype", void 0)
423
423
  ], ThyTimePickerStore.prototype, "setTime", null);
424
424
  __decorate([
425
425
  MiniAction(),
426
426
  __metadata("design:type", Function),
427
- __metadata("design:paramtypes", [Object]),
427
+ __metadata("design:paramtypes", [Object, String]),
428
428
  __metadata("design:returntype", void 0)
429
429
  ], ThyTimePickerStore.prototype, "updateControls", null);
430
430
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyTimePickerStore, decorators: [{
@@ -466,7 +466,7 @@ class ThyInnerTimePicker {
466
466
  // update UI values if date changed
467
467
  this._renderTime(value);
468
468
  this.onChange(value);
469
- this._store.updateControls(getControlsValue(this));
469
+ this._store.updateControls(getControlsValue(this), this.timeZone);
470
470
  }));
471
471
  this.timerPickerSubscription.add(_store
472
472
  .select(state => state.controls)
@@ -491,19 +491,19 @@ class ThyInnerTimePicker {
491
491
  return Math.sign($event.deltaY) * -1;
492
492
  }
493
493
  ngOnChanges(changes) {
494
- this._store.updateControls(getControlsValue(this));
494
+ this._store.updateControls(getControlsValue(this), this.timeZone);
495
495
  }
496
496
  changeHours(step, source = '') {
497
497
  this.resetValidation();
498
- this._store.changeHours({ step, source });
498
+ this._store.changeHours({ step, source }, this.timeZone);
499
499
  }
500
500
  changeMinutes(step, source = '') {
501
501
  this.resetValidation();
502
- this._store.changeMinutes({ step, source });
502
+ this._store.changeMinutes({ step, source }, this.timeZone);
503
503
  }
504
504
  changeSeconds(step, source = '') {
505
505
  this.resetValidation();
506
- this._store.changeSeconds({ step, source });
506
+ this._store.changeSeconds({ step, source }, this.timeZone);
507
507
  }
508
508
  updateHours(hours) {
509
509
  this.resetValidation();
@@ -547,7 +547,7 @@ class ThyInnerTimePicker {
547
547
  minute: this.minutes,
548
548
  seconds: this.seconds,
549
549
  isPM: this.isPM()
550
- }, this.max, this.min);
550
+ }, this.max, this.min, this.timeZone);
551
551
  }
552
552
  _updateTime() {
553
553
  const _seconds = this.showSeconds ? this.seconds : void 0;
@@ -562,7 +562,7 @@ class ThyInnerTimePicker {
562
562
  minute: this.minutes,
563
563
  seconds: this.seconds,
564
564
  isPM: this.isPM()
565
- });
565
+ }, this.timeZone);
566
566
  }
567
567
  toggleMeridian() {
568
568
  if (!this.showMeridian || !this.isEditable) {
@@ -576,7 +576,7 @@ class ThyInnerTimePicker {
576
576
  }
577
577
  writeValue(obj) {
578
578
  if (isValidDate(obj)) {
579
- this._store.writeValue(parseTime(obj));
579
+ this._store.writeValue(parseTime(obj, this.timeZone));
580
580
  }
581
581
  else if (obj == null) {
582
582
  this._store.writeValue(null);
@@ -603,7 +603,7 @@ class ThyInnerTimePicker {
603
603
  this.meridian = this.meridians[0];
604
604
  return;
605
605
  }
606
- const _value = parseTime(value);
606
+ const _value = parseTime(value, this.timeZone);
607
607
  const _hoursPerDayHalf = 12;
608
608
  let _hours = _value.getHours();
609
609
  if (this.showMeridian) {
@@ -619,7 +619,7 @@ class ThyInnerTimePicker {
619
619
  this.seconds = padNumber(_value.getUTCSeconds());
620
620
  }
621
621
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyInnerTimePicker, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
622
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ThyInnerTimePicker, isStandalone: true, selector: "thy-inner-time-picker", inputs: { hourStep: "hourStep", minuteStep: "minuteStep", secondsStep: "secondsStep", readonlyInput: "readonlyInput", disabled: "disabled", mousewheel: "mousewheel", arrowKeys: "arrowKeys", showSpinners: "showSpinners", showMeridian: "showMeridian", showMinutes: "showMinutes", showSeconds: "showSeconds", meridians: "meridians", min: "min", max: "max", hoursPlaceholder: "hoursPlaceholder", minutesPlaceholder: "minutesPlaceholder", secondsPlaceholder: "secondsPlaceholder" }, outputs: { isValid: "isValid" }, providers: [TIMEPICKER_CONTROL_VALUE_ACCESSOR, ThyTimePickerStore], usesOnChanges: true, ngImport: i0, template: "<table>\n <tbody>\n <tr class=\"text-center\" [hidden]=\"!showSpinners\">\n <!-- increment hours button-->\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementHours || !isEditable\" (click)=\"changeHours(hourStep)\"\n ><span class=\"thy-chevron thy-chevron-up\"></span\n ></a>\n </td>\n <!-- divider -->\n @if (showMinutes) {\n <td>&nbsp;&nbsp;&nbsp;</td>\n }\n <!-- increment minutes button -->\n @if (showMinutes) {\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementMinutes || !isEditable\" (click)=\"changeMinutes(minuteStep)\"\n ><span class=\"thy-chevron thy-chevron-up\"></span\n ></a>\n </td>\n }\n <!-- divider -->\n @if (showSeconds) {\n <td>&nbsp;</td>\n }\n <!-- increment seconds button -->\n @if (showSeconds) {\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementSeconds || !isEditable\" (click)=\"changeSeconds(secondsStep)\">\n <span class=\"thy-chevron thy-chevron-up\"></span>\n </a>\n </td>\n }\n <!-- space between -->\n @if (showMeridian) {\n <td>&nbsp;&nbsp;&nbsp;</td>\n }\n <!-- meridian placeholder-->\n @if (showMeridian) {\n <td></td>\n }\n </tr>\n <tr>\n <!-- hours -->\n <td class=\"form-group\" [class.has-error]=\"invalidHours\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidHours\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"hoursPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"hours\"\n (wheel)=\"prevDef($event); changeHours(hourStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeHours(hourStep, 'key')\"\n (keydown.ArrowDown)=\"changeHours(-hourStep, 'key')\"\n (change)=\"updateHours($event.target.value)\"\n />\n </td>\n\n <!-- divider -->\n @if (showMinutes) {\n <td>&nbsp;:&nbsp;</td>\n }\n <!-- minutes -->\n @if (showMinutes) {\n <td class=\"form-group\" [class.has-error]=\"invalidMinutes\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidMinutes\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"minutesPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"minutes\"\n (wheel)=\"prevDef($event); changeMinutes(minuteStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeMinutes(minuteStep, 'key')\"\n (keydown.ArrowDown)=\"changeMinutes(-minuteStep, 'key')\"\n (change)=\"updateMinutes($event.target.value)\"\n />\n </td>\n }\n <!-- divider -->\n @if (showSeconds) {\n <td>&nbsp;:&nbsp;</td>\n }\n <!-- seconds -->\n @if (showSeconds) {\n <td class=\"form-group\" [class.has-error]=\"invalidSeconds\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidSeconds\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"secondsPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"seconds\"\n (wheel)=\"prevDef($event); changeSeconds(secondsStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeSeconds(secondsStep, 'key')\"\n (keydown.ArrowDown)=\"changeSeconds(-secondsStep, 'key')\"\n (change)=\"updateSeconds($event.target.value)\"\n />\n </td>\n }\n <!-- space between -->\n @if (showMeridian) {\n <td>&nbsp;&nbsp;&nbsp;</td>\n }\n <!-- meridian -->\n @if (showMeridian) {\n <td>\n <button\n type=\"button\"\n class=\"btn btn-default text-center\"\n [disabled]=\"!isEditable || !canToggleMeridian\"\n [class.disabled]=\"!isEditable || !canToggleMeridian\"\n (click)=\"toggleMeridian()\"\n >\n {{ meridian }}\n </button>\n </td>\n }\n </tr>\n <tr class=\"text-center\" [hidden]=\"!showSpinners\">\n <!-- decrement hours button-->\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementHours || !isEditable\" (click)=\"changeHours(-hourStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n <!-- divider -->\n @if (showMinutes) {\n <td>&nbsp;&nbsp;&nbsp;</td>\n }\n <!-- decrement minutes button-->\n @if (showMinutes) {\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementMinutes || !isEditable\" (click)=\"changeMinutes(-minuteStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n }\n <!-- divider -->\n @if (showSeconds) {\n <td>&nbsp;</td>\n }\n <!-- decrement seconds button-->\n @if (showSeconds) {\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementSeconds || !isEditable\" (click)=\"changeSeconds(-secondsStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n }\n <!-- space between -->\n @if (showMeridian) {\n <td>&nbsp;&nbsp;&nbsp;</td>\n }\n <!-- meridian placeholder-->\n @if (showMeridian) {\n <td></td>\n }\n </tr>\n </tbody>\n</table>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
622
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ThyInnerTimePicker, isStandalone: true, selector: "thy-inner-time-picker", inputs: { hourStep: "hourStep", minuteStep: "minuteStep", secondsStep: "secondsStep", readonlyInput: "readonlyInput", disabled: "disabled", mousewheel: "mousewheel", arrowKeys: "arrowKeys", showSpinners: "showSpinners", showMeridian: "showMeridian", showMinutes: "showMinutes", showSeconds: "showSeconds", meridians: "meridians", min: "min", max: "max", hoursPlaceholder: "hoursPlaceholder", minutesPlaceholder: "minutesPlaceholder", secondsPlaceholder: "secondsPlaceholder", timeZone: "timeZone" }, outputs: { isValid: "isValid" }, providers: [TIMEPICKER_CONTROL_VALUE_ACCESSOR, ThyTimePickerStore], usesOnChanges: true, ngImport: i0, template: "<table>\n <tbody>\n <tr class=\"text-center\" [hidden]=\"!showSpinners\">\n <!-- increment hours button-->\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementHours || !isEditable\" (click)=\"changeHours(hourStep)\"\n ><span class=\"thy-chevron thy-chevron-up\"></span\n ></a>\n </td>\n <!-- divider -->\n @if (showMinutes) {\n <td>&nbsp;&nbsp;&nbsp;</td>\n }\n <!-- increment minutes button -->\n @if (showMinutes) {\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementMinutes || !isEditable\" (click)=\"changeMinutes(minuteStep)\"\n ><span class=\"thy-chevron thy-chevron-up\"></span\n ></a>\n </td>\n }\n <!-- divider -->\n @if (showSeconds) {\n <td>&nbsp;</td>\n }\n <!-- increment seconds button -->\n @if (showSeconds) {\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canIncrementSeconds || !isEditable\" (click)=\"changeSeconds(secondsStep)\">\n <span class=\"thy-chevron thy-chevron-up\"></span>\n </a>\n </td>\n }\n <!-- space between -->\n @if (showMeridian) {\n <td>&nbsp;&nbsp;&nbsp;</td>\n }\n <!-- meridian placeholder-->\n @if (showMeridian) {\n <td></td>\n }\n </tr>\n <tr>\n <!-- hours -->\n <td class=\"form-group\" [class.has-error]=\"invalidHours\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidHours\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"hoursPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"hours\"\n (wheel)=\"prevDef($event); changeHours(hourStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeHours(hourStep, 'key')\"\n (keydown.ArrowDown)=\"changeHours(-hourStep, 'key')\"\n (change)=\"updateHours($event.target.value)\"\n />\n </td>\n\n <!-- divider -->\n @if (showMinutes) {\n <td>&nbsp;:&nbsp;</td>\n }\n <!-- minutes -->\n @if (showMinutes) {\n <td class=\"form-group\" [class.has-error]=\"invalidMinutes\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidMinutes\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"minutesPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"minutes\"\n (wheel)=\"prevDef($event); changeMinutes(minuteStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeMinutes(minuteStep, 'key')\"\n (keydown.ArrowDown)=\"changeMinutes(-minuteStep, 'key')\"\n (change)=\"updateMinutes($event.target.value)\"\n />\n </td>\n }\n <!-- divider -->\n @if (showSeconds) {\n <td>&nbsp;:&nbsp;</td>\n }\n <!-- seconds -->\n @if (showSeconds) {\n <td class=\"form-group\" [class.has-error]=\"invalidSeconds\">\n <input\n type=\"text\"\n [class.is-invalid]=\"invalidSeconds\"\n class=\"form-control text-center thy-time-picker-field\"\n [placeholder]=\"secondsPlaceholder\"\n maxlength=\"2\"\n [readonly]=\"readonlyInput\"\n [disabled]=\"disabled\"\n [value]=\"seconds\"\n (wheel)=\"prevDef($event); changeSeconds(secondsStep * wheelSign($event), 'wheel')\"\n (keydown.ArrowUp)=\"changeSeconds(secondsStep, 'key')\"\n (keydown.ArrowDown)=\"changeSeconds(-secondsStep, 'key')\"\n (change)=\"updateSeconds($event.target.value)\"\n />\n </td>\n }\n <!-- space between -->\n @if (showMeridian) {\n <td>&nbsp;&nbsp;&nbsp;</td>\n }\n <!-- meridian -->\n @if (showMeridian) {\n <td>\n <button\n type=\"button\"\n class=\"btn btn-default text-center\"\n [disabled]=\"!isEditable || !canToggleMeridian\"\n [class.disabled]=\"!isEditable || !canToggleMeridian\"\n (click)=\"toggleMeridian()\"\n >\n {{ meridian }}\n </button>\n </td>\n }\n </tr>\n <tr class=\"text-center\" [hidden]=\"!showSpinners\">\n <!-- decrement hours button-->\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementHours || !isEditable\" (click)=\"changeHours(-hourStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n <!-- divider -->\n @if (showMinutes) {\n <td>&nbsp;&nbsp;&nbsp;</td>\n }\n <!-- decrement minutes button-->\n @if (showMinutes) {\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementMinutes || !isEditable\" (click)=\"changeMinutes(-minuteStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n }\n <!-- divider -->\n @if (showSeconds) {\n <td>&nbsp;</td>\n }\n <!-- decrement seconds button-->\n @if (showSeconds) {\n <td>\n <a class=\"btn btn-link\" [class.disabled]=\"!canDecrementSeconds || !isEditable\" (click)=\"changeSeconds(-secondsStep)\">\n <span class=\"thy-chevron thy-chevron-down\"></span>\n </a>\n </td>\n }\n <!-- space between -->\n @if (showMeridian) {\n <td>&nbsp;&nbsp;&nbsp;</td>\n }\n <!-- meridian placeholder-->\n @if (showMeridian) {\n <td></td>\n }\n </tr>\n </tbody>\n</table>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
623
623
  }
624
624
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyInnerTimePicker, decorators: [{
625
625
  type: Component,
@@ -658,6 +658,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
658
658
  type: Input
659
659
  }], secondsPlaceholder: [{
660
660
  type: Input
661
+ }], timeZone: [{
662
+ type: Input
661
663
  }], isValid: [{
662
664
  type: Output
663
665
  }] } });