@gipisistemas/ng-core 1.1.11 → 1.1.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. package/assets/styles/colors.scss +228 -211
  2. package/assets/styles/styles.scss +50 -5
  3. package/bundles/gipisistemas-ng-core.umd.js +3467 -122
  4. package/bundles/gipisistemas-ng-core.umd.js.map +1 -1
  5. package/bundles/gipisistemas-ng-core.umd.min.js +9 -9
  6. package/bundles/gipisistemas-ng-core.umd.min.js.map +1 -1
  7. package/core/gipi-components/components/abstract-find.component.d.ts +1 -0
  8. package/core/gipi-components/components/abstract.component.d.ts +1 -0
  9. package/esm2015/core/gipi-components/components/abstract-find.component.js +22 -1
  10. package/esm2015/core/gipi-components/components/abstract.component.js +5 -2
  11. package/esm2015/gipi-components.js +19 -6
  12. package/esm2015/gipisistemas-ng-core.js +3 -1
  13. package/esm2015/shared/gipi-components/datepicker/date-range-picker/date-range-picker.component.js +1 -1
  14. package/esm2015/shared/gipi-components/datepicker/datepicker/datepicker.component.js +3 -3
  15. package/esm2015/shared/gipi-components/datepicker/mat-datepicker/calendar-body.js +1 -1
  16. package/esm2015/shared/gipi-components/datepicker/mat-datepicker/date-range-input.js +1 -1
  17. package/esm2015/shared/gipi-components/datetime-picker/datetime-picker/datetime-picker.component.js +158 -0
  18. package/esm2015/shared/gipi-components/datetime-picker/datetime-picker.module.js +82 -0
  19. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/calendar-body.js +116 -0
  20. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/calendar.js +676 -0
  21. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/clock.js +306 -0
  22. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-animations.js +30 -0
  23. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-errors.js +7 -0
  24. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-filtertype.js +7 -0
  25. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-input.js +346 -0
  26. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-toggle.js +83 -0
  27. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-type.js +1 -0
  28. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker.js +451 -0
  29. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/month-view.js +151 -0
  30. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/multi-year-view.js +230 -0
  31. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/adapter.module.js +43 -0
  32. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/datetime-adapter.js +139 -0
  33. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/datetime-formats.js +3 -0
  34. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/native-datetime-adapter.js +138 -0
  35. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/native-datetime-formats.js +20 -0
  36. package/esm2015/shared/gipi-components/datetime-picker/mat-datetime-picker/year-view.js +141 -0
  37. package/esm2015/shared/gipi-components/dropdown-menu/dropdown-menu.component.js +1 -1
  38. package/esm2015/shared/gipi-components/form-field/form-field.component.js +1 -1
  39. package/esm2015/shared/gipi-components/input-currency/input-currency.component.js +1 -1
  40. package/esm2015/shared/gipi-components/input-monthpicker/input-monthpicker.component.js +1 -1
  41. package/esm2015/shared/gipi-components/input-select/input-select.component.js +1 -1
  42. package/esm2015/shared/gipi-components/month-year-picker/month-year-picker.component.js +1 -1
  43. package/esm2015/shared/gipi-components/radio-group/radio-group.component.js +1 -1
  44. package/esm2015/shared/gipi-components/range-page/range-page.component.js +1 -1
  45. package/esm2015/shared/gipi-components/range-slider/range-slider.component.js +1 -1
  46. package/esm2015/shared/gipi-components/select-button/select-button.component.js +1 -1
  47. package/esm2015/shared/gipi-components/textarea/textarea.component.js +1 -1
  48. package/esm2015/shared/shared.module.js +51 -3
  49. package/esm5/core/gipi-components/components/abstract-find.component.js +22 -1
  50. package/esm5/core/gipi-components/components/abstract.component.js +5 -2
  51. package/esm5/gipi-components.js +19 -6
  52. package/esm5/gipisistemas-ng-core.js +3 -1
  53. package/esm5/shared/gipi-components/datepicker/date-range-picker/date-range-picker.component.js +1 -1
  54. package/esm5/shared/gipi-components/datepicker/datepicker/datepicker.component.js +3 -3
  55. package/esm5/shared/gipi-components/datepicker/mat-datepicker/calendar-body.js +1 -1
  56. package/esm5/shared/gipi-components/datepicker/mat-datepicker/date-range-input.js +1 -1
  57. package/esm5/shared/gipi-components/datetime-picker/datetime-picker/datetime-picker.component.js +176 -0
  58. package/esm5/shared/gipi-components/datetime-picker/datetime-picker.module.js +85 -0
  59. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/calendar-body.js +119 -0
  60. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/calendar.js +747 -0
  61. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/clock.js +332 -0
  62. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-animations.js +30 -0
  63. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-errors.js +7 -0
  64. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-filtertype.js +7 -0
  65. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-input.js +377 -0
  66. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-toggle.js +89 -0
  67. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-type.js +1 -0
  68. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker.js +495 -0
  69. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/month-view.js +160 -0
  70. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/multi-year-view.js +248 -0
  71. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/adapter.module.js +49 -0
  72. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/datetime-adapter.js +145 -0
  73. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/datetime-formats.js +3 -0
  74. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/native-datetime-adapter.js +141 -0
  75. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/native-datetime-formats.js +20 -0
  76. package/esm5/shared/gipi-components/datetime-picker/mat-datetime-picker/year-view.js +151 -0
  77. package/esm5/shared/gipi-components/dropdown-menu/dropdown-menu.component.js +1 -1
  78. package/esm5/shared/gipi-components/form-field/form-field.component.js +1 -1
  79. package/esm5/shared/gipi-components/input-currency/input-currency.component.js +1 -1
  80. package/esm5/shared/gipi-components/input-monthpicker/input-monthpicker.component.js +1 -1
  81. package/esm5/shared/gipi-components/input-select/input-select.component.js +1 -1
  82. package/esm5/shared/gipi-components/month-year-picker/month-year-picker.component.js +1 -1
  83. package/esm5/shared/gipi-components/radio-group/radio-group.component.js +1 -1
  84. package/esm5/shared/gipi-components/range-page/range-page.component.js +1 -1
  85. package/esm5/shared/gipi-components/range-slider/range-slider.component.js +1 -1
  86. package/esm5/shared/gipi-components/select-button/select-button.component.js +1 -1
  87. package/esm5/shared/gipi-components/textarea/textarea.component.js +1 -1
  88. package/esm5/shared/shared.module.js +51 -3
  89. package/fesm2015/gipisistemas-ng-core.js +3234 -167
  90. package/fesm2015/gipisistemas-ng-core.js.map +1 -1
  91. package/fesm5/gipisistemas-ng-core.js +3445 -128
  92. package/fesm5/gipisistemas-ng-core.js.map +1 -1
  93. package/gipi-components.d.ts +16 -0
  94. package/gipisistemas-ng-core.d.ts +2 -0
  95. package/gipisistemas-ng-core.metadata.json +1 -1
  96. package/package.json +4 -4
  97. package/shared/gipi-components/datetime-picker/datetime-picker/datetime-picker.component.d.ts +40 -0
  98. package/shared/gipi-components/datetime-picker/datetime-picker.module.d.ts +2 -0
  99. package/shared/gipi-components/datetime-picker/mat-datetime-picker/calendar-body.d.ts +50 -0
  100. package/shared/gipi-components/datetime-picker/mat-datetime-picker/calendar.d.ts +140 -0
  101. package/shared/gipi-components/datetime-picker/mat-datetime-picker/clock.d.ts +66 -0
  102. package/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-animations.d.ts +8 -0
  103. package/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-errors.d.ts +2 -0
  104. package/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-filtertype.d.ts +5 -0
  105. package/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-input.d.ts +98 -0
  106. package/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-toggle.d.ts +20 -0
  107. package/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker-type.d.ts +1 -0
  108. package/shared/gipi-components/datetime-picker/mat-datetime-picker/datetimepicker.d.ts +133 -0
  109. package/shared/gipi-components/datetime-picker/mat-datetime-picker/month-view.d.ts +53 -0
  110. package/shared/gipi-components/datetime-picker/mat-datetime-picker/multi-year-view.d.ts +80 -0
  111. package/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/adapter.module.d.ts +4 -0
  112. package/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/datetime-adapter.d.ts +46 -0
  113. package/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/datetime-formats.d.ts +20 -0
  114. package/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/native-datetime-adapter.d.ts +36 -0
  115. package/shared/gipi-components/datetime-picker/mat-datetime-picker/shared/adapter/native-datetime-formats.d.ts +2 -0
  116. package/shared/gipi-components/datetime-picker/mat-datetime-picker/year-view.d.ts +52 -0
@@ -236,15 +236,6 @@
236
236
  NOT_PERMISSION: 'Infelizmente, esta ação não é permitida para o seu perfil',
237
237
  };
238
238
 
239
- /**
240
- * @license
241
- * Copyright Google LLC All Rights Reserved.
242
- *
243
- * Use of this source code is governed by an MIT-style license that can be
244
- * found in the LICENSE file at https://angular.io/license
245
- */
246
- var MAT_DATE_FORMATS = new core.InjectionToken('mat-date-formats');
247
-
248
239
  var MODULES = [
249
240
  a11y.A11yModule,
250
241
  popoverEdit.CdkPopoverEditModule,
@@ -301,6 +292,17 @@
301
292
  return MaterialModule;
302
293
  }());
303
294
 
295
+ /**
296
+ * @license
297
+ * Copyright Google LLC All Rights Reserved.
298
+ *
299
+ * Use of this source code is governed by an MIT-style license that can be
300
+ * found in the LICENSE file at https://angular.io/license
301
+ */
302
+ var MAT_DATE_FORMATS = new core.InjectionToken('mat-date-formats');
303
+
304
+ var GIPI_DATETIME_FORMATS = new core.InjectionToken('mat-datetime-formats');
305
+
304
306
  var ButtonComponent = /** @class */ (function () {
305
307
  function ButtonComponent() {
306
308
  this.color = 'primary';
@@ -9904,7 +9906,7 @@
9904
9906
  'class': 'gipi-dropdown-menu',
9905
9907
  },
9906
9908
  changeDetection: core.ChangeDetectionStrategy.OnPush,
9907
- styles: [".dropdown-menu-container{display:flex;flex-direction:column;gap:1rem;width:100%}.dropdown-menu-container .dropdown-menu-label{color:#131313;font-size:1.4rem;line-height:100%}.dropdown-menu-container .dropdown-menu-label>span{color:#d14014;font-size:inherit;line-height:inherit}.dropdown-menu-container .dropdown-menu-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:12px;gap:1rem;width:100%;max-height:4rem;border-radius:5px;cursor:pointer;background-color:#fff;border:1px solid rgba(0,0,0,.12);color:#696969;transition:.2s}.dropdown-menu-container .dropdown-menu-content:focus-within,.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:active),.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.dropdown-menu-container .dropdown-menu-content:focus-within,.dropdown-menu-container .dropdown-menu-content:hover{border-color:#bfbfbf!important;background-color:#f5f5f5}.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:disabled){background-color:#e0e1e2!important;border-color:#e0e1e2!important;color:#d1d2d4!important;box-shadow:none!important;cursor:not-allowed!important;pointer-events:none!important}.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:disabled) .dropdown-menu-input,.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:disabled) .dropdown-menu-suffix .dropdown-menu-button{cursor:not-allowed!important;pointer-events:none!important}.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:disabled) .dropdown-menu-suffix .dropdown-menu-trigger{border-color:#e0e1e2!important;pointer-events:none!important}.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:disabled) mat-icon{color:#d1d2d4!important;fill:#d1d2d4!important;cursor:not-allowed!important;pointer-events:none!important}.dropdown-menu-container .dropdown-menu-content .dropdown-menu-input{cursor:pointer;height:16px;outline:0;border:none;background-color:transparent;color:inherit;flex:1;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-menu-container .dropdown-menu-content .dropdown-menu-suffix{display:flex;flex-direction:row;align-items:center;gap:16px}.dropdown-menu-container .dropdown-menu-content .dropdown-menu-suffix .dropdown-menu-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-inline:8px;border-radius:40px;border:1px solid transparent;color:#131313;background-color:#f0f0f0;font-size:1.2rem;line-height:1.4rem}.dropdown-menu-container .dropdown-menu-content .dropdown-menu-suffix .dropdown-menu-button{display:flex;align-items:center;justify-content:center;outline:0;border:none;cursor:pointer;background-color:transparent}.dropdown-menu-container .dropdown-menu-content .dropdown-menu-suffix .dropdown-menu-button:hover:not(:disabled)>mat-icon{transform:scale(1.08)}.dropdown-menu-icon{width:1.6rem;height:1.6rem;font-size:1.6rem;color:#131313;fill:#131313}.btn-popover-content{background-color:#fff;border-radius:4px;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);padding:8px}"]
9909
+ styles: [".dropdown-menu-container{display:flex;flex-direction:column;gap:1rem;width:100%}.dropdown-menu-container .dropdown-menu-label{color:#131313;font-size:1.4rem;line-height:100%}.dropdown-menu-container .dropdown-menu-label>span{color:#d14014;font-size:inherit;line-height:inherit}.dropdown-menu-container .dropdown-menu-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:12px;gap:1rem;width:100%;max-height:4rem;border-radius:5px;cursor:pointer;background-color:#fff;border:1px solid #0000001f;color:#696969;transition:.2s}.dropdown-menu-container .dropdown-menu-content:focus-within,.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:active),.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.dropdown-menu-container .dropdown-menu-content:focus-within,.dropdown-menu-container .dropdown-menu-content:hover{border-color:#bfbfbf!important;background-color:#f5f5f5}.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:disabled){background-color:#e0e1e2!important;border-color:#e0e1e2!important;color:#d1d2d4!important;box-shadow:none!important;cursor:not-allowed!important;pointer-events:none!important}.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:disabled) .dropdown-menu-input,.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:disabled) .dropdown-menu-suffix .dropdown-menu-button{cursor:not-allowed!important;pointer-events:none!important}.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:disabled) .dropdown-menu-suffix .dropdown-menu-trigger{border-color:#e0e1e2!important;pointer-events:none!important}.dropdown-menu-container .dropdown-menu-content:has(.dropdown-menu-input:disabled) mat-icon{color:#d1d2d4!important;fill:#d1d2d4!important;cursor:not-allowed!important;pointer-events:none!important}.dropdown-menu-container .dropdown-menu-content .dropdown-menu-input{cursor:pointer;height:16px;outline:0;border:none;background-color:transparent;color:inherit;flex:1;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-menu-container .dropdown-menu-content .dropdown-menu-suffix{display:flex;flex-direction:row;align-items:center;gap:16px}.dropdown-menu-container .dropdown-menu-content .dropdown-menu-suffix .dropdown-menu-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-inline:8px;border-radius:40px;border:1px solid transparent;color:#131313;background-color:#f0f0f0;font-size:1.2rem;line-height:1.4rem}.dropdown-menu-container .dropdown-menu-content .dropdown-menu-suffix .dropdown-menu-button{display:flex;align-items:center;justify-content:center;outline:0;border:none;cursor:pointer;background-color:transparent}.dropdown-menu-container .dropdown-menu-content .dropdown-menu-suffix .dropdown-menu-button:hover:not(:disabled)>mat-icon{transform:scale(1.08)}.dropdown-menu-icon{width:1.6rem;height:1.6rem;font-size:1.6rem;color:#131313;fill:#131313}.btn-popover-content{background-color:#fff;border-radius:4px;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);padding:8px}"]
9908
9910
  }),
9909
9911
  __metadata("design:paramtypes", [core.ChangeDetectorRef,
9910
9912
  core.ElementRef])
@@ -10613,7 +10615,7 @@
10613
10615
  'class': 'gipi-form-field',
10614
10616
  },
10615
10617
  changeDetection: core.ChangeDetectionStrategy.OnPush,
10616
- styles: [":host{display:block;min-width:0;max-width:100%;flex:1}.form-field-container{display:flex;flex-direction:column;gap:1rem;width:100%}.form-field-container .form-field-label{color:#131313;font-size:1.4rem;line-height:100%}.form-field-container .form-field-label>span{color:#d14014;font-size:inherit;line-height:inherit}.form-field-container .form-field-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:1.2rem;gap:1rem;width:100%;max-height:4rem;border-radius:5px;cursor:text;background-color:#fff;border:1px solid rgba(0,0,0,.12);color:#696969;caret-color:#9a9da2;transition:.2s}.form-field-container .form-field-content:focus-within,.form-field-container .form-field-content:has(.form-field-input:active),.form-field-container .form-field-content:has(.form-field-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.form-field-container .form-field-content:focus-within,.form-field-container .form-field-content:hover{border-color:#bfbfbf!important}.form-field-container .form-field-content:has(.form-field-input:invalid){border-color:#d14014!important;color:#d14014!important;caret-color:#d14014!important}.form-field-container .form-field-content:has(.form-field-input:invalid):focus-within{box-shadow:0 0 0 .2rem #f1c4b6!important}.form-field-container .form-field-content:has(.form-field-input:disabled){border-color:#e0e1e2!important;color:#d1d2d4!important;box-shadow:none!important;cursor:not-allowed!important;caret-color:#d1d2d4!important;pointer-events:none!important}.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-input,.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-suffix .form-field-button{cursor:not-allowed!important;pointer-events:none!important}.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-suffix .form-field-trigger{border-color:#e0e1e2!important;pointer-events:none!important}.form-field-container .form-field-content:has(.form-field-input:disabled) mat-icon{color:#d1d2d4!important;fill:#d1d2d4!important;cursor:not-allowed!important;pointer-events:none!important}.form-field-container .form-field-content.form-field-select,.form-field-container .form-field-content.form-field-select .form-field-input{box-shadow:none!important;cursor:pointer!important}.form-field-container .form-field-content .form-field-input{height:16px;outline:0;border:none;background-color:transparent;color:inherit;flex:1;max-width:85%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-field-container .form-field-content .form-field-suffix{display:flex;flex-direction:row;align-items:center;gap:1.6rem}.form-field-container .form-field-content .form-field-suffix .form-field-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-inline:8px;border-radius:40px;border:1px solid transparent;color:#131313;background-color:#f0f0f0;font-size:1.2rem;line-height:1.4rem}.form-field-container .form-field-content .form-field-suffix .form-field-button{display:flex;align-items:center;justify-content:center;outline:0;border:none;cursor:pointer;background-color:transparent}.form-field-container .form-field-content .form-field-suffix .form-field-button:hover:not(:disabled)>mat-icon{transform:scale(1.08)}.form-field-icon{width:1.6rem;height:1.6rem;font-size:1.6rem;color:#131313;fill:#131313}.form-field-icon-arrow{border:solid #131313;border-width:0 2px 2px 0;display:inline-block;padding:3px;transform:rotate(45deg);margin:-5px 4px 0}"]
10618
+ styles: [":host{display:block;min-width:0;max-width:100%;flex:1}.form-field-container{display:flex;flex-direction:column;gap:1rem;width:100%}.form-field-container .form-field-label{color:#131313;font-size:1.4rem;line-height:100%}.form-field-container .form-field-label>span{color:#d14014;font-size:inherit;line-height:inherit}.form-field-container .form-field-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:1.2rem;gap:1rem;width:100%;max-height:4rem;border-radius:5px;cursor:text;background-color:#fff;border:1px solid #0000001f;color:#696969;caret-color:#9a9da2;transition:.2s}.form-field-container .form-field-content:focus-within,.form-field-container .form-field-content:has(.form-field-input:active),.form-field-container .form-field-content:has(.form-field-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.form-field-container .form-field-content:focus-within,.form-field-container .form-field-content:hover{border-color:#bfbfbf!important}.form-field-container .form-field-content:has(.form-field-input:invalid){border-color:#d14014!important;color:#d14014!important;caret-color:#d14014!important}.form-field-container .form-field-content:has(.form-field-input:invalid):focus-within{box-shadow:0 0 0 .2rem #f1c4b6!important}.form-field-container .form-field-content:has(.form-field-input:disabled){border-color:#e0e1e2!important;color:#d1d2d4!important;box-shadow:none!important;cursor:not-allowed!important;caret-color:#d1d2d4!important;pointer-events:none!important}.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-input,.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-suffix .form-field-button{cursor:not-allowed!important;pointer-events:none!important}.form-field-container .form-field-content:has(.form-field-input:disabled) .form-field-suffix .form-field-trigger{border-color:#e0e1e2!important;pointer-events:none!important}.form-field-container .form-field-content:has(.form-field-input:disabled) mat-icon{color:#d1d2d4!important;fill:#d1d2d4!important;cursor:not-allowed!important;pointer-events:none!important}.form-field-container .form-field-content.form-field-select,.form-field-container .form-field-content.form-field-select .form-field-input{box-shadow:none!important;cursor:pointer!important}.form-field-container .form-field-content .form-field-input{height:16px;outline:0;border:none;background-color:transparent;color:inherit;flex:1;max-width:85%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-field-container .form-field-content .form-field-suffix{display:flex;flex-direction:row;align-items:center;gap:1.6rem}.form-field-container .form-field-content .form-field-suffix .form-field-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-inline:8px;border-radius:40px;border:1px solid transparent;color:#131313;background-color:#f0f0f0;font-size:1.2rem;line-height:1.4rem}.form-field-container .form-field-content .form-field-suffix .form-field-button{display:flex;align-items:center;justify-content:center;outline:0;border:none;cursor:pointer;background-color:transparent}.form-field-container .form-field-content .form-field-suffix .form-field-button:hover:not(:disabled)>mat-icon{transform:scale(1.08)}.form-field-icon{width:1.6rem;height:1.6rem;font-size:1.6rem;color:#131313;fill:#131313}.form-field-icon-arrow{border:solid #131313;border-width:0 2px 2px 0;display:inline-block;padding:3px;transform:rotate(45deg);margin:-5px 4px 0}"]
10617
10619
  }),
10618
10620
  __metadata("design:paramtypes", [core.ChangeDetectorRef,
10619
10621
  core.ElementRef])
@@ -10993,7 +10995,7 @@
10993
10995
  'class': 'gipi-input-currency',
10994
10996
  },
10995
10997
  changeDetection: core.ChangeDetectionStrategy.OnPush,
10996
- styles: [":host{display:block;min-width:0;max-width:100%;flex:1}.input-currency-container{display:flex;flex-direction:column;gap:1rem;width:100%}.input-currency-container .input-currency-label{color:#131313;font-size:1.4rem;line-height:100%}.input-currency-container .input-currency-label>span{color:#d14014;font-size:inherit;line-height:inherit}.input-currency-container .input-currency-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:12px;width:100%;max-height:4rem;border-radius:5px;cursor:text;background-color:#fff;border:1px solid rgba(0,0,0,.12);color:#696969;caret-color:#9a9da2;transition:.2s}.input-currency-container .input-currency-content:focus-within,.input-currency-container .input-currency-content:has(.input-currency-input:active),.input-currency-container .input-currency-content:has(.input-currency-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.input-currency-container .input-currency-content:focus-within,.input-currency-container .input-currency-content:hover{border-color:#bfbfbf!important}.input-currency-container .input-currency-content:has(.input-currency-input:invalid){border-color:#d14014!important;color:#d14014!important;caret-color:#d14014!important}.input-currency-container .input-currency-content:has(.input-currency-input:invalid):focus-within{box-shadow:0 0 0 .2rem #f1c4b6!important}.input-currency-container .input-currency-content:has(.input-currency-input:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed!important;box-shadow:none!important;pointer-events:none!important}.input-currency-container .input-currency-content .input-currency-input{height:16px;outline:0;border:none;background-color:transparent;color:inherit;flex:1}"]
10998
+ styles: [":host{display:block;min-width:0;max-width:100%;flex:1}.input-currency-container{display:flex;flex-direction:column;gap:1rem;width:100%}.input-currency-container .input-currency-label{color:#131313;font-size:1.4rem;line-height:100%}.input-currency-container .input-currency-label>span{color:#d14014;font-size:inherit;line-height:inherit}.input-currency-container .input-currency-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:12px;width:100%;max-height:4rem;border-radius:5px;cursor:text;background-color:#fff;border:1px solid #0000001f;color:#696969;caret-color:#9a9da2;transition:.2s}.input-currency-container .input-currency-content:focus-within,.input-currency-container .input-currency-content:has(.input-currency-input:active),.input-currency-container .input-currency-content:has(.input-currency-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.input-currency-container .input-currency-content:focus-within,.input-currency-container .input-currency-content:hover{border-color:#bfbfbf!important}.input-currency-container .input-currency-content:has(.input-currency-input:invalid){border-color:#d14014!important;color:#d14014!important;caret-color:#d14014!important}.input-currency-container .input-currency-content:has(.input-currency-input:invalid):focus-within{box-shadow:0 0 0 .2rem #f1c4b6!important}.input-currency-container .input-currency-content:has(.input-currency-input:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed!important;box-shadow:none!important;pointer-events:none!important}.input-currency-container .input-currency-content .input-currency-input{height:16px;outline:0;border:none;background-color:transparent;color:inherit;flex:1}"]
10997
10999
  }),
10998
11000
  __metadata("design:paramtypes", [core.ChangeDetectorRef,
10999
11001
  core.ElementRef])
@@ -11413,7 +11415,7 @@
11413
11415
  'class': 'gipi-input-monthpicker',
11414
11416
  },
11415
11417
  changeDetection: core.ChangeDetectionStrategy.OnPush,
11416
- styles: [":host{display:block;min-width:0;max-width:100%;flex:1}.input-monthpicker-container{display:flex;flex-direction:column;gap:1rem;width:100%}.input-monthpicker-container .input-monthpicker-label{color:#131313;font-size:1.4rem;line-height:100%}.input-monthpicker-container .input-monthpicker-label>span{color:#d14014;font-size:inherit;line-height:inherit}.input-monthpicker-container .input-monthpicker-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:12px;width:100%;max-height:4rem;border-radius:5px;cursor:text;background-color:#fff;border:1px solid rgba(0,0,0,.12);color:#696969;caret-color:#9a9da2;transition:.2s;position:relative}.input-monthpicker-container .input-monthpicker-content:focus-within,.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:active),.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.input-monthpicker-container .input-monthpicker-content:focus-within,.input-monthpicker-container .input-monthpicker-content:hover{border-color:#bfbfbf!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;box-shadow:none!important;caret-color:#d1d2d4!important;pointer-events:none!important;cursor:not-allowed!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-input,.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-suffix .input-monthpicker-button{cursor:not-allowed!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-suffix .input-monthpicker-trigger{border-color:#e0e1e2!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) mat-icon{color:#d1d2d4!important;fill:#d1d2d4!important;cursor:not-allowed!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-input{height:16px;max-width:84%;outline:0;border:none;background-color:transparent;color:inherit;flex:1}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix{display:flex;flex-direction:row;align-items:center;gap:16px}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix .input-monthpicker-button{display:flex;align-items:center;justify-content:center;outline:0;border:none;cursor:pointer;background-color:transparent}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix .input-monthpicker-button:hover:not(:disabled)>mat-icon{transform:scale(1.08)}.input-monthpicker-icon{width:1.6rem;height:1.6rem;font-size:1.6rem;color:#131313;fill:#131313}::ng-deep .calendar{width:100%;display:flex;flex-direction:column}::ng-deep .calendar .calendar-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid #aeb1b5;margin-bottom:8px}::ng-deep .calendar .calendar-header .calendar-title{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:1.6rem;line-height:1.8rem;font-weight:600;cursor:default;border-radius:8px;padding:8px;white-space:nowrap}::ng-deep .calendar .calendar-header .calendar-title>mat-icon{font-size:2rem;width:20px;height:20px}::ng-deep .calendar .calendar-header .calendar-title.month:hover{cursor:pointer;background-color:#f0f0f0}::ng-deep .calendar .calendar-header .calendar-controls{display:flex;flex-direction:row;align-items:center;gap:8px}::ng-deep .calendar .calendar-header .calendar-controls>button{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;background-color:#e0313e;cursor:pointer;transition:.3s;border:0;outline:0;color:#fff}::ng-deep .calendar .calendar-header .calendar-controls>button:hover{background-color:#cc2d38}::ng-deep .calendar .calendar-header .calendar-controls>button>mat-icon{font-size:1.8rem;width:18px;height:18px}::ng-deep .calendar .table-months{display:-ms-grid;display:grid;-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr);gap:4px}::ng-deep .calendar .table-months .month{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;font-size:1.4rem;line-height:1.7rem;color:#555659;background-color:#f0f0f0;transition:background-color .1s;cursor:pointer}::ng-deep .calendar .table-months .month.disabled{color:#bbbdc1;background-color:#e0e1e2}::ng-deep .calendar .table-months .month:not(.disabled).selected,::ng-deep .calendar .table-months .month:not(.disabled):hover{color:#fff;background-color:#e0313e}::ng-deep .calendar .table-months .month:not(.disabled).selected:hover{background-color:#cc2d38}::ng-deep .calendar .table-years{display:-ms-grid;display:grid;-ms-grid-columns:(1fr)[4];grid-template-columns:repeat(4,1fr);gap:4px}::ng-deep .calendar .table-years .year{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;font-size:1.4rem;line-height:1.7rem;color:#555659;background-color:#f0f0f0;transition:background-color .1s;cursor:pointer}::ng-deep .calendar .table-years .year.disabled{color:#bbbdc1;background-color:#e0e1e2}::ng-deep .calendar .table-years .year:not(.disabled).selected,::ng-deep .calendar .table-years .year:not(.disabled):hover{color:#fff;background-color:#e0313e}::ng-deep .calendar .table-years .year:not(.disabled).selected:hover{background-color:#cc2d38}"]
11418
+ styles: [":host{display:block;min-width:0;max-width:100%;flex:1}.input-monthpicker-container{display:flex;flex-direction:column;gap:1rem;width:100%}.input-monthpicker-container .input-monthpicker-label{color:#131313;font-size:1.4rem;line-height:100%}.input-monthpicker-container .input-monthpicker-label>span{color:#d14014;font-size:inherit;line-height:inherit}.input-monthpicker-container .input-monthpicker-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:12px;width:100%;max-height:4rem;border-radius:5px;cursor:text;background-color:#fff;border:1px solid #0000001f;color:#696969;caret-color:#9a9da2;transition:.2s;position:relative}.input-monthpicker-container .input-monthpicker-content:focus-within,.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:active),.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:focus){box-shadow:0 0 0 .2rem #f0f0f0}.input-monthpicker-container .input-monthpicker-content:focus-within,.input-monthpicker-container .input-monthpicker-content:hover{border-color:#bfbfbf!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;box-shadow:none!important;caret-color:#d1d2d4!important;pointer-events:none!important;cursor:not-allowed!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-input,.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-suffix .input-monthpicker-button{cursor:not-allowed!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) .input-monthpicker-suffix .input-monthpicker-trigger{border-color:#e0e1e2!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content:has(.input-monthpicker-input:disabled) mat-icon{color:#d1d2d4!important;fill:#d1d2d4!important;cursor:not-allowed!important;pointer-events:none!important}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-input{height:16px;max-width:84%;outline:0;border:none;background-color:transparent;color:inherit;flex:1}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix{display:flex;flex-direction:row;align-items:center;gap:16px}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix .input-monthpicker-button{display:flex;align-items:center;justify-content:center;outline:0;border:none;cursor:pointer;background-color:transparent}.input-monthpicker-container .input-monthpicker-content .input-monthpicker-suffix .input-monthpicker-button:hover:not(:disabled)>mat-icon{transform:scale(1.08)}.input-monthpicker-icon{width:1.6rem;height:1.6rem;font-size:1.6rem;color:#131313;fill:#131313}::ng-deep .calendar{width:100%;display:flex;flex-direction:column}::ng-deep .calendar .calendar-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid #aeb1b5;margin-bottom:8px}::ng-deep .calendar .calendar-header .calendar-title{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:1.6rem;line-height:1.8rem;font-weight:600;cursor:default;border-radius:8px;padding:8px;white-space:nowrap}::ng-deep .calendar .calendar-header .calendar-title>mat-icon{font-size:2rem;width:20px;height:20px}::ng-deep .calendar .calendar-header .calendar-title.month:hover{cursor:pointer;background-color:#f0f0f0}::ng-deep .calendar .calendar-header .calendar-controls{display:flex;flex-direction:row;align-items:center;gap:8px}::ng-deep .calendar .calendar-header .calendar-controls>button{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;background-color:#e0313e;cursor:pointer;transition:.3s;border:0;outline:0;color:#fff}::ng-deep .calendar .calendar-header .calendar-controls>button:hover{background-color:#cc2d38}::ng-deep .calendar .calendar-header .calendar-controls>button>mat-icon{font-size:1.8rem;width:18px;height:18px}::ng-deep .calendar .table-months{display:-ms-grid;display:grid;-ms-grid-columns:(1fr)[3];grid-template-columns:repeat(3,1fr);gap:4px}::ng-deep .calendar .table-months .month{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;font-size:1.4rem;line-height:1.7rem;color:#555659;background-color:#f0f0f0;transition:background-color .1s;cursor:pointer}::ng-deep .calendar .table-months .month.disabled{color:#bbbdc1;background-color:#e0e1e2}::ng-deep .calendar .table-months .month:not(.disabled).selected,::ng-deep .calendar .table-months .month:not(.disabled):hover{color:#fff;background-color:#e0313e}::ng-deep .calendar .table-months .month:not(.disabled).selected:hover{background-color:#cc2d38}::ng-deep .calendar .table-years{display:-ms-grid;display:grid;-ms-grid-columns:(1fr)[4];grid-template-columns:repeat(4,1fr);gap:4px}::ng-deep .calendar .table-years .year{display:flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;font-size:1.4rem;line-height:1.7rem;color:#555659;background-color:#f0f0f0;transition:background-color .1s;cursor:pointer}::ng-deep .calendar .table-years .year.disabled{color:#bbbdc1;background-color:#e0e1e2}::ng-deep .calendar .table-years .year:not(.disabled).selected,::ng-deep .calendar .table-years .year:not(.disabled):hover{color:#fff;background-color:#e0313e}::ng-deep .calendar .table-years .year:not(.disabled).selected:hover{background-color:#cc2d38}"]
11417
11419
  }),
11418
11420
  __metadata("design:paramtypes", [core.ChangeDetectorRef,
11419
11421
  GIPINgConfig])
@@ -13310,7 +13312,7 @@
13310
13312
  'class': 'gipi-input-select',
13311
13313
  },
13312
13314
  changeDetection: core.ChangeDetectionStrategy.OnPush,
13313
- styles: [":host{display:block;min-width:0;max-width:100%;flex:1}::ng-deep .overlay-select{padding:0!important;overflow:hidden!important}::ng-deep .select-virtual-scroll-viewport{width:100%!important;max-height:240px;overflow:auto}::ng-deep .select-virtual-scroll-viewport .cdk-virtual-scroll-content-wrapper{width:100%!important;position:relative!important}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar{width:15px}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar-thumb{background-color:#e0e1e2;border-radius:10px;border:4px solid transparent;background-clip:padding-box}::ng-deep .select-row{display:flex;align-items:center;padding:0 16px;cursor:pointer;font-size:1.3rem;line-height:100%;gap:1rem}::ng-deep .select-row:hover{background:#f5f5f6}::ng-deep .select-row:active{background:#e0e1e2}::ng-deep .select-row.disabled{background-color:#d1d2d4!important;color:#9a9da2!important;cursor:not-allowed!important;pointer-events:none!important}::ng-deep .select-row>span{display:-webkit-box;line-clamp:2;box-orient:vertical;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:ellipsis;overflow:hidden}.select-search{display:flex;align-items:center;font-size:1.4rem;line-height:100%;gap:1rem;padding:8px 12px}.select-option-all{border-bottom:1px solid rgba(0,0,0,.12)}.select-not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;font-size:1.2rem;gap:8px;color:#131313;cursor:default;padding:1.6rem 0}.select-not-found>mat-icon{width:2.8rem;height:2.8rem;font-size:2.8rem;line-height:2.8rem;color:#131313}.select-loading{height:4rem;width:100%;background-color:#fff;display:flex;align-items:center;justify-content:center}.select-loading .dot-pulse{position:relative;left:-9999px;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e;box-shadow:9999px 0 0 -5px;-webkit-animation:1.5s linear .25s infinite dot-pulse;animation:1.5s linear .25s infinite dot-pulse}.select-loading .dot-pulse::after,.select-loading .dot-pulse::before{content:\"\";display:inline-block;position:absolute;top:0;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e}.select-loading .dot-pulse::before{box-shadow:9984px 0 0 -5px;-webkit-animation:1.5s linear infinite dot-pulse-before;animation:1.5s linear infinite dot-pulse-before}.select-loading .dot-pulse::after{box-shadow:10014px 0 0 -5px;-webkit-animation:1.5s linear .5s infinite dot-pulse-after;animation:1.5s linear .5s infinite dot-pulse-after}@-webkit-keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@-webkit-keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@-webkit-keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}@keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}.select-footer{display:flex;align-items:center;gap:1rem;padding:8px 12px;border-top:1px solid #bfbfbf}::ng-deep .select-mat-option-pseudo-checkbox{margin:0!important}"]
13315
+ styles: [":host{display:block;min-width:0;max-width:100%;flex:1}::ng-deep .overlay-select{padding:0!important;overflow:hidden!important}::ng-deep .select-virtual-scroll-viewport{width:100%!important;max-height:240px;overflow:auto}::ng-deep .select-virtual-scroll-viewport .cdk-virtual-scroll-content-wrapper{width:100%!important;position:relative!important}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar{width:15px}::ng-deep .select-virtual-scroll-viewport::-webkit-scrollbar-thumb{background-color:#e0e1e2;border-radius:10px;border:4px solid transparent;background-clip:padding-box}::ng-deep .select-row{display:flex;align-items:center;padding:0 16px;cursor:pointer;font-size:1.3rem;line-height:100%;gap:1rem}::ng-deep .select-row:hover{background:#f5f5f6}::ng-deep .select-row:active{background:#e0e1e2}::ng-deep .select-row.disabled{background-color:#d1d2d4!important;color:#9a9da2!important;cursor:not-allowed!important;pointer-events:none!important}::ng-deep .select-row>span{display:-webkit-box;line-clamp:2;box-orient:vertical;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:ellipsis;overflow:hidden}.select-search{display:flex;align-items:center;font-size:1.4rem;line-height:100%;gap:1rem;padding:8px 12px}.select-option-all{border-bottom:1px solid #0000001f}.select-not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:600;font-size:1.2rem;gap:8px;color:#131313;cursor:default;padding:1.6rem 0}.select-not-found>mat-icon{width:2.8rem;height:2.8rem;font-size:2.8rem;line-height:2.8rem;color:#131313}.select-loading{height:4rem;width:100%;background-color:#fff;display:flex;align-items:center;justify-content:center}.select-loading .dot-pulse{position:relative;left:-9999px;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e;box-shadow:9999px 0 0 -5px;-webkit-animation:1.5s linear .25s infinite dot-pulse;animation:1.5s linear .25s infinite dot-pulse}.select-loading .dot-pulse::after,.select-loading .dot-pulse::before{content:\"\";display:inline-block;position:absolute;top:0;width:5px;height:5px;border-radius:50%;background-color:#e0313e;color:#e0313e}.select-loading .dot-pulse::before{box-shadow:9984px 0 0 -5px;-webkit-animation:1.5s linear infinite dot-pulse-before;animation:1.5s linear infinite dot-pulse-before}.select-loading .dot-pulse::after{box-shadow:10014px 0 0 -5px;-webkit-animation:1.5s linear .5s infinite dot-pulse-after;animation:1.5s linear .5s infinite dot-pulse-after}@-webkit-keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@keyframes dot-pulse-before{0%,100%,60%{box-shadow:9984px 0 0 -5px}30%{box-shadow:9984px 0 0 2px}}@-webkit-keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@keyframes dot-pulse{0%,100%,60%{box-shadow:9999px 0 0 -5px}30%{box-shadow:9999px 0 0 2px}}@-webkit-keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}@keyframes dot-pulse-after{0%,100%,60%{box-shadow:10014px 0 0 -5px}30%{box-shadow:10014px 0 0 2px}}.select-footer{display:flex;align-items:center;gap:1rem;padding:8px 12px;border-top:1px solid #bfbfbf}::ng-deep .select-mat-option-pseudo-checkbox{margin:0!important}"]
13314
13316
  }),
13315
13317
  __metadata("design:paramtypes", [core.ChangeDetectorRef])
13316
13318
  ], GIPIInputSelectComponent);
@@ -15843,7 +15845,7 @@
15843
15845
  'class': 'gipi-radio-group',
15844
15846
  },
15845
15847
  changeDetection: core.ChangeDetectionStrategy.OnPush,
15846
- styles: [".radiogroup-content{display:flex;flex-direction:column;gap:1rem}.radiogroup-content>label,.radiogroup-content>legend{font-weight:400;font-size:1.4rem;line-height:100%;color:#131313}.radiogroup-content>label>span,.radiogroup-content>legend>span{color:#d14014}.radiogroup-content .radiogroup{display:flex;align-items:center;gap:1rem;padding:8px 0}.fieldset-radio-content{height:6.6rem;border-color:rgba(0,0,0,.12);border-radius:5px}.fieldset-radio-content .radiogroup{width:100%;height:100%;justify-content:space-around}"]
15848
+ styles: [".radiogroup-content{display:flex;flex-direction:column;gap:1rem}.radiogroup-content>label,.radiogroup-content>legend{font-weight:400;font-size:1.4rem;line-height:100%;color:#131313}.radiogroup-content>label>span,.radiogroup-content>legend>span{color:#d14014}.radiogroup-content .radiogroup{display:flex;align-items:center;gap:1rem;padding:8px 0}.fieldset-radio-content{height:6.6rem;border-color:#0000001f;border-radius:5px}.fieldset-radio-content .radiogroup{width:100%;height:100%;justify-content:space-around}"]
15847
15849
  }),
15848
15850
  __metadata("design:paramtypes", [core.ChangeDetectorRef])
15849
15851
  ], GIPIRadioGroupComponent);
@@ -16117,7 +16119,7 @@
16117
16119
  multi: true
16118
16120
  },
16119
16121
  ],
16120
- styles: [":host{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}:host .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}:host .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}:host .input-content{display:flex;font-family:inherit;font-size:inherit;color:inherit;height:4rem;background:#fff;border:1px solid rgba(0,0,0,.12);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem}:host .input-content .input-element{padding:.75rem .8rem;border:none;outline:0;background-color:transparent;flex:1;color:inherit;caret-color:#696969;min-width:0;text-align:center;margin:0!important}:host .input-content .input-element::-webkit-inner-spin-button,:host .input-content .input-element::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;opacity:0}:host .input-content:has(.input-element:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}:host .input-content:has(.input-element:disabled) .suffix>mat-icon{color:#bbbdc1!important}:host .input-content .input-element:disabled{cursor:not-allowed}:host .input-content .infix,:host .input-content .prefix,:host .input-content .suffix{display:flex;align-items:center;justify-content:center;padding-block:.75rem;padding-inline:.8rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;transition:.2s;background-color:#e0313e}:host .input-content .infix>mat-icon,:host .input-content .prefix>mat-icon,:host .input-content .suffix>mat-icon{width:2rem;height:2rem;font-size:2rem;color:#fff}:host .input-content .infix:not(.infix):not(.disabled):hover,:host .input-content .prefix:not(.infix):not(.disabled):hover,:host .input-content .suffix:not(.infix):not(.disabled):hover{background-color:#cc2d38}:host .input-content .infix:not(.infix):not(.disabled):active,:host .input-content .prefix:not(.infix):not(.disabled):active,:host .input-content .suffix:not(.infix):not(.disabled):active{background-color:#9f232c}:host .input-content .prefix.disabled,:host .input-content .suffix.disabled{background-color:#d1d2d4}:host .input-content .prefix.disabled>mat-icon,:host .input-content .suffix.disabled>mat-icon{color:#9a9da2}:host .input-content .prefix{border-right:1px solid rgba(0,0,0,.12);border-radius:.6rem 0 0 .6rem;cursor:pointer}:host .input-content .infix{width:1rem;padding:0;background-color:transparent}:host .input-content .suffix{border-left:1px solid rgba(0,0,0,.12);border-radius:0 .6rem .6rem 0;cursor:pointer}:host .input-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::-webkit-input-placeholder{color:#bbbdc1}:-moz-placeholder{color:#bbbdc1}::-moz-placeholder{color:#bbbdc1}:-ms-input-placeholder{color:#bbbdc1}"]
16122
+ styles: [":host{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}:host .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}:host .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}:host .input-content{display:flex;font-family:inherit;font-size:inherit;color:inherit;height:4rem;background:#fff;border:1px solid #0000001f;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem}:host .input-content .input-element{padding:.75rem .8rem;border:none;outline:0;background-color:transparent;flex:1;color:inherit;caret-color:#696969;min-width:0;text-align:center;margin:0!important}:host .input-content .input-element::-webkit-inner-spin-button,:host .input-content .input-element::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;opacity:0}:host .input-content:has(.input-element:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}:host .input-content:has(.input-element:disabled) .suffix>mat-icon{color:#bbbdc1!important}:host .input-content .input-element:disabled{cursor:not-allowed}:host .input-content .infix,:host .input-content .prefix,:host .input-content .suffix{display:flex;align-items:center;justify-content:center;padding-block:.75rem;padding-inline:.8rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;transition:.2s;background-color:#e0313e}:host .input-content .infix>mat-icon,:host .input-content .prefix>mat-icon,:host .input-content .suffix>mat-icon{width:2rem;height:2rem;font-size:2rem;color:#fff}:host .input-content .infix:not(.infix):not(.disabled):hover,:host .input-content .prefix:not(.infix):not(.disabled):hover,:host .input-content .suffix:not(.infix):not(.disabled):hover{background-color:#cc2d38}:host .input-content .infix:not(.infix):not(.disabled):active,:host .input-content .prefix:not(.infix):not(.disabled):active,:host .input-content .suffix:not(.infix):not(.disabled):active{background-color:#9f232c}:host .input-content .prefix.disabled,:host .input-content .suffix.disabled{background-color:#d1d2d4}:host .input-content .prefix.disabled>mat-icon,:host .input-content .suffix.disabled>mat-icon{color:#9a9da2}:host .input-content .prefix{border-right:1px solid #0000001f;border-radius:.6rem 0 0 .6rem;cursor:pointer}:host .input-content .infix{width:1rem;padding:0;background-color:transparent}:host .input-content .suffix{border-left:1px solid #0000001f;border-radius:0 .6rem .6rem 0;cursor:pointer}:host .input-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::-webkit-input-placeholder{color:#bbbdc1}:-moz-placeholder{color:#bbbdc1}::-moz-placeholder{color:#bbbdc1}:-ms-input-placeholder{color:#bbbdc1}"]
16121
16123
  }),
16122
16124
  __metadata("design:paramtypes", [core.ElementRef,
16123
16125
  core.ChangeDetectorRef])
@@ -16476,7 +16478,7 @@
16476
16478
  'class': 'gipi-range-slider',
16477
16479
  },
16478
16480
  changeDetection: core.ChangeDetectionStrategy.OnPush,
16479
- styles: [":host{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}:host .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}:host .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}:host .slider-wrapper{display:flex;align-items:center;justify-content:space-between;gap:1.6rem}:host .slider-wrapper>input{display:flex;font-family:inherit;font-size:inherit;color:inherit;text-align:center;padding:.75rem .8rem;background:#fff;border:1px solid rgba(0,0,0,.12);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem;outline:0}:host .sliders-control{display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;flex:1}:host .from-value,:host .to-value{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:.6rem;border-radius:.4rem;width:100%;position:absolute;background-color:#e0e1e2;pointer-events:none;outline:0}:host .from-value::-webkit-slider-thumb,:host .to-value::-webkit-slider-thumb{-webkit-appearance:none;display:block;width:1.4rem;height:1.4rem;border-radius:50%;background-color:#e0313e;pointer-events:all;box-shadow:0 .5px 0 0 rgba(0,0,0,.08),0 1px 1px 0 rgba(0,0,0,.14);cursor:-webkit-grab;cursor:grab;outline:0}:host .from-value::-webkit-slider-thumb:hover,:host .to-value::-webkit-slider-thumb:hover{background-color:#cc2d38}:host .from-value::-webkit-slider-thumb:active,:host .to-value::-webkit-slider-thumb:active{box-shadow:inset 0 0 3px #e0313e,0 0 9px #e0313e;-webkit-box-shadow:inset 0 0 3px #e0313e,0 0 9px #e0313e;cursor:-webkit-grabbing;cursor:grabbing}:host input[type=number]{border:1px solid rgba(0,0,0,.12);color:#131313;width:50px;height:30px;font-size:20px;outline:0}:host input[type=number]::-webkit-inner-spin-button,:host input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;opacity:0}:host #fromSlider{height:0;z-index:1}"]
16481
+ styles: [":host{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}:host .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}:host .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}:host .slider-wrapper{display:flex;align-items:center;justify-content:space-between;gap:1.6rem}:host .slider-wrapper>input{display:flex;font-family:inherit;font-size:inherit;color:inherit;text-align:center;padding:.75rem .8rem;background:#fff;border:1px solid #0000001f;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem;outline:0}:host .sliders-control{display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;flex:1}:host .from-value,:host .to-value{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:.6rem;border-radius:.4rem;width:100%;position:absolute;background-color:#e0e1e2;pointer-events:none;outline:0}:host .from-value::-webkit-slider-thumb,:host .to-value::-webkit-slider-thumb{-webkit-appearance:none;display:block;width:1.4rem;height:1.4rem;border-radius:50%;background-color:#e0313e;pointer-events:all;box-shadow:0 .5px 0 0 rgba(0,0,0,.08),0 1px 1px 0 rgba(0,0,0,.14);cursor:-webkit-grab;cursor:grab;outline:0}:host .from-value::-webkit-slider-thumb:hover,:host .to-value::-webkit-slider-thumb:hover{background-color:#cc2d38}:host .from-value::-webkit-slider-thumb:active,:host .to-value::-webkit-slider-thumb:active{box-shadow:inset 0 0 3px #e0313e,0 0 9px #e0313e;-webkit-box-shadow:inset 0 0 3px #e0313e,0 0 9px #e0313e;cursor:-webkit-grabbing;cursor:grabbing}:host input[type=number]{border:1px solid #0000001f;color:#131313;width:50px;height:30px;font-size:20px;outline:0}:host input[type=number]::-webkit-inner-spin-button,:host input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;opacity:0}:host #fromSlider{height:0;z-index:1}"]
16480
16482
  }),
16481
16483
  __metadata("design:paramtypes", [core.ElementRef,
16482
16484
  core.ChangeDetectorRef])
@@ -16677,7 +16679,7 @@
16677
16679
  'class': 'gipi-select-button',
16678
16680
  },
16679
16681
  changeDetection: core.ChangeDetectionStrategy.OnPush,
16680
- styles: [".select-button-content{display:flex;flex-direction:column;gap:1rem}.select-button-content .label{font-weight:400;font-size:1.4rem;line-height:100%;color:#131313}.select-button-content .label>span{color:#d14014}.select-button-content .select-button{display:flex;flex-direction:row}.select-button-content .select-button .button{width:100%;padding:1.2rem 1.6rem;font-weight:700;font-size:1.3rem;line-height:100%;text-align:center;cursor:pointer;background-color:#fff;border:1px solid rgba(0,0,0,.12);color:#696969;height:4rem;display:flex;align-items:center;justify-content:center}.select-button-content .select-button .button:hover{background-color:#f5f5f6}.select-button-content .select-button .button:first-child{border-top-left-radius:5px;border-bottom-left-radius:5px}.select-button-content .select-button .button:last-child{border-top-right-radius:5px;border-bottom-right-radius:5px}.select-button-content .select-button .button.disabled{pointer-events:none!important;cursor:not-allowed!important;border-color:#e0e1e2!important;color:#d1d2d4!important}.select-button-content .select-button .button.disabled.selected{background-color:#e0e1e2!important}.select-button-content .select-button .button.button-primary.selected{background-color:#e0313e;border-color:#e0313e;color:#fff}.select-button-content .select-button .button.button-primary:hover.selected{background-color:#cc2d38}.select-button-content .select-button .button.button-secondary.selected{background-color:#9a9da2;border-color:#9a9da2;color:#fff}.select-button-content .select-button .button.button-secondary:hover.selected{background-color:#8c8f93}"]
16682
+ styles: [".select-button-content{display:flex;flex-direction:column;gap:1rem}.select-button-content .label{font-weight:400;font-size:1.4rem;line-height:100%;color:#131313}.select-button-content .label>span{color:#d14014}.select-button-content .select-button{display:flex;flex-direction:row}.select-button-content .select-button .button{width:100%;padding:1.2rem 1.6rem;font-weight:700;font-size:1.3rem;line-height:100%;text-align:center;cursor:pointer;background-color:#fff;border:1px solid #0000001f;color:#696969;height:4rem;display:flex;align-items:center;justify-content:center}.select-button-content .select-button .button:hover{background-color:#f5f5f6}.select-button-content .select-button .button:first-child{border-top-left-radius:5px;border-bottom-left-radius:5px}.select-button-content .select-button .button:last-child{border-top-right-radius:5px;border-bottom-right-radius:5px}.select-button-content .select-button .button.disabled{pointer-events:none!important;cursor:not-allowed!important;border-color:#e0e1e2!important;color:#d1d2d4!important}.select-button-content .select-button .button.disabled.selected{background-color:#e0e1e2!important}.select-button-content .select-button .button.button-primary.selected{background-color:#e0313e;border-color:#e0313e;color:#fff}.select-button-content .select-button .button.button-primary:hover.selected{background-color:#cc2d38}.select-button-content .select-button .button.button-secondary.selected{background-color:#9a9da2;border-color:#9a9da2;color:#fff}.select-button-content .select-button .button.button-secondary:hover.selected{background-color:#8c8f93}"]
16681
16683
  }),
16682
16684
  __metadata("design:paramtypes", [core.ElementRef,
16683
16685
  core.ChangeDetectorRef])
@@ -19058,7 +19060,7 @@
19058
19060
  'class': 'gipi-textarea',
19059
19061
  },
19060
19062
  changeDetection: core.ChangeDetectionStrategy.OnPush,
19061
- styles: [":host{display:flex;min-width:0;max-width:100%;flex:1;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}:host .textarea-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}:host .textarea-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}:host .textarea-element{display:flex;font-family:inherit;font-size:inherit;color:inherit;padding:.75rem .8rem;background:#fff;border:1px solid rgba(0,0,0,.12);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:6px;caret-color:#696969;max-height:12rem;min-height:6rem;resize:vertical;outline:0;overflow:auto}:host .textarea-element:not(:disabled):hover{border-color:#6d6f73}:host .textarea-element:not(:disabled).ng-dirty.ng-invalid:enabled:hover,:host .textarea-element:not(:disabled):invalid:enabled:hover{border-color:#e07f62}:host .textarea-element:not(:disabled):enabled:focus{outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}:host .textarea-element:not(:disabled).ng-dirty.ng-invalid:enabled,:host .textarea-element:not(:disabled):invalid:enabled{border-color:#d14014}:host .textarea-element:not(:disabled).ng-dirty.ng-invalid:enabled:focus,:host .textarea-element:not(:disabled):invalid:enabled:focus{outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #f1c4b6;border-color:#d14014}:host .textarea-element:disabled{color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}:host .textarea-element.resize-none{resize:none}:host .textarea-element.resize-both{resize:both}:host .textarea-element.resize-horizontal{resize:horizontal}:host .textarea-element.resize-vertical{resize:vertical}:host .textarea-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::-webkit-input-placeholder{color:#bbbdc1}:-moz-placeholder{color:#bbbdc1}::-moz-placeholder{color:#bbbdc1}:-ms-input-placeholder{color:#bbbdc1}"]
19063
+ styles: [":host{display:flex;min-width:0;max-width:100%;flex:1;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}:host .textarea-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}:host .textarea-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}:host .textarea-element{display:flex;font-family:inherit;font-size:inherit;color:inherit;padding:.75rem .8rem;background:#fff;border:1px solid #0000001f;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:6px;caret-color:#696969;max-height:12rem;min-height:6rem;resize:vertical;outline:0;overflow:auto}:host .textarea-element:not(:disabled):hover{border-color:#6d6f73}:host .textarea-element:not(:disabled).ng-dirty.ng-invalid:enabled:hover,:host .textarea-element:not(:disabled):invalid:enabled:hover{border-color:#e07f62}:host .textarea-element:not(:disabled):enabled:focus{outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}:host .textarea-element:not(:disabled).ng-dirty.ng-invalid:enabled,:host .textarea-element:not(:disabled):invalid:enabled{border-color:#d14014}:host .textarea-element:not(:disabled).ng-dirty.ng-invalid:enabled:focus,:host .textarea-element:not(:disabled):invalid:enabled:focus{outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #f1c4b6;border-color:#d14014}:host .textarea-element:disabled{color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}:host .textarea-element.resize-none{resize:none}:host .textarea-element.resize-both{resize:both}:host .textarea-element.resize-horizontal{resize:horizontal}:host .textarea-element.resize-vertical{resize:vertical}:host .textarea-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::-webkit-input-placeholder{color:#bbbdc1}:-moz-placeholder{color:#bbbdc1}::-moz-placeholder{color:#bbbdc1}:-ms-input-placeholder{color:#bbbdc1}"]
19062
19064
  }),
19063
19065
  __metadata("design:paramtypes", [core.ElementRef,
19064
19066
  core.ChangeDetectorRef])
@@ -23520,7 +23522,7 @@
23520
23522
  { provide: formField.MatFormFieldControl, useExisting: MatDateRangeInput_1 },
23521
23523
  { provide: MAT_DATE_RANGE_INPUT_PARENT, useExisting: MatDateRangeInput_1 },
23522
23524
  ],
23523
- styles: [".mat-date-range-input{display:block;width:100%}.mat-date-range-input-container{display:flex;align-items:center;padding-bottom:3px}.mat-date-range-input-separator{transition:opacity .4s cubic-bezier(.25,.8,.25,1) .133s;margin:0 4px}.mat-date-range-input-separator-hidden{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;opacity:0;transition:none}.mat-date-range-input-inner{font:inherit;background:0 0;color:currentColor;border:none;outline:0;padding:0;margin:0;vertical-align:bottom;text-align:inherit;-webkit-appearance:none;width:100%}.mat-date-range-input-inner::-ms-clear,.mat-date-range-input-inner::-ms-reveal{display:none}.mat-date-range-input-inner:-moz-ui-invalid{box-shadow:none}.mat-date-range-input-inner::-ms-input-placeholder{transition:color .4s cubic-bezier(.25,.8,.25,1) .133s}.mat-date-range-input-inner::placeholder{transition:color .4s cubic-bezier(.25,.8,.25,1) .133s}.mat-date-range-input-inner::-moz-placeholder{transition:color .4s cubic-bezier(.25,.8,.25,1) .133s}.mat-date-range-input-inner::-webkit-input-placeholder{transition:color .4s cubic-bezier(.25,.8,.25,1) .133s}.mat-date-range-input-inner:-ms-input-placeholder{transition:color .4s cubic-bezier(.25,.8,.25,1) .133s}.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-ms-input-placeholder,.mat-form-field-hide-placeholder .mat-date-range-input-inner::-ms-input-placeholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder,.mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder,.mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder,.mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder,.mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-date-range-input-mirror{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;visibility:hidden;white-space:nowrap;display:inline-block;min-width:2px}.mat-date-range-input-start-wrapper{position:relative;overflow:hidden;max-width:calc(50% - 4px)}.mat-date-range-input-start-wrapper .mat-date-range-input-inner{position:absolute;top:0;left:0}.mat-date-range-input-end-wrapper{flex-grow:1;max-width:calc(50% - 4px)}.mat-form-field-type-mat-date-range-input .mat-form-field-infix{width:200px}"]
23525
+ styles: [".mat-date-range-input{display:block;width:100%}.mat-date-range-input-container{display:flex;align-items:center;padding-bottom:3px}.mat-date-range-input-separator{transition:opacity .4s cubic-bezier(.25,.8,.25,1) .133s;margin:0 4px}.mat-date-range-input-separator-hidden{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;opacity:0;transition:none}.mat-date-range-input-inner{font:inherit;background:0 0;color:currentColor;border:none;outline:0;padding:0;margin:0;vertical-align:bottom;text-align:inherit;width:100%;-moz-appearance:none;appearance:none;-webkit-appearance:none}.mat-date-range-input-inner::-ms-clear,.mat-date-range-input-inner::-ms-reveal{display:none}.mat-date-range-input-inner:-moz-ui-invalid{box-shadow:none}.mat-date-range-input-inner::-ms-input-placeholder{transition:color .4s cubic-bezier(.25,.8,.25,1) .133s}.mat-date-range-input-inner::placeholder{transition:color .4s cubic-bezier(.25,.8,.25,1) .133s}.mat-date-range-input-inner::-moz-placeholder{transition:color .4s cubic-bezier(.25,.8,.25,1) .133s}.mat-date-range-input-inner::-webkit-input-placeholder{transition:color .4s cubic-bezier(.25,.8,.25,1) .133s}.mat-date-range-input-inner:-ms-input-placeholder{transition:color .4s cubic-bezier(.25,.8,.25,1) .133s}.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-ms-input-placeholder,.mat-form-field-hide-placeholder .mat-date-range-input-inner::-ms-input-placeholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder,.mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder,.mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder,.mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder,.mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;color:transparent!important;-webkit-text-fill-color:transparent;transition:none}.mat-date-range-input-mirror{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;visibility:hidden;white-space:nowrap;display:inline-block;min-width:2px}.mat-date-range-input-start-wrapper{position:relative;overflow:hidden;max-width:calc(50% - 4px)}.mat-date-range-input-start-wrapper .mat-date-range-input-inner{position:absolute;top:0;left:0}.mat-date-range-input-end-wrapper{flex-grow:1;max-width:calc(50% - 4px)}.mat-form-field-type-mat-date-range-input .mat-form-field-infix{width:200px}"]
23524
23526
  }),
23525
23527
  __param(2, core.Optional()), __param(2, core.Self()),
23526
23528
  __param(3, core.Optional()),
@@ -24399,7 +24401,7 @@
24399
24401
  host: {
24400
24402
  'class': 'gipi-date-range-picker',
24401
24403
  },
24402
- styles: [":host{display:block;width:100%;min-width:0;max-width:100%;flex:1}.input-wrapper{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}.input-wrapper .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}.input-wrapper .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}.input-wrapper .input-content{display:flex;font-family:inherit;font-size:inherit;color:inherit;height:4rem;background:#fff;border:1px solid rgba(0,0,0,.12);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem}.input-wrapper .input-content .input-element{padding:.75rem .8rem;border:none;outline:0;background-color:transparent;flex:1;color:inherit;caret-color:#696969;min-width:0}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.prefix:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.suffix:hover){border-color:#6d6f73}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:focus){outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}.input-wrapper .input-content:has(.input-element:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}.input-wrapper .input-content:has(.input-element:disabled) .suffix>mat-icon{color:#bbbdc1!important}.input-wrapper .input-content .input-element:disabled{cursor:not-allowed}.input-wrapper .input-content .suffix{display:flex;align-items:center;justify-content:center;padding-block:.75rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding-right:.8rem}.input-wrapper .input-content .suffix>mat-icon{width:2rem;height:2rem;font-size:2rem;color:#696969}.input-wrapper .input-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .mat-date-range-input{height:4rem!important;padding-left:.8rem!important}::ng-deep .mat-date-range-input-container,::ng-deep .mat-date-range-input-end-wrapper,::ng-deep .mat-date-range-input-inner,::ng-deep .mat-date-range-input-start-wrapper{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;max-width:100%;min-height:100%;height:100%;padding-bottom:3px}::ng-deep .mat-date-range-input-end-wrapper{padding-bottom:0!important}::ng-deep .mat-date-range-input-inner{padding:0!important}::-webkit-input-placeholder{color:#bbbdc1}:-moz-placeholder{color:#bbbdc1}::-moz-placeholder{color:#bbbdc1}:-ms-input-placeholder{color:#bbbdc1}"]
24404
+ styles: [":host{display:block;width:100%;min-width:0;max-width:100%;flex:1}.input-wrapper{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}.input-wrapper .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}.input-wrapper .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}.input-wrapper .input-content{display:flex;font-family:inherit;font-size:inherit;color:inherit;height:4rem;background:#fff;border:1px solid #0000001f;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem}.input-wrapper .input-content .input-element{padding:.75rem .8rem;border:none;outline:0;background-color:transparent;flex:1;color:inherit;caret-color:#696969;min-width:0}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.prefix:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.suffix:hover){border-color:#6d6f73}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:focus){outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}.input-wrapper .input-content:has(.input-element:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}.input-wrapper .input-content:has(.input-element:disabled) .suffix>mat-icon{color:#bbbdc1!important}.input-wrapper .input-content .input-element:disabled{cursor:not-allowed}.input-wrapper .input-content .suffix{display:flex;align-items:center;justify-content:center;padding-block:.75rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding-right:.8rem}.input-wrapper .input-content .suffix>mat-icon{width:2rem;height:2rem;font-size:2rem;color:#696969}.input-wrapper .input-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .mat-date-range-input{height:4rem!important;padding-left:.8rem!important}::ng-deep .mat-date-range-input-container,::ng-deep .mat-date-range-input-end-wrapper,::ng-deep .mat-date-range-input-inner,::ng-deep .mat-date-range-input-start-wrapper{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;max-width:100%;min-height:100%;height:100%;padding-bottom:3px}::ng-deep .mat-date-range-input-end-wrapper{padding-bottom:0!important}::ng-deep .mat-date-range-input-inner{padding:0!important}::-webkit-input-placeholder{color:#bbbdc1}:-moz-placeholder{color:#bbbdc1}::-moz-placeholder{color:#bbbdc1}:-ms-input-placeholder{color:#bbbdc1}"]
24403
24405
  }),
24404
24406
  __metadata("design:paramtypes", [core.ElementRef,
24405
24407
  core.ChangeDetectorRef])
@@ -24999,7 +25001,7 @@
24999
25001
  host: {
25000
25002
  'class': 'gipi-datepicker',
25001
25003
  },
25002
- styles: [":host{display:block;width:100%;min-width:0;max-width:100%;flex:1}.input-wrapper{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}.input-wrapper .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}.input-wrapper .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}.input-wrapper .input-content{display:flex;font-family:inherit;font-size:inherit;color:inherit;height:4rem;background:#fff;border:1px solid rgba(0,0,0,.12);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem}.input-wrapper .input-content .input-element{padding:.75rem .8rem;border:none;outline:0;background-color:transparent;flex:1;color:inherit;caret-color:#696969;min-width:0}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.prefix:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.suffix:hover){border-color:#6d6f73}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:focus){outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}.input-wrapper .input-content:has(.input-element:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}.input-wrapper .input-content:has(.input-element:disabled) .suffix>mat-icon{color:#bbbdc1!important}.input-wrapper .input-content .input-element:disabled{cursor:not-allowed}.input-wrapper .input-content .suffix{display:flex;align-items:center;justify-content:center;padding-block:.75rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding-right:.8rem}.input-wrapper .input-content .suffix>mat-icon{width:2rem;height:2rem;font-size:2rem;color:#696969}.input-wrapper .input-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::-webkit-input-placeholder{color:#bbbdc1}:-moz-placeholder{color:#bbbdc1}::-moz-placeholder{color:#bbbdc1}:-ms-input-placeholder{color:#bbbdc1}"]
25004
+ styles: [":host{display:block;width:100%;min-width:0;max-width:100%;flex:1}.input-wrapper{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}.input-wrapper .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}.input-wrapper .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}.input-wrapper .input-content{display:flex;font-family:inherit;font-size:inherit;color:inherit;height:4rem;background:#fff;border:1px solid #0000001f;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem}.input-wrapper .input-content .input-element{padding:.75rem .8rem;border:none;outline:0;background-color:transparent;flex:1;color:inherit;caret-color:#696969;min-width:0}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.prefix:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.suffix:hover){border-color:#6d6f73}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:focus){outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}.input-wrapper .input-content:has(.input-element:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}.input-wrapper .input-content:has(.input-element:disabled) .suffix>mat-icon{color:#bbbdc1!important}.input-wrapper .input-content .input-element:disabled{cursor:not-allowed}.input-wrapper .input-content .suffix{display:flex;align-items:center;justify-content:center;padding-block:.75rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding-right:.8rem}.input-wrapper .input-content .suffix>mat-icon{width:2rem;height:2rem;font-size:2rem;color:#696969}.input-wrapper .input-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::-webkit-input-placeholder{color:#bbbdc1}:-moz-placeholder{color:#bbbdc1}::-moz-placeholder{color:#bbbdc1}:-ms-input-placeholder{color:#bbbdc1}"]
25003
25005
  }),
25004
25006
  __metadata("design:paramtypes", [core.ElementRef,
25005
25007
  core.ChangeDetectorRef])
@@ -25106,122 +25108,3367 @@
25106
25108
  return DatepickerModule;
25107
25109
  }());
25108
25110
 
25109
- var moment$4 = moment_;
25110
- var CalendarMonthYearComponent = /** @class */ (function () {
25111
- function CalendarMonthYearComponent(_changeDetectorRef) {
25112
- this._changeDetectorRef = _changeDetectorRef;
25113
- this._subscriptions = new rxjs.Subscription();
25114
- this._animationState = 'enter';
25115
- this._animationDone = new rxjs.Subject();
25116
- this.years = [];
25117
- this.months = [];
25118
- this._calendarView = 'both';
25111
+ /**
25112
+ * This animation fades in the background color and text content of the
25113
+ * select's options. It is time delayed to occur 100ms after the overlay
25114
+ * panel has transformed in.
25115
+ */
25116
+ var fadeInContent = animations.trigger('fadeInContent', [
25117
+ animations.state('showing', animations.style({ opacity: 1 })),
25118
+ animations.transition('void => showing', [
25119
+ animations.style({ opacity: 0 }),
25120
+ animations.animate("150ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)"),
25121
+ ]),
25122
+ ]);
25123
+ var slideCalendar = animations.trigger('slideCalendar', [
25124
+ animations.transition('* => left', [
25125
+ animations.animate(180, animations.keyframes([
25126
+ animations.style({ transform: 'translateX(100%)', offset: 0.5 }),
25127
+ animations.style({ transform: 'translateX(-100%)', offset: 0.51 }),
25128
+ animations.style({ transform: 'translateX(0)', offset: 1 }),
25129
+ ])),
25130
+ ]),
25131
+ animations.transition('* => right', [
25132
+ animations.animate(180, animations.keyframes([
25133
+ animations.style({ transform: 'translateX(-100%)', offset: 0.5 }),
25134
+ animations.style({ transform: 'translateX(100%)', offset: 0.51 }),
25135
+ animations.style({ transform: 'translateX(0)', offset: 1 }),
25136
+ ])),
25137
+ ]),
25138
+ ]);
25139
+
25140
+ /** @docs-private */
25141
+ function createMissingDateImplError$1(provider) {
25142
+ return Error("GIPIDatetimepickerComponent: No provider found for " + provider + ". You must import one of the following " +
25143
+ "modules at your application root: GIPINativeDatetimeModule, GIPIMomentDatetimeModule, or provide a " +
25144
+ "custom implementation.");
25145
+ }
25146
+
25147
+
25148
+ (function (GIPIDatetimepickerFilterType) {
25149
+ GIPIDatetimepickerFilterType[GIPIDatetimepickerFilterType["DATE"] = 0] = "DATE";
25150
+ GIPIDatetimepickerFilterType[GIPIDatetimepickerFilterType["HOUR"] = 1] = "HOUR";
25151
+ GIPIDatetimepickerFilterType[GIPIDatetimepickerFilterType["MINUTE"] = 2] = "MINUTE";
25152
+ })(exports.GIPIDatetimepickerFilterType || (exports.GIPIDatetimepickerFilterType = {}));
25153
+
25154
+ /**
25155
+ * An internal class that represents the data corresponding to a single calendar cell.
25156
+ * @docs-private
25157
+ */
25158
+ var GIPIDatetimepickerCalendarCell = /** @class */ (function () {
25159
+ function GIPIDatetimepickerCalendarCell(value, displayValue, ariaLabel, enabled) {
25160
+ this.value = value;
25161
+ this.displayValue = displayValue;
25162
+ this.ariaLabel = ariaLabel;
25163
+ this.enabled = enabled;
25119
25164
  }
25120
- CalendarMonthYearComponent_1 = CalendarMonthYearComponent;
25121
- CalendarMonthYearComponent.prototype.ngOnInit = function () {
25122
- if (this._locale) {
25123
- moment$4.locale(this._locale);
25124
- }
25125
- else {
25126
- moment$4.locale('pt-br');
25165
+ return GIPIDatetimepickerCalendarCell;
25166
+ }());
25167
+ /**
25168
+ * An internal component used to display calendar data in a table.
25169
+ * @docs-private
25170
+ */
25171
+ var GIPIDatetimepickerCalendarBodyComponent = /** @class */ (function () {
25172
+ function GIPIDatetimepickerCalendarBodyComponent() {
25173
+ /**
25174
+ * The aspect ratio (width / height) to use for the cells in the table. This aspect ratio will be
25175
+ * maintained even as the table resizes.
25176
+ */
25177
+ this.cellAspectRatio = 1;
25178
+ /** The number of columns in the table. */
25179
+ this.numCols = 7;
25180
+ /** Whether to allow selection of disabled cells. */
25181
+ this.allowDisabledSelection = false;
25182
+ /** The cell number of the active cell in the table. */
25183
+ this.activeCell = 0;
25184
+ /** Emits when a new value is selected. */
25185
+ this.selectedValueChange = new core.EventEmitter();
25186
+ }
25187
+ GIPIDatetimepickerCalendarBodyComponent.prototype._cellClicked = function (cell) {
25188
+ if (!this.allowDisabledSelection && !cell.enabled) {
25189
+ return;
25127
25190
  }
25128
- this.months = __spread(this.monthYearPicker.model.months);
25129
- this._calendarView = this.monthYearPicker.calendarView;
25130
- if (this._calendarView === 'year') {
25131
- this.toggleShowYears();
25191
+ this.selectedValueChange.emit(cell.value);
25192
+ };
25193
+ GIPIDatetimepickerCalendarBodyComponent.prototype._isActiveCell = function (rowIndex, colIndex) {
25194
+ var cellNumber = rowIndex * this.numCols + colIndex;
25195
+ // Account for the fact that the first row may not have as many cells.
25196
+ if (rowIndex) {
25197
+ cellNumber -= this._firstRowOffset;
25132
25198
  }
25133
- this.monthYearPicker.onValueChange(this.monthYearPicker.model.selectedMonthIndex, this.monthYearPicker.model.selectedMonthYear);
25199
+ return cellNumber === this.activeCell;
25134
25200
  };
25135
- CalendarMonthYearComponent.prototype.ngAfterViewInit = function () {
25136
- var _this = this;
25137
- if (this._changeDetectorRef) {
25138
- this._subscriptions.add(this.monthYearPicker._stateChanges.subscribe(function () {
25139
- _this._changeDetectorRef.markForCheck();
25140
- }));
25201
+ GIPIDatetimepickerCalendarBodyComponent.prototype.ngOnChanges = function (changes) {
25202
+ var columnChanges = changes['numCols'];
25203
+ var _a = this, rows = _a.rows, numCols = _a.numCols;
25204
+ if (changes['rows'] || columnChanges) {
25205
+ this._firstRowOffset = rows && rows.length && rows[0].length ? numCols - rows[0].length : 0;
25206
+ }
25207
+ if (changes['cellAspectRatio'] || columnChanges || !this._cellPadding) {
25208
+ this._cellPadding = 50 * this.cellAspectRatio / numCols + "%";
25209
+ }
25210
+ if (columnChanges || !this._cellWidth) {
25211
+ this._cellWidth = 100 / numCols + "%";
25141
25212
  }
25142
25213
  };
25143
- CalendarMonthYearComponent.prototype.ngOnDestroy = function () {
25144
- this._subscriptions.unsubscribe();
25145
- this._animationDone.complete();
25214
+ __decorate([
25215
+ core.Input(),
25216
+ __metadata("design:type", Number)
25217
+ ], GIPIDatetimepickerCalendarBodyComponent.prototype, "cellAspectRatio", void 0);
25218
+ __decorate([
25219
+ core.Input(),
25220
+ __metadata("design:type", String)
25221
+ ], GIPIDatetimepickerCalendarBodyComponent.prototype, "label", void 0);
25222
+ __decorate([
25223
+ core.Input(),
25224
+ __metadata("design:type", Array)
25225
+ ], GIPIDatetimepickerCalendarBodyComponent.prototype, "rows", void 0);
25226
+ __decorate([
25227
+ core.Input(),
25228
+ __metadata("design:type", Number)
25229
+ ], GIPIDatetimepickerCalendarBodyComponent.prototype, "todayValue", void 0);
25230
+ __decorate([
25231
+ core.Input(),
25232
+ __metadata("design:type", Number)
25233
+ ], GIPIDatetimepickerCalendarBodyComponent.prototype, "selectedValue", void 0);
25234
+ __decorate([
25235
+ core.Input(),
25236
+ __metadata("design:type", Number)
25237
+ ], GIPIDatetimepickerCalendarBodyComponent.prototype, "labelMinRequiredCells", void 0);
25238
+ __decorate([
25239
+ core.Input(),
25240
+ __metadata("design:type", Object)
25241
+ ], GIPIDatetimepickerCalendarBodyComponent.prototype, "numCols", void 0);
25242
+ __decorate([
25243
+ core.Input(),
25244
+ __metadata("design:type", Object)
25245
+ ], GIPIDatetimepickerCalendarBodyComponent.prototype, "allowDisabledSelection", void 0);
25246
+ __decorate([
25247
+ core.Input(),
25248
+ __metadata("design:type", Object)
25249
+ ], GIPIDatetimepickerCalendarBodyComponent.prototype, "activeCell", void 0);
25250
+ __decorate([
25251
+ core.Output(),
25252
+ __metadata("design:type", Object)
25253
+ ], GIPIDatetimepickerCalendarBodyComponent.prototype, "selectedValueChange", void 0);
25254
+ GIPIDatetimepickerCalendarBodyComponent = __decorate([
25255
+ core.Component({
25256
+ selector: 'tbody[gipiMatDatetimePickerCalendarBody]',
25257
+ template: "<!-- Se n\u00E3o houver espa\u00E7o suficiente na primeira linha, crie uma linha de r\u00F3tulo separada. Marcamos esta linha\ncomo aria-hidden porque n\u00E3o queremos que seja lido como uma das semanas do m\u00EAs. -->\n<tr *ngIf=\"_firstRowOffset < labelMinRequiredCells\"\n aria-hidden=\"true\">\n\n <td class=\"gipi-mat-datetime-picker-calendar-body-label\"\n [attr.colspan]=\"numCols\"\n [style.paddingTop]=\"_cellPadding\"\n [style.paddingBottom]=\"_cellPadding\">\n {{ label }}\n </td>\n\n</tr>\n\n<!-- Crie a primeira linha separadamente para que possamos incluir uma c\u00E9lula espa\u00E7adora especial. -->\n<tr *ngFor=\"let row of rows; let rowIndex = index\"\n role=\"row\">\n <!-- Marcamos esta c\u00E9lula como oculta por \u00E1ria para que n\u00E3o seja lida como um dos dias da semana. -->\n <td *ngIf=\"rowIndex === 0 && _firstRowOffset\"\n aria-hidden=\"true\"\n class=\"gipi-mat-datetime-picker-calendar-body-label\"\n [attr.colspan]=\"_firstRowOffset\"\n [style.paddingTop]=\"_cellPadding\"\n [style.paddingBottom]=\"_cellPadding\">\n {{ _firstRowOffset >= labelMinRequiredCells ? label : '' }}\n </td>\n\n <td *ngFor=\"let item of row; let colIndex = index\"\n role=\"button\"\n class=\"gipi-mat-datetime-picker-calendar-body-cell\"\n [attr.aria-disabled]=\"!item.enabled || null\"\n [attr.aria-label]=\"item.ariaLabel\"\n [class.gipi-mat-datetime-picker-calendar-body-active]=\"_isActiveCell(rowIndex, colIndex)\"\n [class.gipi-mat-datetime-picker-calendar-body-disabled]=\"!item.enabled\"\n (click)=\"_cellClicked(item)\"\n [style.width]=\"_cellWidth\"\n [style.paddingTop]=\"_cellPadding\"\n [style.paddingBottom]=\"_cellPadding\">\n\n <div class=\"gipi-mat-datetime-picker-calendar-body-cell-content\"\n [class.gipi-mat-datetime-picker-calendar-body-selected]=\"selectedValue === item.value\"\n [class.gipi-mat-datetime-picker-calendar-body-today]=\"todayValue === item.value\"\n [attr.aria-selected]=\"selectedValue === item.value\">\n {{ item.displayValue }}\n </div>\n\n </td>\n</tr>\n",
25258
+ encapsulation: core.ViewEncapsulation.None,
25259
+ changeDetection: core.ChangeDetectionStrategy.OnPush,
25260
+ host: {
25261
+ class: 'gipi-mat-datetime-picker-calendar-body',
25262
+ },
25263
+ styles: [".gipi-mat-datetime-picker-calendar-body{font-size:13px;min-width:224px}.gipi-mat-datetime-picker-calendar-body-label{padding:7.14286% 0 7.14286% 7.14286%;height:0;line-height:0;color:rgba(0,0,0,.54);transform:translateX(-6px);text-align:left}.gipi-mat-datetime-picker-calendar-body-cell{position:relative;width:14.28571%;height:0;line-height:0;padding:7.14286% 0;text-align:center;outline:0;cursor:pointer}.gipi-mat-datetime-picker-calendar-body-disabled{cursor:default;pointer-events:none}.gipi-mat-datetime-picker-calendar-body-cell-content{position:absolute;top:5%;left:5%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:90%;height:90%;color:rgba(0,0,0,.87);border:1px solid transparent;border-radius:50%}.gipi-mat-datetime-picker-calendar-body-disabled>.gipi-mat-datetime-picker-calendar-body-cell-content:not(.gipi-mat-datetime-picker-calendar-body-selected){color:rgba(0,0,0,.38)}.mat-calendar:focus .gipi-mat-datetime-picker-calendar-body-active>.gipi-mat-datetime-picker-calendar-body-cell-content:not(.gipi-mat-datetime-picker-calendar-body-selected),:not(.gipi-mat-datetime-picker-calendar-body-disabled):hover>.gipi-mat-datetime-picker-calendar-body-cell-content:not(.gipi-mat-datetime-picker-calendar-body-selected){background-color:rgba(0,0,0,.12)}.gipi-mat-datetime-picker-calendar-body-disabled>.gipi-mat-datetime-picker-calendar-body-today:not(.gipi-mat-datetime-picker-calendar-body-selected){border-color:rgba(0,0,0,.18)}[dir=rtl] .gipi-mat-datetime-picker-calendar-body-label{padding:0 7.14286% 0 0;transform:translateX(6px);text-align:right}"]
25264
+ })
25265
+ ], GIPIDatetimepickerCalendarBodyComponent);
25266
+ return GIPIDatetimepickerCalendarBodyComponent;
25267
+ }());
25268
+
25269
+ var GIPIDatetimeAdapter = /** @class */ (function (_super) {
25270
+ __extends(GIPIDatetimeAdapter, _super);
25271
+ function GIPIDatetimeAdapter(_delegate) {
25272
+ var _this = _super.call(this) || this;
25273
+ _this._delegate = _delegate;
25274
+ return _this;
25275
+ }
25276
+ GIPIDatetimeAdapter.prototype.getValidDateOrNull = function (obj) {
25277
+ return this.isDateInstance(obj) && this.isValid(obj) ? obj : null;
25146
25278
  };
25147
- CalendarMonthYearComponent.prototype._startExitAnimation = function () {
25148
- this._animationState = 'void';
25149
- if (this._changeDetectorRef) {
25150
- this._changeDetectorRef.markForCheck();
25151
- }
25279
+ GIPIDatetimeAdapter.prototype.compareDatetime = function (first, second, respectMinutePart) {
25280
+ if (respectMinutePart === void 0) { respectMinutePart = true; }
25281
+ return (this.compareDate(first, second) ||
25282
+ this.getHour(first) - this.getHour(second) ||
25283
+ (respectMinutePart && this.getMinute(first) - this.getMinute(second)));
25152
25284
  };
25153
- CalendarMonthYearComponent.prototype.decrement = function () {
25154
- this.monthYearPicker.model.decrementYear();
25155
- if (this.isShowYears) {
25156
- this._renderYears();
25285
+ GIPIDatetimeAdapter.prototype.sameDatetime = function (first, second) {
25286
+ if (first && second) {
25287
+ var firstValid = this.isValid(first);
25288
+ var secondValid = this.isValid(second);
25289
+ if (firstValid && secondValid) {
25290
+ return !this.compareDatetime(first, second);
25291
+ }
25292
+ return firstValid === secondValid;
25157
25293
  }
25294
+ return first === second;
25158
25295
  };
25159
- CalendarMonthYearComponent.prototype.increment = function () {
25160
- this.monthYearPicker.model.incrementYear();
25161
- if (this.isShowYears) {
25162
- this._renderYears();
25163
- }
25296
+ GIPIDatetimeAdapter.prototype.sameYear = function (first, second) {
25297
+ return first && second && this.getYear(first) === this.getYear(second);
25164
25298
  };
25165
- CalendarMonthYearComponent.prototype.selectMonth = function (index) {
25166
- this.monthYearPicker.model.selectMonth(index);
25167
- this.monthYearPicker.onValueChange(this.monthYearPicker.model.selectedMonthIndex, this.monthYearPicker.model.selectedMonthYear);
25168
- this.monthYearPicker.close();
25299
+ GIPIDatetimeAdapter.prototype.sameDay = function (first, second) {
25300
+ return (first &&
25301
+ second &&
25302
+ this.getDate(first) === this.getDate(second) &&
25303
+ this.sameMonthAndYear(first, second));
25169
25304
  };
25170
- CalendarMonthYearComponent.prototype.isSelectedMonth = function (monthIndex) {
25171
- return this.monthYearPicker.model.selectedMonthIndex == monthIndex && this.monthYearPicker.model.selectedMonthYear == this.monthYearPicker.model.selectedYearMoment.year();
25305
+ GIPIDatetimeAdapter.prototype.sameHour = function (first, second) {
25306
+ return (first &&
25307
+ second &&
25308
+ this.getHour(first) === this.getHour(second) &&
25309
+ this.sameDay(first, second));
25172
25310
  };
25173
- CalendarMonthYearComponent.prototype.isCurrentMonth = function (monthIndex) {
25174
- var currentMonth = moment$4().month();
25175
- var currentYear = moment$4().year();
25176
- return (monthIndex === currentMonth) && (this.monthYearPicker.model.selectedYearMoment.year() === currentYear);
25311
+ GIPIDatetimeAdapter.prototype.sameMinute = function (first, second) {
25312
+ return (first &&
25313
+ second &&
25314
+ this.getMinute(first) === this.getMinute(second) &&
25315
+ this.sameHour(first, second));
25177
25316
  };
25178
- CalendarMonthYearComponent.prototype.isDisabledMonth = function (index) {
25179
- var disabled = false;
25180
- if (!ObjectUtil.isNull(this.monthYearPicker)) {
25181
- var minMonth = !ObjectUtil.isNull(this.monthYearPicker.min) ? this.monthYearPicker.min.month : null;
25182
- var maxMonth = !ObjectUtil.isNull(this.monthYearPicker.max) ? this.monthYearPicker.max.month : null;
25183
- if (!ObjectUtil.isNull(minMonth) && !ObjectUtil.isNull(maxMonth)) {
25184
- disabled = index < minMonth || index > maxMonth;
25185
- }
25186
- else if (!ObjectUtil.isNull(minMonth)) {
25187
- disabled = index < minMonth;
25188
- }
25189
- else if (!ObjectUtil.isNull(maxMonth)) {
25190
- disabled = index > maxMonth;
25317
+ GIPIDatetimeAdapter.prototype.sameMonthAndYear = function (first, second) {
25318
+ if (first && second) {
25319
+ var firstValid = this.isValid(first);
25320
+ var secondValid = this.isValid(second);
25321
+ if (firstValid && secondValid) {
25322
+ return !(this.getYear(first) - this.getYear(second) ||
25323
+ this.getMonth(first) - this.getMonth(second));
25191
25324
  }
25325
+ return firstValid === secondValid;
25192
25326
  }
25193
- return disabled;
25194
- // let disabled = false;
25195
- // if (this._enabledMonths && this._enabledMonths.length > 0) {
25196
- // disabled = this._enabledMonths.indexOf(index) < 0;
25197
- // }
25198
- // if (this._disabledMonths && this._disabledMonths.length > 0) {
25199
- // disabled = this._disabledMonths.indexOf(index) >= 0;
25200
- // }
25201
- // return disabled;
25327
+ return first === second;
25202
25328
  };
25203
- /** Years */
25204
- CalendarMonthYearComponent.prototype.toggleShowYears = function () {
25205
- this.isShowYears = !this.isShowYears;
25206
- this._renderYears();
25329
+ // delegate
25330
+ GIPIDatetimeAdapter.prototype.deserialize = function (value) {
25331
+ return this._delegate.deserialize(value);
25207
25332
  };
25208
- CalendarMonthYearComponent.prototype._renderYears = function () {
25209
- this.years = [];
25210
- for (var i = 11; i > 0; i--) {
25211
- this.years.push(this.monthYearPicker.model.selectedYearMoment.year() - i);
25333
+ GIPIDatetimeAdapter.prototype.clone = function (date) {
25334
+ return this._delegate.clone(date);
25335
+ };
25336
+ GIPIDatetimeAdapter.prototype.addCalendarYears = function (date, years) {
25337
+ return this._delegate.addCalendarYears(date, years);
25338
+ };
25339
+ GIPIDatetimeAdapter.prototype.addCalendarMonths = function (date, months) {
25340
+ return this._delegate.addCalendarMonths(date, months);
25341
+ };
25342
+ GIPIDatetimeAdapter.prototype.addCalendarDays = function (date, days) {
25343
+ return this._delegate.addCalendarDays(date, days);
25344
+ };
25345
+ GIPIDatetimeAdapter.prototype.getYear = function (date) {
25346
+ return this._delegate.getYear(date);
25347
+ };
25348
+ GIPIDatetimeAdapter.prototype.getMonth = function (date) {
25349
+ return this._delegate.getMonth(date);
25350
+ };
25351
+ GIPIDatetimeAdapter.prototype.getDate = function (date) {
25352
+ return this._delegate.getDate(date);
25353
+ };
25354
+ GIPIDatetimeAdapter.prototype.getDayOfWeek = function (date) {
25355
+ return this._delegate.getDayOfWeek(date);
25356
+ };
25357
+ GIPIDatetimeAdapter.prototype.getMonthNames = function (style) {
25358
+ return this._delegate.getMonthNames(style);
25359
+ };
25360
+ GIPIDatetimeAdapter.prototype.getDateNames = function () {
25361
+ return this._delegate.getDateNames();
25362
+ };
25363
+ GIPIDatetimeAdapter.prototype.getDayOfWeekNames = function (style) {
25364
+ return this._delegate.getDayOfWeekNames(style);
25365
+ };
25366
+ GIPIDatetimeAdapter.prototype.getYearName = function (date) {
25367
+ return this._delegate.getYearName(date);
25368
+ };
25369
+ GIPIDatetimeAdapter.prototype.getFirstDayOfWeek = function () {
25370
+ return this._delegate.getFirstDayOfWeek();
25371
+ };
25372
+ GIPIDatetimeAdapter.prototype.getNumDaysInMonth = function (date) {
25373
+ return this._delegate.getNumDaysInMonth(date);
25374
+ };
25375
+ GIPIDatetimeAdapter.prototype.createDate = function (year, month, date) {
25376
+ return this._delegate.createDate(year, month, date);
25377
+ };
25378
+ GIPIDatetimeAdapter.prototype.today = function () {
25379
+ return this._delegate.today();
25380
+ };
25381
+ GIPIDatetimeAdapter.prototype.parse = function (value, parseFormat) {
25382
+ return this._delegate.parse(value, parseFormat);
25383
+ };
25384
+ GIPIDatetimeAdapter.prototype.format = function (date, displayFormat) {
25385
+ return this._delegate.format(date, displayFormat);
25386
+ };
25387
+ GIPIDatetimeAdapter.prototype.toIso8601 = function (date) {
25388
+ return this._delegate.toIso8601(date);
25389
+ };
25390
+ GIPIDatetimeAdapter.prototype.isDateInstance = function (obj) {
25391
+ return this._delegate.isDateInstance(obj);
25392
+ };
25393
+ GIPIDatetimeAdapter.prototype.isValid = function (date) {
25394
+ return this._delegate.isValid(date);
25395
+ };
25396
+ GIPIDatetimeAdapter.prototype.invalid = function () {
25397
+ return this._delegate.invalid();
25398
+ };
25399
+ GIPIDatetimeAdapter.prototype.clampDate = function (date, min, max) {
25400
+ if (min && this.compareDatetime(date, min) < 0) {
25401
+ return min;
25212
25402
  }
25213
- for (var i = 0; i <= 12; i++) {
25214
- this.years.push(this.monthYearPicker.model.selectedYearMoment.year() + i);
25403
+ if (max && this.compareDatetime(date, max) > 0) {
25404
+ return max;
25215
25405
  }
25406
+ return date;
25216
25407
  };
25217
- Object.defineProperty(CalendarMonthYearComponent.prototype, "periodButtonLabel", {
25408
+ return GIPIDatetimeAdapter;
25409
+ }(core$1.DateAdapter));
25410
+
25411
+ var yearsPerPage$2 = 24;
25412
+ var yearsPerRow$1 = 4;
25413
+ /**
25414
+ * An internal component used to display multiple years in the datepicker.
25415
+ * @docs-private
25416
+ */
25417
+ var GIPIDatetimepickerMultiYearViewComponent = /** @class */ (function () {
25418
+ function GIPIDatetimepickerMultiYearViewComponent(_adapter, _dateFormats) {
25419
+ this._adapter = _adapter;
25420
+ this._dateFormats = _dateFormats;
25421
+ this.type = 'date';
25422
+ /** Emits when a new month is selected. */
25423
+ this.selectedChange = new core.EventEmitter();
25424
+ this._userSelection = new core.EventEmitter();
25425
+ if (!this._adapter) {
25426
+ throw createMissingDateImplError$1('GIPIDatetimeAdapter');
25427
+ }
25428
+ if (!this._dateFormats) {
25429
+ throw createMissingDateImplError$1('GIPI_DATETIME_FORMATS');
25430
+ }
25431
+ this._activeDate = this._adapter.today();
25432
+ }
25433
+ Object.defineProperty(GIPIDatetimepickerMultiYearViewComponent.prototype, "activeDate", {
25218
25434
  get: function () {
25219
- var formatYearRange = function (start, end) {
25220
- return start + " \u2013 " + end;
25221
- };
25222
- return this.isShowYears ? formatYearRange(this.years[0], this.years[this.years.length - 1]) : this.monthYearPicker.model.selectedYearText;
25435
+ return this._activeDate;
25223
25436
  },
25224
- enumerable: false,
25437
+ set: function (value) {
25438
+ var oldActiveDate = this._activeDate;
25439
+ this._activeDate = value || this._adapter.today();
25440
+ if (oldActiveDate && this._activeDate && !isSameMultiYearView$1(this._adapter, oldActiveDate, this._activeDate, this.minDate, this.maxDate)) {
25441
+ this._init();
25442
+ }
25443
+ },
25444
+ enumerable: false,
25445
+ configurable: true
25446
+ });
25447
+ Object.defineProperty(GIPIDatetimepickerMultiYearViewComponent.prototype, "selected", {
25448
+ get: function () {
25449
+ return this._selected;
25450
+ },
25451
+ set: function (value) {
25452
+ this._selected = value;
25453
+ this._selectedYear = this._selected && this._adapter.getYear(this._selected);
25454
+ },
25455
+ enumerable: false,
25456
+ configurable: true
25457
+ });
25458
+ Object.defineProperty(GIPIDatetimepickerMultiYearViewComponent.prototype, "minDate", {
25459
+ get: function () {
25460
+ return this._minDate;
25461
+ },
25462
+ set: function (value) {
25463
+ this._minDate = this._getValidDateOrNull(this._adapter.deserialize(value));
25464
+ },
25465
+ enumerable: false,
25466
+ configurable: true
25467
+ });
25468
+ Object.defineProperty(GIPIDatetimepickerMultiYearViewComponent.prototype, "maxDate", {
25469
+ get: function () {
25470
+ return this._maxDate;
25471
+ },
25472
+ set: function (value) {
25473
+ this._maxDate = this._getValidDateOrNull(this._adapter.deserialize(value));
25474
+ },
25475
+ enumerable: false,
25476
+ configurable: true
25477
+ });
25478
+ GIPIDatetimepickerMultiYearViewComponent.prototype.ngAfterContentInit = function () {
25479
+ this._init();
25480
+ };
25481
+ /** Handles when a new year is selected. */
25482
+ GIPIDatetimepickerMultiYearViewComponent.prototype._yearSelected = function (year) {
25483
+ var month = this._adapter.getMonth(this.activeDate);
25484
+ var normalizedDate = this._adapter.createDatetime(year, month, 1, 0, 0);
25485
+ this.selectedChange.emit(this._adapter.createDatetime(year, month, Math.min(this._adapter.getDate(this.activeDate), this._adapter.getNumDaysInMonth(normalizedDate)), this._adapter.getHour(this.activeDate), this._adapter.getMinute(this.activeDate)));
25486
+ if (this.type === 'year') {
25487
+ this._userSelection.emit();
25488
+ }
25489
+ };
25490
+ GIPIDatetimepickerMultiYearViewComponent.prototype._getActiveCell = function () {
25491
+ return getActiveOffset$1(this._adapter, this.activeDate, this.minDate, this.maxDate);
25492
+ };
25493
+ GIPIDatetimepickerMultiYearViewComponent.prototype._calendarStateDone = function () {
25494
+ this._calendarState = '';
25495
+ };
25496
+ /** Initializes this year view. */
25497
+ GIPIDatetimepickerMultiYearViewComponent.prototype._init = function () {
25498
+ var _this = this;
25499
+ this._todayYear = this._adapter.getYear(this._adapter.today());
25500
+ this._yearLabel = this._adapter.getYearName(this.activeDate);
25501
+ var activeYear = this._adapter.getYear(this.activeDate);
25502
+ var minYearOfPage = activeYear - getActiveOffset$1(this._adapter, this.activeDate, this.minDate, this.maxDate);
25503
+ this._years = [];
25504
+ for (var i = 0, row = []; i < yearsPerPage$2; i++) {
25505
+ row.push(minYearOfPage + i);
25506
+ if (row.length == yearsPerRow$1) {
25507
+ this._years.push(row.map(function (year) { return _this._createCellForYear(year); }));
25508
+ row = [];
25509
+ }
25510
+ }
25511
+ };
25512
+ /** Creates an GIPIDatetimepickerCalendarCell for the given year. */
25513
+ GIPIDatetimepickerMultiYearViewComponent.prototype._createCellForYear = function (year) {
25514
+ var yearName = this._adapter.getYearName(this._adapter.createDate(year, 0, 1));
25515
+ return new GIPIDatetimepickerCalendarCell(year, yearName, yearName, this._shouldEnableYear(year));
25516
+ };
25517
+ /** Whether the given year is enabled. */
25518
+ GIPIDatetimepickerMultiYearViewComponent.prototype._shouldEnableYear = function (year) {
25519
+ // disable if the year is greater than maxDate lower than minDate
25520
+ if (year === undefined ||
25521
+ year === null ||
25522
+ (this.maxDate && year > this._adapter.getYear(this.maxDate)) ||
25523
+ (this.minDate && year < this._adapter.getYear(this.minDate))) {
25524
+ return false;
25525
+ }
25526
+ // enable if it reaches here and there's no filter defined
25527
+ if (!this.dateFilter) {
25528
+ return true;
25529
+ }
25530
+ var firstOfYear = this._adapter.createDate(year, 0, 1);
25531
+ // If any date in the year is enabled count the year as enabled.
25532
+ for (var date = firstOfYear; this._adapter.getYear(date) == year; date = this._adapter.addCalendarDays(date, 1)) {
25533
+ if (this.dateFilter(date)) {
25534
+ return true;
25535
+ }
25536
+ }
25537
+ return false;
25538
+ };
25539
+ /**
25540
+ * Gets the year in this years range that the given Date falls on.
25541
+ * Returns null if the given Date is not in this range.
25542
+ */
25543
+ GIPIDatetimepickerMultiYearViewComponent.prototype._getYearInCurrentRange = function (date) {
25544
+ var year = this._adapter.getYear(date);
25545
+ return this._isInRange(year) ? year : null;
25546
+ };
25547
+ /**
25548
+ * Validate if the current year is in the current range
25549
+ * Returns true if is in range else returns false
25550
+ */
25551
+ GIPIDatetimepickerMultiYearViewComponent.prototype._isInRange = function (year) {
25552
+ return true;
25553
+ };
25554
+ /**
25555
+ * @param obj The object to check.
25556
+ * @returns The given object if it is both a date instance and valid, otherwise null.
25557
+ */
25558
+ GIPIDatetimepickerMultiYearViewComponent.prototype._getValidDateOrNull = function (obj) {
25559
+ return this._adapter.isDateInstance(obj) && this._adapter.isValid(obj) ? obj : null;
25560
+ };
25561
+ GIPIDatetimepickerMultiYearViewComponent.ctorParameters = function () { return [
25562
+ { type: GIPIDatetimeAdapter, decorators: [{ type: core.Optional }] },
25563
+ { type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [GIPI_DATETIME_FORMATS,] }] }
25564
+ ]; };
25565
+ __decorate([
25566
+ core.Input(),
25567
+ __metadata("design:type", String)
25568
+ ], GIPIDatetimepickerMultiYearViewComponent.prototype, "type", void 0);
25569
+ __decorate([
25570
+ core.Input(),
25571
+ __metadata("design:type", Function)
25572
+ ], GIPIDatetimepickerMultiYearViewComponent.prototype, "dateFilter", void 0);
25573
+ __decorate([
25574
+ core.Input(),
25575
+ __metadata("design:type", Object),
25576
+ __metadata("design:paramtypes", [Object])
25577
+ ], GIPIDatetimepickerMultiYearViewComponent.prototype, "activeDate", null);
25578
+ __decorate([
25579
+ core.Input(),
25580
+ __metadata("design:type", Object),
25581
+ __metadata("design:paramtypes", [Object])
25582
+ ], GIPIDatetimepickerMultiYearViewComponent.prototype, "selected", null);
25583
+ __decorate([
25584
+ core.Input(),
25585
+ __metadata("design:type", Object),
25586
+ __metadata("design:paramtypes", [Object])
25587
+ ], GIPIDatetimepickerMultiYearViewComponent.prototype, "minDate", null);
25588
+ __decorate([
25589
+ core.Input(),
25590
+ __metadata("design:type", Object),
25591
+ __metadata("design:paramtypes", [Object])
25592
+ ], GIPIDatetimepickerMultiYearViewComponent.prototype, "maxDate", null);
25593
+ __decorate([
25594
+ core.Output(),
25595
+ __metadata("design:type", Object)
25596
+ ], GIPIDatetimepickerMultiYearViewComponent.prototype, "selectedChange", void 0);
25597
+ __decorate([
25598
+ core.Output(),
25599
+ __metadata("design:type", Object)
25600
+ ], GIPIDatetimepickerMultiYearViewComponent.prototype, "_userSelection", void 0);
25601
+ GIPIDatetimepickerMultiYearViewComponent = __decorate([
25602
+ core.Component({
25603
+ selector: 'gipi-mat-datetime-picker-multi-year-view',
25604
+ template: "<table class=\"gipi-mat-datetime-picker-calendar-table\">\n <thead class=\"gipi-mat-datetime-picker-calendar-table-header\">\n <tr>\n <th class=\"gipi-mat-datetime-picker-calendar-table-header-divider\"\n colspan=\"4\">\n </th>\n </tr>\n </thead>\n <tbody gipiMatDatetimePickerCalendarBody\n role=\"grid\"\n allowDisabledSelection=\"true\"\n [cellAspectRatio]=\"4 / 7\"\n [numCols]=\"4\"\n [rows]=\"_years\"\n [activeCell]=\"_getActiveCell()\"\n [selectedValue]=\"_selectedYear\"\n [todayValue]=\"_todayYear\"\n [@slideCalendar]=\"_calendarState\"\n (@slideCalendar.done)=\"_calendarStateDone()\"\n (selectedValueChange)=\"_yearSelected($event)\">\n </tbody>\n</table>",
25605
+ animations: [slideCalendar],
25606
+ encapsulation: core.ViewEncapsulation.None,
25607
+ changeDetection: core.ChangeDetectionStrategy.OnPush
25608
+ }),
25609
+ __param(0, core.Optional()),
25610
+ __param(1, core.Optional()),
25611
+ __param(1, core.Inject(GIPI_DATETIME_FORMATS)),
25612
+ __metadata("design:paramtypes", [GIPIDatetimeAdapter, Object])
25613
+ ], GIPIDatetimepickerMultiYearViewComponent);
25614
+ return GIPIDatetimepickerMultiYearViewComponent;
25615
+ }());
25616
+ function isSameMultiYearView$1(dateAdapter, date1, date2, minDate, maxDate) {
25617
+ var year1 = dateAdapter.getYear(date1);
25618
+ var year2 = dateAdapter.getYear(date2);
25619
+ var startingYear = getStartingYear$1(dateAdapter, minDate, maxDate);
25620
+ return (Math.floor((year1 - startingYear) / yearsPerPage$2) === Math.floor((year2 - startingYear) / yearsPerPage$2));
25621
+ }
25622
+ /**
25623
+ * When the multi-year view is first opened, the active year will be in view.
25624
+ * So we compute how many years are between the active year and the *slot* where our
25625
+ * "startingYear" will render when paged into view.
25626
+ */
25627
+ function getActiveOffset$1(dateAdapter, activeDate, minDate, maxDate) {
25628
+ var activeYear = dateAdapter.getYear(activeDate);
25629
+ return euclideanModulo$1(activeYear - getStartingYear$1(dateAdapter, minDate, maxDate), yearsPerPage$2);
25630
+ }
25631
+ /**
25632
+ * We pick a "starting" year such that either the maximum year would be at the end
25633
+ * or the minimum year would be at the beginning of a page.
25634
+ */
25635
+ function getStartingYear$1(dateAdapter, minDate, maxDate) {
25636
+ var startingYear = 0;
25637
+ if (maxDate) {
25638
+ var maxYear = dateAdapter.getYear(maxDate);
25639
+ startingYear = maxYear - yearsPerPage$2 + 1;
25640
+ }
25641
+ else if (minDate) {
25642
+ startingYear = dateAdapter.getYear(minDate);
25643
+ }
25644
+ return startingYear;
25645
+ }
25646
+ /** Gets remainder that is non-negative, even if first number is negative */
25647
+ function euclideanModulo$1(a, b) {
25648
+ return ((a % b) + b) % b;
25649
+ }
25650
+
25651
+ /**
25652
+ * A calendar that is used as part of the datepicker.
25653
+ * @docs-private
25654
+ */
25655
+ var GIPIDatetimepickerCalendarComponent = /** @class */ (function () {
25656
+ function GIPIDatetimepickerCalendarComponent(_elementRef, _intl, _ngZone, _adapter, _dateFormats, changeDetectorRef) {
25657
+ var _this = this;
25658
+ this._elementRef = _elementRef;
25659
+ this._intl = _intl;
25660
+ this._ngZone = _ngZone;
25661
+ this._adapter = _adapter;
25662
+ this._dateFormats = _dateFormats;
25663
+ this._clockView = 'hour';
25664
+ /** Active multi year view when click on year. */
25665
+ this.multiYearSelector = true;
25666
+ /** Whether the calendar should be started in month or year view. */
25667
+ this.startView = 'month';
25668
+ this.twelvehour = false;
25669
+ this.timeInterval = 1;
25670
+ this.ariaLabel = 'Use arrow keys to navigate';
25671
+ this.ariaNextMonthLabel = 'Next month';
25672
+ this.ariaPrevMonthLabel = 'Previous month';
25673
+ this.ariaNextYearLabel = 'Next year';
25674
+ this.ariaPrevYearLabel = 'Previous year';
25675
+ this.ariaNextMultiYearLabel = 'Next year range';
25676
+ this.ariaPrevMultiYearLabel = 'Previous year range';
25677
+ /** Prevent user to select same date time */
25678
+ this.preventSameDateTimeSelection = false;
25679
+ this._type = 'date';
25680
+ /** Emits when the currently selected date changes. */
25681
+ this.selectedChange = new core.EventEmitter();
25682
+ /** Emits when the view has been changed. **/
25683
+ this.viewChanged = new core.EventEmitter();
25684
+ this._userSelection = new core.EventEmitter();
25685
+ /** Date filter for the month and year views. */
25686
+ this._dateFilterForViews = function (date) {
25687
+ return (!!date &&
25688
+ (!_this.dateFilter || _this.dateFilter(date, exports.GIPIDatetimepickerFilterType.DATE)) &&
25689
+ (!_this.minDate || _this._adapter.compareDate(date, _this.minDate) >= 0) &&
25690
+ (!_this.maxDate || _this._adapter.compareDate(date, _this.maxDate) <= 0));
25691
+ };
25692
+ if (!this._adapter) {
25693
+ throw createMissingDateImplError$1('GIPIDatetimeAdapter');
25694
+ }
25695
+ if (!this._dateFormats) {
25696
+ throw createMissingDateImplError$1('GIPI_DATETIME_FORMATS');
25697
+ }
25698
+ this._intlChanges = _intl.changes.subscribe(function () { return changeDetectorRef.markForCheck(); });
25699
+ }
25700
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "type", {
25701
+ get: function () {
25702
+ return this._type;
25703
+ },
25704
+ set: function (value) {
25705
+ this._type = value || 'date';
25706
+ if (this.type === 'year') {
25707
+ this.multiYearSelector = true;
25708
+ }
25709
+ },
25710
+ enumerable: false,
25711
+ configurable: true
25712
+ });
25713
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "startAt", {
25714
+ get: function () {
25715
+ return this._startAt;
25716
+ },
25717
+ set: function (value) {
25718
+ this._startAt = this._adapter.getValidDateOrNull(value);
25719
+ },
25720
+ enumerable: false,
25721
+ configurable: true
25722
+ });
25723
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "selected", {
25724
+ get: function () {
25725
+ return this._selected;
25726
+ },
25727
+ set: function (value) {
25728
+ this._selected = this._adapter.getValidDateOrNull(value);
25729
+ },
25730
+ enumerable: false,
25731
+ configurable: true
25732
+ });
25733
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "minDate", {
25734
+ get: function () {
25735
+ return this._minDate;
25736
+ },
25737
+ set: function (value) {
25738
+ this._minDate = this._adapter.getValidDateOrNull(value);
25739
+ },
25740
+ enumerable: false,
25741
+ configurable: true
25742
+ });
25743
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "maxDate", {
25744
+ get: function () {
25745
+ return this._maxDate;
25746
+ },
25747
+ set: function (value) {
25748
+ this._maxDate = this._adapter.getValidDateOrNull(value);
25749
+ },
25750
+ enumerable: false,
25751
+ configurable: true
25752
+ });
25753
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "_activeDate", {
25754
+ /** The current active date. This determines which time period is shown and which date is highlighted when using keyboard navigation. */
25755
+ get: function () {
25756
+ return this._clampedActiveDate;
25757
+ },
25758
+ set: function (value) {
25759
+ var oldActiveDate = this._clampedActiveDate;
25760
+ this._clampedActiveDate = this._adapter.clampDate(value, this.minDate, this.maxDate);
25761
+ if (oldActiveDate &&
25762
+ this._clampedActiveDate &&
25763
+ this.currentView === 'month' &&
25764
+ !this._adapter.sameMonthAndYear(oldActiveDate, this._clampedActiveDate)) {
25765
+ if (this._adapter.isInNextMonth(oldActiveDate, this._clampedActiveDate)) {
25766
+ this.calendarState('right');
25767
+ }
25768
+ else {
25769
+ this.calendarState('left');
25770
+ }
25771
+ }
25772
+ },
25773
+ enumerable: false,
25774
+ configurable: true
25775
+ });
25776
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "currentView", {
25777
+ get: function () {
25778
+ return this._currentView;
25779
+ },
25780
+ set: function (view) {
25781
+ this._currentView = view;
25782
+ this.viewChanged.emit(view);
25783
+ },
25784
+ enumerable: false,
25785
+ configurable: true
25786
+ });
25787
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "_yearLabel", {
25788
+ /** The label for the current calendar view. */
25789
+ get: function () {
25790
+ return this._adapter.getYearName(this._activeDate);
25791
+ },
25792
+ enumerable: false,
25793
+ configurable: true
25794
+ });
25795
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "_monthYearLabel", {
25796
+ get: function () {
25797
+ if (this.currentView === 'multi-year') {
25798
+ // The offset from the active year to the "slot" for the starting year is the
25799
+ // *actual* first rendered year in the multi-year view, and the last year is
25800
+ // just yearsPerPage - 1 away.
25801
+ var activeYear = this._adapter.getYear(this._activeDate);
25802
+ var minYearOfPage = activeYear - getActiveOffset$1(this._adapter, this._activeDate, this.minDate, this.maxDate);
25803
+ var maxYearOfPage = minYearOfPage + yearsPerPage$2 - 1;
25804
+ var minYearName = this._adapter.getYearName(this._adapter.createDate(minYearOfPage, 0, 1));
25805
+ var maxYearName = this._adapter.getYearName(this._adapter.createDate(maxYearOfPage, 0, 1));
25806
+ return this._intl.formatYearRange(minYearName, maxYearName);
25807
+ }
25808
+ return this.currentView === 'month'
25809
+ ? this._adapter.getMonthNames('long')[this._adapter.getMonth(this._activeDate)]
25810
+ : this._adapter.getYearName(this._activeDate);
25811
+ },
25812
+ enumerable: false,
25813
+ configurable: true
25814
+ });
25815
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "_dateLabel", {
25816
+ get: function () {
25817
+ switch (this.type) {
25818
+ case 'month': return this._adapter.getMonthNames('long')[this._adapter.getMonth(this._activeDate)];
25819
+ default: return this._adapter.format(this._activeDate, this._dateFormats.display.popupHeaderDateLabel);
25820
+ }
25821
+ },
25822
+ enumerable: false,
25823
+ configurable: true
25824
+ });
25825
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "periodButtonLabel", {
25826
+ get: function () {
25827
+ return this.currentView == 'month' ? this._intl.switchToMultiYearViewLabel : this._intl.switchToMonthViewLabel;
25828
+ },
25829
+ enumerable: false,
25830
+ configurable: true
25831
+ });
25832
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "prevButtonLabel", {
25833
+ /** The label for the previous button. */
25834
+ get: function () {
25835
+ return {
25836
+ 'month': this._intl.prevMonthLabel,
25837
+ 'year': this._intl.prevYearLabel,
25838
+ 'multi-year': this._intl.prevMultiYearLabel
25839
+ }[this.currentView];
25840
+ },
25841
+ enumerable: false,
25842
+ configurable: true
25843
+ });
25844
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "nextButtonLabel", {
25845
+ /** The label for the next button. */
25846
+ get: function () {
25847
+ return {
25848
+ 'month': this._intl.nextMonthLabel,
25849
+ 'year': this._intl.nextYearLabel,
25850
+ 'multi-year': this._intl.nextMultiYearLabel
25851
+ }[this.currentView];
25852
+ },
25853
+ enumerable: false,
25854
+ configurable: true
25855
+ });
25856
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "_hoursLabel", {
25857
+ get: function () {
25858
+ var hour = this._adapter.getHour(this._activeDate);
25859
+ if (!!this.twelvehour) {
25860
+ if (hour === 0) {
25861
+ hour = 24;
25862
+ }
25863
+ hour = hour > 12 ? hour - 12 : hour;
25864
+ }
25865
+ return this._2digit(hour);
25866
+ },
25867
+ enumerable: false,
25868
+ configurable: true
25869
+ });
25870
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "_minutesLabel", {
25871
+ get: function () {
25872
+ return this._2digit(this._adapter.getMinute(this._activeDate));
25873
+ },
25874
+ enumerable: false,
25875
+ configurable: true
25876
+ });
25877
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "_ariaLabelNext", {
25878
+ get: function () {
25879
+ switch (this._currentView) {
25880
+ case 'month': return this.ariaNextMonthLabel;
25881
+ case 'year': return this.ariaNextYearLabel;
25882
+ case 'multi-year': return this.ariaNextMultiYearLabel;
25883
+ default: return '';
25884
+ }
25885
+ },
25886
+ enumerable: false,
25887
+ configurable: true
25888
+ });
25889
+ Object.defineProperty(GIPIDatetimepickerCalendarComponent.prototype, "_ariaLabelPrev", {
25890
+ get: function () {
25891
+ switch (this._currentView) {
25892
+ case 'month': return this.ariaPrevMonthLabel;
25893
+ case 'year': return this.ariaPrevYearLabel;
25894
+ case 'multi-year': return this.ariaPrevMultiYearLabel;
25895
+ default: return '';
25896
+ }
25897
+ },
25898
+ enumerable: false,
25899
+ configurable: true
25900
+ });
25901
+ GIPIDatetimepickerCalendarComponent.prototype.ngAfterContentInit = function () {
25902
+ this._activeDate = this.startAt || this._adapter.today();
25903
+ this._selectAMPM(this._activeDate);
25904
+ this._focusActiveCell();
25905
+ if (this.type === 'year') {
25906
+ this.currentView = 'multi-year';
25907
+ }
25908
+ else if (this.type === 'month') {
25909
+ this.currentView = 'year';
25910
+ }
25911
+ else if (this.type === 'time') {
25912
+ this.currentView = 'clock';
25913
+ }
25914
+ else {
25915
+ this.currentView = this.startView || 'month';
25916
+ }
25917
+ };
25918
+ GIPIDatetimepickerCalendarComponent.prototype.ngOnDestroy = function () {
25919
+ this._intlChanges.unsubscribe();
25920
+ };
25921
+ GIPIDatetimepickerCalendarComponent.prototype._userSelected = function () {
25922
+ this._userSelection.emit();
25923
+ };
25924
+ /** Handles date selection in the month view. */
25925
+ GIPIDatetimepickerCalendarComponent.prototype._dateSelected = function (date) {
25926
+ if (this.type === 'date') {
25927
+ if (!this._adapter.sameDate(date, this.selected) ||
25928
+ !this.preventSameDateTimeSelection) {
25929
+ this.selectedChange.emit(date);
25930
+ }
25931
+ }
25932
+ else {
25933
+ this._activeDate = date;
25934
+ this.currentView = 'clock';
25935
+ }
25936
+ };
25937
+ /** Handles month selection in the year view. */
25938
+ GIPIDatetimepickerCalendarComponent.prototype._monthSelected = function (month) {
25939
+ if (this.type === 'month') {
25940
+ if (!this._adapter.sameMonthAndYear(month, this.selected) ||
25941
+ !this.preventSameDateTimeSelection) {
25942
+ this.selectedChange.emit(this._adapter.getFirstDateOfMonth(month));
25943
+ }
25944
+ }
25945
+ else {
25946
+ this._activeDate = month;
25947
+ this.currentView = 'month';
25948
+ this._clockView = 'hour';
25949
+ }
25950
+ };
25951
+ /** Handles year selection in the multi year view. */
25952
+ GIPIDatetimepickerCalendarComponent.prototype._yearSelected = function (year) {
25953
+ if (this.type === 'year') {
25954
+ if (!this._adapter.sameYear(year, this.selected) ||
25955
+ !this.preventSameDateTimeSelection) {
25956
+ var normalizedDate = this._adapter.createDatetime(this._adapter.getYear(year), 0, 1, 0, 0);
25957
+ this.selectedChange.emit(normalizedDate);
25958
+ }
25959
+ }
25960
+ else {
25961
+ this._activeDate = year;
25962
+ this.currentView = 'year';
25963
+ }
25964
+ };
25965
+ GIPIDatetimepickerCalendarComponent.prototype._timeSelected = function (date) {
25966
+ if (this._clockView !== 'minute') {
25967
+ this._activeDate = this._updateDate(date);
25968
+ this._clockView = 'minute';
25969
+ }
25970
+ else {
25971
+ if (!this._adapter.sameDatetime(date, this.selected) ||
25972
+ !this.preventSameDateTimeSelection) {
25973
+ this.selectedChange.emit(date);
25974
+ }
25975
+ }
25976
+ };
25977
+ GIPIDatetimepickerCalendarComponent.prototype._onActiveDateChange = function (date) {
25978
+ this._activeDate = date;
25979
+ };
25980
+ GIPIDatetimepickerCalendarComponent.prototype._updateDate = function (date) {
25981
+ if (!!this.twelvehour) {
25982
+ var HOUR = this._adapter.getHour(date);
25983
+ if (HOUR === 12) {
25984
+ if (this._AMPM === 'AM') {
25985
+ return this._adapter.addCalendarHours(date, -12);
25986
+ }
25987
+ }
25988
+ else if (this._AMPM === 'PM') {
25989
+ return this._adapter.addCalendarHours(date, 12);
25990
+ }
25991
+ }
25992
+ return date;
25993
+ };
25994
+ GIPIDatetimepickerCalendarComponent.prototype._selectAMPM = function (date) {
25995
+ if (this._adapter.getHour(date) > 11) {
25996
+ this._AMPM = 'PM';
25997
+ }
25998
+ else {
25999
+ this._AMPM = 'AM';
26000
+ }
26001
+ };
26002
+ GIPIDatetimepickerCalendarComponent.prototype._ampmClicked = function (source) {
26003
+ if (source === this._AMPM) {
26004
+ return;
26005
+ }
26006
+ this._AMPM = source;
26007
+ if (this._AMPM === 'AM') {
26008
+ this._activeDate = this._adapter.addCalendarHours(this._activeDate, -12);
26009
+ }
26010
+ else {
26011
+ this._activeDate = this._adapter.addCalendarHours(this._activeDate, 12);
26012
+ }
26013
+ };
26014
+ GIPIDatetimepickerCalendarComponent.prototype._yearClicked = function () {
26015
+ if (this.type === 'year' || this.multiYearSelector) {
26016
+ this.currentView = 'multi-year';
26017
+ return;
26018
+ }
26019
+ this.currentView = 'year';
26020
+ };
26021
+ GIPIDatetimepickerCalendarComponent.prototype._dateClicked = function () {
26022
+ if (this.type !== 'month') {
26023
+ this.currentView = 'month';
26024
+ }
26025
+ };
26026
+ GIPIDatetimepickerCalendarComponent.prototype._hoursClicked = function () {
26027
+ this.currentView = 'clock';
26028
+ this._clockView = 'hour';
26029
+ };
26030
+ GIPIDatetimepickerCalendarComponent.prototype._minutesClicked = function () {
26031
+ this.currentView = 'clock';
26032
+ this._clockView = 'minute';
26033
+ };
26034
+ /** Handles user clicks on the previous button. */
26035
+ GIPIDatetimepickerCalendarComponent.prototype._previousClicked = function () {
26036
+ this._activeDate = this.currentView === 'month'
26037
+ ? this._adapter.addCalendarMonths(this._activeDate, -1)
26038
+ : this._adapter.addCalendarYears(this._activeDate, this.currentView === 'year' ? -1 : -yearsPerPage$2);
26039
+ };
26040
+ /** Handles user clicks on the next button. */
26041
+ GIPIDatetimepickerCalendarComponent.prototype._nextClicked = function () {
26042
+ this._activeDate = (this.currentView === 'month')
26043
+ ? this._adapter.addCalendarMonths(this._activeDate, 1)
26044
+ : this._adapter.addCalendarYears(this._activeDate, this.currentView === 'year' ? 1 : yearsPerPage$2);
26045
+ };
26046
+ /** Whether the previous period button is enabled. */
26047
+ GIPIDatetimepickerCalendarComponent.prototype._previousEnabled = function () {
26048
+ if (!this.minDate) {
26049
+ return true;
26050
+ }
26051
+ return !this.minDate || !this._isSameView(this._activeDate, this.minDate);
26052
+ };
26053
+ /** Whether the next period button is enabled. */
26054
+ GIPIDatetimepickerCalendarComponent.prototype._nextEnabled = function () {
26055
+ return !this.maxDate || !this._isSameView(this._activeDate, this.maxDate);
26056
+ };
26057
+ /** Handles keydown events on the calendar body. */
26058
+ GIPIDatetimepickerCalendarComponent.prototype._handleCalendarBodyKeydown = function (event) {
26059
+ // TODO(mmalerba): We currently allow keyboard navigation to disabled dates, but just prevent
26060
+ // disabled ones from being selected. This may not be ideal, we should look into whether
26061
+ // navigation should skip over disabled dates, and if so, how to implement that efficiently.
26062
+ if (this.currentView === 'month') {
26063
+ this._handleCalendarBodyKeydownInMonthView(event);
26064
+ }
26065
+ else if (this.currentView === 'year') {
26066
+ this._handleCalendarBodyKeydownInYearView(event);
26067
+ }
26068
+ else if (this.currentView === 'multi-year') {
26069
+ this._handleCalendarBodyKeydownInMultiYearView(event);
26070
+ }
26071
+ else {
26072
+ this._handleCalendarBodyKeydownInClockView(event);
26073
+ }
26074
+ };
26075
+ GIPIDatetimepickerCalendarComponent.prototype._focusActiveCell = function () {
26076
+ var _this = this;
26077
+ this._ngZone.runOutsideAngular(function () {
26078
+ _this._ngZone.onStable
26079
+ .asObservable()
26080
+ .pipe(operators.first())
26081
+ .subscribe(function () { return _this._elementRef.nativeElement.focus(); });
26082
+ });
26083
+ };
26084
+ GIPIDatetimepickerCalendarComponent.prototype._calendarStateDone = function () {
26085
+ this._calendarState = '';
26086
+ };
26087
+ /** Whether the two dates represent the same view in the current view mode (month or year). */
26088
+ GIPIDatetimepickerCalendarComponent.prototype._isSameView = function (date1, date2) {
26089
+ if (this.currentView === 'month') {
26090
+ return (this._adapter.getYear(date1) === this._adapter.getYear(date2) &&
26091
+ this._adapter.getMonth(date1) === this._adapter.getMonth(date2));
26092
+ }
26093
+ if (this.currentView === 'year') {
26094
+ return this._adapter.getYear(date1) === this._adapter.getYear(date2);
26095
+ }
26096
+ // Otherwise we are in 'multi-year' view.
26097
+ return isSameMultiYearView$1(this._adapter, date1, date2, this.minDate, this.maxDate);
26098
+ };
26099
+ /** Handles keydown events on the calendar body when calendar is in month view. */
26100
+ GIPIDatetimepickerCalendarComponent.prototype._handleCalendarBodyKeydownInMonthView = function (event) {
26101
+ switch (event.keyCode) {
26102
+ case keycodes.LEFT_ARROW:
26103
+ this._activeDate = this._adapter.addCalendarDays(this._activeDate, -1);
26104
+ break;
26105
+ case keycodes.RIGHT_ARROW:
26106
+ this._activeDate = this._adapter.addCalendarDays(this._activeDate, 1);
26107
+ break;
26108
+ case keycodes.UP_ARROW:
26109
+ this._activeDate = this._adapter.addCalendarDays(this._activeDate, -7);
26110
+ break;
26111
+ case keycodes.DOWN_ARROW:
26112
+ this._activeDate = this._adapter.addCalendarDays(this._activeDate, 7);
26113
+ break;
26114
+ case keycodes.HOME:
26115
+ this._activeDate = this._adapter.addCalendarDays(this._activeDate, 1 - this._adapter.getDate(this._activeDate));
26116
+ break;
26117
+ case keycodes.END:
26118
+ this._activeDate = this._adapter.addCalendarDays(this._activeDate, this._adapter.getNumDaysInMonth(this._activeDate) - this._adapter.getDate(this._activeDate));
26119
+ break;
26120
+ case keycodes.PAGE_UP:
26121
+ this._activeDate = event.altKey
26122
+ ? this._adapter.addCalendarYears(this._activeDate, -1)
26123
+ : this._adapter.addCalendarMonths(this._activeDate, -1);
26124
+ break;
26125
+ case keycodes.PAGE_DOWN:
26126
+ this._activeDate = event.altKey
26127
+ ? this._adapter.addCalendarYears(this._activeDate, 1)
26128
+ : this._adapter.addCalendarMonths(this._activeDate, 1);
26129
+ break;
26130
+ case keycodes.ENTER:
26131
+ if (this._dateFilterForViews(this._activeDate)) {
26132
+ this._dateSelected(this._activeDate);
26133
+ // Prevent unexpected default actions such as form submission.
26134
+ event.preventDefault();
26135
+ }
26136
+ return;
26137
+ default:
26138
+ // Don't prevent default or focus active cell on keys that we don't explicitly handle.
26139
+ return;
26140
+ }
26141
+ // Prevent unexpected default actions such as form submission.
26142
+ event.preventDefault();
26143
+ };
26144
+ /** Handles keydown events on the calendar body when calendar is in year view. */
26145
+ GIPIDatetimepickerCalendarComponent.prototype._handleCalendarBodyKeydownInYearView = function (event) {
26146
+ switch (event.keyCode) {
26147
+ case keycodes.LEFT_ARROW:
26148
+ this._activeDate = this._adapter.addCalendarMonths(this._activeDate, -1);
26149
+ break;
26150
+ case keycodes.RIGHT_ARROW:
26151
+ this._activeDate = this._adapter.addCalendarMonths(this._activeDate, 1);
26152
+ break;
26153
+ case keycodes.UP_ARROW:
26154
+ this._activeDate = this._prevMonthInSameCol(this._activeDate);
26155
+ break;
26156
+ case keycodes.DOWN_ARROW:
26157
+ this._activeDate = this._nextMonthInSameCol(this._activeDate);
26158
+ break;
26159
+ case keycodes.HOME:
26160
+ this._activeDate = this._adapter.addCalendarMonths(this._activeDate, -this._adapter.getMonth(this._activeDate));
26161
+ break;
26162
+ case keycodes.END:
26163
+ this._activeDate = this._adapter.addCalendarMonths(this._activeDate, 11 - this._adapter.getMonth(this._activeDate));
26164
+ break;
26165
+ case keycodes.PAGE_UP:
26166
+ this._activeDate = this._adapter.addCalendarYears(this._activeDate, event.altKey ? -10 : -1);
26167
+ break;
26168
+ case keycodes.PAGE_DOWN:
26169
+ this._activeDate = this._adapter.addCalendarYears(this._activeDate, event.altKey ? 10 : 1);
26170
+ break;
26171
+ case keycodes.ENTER:
26172
+ this._monthSelected(this._activeDate);
26173
+ break;
26174
+ default:
26175
+ // Don't prevent default or focus active cell on keys that we don't explicitly handle.
26176
+ return;
26177
+ }
26178
+ // Prevent unexpected default actions such as form submission.
26179
+ event.preventDefault();
26180
+ };
26181
+ /** Handles keydown events on the calendar body when calendar is in multi-year view. */
26182
+ GIPIDatetimepickerCalendarComponent.prototype._handleCalendarBodyKeydownInMultiYearView = function (event) {
26183
+ switch (event.keyCode) {
26184
+ case keycodes.LEFT_ARROW:
26185
+ this._activeDate = this._adapter.addCalendarYears(this._activeDate, -1);
26186
+ break;
26187
+ case keycodes.RIGHT_ARROW:
26188
+ this._activeDate = this._adapter.addCalendarYears(this._activeDate, 1);
26189
+ break;
26190
+ case keycodes.UP_ARROW:
26191
+ this._activeDate = this._adapter.addCalendarYears(this._activeDate, -yearsPerRow$1);
26192
+ break;
26193
+ case keycodes.DOWN_ARROW:
26194
+ this._activeDate = this._adapter.addCalendarYears(this._activeDate, yearsPerRow$1);
26195
+ break;
26196
+ case keycodes.HOME:
26197
+ this._activeDate = this._adapter.addCalendarYears(this._activeDate, -getActiveOffset$1(this._adapter, this._activeDate, this.minDate, this.maxDate));
26198
+ break;
26199
+ case keycodes.END:
26200
+ this._activeDate = this._adapter.addCalendarYears(this._activeDate, yearsPerPage$2 - getActiveOffset$1(this._adapter, this._activeDate, this.minDate, this.maxDate) - 1);
26201
+ break;
26202
+ case keycodes.PAGE_UP:
26203
+ this._activeDate = this._adapter.addCalendarYears(this._activeDate, event.altKey ? -yearsPerPage$2 * 10 : -yearsPerPage$2);
26204
+ break;
26205
+ case keycodes.PAGE_DOWN:
26206
+ this._activeDate = this._adapter.addCalendarYears(this._activeDate, event.altKey ? yearsPerPage$2 * 10 : yearsPerPage$2);
26207
+ break;
26208
+ case keycodes.ENTER:
26209
+ this._yearSelected(this._activeDate);
26210
+ break;
26211
+ default:
26212
+ // Don't prevent default or focus active cell on keys that we don't explicitly handle.
26213
+ return;
26214
+ }
26215
+ };
26216
+ /** Handles keydown events on the calendar body when calendar is in month view. */
26217
+ GIPIDatetimepickerCalendarComponent.prototype._handleCalendarBodyKeydownInClockView = function (event) {
26218
+ switch (event.keyCode) {
26219
+ case keycodes.UP_ARROW:
26220
+ this._activeDate = this._clockView === 'hour'
26221
+ ? this._adapter.addCalendarHours(this._activeDate, 1)
26222
+ : this._adapter.addCalendarMinutes(this._activeDate, 1);
26223
+ break;
26224
+ case keycodes.DOWN_ARROW:
26225
+ this._activeDate = this._clockView === 'hour'
26226
+ ? this._adapter.addCalendarHours(this._activeDate, -1)
26227
+ : this._adapter.addCalendarMinutes(this._activeDate, -1);
26228
+ break;
26229
+ case keycodes.ENTER:
26230
+ this._timeSelected(this._activeDate);
26231
+ return;
26232
+ default:
26233
+ // Don't prevent default or focus active cell on keys that we don't explicitly handle.
26234
+ return;
26235
+ }
26236
+ // Prevent unexpected default actions such as form submission.
26237
+ event.preventDefault();
26238
+ };
26239
+ /**
26240
+ * Determine the date for the month that comes before the given month in the same column in the
26241
+ * calendar table.
26242
+ */
26243
+ GIPIDatetimepickerCalendarComponent.prototype._prevMonthInSameCol = function (date) {
26244
+ // Determine how many months to jump forward given that there are 2 empty slots at the beginning of each year.
26245
+ var increment = this._adapter.getMonth(date) <= 4 ? -5 : this._adapter.getMonth(date) >= 7 ? -7 : -12;
26246
+ return this._adapter.addCalendarMonths(date, increment);
26247
+ };
26248
+ /**
26249
+ * Determine the date for the month that comes after the given month in the same column in the
26250
+ * calendar table.
26251
+ */
26252
+ GIPIDatetimepickerCalendarComponent.prototype._nextMonthInSameCol = function (date) {
26253
+ // Determine how many months to jump forward given that there are 2 empty slots at the beginning of each year.
26254
+ var increment = this._adapter.getMonth(date) <= 4 ? 7 : this._adapter.getMonth(date) >= 7 ? 5 : 12;
26255
+ return this._adapter.addCalendarMonths(date, increment);
26256
+ };
26257
+ GIPIDatetimepickerCalendarComponent.prototype.calendarState = function (direction) {
26258
+ this._calendarState = direction;
26259
+ };
26260
+ GIPIDatetimepickerCalendarComponent.prototype._2digit = function (n) {
26261
+ return ('00' + n).slice(-2);
26262
+ };
26263
+ GIPIDatetimepickerCalendarComponent.ctorParameters = function () { return [
26264
+ { type: core.ElementRef },
26265
+ { type: datepicker.MatDatepickerIntl },
26266
+ { type: core.NgZone },
26267
+ { type: GIPIDatetimeAdapter, decorators: [{ type: core.Optional }] },
26268
+ { type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [GIPI_DATETIME_FORMATS,] }] },
26269
+ { type: core.ChangeDetectorRef }
26270
+ ]; };
26271
+ __decorate([
26272
+ core.Input(),
26273
+ __metadata("design:type", Boolean)
26274
+ ], GIPIDatetimepickerCalendarComponent.prototype, "multiYearSelector", void 0);
26275
+ __decorate([
26276
+ core.Input(),
26277
+ __metadata("design:type", String)
26278
+ ], GIPIDatetimepickerCalendarComponent.prototype, "startView", void 0);
26279
+ __decorate([
26280
+ core.Input(),
26281
+ __metadata("design:type", Boolean)
26282
+ ], GIPIDatetimepickerCalendarComponent.prototype, "twelvehour", void 0);
26283
+ __decorate([
26284
+ core.Input(),
26285
+ __metadata("design:type", Number)
26286
+ ], GIPIDatetimepickerCalendarComponent.prototype, "timeInterval", void 0);
26287
+ __decorate([
26288
+ core.Input(),
26289
+ __metadata("design:type", Function)
26290
+ ], GIPIDatetimepickerCalendarComponent.prototype, "dateFilter", void 0);
26291
+ __decorate([
26292
+ core.Input(),
26293
+ __metadata("design:type", Object)
26294
+ ], GIPIDatetimepickerCalendarComponent.prototype, "ariaLabel", void 0);
26295
+ __decorate([
26296
+ core.Input(),
26297
+ __metadata("design:type", Object)
26298
+ ], GIPIDatetimepickerCalendarComponent.prototype, "ariaNextMonthLabel", void 0);
26299
+ __decorate([
26300
+ core.Input(),
26301
+ __metadata("design:type", Object)
26302
+ ], GIPIDatetimepickerCalendarComponent.prototype, "ariaPrevMonthLabel", void 0);
26303
+ __decorate([
26304
+ core.Input(),
26305
+ __metadata("design:type", Object)
26306
+ ], GIPIDatetimepickerCalendarComponent.prototype, "ariaNextYearLabel", void 0);
26307
+ __decorate([
26308
+ core.Input(),
26309
+ __metadata("design:type", Object)
26310
+ ], GIPIDatetimepickerCalendarComponent.prototype, "ariaPrevYearLabel", void 0);
26311
+ __decorate([
26312
+ core.Input(),
26313
+ __metadata("design:type", Object)
26314
+ ], GIPIDatetimepickerCalendarComponent.prototype, "ariaNextMultiYearLabel", void 0);
26315
+ __decorate([
26316
+ core.Input(),
26317
+ __metadata("design:type", Object)
26318
+ ], GIPIDatetimepickerCalendarComponent.prototype, "ariaPrevMultiYearLabel", void 0);
26319
+ __decorate([
26320
+ core.Input(),
26321
+ __metadata("design:type", Object)
26322
+ ], GIPIDatetimepickerCalendarComponent.prototype, "preventSameDateTimeSelection", void 0);
26323
+ __decorate([
26324
+ core.Input(),
26325
+ __metadata("design:type", String),
26326
+ __metadata("design:paramtypes", [String])
26327
+ ], GIPIDatetimepickerCalendarComponent.prototype, "type", null);
26328
+ __decorate([
26329
+ core.Input(),
26330
+ __metadata("design:type", Object),
26331
+ __metadata("design:paramtypes", [Object])
26332
+ ], GIPIDatetimepickerCalendarComponent.prototype, "startAt", null);
26333
+ __decorate([
26334
+ core.Input(),
26335
+ __metadata("design:type", Object),
26336
+ __metadata("design:paramtypes", [Object])
26337
+ ], GIPIDatetimepickerCalendarComponent.prototype, "selected", null);
26338
+ __decorate([
26339
+ core.Input(),
26340
+ __metadata("design:type", Object),
26341
+ __metadata("design:paramtypes", [Object])
26342
+ ], GIPIDatetimepickerCalendarComponent.prototype, "minDate", null);
26343
+ __decorate([
26344
+ core.Input(),
26345
+ __metadata("design:type", Object),
26346
+ __metadata("design:paramtypes", [Object])
26347
+ ], GIPIDatetimepickerCalendarComponent.prototype, "maxDate", null);
26348
+ __decorate([
26349
+ core.Output(),
26350
+ __metadata("design:type", core.EventEmitter)
26351
+ ], GIPIDatetimepickerCalendarComponent.prototype, "selectedChange", void 0);
26352
+ __decorate([
26353
+ core.Output(),
26354
+ __metadata("design:type", core.EventEmitter)
26355
+ ], GIPIDatetimepickerCalendarComponent.prototype, "viewChanged", void 0);
26356
+ __decorate([
26357
+ core.Output(),
26358
+ __metadata("design:type", Object)
26359
+ ], GIPIDatetimepickerCalendarComponent.prototype, "_userSelection", void 0);
26360
+ GIPIDatetimepickerCalendarComponent = __decorate([
26361
+ core.Component({
26362
+ selector: 'gipi-mat-datetime-picker-calendar',
26363
+ template: "<div class=\"gipi-mat-datetime-picker-calendar-header\">\n <div class=\"gipi-mat-datetime-picker-calendar-controls\">\n <div *ngIf=\"type !== 'time'\"\n role=\"button\"\n cdkAriaLive=\"polite\"\n class=\"gipi-mat-datetime-picker-calendar-period-button\"\n [class.active]=\"currentView === 'year' || currentView === 'multi-year'\"\n [attr.aria-label]=\"periodButtonLabel\"\n (click)=\"_yearClicked()\">\n {{ _yearLabel }}\n\n <div *ngIf=\"multiYearSelector || type === 'year'\"\n class=\"gipi-mat-datetime-picker-calendar-arrow\"\n [class.gipi-mat-datetime-picker-calendar-invert]=\"currentView != 'month'\">\n </div>\n </div>\n\n <div class=\"gipi-mat-datetime-picker-calendar-spacer\"> </div>\n\n <button mat-icon-button\n type=\"button\"\n class=\"gipi-mat-datetime-picker-calendar-previous-button\"\n [disabled]=\"!_previousEnabled()\"\n (click)=\"_previousClicked()\"\n [attr.aria-label]=\"prevButtonLabel\">\n </button>\n\n <button mat-icon-button\n type=\"button\"\n class=\"gipi-mat-datetime-picker-calendar-next-button\"\n [disabled]=\"!_nextEnabled()\"\n (click)=\"_nextClicked()\"\n [attr.aria-label]=\"nextButtonLabel\">\n </button>\n </div>\n\n <div class=\"gipi-mat-datetime-picker-calendar-header-date-time\">\n <span *ngIf=\"type !== 'time' && type !== 'year'\"\n role=\"button\"\n class=\"gipi-mat-datetime-picker-calendar-header-date\"\n [class.active]=\"currentView === 'month'\"\n [class.not-clickable]=\"type === 'month'\"\n (click)=\"_dateClicked()\">\n {{ _dateLabel }}\n </span>\n <span *ngIf=\"type.endsWith('time')\"\n class=\"gipi-mat-datetime-picker-calendar-header-time\"\n [class.active]=\"currentView === 'clock'\">\n <span role=\"button\"\n class=\"gipi-mat-datetime-picker-calendar-header-hours\"\n [class.active]=\"currentView === 'clock' && _clockView === 'hour'\"\n (click)=\"_hoursClicked()\">\n {{ _hoursLabel }}\n </span>\n :\n <span role=\"button\"\n class=\"gipi-mat-datetime-picker-calendar-header-minutes\"\n [class.active]=\"currentView === 'clock' && _clockView === 'minute'\"\n (click)=\"_minutesClicked()\">\n {{ _minutesLabel }}\n </span>\n <br />\n <span *ngIf=\"twelvehour\"\n class=\"gipi-mat-datetime-picker-calendar-header-ampm-container\">\n <span class=\"gipi-mat-datetime-picker-calendar-header-ampm\"\n [class.active]=\"currentView === 'clock' && _AMPM === 'AM'\"\n (click)=\"_ampmClicked('AM')\">\n AM\n </span>\n /\n <span class=\"gipi-mat-datetime-picker-calendar-header-ampm\"\n [class.active]=\"currentView === 'clock' && _AMPM === 'PM'\"\n (click)=\"_ampmClicked('PM')\">\n PM\n </span>\n </span>\n </span>\n </div>\n</div>\n\n<div [ngSwitch]=\"currentView\"\n class=\"gipi-mat-datetime-picker-calendar-content\">\n <!-- <div *ngIf=\"currentView === 'month' || currentView === 'year' || currentView === 'multi-year'\"\n class=\"mat-month-content\">\n <div class=\"gipi-mat-datetime-picker-calendar-controls\">\n <div (click)=\"_previousClicked()\"\n [attr.aria-disabled]=\"!_previousEnabled()\"\n [attr.aria-label]=\"_ariaLabelPrev\"\n [class.disabled]=\"!_previousEnabled()\"\n class=\"gipi-mat-datetime-picker-calendar-previous-button\"\n role=\"button\">\n <svg height=\"24\"\n viewBox=\"0 0 24 24\"\n width=\"24\">\n <path d=\"M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z\"></path>\n </svg>\n </div>\n <div (@slideCalendar.done)=\"_calendarStateDone()\"\n [@slideCalendar]=\"_calendarState\"\n class=\"gipi-mat-datetime-picker-calendar-period-button\">\n <strong>{{ _monthYearLabel }}</strong>\n </div>\n <div (click)=\"_nextClicked()\"\n [attr.aria-disabled]=\"!_nextEnabled()\"\n [attr.aria-label]=\"_ariaLabelNext\"\n [class.disabled]=\"!_nextEnabled()\"\n class=\"gipi-mat-datetime-picker-calendar-next-button\"\n role=\"button\">\n <svg height=\"24\"\n viewBox=\"0 0 24 24\"\n width=\"24\">\n <path d=\"M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z\"></path>\n </svg>\n </div>\n </div>\n </div> -->\n\n <gipi-mat-datetime-picker-month-view (_userSelection)=\"_userSelected()\"\n (selectedChange)=\"_dateSelected($event)\"\n *ngSwitchCase=\"'month'\"\n [activeDate]=\"_activeDate\"\n [dateFilter]=\"_dateFilterForViews\"\n [selected]=\"selected\"\n [type]=\"type\">\n </gipi-mat-datetime-picker-month-view>\n <gipi-mat-datetime-picker-year-view (_userSelection)=\"_userSelected()\"\n (selectedChange)=\"_monthSelected($event)\"\n *ngSwitchCase=\"'year'\"\n [activeDate]=\"_activeDate\"\n [dateFilter]=\"_dateFilterForViews\"\n [selected]=\"selected\"\n [type]=\"type\">\n </gipi-mat-datetime-picker-year-view>\n <gipi-mat-datetime-picker-multi-year-view (_userSelection)=\"_userSelected()\"\n (selectedChange)=\"_yearSelected($event)\"\n *ngSwitchCase=\"'multi-year'\"\n [activeDate]=\"_activeDate\"\n [dateFilter]=\"_dateFilterForViews\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [selected]=\"selected\"\n [type]=\"type\">\n </gipi-mat-datetime-picker-multi-year-view>\n <gipi-mat-datetime-picker-clock (_userSelection)=\"_userSelected()\"\n (activeDateChange)=\"_onActiveDateChange($event)\"\n (selectedChange)=\"_timeSelected($event)\"\n *ngSwitchDefault\n [dateFilter]=\"dateFilter\"\n [interval]=\"timeInterval\"\n [maxDate]=\"maxDate\"\n [minDate]=\"minDate\"\n [selected]=\"_activeDate\"\n [startView]=\"_clockView\"\n [twelvehour]=\"twelvehour\">\n </gipi-mat-datetime-picker-clock>\n</div>",
26364
+ animations: [slideCalendar],
26365
+ encapsulation: core.ViewEncapsulation.None,
26366
+ changeDetection: core.ChangeDetectionStrategy.OnPush,
26367
+ host: {
26368
+ '[class.gipi-mat-datetime-picker-calendar]': 'true',
26369
+ '[attr.aria-label]': 'ariaLabel',
26370
+ role: 'dialog',
26371
+ tabindex: '0',
26372
+ '(keydown)': '_handleCalendarBodyKeydown($event)',
26373
+ },
26374
+ styles: [".gipi-mat-datetime-picker-calendar{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:block;outline:0}.gipi-mat-datetime-picker-calendar[mode=landscape]{display:flex}.gipi-mat-datetime-picker-calendar-header{padding:8px 8px 0;font-size:14px;box-sizing:border-box}[mode=landscape] .gipi-mat-datetime-picker-calendar-header{width:150px;min-width:150px}.gipi-mat-datetime-picker-calendar-controls{display:flex;margin:5% calc(33% / 7 - 16px)}.gipi-mat-datetime-picker-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:.04}.gipi-mat-datetime-picker-calendar-spacer{flex:1 1 auto}.gipi-mat-datetime-picker-calendar-period-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:0;border:none;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:0;line-height:36px;padding:0 16px;border-radius:4px}.gipi-mat-datetime-picker-calendar-arrow{display:inline-block;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top-width:5px;border-top-style:solid;margin:0 0 0 5px;vertical-align:middle}.gipi-mat-datetime-picker-calendar-arrow.gipi-mat-datetime-picker-calendar-invert{transform:rotate(180deg)}[dir=rtl] .gipi-mat-datetime-picker-calendar-arrow{margin:0 5px 0 0}.gipi-mat-datetime-picker-calendar-next-button::after,.gipi-mat-datetime-picker-calendar-previous-button::after{top:0;left:0;right:0;bottom:0;position:absolute;content:'';margin:15.5px;border:0 solid currentColor;border-top-width:2px}[dir=rtl] .gipi-mat-datetime-picker-calendar-next-button,[dir=rtl] .gipi-mat-datetime-picker-calendar-previous-button{transform:rotate(180deg)}.gipi-mat-datetime-picker-calendar-previous-button::after{border-left-width:2px;transform:translateX(2px) rotate(-45deg)}.gipi-mat-datetime-picker-calendar-next-button::after{border-right-width:2px;transform:translateX(-2px) rotate(45deg)}.gipi-mat-datetime-picker-calendar-header-date-time{display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%;margin-top:6px;font-weight:500;white-space:nowrap}[mode=landscape] .gipi-mat-datetime-picker-calendar-header-date-time{white-space:normal;word-wrap:break-word;margin-top:0}.gipi-mat-datetime-picker-calendar-header-ampm-container{font-size:.77em}.gipi-mat-datetime-picker-calendar-header-date{display:flex;align-items:center;justify-content:center;border-radius:6px;padding-inline:1rem;font-size:14px;line-height:36px;font-weight:600;transition:.2s}.gipi-mat-datetime-picker-calendar-header-date:not(.active){cursor:pointer;opacity:.6}.gipi-mat-datetime-picker-calendar-header-date:not(.active):hover{background:#f5f5f6;opacity:1}.gipi-mat-datetime-picker-calendar-header-date.active{cursor:pointer;background-color:#f3e7e7;color:#e0313e;opacity:1}.gipi-mat-datetime-picker-calendar-header-date.active:hover{background-color:#e0313e;color:#f3e7e7}.gipi-mat-datetime-picker-calendar-header-date.not-clickable{cursor:initial}.gipi-mat-datetime-picker-calendar-header-ampm,.gipi-mat-datetime-picker-calendar-header-hours,.gipi-mat-datetime-picker-calendar-header-minutes{display:flex;align-items:center;justify-content:center;border-radius:6px;width:36px;height:36px;transition:.2s}.gipi-mat-datetime-picker-calendar-header-ampm:not(.active),.gipi-mat-datetime-picker-calendar-header-hours:not(.active),.gipi-mat-datetime-picker-calendar-header-minutes:not(.active){cursor:pointer;opacity:.6}.gipi-mat-datetime-picker-calendar-header-ampm:not(.active):hover,.gipi-mat-datetime-picker-calendar-header-hours:not(.active):hover,.gipi-mat-datetime-picker-calendar-header-minutes:not(.active):hover{background:#f5f5f6;opacity:1}.gipi-mat-datetime-picker-calendar-header-ampm.active,.gipi-mat-datetime-picker-calendar-header-hours.active,.gipi-mat-datetime-picker-calendar-header-minutes.active{cursor:pointer;background-color:#f3e7e7;color:#e0313e;opacity:1}.gipi-mat-datetime-picker-calendar-header-ampm.active:hover,.gipi-mat-datetime-picker-calendar-header-hours.active:hover,.gipi-mat-datetime-picker-calendar-header-minutes.active:hover{background-color:#e0313e;color:#f3e7e7}.gipi-mat-datetime-picker-calendar-header-ampm.not-clickable,.gipi-mat-datetime-picker-calendar-header-hours.not-clickable,.gipi-mat-datetime-picker-calendar-header-minutes.not-clickable{cursor:initial}.gipi-mat-datetime-picker-calendar-header-time{display:flex;align-items:center;justify-content:center;gap:1px;font-size:24px;line-height:36px;padding-left:8px}.gipi-mat-datetime-picker-calendar-header-time:not(.active){opacity:.6}[mode=landscape] .gipi-mat-datetime-picker-calendar-header-time{display:block;padding-left:0}.gipi-mat-datetime-picker-calendar-content{width:100%;padding:0 8px 8px;outline:0;box-sizing:border-box;overflow:hidden}[mode=landscape] .gipi-mat-datetime-picker-calendar-content{padding-top:8px}.gipi-mat-datetime-picker-calendar-controls{display:flex;justify-content:space-between}.gipi-mat-datetime-picker-calendar-next-button,.gipi-mat-datetime-picker-calendar-previous-button{position:relative;display:inline-block;width:48px;height:48px;padding:12px;outline:0;border:0;cursor:pointer;background:0 0;box-sizing:border-box}.gipi-mat-datetime-picker-calendar-next-button.disabled,.gipi-mat-datetime-picker-calendar-previous-button.disabled{color:rgba(0,0,0,.38);pointer-events:none}.gipi-mat-datetime-picker-calendar-next-button svg,.gipi-mat-datetime-picker-calendar-previous-button svg{fill:currentColor;vertical-align:top}.gipi-mat-datetime-picker-calendar-table{border-spacing:0;border-collapse:collapse;width:100%}.gipi-mat-datetime-picker-calendar-table-header{color:rgba(0,0,0,.38)}.gipi-mat-datetime-picker-calendar-table-header th{text-align:center;font-size:11px;padding:0 0 8px}.gipi-mat-datetime-picker-calendar-table-header-divider{position:relative;height:1px}.gipi-mat-datetime-picker-calendar-table-header-divider::after{content:'';position:absolute;top:0;left:-8px;right:-8px;height:1px}@media (min-width:480px){.gipi-mat-datetime-picker-calendar[mode=auto]{display:flex}.gipi-mat-datetime-picker-calendar[mode=auto] .gipi-mat-datetime-picker-calendar-header{width:150px;min-width:150px}.gipi-mat-datetime-picker-calendar[mode=auto] .gipi-mat-datetime-picker-calendar-header-date-time{white-space:normal;word-wrap:break-word}.gipi-mat-datetime-picker-calendar[mode=auto] .gipi-mat-datetime-picker-calendar-header-time{display:block;padding-left:0}.gipi-mat-datetime-picker-calendar[mode=auto] .gipi-mat-datetime-picker-calendar-content{padding-top:8px}}"]
26375
+ }),
26376
+ __param(3, core.Optional()),
26377
+ __param(4, core.Optional()), __param(4, core.Inject(GIPI_DATETIME_FORMATS)),
26378
+ __metadata("design:paramtypes", [core.ElementRef,
26379
+ datepicker.MatDatepickerIntl,
26380
+ core.NgZone,
26381
+ GIPIDatetimeAdapter, Object, core.ChangeDetectorRef])
26382
+ ], GIPIDatetimepickerCalendarComponent);
26383
+ return GIPIDatetimepickerCalendarComponent;
26384
+ }());
26385
+
26386
+ /** Used to generate a unique ID for each datepicker instance. */
26387
+ var datetimepickerUid = 0;
26388
+ /**
26389
+ * Component used as the content for the datepicker dialog and popup. We use this instead of using
26390
+ * MatCalendar directly as the content so we can control the initial focus. This also gives us a
26391
+ * place to put additional features of the popup that are not part of the calendar itself in the
26392
+ * future. (e.g. confirmation buttons).
26393
+ * @docs-private
26394
+ */
26395
+ var GIPIDatetimepickerContentComponent = /** @class */ (function () {
26396
+ function GIPIDatetimepickerContentComponent() {
26397
+ }
26398
+ GIPIDatetimepickerContentComponent.prototype.ngAfterContentInit = function () {
26399
+ this._calendar._focusActiveCell();
26400
+ };
26401
+ GIPIDatetimepickerContentComponent.prototype.onSelectionChange = function (date) {
26402
+ this.datetimepicker._select(date);
26403
+ this.datetimepicker.close();
26404
+ };
26405
+ /**
26406
+ * Handles keydown event on datepicker content.
26407
+ * @param event The event.
26408
+ */
26409
+ GIPIDatetimepickerContentComponent.prototype._handleKeydown = function (event) {
26410
+ if (event.keyCode === keycodes.ESCAPE) {
26411
+ this.datetimepicker.close();
26412
+ event.preventDefault();
26413
+ event.stopPropagation();
26414
+ }
26415
+ };
26416
+ __decorate([
26417
+ core.ViewChild(GIPIDatetimepickerCalendarComponent, { static: true }),
26418
+ __metadata("design:type", GIPIDatetimepickerCalendarComponent)
26419
+ ], GIPIDatetimepickerContentComponent.prototype, "_calendar", void 0);
26420
+ GIPIDatetimepickerContentComponent = __decorate([
26421
+ core.Component({
26422
+ selector: 'gipi-mat-datetime-picker-content',
26423
+ template: "<gipi-mat-datetime-picker-calendar cdkTrapFocus\n class=\"mat-typography\"\n [id]=\"datetimepicker.id\"\n [attr.mode]=\"datetimepicker.mode\"\n [ariaNextMonthLabel]=\"datetimepicker.ariaNextMonthLabel\"\n [ariaNextYearLabel]=\"datetimepicker.ariaNextYearLabel\"\n [ariaPrevMonthLabel]=\"datetimepicker.ariaPrevMonthLabel\"\n [ariaPrevYearLabel]=\"datetimepicker.ariaPrevYearLabel\"\n [preventSameDateTimeSelection]=\"datetimepicker.preventSameDateTimeSelection\"\n [dateFilter]=\"datetimepicker._dateFilter\"\n [maxDate]=\"datetimepicker._maxDate\"\n [minDate]=\"datetimepicker._minDate\"\n [multiYearSelector]=\"datetimepicker.multiYearSelector\"\n [selected]=\"datetimepicker._selected\"\n [startAt]=\"datetimepicker.startAt\"\n [startView]=\"datetimepicker.startView\"\n [timeInterval]=\"datetimepicker.timeInterval\"\n [twelvehour]=\"datetimepicker.twelvehour\"\n [type]=\"datetimepicker.type\"\n (_userSelection)=\"datetimepicker.close()\"\n (selectedChange)=\"onSelectionChange($event)\"\n (viewChanged)=\"datetimepicker._viewChanged($event)\">\n</gipi-mat-datetime-picker-calendar>",
26424
+ encapsulation: core.ViewEncapsulation.None,
26425
+ changeDetection: core.ChangeDetectionStrategy.OnPush,
26426
+ host: {
26427
+ class: 'gipi-mat-datetime-picker-content',
26428
+ '[class.gipi-mat-datetime-picker-content-touch]': 'datetimepicker?.touchUi',
26429
+ '(keydown)': '_handleKeydown($event)',
26430
+ },
26431
+ styles: ["@use '@angular/material' as mat;.gipi-mat-datetime-picker-content{display:block;background-color:#fff;border-radius:4px!important;overflow:hidden;box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.gipi-mat-datetime-picker-calendar{width:296px;height:405px}.gipi-mat-datetime-picker-calendar[mode=landscape]{width:446px;height:328px}@media (min-width:480px){.gipi-mat-datetime-picker-calendar[mode=auto]{width:446px;height:328px}}.gipi-mat-datetime-picker-content-touch{display:block;box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.cdk-global-overlay-wrapper,.cdk-overlay-container{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.48}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.6)}.gipi-mat-datetime-picker-dialog .mat-dialog-container{padding:0}"]
26432
+ })
26433
+ ], GIPIDatetimepickerContentComponent);
26434
+ return GIPIDatetimepickerContentComponent;
26435
+ }());
26436
+ var GIPIDatetimepickerComponent = /** @class */ (function () {
26437
+ function GIPIDatetimepickerComponent(_dialog, _overlay, _ngZone, _viewContainerRef, _scrollStrategy, _dateAdapter, _dir, _document) {
26438
+ this._dialog = _dialog;
26439
+ this._overlay = _overlay;
26440
+ this._ngZone = _ngZone;
26441
+ this._viewContainerRef = _viewContainerRef;
26442
+ this._scrollStrategy = _scrollStrategy;
26443
+ this._dateAdapter = _dateAdapter;
26444
+ this._dir = _dir;
26445
+ this._document = _document;
26446
+ /** Whether the calendar is open. */
26447
+ this.opened = false;
26448
+ /** The id for the datepicker calendar. */
26449
+ this.id = "gipi-mat-datetime-picker-" + datetimepickerUid++;
26450
+ /** Emits when the datepicker is disabled. */
26451
+ this._disabledChange = new rxjs.Subject();
26452
+ this._validSelected = null;
26453
+ /** The element that was focused before the datepicker was opened. */
26454
+ this._focusedElementBeforeOpen = null;
26455
+ this._inputSubscription = rxjs.Subscription.EMPTY;
26456
+ /** Active multi year view when click on year. */
26457
+ this.multiYearSelector = false;
26458
+ /** if true change the clock to 12 hour format. */
26459
+ this.twelvehour = false;
26460
+ /** The view that the calendar should start in. */
26461
+ this.startView = 'month';
26462
+ this.mode = 'auto';
26463
+ this.timeInterval = 1;
26464
+ this.ariaNextMonthLabel = 'Next month';
26465
+ this.ariaPrevMonthLabel = 'Previous month';
26466
+ this.ariaNextYearLabel = 'Next year';
26467
+ this.ariaPrevYearLabel = 'Previous year';
26468
+ /** Prevent user to select same date time */
26469
+ this.preventSameDateTimeSelection = false;
26470
+ this._type = 'date';
26471
+ /** Whether the calendar UI is in touch mode. In touch mode the calendar opens in a dialog rather than a popup and elements have more padding to allow for bigger touch targets. */
26472
+ this._touchUi = false;
26473
+ /** Emits when the datepicker has been opened. */
26474
+ this.openedStream = new core.EventEmitter();
26475
+ /** Emits when the datepicker has been closed. */
26476
+ this.closedStream = new core.EventEmitter();
26477
+ /** Emits when the view has been changed. **/
26478
+ this.viewChanged = new core.EventEmitter();
26479
+ /**
26480
+ * Emits new selected date when selected date changes.
26481
+ * @deprecated Switch to the `dateChange` and `dateInput` binding on the input element.
26482
+ */
26483
+ this.selectedChanged = new core.EventEmitter();
26484
+ if (!this._dateAdapter) {
26485
+ throw createMissingDateImplError$1('DateAdapter');
26486
+ }
26487
+ }
26488
+ Object.defineProperty(GIPIDatetimepickerComponent.prototype, "startAt", {
26489
+ get: function () {
26490
+ // If an explicit startAt is set we start there, otherwise we start at whatever the currently selected value is.
26491
+ return (this._startAt || (this._datepickerInput ? this._datepickerInput.value : null));
26492
+ },
26493
+ set: function (date) {
26494
+ this._startAt = this._dateAdapter.getValidDateOrNull(date);
26495
+ },
26496
+ enumerable: false,
26497
+ configurable: true
26498
+ });
26499
+ Object.defineProperty(GIPIDatetimepickerComponent.prototype, "openOnFocus", {
26500
+ get: function () {
26501
+ return this._openOnFocus;
26502
+ },
26503
+ set: function (value) {
26504
+ this._openOnFocus = coercion.coerceBooleanProperty(value);
26505
+ },
26506
+ enumerable: false,
26507
+ configurable: true
26508
+ });
26509
+ Object.defineProperty(GIPIDatetimepickerComponent.prototype, "type", {
26510
+ get: function () {
26511
+ return this._type;
26512
+ },
26513
+ set: function (value) {
26514
+ this._type = value || 'date';
26515
+ },
26516
+ enumerable: false,
26517
+ configurable: true
26518
+ });
26519
+ Object.defineProperty(GIPIDatetimepickerComponent.prototype, "touchUi", {
26520
+ get: function () {
26521
+ return this._touchUi;
26522
+ },
26523
+ set: function (value) {
26524
+ this._touchUi = coercion.coerceBooleanProperty(value);
26525
+ },
26526
+ enumerable: false,
26527
+ configurable: true
26528
+ });
26529
+ Object.defineProperty(GIPIDatetimepickerComponent.prototype, "disabled", {
26530
+ get: function () {
26531
+ return this._disabled === undefined && this._datepickerInput
26532
+ ? this._datepickerInput.disabled
26533
+ : !!this._disabled;
26534
+ },
26535
+ set: function (value) {
26536
+ var newValue = coercion.coerceBooleanProperty(value);
26537
+ if (newValue !== this._disabled) {
26538
+ this._disabled = newValue;
26539
+ this._disabledChange.next(newValue);
26540
+ }
26541
+ },
26542
+ enumerable: false,
26543
+ configurable: true
26544
+ });
26545
+ Object.defineProperty(GIPIDatetimepickerComponent.prototype, "_selected", {
26546
+ /** The currently selected date. */
26547
+ get: function () {
26548
+ return this._validSelected;
26549
+ },
26550
+ set: function (value) {
26551
+ this._validSelected = value;
26552
+ },
26553
+ enumerable: false,
26554
+ configurable: true
26555
+ });
26556
+ Object.defineProperty(GIPIDatetimepickerComponent.prototype, "_minDate", {
26557
+ /** The minimum selectable date. */
26558
+ get: function () {
26559
+ return this._datepickerInput && this._datepickerInput.min;
26560
+ },
26561
+ enumerable: false,
26562
+ configurable: true
26563
+ });
26564
+ Object.defineProperty(GIPIDatetimepickerComponent.prototype, "_maxDate", {
26565
+ /** The maximum selectable date. */
26566
+ get: function () {
26567
+ return this._datepickerInput && this._datepickerInput.max;
26568
+ },
26569
+ enumerable: false,
26570
+ configurable: true
26571
+ });
26572
+ Object.defineProperty(GIPIDatetimepickerComponent.prototype, "_dateFilter", {
26573
+ get: function () {
26574
+ return this._datepickerInput && this._datepickerInput._dateFilter;
26575
+ },
26576
+ enumerable: false,
26577
+ configurable: true
26578
+ });
26579
+ GIPIDatetimepickerComponent.prototype._handleFocus = function () {
26580
+ if (!this.opened && this.openOnFocus) {
26581
+ this.open();
26582
+ }
26583
+ };
26584
+ GIPIDatetimepickerComponent.prototype._viewChanged = function (type) {
26585
+ this.viewChanged.emit(type);
26586
+ };
26587
+ GIPIDatetimepickerComponent.prototype.ngOnDestroy = function () {
26588
+ this.close();
26589
+ this._inputSubscription.unsubscribe();
26590
+ this._disabledChange.complete();
26591
+ if (this._popupRef) {
26592
+ this._popupRef.dispose();
26593
+ }
26594
+ };
26595
+ /** Selects the given date */
26596
+ GIPIDatetimepickerComponent.prototype._select = function (date) {
26597
+ var oldValue = this._selected;
26598
+ this._selected = date;
26599
+ if (!this._dateAdapter.sameDatetime(oldValue, this._selected)) {
26600
+ this.selectedChanged.emit(date);
26601
+ }
26602
+ };
26603
+ /**
26604
+ * Register an input with this datepicker.
26605
+ * @param input The datepicker input to register with this datepicker.
26606
+ */
26607
+ GIPIDatetimepickerComponent.prototype._registerInput = function (input) {
26608
+ var _this = this;
26609
+ if (this._datepickerInput) {
26610
+ throw Error('A MatDatepicker can only be associated with a single input.');
26611
+ }
26612
+ this._datepickerInput = input;
26613
+ this._inputSubscription = this._datepickerInput._valueChange.subscribe(function (value) { return (_this._selected = value); });
26614
+ };
26615
+ /** Open the calendar. */
26616
+ GIPIDatetimepickerComponent.prototype.open = function () {
26617
+ if (this.opened || this.disabled) {
26618
+ return;
26619
+ }
26620
+ if (!this._datepickerInput) {
26621
+ throw Error('Attempted to open an MatDatepicker with no associated input.');
26622
+ }
26623
+ if (this._document) {
26624
+ this._focusedElementBeforeOpen = this._document.activeElement;
26625
+ }
26626
+ this.touchUi ? this._openAsDialog() : this._openAsPopup();
26627
+ this.opened = true;
26628
+ this.openedStream.emit();
26629
+ };
26630
+ /** Close the calendar. */
26631
+ GIPIDatetimepickerComponent.prototype.close = function () {
26632
+ var _this = this;
26633
+ if (!this.opened) {
26634
+ return;
26635
+ }
26636
+ if (this._popupRef && this._popupRef.hasAttached()) {
26637
+ this._popupRef.detach();
26638
+ }
26639
+ if (this._dialogRef) {
26640
+ this._dialogRef.close();
26641
+ this._dialogRef = null;
26642
+ }
26643
+ if (this._calendarPortal && this._calendarPortal.isAttached) {
26644
+ this._calendarPortal.detach();
26645
+ }
26646
+ var completeClose = function () {
26647
+ // The `_opened` could've been reset already if
26648
+ // we got two events in quick succession.
26649
+ if (_this.opened) {
26650
+ _this.opened = false;
26651
+ _this.closedStream.emit();
26652
+ _this._focusedElementBeforeOpen = null;
26653
+ }
26654
+ };
26655
+ if (this._focusedElementBeforeOpen && typeof this._focusedElementBeforeOpen.focus === 'function') {
26656
+ // Because IE moves focus asynchronously, we can't count on it being restored before we've
26657
+ // marked the datepicker as closed. If the event fires out of sequence and the element that
26658
+ // we're refocusing opens the datepicker on focus, the user could be stuck with not being
26659
+ // able to close the calendar at all. We work around it by making the logic, that marks
26660
+ // the datepicker as closed, async as well.
26661
+ this._focusedElementBeforeOpen.focus();
26662
+ setTimeout(completeClose);
26663
+ }
26664
+ else {
26665
+ completeClose();
26666
+ }
26667
+ };
26668
+ /** Open the calendar as a dialog. */
26669
+ GIPIDatetimepickerComponent.prototype._openAsDialog = function () {
26670
+ var _this = this;
26671
+ this._dialogRef = this._dialog.open(GIPIDatetimepickerContentComponent, {
26672
+ direction: this._dir ? this._dir.value : 'ltr',
26673
+ viewContainerRef: this._viewContainerRef,
26674
+ panelClass: 'gipi-mat-datetime-picker-dialog',
26675
+ });
26676
+ this._dialogRef.afterClosed().subscribe(function () { return _this.close(); });
26677
+ this._dialogRef.componentInstance.datetimepicker = this;
26678
+ };
26679
+ /** Open the calendar as a popup. */
26680
+ GIPIDatetimepickerComponent.prototype._openAsPopup = function () {
26681
+ var _this = this;
26682
+ if (!this._calendarPortal) {
26683
+ this._calendarPortal = new portal.ComponentPortal(GIPIDatetimepickerContentComponent, this._viewContainerRef);
26684
+ }
26685
+ if (!this._popupRef) {
26686
+ this._createPopup();
26687
+ }
26688
+ if (!this._popupRef.hasAttached()) {
26689
+ var componentRef = this._popupRef.attach(this._calendarPortal);
26690
+ componentRef.instance.datetimepicker = this;
26691
+ // Update the position once the calendar has rendered.
26692
+ this._ngZone.onStable
26693
+ .asObservable()
26694
+ .pipe(operators.first())
26695
+ .subscribe(function () { return _this._popupRef.updatePosition(); });
26696
+ }
26697
+ this._popupRef.backdropClick().subscribe(function () { return _this.close(); });
26698
+ };
26699
+ /** Create the popup. */
26700
+ GIPIDatetimepickerComponent.prototype._createPopup = function () {
26701
+ var overlayConfig = new overlay.OverlayConfig({
26702
+ positionStrategy: this._createPopupPositionStrategy(),
26703
+ hasBackdrop: true,
26704
+ backdropClass: 'mat-overlay-transparent-backdrop',
26705
+ direction: this._dir ? this._dir.value : 'ltr',
26706
+ scrollStrategy: this._scrollStrategy(),
26707
+ panelClass: 'gipi-mat-datetime-picker-popup',
26708
+ });
26709
+ this._popupRef = this._overlay.create(overlayConfig);
26710
+ };
26711
+ /** Create the popup PositionStrategy. */
26712
+ GIPIDatetimepickerComponent.prototype._createPopupPositionStrategy = function () {
26713
+ return this._overlay
26714
+ .position()
26715
+ .flexibleConnectedTo(this._datepickerInput.getConnectedOverlayOrigin())
26716
+ .withTransformOriginOn('.gipi-mat-datetime-picker-content')
26717
+ .withFlexibleDimensions(false)
26718
+ .withViewportMargin(8)
26719
+ .withLockedPosition()
26720
+ .withPositions([
26721
+ {
26722
+ originX: 'start',
26723
+ originY: 'bottom',
26724
+ overlayX: 'start',
26725
+ overlayY: 'top',
26726
+ },
26727
+ {
26728
+ originX: 'start',
26729
+ originY: 'top',
26730
+ overlayX: 'start',
26731
+ overlayY: 'bottom',
26732
+ },
26733
+ {
26734
+ originX: 'end',
26735
+ originY: 'bottom',
26736
+ overlayX: 'end',
26737
+ overlayY: 'top',
26738
+ },
26739
+ {
26740
+ originX: 'end',
26741
+ originY: 'top',
26742
+ overlayX: 'end',
26743
+ overlayY: 'bottom',
26744
+ },
26745
+ ]);
26746
+ };
26747
+ GIPIDatetimepickerComponent.ctorParameters = function () { return [
26748
+ { type: dialog.MatDialog },
26749
+ { type: overlay.Overlay },
26750
+ { type: core.NgZone },
26751
+ { type: core.ViewContainerRef },
26752
+ { type: undefined, decorators: [{ type: core.Inject, args: [datepicker.MAT_DATEPICKER_SCROLL_STRATEGY,] }] },
26753
+ { type: GIPIDatetimeAdapter, decorators: [{ type: core.Optional }] },
26754
+ { type: bidi.Directionality, decorators: [{ type: core.Optional }] },
26755
+ { type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [common.DOCUMENT,] }] }
26756
+ ]; };
26757
+ __decorate([
26758
+ core.Input(),
26759
+ __metadata("design:type", Boolean)
26760
+ ], GIPIDatetimepickerComponent.prototype, "multiYearSelector", void 0);
26761
+ __decorate([
26762
+ core.Input(),
26763
+ __metadata("design:type", Boolean)
26764
+ ], GIPIDatetimepickerComponent.prototype, "twelvehour", void 0);
26765
+ __decorate([
26766
+ core.Input(),
26767
+ __metadata("design:type", String)
26768
+ ], GIPIDatetimepickerComponent.prototype, "startView", void 0);
26769
+ __decorate([
26770
+ core.Input(),
26771
+ __metadata("design:type", String)
26772
+ ], GIPIDatetimepickerComponent.prototype, "mode", void 0);
26773
+ __decorate([
26774
+ core.Input(),
26775
+ __metadata("design:type", Number)
26776
+ ], GIPIDatetimepickerComponent.prototype, "timeInterval", void 0);
26777
+ __decorate([
26778
+ core.Input(),
26779
+ __metadata("design:type", Object)
26780
+ ], GIPIDatetimepickerComponent.prototype, "ariaNextMonthLabel", void 0);
26781
+ __decorate([
26782
+ core.Input(),
26783
+ __metadata("design:type", Object)
26784
+ ], GIPIDatetimepickerComponent.prototype, "ariaPrevMonthLabel", void 0);
26785
+ __decorate([
26786
+ core.Input(),
26787
+ __metadata("design:type", Object)
26788
+ ], GIPIDatetimepickerComponent.prototype, "ariaNextYearLabel", void 0);
26789
+ __decorate([
26790
+ core.Input(),
26791
+ __metadata("design:type", Object)
26792
+ ], GIPIDatetimepickerComponent.prototype, "ariaPrevYearLabel", void 0);
26793
+ __decorate([
26794
+ core.Input(),
26795
+ __metadata("design:type", Object)
26796
+ ], GIPIDatetimepickerComponent.prototype, "preventSameDateTimeSelection", void 0);
26797
+ __decorate([
26798
+ core.Input(),
26799
+ __metadata("design:type", Object)
26800
+ ], GIPIDatetimepickerComponent.prototype, "panelClass", void 0);
26801
+ __decorate([
26802
+ core.Input(),
26803
+ __metadata("design:type", Object),
26804
+ __metadata("design:paramtypes", [Object])
26805
+ ], GIPIDatetimepickerComponent.prototype, "startAt", null);
26806
+ __decorate([
26807
+ core.Input(),
26808
+ __metadata("design:type", Boolean),
26809
+ __metadata("design:paramtypes", [Boolean])
26810
+ ], GIPIDatetimepickerComponent.prototype, "openOnFocus", null);
26811
+ __decorate([
26812
+ core.Input(),
26813
+ __metadata("design:type", String),
26814
+ __metadata("design:paramtypes", [String])
26815
+ ], GIPIDatetimepickerComponent.prototype, "type", null);
26816
+ __decorate([
26817
+ core.Input(),
26818
+ __metadata("design:type", Boolean),
26819
+ __metadata("design:paramtypes", [Boolean])
26820
+ ], GIPIDatetimepickerComponent.prototype, "touchUi", null);
26821
+ __decorate([
26822
+ core.Input(),
26823
+ __metadata("design:type", Boolean),
26824
+ __metadata("design:paramtypes", [Boolean])
26825
+ ], GIPIDatetimepickerComponent.prototype, "disabled", null);
26826
+ __decorate([
26827
+ core.Output('opened'),
26828
+ __metadata("design:type", core.EventEmitter)
26829
+ ], GIPIDatetimepickerComponent.prototype, "openedStream", void 0);
26830
+ __decorate([
26831
+ core.Output('closed'),
26832
+ __metadata("design:type", core.EventEmitter)
26833
+ ], GIPIDatetimepickerComponent.prototype, "closedStream", void 0);
26834
+ __decorate([
26835
+ core.Output(),
26836
+ __metadata("design:type", core.EventEmitter)
26837
+ ], GIPIDatetimepickerComponent.prototype, "viewChanged", void 0);
26838
+ __decorate([
26839
+ core.Output(),
26840
+ __metadata("design:type", Object)
26841
+ ], GIPIDatetimepickerComponent.prototype, "selectedChanged", void 0);
26842
+ GIPIDatetimepickerComponent = __decorate([
26843
+ core.Component({
26844
+ selector: 'gipi-mat-datetime-picker',
26845
+ exportAs: 'gipiDatetimePicker',
26846
+ template: '',
26847
+ changeDetection: core.ChangeDetectionStrategy.OnPush,
26848
+ encapsulation: core.ViewEncapsulation.None,
26849
+ preserveWhitespaces: false
26850
+ }),
26851
+ __param(4, core.Inject(datepicker.MAT_DATEPICKER_SCROLL_STRATEGY)),
26852
+ __param(5, core.Optional()),
26853
+ __param(6, core.Optional()),
26854
+ __param(7, core.Optional()), __param(7, core.Inject(common.DOCUMENT)),
26855
+ __metadata("design:paramtypes", [dialog.MatDialog,
26856
+ overlay.Overlay,
26857
+ core.NgZone,
26858
+ core.ViewContainerRef, Object, GIPIDatetimeAdapter,
26859
+ bidi.Directionality, Object])
26860
+ ], GIPIDatetimepickerComponent);
26861
+ return GIPIDatetimepickerComponent;
26862
+ }());
26863
+
26864
+ var GIPIDatetimepickerToggleComponent = /** @class */ (function () {
26865
+ function GIPIDatetimepickerToggleComponent(_intl, _changeDetectorRef) {
26866
+ this._intl = _intl;
26867
+ this._changeDetectorRef = _changeDetectorRef;
26868
+ this._stateChanges = rxjs.Subscription.EMPTY;
26869
+ }
26870
+ Object.defineProperty(GIPIDatetimepickerToggleComponent.prototype, "disabled", {
26871
+ /** Whether the toggle button is disabled. */
26872
+ get: function () {
26873
+ return this._disabled === undefined
26874
+ ? this.datetimepicker.disabled
26875
+ : !!this._disabled;
26876
+ },
26877
+ set: function (value) {
26878
+ this._disabled = coercion.coerceBooleanProperty(value);
26879
+ },
26880
+ enumerable: false,
26881
+ configurable: true
26882
+ });
26883
+ GIPIDatetimepickerToggleComponent.prototype.ngOnChanges = function (changes) {
26884
+ if (changes.datepicker) {
26885
+ this._watchStateChanges();
26886
+ }
26887
+ };
26888
+ GIPIDatetimepickerToggleComponent.prototype.ngOnDestroy = function () {
26889
+ this._stateChanges.unsubscribe();
26890
+ };
26891
+ GIPIDatetimepickerToggleComponent.prototype.ngAfterContentInit = function () {
26892
+ this._watchStateChanges();
26893
+ };
26894
+ GIPIDatetimepickerToggleComponent.prototype._open = function (event) {
26895
+ if (this.datetimepicker && !this.disabled) {
26896
+ this.datetimepicker.open();
26897
+ event.stopPropagation();
26898
+ }
26899
+ };
26900
+ GIPIDatetimepickerToggleComponent.prototype._watchStateChanges = function () {
26901
+ var _this = this;
26902
+ var datepickerDisabled = this.datetimepicker
26903
+ ? this.datetimepicker._disabledChange
26904
+ : rxjs.of([], rxjs.asyncScheduler);
26905
+ var inputDisabled = this.datetimepicker && this.datetimepicker._datepickerInput
26906
+ ? this.datetimepicker._datepickerInput._disabledChange
26907
+ : rxjs.of([], rxjs.asyncScheduler);
26908
+ this._stateChanges.unsubscribe();
26909
+ this._stateChanges = rxjs.merge(this._intl.changes, datepickerDisabled, inputDisabled).subscribe(function () { return _this._changeDetectorRef.markForCheck(); });
26910
+ };
26911
+ GIPIDatetimepickerToggleComponent.ctorParameters = function () { return [
26912
+ { type: datepicker.MatDatepickerIntl },
26913
+ { type: core.ChangeDetectorRef }
26914
+ ]; };
26915
+ __decorate([
26916
+ core.Input('for'),
26917
+ __metadata("design:type", GIPIDatetimepickerComponent)
26918
+ ], GIPIDatetimepickerToggleComponent.prototype, "datetimepicker", void 0);
26919
+ __decorate([
26920
+ core.Input(),
26921
+ __metadata("design:type", Boolean),
26922
+ __metadata("design:paramtypes", [Boolean])
26923
+ ], GIPIDatetimepickerToggleComponent.prototype, "disabled", null);
26924
+ GIPIDatetimepickerToggleComponent = __decorate([
26925
+ core.Component({
26926
+ selector: 'gipi-mat-datetime-picker-toggle',
26927
+ exportAs: 'gipiDatetimePickerToggle',
26928
+ template: "<button [attr.aria-label]=\"_intl.openCalendarLabel\"\n [disabled]=\"disabled\"\n mat-icon-button\n type=\"button\">\n <mat-icon [ngSwitch]=\"datetimepicker.type\">\n <svg *ngSwitchCase=\"'time'\"\n fill=\"currentColor\"\n focusable=\"false\"\n height=\"100%\"\n style=\"vertical-align: top\"\n viewBox=\"0 0 24 24\"\n width=\"100%\">\n <path\n d=\"M12,20A8,8 0 0,0 20,12A8,8 0 0,0 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20M12,2A10,10 0 0,1 22,12A10,10 0 0,1 12,22C6.47,22 2,17.5 2,12A10,10 0 0,1 12,2M12.5,7V12.25L17,14.92L16.25,16.15L11,13V7H12.5Z\">\n </path>\n </svg>\n <svg *ngSwitchCase=\"'datetime'\"\n fill=\"currentColor\"\n focusable=\"false\"\n height=\"100%\"\n style=\"vertical-align: top\"\n viewBox=\"0 0 24 24\"\n width=\"100%\">\n <path\n d=\"M15,13H16.5V15.82L18.94,17.23L18.19,18.53L15,16.69V13M19,8H5V19H9.67C9.24,18.09 9,17.07 9,16A7,7 0 0,1 16,9C17.07,9 18.09,9.24 19,9.67V8M5,21C3.89,21 3,20.1 3,19V5C3,3.89 3.89,3 5,3H6V1H8V3H16V1H18V3H19A2,2 0 0,1 21,5V11.1C22.24,12.36 23,14.09 23,16A7,7 0 0,1 16,23C14.09,23 12.36,22.24 11.1,21H5M16,11.15A4.85,4.85 0 0,0 11.15,16C11.15,18.68 13.32,20.85 16,20.85A4.85,4.85 0 0,0 20.85,16C20.85,13.32 18.68,11.15 16,11.15Z\">\n </path>\n </svg>\n <svg *ngSwitchDefault\n fill=\"currentColor\"\n focusable=\"false\"\n height=\"100%\"\n style=\"vertical-align: top\"\n viewBox=\"0 0 24 24\"\n width=\"100%\">\n <path d=\"M0 0h24v24H0z\"\n fill=\"none\" />\n <path\n d=\"M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z\" />\n </svg>\n </mat-icon>\n</button>",
26929
+ encapsulation: core.ViewEncapsulation.None,
26930
+ changeDetection: core.ChangeDetectionStrategy.OnPush,
26931
+ preserveWhitespaces: false,
26932
+ host: {
26933
+ class: 'gipi-mat-datetime-picker-toggle',
26934
+ // Bind the `click` on the host, rather than the inner `button`, so that we can call `stopPropagation`
26935
+ // on it without affecting the user's `click` handlers. We need to stop it so that the input doesn't
26936
+ // get focused automatically by the form field (See https://github.com/angular/components/pull/21856).
26937
+ '(click)': '_open($event)',
26938
+ }
26939
+ }),
26940
+ __metadata("design:paramtypes", [datepicker.MatDatepickerIntl,
26941
+ core.ChangeDetectorRef])
26942
+ ], GIPIDatetimepickerToggleComponent);
26943
+ return GIPIDatetimepickerToggleComponent;
26944
+ }());
26945
+
26946
+ var nextUniqueId$q = 0;
26947
+ var GIPIDateAndTimePickerComponent = /** @class */ (function () {
26948
+ function GIPIDateAndTimePickerComponent(elementRef, _changeDetectorRef) {
26949
+ this.elementRef = elementRef;
26950
+ this._changeDetectorRef = _changeDetectorRef;
26951
+ this._name = "gipi-mat-datetime-picker-" + nextUniqueId$q++;
26952
+ this.id = this._name;
26953
+ this.name = this._name;
26954
+ this.label = '';
26955
+ this.placeholder = '';
26956
+ this.timeInterval = 1;
26957
+ this.help = '';
26958
+ this._required = false;
26959
+ this._disabled = false;
26960
+ this._type = 'datetime';
26961
+ this.onChange = function () { };
26962
+ this.onTouched = function () { };
26963
+ }
26964
+ GIPIDateAndTimePickerComponent_1 = GIPIDateAndTimePickerComponent;
26965
+ Object.defineProperty(GIPIDateAndTimePickerComponent.prototype, "required", {
26966
+ get: function () {
26967
+ return this._required;
26968
+ },
26969
+ set: function (value) {
26970
+ this._required = coercion.coerceBooleanProperty(value);
26971
+ },
26972
+ enumerable: false,
26973
+ configurable: true
26974
+ });
26975
+ Object.defineProperty(GIPIDateAndTimePickerComponent.prototype, "disabled", {
26976
+ get: function () {
26977
+ return this._disabled;
26978
+ },
26979
+ set: function (value) {
26980
+ this._disabled = coercion.coerceBooleanProperty(value);
26981
+ },
26982
+ enumerable: false,
26983
+ configurable: true
26984
+ });
26985
+ Object.defineProperty(GIPIDateAndTimePickerComponent.prototype, "value", {
26986
+ get: function () {
26987
+ return this._value;
26988
+ },
26989
+ set: function (value) {
26990
+ if (value instanceof Date) {
26991
+ this._value = value;
26992
+ }
26993
+ else {
26994
+ this._value = new Date(value);
26995
+ }
26996
+ this.onChange(this._value);
26997
+ this.onTouched(this._value);
26998
+ },
26999
+ enumerable: false,
27000
+ configurable: true
27001
+ });
27002
+ Object.defineProperty(GIPIDateAndTimePickerComponent.prototype, "type", {
27003
+ get: function () {
27004
+ return this._type;
27005
+ },
27006
+ set: function (value) {
27007
+ this._type = value || 'datetime';
27008
+ },
27009
+ enumerable: false,
27010
+ configurable: true
27011
+ });
27012
+ GIPIDateAndTimePickerComponent.prototype.ngOnInit = function () { };
27013
+ GIPIDateAndTimePickerComponent.prototype.writeValue = function (value) {
27014
+ this._value = value;
27015
+ };
27016
+ GIPIDateAndTimePickerComponent.prototype.registerOnChange = function (fn) {
27017
+ this.onChange = fn;
27018
+ };
27019
+ GIPIDateAndTimePickerComponent.prototype.registerOnTouched = function (fn) {
27020
+ this.onTouched = fn;
27021
+ };
27022
+ GIPIDateAndTimePickerComponent.prototype.setDisabledState = function (isDisabled) {
27023
+ this.disabled = isDisabled;
27024
+ this._changeDetectorRef.markForCheck();
27025
+ };
27026
+ GIPIDateAndTimePickerComponent.prototype.toggleDatetimePicker = function (event) {
27027
+ if (!ObjectUtil.isNull(this.GIPIDatetimepickerToggleRef)) {
27028
+ this.GIPIDatetimepickerToggleRef._open(event);
27029
+ }
27030
+ };
27031
+ var GIPIDateAndTimePickerComponent_1;
27032
+ GIPIDateAndTimePickerComponent.ctorParameters = function () { return [
27033
+ { type: core.ElementRef },
27034
+ { type: core.ChangeDetectorRef }
27035
+ ]; };
27036
+ __decorate([
27037
+ core.ViewChild('dateTimePickerToggle', { static: true }),
27038
+ __metadata("design:type", GIPIDatetimepickerToggleComponent)
27039
+ ], GIPIDateAndTimePickerComponent.prototype, "GIPIDatetimepickerToggleRef", void 0);
27040
+ __decorate([
27041
+ core.Input(),
27042
+ __metadata("design:type", String)
27043
+ ], GIPIDateAndTimePickerComponent.prototype, "id", void 0);
27044
+ __decorate([
27045
+ core.Input(),
27046
+ __metadata("design:type", String)
27047
+ ], GIPIDateAndTimePickerComponent.prototype, "name", void 0);
27048
+ __decorate([
27049
+ core.Input(),
27050
+ __metadata("design:type", String)
27051
+ ], GIPIDateAndTimePickerComponent.prototype, "label", void 0);
27052
+ __decorate([
27053
+ core.Input(),
27054
+ __metadata("design:type", String)
27055
+ ], GIPIDateAndTimePickerComponent.prototype, "placeholder", void 0);
27056
+ __decorate([
27057
+ core.Input('min'),
27058
+ __metadata("design:type", Date)
27059
+ ], GIPIDateAndTimePickerComponent.prototype, "minDate", void 0);
27060
+ __decorate([
27061
+ core.Input('max'),
27062
+ __metadata("design:type", Date)
27063
+ ], GIPIDateAndTimePickerComponent.prototype, "maxDate", void 0);
27064
+ __decorate([
27065
+ core.Input(),
27066
+ __metadata("design:type", Number)
27067
+ ], GIPIDateAndTimePickerComponent.prototype, "timeInterval", void 0);
27068
+ __decorate([
27069
+ core.Input(),
27070
+ __metadata("design:type", String)
27071
+ ], GIPIDateAndTimePickerComponent.prototype, "help", void 0);
27072
+ __decorate([
27073
+ core.Input(),
27074
+ __metadata("design:type", Boolean),
27075
+ __metadata("design:paramtypes", [Boolean])
27076
+ ], GIPIDateAndTimePickerComponent.prototype, "required", null);
27077
+ __decorate([
27078
+ core.Input(),
27079
+ __metadata("design:type", Boolean),
27080
+ __metadata("design:paramtypes", [Boolean])
27081
+ ], GIPIDateAndTimePickerComponent.prototype, "disabled", null);
27082
+ __decorate([
27083
+ core.Input(),
27084
+ __metadata("design:type", Object),
27085
+ __metadata("design:paramtypes", [Object])
27086
+ ], GIPIDateAndTimePickerComponent.prototype, "value", null);
27087
+ __decorate([
27088
+ core.Input(),
27089
+ __metadata("design:type", String),
27090
+ __metadata("design:paramtypes", [String])
27091
+ ], GIPIDateAndTimePickerComponent.prototype, "type", null);
27092
+ GIPIDateAndTimePickerComponent = GIPIDateAndTimePickerComponent_1 = __decorate([
27093
+ core.Component({
27094
+ selector: 'gipi-datetime-picker',
27095
+ exportAs: 'gipiDatetimePicker',
27096
+ template: "<div class=\"datetime-wrapper\">\n\n <label *ngIf=\"label\"\n class=\"datetime-label\"\n [attr.for]=\"id\">\n {{ label }}\n <span *ngIf=\"required\"> * </span>\n </label>\n\n <div class=\"datetime-content\">\n\n <input inputRef\n class=\"datetime-element\"\n [attr.id]=\"id\"\n [attr.name]=\"name\"\n [placeholder]=\"placeholder\"\n [min]=\"minDate\"\n [max]=\"maxDate\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [readOnly]=\"true\"\n [autocomplete]=\"'off'\"\n [(ngModel)]=\"value\"\n [value]=\"value\"\n [gipiMatDatetimePicker]=\"datetimePicker\"\n (click)=\"toggleDatetimePicker($event)\" />\n\n <div class=\"suffix\">\n <gipi-mat-datetime-picker-toggle #dateTimePickerToggle\n [for]=\"datetimePicker\">\n </gipi-mat-datetime-picker-toggle>\n </div>\n\n <gipi-mat-datetime-picker #datetimePicker\n [openOnFocus]=\"false\"\n [mode]=\"'portrait'\"\n [multiYearSelector]=\"true\"\n [disabled]=\"disabled\"\n [timeInterval]=\"timeInterval\"\n [type]=\"type\">\n </gipi-mat-datetime-picker>\n </div>\n\n <small *ngIf=\"help\"\n class=\"datetime-help\">\n {{ help }}\n </small>\n</div>",
27097
+ providers: [
27098
+ {
27099
+ provide: forms.NG_VALUE_ACCESSOR,
27100
+ useExisting: core.forwardRef(function () { return GIPIDateAndTimePickerComponent_1; }),
27101
+ multi: true
27102
+ },
27103
+ ],
27104
+ host: {
27105
+ 'class': 'gipi-mat-datetime-picker',
27106
+ },
27107
+ styles: [":host{display:block;width:100%;min-width:0;max-width:100%;flex:1}.datetime-wrapper{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}.datetime-wrapper .datetime-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}.datetime-wrapper .datetime-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}.datetime-wrapper .datetime-content{display:flex;font-family:inherit;font-size:inherit;color:inherit;height:4rem;background:#fff;border:1px solid #0000001f;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:6px;cursor:pointer}.datetime-wrapper .datetime-content .datetime-element{padding:.75rem .8rem;border:none;outline:0;background-color:transparent;flex:1;color:inherit;caret-color:#696969;min-width:0;cursor:pointer}.datetime-wrapper .datetime-content:not(.datetime-element:disabled):has(.datetime-element:enabled:hover),.datetime-wrapper .datetime-content:not(.datetime-element:disabled):has(.suffix:hover){border-color:#6d6f73}.datetime-wrapper .datetime-content:not(.datetime-element:disabled):has(.datetime-element:enabled:focus){outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}.datetime-wrapper .datetime-content:has(.datetime-element:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}.datetime-wrapper .datetime-content .datetime-element:disabled{cursor:not-allowed}.datetime-wrapper .datetime-content .suffix{display:flex;align-items:center;justify-content:center;padding-block:.75rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding-right:.8rem}.datetime-wrapper .datetime-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}::ng-deep .gipi-mat-datetime-picker-toggle{width:2rem!important;height:2rem!important;line-height:2rem!important}::ng-deep .gipi-mat-datetime-picker-toggle>button{width:2rem!important;height:2rem!important;line-height:2rem!important}::ng-deep .gipi-mat-datetime-picker-toggle>button .mat-button-wrapper>mat-icon{width:2rem!important;height:2rem!important;font-size:2rem!important;line-height:2rem!important;color:#696969!important}::ng-deep .gipi-mat-datetime-picker-toggle>button .mat-button-focus-overlay,::ng-deep .gipi-mat-datetime-picker-toggle>button .mat-button-ripple{display:none!important}::ng-deep .gipi-mat-datetime-picker-content{border-radius:6px!important}::ng-deep .gipi-mat-datetime-picker-calendar-header{border-top-left-radius:6px!important;border-top-right-radius:6px!important}::ng-deep .gipi-mat-datetime-picker-calendar-body-active>.gipi-mat-datetime-picker-calendar-body-cell-content:not(.gipi-mat-datetime-picker-calendar-body-selected){background-color:#f3e7e7!important;color:#e0313e!important}::ng-deep .gipi-mat-datetime-picker-calendar-body-cell .gipi-mat-datetime-picker-calendar-body-today{border-color:#e0313e!important}::ng-deep .gipi-mat-datetime-picker-calendar-body-cell .gipi-mat-datetime-picker-calendar-body-today.gipi-mat-datetime-picker-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff!important}::ng-deep .gipi-mat-datetime-picker-calendar-body-cell .gipi-mat-datetime-picker-calendar-body-selected{background-color:#e0313e!important;color:#fff!important}::ng-deep .gipi-mat-datetime-picker-clock{background-color:#f5f5f6!important}::ng-deep .gipi-mat-datetime-picker-clock-center,::ng-deep .gipi-mat-datetime-picker-clock-hand,::ng-deep .gipi-mat-datetime-picker-clock-hand::before{background-color:#e0313e!important}::ng-deep .gipi-mat-datetime-picker-clock-cell.gipi-mat-datetime-picker-clock-cell-selected{color:#fff!important;background-color:#e0313e!important}::-webkit-input-placeholder{color:#bbbdc1}:-moz-placeholder{color:#bbbdc1}::-moz-placeholder{color:#bbbdc1}:-ms-input-placeholder{color:#bbbdc1}"]
27108
+ }),
27109
+ __metadata("design:paramtypes", [core.ElementRef,
27110
+ core.ChangeDetectorRef])
27111
+ ], GIPIDateAndTimePickerComponent);
27112
+ return GIPIDateAndTimePickerComponent;
27113
+ }());
27114
+
27115
+ var CLOCK_RADIUS = 50;
27116
+ var CLOCK_INNER_RADIUS = 27.5;
27117
+ var CLOCK_OUTER_RADIUS = 41.25;
27118
+ var CLOCK_TICK_RADIUS = 7.0833;
27119
+ /**
27120
+ * A clock that is used as part of the datepicker.
27121
+ * @docs-private
27122
+ */
27123
+ var GIPIDatetimepickerClockComponent = /** @class */ (function () {
27124
+ function GIPIDatetimepickerClockComponent(_element, _adapter) {
27125
+ var _this = this;
27126
+ this._element = _element;
27127
+ this._adapter = _adapter;
27128
+ /** Hours and Minutes representing the clock view. */
27129
+ this._hours = [];
27130
+ this._minutes = [];
27131
+ /** Whether the clock is in hour view. */
27132
+ this._hourView = true;
27133
+ this._timeChanged = false;
27134
+ this.interval = 1;
27135
+ this.twelvehour = false;
27136
+ /** Emits when the currently selected date changes. */
27137
+ this.selectedChange = new core.EventEmitter();
27138
+ this.activeDateChange = new core.EventEmitter();
27139
+ this._userSelection = new core.EventEmitter();
27140
+ this.mouseMoveListener = function (event) { return _this._handleMousemove(event); };
27141
+ this.mouseUpListener = function () { return _this._handleMouseup(); };
27142
+ }
27143
+ Object.defineProperty(GIPIDatetimepickerClockComponent.prototype, "activeDate", {
27144
+ get: function () {
27145
+ return this._activeDate;
27146
+ },
27147
+ set: function (value) {
27148
+ var oldActiveDate = this._activeDate;
27149
+ this._activeDate = this._adapter.clampDate(value, this.minDate, this.maxDate);
27150
+ if (!this._adapter.sameMinute(oldActiveDate, this._activeDate)) {
27151
+ this._init();
27152
+ }
27153
+ },
27154
+ enumerable: false,
27155
+ configurable: true
27156
+ });
27157
+ Object.defineProperty(GIPIDatetimepickerClockComponent.prototype, "selected", {
27158
+ get: function () {
27159
+ return this._selected;
27160
+ },
27161
+ set: function (value) {
27162
+ this._selected = this._adapter.getValidDateOrNull(this._adapter.deserialize(value));
27163
+ if (this._selected) {
27164
+ this.activeDate = this._selected;
27165
+ }
27166
+ },
27167
+ enumerable: false,
27168
+ configurable: true
27169
+ });
27170
+ Object.defineProperty(GIPIDatetimepickerClockComponent.prototype, "minDate", {
27171
+ get: function () {
27172
+ return this._minDate;
27173
+ },
27174
+ set: function (value) {
27175
+ this._minDate = this._adapter.getValidDateOrNull(this._adapter.deserialize(value));
27176
+ },
27177
+ enumerable: false,
27178
+ configurable: true
27179
+ });
27180
+ Object.defineProperty(GIPIDatetimepickerClockComponent.prototype, "maxDate", {
27181
+ get: function () {
27182
+ return this._maxDate;
27183
+ },
27184
+ set: function (value) {
27185
+ this._maxDate = this._adapter.getValidDateOrNull(this._adapter.deserialize(value));
27186
+ },
27187
+ enumerable: false,
27188
+ configurable: true
27189
+ });
27190
+ Object.defineProperty(GIPIDatetimepickerClockComponent.prototype, "startView", {
27191
+ /** Whether the clock should be started in hour or minute view. */
27192
+ set: function (value) {
27193
+ this._hourView = value != 'minute';
27194
+ },
27195
+ enumerable: false,
27196
+ configurable: true
27197
+ });
27198
+ Object.defineProperty(GIPIDatetimepickerClockComponent.prototype, "_hand", {
27199
+ get: function () {
27200
+ var hour = this._adapter.getHour(this.activeDate);
27201
+ if (!!this.twelvehour) {
27202
+ if (hour === 0) {
27203
+ hour = 24;
27204
+ }
27205
+ this._selectedHour = hour > 12 ? hour - 12 : hour;
27206
+ }
27207
+ else {
27208
+ this._selectedHour = hour;
27209
+ }
27210
+ this._selectedMinute = this._adapter.getMinute(this.activeDate);
27211
+ var deg = 0;
27212
+ var radius = CLOCK_OUTER_RADIUS;
27213
+ if (this._hourView) {
27214
+ var outer = this._selectedHour > 0 && this._selectedHour < 13;
27215
+ radius = outer ? CLOCK_OUTER_RADIUS : CLOCK_INNER_RADIUS;
27216
+ if (this.twelvehour) {
27217
+ radius = CLOCK_OUTER_RADIUS;
27218
+ }
27219
+ deg = Math.round(this._selectedHour * (360 / (24 / 2)));
27220
+ }
27221
+ else {
27222
+ deg = Math.round(this._selectedMinute * (360 / 60));
27223
+ }
27224
+ return {
27225
+ transform: "rotate(" + deg + "deg)",
27226
+ height: radius + "%",
27227
+ 'margin-top': 50 - radius + "%",
27228
+ };
27229
+ },
27230
+ enumerable: false,
27231
+ configurable: true
27232
+ });
27233
+ GIPIDatetimepickerClockComponent.prototype.ngAfterContentInit = function () {
27234
+ this.activeDate = this._activeDate || this._adapter.today();
27235
+ this._init();
27236
+ };
27237
+ /** Handles mousedown events on the clock body. */
27238
+ GIPIDatetimepickerClockComponent.prototype._handleMousedown = function (event) {
27239
+ this._timeChanged = false;
27240
+ this.setTime(event);
27241
+ document.addEventListener('mousemove', this.mouseMoveListener);
27242
+ document.addEventListener('touchmove', this.mouseMoveListener);
27243
+ document.addEventListener('mouseup', this.mouseUpListener);
27244
+ document.addEventListener('touchend', this.mouseUpListener);
27245
+ };
27246
+ GIPIDatetimepickerClockComponent.prototype._handleMousemove = function (event) {
27247
+ event.preventDefault();
27248
+ this.setTime(event);
27249
+ };
27250
+ GIPIDatetimepickerClockComponent.prototype._handleMouseup = function () {
27251
+ document.removeEventListener('mousemove', this.mouseMoveListener);
27252
+ document.removeEventListener('touchmove', this.mouseMoveListener);
27253
+ document.removeEventListener('mouseup', this.mouseUpListener);
27254
+ document.removeEventListener('touchend', this.mouseUpListener);
27255
+ if (this._timeChanged) {
27256
+ this.selectedChange.emit(this.activeDate);
27257
+ if (!this._hourView) {
27258
+ this._userSelection.emit();
27259
+ }
27260
+ }
27261
+ };
27262
+ /** Initializes this clock view. */
27263
+ GIPIDatetimepickerClockComponent.prototype._init = function () {
27264
+ this._hours.length = 0;
27265
+ this._minutes.length = 0;
27266
+ var hourNames = this._adapter.getHourNames();
27267
+ var minuteNames = this._adapter.getMinuteNames();
27268
+ if (this.twelvehour) {
27269
+ for (var i = 1; i < hourNames.length / 2 + 1; i++) {
27270
+ var radian = (i / 6) * Math.PI;
27271
+ var radius = CLOCK_OUTER_RADIUS;
27272
+ var date = this._adapter.createDatetime(this._adapter.getYear(this.activeDate), this._adapter.getMonth(this.activeDate), this._adapter.getDate(this.activeDate), i + 1, 0);
27273
+ var enabled = (!this.minDate || this._adapter.compareDatetime(date, this.minDate) >= 0) &&
27274
+ (!this.maxDate || this._adapter.compareDatetime(date, this.maxDate) <= 0);
27275
+ this._hours.push({
27276
+ value: i,
27277
+ displayValue: i === 0 ? '00' : hourNames[i],
27278
+ enabled: enabled,
27279
+ top: CLOCK_RADIUS - Math.cos(radian) * radius - CLOCK_TICK_RADIUS,
27280
+ left: CLOCK_RADIUS + Math.sin(radian) * radius - CLOCK_TICK_RADIUS,
27281
+ });
27282
+ }
27283
+ }
27284
+ else {
27285
+ for (var i = 0; i < hourNames.length; i++) {
27286
+ var radian = (i / 6) * Math.PI;
27287
+ var outer = i > 0 && i < 13, radius = outer ? CLOCK_OUTER_RADIUS : CLOCK_INNER_RADIUS;
27288
+ var date = this._adapter.createDatetime(this._adapter.getYear(this.activeDate), this._adapter.getMonth(this.activeDate), this._adapter.getDate(this.activeDate), i, 0);
27289
+ var enabled = (!this.minDate || this._adapter.compareDatetime(date, this.minDate, false) >= 0) &&
27290
+ (!this.maxDate || this._adapter.compareDatetime(date, this.maxDate, false) <= 0) &&
27291
+ (!this.dateFilter || this.dateFilter(date, exports.GIPIDatetimepickerFilterType.HOUR));
27292
+ this._hours.push({
27293
+ value: i,
27294
+ displayValue: i === 0 ? '00' : hourNames[i],
27295
+ enabled: enabled,
27296
+ top: CLOCK_RADIUS - Math.cos(radian) * radius - CLOCK_TICK_RADIUS,
27297
+ left: CLOCK_RADIUS + Math.sin(radian) * radius - CLOCK_TICK_RADIUS,
27298
+ fontSize: i > 0 && i < 13 ? '' : '80%',
27299
+ });
27300
+ }
27301
+ }
27302
+ for (var i = 0; i < minuteNames.length; i += 5) {
27303
+ var radian = (i / 30) * Math.PI;
27304
+ var date = this._adapter.createDatetime(this._adapter.getYear(this.activeDate), this._adapter.getMonth(this.activeDate), this._adapter.getDate(this.activeDate), this._adapter.getHour(this.activeDate), i);
27305
+ var enabled = (!this.minDate || this._adapter.compareDatetime(date, this.minDate) >= 0) &&
27306
+ (!this.maxDate || this._adapter.compareDatetime(date, this.maxDate) <= 0) &&
27307
+ (!this.dateFilter || this.dateFilter(date, exports.GIPIDatetimepickerFilterType.MINUTE));
27308
+ this._minutes.push({
27309
+ value: i,
27310
+ displayValue: i === 0 ? '00' : minuteNames[i],
27311
+ enabled: enabled,
27312
+ top: CLOCK_RADIUS - Math.cos(radian) * CLOCK_OUTER_RADIUS - CLOCK_TICK_RADIUS,
27313
+ left: CLOCK_RADIUS + Math.sin(radian) * CLOCK_OUTER_RADIUS - CLOCK_TICK_RADIUS,
27314
+ });
27315
+ }
27316
+ };
27317
+ /**
27318
+ * Set Time
27319
+ * @param event
27320
+ */
27321
+ GIPIDatetimepickerClockComponent.prototype.setTime = function (event) {
27322
+ var _a, _b;
27323
+ var trigger = this._element.nativeElement;
27324
+ var triggerRect = trigger.getBoundingClientRect();
27325
+ var width = trigger.offsetWidth;
27326
+ var height = trigger.offsetHeight;
27327
+ var pageX = event.pageX !== undefined ? event.pageX : event.touches[0].pageX;
27328
+ var pageY = event.pageY !== undefined ? event.pageY : event.touches[0].pageY;
27329
+ var x = width / 2 - (pageX - triggerRect.left - window.pageXOffset);
27330
+ var y = height / 2 - (pageY - triggerRect.top - window.pageYOffset);
27331
+ var radian = Math.atan2(-x, y);
27332
+ var unit = Math.PI / (this._hourView ? 6 : this.interval ? 30 / this.interval : 30);
27333
+ var z = Math.sqrt(x * x + y * y);
27334
+ var outer = this._hourView && z > (width * (CLOCK_OUTER_RADIUS / 100) + width * (CLOCK_INNER_RADIUS / 100)) / 2;
27335
+ if (radian < 0) {
27336
+ radian = Math.PI * 2 + radian;
27337
+ }
27338
+ var value = Math.round(radian / unit);
27339
+ var date;
27340
+ if (this._hourView) {
27341
+ if (this.twelvehour) {
27342
+ value = value === 0 ? 12 : value;
27343
+ }
27344
+ else {
27345
+ if (value === 12) {
27346
+ value = 0;
27347
+ }
27348
+ value = outer ? value === 0 ? 12 : value : value === 0 ? 0 : value + 12;
27349
+ }
27350
+ // Don't close the hours view if an invalid hour is clicked.
27351
+ if (!((_a = this._hours.find(function (h) { return (h === null || h === void 0 ? void 0 : h['value']) === value; })) === null || _a === void 0 ? void 0 : _a['enabled'])) {
27352
+ return;
27353
+ }
27354
+ date = this._adapter.createDatetime(this._adapter.getYear(this.activeDate), this._adapter.getMonth(this.activeDate), this._adapter.getDate(this.activeDate), value, this._adapter.getMinute(this.activeDate));
27355
+ }
27356
+ else {
27357
+ if (this.interval) {
27358
+ value *= this.interval;
27359
+ }
27360
+ if (value === 60) {
27361
+ value = 0;
27362
+ }
27363
+ // Don't close the minutes view if an invalid minute is clicked.
27364
+ if (!((_b = this._minutes.find(function (m) { return (m === null || m === void 0 ? void 0 : m['value']) === value; })) === null || _b === void 0 ? void 0 : _b['enabled'])) {
27365
+ return;
27366
+ }
27367
+ date = this._adapter.createDatetime(this._adapter.getYear(this.activeDate), this._adapter.getMonth(this.activeDate), this._adapter.getDate(this.activeDate), this._adapter.getHour(this.activeDate), value);
27368
+ }
27369
+ this._timeChanged = true;
27370
+ this.activeDate = date;
27371
+ this.activeDateChange.emit(this.activeDate);
27372
+ };
27373
+ GIPIDatetimepickerClockComponent.ctorParameters = function () { return [
27374
+ { type: core.ElementRef },
27375
+ { type: GIPIDatetimeAdapter }
27376
+ ]; };
27377
+ __decorate([
27378
+ core.Input(),
27379
+ __metadata("design:type", Function)
27380
+ ], GIPIDatetimepickerClockComponent.prototype, "dateFilter", void 0);
27381
+ __decorate([
27382
+ core.Input(),
27383
+ __metadata("design:type", Number)
27384
+ ], GIPIDatetimepickerClockComponent.prototype, "interval", void 0);
27385
+ __decorate([
27386
+ core.Input(),
27387
+ __metadata("design:type", Boolean)
27388
+ ], GIPIDatetimepickerClockComponent.prototype, "twelvehour", void 0);
27389
+ __decorate([
27390
+ core.Input(),
27391
+ __metadata("design:type", Object),
27392
+ __metadata("design:paramtypes", [Object])
27393
+ ], GIPIDatetimepickerClockComponent.prototype, "activeDate", null);
27394
+ __decorate([
27395
+ core.Input(),
27396
+ __metadata("design:type", Object),
27397
+ __metadata("design:paramtypes", [Object])
27398
+ ], GIPIDatetimepickerClockComponent.prototype, "selected", null);
27399
+ __decorate([
27400
+ core.Input(),
27401
+ __metadata("design:type", Object),
27402
+ __metadata("design:paramtypes", [Object])
27403
+ ], GIPIDatetimepickerClockComponent.prototype, "minDate", null);
27404
+ __decorate([
27405
+ core.Input(),
27406
+ __metadata("design:type", Object),
27407
+ __metadata("design:paramtypes", [Object])
27408
+ ], GIPIDatetimepickerClockComponent.prototype, "maxDate", null);
27409
+ __decorate([
27410
+ core.Input(),
27411
+ __metadata("design:type", String),
27412
+ __metadata("design:paramtypes", [String])
27413
+ ], GIPIDatetimepickerClockComponent.prototype, "startView", null);
27414
+ __decorate([
27415
+ core.Output(),
27416
+ __metadata("design:type", Object)
27417
+ ], GIPIDatetimepickerClockComponent.prototype, "selectedChange", void 0);
27418
+ __decorate([
27419
+ core.Output(),
27420
+ __metadata("design:type", Object)
27421
+ ], GIPIDatetimepickerClockComponent.prototype, "activeDateChange", void 0);
27422
+ __decorate([
27423
+ core.Output(),
27424
+ __metadata("design:type", Object)
27425
+ ], GIPIDatetimepickerClockComponent.prototype, "_userSelection", void 0);
27426
+ GIPIDatetimepickerClockComponent = __decorate([
27427
+ core.Component({
27428
+ selector: 'gipi-mat-datetime-picker-clock',
27429
+ template: "<div class=\"gipi-mat-datetime-picker-clock\">\n <div class=\"gipi-mat-datetime-picker-clock-center\"></div>\n <div [ngStyle]=\"_hand\"\n class=\"gipi-mat-datetime-picker-clock-hand\"></div>\n <div [class.active]=\"_hourView\"\n class=\"gipi-mat-datetime-picker-clock-hours\">\n <div *ngFor=\"let item of _hours\"\n [class.gipi-mat-datetime-picker-clock-cell-disabled]=\"!item.enabled\"\n [class.gipi-mat-datetime-picker-clock-cell-selected]=\"_selectedHour === item.value\"\n [style.fontSize]=\"item.fontSize\"\n [style.left]=\"item.left + '%'\"\n [style.top]=\"item.top + '%'\"\n class=\"gipi-mat-datetime-picker-clock-cell\">\n {{ item.displayValue }}\n </div>\n </div>\n <div [class.active]=\"!_hourView\"\n class=\"gipi-mat-datetime-picker-clock-minutes\">\n <div *ngFor=\"let item of _minutes\"\n [class.gipi-mat-datetime-picker-clock-cell-disabled]=\"!item.enabled\"\n [class.gipi-mat-datetime-picker-clock-cell-selected]=\"_selectedMinute === item.value\"\n [style.left]=\"item.left + '%'\"\n [style.top]=\"item.top + '%'\"\n class=\"gipi-mat-datetime-picker-clock-cell\">\n {{ item.displayValue }}\n </div>\n </div>\n</div>",
27430
+ host: {
27431
+ role: 'clock',
27432
+ '(mousedown)': '_handleMousedown($event)',
27433
+ },
27434
+ styles: [":host{position:relative;display:block;min-width:224px;margin:8px;font-size:14px;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.gipi-mat-datetime-picker-clock{position:relative;width:100%;height:0;padding-top:100%;background-color:#e0e0e0;border-radius:50%}.gipi-mat-datetime-picker-clock-center{position:absolute;top:50%;left:50%;width:2%;height:2%;margin:-1%;border-radius:50%}.gipi-mat-datetime-picker-clock-hand{position:absolute;top:0;right:0;bottom:0;left:0;width:1px;margin:0 auto;transform-origin:bottom}.gipi-mat-datetime-picker-clock-hand::before{content:'';position:absolute;top:-4px;left:-4px;width:8px;height:8px;border-radius:50%}.gipi-mat-datetime-picker-clock-hours,.gipi-mat-datetime-picker-clock-minutes{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;visibility:hidden;transition:350ms;transform:scale(1.2)}.gipi-mat-datetime-picker-clock-hours.active,.gipi-mat-datetime-picker-clock-minutes.active{opacity:1;visibility:visible;transform:scale(1)}.gipi-mat-datetime-picker-clock-minutes{transform:scale(.8)}.gipi-mat-datetime-picker-clock-cell{position:absolute;display:flex;width:14.1666%;height:14.1666%;color:rgba(0,0,0,.87);justify-content:center;box-sizing:border-box;border-radius:50%;align-items:center;cursor:pointer}.gipi-mat-datetime-picker-clock-cell:not(.gipi-mat-datetime-picker-clock-cell-selected):not(.gipi-mat-datetime-picker-clock-cell-disabled):hover{background-color:rgba(0,0,0,.1)}.gipi-mat-datetime-picker-clock-cell.gipi-mat-datetime-picker-clock-cell-disabled{color:rgba(0,0,0,.38);pointer-events:none}.gipi-mat-datetime-picker-clock-cell.gipi-mat-datetime-picker-clock-cell-selected{color:#fff}"]
27435
+ }),
27436
+ __metadata("design:paramtypes", [core.ElementRef,
27437
+ GIPIDatetimeAdapter])
27438
+ ], GIPIDatetimepickerClockComponent);
27439
+ return GIPIDatetimepickerClockComponent;
27440
+ }());
27441
+
27442
+ var GIPI_DATETIMEPICKER_VALUE_ACCESSOR = {
27443
+ provide: forms.NG_VALUE_ACCESSOR,
27444
+ useExisting: core.forwardRef(function () { return GIPIDatetimepickerInputDirective; }),
27445
+ multi: true,
27446
+ };
27447
+ var GIPI_DATETIMEPICKER_VALIDATORS = {
27448
+ provide: forms.NG_VALIDATORS,
27449
+ useExisting: core.forwardRef(function () { return GIPIDatetimepickerInputDirective; }),
27450
+ multi: true,
27451
+ };
27452
+ /**
27453
+ * An event used for datepicker input and change events. We don't always have access to a native
27454
+ * input or change event because the event may have been triggered by the user clicking on the
27455
+ * calendar popup. For consistency, we always use MatDatepickerInputEvent instead.
27456
+ */
27457
+ var GIPIDatetimepickerInputEvent = /** @class */ (function () {
27458
+ function GIPIDatetimepickerInputEvent(target, targetElement) {
27459
+ this.target = target;
27460
+ this.targetElement = targetElement;
27461
+ this.value = this.target.value;
27462
+ }
27463
+ return GIPIDatetimepickerInputEvent;
27464
+ }());
27465
+ /** Directive used to connect an input to a MatDatepicker. */
27466
+ var GIPIDatetimepickerInputDirective = /** @class */ (function () {
27467
+ function GIPIDatetimepickerInputDirective(_elementRef, _dateAdapter, _dateFormats, _formField) {
27468
+ var _this = this;
27469
+ this._elementRef = _elementRef;
27470
+ this._dateAdapter = _dateAdapter;
27471
+ this._dateFormats = _dateFormats;
27472
+ this._formField = _formField;
27473
+ /** Emits when the value changes (either due to user input or programmatic change). */
27474
+ this._valueChange = new core.EventEmitter();
27475
+ /** Emits when the disabled state has changed */
27476
+ this._disabledChange = new core.EventEmitter();
27477
+ this._datepickerSubscription = rxjs.Subscription.EMPTY;
27478
+ this._localeSubscription = rxjs.Subscription.EMPTY;
27479
+ /** Whether the last value set on the input was valid. */
27480
+ this._lastValueValid = false;
27481
+ /** Emits when a `change` event is fired on this `<input>`. */
27482
+ this.dateChange = new core.EventEmitter();
27483
+ /** Emits when an `input` event is fired on this `<input>`. */
27484
+ this.dateInput = new core.EventEmitter();
27485
+ this._onTouched = function () { };
27486
+ this._cvaOnChange = function () { };
27487
+ this._validatorOnChange = function () { };
27488
+ /** The form control validator for whether the input parses. */
27489
+ this._parseValidator = function () {
27490
+ return _this._lastValueValid
27491
+ ? null
27492
+ : { matDatepickerParse: { text: _this._elementRef.nativeElement.value } };
27493
+ };
27494
+ /** The form control validator for the min date. */
27495
+ this._minValidator = function (control) {
27496
+ var controlValue = _this._dateAdapter.getValidDateOrNull(_this._dateAdapter.deserialize(control.value));
27497
+ return !_this.min ||
27498
+ !controlValue ||
27499
+ _this._dateAdapter.compareDatetime(_this.min, controlValue) <= 0 ? null : { matDatepickerMin: { min: _this.min, actual: controlValue } };
27500
+ };
27501
+ /** The form control validator for the max date. */
27502
+ this._maxValidator = function (control) {
27503
+ var controlValue = _this._dateAdapter.getValidDateOrNull(_this._dateAdapter.deserialize(control.value));
27504
+ return !_this.max ||
27505
+ !controlValue ||
27506
+ _this._dateAdapter.compareDatetime(_this.max, controlValue) >= 0 ? null : { matDatepickerMax: { max: _this.max, actual: controlValue } };
27507
+ };
27508
+ /** The form control validator for the date filter. */
27509
+ this._filterValidator = function (control) {
27510
+ var controlValue = _this._dateAdapter.getValidDateOrNull(_this._dateAdapter.deserialize(control.value));
27511
+ return !_this._dateFilter ||
27512
+ !controlValue ||
27513
+ _this._dateFilter(controlValue, exports.GIPIDatetimepickerFilterType.DATE)
27514
+ ? null
27515
+ : { matDatepickerFilter: true };
27516
+ };
27517
+ /** The combined form control validator for this input. */
27518
+ this._validator = forms.Validators.compose([
27519
+ this._parseValidator,
27520
+ this._minValidator,
27521
+ this._maxValidator,
27522
+ this._filterValidator,
27523
+ ]);
27524
+ if (!this._dateAdapter) {
27525
+ throw createMissingDateImplError$1('GIPIDatetimeAdapter');
27526
+ }
27527
+ if (!this._dateFormats) {
27528
+ throw createMissingDateImplError$1('GIPI_DATETIME_FORMATS');
27529
+ }
27530
+ // Update the displayed date when the locale changes.
27531
+ this._localeSubscription = _dateAdapter.localeChanges.subscribe(function () { return _this.value = _this.value; });
27532
+ }
27533
+ GIPIDatetimepickerInputDirective_1 = GIPIDatetimepickerInputDirective;
27534
+ Object.defineProperty(GIPIDatetimepickerInputDirective.prototype, "gipiMatDatetimePicker", {
27535
+ /** The datepicker that this input is associated with. */
27536
+ set: function (value) {
27537
+ this.registerDatepicker(value);
27538
+ },
27539
+ enumerable: false,
27540
+ configurable: true
27541
+ });
27542
+ Object.defineProperty(GIPIDatetimepickerInputDirective.prototype, "matDatepickerFilter", {
27543
+ set: function (filter) {
27544
+ this._dateFilter = filter;
27545
+ this._validatorOnChange();
27546
+ },
27547
+ enumerable: false,
27548
+ configurable: true
27549
+ });
27550
+ Object.defineProperty(GIPIDatetimepickerInputDirective.prototype, "value", {
27551
+ get: function () {
27552
+ return this._value;
27553
+ },
27554
+ set: function (value) {
27555
+ var _this = this;
27556
+ value = this._dateAdapter.deserialize(value);
27557
+ this._lastValueValid = !value || this._dateAdapter.isValid(value);
27558
+ value = this._dateAdapter.getValidDateOrNull(value);
27559
+ var oldDate = this.value;
27560
+ this._value = value;
27561
+ this._formatValue(value);
27562
+ // use timeout to ensure the datetimepicker is instantiated and we get the correct format
27563
+ setTimeout(function () {
27564
+ if (!_this._dateAdapter.sameDatetime(oldDate, value)) {
27565
+ _this._valueChange.emit(value);
27566
+ }
27567
+ });
27568
+ },
27569
+ enumerable: false,
27570
+ configurable: true
27571
+ });
27572
+ Object.defineProperty(GIPIDatetimepickerInputDirective.prototype, "min", {
27573
+ get: function () {
27574
+ return this._min;
27575
+ },
27576
+ set: function (value) {
27577
+ this._min = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
27578
+ this._validatorOnChange();
27579
+ },
27580
+ enumerable: false,
27581
+ configurable: true
27582
+ });
27583
+ Object.defineProperty(GIPIDatetimepickerInputDirective.prototype, "max", {
27584
+ get: function () {
27585
+ return this._max;
27586
+ },
27587
+ set: function (value) {
27588
+ this._max = this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(value));
27589
+ this._validatorOnChange();
27590
+ },
27591
+ enumerable: false,
27592
+ configurable: true
27593
+ });
27594
+ Object.defineProperty(GIPIDatetimepickerInputDirective.prototype, "disabled", {
27595
+ get: function () {
27596
+ return !!this._disabled;
27597
+ },
27598
+ set: function (value) {
27599
+ var newValue = coercion.coerceBooleanProperty(value);
27600
+ if (this._disabled !== newValue) {
27601
+ this._disabled = newValue;
27602
+ this._disabledChange.emit(newValue);
27603
+ }
27604
+ },
27605
+ enumerable: false,
27606
+ configurable: true
27607
+ });
27608
+ GIPIDatetimepickerInputDirective.prototype.ngAfterContentInit = function () {
27609
+ var _this = this;
27610
+ if (this._datepicker) {
27611
+ this._datepickerSubscription = this._datepicker.selectedChanged.subscribe(function (selected) {
27612
+ _this.value = selected;
27613
+ _this._cvaOnChange(selected);
27614
+ _this._onTouched();
27615
+ _this.dateInput.emit(new GIPIDatetimepickerInputEvent(_this, _this._elementRef.nativeElement));
27616
+ _this.dateChange.emit(new GIPIDatetimepickerInputEvent(_this, _this._elementRef.nativeElement));
27617
+ });
27618
+ }
27619
+ };
27620
+ GIPIDatetimepickerInputDirective.prototype.ngOnDestroy = function () {
27621
+ this._datepickerSubscription.unsubscribe();
27622
+ this._localeSubscription.unsubscribe();
27623
+ this._valueChange.complete();
27624
+ this._disabledChange.complete();
27625
+ };
27626
+ GIPIDatetimepickerInputDirective.prototype.registerOnValidatorChange = function (fn) {
27627
+ this._validatorOnChange = fn;
27628
+ };
27629
+ GIPIDatetimepickerInputDirective.prototype.validate = function (c) {
27630
+ return this._validator ? this._validator(c) : null;
27631
+ };
27632
+ /**
27633
+ * Gets the element that the datepicker popup should be connected to.
27634
+ * @return The element to connect the popup to.
27635
+ */
27636
+ GIPIDatetimepickerInputDirective.prototype.getConnectedOverlayOrigin = function () {
27637
+ return this._formField
27638
+ ? this._formField.getConnectedOverlayOrigin()
27639
+ : this._elementRef;
27640
+ };
27641
+ // Implemented as part of ControlValueAccessor
27642
+ GIPIDatetimepickerInputDirective.prototype.writeValue = function (value) {
27643
+ this.value = value;
27644
+ };
27645
+ // Implemented as part of ControlValueAccessor
27646
+ GIPIDatetimepickerInputDirective.prototype.registerOnChange = function (fn) {
27647
+ this._cvaOnChange = fn;
27648
+ };
27649
+ // Implemented as part of ControlValueAccessor
27650
+ GIPIDatetimepickerInputDirective.prototype.registerOnTouched = function (fn) {
27651
+ this._onTouched = fn;
27652
+ };
27653
+ // Implemented as part of ControlValueAccessor
27654
+ GIPIDatetimepickerInputDirective.prototype.setDisabledState = function (disabled) {
27655
+ this.disabled = disabled;
27656
+ };
27657
+ GIPIDatetimepickerInputDirective.prototype._onKeydown = function (event) {
27658
+ if (event.altKey && event.keyCode === keycodes.DOWN_ARROW) {
27659
+ this._datepicker.open();
27660
+ event.preventDefault();
27661
+ }
27662
+ };
27663
+ GIPIDatetimepickerInputDirective.prototype._onInput = function (value) {
27664
+ var date = this._dateAdapter.parse(value, this.getParseFormat());
27665
+ this._lastValueValid = !date || this._dateAdapter.isValid(date);
27666
+ date = this._dateAdapter.getValidDateOrNull(date);
27667
+ this._value = date;
27668
+ this._cvaOnChange(date);
27669
+ this._valueChange.emit(date);
27670
+ this.dateInput.emit(new GIPIDatetimepickerInputEvent(this, this._elementRef.nativeElement));
27671
+ };
27672
+ GIPIDatetimepickerInputDirective.prototype._onChange = function () {
27673
+ this.dateChange.emit(new GIPIDatetimepickerInputEvent(this, this._elementRef.nativeElement));
27674
+ };
27675
+ /** Handles blur events on the input. */
27676
+ GIPIDatetimepickerInputDirective.prototype._onBlur = function () {
27677
+ // Reformat the input only if we have a valid value.
27678
+ if (this.value) {
27679
+ this._formatValue(this.value);
27680
+ }
27681
+ this._onTouched();
27682
+ };
27683
+ GIPIDatetimepickerInputDirective.prototype.registerDatepicker = function (value) {
27684
+ if (value) {
27685
+ this._datepicker = value;
27686
+ this._datepicker._registerInput(this);
27687
+ }
27688
+ };
27689
+ GIPIDatetimepickerInputDirective.prototype.getDisplayFormat = function () {
27690
+ switch (this._datepicker.type) {
27691
+ case 'date': return this._dateFormats.display.dateInput;
27692
+ case 'datetime': return this._dateFormats.display.datetimeInput;
27693
+ case 'time': return this._dateFormats.display.timeInput;
27694
+ case 'month': return this._dateFormats.display.monthInput;
27695
+ }
27696
+ };
27697
+ GIPIDatetimepickerInputDirective.prototype.getParseFormat = function () {
27698
+ var parseFormat;
27699
+ switch (this._datepicker.type) {
27700
+ case 'date':
27701
+ parseFormat = this._dateFormats.parse.dateInput;
27702
+ break;
27703
+ case 'datetime':
27704
+ parseFormat = this._dateFormats.parse.datetimeInput;
27705
+ break;
27706
+ case 'time':
27707
+ parseFormat = this._dateFormats.parse.timeInput;
27708
+ break;
27709
+ case 'month':
27710
+ parseFormat = this._dateFormats.parse.monthInput;
27711
+ break;
27712
+ }
27713
+ if (!parseFormat) {
27714
+ parseFormat = this._dateFormats.parse.dateInput;
27715
+ }
27716
+ return parseFormat;
27717
+ };
27718
+ /** Formats a value and sets it on the input element. */
27719
+ GIPIDatetimepickerInputDirective.prototype._formatValue = function (value) {
27720
+ this._elementRef.nativeElement.value = value
27721
+ ? this._dateAdapter.format(value, this.getDisplayFormat())
27722
+ : '';
27723
+ };
27724
+ var GIPIDatetimepickerInputDirective_1;
27725
+ GIPIDatetimepickerInputDirective.ctorParameters = function () { return [
27726
+ { type: core.ElementRef },
27727
+ { type: GIPIDatetimeAdapter, decorators: [{ type: core.Optional }] },
27728
+ { type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [GIPI_DATETIME_FORMATS,] }] },
27729
+ { type: formField.MatFormField, decorators: [{ type: core.Optional }] }
27730
+ ]; };
27731
+ __decorate([
27732
+ core.Input(),
27733
+ __metadata("design:type", GIPIDatetimepickerComponent),
27734
+ __metadata("design:paramtypes", [GIPIDatetimepickerComponent])
27735
+ ], GIPIDatetimepickerInputDirective.prototype, "gipiMatDatetimePicker", null);
27736
+ __decorate([
27737
+ core.Input(),
27738
+ __metadata("design:type", Function),
27739
+ __metadata("design:paramtypes", [Function])
27740
+ ], GIPIDatetimepickerInputDirective.prototype, "matDatepickerFilter", null);
27741
+ __decorate([
27742
+ core.Input(),
27743
+ __metadata("design:type", Object),
27744
+ __metadata("design:paramtypes", [Object])
27745
+ ], GIPIDatetimepickerInputDirective.prototype, "value", null);
27746
+ __decorate([
27747
+ core.Input(),
27748
+ __metadata("design:type", Object),
27749
+ __metadata("design:paramtypes", [Object])
27750
+ ], GIPIDatetimepickerInputDirective.prototype, "min", null);
27751
+ __decorate([
27752
+ core.Input(),
27753
+ __metadata("design:type", Object),
27754
+ __metadata("design:paramtypes", [Object])
27755
+ ], GIPIDatetimepickerInputDirective.prototype, "max", null);
27756
+ __decorate([
27757
+ core.Input(),
27758
+ __metadata("design:type", Object),
27759
+ __metadata("design:paramtypes", [Object])
27760
+ ], GIPIDatetimepickerInputDirective.prototype, "disabled", null);
27761
+ __decorate([
27762
+ core.Output(),
27763
+ __metadata("design:type", Object)
27764
+ ], GIPIDatetimepickerInputDirective.prototype, "dateChange", void 0);
27765
+ __decorate([
27766
+ core.Output(),
27767
+ __metadata("design:type", Object)
27768
+ ], GIPIDatetimepickerInputDirective.prototype, "dateInput", void 0);
27769
+ GIPIDatetimepickerInputDirective = GIPIDatetimepickerInputDirective_1 = __decorate([
27770
+ core.Directive({
27771
+ selector: 'input[gipiMatDatetimePicker]',
27772
+ exportAs: 'matDatepickerInput',
27773
+ providers: [
27774
+ GIPI_DATETIMEPICKER_VALUE_ACCESSOR,
27775
+ GIPI_DATETIMEPICKER_VALIDATORS,
27776
+ {
27777
+ provide: input.MAT_INPUT_VALUE_ACCESSOR,
27778
+ useExisting: GIPIDatetimepickerInputDirective_1,
27779
+ },
27780
+ ],
27781
+ host: {
27782
+ '[attr.aria-haspopup]': 'true',
27783
+ '[attr.aria-owns]': '(_datepicker?.opened && _datepicker.id) || null',
27784
+ '[attr.min]': 'min ? _dateAdapter.toIso8601(min) : null',
27785
+ '[attr.max]': 'max ? _dateAdapter.toIso8601(max) : null',
27786
+ '[disabled]': 'disabled',
27787
+ '(focus)': '_datepicker._handleFocus()',
27788
+ '(input)': '_onInput($event.target.value)',
27789
+ '(change)': '_onChange()',
27790
+ '(blur)': '_onBlur()',
27791
+ '(keydown)': '_onKeydown($event)',
27792
+ },
27793
+ }),
27794
+ __param(1, core.Optional()),
27795
+ __param(2, core.Optional()),
27796
+ __param(2, core.Inject(GIPI_DATETIME_FORMATS)),
27797
+ __param(3, core.Optional()),
27798
+ __metadata("design:paramtypes", [core.ElementRef,
27799
+ GIPIDatetimeAdapter, Object, formField.MatFormField])
27800
+ ], GIPIDatetimepickerInputDirective);
27801
+ return GIPIDatetimepickerInputDirective;
27802
+ }());
27803
+
27804
+ var DAYS_PER_WEEK$1 = 7;
27805
+ /**
27806
+ * An internal component used to display a single month in the datepicker.
27807
+ * @docs-private
27808
+ */
27809
+ var GIPIDatetimepickerMonthViewComponent = /** @class */ (function () {
27810
+ function GIPIDatetimepickerMonthViewComponent(_adapter, _dateFormats) {
27811
+ this._adapter = _adapter;
27812
+ this._dateFormats = _dateFormats;
27813
+ this.type = 'date';
27814
+ /** Emits when a new date is selected. */
27815
+ this.selectedChange = new core.EventEmitter();
27816
+ this._userSelection = new core.EventEmitter();
27817
+ if (!this._adapter) {
27818
+ throw createMissingDateImplError$1('GIPIDatetimeAdapter');
27819
+ }
27820
+ if (!this._dateFormats) {
27821
+ throw createMissingDateImplError$1('GIPI_DATETIME_FORMATS');
27822
+ }
27823
+ var firstDayOfWeek = this._adapter.getFirstDayOfWeek();
27824
+ var narrowWeekdays = this._adapter.getDayOfWeekNames('narrow');
27825
+ var longWeekdays = this._adapter.getDayOfWeekNames('long');
27826
+ // Rotate the labels for days of the week based on the configured first day of the week.
27827
+ var weekdays = longWeekdays.map(function (long, i) { return { long: long, narrow: narrowWeekdays[i] }; });
27828
+ this._weekdays = weekdays
27829
+ .slice(firstDayOfWeek)
27830
+ .concat(weekdays.slice(0, firstDayOfWeek));
27831
+ this._activeDate = this._adapter.today();
27832
+ }
27833
+ Object.defineProperty(GIPIDatetimepickerMonthViewComponent.prototype, "activeDate", {
27834
+ get: function () {
27835
+ return this._activeDate;
27836
+ },
27837
+ set: function (value) {
27838
+ var oldActiveDate = this._activeDate;
27839
+ this._activeDate = value || this._adapter.today();
27840
+ if (oldActiveDate && this._activeDate && !this._adapter.sameMonthAndYear(oldActiveDate, this._activeDate)) {
27841
+ this._init();
27842
+ if (this._adapter.isInNextMonth(oldActiveDate, this._activeDate)) {
27843
+ this.calendarState('right');
27844
+ }
27845
+ else {
27846
+ this.calendarState('left');
27847
+ }
27848
+ }
27849
+ },
27850
+ enumerable: false,
27851
+ configurable: true
27852
+ });
27853
+ Object.defineProperty(GIPIDatetimepickerMonthViewComponent.prototype, "selected", {
27854
+ get: function () {
27855
+ return this._selected;
27856
+ },
27857
+ set: function (value) {
27858
+ this._selected = value;
27859
+ this._selectedDate = this._getDateInCurrentMonth(this.selected);
27860
+ },
27861
+ enumerable: false,
27862
+ configurable: true
27863
+ });
27864
+ GIPIDatetimepickerMonthViewComponent.prototype.ngAfterContentInit = function () {
27865
+ this._init();
27866
+ };
27867
+ /** Handles when a new date is selected. */
27868
+ GIPIDatetimepickerMonthViewComponent.prototype._dateSelected = function (date) {
27869
+ this.selectedChange.emit(this._adapter.createDatetime(this._adapter.getYear(this.activeDate), this._adapter.getMonth(this.activeDate), date, this._adapter.getHour(this.activeDate), this._adapter.getMinute(this.activeDate)));
27870
+ if (this.type === 'date') {
27871
+ this._userSelection.emit();
27872
+ }
27873
+ };
27874
+ GIPIDatetimepickerMonthViewComponent.prototype._calendarStateDone = function () {
27875
+ this._calendarState = '';
27876
+ };
27877
+ /** Initializes this month view. */
27878
+ GIPIDatetimepickerMonthViewComponent.prototype._init = function () {
27879
+ this._selectedDate = this._getDateInCurrentMonth(this.selected);
27880
+ this._todayDate = this._getDateInCurrentMonth(this._adapter.today());
27881
+ var firstOfMonth = this._adapter.createDatetime(this._adapter.getYear(this.activeDate), this._adapter.getMonth(this.activeDate), 1, this._adapter.getHour(this.activeDate), this._adapter.getMinute(this.activeDate));
27882
+ this._firstWeekOffset = (DAYS_PER_WEEK$1 + this._adapter.getDayOfWeek(firstOfMonth) - this._adapter.getFirstDayOfWeek()) % DAYS_PER_WEEK$1;
27883
+ this._createWeekCells();
27884
+ };
27885
+ /** Creates MdCalendarCells for the dates in this month. */
27886
+ GIPIDatetimepickerMonthViewComponent.prototype._createWeekCells = function () {
27887
+ var daysInMonth = this._adapter.getNumDaysInMonth(this.activeDate);
27888
+ var dateNames = this._adapter.getDateNames();
27889
+ this._weeks = [[]];
27890
+ for (var i = 0, cell = this._firstWeekOffset; i < daysInMonth; i++, cell++) {
27891
+ if (cell == DAYS_PER_WEEK$1) {
27892
+ this._weeks.push([]);
27893
+ cell = 0;
27894
+ }
27895
+ var date = this._adapter.createDatetime(this._adapter.getYear(this.activeDate), this._adapter.getMonth(this.activeDate), i + 1, this._adapter.getHour(this.activeDate), this._adapter.getMinute(this.activeDate));
27896
+ var enabled = !this.dateFilter || this.dateFilter(date);
27897
+ var ariaLabel = this._adapter.format(date, this._dateFormats.display.dateA11yLabel);
27898
+ this._weeks[this._weeks.length - 1].push(new GIPIDatetimepickerCalendarCell(i + 1, dateNames[i], ariaLabel, enabled));
27899
+ }
27900
+ };
27901
+ /** Gets the date in this month that the given Date falls on. Returns null if the given Date is in another month. */
27902
+ GIPIDatetimepickerMonthViewComponent.prototype._getDateInCurrentMonth = function (date) {
27903
+ return this._adapter.sameMonthAndYear(date, this.activeDate)
27904
+ ? this._adapter.getDate(date)
27905
+ : null;
27906
+ };
27907
+ GIPIDatetimepickerMonthViewComponent.prototype.calendarState = function (direction) {
27908
+ this._calendarState = direction;
27909
+ };
27910
+ GIPIDatetimepickerMonthViewComponent.ctorParameters = function () { return [
27911
+ { type: GIPIDatetimeAdapter, decorators: [{ type: core.Optional }] },
27912
+ { type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [GIPI_DATETIME_FORMATS,] }] }
27913
+ ]; };
27914
+ __decorate([
27915
+ core.Input(),
27916
+ __metadata("design:type", String)
27917
+ ], GIPIDatetimepickerMonthViewComponent.prototype, "type", void 0);
27918
+ __decorate([
27919
+ core.Input(),
27920
+ __metadata("design:type", Function)
27921
+ ], GIPIDatetimepickerMonthViewComponent.prototype, "dateFilter", void 0);
27922
+ __decorate([
27923
+ core.Input(),
27924
+ __metadata("design:type", Object),
27925
+ __metadata("design:paramtypes", [Object])
27926
+ ], GIPIDatetimepickerMonthViewComponent.prototype, "activeDate", null);
27927
+ __decorate([
27928
+ core.Input(),
27929
+ __metadata("design:type", Object),
27930
+ __metadata("design:paramtypes", [Object])
27931
+ ], GIPIDatetimepickerMonthViewComponent.prototype, "selected", null);
27932
+ __decorate([
27933
+ core.Output(),
27934
+ __metadata("design:type", Object)
27935
+ ], GIPIDatetimepickerMonthViewComponent.prototype, "selectedChange", void 0);
27936
+ __decorate([
27937
+ core.Output(),
27938
+ __metadata("design:type", Object)
27939
+ ], GIPIDatetimepickerMonthViewComponent.prototype, "_userSelection", void 0);
27940
+ GIPIDatetimepickerMonthViewComponent = __decorate([
27941
+ core.Component({
27942
+ selector: 'gipi-mat-datetime-picker-month-view',
27943
+ template: "<table class=\"gipi-mat-datetime-picker-calendar-table\">\n <thead class=\"gipi-mat-datetime-picker-calendar-table-header\">\n <tr>\n <th *ngFor=\"let day of _weekdays\"\n [attr.aria-label]=\"day.long\">\n {{ day.narrow }}\n </th>\n </tr>\n <tr>\n <th class=\"gipi-mat-datetime-picker-calendar-table-header-divider\"\n colspan=\"7\"\n aria-hidden=\"true\">\n </th>\n </tr>\n </thead>\n <tbody gipiMatDatetimePickerCalendarBody\n role=\"grid\"\n [activeCell]=\"_adapter.getDate(activeDate) - 1\"\n [rows]=\"_weeks\"\n [selectedValue]=\"_selectedDate\"\n [todayValue]=\"_todayDate\"\n [@slideCalendar]=\"_calendarState\"\n (@slideCalendar.done)=\"_calendarStateDone()\"\n (selectedValueChange)=\"_dateSelected($event)\">\n </tbody>\n</table>",
27944
+ animations: [slideCalendar],
27945
+ encapsulation: core.ViewEncapsulation.None,
27946
+ changeDetection: core.ChangeDetectionStrategy.OnPush
27947
+ }),
27948
+ __param(0, core.Optional()),
27949
+ __param(1, core.Optional()),
27950
+ __param(1, core.Inject(GIPI_DATETIME_FORMATS)),
27951
+ __metadata("design:paramtypes", [GIPIDatetimeAdapter, Object])
27952
+ ], GIPIDatetimepickerMonthViewComponent);
27953
+ return GIPIDatetimepickerMonthViewComponent;
27954
+ }());
27955
+
27956
+ var ɵ0$3 = function (i) { return String(i); };
27957
+ /** The default hour names to use if Intl API is not available. */
27958
+ var DEFAULT_HOUR_NAMES = range$1(24, ɵ0$3);
27959
+ var ɵ1 = function (i) { return String(i); };
27960
+ /** The default minute names to use if Intl API is not available. */
27961
+ var DEFAULT_MINUTE_NAMES = range$1(60, ɵ1);
27962
+ function range$1(length, valueFunction) {
27963
+ var valuesArray = Array(length);
27964
+ for (var i = 0; i < length; i++) {
27965
+ valuesArray[i] = valueFunction(i);
27966
+ }
27967
+ return valuesArray;
27968
+ }
27969
+ var GIPINativeDatetimeAdapter = /** @class */ (function (_super) {
27970
+ __extends(GIPINativeDatetimeAdapter, _super);
27971
+ function GIPINativeDatetimeAdapter(matDateLocale, _delegate) {
27972
+ var _this = _super.call(this, _delegate) || this;
27973
+ _this.setLocale(matDateLocale);
27974
+ return _this;
27975
+ }
27976
+ GIPINativeDatetimeAdapter.prototype.clone = function (date) {
27977
+ return this.createDatetime(this.getYear(date), this.getMonth(date), this.getDate(date), this.getHour(date), this.getMinute(date));
27978
+ };
27979
+ GIPINativeDatetimeAdapter.prototype.getHour = function (date) {
27980
+ return date.getHours();
27981
+ };
27982
+ GIPINativeDatetimeAdapter.prototype.getMinute = function (date) {
27983
+ return date.getMinutes();
27984
+ };
27985
+ GIPINativeDatetimeAdapter.prototype.isInNextMonth = function (startDate, endDate) {
27986
+ var nextMonth = this.getDateInNextMonth(startDate);
27987
+ return this.sameMonthAndYear(nextMonth, endDate);
27988
+ };
27989
+ GIPINativeDatetimeAdapter.prototype.createDatetime = function (year, month, date, hour, minute) {
27990
+ // Check for invalid month and date (except upper bound on date which we have to check after
27991
+ // creating the Date).
27992
+ if (month < 0 || month > 11) {
27993
+ throw Error("Invalid month index \"" + month + "\". Month index has to be between 0 and 11.");
27994
+ }
27995
+ if (date < 1) {
27996
+ throw Error("Invalid date \"" + date + "\". Date has to be greater than 0.");
27997
+ }
27998
+ if (hour < 0 || hour > 23) {
27999
+ throw Error("Invalid hour \"" + hour + "\". Hour has to be between 0 and 23.");
28000
+ }
28001
+ if (minute < 0 || minute > 59) {
28002
+ throw Error("Invalid minute \"" + minute + "\". Minute has to be between 0 and 59.");
28003
+ }
28004
+ var result = this._createDateWithOverflow(year, month, date, hour, minute);
28005
+ // Check that the date wasn't above the upper bound for the month, causing the month to overflow
28006
+ if (result.getMonth() !== month) {
28007
+ throw Error("Invalid date \"" + date + "\" for month with index \"" + month + "\".");
28008
+ }
28009
+ return result;
28010
+ };
28011
+ GIPINativeDatetimeAdapter.prototype.getFirstDateOfMonth = function (date) {
28012
+ var result = new Date();
28013
+ result.setFullYear(date.getFullYear(), date.getMonth(), 1);
28014
+ return result;
28015
+ };
28016
+ GIPINativeDatetimeAdapter.prototype.getHourNames = function () {
28017
+ return DEFAULT_HOUR_NAMES;
28018
+ };
28019
+ GIPINativeDatetimeAdapter.prototype.getMinuteNames = function () {
28020
+ return DEFAULT_MINUTE_NAMES;
28021
+ };
28022
+ GIPINativeDatetimeAdapter.prototype.addCalendarYears = function (date, years) {
28023
+ return this.addCalendarMonths(date, years * 12);
28024
+ };
28025
+ GIPINativeDatetimeAdapter.prototype.addCalendarMonths = function (date, months) {
28026
+ var newDate = this._createDateWithOverflow(this.getYear(date), this.getMonth(date) + months, this.getDate(date), this.getHour(date), this.getMinute(date));
28027
+ // It's possible to wind up in the wrong month if the original month has more days than the new
28028
+ // month. In this case we want to go to the last day of the desired month.
28029
+ // Note: the additional + 12 % 12 ensures we end up with a positive number, since JS % doesn't
28030
+ // guarantee this.
28031
+ if (this.getMonth(newDate) !== (((this.getMonth(date) + months) % 12) + 12) % 12) {
28032
+ newDate = this._createDateWithOverflow(this.getYear(newDate), this.getMonth(newDate), 0, this.getHour(date), this.getMinute(date));
28033
+ }
28034
+ return newDate;
28035
+ };
28036
+ GIPINativeDatetimeAdapter.prototype.addCalendarDays = function (date, days) {
28037
+ return this._createDateWithOverflow(this.getYear(date), this.getMonth(date), this.getDate(date) + days, this.getHour(date), this.getMinute(date));
28038
+ };
28039
+ GIPINativeDatetimeAdapter.prototype.addCalendarHours = function (date, hours) {
28040
+ return this._createDateWithOverflow(this.getYear(date), this.getMonth(date), this.getDate(date), this.getHour(date) + hours, this.getMinute(date));
28041
+ };
28042
+ GIPINativeDatetimeAdapter.prototype.addCalendarMinutes = function (date, minutes) {
28043
+ return this._createDateWithOverflow(this.getYear(date), this.getMonth(date), this.getDate(date), this.getHour(date), this.getMinute(date) + minutes);
28044
+ };
28045
+ GIPINativeDatetimeAdapter.prototype.toIso8601 = function (date) {
28046
+ return (_super.prototype.toIso8601.call(this, date) + 'T' + [this._2digit(date.getUTCHours()), this._2digit(date.getUTCMinutes()),].join(':'));
28047
+ };
28048
+ GIPINativeDatetimeAdapter.prototype.getDateInNextMonth = function (date) {
28049
+ return new Date(date.getFullYear(), date.getMonth() + 1, 1, date.getHours(), date.getMinutes());
28050
+ };
28051
+ /**
28052
+ * Strip out unicode LTR and RTL characters. Edge and IE insert these into formatted dates while
28053
+ * other browsers do not. We remove them to make output consistent and because they interfere with
28054
+ * date parsing.
28055
+ * @param str The string to strip direction characters from.
28056
+ * @returns The stripped string.
28057
+ */
28058
+ GIPINativeDatetimeAdapter.prototype._stripDirectionalityCharacters = function (str) {
28059
+ return str.replace(/[\u200e\u200f]/g, '');
28060
+ };
28061
+ /**
28062
+ * Pads a number to make it two digits.
28063
+ * @param n The number to pad.
28064
+ * @returns The padded number.
28065
+ */
28066
+ GIPINativeDatetimeAdapter.prototype._2digit = function (n) {
28067
+ return ('00' + n).slice(-2);
28068
+ };
28069
+ /** Creates a date but allows the month and date to overflow. */
28070
+ GIPINativeDatetimeAdapter.prototype._createDateWithOverflow = function (year, month, date, hours, minutes) {
28071
+ var result = new Date(year, month, date, hours, minutes);
28072
+ // We need to correct for the fact that JS native Date treats years in range [0, 99] as
28073
+ // abbreviations for 19xx.
28074
+ if (year >= 0 && year < 100) {
28075
+ result.setFullYear(this.getYear(result) - 1900);
28076
+ }
28077
+ return result;
28078
+ };
28079
+ GIPINativeDatetimeAdapter.ctorParameters = function () { return [
28080
+ { type: String, decorators: [{ type: core.Optional }, { type: core.Inject, args: [core$1.MAT_DATE_LOCALE,] }] },
28081
+ { type: core$1.DateAdapter }
28082
+ ]; };
28083
+ GIPINativeDatetimeAdapter = __decorate([
28084
+ core.Injectable(),
28085
+ __param(0, core.Optional()), __param(0, core.Inject(core$1.MAT_DATE_LOCALE)),
28086
+ __metadata("design:paramtypes", [String, core$1.DateAdapter])
28087
+ ], GIPINativeDatetimeAdapter);
28088
+ return GIPINativeDatetimeAdapter;
28089
+ }(GIPIDatetimeAdapter));
28090
+
28091
+ var GIPI_NATIVE_DATETIME_FORMATS = {
28092
+ parse: {},
28093
+ display: {
28094
+ dateInput: { year: 'numeric', month: '2-digit', day: '2-digit' },
28095
+ monthInput: { month: 'long' },
28096
+ datetimeInput: {
28097
+ year: 'numeric',
28098
+ month: '2-digit',
28099
+ day: '2-digit',
28100
+ hour: '2-digit',
28101
+ minute: '2-digit',
28102
+ },
28103
+ timeInput: { hour: '2-digit', minute: '2-digit' },
28104
+ monthYearLabel: { year: 'numeric', month: 'short' },
28105
+ dateA11yLabel: { year: 'numeric', month: 'long', day: 'numeric' },
28106
+ monthYearA11yLabel: { year: 'numeric', month: 'long' },
28107
+ popupHeaderDateLabel: { weekday: 'short', month: 'short', day: '2-digit' },
28108
+ },
28109
+ };
28110
+
28111
+ var NativeDatetimeModule = /** @class */ (function () {
28112
+ function NativeDatetimeModule() {
28113
+ }
28114
+ NativeDatetimeModule = __decorate([
28115
+ core.NgModule({
28116
+ imports: [
28117
+ core$1.NativeDateModule,
28118
+ ],
28119
+ providers: [
28120
+ {
28121
+ provide: GIPIDatetimeAdapter,
28122
+ useClass: GIPINativeDatetimeAdapter,
28123
+ },
28124
+ ],
28125
+ })
28126
+ ], NativeDatetimeModule);
28127
+ return NativeDatetimeModule;
28128
+ }());
28129
+ var ɵ0$4 = GIPI_NATIVE_DATETIME_FORMATS;
28130
+ var GIPINativeDatetimeModule = /** @class */ (function () {
28131
+ function GIPINativeDatetimeModule() {
28132
+ }
28133
+ GIPINativeDatetimeModule = __decorate([
28134
+ core.NgModule({
28135
+ imports: [
28136
+ NativeDatetimeModule,
28137
+ core$1.MatNativeDateModule,
28138
+ ],
28139
+ providers: [
28140
+ {
28141
+ provide: GIPI_DATETIME_FORMATS,
28142
+ useValue: ɵ0$4,
28143
+ },
28144
+ ],
28145
+ })
28146
+ ], GIPINativeDatetimeModule);
28147
+ return GIPINativeDatetimeModule;
28148
+ }());
28149
+
28150
+ /**
28151
+ * An internal component used to display a single year in the datepicker.
28152
+ * @docs-private
28153
+ */
28154
+ var GIPIDatetimepickerYearViewComponent = /** @class */ (function () {
28155
+ function GIPIDatetimepickerYearViewComponent(_adapter, _dateFormats) {
28156
+ this._adapter = _adapter;
28157
+ this._dateFormats = _dateFormats;
28158
+ this.type = 'date';
28159
+ /** Emits when a new month is selected. */
28160
+ this.selectedChange = new core.EventEmitter();
28161
+ this._userSelection = new core.EventEmitter();
28162
+ if (!this._adapter) {
28163
+ throw createMissingDateImplError$1('DatetimeAdapter');
28164
+ }
28165
+ if (!this._dateFormats) {
28166
+ throw createMissingDateImplError$1('GIPI_DATETIME_FORMATS');
28167
+ }
28168
+ this._activeDate = this._adapter.today();
28169
+ }
28170
+ Object.defineProperty(GIPIDatetimepickerYearViewComponent.prototype, "activeDate", {
28171
+ get: function () {
28172
+ return this._activeDate;
28173
+ },
28174
+ set: function (value) {
28175
+ var oldActiveDate = this._activeDate;
28176
+ this._activeDate = value || this._adapter.today();
28177
+ if (oldActiveDate && this._activeDate && !this._adapter.sameYear(oldActiveDate, this._activeDate)) {
28178
+ this._init();
28179
+ }
28180
+ },
28181
+ enumerable: false,
28182
+ configurable: true
28183
+ });
28184
+ Object.defineProperty(GIPIDatetimepickerYearViewComponent.prototype, "selected", {
28185
+ get: function () {
28186
+ return this._selected;
28187
+ },
28188
+ set: function (value) {
28189
+ this._selected = value;
28190
+ this._selectedMonth = this._getMonthInCurrentYear(this.selected);
28191
+ },
28192
+ enumerable: false,
28193
+ configurable: true
28194
+ });
28195
+ GIPIDatetimepickerYearViewComponent.prototype.ngAfterContentInit = function () {
28196
+ this._init();
28197
+ };
28198
+ /** Handles when a new month is selected. */
28199
+ GIPIDatetimepickerYearViewComponent.prototype._monthSelected = function (month) {
28200
+ var normalizedDate = this._adapter.createDatetime(this._adapter.getYear(this.activeDate), month, 1, 0, 0);
28201
+ this.selectedChange.emit(this._adapter.createDatetime(this._adapter.getYear(this.activeDate), month, Math.min(this._adapter.getDate(this.activeDate), this._adapter.getNumDaysInMonth(normalizedDate)), this._adapter.getHour(this.activeDate), this._adapter.getMinute(this.activeDate)));
28202
+ if (this.type === 'month') {
28203
+ this._userSelection.emit();
28204
+ }
28205
+ };
28206
+ GIPIDatetimepickerYearViewComponent.prototype._calendarStateDone = function () {
28207
+ this._calendarState = '';
28208
+ };
28209
+ /** Initializes this month view. */
28210
+ GIPIDatetimepickerYearViewComponent.prototype._init = function () {
28211
+ var _this = this;
28212
+ this._selectedMonth = this._getMonthInCurrentYear(this.selected);
28213
+ this._todayMonth = this._getMonthInCurrentYear(this._adapter.today());
28214
+ this._yearLabel = this._adapter.getYearName(this.activeDate);
28215
+ var monthNames = this._adapter.getMonthNames('short');
28216
+ // First row of months only contains 5 elements so we can fit the year label on the same row.
28217
+ this._months = [[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10, 11]].map(function (row) { return row.map(function (month) { return _this._createCellForMonth(month, monthNames[month]); }); });
28218
+ };
28219
+ /**
28220
+ * Gets the month in this year that the given Date falls on.
28221
+ * Returns null if the given Date is in another year.
28222
+ */
28223
+ GIPIDatetimepickerYearViewComponent.prototype._getMonthInCurrentYear = function (date) {
28224
+ return this._adapter.sameYear(date, this.activeDate)
28225
+ ? this._adapter.getMonth(date)
28226
+ : null;
28227
+ };
28228
+ /** Creates an MdCalendarCell for the given month. */
28229
+ GIPIDatetimepickerYearViewComponent.prototype._createCellForMonth = function (month, monthName) {
28230
+ var ariaLabel = this._adapter.format(this._adapter.createDatetime(this._adapter.getYear(this.activeDate), month, 1, this._adapter.getHour(this.activeDate), this._adapter.getMinute(this.activeDate)), this._dateFormats.display.monthYearA11yLabel);
28231
+ return new GIPIDatetimepickerCalendarCell(month, monthName.toLocaleUpperCase(), ariaLabel, this._isMonthEnabled(month));
28232
+ };
28233
+ /** Whether the given month is enabled. */
28234
+ GIPIDatetimepickerYearViewComponent.prototype._isMonthEnabled = function (month) {
28235
+ if (!this.dateFilter) {
28236
+ return true;
28237
+ }
28238
+ var firstOfMonth = this._adapter.createDatetime(this._adapter.getYear(this.activeDate), month, 1, this._adapter.getHour(this.activeDate), this._adapter.getMinute(this.activeDate));
28239
+ // If any date in the month is enabled count the month as enabled.
28240
+ for (var date = firstOfMonth; this._adapter.getMonth(date) == month; date = this._adapter.addCalendarDays(date, 1)) {
28241
+ if (this.dateFilter(date)) {
28242
+ return true;
28243
+ }
28244
+ }
28245
+ return false;
28246
+ };
28247
+ GIPIDatetimepickerYearViewComponent.ctorParameters = function () { return [
28248
+ { type: GIPIDatetimeAdapter, decorators: [{ type: core.Optional }] },
28249
+ { type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [GIPI_DATETIME_FORMATS,] }] }
28250
+ ]; };
28251
+ __decorate([
28252
+ core.Input(),
28253
+ __metadata("design:type", String)
28254
+ ], GIPIDatetimepickerYearViewComponent.prototype, "type", void 0);
28255
+ __decorate([
28256
+ core.Input(),
28257
+ __metadata("design:type", Function)
28258
+ ], GIPIDatetimepickerYearViewComponent.prototype, "dateFilter", void 0);
28259
+ __decorate([
28260
+ core.Input(),
28261
+ __metadata("design:type", Object),
28262
+ __metadata("design:paramtypes", [Object])
28263
+ ], GIPIDatetimepickerYearViewComponent.prototype, "activeDate", null);
28264
+ __decorate([
28265
+ core.Input(),
28266
+ __metadata("design:type", Object),
28267
+ __metadata("design:paramtypes", [Object])
28268
+ ], GIPIDatetimepickerYearViewComponent.prototype, "selected", null);
28269
+ __decorate([
28270
+ core.Output(),
28271
+ __metadata("design:type", Object)
28272
+ ], GIPIDatetimepickerYearViewComponent.prototype, "selectedChange", void 0);
28273
+ __decorate([
28274
+ core.Output(),
28275
+ __metadata("design:type", Object)
28276
+ ], GIPIDatetimepickerYearViewComponent.prototype, "_userSelection", void 0);
28277
+ GIPIDatetimepickerYearViewComponent = __decorate([
28278
+ core.Component({
28279
+ selector: 'gipi-mat-datetime-picker-year-view',
28280
+ template: "<table class=\"gipi-mat-datetime-picker-calendar-table\"\n role=\"presentation\">\n <thead class=\"gipi-mat-datetime-picker-calendar-table-header\">\n <tr>\n <th class=\"gipi-mat-datetime-picker-calendar-table-header-divider\"\n colspan=\"4\">\n </th>\n </tr>\n </thead>\n <tbody gipiMatDatetimePickerCalendarBody\n allowDisabledSelection=\"true\"\n role=\"grid\"\n [label]=\"_yearLabel\"\n [rows]=\"_months\"\n [todayValue]=\"_todayMonth\"\n [labelMinRequiredCells]=\"2\"\n [numCols]=\"4\"\n [cellAspectRatio]=\"4 / 7\"\n [activeCell]=\"_adapter.getMonth(activeDate)\"\n [selectedValue]=\"_selectedMonth\"\n [@slideCalendar]=\"_calendarState\"\n (@slideCalendar.done)=\"_calendarStateDone()\"\n (selectedValueChange)=\"_monthSelected($event)\">\n </tbody>\n</table>\n",
28281
+ animations: [slideCalendar],
28282
+ encapsulation: core.ViewEncapsulation.None,
28283
+ changeDetection: core.ChangeDetectionStrategy.OnPush
28284
+ }),
28285
+ __param(0, core.Optional()),
28286
+ __param(1, core.Optional()),
28287
+ __param(1, core.Inject(GIPI_DATETIME_FORMATS)),
28288
+ __metadata("design:paramtypes", [GIPIDatetimeAdapter, Object])
28289
+ ], GIPIDatetimepickerYearViewComponent);
28290
+ return GIPIDatetimepickerYearViewComponent;
28291
+ }());
28292
+
28293
+ var DatetimepickerModule = /** @class */ (function () {
28294
+ function DatetimepickerModule() {
28295
+ }
28296
+ DatetimepickerModule = __decorate([
28297
+ core.NgModule({
28298
+ imports: [
28299
+ common.CommonModule,
28300
+ forms.FormsModule,
28301
+ forms.ReactiveFormsModule,
28302
+ button.MatButtonModule,
28303
+ dialog.MatDialogModule,
28304
+ icon.MatIconModule,
28305
+ overlay.OverlayModule,
28306
+ a11y.A11yModule,
28307
+ datepicker.MatDatepickerModule,
28308
+ GIPINativeDatetimeModule,
28309
+ ],
28310
+ exports: [
28311
+ forms.FormsModule,
28312
+ forms.ReactiveFormsModule,
28313
+ button.MatButtonModule,
28314
+ dialog.MatDialogModule,
28315
+ icon.MatIconModule,
28316
+ overlay.OverlayModule,
28317
+ a11y.A11yModule,
28318
+ datepicker.MatDatepickerModule,
28319
+ GIPINativeDatetimeModule,
28320
+ GIPIDatetimepickerCalendarComponent,
28321
+ GIPIDatetimepickerCalendarBodyComponent,
28322
+ GIPIDatetimepickerClockComponent,
28323
+ GIPIDatetimepickerComponent,
28324
+ GIPIDatetimepickerToggleComponent,
28325
+ GIPIDatetimepickerInputDirective,
28326
+ GIPIDatetimepickerContentComponent,
28327
+ GIPIDatetimepickerMonthViewComponent,
28328
+ GIPIDatetimepickerYearViewComponent,
28329
+ GIPIDatetimepickerMultiYearViewComponent,
28330
+ GIPIDateAndTimePickerComponent,
28331
+ ],
28332
+ declarations: [
28333
+ GIPIDatetimepickerCalendarComponent,
28334
+ GIPIDatetimepickerCalendarBodyComponent,
28335
+ GIPIDatetimepickerClockComponent,
28336
+ GIPIDatetimepickerComponent,
28337
+ GIPIDatetimepickerToggleComponent,
28338
+ GIPIDatetimepickerInputDirective,
28339
+ GIPIDatetimepickerContentComponent,
28340
+ GIPIDatetimepickerMonthViewComponent,
28341
+ GIPIDatetimepickerYearViewComponent,
28342
+ GIPIDatetimepickerMultiYearViewComponent,
28343
+ GIPIDateAndTimePickerComponent,
28344
+ ],
28345
+ entryComponents: [
28346
+ GIPIDatetimepickerContentComponent,
28347
+ ],
28348
+ providers: [
28349
+ datepicker.MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER,
28350
+ ],
28351
+ })
28352
+ ], DatetimepickerModule);
28353
+ return DatetimepickerModule;
28354
+ }());
28355
+
28356
+ var moment$4 = moment_;
28357
+ var CalendarMonthYearComponent = /** @class */ (function () {
28358
+ function CalendarMonthYearComponent(_changeDetectorRef) {
28359
+ this._changeDetectorRef = _changeDetectorRef;
28360
+ this._subscriptions = new rxjs.Subscription();
28361
+ this._animationState = 'enter';
28362
+ this._animationDone = new rxjs.Subject();
28363
+ this.years = [];
28364
+ this.months = [];
28365
+ this._calendarView = 'both';
28366
+ }
28367
+ CalendarMonthYearComponent_1 = CalendarMonthYearComponent;
28368
+ CalendarMonthYearComponent.prototype.ngOnInit = function () {
28369
+ if (this._locale) {
28370
+ moment$4.locale(this._locale);
28371
+ }
28372
+ else {
28373
+ moment$4.locale('pt-br');
28374
+ }
28375
+ this.months = __spread(this.monthYearPicker.model.months);
28376
+ this._calendarView = this.monthYearPicker.calendarView;
28377
+ if (this._calendarView === 'year') {
28378
+ this.toggleShowYears();
28379
+ }
28380
+ this.monthYearPicker.onValueChange(this.monthYearPicker.model.selectedMonthIndex, this.monthYearPicker.model.selectedMonthYear);
28381
+ };
28382
+ CalendarMonthYearComponent.prototype.ngAfterViewInit = function () {
28383
+ var _this = this;
28384
+ if (this._changeDetectorRef) {
28385
+ this._subscriptions.add(this.monthYearPicker._stateChanges.subscribe(function () {
28386
+ _this._changeDetectorRef.markForCheck();
28387
+ }));
28388
+ }
28389
+ };
28390
+ CalendarMonthYearComponent.prototype.ngOnDestroy = function () {
28391
+ this._subscriptions.unsubscribe();
28392
+ this._animationDone.complete();
28393
+ };
28394
+ CalendarMonthYearComponent.prototype._startExitAnimation = function () {
28395
+ this._animationState = 'void';
28396
+ if (this._changeDetectorRef) {
28397
+ this._changeDetectorRef.markForCheck();
28398
+ }
28399
+ };
28400
+ CalendarMonthYearComponent.prototype.decrement = function () {
28401
+ this.monthYearPicker.model.decrementYear();
28402
+ if (this.isShowYears) {
28403
+ this._renderYears();
28404
+ }
28405
+ };
28406
+ CalendarMonthYearComponent.prototype.increment = function () {
28407
+ this.monthYearPicker.model.incrementYear();
28408
+ if (this.isShowYears) {
28409
+ this._renderYears();
28410
+ }
28411
+ };
28412
+ CalendarMonthYearComponent.prototype.selectMonth = function (index) {
28413
+ this.monthYearPicker.model.selectMonth(index);
28414
+ this.monthYearPicker.onValueChange(this.monthYearPicker.model.selectedMonthIndex, this.monthYearPicker.model.selectedMonthYear);
28415
+ this.monthYearPicker.close();
28416
+ };
28417
+ CalendarMonthYearComponent.prototype.isSelectedMonth = function (monthIndex) {
28418
+ return this.monthYearPicker.model.selectedMonthIndex == monthIndex && this.monthYearPicker.model.selectedMonthYear == this.monthYearPicker.model.selectedYearMoment.year();
28419
+ };
28420
+ CalendarMonthYearComponent.prototype.isCurrentMonth = function (monthIndex) {
28421
+ var currentMonth = moment$4().month();
28422
+ var currentYear = moment$4().year();
28423
+ return (monthIndex === currentMonth) && (this.monthYearPicker.model.selectedYearMoment.year() === currentYear);
28424
+ };
28425
+ CalendarMonthYearComponent.prototype.isDisabledMonth = function (index) {
28426
+ var disabled = false;
28427
+ if (!ObjectUtil.isNull(this.monthYearPicker)) {
28428
+ var minMonth = !ObjectUtil.isNull(this.monthYearPicker.min) ? this.monthYearPicker.min.month : null;
28429
+ var maxMonth = !ObjectUtil.isNull(this.monthYearPicker.max) ? this.monthYearPicker.max.month : null;
28430
+ if (!ObjectUtil.isNull(minMonth) && !ObjectUtil.isNull(maxMonth)) {
28431
+ disabled = index < minMonth || index > maxMonth;
28432
+ }
28433
+ else if (!ObjectUtil.isNull(minMonth)) {
28434
+ disabled = index < minMonth;
28435
+ }
28436
+ else if (!ObjectUtil.isNull(maxMonth)) {
28437
+ disabled = index > maxMonth;
28438
+ }
28439
+ }
28440
+ return disabled;
28441
+ // let disabled = false;
28442
+ // if (this._enabledMonths && this._enabledMonths.length > 0) {
28443
+ // disabled = this._enabledMonths.indexOf(index) < 0;
28444
+ // }
28445
+ // if (this._disabledMonths && this._disabledMonths.length > 0) {
28446
+ // disabled = this._disabledMonths.indexOf(index) >= 0;
28447
+ // }
28448
+ // return disabled;
28449
+ };
28450
+ /** Years */
28451
+ CalendarMonthYearComponent.prototype.toggleShowYears = function () {
28452
+ this.isShowYears = !this.isShowYears;
28453
+ this._renderYears();
28454
+ };
28455
+ CalendarMonthYearComponent.prototype._renderYears = function () {
28456
+ this.years = [];
28457
+ for (var i = 11; i > 0; i--) {
28458
+ this.years.push(this.monthYearPicker.model.selectedYearMoment.year() - i);
28459
+ }
28460
+ for (var i = 0; i <= 12; i++) {
28461
+ this.years.push(this.monthYearPicker.model.selectedYearMoment.year() + i);
28462
+ }
28463
+ };
28464
+ Object.defineProperty(CalendarMonthYearComponent.prototype, "periodButtonLabel", {
28465
+ get: function () {
28466
+ var formatYearRange = function (start, end) {
28467
+ return start + " \u2013 " + end;
28468
+ };
28469
+ return this.isShowYears ? formatYearRange(this.years[0], this.years[this.years.length - 1]) : this.monthYearPicker.model.selectedYearText;
28470
+ },
28471
+ enumerable: false,
25225
28472
  configurable: true
25226
28473
  });
25227
28474
  CalendarMonthYearComponent.prototype.selectYear = function (year) {
@@ -25367,7 +28614,7 @@
25367
28614
  };
25368
28615
  return MonthPickerModel;
25369
28616
  }());
25370
- var nextUniqueId$q = 0;
28617
+ var nextUniqueId$r = 0;
25371
28618
  var MonthYearPickerComponent = /** @class */ (function () {
25372
28619
  function MonthYearPickerComponent(elementRef, _changeDetectorRef, _overlay, _ngZone, _viewContainerRef, scrollStrategy, _dir, _document) {
25373
28620
  this.elementRef = elementRef;
@@ -25377,7 +28624,7 @@
25377
28624
  this._viewContainerRef = _viewContainerRef;
25378
28625
  this._dir = _dir;
25379
28626
  this._document = _document;
25380
- this._name = "gipi-date-range-" + nextUniqueId$q++;
28627
+ this._name = "gipi-date-range-" + nextUniqueId$r++;
25381
28628
  this._focusedElementBeforeOpen = null;
25382
28629
  this._backdropHarnessClass = this._name + "-backdrop";
25383
28630
  this._stateChanges = new rxjs.Subject();
@@ -25772,7 +29019,7 @@
25772
29019
  'class': 'gipi-month-year-picker',
25773
29020
  },
25774
29021
  changeDetection: core.ChangeDetectionStrategy.OnPush,
25775
- styles: [":host{display:block;width:100%;min-width:0;max-width:100%;flex:1}.input-wrapper{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}.input-wrapper .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}.input-wrapper .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}.input-wrapper .input-content{display:flex;font-family:inherit;font-size:inherit;color:inherit;height:4rem;background:#fff;border:1px solid rgba(0,0,0,.12);transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem}.input-wrapper .input-content .input-element{padding:.75rem .8rem;border:none;outline:0;background-color:transparent;flex:1;color:inherit;caret-color:#696969;min-width:0}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.prefix:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.suffix:hover){border-color:#6d6f73}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:focus){outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}.input-wrapper .input-content:has(.input-element:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}.input-wrapper .input-content:has(.input-element:disabled) .suffix>mat-icon{color:#bbbdc1!important}.input-wrapper .input-content .input-element:disabled{cursor:not-allowed}.input-wrapper .input-content .suffix{display:flex;align-items:center;justify-content:center;padding-block:.75rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding-right:.8rem}.input-wrapper .input-content .suffix>mat-icon{width:2rem;height:2rem;font-size:2rem;color:#696969}.input-wrapper .input-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-year-toggle-default-icon{display:block;width:1.5em;height:1.5em}.mat-icon-button .month-year-toggle-default-icon{margin:auto}.btn-month-year-toggle{width:2rem!important;height:2rem!important;line-height:2rem!important}"]
29022
+ styles: [":host{display:block;width:100%;min-width:0;max-width:100%;flex:1}.input-wrapper{display:flex;flex-direction:column;gap:.8rem;font-size:1.4rem;color:#696969}.input-wrapper .input-label{display:flex;align-items:center;gap:.4rem;color:#131313;line-height:1.6rem}.input-wrapper .input-label>span{font-size:1.6rem;line-height:1.6rem;color:#d14014}.input-wrapper .input-content{display:flex;font-family:inherit;font-size:inherit;color:inherit;height:4rem;background:#fff;border:1px solid #0000001f;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.6rem}.input-wrapper .input-content .input-element{padding:.75rem .8rem;border:none;outline:0;background-color:transparent;flex:1;color:inherit;caret-color:#696969;min-width:0}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.prefix:hover),.input-wrapper .input-content:not(.input-element:disabled):has(.suffix:hover){border-color:#6d6f73}.input-wrapper .input-content:not(.input-element:disabled):has(.input-element:enabled:focus){outline:0;outline-offset:0;box-shadow:0 0 0 .2rem #e0e1e2;border-color:#6d6f73}.input-wrapper .input-content:has(.input-element:disabled){color:#bbbdc1!important;border-color:#e0e1e2!important;background-color:#f5f5f6!important;cursor:not-allowed}.input-wrapper .input-content:has(.input-element:disabled) .suffix>mat-icon{color:#bbbdc1!important}.input-wrapper .input-content .input-element:disabled{cursor:not-allowed}.input-wrapper .input-content .suffix{display:flex;align-items:center;justify-content:center;padding-block:.75rem;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding-right:.8rem}.input-wrapper .input-content .suffix>mat-icon{width:2rem;height:2rem;font-size:2rem;color:#696969}.input-wrapper .input-help{flex:1;font-size:1rem;font-weight:500;margin-top:-.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-year-toggle-default-icon{display:block;width:1.5em;height:1.5em}.mat-icon-button .month-year-toggle-default-icon{margin:auto}.btn-month-year-toggle{width:2rem!important;height:2rem!important;line-height:2rem!important}"]
25776
29023
  }),
25777
29024
  __param(5, core.Inject(GIPI_MONTH_YEAR_SCROLL_STRATEGY)),
25778
29025
  __param(6, core.Optional()),
@@ -25900,7 +29147,7 @@
25900
29147
  GIPIResizeService,
25901
29148
  GIPIPaginationService,
25902
29149
  ];
25903
- var ɵ0$3 = {
29150
+ var ɵ0$5 = {
25904
29151
  parse: {
25905
29152
  dateInput: 'DD/MM/YYYY',
25906
29153
  },
@@ -25910,6 +29157,46 @@
25910
29157
  dateA11yLabel: 'LL',
25911
29158
  monthYearA11yLabel: 'MMMM YYYY',
25912
29159
  },
29160
+ }, ɵ1$1 = {
29161
+ parse: {},
29162
+ display: {
29163
+ dateInput: {
29164
+ year: "numeric",
29165
+ month: "2-digit",
29166
+ day: "2-digit"
29167
+ },
29168
+ monthInput: {
29169
+ month: "long"
29170
+ },
29171
+ datetimeInput: {
29172
+ year: "numeric",
29173
+ month: "2-digit",
29174
+ day: "2-digit",
29175
+ hour: "2-digit",
29176
+ minute: "2-digit"
29177
+ },
29178
+ timeInput: {
29179
+ hour: "2-digit",
29180
+ minute: "2-digit"
29181
+ },
29182
+ monthYearLabel: {
29183
+ year: "numeric",
29184
+ month: "short"
29185
+ },
29186
+ dateA11yLabel: {
29187
+ year: "numeric",
29188
+ month: "long",
29189
+ day: "numeric"
29190
+ },
29191
+ monthYearA11yLabel: {
29192
+ year: "numeric",
29193
+ month: "long"
29194
+ },
29195
+ popupHeaderDateLabel: {
29196
+ day: "2-digit",
29197
+ month: "short",
29198
+ }
29199
+ }
25913
29200
  };
25914
29201
  var SharedModule = /** @class */ (function () {
25915
29202
  function SharedModule(_injector) {
@@ -25974,6 +29261,7 @@
25974
29261
  angularMentions.MentionModule,
25975
29262
  DatepickerModule,
25976
29263
  MonthYearPickerModule,
29264
+ DatetimepickerModule,
25977
29265
  ],
25978
29266
  exports: [
25979
29267
  GIPIComponents,
@@ -26020,6 +29308,7 @@
26020
29308
  SelectButtonNextBatchComponent,
26021
29309
  DatepickerModule,
26022
29310
  MonthYearPickerModule,
29311
+ DatetimepickerModule,
26023
29312
  ],
26024
29313
  entryComponents: [
26025
29314
  GIPIConfirmationDialogComponent,
@@ -26041,7 +29330,11 @@
26041
29330
  },
26042
29331
  {
26043
29332
  provide: MAT_DATE_FORMATS,
26044
- useValue: ɵ0$3,
29333
+ useValue: ɵ0$5,
29334
+ },
29335
+ {
29336
+ provide: GIPI_DATETIME_FORMATS,
29337
+ useValue: ɵ1$1,
26045
29338
  },
26046
29339
  ]
26047
29340
  }),
@@ -27257,7 +30550,10 @@
27257
30550
  return this.baseService.router.url.split('/').filter(function (path) { return (path === 'view'); }).length > 0;
27258
30551
  };
27259
30552
  GIPIAbstractComponent.prototype.isListing = function () {
27260
- return this.baseService.router.url.split('/').filter(function (path) { return (path === 'new') || (path === 'edit') || (path === 'view'); }).length === 0;
30553
+ return this.baseService.router.url.split('/').filter(function (path) { return (path === 'new') || (path === 'edit') || (path === 'view') || (path === 'clone'); }).length === 0;
30554
+ };
30555
+ GIPIAbstractComponent.prototype.isCloning = function () {
30556
+ return this.baseService.router.url.split('/').filter(function (path) { return (path === 'clone'); }).length > 0;
27261
30557
  };
27262
30558
  GIPIAbstractComponent.prototype.hasPermission = function (permission) {
27263
30559
  if (StringUtil.isEmpty(permission)) {
@@ -27928,6 +31224,27 @@
27928
31224
  throw new Error(e);
27929
31225
  }
27930
31226
  };
31227
+ GIPIAbstractFindComponent.prototype.cloneRegister = function (id, permission) {
31228
+ id = this.handleEntityId(id);
31229
+ if (ObjectUtil.isNull(id)) {
31230
+ return;
31231
+ }
31232
+ if (StringUtil.isEmpty(permission) && ObjectUtil.isNull(this.basePermissionList)) {
31233
+ this.setFilterSessionStorage();
31234
+ this.navigateByUrl(this.getPath(), [this.getPath(), 'new', 'clone'], true);
31235
+ }
31236
+ else {
31237
+ if (StringUtil.isEmpty(permission) && !ObjectUtil.isNull(this.basePermissionList)) {
31238
+ permission = this.basePermissionList.MAKE;
31239
+ }
31240
+ if (!this.hasPermission(permission)) {
31241
+ this.addWarningMessage(exports.INJECTOR.get(APP_MESSAGES).NOT_PERMISSION);
31242
+ return;
31243
+ }
31244
+ this.setFilterSessionStorage();
31245
+ this.navigateByUrl(this.getPath(), [this.getPath(), 'new', 'clone', id], true);
31246
+ }
31247
+ };
27931
31248
  GIPIAbstractFindComponent.prototype.clear = function () {
27932
31249
  this.baseService.sessionStorageService.remove('filter');
27933
31250
  this.page = this.newPage();
@@ -29387,6 +32704,10 @@
29387
32704
  exports.BreakpointObserverService = BreakpointObserverService;
29388
32705
  exports.BrowserUtil = BrowserUtil;
29389
32706
  exports.ButtonComponent = ButtonComponent;
32707
+ exports.CLOCK_INNER_RADIUS = CLOCK_INNER_RADIUS;
32708
+ exports.CLOCK_OUTER_RADIUS = CLOCK_OUTER_RADIUS;
32709
+ exports.CLOCK_RADIUS = CLOCK_RADIUS;
32710
+ exports.CLOCK_TICK_RADIUS = CLOCK_TICK_RADIUS;
29390
32711
  exports.CalendarMonthYearComponent = CalendarMonthYearComponent;
29391
32712
  exports.CardComponent = CardComponent;
29392
32713
  exports.ChartDTO = ChartDTO;
@@ -29401,6 +32722,7 @@
29401
32722
  exports.DateRangePickerComponent = DateRangePickerComponent;
29402
32723
  exports.DateUtil = DateUtil;
29403
32724
  exports.DatepickerModule = DatepickerModule;
32725
+ exports.DatetimepickerModule = DatetimepickerModule;
29404
32726
  exports.DefaultMatCalendarRangeStrategy = DefaultMatCalendarRangeStrategy;
29405
32727
  exports.DialogDTO = DialogDTO;
29406
32728
  exports.DialogService = DialogService;
@@ -29428,6 +32750,19 @@
29428
32750
  exports.GIPIColDirective = GIPIColDirective;
29429
32751
  exports.GIPIConfirmationDialogComponent = GIPIConfirmationDialogComponent;
29430
32752
  exports.GIPIConnectedOverlayScrollHandler = GIPIConnectedOverlayScrollHandler;
32753
+ exports.GIPIDateAndTimePickerComponent = GIPIDateAndTimePickerComponent;
32754
+ exports.GIPIDatetimeAdapter = GIPIDatetimeAdapter;
32755
+ exports.GIPIDatetimepickerCalendarBodyComponent = GIPIDatetimepickerCalendarBodyComponent;
32756
+ exports.GIPIDatetimepickerCalendarCell = GIPIDatetimepickerCalendarCell;
32757
+ exports.GIPIDatetimepickerCalendarComponent = GIPIDatetimepickerCalendarComponent;
32758
+ exports.GIPIDatetimepickerClockComponent = GIPIDatetimepickerClockComponent;
32759
+ exports.GIPIDatetimepickerComponent = GIPIDatetimepickerComponent;
32760
+ exports.GIPIDatetimepickerContentComponent = GIPIDatetimepickerContentComponent;
32761
+ exports.GIPIDatetimepickerInputDirective = GIPIDatetimepickerInputDirective;
32762
+ exports.GIPIDatetimepickerInputEvent = GIPIDatetimepickerInputEvent;
32763
+ exports.GIPIDatetimepickerMonthViewComponent = GIPIDatetimepickerMonthViewComponent;
32764
+ exports.GIPIDatetimepickerToggleComponent = GIPIDatetimepickerToggleComponent;
32765
+ exports.GIPIDatetimepickerYearViewComponent = GIPIDatetimepickerYearViewComponent;
29431
32766
  exports.GIPIDomHandler = GIPIDomHandler;
29432
32767
  exports.GIPIDropdownMenuComponent = GIPIDropdownMenuComponent;
29433
32768
  exports.GIPIDynamicTabDirective = GIPIDynamicTabDirective;
@@ -29449,6 +32784,8 @@
29449
32784
  exports.GIPIInputSelectListboxComponent = GIPIInputSelectListboxComponent;
29450
32785
  exports.GIPIInputSelectPagedComponent = GIPIInputSelectPagedComponent;
29451
32786
  exports.GIPIInputSelectRadioComponent = GIPIInputSelectRadioComponent;
32787
+ exports.GIPINativeDatetimeAdapter = GIPINativeDatetimeAdapter;
32788
+ exports.GIPINativeDatetimeModule = GIPINativeDatetimeModule;
29452
32789
  exports.GIPINotificationComponent = GIPINotificationComponent;
29453
32790
  exports.GIPINoveltiesComponent = GIPINoveltiesComponent;
29454
32791
  exports.GIPIOverlayComponent = GIPIOverlayComponent;
@@ -29493,9 +32830,13 @@
29493
32830
  exports.GIPIUserProfileComponent = GIPIUserProfileComponent;
29494
32831
  exports.GIPI_BREAKPOINTS = GIPI_BREAKPOINTS;
29495
32832
  exports.GIPI_CUSTOM_BREAKPOINTS_PROVIDER = GIPI_CUSTOM_BREAKPOINTS_PROVIDER;
32833
+ exports.GIPI_DATETIMEPICKER_VALIDATORS = GIPI_DATETIMEPICKER_VALIDATORS;
32834
+ exports.GIPI_DATETIMEPICKER_VALUE_ACCESSOR = GIPI_DATETIMEPICKER_VALUE_ACCESSOR;
32835
+ exports.GIPI_DATETIME_FORMATS = GIPI_DATETIME_FORMATS;
29496
32836
  exports.GIPI_MONTH_YEAR_SCROLL_STRATEGY = GIPI_MONTH_YEAR_SCROLL_STRATEGY;
29497
32837
  exports.GIPI_MONTH_YEAR_SCROLL_STRATEGY_FACTORY = GIPI_MONTH_YEAR_SCROLL_STRATEGY_FACTORY;
29498
32838
  exports.GIPI_MONTH_YEAR_SCROLL_STRATEGY_FACTORY_PROVIDER = GIPI_MONTH_YEAR_SCROLL_STRATEGY_FACTORY_PROVIDER;
32839
+ exports.GIPI_NATIVE_DATETIME_FORMATS = GIPI_NATIVE_DATETIME_FORMATS;
29499
32840
  exports.IconComponent = IconComponent;
29500
32841
  exports.InputComponent = InputComponent;
29501
32842
  exports.InputCurrencyComponent = InputCurrencyComponent;
@@ -29552,6 +32893,7 @@
29552
32893
  exports.MonthYearPickerModule = MonthYearPickerModule;
29553
32894
  exports.MultitenantModel = MultitenantModel;
29554
32895
  exports.NativeDateAdapter = NativeDateAdapter;
32896
+ exports.NativeDatetimeModule = NativeDatetimeModule;
29555
32897
  exports.NavService = NavService;
29556
32898
  exports.NumberUtil = NumberUtil;
29557
32899
  exports.ObjectUtil = ObjectUtil;
@@ -29611,7 +32953,8 @@
29611
32953
  exports.ƟCMP = ƟCMP;
29612
32954
  exports.ƟFAC = ƟFAC;
29613
32955
  exports.ƟPROV = ƟPROV;
29614
- exports.ɵ0 = ɵ0$3;
32956
+ exports.ɵ0 = ɵ0$5;
32957
+ exports.ɵ1 = ɵ1$1;
29615
32958
  exports.ɵa = MAT_DATE_RANGE_INPUT_PARENT;
29616
32959
  exports.ɵb = MAT_CALENDAR_RANGE_STRATEGY_PROVIDER_FACTORY;
29617
32960
  exports.ɵc = MAT_CALENDAR_RANGE_STRATEGY_PROVIDER;
@@ -29629,6 +32972,8 @@
29629
32972
  exports.ɵo = ITSS_SELECT_SEARCH_DEFAULT_OPTIONS;
29630
32973
  exports.ɵq = MaterialModule;
29631
32974
  exports.ɵr = DatepickerComponent;
32975
+ exports.ɵs = slideCalendar;
32976
+ exports.ɵt = GIPIDatetimepickerMultiYearViewComponent;
29632
32977
 
29633
32978
  Object.defineProperty(exports, '__esModule', { value: true });
29634
32979