ps-toolkit-ui 1.14.25 → 1.14.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2438,10 +2438,11 @@
2438
2438
  return OptionClass;
2439
2439
  }());
2440
2440
  var DayClass = /** @class */ (function () {
2441
- function DayClass(day, today, selected) {
2441
+ function DayClass(day, today, selected, active) {
2442
2442
  this.day = day;
2443
2443
  this.today = today;
2444
2444
  this.selected = selected;
2445
+ this.active = active;
2445
2446
  }
2446
2447
  return DayClass;
2447
2448
  }());
@@ -4181,16 +4182,20 @@
4181
4182
  var days = [];
4182
4183
  if (startWeek !== 6) {
4183
4184
  for (var i = countDayInPreviousMonth - startWeek; i <= countDayInPreviousMonth; i++) {
4184
- previousDays.push(new DayClass(i, this.isToday(previousMonth, i), false));
4185
+ previousDays.push(new DayClass(i, this.isToday(previousMonth, i), false, false));
4185
4186
  }
4186
4187
  }
4187
4188
  for (var i = 1; i <= countDayInMonth; i++) {
4188
- days.push(new DayClass(i, this.isToday(this.active, i), this.isSelected(this.active, i)));
4189
+ var isActive = true;
4190
+ if (this.inp.allowed != null) {
4191
+ isActive = this.isActive(this.active, i);
4192
+ }
4193
+ days.push(new DayClass(i, this.isToday(this.active, i), this.isSelected(this.active, i), isActive));
4189
4194
  }
4190
4195
  var end = (days.length + previousDays.length) % 7;
4191
4196
  if (end !== 0) {
4192
4197
  for (var i = 1; i <= 7 - end; i++) {
4193
- nextDays.push(new DayClass(i, this.isToday(nextMonth, i), false));
4198
+ nextDays.push(new DayClass(i, this.isToday(nextMonth, i), false, false));
4194
4199
  }
4195
4200
  }
4196
4201
  this.previousDays = previousDays;
@@ -4202,6 +4207,38 @@
4202
4207
  var year = parseInt(m.format('jYYYY'), 10);
4203
4208
  return year === this.todayYear && month === this.todayMonth && d === this.todayDay;
4204
4209
  };
4210
+ FormDateComponent.prototype.isActive = function (m, d) {
4211
+ var _a, _b, _c, _d;
4212
+ var month = parseInt(m.format('jMM'), 10);
4213
+ var year = parseInt(m.format('jYYYY'), 10);
4214
+ var start = (_b = (_a = this.inp.allowed.start) === null || _a === void 0 ? void 0 : _a.locale('fa')) !== null && _b !== void 0 ? _b : null;
4215
+ var end = (_d = (_c = this.inp.allowed.end) === null || _c === void 0 ? void 0 : _c.locale('fa')) !== null && _d !== void 0 ? _d : null;
4216
+ console.log(start, end);
4217
+ console.log({
4218
+ year: {
4219
+ start: start.format('jYYYY'),
4220
+ end: end.format('jYYYY'),
4221
+ year: year
4222
+ },
4223
+ month: {
4224
+ start: start.format('jMM'),
4225
+ end: end.format('jMM'),
4226
+ year: year
4227
+ },
4228
+ day: {
4229
+ start: start.format('jDD'),
4230
+ end: end.format('jDD'),
4231
+ d: d
4232
+ },
4233
+ });
4234
+ if (start !== null && (parseInt(start.format('jYYYY'), 10) < year || parseInt(start.format('jMM'), 10) < month || parseInt(start.format('jDD'), 10) < d)) {
4235
+ return false;
4236
+ }
4237
+ if (end !== null && (parseInt(end.format('jYYYY'), 10) > year || parseInt(end.format('jMM'), 10) > month || parseInt(end.format('jDD'), 10) > d)) {
4238
+ return false;
4239
+ }
4240
+ return true;
4241
+ };
4205
4242
  FormDateComponent.prototype.isSelected = function (m, d) {
4206
4243
  if (this.inp.value == null) {
4207
4244
  return false;
@@ -4338,7 +4375,7 @@
4338
4375
  FormDateComponent.decorators = [
4339
4376
  { type: core.Component, args: [{
4340
4377
  selector: 'lib-form-date',
4341
- template: "<div #inputDiv [id]=\"inp.id + 'DateInput'\" [style]=\"inp.style\" [className]=\"'form-input-con date w-100' + (inp.error == null ? '' : ' error') + (inp.disabled ? ' disabled' : '') + ' ' + inp.class\">\r\n <div class=\"form-input\" (click)=\"toggleCalendar()\">\r\n <div *ngIf=\"inp.displayLabel\" class=\"label\"><i *ngIf=\"inp.required\" class=\"fas fa-star-of-life required-icon\"></i>{{inp.getLabel()}}</div>\r\n <div class=\"w-100 p-r\">\r\n <i *ngIf=\"inp.icon != null || inp.loading\" #inputIcon [className]=\"(inp.loading ? 'fa-duotone fa-spin fa-spinner' : inp.icon) + ' icon'\"></i>\r\n <i *ngIf=\"inp.withClear && inp.value\" (click)=\"inp.clear()\" class=\"fa-duotone fa-eraser clear-icon\"></i>\r\n <input (keydown)=\"onKeyDown($event)\" (keyup)=\"onKeyUp($event)\" (focusout)=\"onFocusOut()\" [disabled]=\"inp.disabled\" [(ngModel)]=\"inp.search\" #inputBase [name]=\"inp.name\" [placeholder]=\"inp.l(inp.name)\" class=\"control\" autocomplete=\"off\" maxlength=\"\">\r\n <div #inputCalendarDiv class=\"calendar\">\r\n <div class=\"header\">\r\n <i (click)=\"add(state === 'day' || state === 'month' ? -1 : -20)\" class=\"fas fa-angle-right previous-month\"></i>\r\n <div class=\"title\">\r\n <div (click)=\"(state === 'day' || state === 'month') && changeState('year')\" class=\"year header-item\">\r\n {{active.format('jYYYY')}}\r\n </div>\r\n <div (click)=\"state === 'day' && changeState('month')\" class=\"month header-item\">\r\n {{getActiveMonth()}}\r\n </div>\r\n </div>\r\n <i (click)=\"add(state === 'day' || state === 'month' ? 1 : 20)\" class=\"fas fa-angle-left next-month\"></i>\r\n </div>\r\n <div [style]=\"state === 'day' ? {} : {display: 'none'}\" class=\"days-con\">\r\n <div class=\"day-names underline\">\r\n <div class=\"item\">\u0634</div>\r\n <div class=\"item\">\u06CC</div>\r\n <div class=\"item\">\u062F</div>\r\n <div class=\"item\">\u0633</div>\r\n <div class=\"item\">\u0686</div>\r\n <div class=\"item\">\u067E</div>\r\n <div class=\"item\">\u062C</div>\r\n </div>\r\n <div class=\"days\">\r\n <div [className]=\"'item not-in-month' + (d.today ? ' today' : '')\" *ngFor=\"let d of previousDays\">{{d.day}}</div>\r\n <div (click)=\"selectDate(d)\" [className]=\"'item' + (d.today ? ' today' : '') + (d.selected ? ' selected' : '')\" *ngFor=\"let d of days\">{{d.day}}</div>\r\n <div [className]=\"'item not-in-month' + (d.today ? ' today' : '')\" *ngFor=\"let d of nextDays\">{{d.day}}</div>\r\n </div>\r\n </div>\r\n <div [style]=\"state === 'month' ? {} : {display: 'none'}\" class=\"months-con\">\r\n <div [className]=\"(i + 1 == active.format('jM') ? 'selected ' : '') + 'month'\" (click)=\"changeMonth(i + 1)\" *ngFor=\"let m of months; let i = index\">{{m}}</div>\r\n </div>\r\n <div [style]=\"state === 'year' ? {} : {display: 'none'}\" class=\"years-con\">\r\n <div [className]=\"(y == active.format('jYYYY') ? 'selected ' : '') + 'year'\" (click)=\"changeYear(y)\" *ngFor=\"let y of getYears()\">{{y}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n",
4378
+ template: "<div #inputDiv [id]=\"inp.id + 'DateInput'\" [style]=\"inp.style\" [className]=\"'form-input-con date w-100' + (inp.error == null ? '' : ' error') + (inp.disabled ? ' disabled' : '') + ' ' + inp.class\">\r\n <div class=\"form-input\" (click)=\"toggleCalendar()\">\r\n <div *ngIf=\"inp.displayLabel\" class=\"label\"><i *ngIf=\"inp.required\" class=\"fas fa-star-of-life required-icon\"></i>{{inp.getLabel()}}</div>\r\n <div class=\"w-100 p-r\">\r\n <i *ngIf=\"inp.icon != null || inp.loading\" #inputIcon [className]=\"(inp.loading ? 'fa-duotone fa-spin fa-spinner' : inp.icon) + ' icon'\"></i>\r\n <i *ngIf=\"inp.withClear && inp.value\" (click)=\"inp.clear()\" class=\"fa-duotone fa-eraser clear-icon\"></i>\r\n <input (keydown)=\"onKeyDown($event)\" (keyup)=\"onKeyUp($event)\" (focusout)=\"onFocusOut()\" [disabled]=\"inp.disabled\" [(ngModel)]=\"inp.search\" #inputBase [name]=\"inp.name\" [placeholder]=\"inp.l(inp.name)\" class=\"control\" autocomplete=\"off\" maxlength=\"\">\r\n <div #inputCalendarDiv class=\"calendar\">\r\n <div class=\"header\">\r\n <i (click)=\"add(state === 'day' || state === 'month' ? -1 : -20)\" class=\"fas fa-angle-right previous-month\"></i>\r\n <div class=\"title\">\r\n <div (click)=\"(state === 'day' || state === 'month') && changeState('year')\" class=\"year header-item\">\r\n {{active.format('jYYYY')}}\r\n </div>\r\n <div (click)=\"state === 'day' && changeState('month')\" class=\"month header-item\">\r\n {{getActiveMonth()}}\r\n </div>\r\n </div>\r\n <i (click)=\"add(state === 'day' || state === 'month' ? 1 : 20)\" class=\"fas fa-angle-left next-month\"></i>\r\n </div>\r\n <div [style]=\"state === 'day' ? {} : {display: 'none'}\" class=\"days-con\">\r\n <div class=\"day-names underline\">\r\n <div class=\"item\">\u0634</div>\r\n <div class=\"item\">\u06CC</div>\r\n <div class=\"item\">\u062F</div>\r\n <div class=\"item\">\u0633</div>\r\n <div class=\"item\">\u0686</div>\r\n <div class=\"item\">\u067E</div>\r\n <div class=\"item\">\u062C</div>\r\n </div>\r\n <div class=\"days\">\r\n <div [className]=\"'item not-in-month' + (d.today ? ' today' : '')\" *ngFor=\"let d of previousDays\">{{d.day}}</div>\r\n <div (click)=\"selectDate(d)\" [className]=\"'item' + (d.today ? ' today' : '') + (d.selected ? ' selected' : '') + (!d.active ? ' not-in-month' : '')\" *ngFor=\"let d of days\">{{d.day}}</div>\r\n <div [className]=\"'item not-in-month' + (d.today ? ' today' : '')\" *ngFor=\"let d of nextDays\">{{d.day}}</div>\r\n </div>\r\n </div>\r\n <div [style]=\"state === 'month' ? {} : {display: 'none'}\" class=\"months-con\">\r\n <div [className]=\"(i + 1 == active.format('jM') ? 'selected ' : '') + 'month'\" (click)=\"changeMonth(i + 1)\" *ngFor=\"let m of months; let i = index\">{{m}}</div>\r\n </div>\r\n <div [style]=\"state === 'year' ? {} : {display: 'none'}\" class=\"years-con\">\r\n <div [className]=\"(y == active.format('jYYYY') ? 'selected ' : '') + 'year'\" (click)=\"changeYear(y)\" *ngFor=\"let y of getYears()\">{{y}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n",
4342
4379
  styles: [".form-input-con.date{padding:0 15px;position:relative}.form-input-con.date .form-input{float:right;position:relative;width:100%}.form-input-con.date .form-input .label{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;cursor:default;direction:rtl;float:right;font-size:12px;height:20px;line-height:20px;margin-bottom:3px;padding:0 10px;text-align:right;width:100%}.form-input-con.date.error .form-input .label{color:var(--red);font-size:10px}.form-input-con.date .form-input .label .required-icon{color:var(--red);font-size:9px;height:20px;line-height:20px;text-align:center;width:20px}.form-input-con.date .form-input .control{background-color:#fff;background-image:none;border:none;border:var(--border-input);border-radius:var(--border-radius-base);color:var(--black);display:block;font-size:11px;height:35px;padding:5px 35px;position:relative;text-align:center;width:100%;z-index:2}.form-input-con.date .form-input .control:focus{border-radius:var(--border-radius-base) var(--border-radius-base) var(--border-radius-base) 0}.form-input-con.date.top .form-input .control:focus{border-radius:0 var(--border-radius-base) var(--border-radius-base) var(--border-radius-base)}.form-input-con.date .form-input .control:focus,.form-input-con.date .form-input:hover .control{border:var(--border-input-dark);outline:none}.form-input-con.date .form-input i.icon{color:var(--primary);cursor:text;font-size:13px;left:0;line-height:35px}.form-input-con.date .form-input i.clear-icon,.form-input-con.date .form-input i.icon{bottom:0;height:35px;position:absolute;text-align:center;transition:all .35s ease-in-out;width:35px;z-index:3}.form-input-con.date .form-input i.clear-icon{color:var(--red);cursor:pointer;font-size:14px;line-height:38px;right:0}.form-input-con.date.disabled .form-input .control,.form-input-con.date.disabled .form-input .label,.form-input-con.date.disabled .form-input i.icon{cursor:default;filter:blur(.5px);opacity:.7}.form-input-con.date.error .form-input .control,.form-input-con.date.error .form-input i.icon{color:var(--red-light)}.form-input-con.date.error .form-input .control{border:var(--border-input-red)}.form-input-con.date.error .form-input .control:focus,.form-input-con.date.error .form-input:hover .control{border:var(--border-input-red-dark)}.form-input-con.date .form-input .calendar{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background-color:#fff;border:var(--border-input);border-radius:0 0 var(--border-radius-base) var(--border-radius-base);color:var(--black);height:235px;left:0;overflow:hidden;position:absolute;top:-200000px;width:200px;z-index:102}.form-input-con.date .form-input .control:focus+.calendar{top:35px!important}.form-input-con.date.top .form-input .control:focus+.calendar{border-radius:var(--border-radius-base) var(--border-radius-base) 0 0;bottom:35px;top:unset!important}.form-input-con.date .form-input .days-con{float:right;width:100%}.form-input-con.date .form-input .calendar .header{background:var(--black-white);float:right;width:100%}.form-input-con.date .form-input .calendar .header .next-month,.form-input-con.date .form-input .calendar .header .previous-month{cursor:pointer;float:right;font-size:15px;height:30px;line-height:30px;text-align:center;width:30px}.form-input-con.date .form-input .calendar .header .next-month:hover,.form-input-con.date .form-input .calendar .header .previous-month:hover{background:var(--black-white)}.form-input-con.date .form-input .calendar .header .title{float:right;font-size:12px;font-weight:700;height:30px;line-height:30px;text-align:center;width:calc(100% - 60px)}.form-input-con.date .form-input .calendar .header .header-item{background-color:#fff;border:var(--border-input);border-radius:var(--border-radius-base);cursor:pointer;float:right;height:20px;line-height:20px;margin-right:5px;margin-top:5px;text-align:center}.form-input-con.date .form-input .calendar .header .header-item:hover{background-color:var(--base-white)}.form-input-con.date .form-input .calendar .header .header-item.year{width:calc(40% - 10px)}.form-input-con.date .form-input .calendar .header .header-item.month{width:calc(60% - 10px)}.form-input-con.date .form-input .calendar .days-con .day-names{float:right;font-size:12px;font-weight:200;position:relative;text-align:center;width:100%}.form-input-con.date .form-input .calendar .days-con .day-names .item{float:right;font-size:12px;height:25px;line-height:25px;text-align:center;width:14.28571%}.form-input-con.date .form-input .calendar .days-con .days{float:right;font-size:12px;text-align:center;width:100%}.form-input-con.date .form-input .calendar .days-con .days .item{cursor:pointer;float:right;font-size:11px;height:30px;line-height:30px;text-align:center;width:14.28571%}.form-input-con.date .form-input .calendar .days-con .days .item.not-in-month{background-color:unset!important;cursor:default;opacity:.5}.form-input-con.date .form-input .calendar .days-con .days .item:hover{background-color:var(--black-white)}.form-input-con.date .form-input .calendar .days-con .days .item.not-in-month:hover{background-color:unset}.form-input-con.date .form-input .calendar .days-con .days .item.today{background-color:var(--black-white)}.form-input-con.date .form-input .calendar .days-con .days .item.selected{background-color:var(--primary);color:#fff}.form-input-con.date .form-input .calendar .months-con{float:right;width:100%}.form-input-con.date .form-input .calendar .months-con .month{cursor:pointer;float:right;font-size:11px;height:51.25px;line-height:51.25px;text-align:center;width:33.33333%}.form-input-con.date .form-input .calendar .months-con .month.selected,.form-input-con.date .form-input .calendar .months-con .month:hover{background-color:var(--black-white)}.form-input-con.date .form-input .calendar .years-con{float:right;width:100%}.form-input-con.date .form-input .calendar .years-con .year{cursor:pointer;float:right;font-size:11px;height:41px;line-height:41px;text-align:center;width:25%}.form-input-con.date .form-input .calendar .years-con .year.selected,.form-input-con.date .form-input .calendar .years-con .year:hover{background-color:var(--black-white)}.form-input-con.date.table-search{float:right;width:100%}.form-input-con.date.h-30 .form-input .control{height:30px;padding:5px 30px}.form-input-con.date.h-30 .form-input i.icon{height:30px;line-height:30px;width:30px}.form-input-con.date.h-30 .form-input .control:focus+.calendar{top:30px!important}.form-input-con.date.top.h-30 .form-input .control:focus+.calendar{bottom:30px}.form-input-con.date.h-25 .form-input .control{height:25px;padding:5px}.form-input-con.date.h-25 .form-input i.icon{display:none}.form-input-con.date.h-25 .form-input .control:focus+.calendar{top:25px!important}.form-input-con.date.top.h-25 .form-input .control:focus+.calendar{bottom:25px}.form-input-con.date.h-25 .form-input .control::-moz-placeholder,.form-input-con.date.h-25 .form-input .control::-webkit-input-placeholder{font-size:10px;font-weight:200}"]
4343
4380
  },] }
4344
4381
  ];
@@ -4574,7 +4611,7 @@
4574
4611
  { type: core.Component, args: [{
4575
4612
  selector: 'lib-form-file',
4576
4613
  template: "<label #inputDiv [id]=\"id + 'FileInput'\" [for]=\"id + 'FileInputBase'\" [className]=\"'form-input-con file w-100' + (inp.error == null ? '' : ' error') + (inp.disabled || inp.loading ? ' disabled' : '') + (inp.value != null && inp.value != '' ? ' has-value' : '') + ' ' + inp.class\">\r\n <div class=\"form-input\" (click)=\"onClick()\">\r\n <div *ngIf=\"inp.displayLabel\" class=\"label\"><i *ngIf=\"inp.required\" class=\"fas fa-star-of-life required-icon\"></i>{{inp.getLabel()}}</div>\r\n <input #inputBaseFile class=\"input-base-file\" type=\"file\" [id]=\"id + 'FileInputBase'\" [multiple]=\"inp.multiple\" (change)=\"onChange($event)\">\r\n <input #inputBase type=\"text\" class=\"input-base\" (keydown)=\"onKeyDown($event)\" (focusin)=\"onFocusIn()\">\r\n <div class=\"control\">\r\n <div class=\"title\">{{title()}}</div>\r\n <div class=\"button\">{{inp.multiple ? inp.l(\"ChooseFiles\") : inp.l(\"ChooseFile\")}}</div>\r\n </div>\r\n <i *ngIf=\"inp.icon != null || inp.loading\" #inputIcon [className]=\"(inp.loading ? 'fa-duotone fa-spin fa-spinner' : inp.icon) + ' icon'\"></i>\r\n </div>\r\n</label>\r\n",
4577
- styles: [".form-input-con.file{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;cursor:pointer;padding:0 15px;position:relative}.form-input-con.file .form-input{float:right;position:relative;width:100%}.form-input-con.file .form-input .input-base,.form-input-con.file .form-input .input-base-file{cursor:pointer;height:0;opacity:0;position:absolute;right:50%;top:50%;width:0;z-index:1}.form-input-con.file .form-input .control{background-color:#fff;border:var(--border-input);border-radius:var(--border-radius-base);float:left;font-size:11px;height:35px;line-height:35px;overflow:hidden;padding:0 135px 0 35px;position:relative;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;z-index:2}.form-input-con.file .form-input .control:hover,.form-input-con.file .form-input .input-base:focus+.control{border:var(--border-input-dark);outline:none}.form-input-con.file .form-input i.icon{bottom:0;color:var(--primary);font-size:13px;height:35px;left:0;line-height:35px;position:absolute;text-align:center;width:35px;z-index:2}.form-input-con.file .form-input .label{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;cursor:default;direction:rtl;float:right;font-size:12px;height:20px;line-height:20px;margin-bottom:3px;padding:0 10px;text-align:right;width:100%}.form-input-con.file .form-input .label .required-icon{color:var(--red);font-size:9px;height:20px;line-height:20px;text-align:center;width:20px}.form-input-con.file .form-input .control .title{float:right;width:100%}.form-input-con.file .form-input .control .button{background-color:var(--green);border-radius:0 var(--border-radius-base) var(--border-radius-base) 0;bottom:0;color:#fff;font-size:10px;height:35px;line-height:35px;position:absolute;right:0;text-align:center;width:100px;z-index:2}.form-input-con.file .form-input .button:hover,.form-input-con.file .form-input .control:hover .button,.form-input-con.file .form-input .input-base:focus+.control .button{background-color:var(--green-dark)}.form-input-con.file.error .form-input .control{border:var(--border-input-red)}.form-input-con.file.error .form-input .label{color:var(--red);font-size:10px}.form-input-con.file.error .form-input .control,.form-input-con.file.error .form-input .icon{color:var(--red)}.form-input-con.file.disabled{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;box-shadow:unset;cursor:default;filter:blur(.5px);opacity:.7;pointer-events:none}.form-input-con.file.h-40 .form-input .control{font-size:13px;height:40px;line-height:40px}.form-input-con.file.has-value.h-40 .form-input .control{direction:ltr;font-size:9px;height:40px}.form-input-con.file.h-40 .form-input .control .button,.form-input-con.file.h-40 .form-input i.icon{height:40px;line-height:40px}form-input-con.file.h-30 .form-input .control{height:30px;line-height:30px}.form-input-con.file.h-30 .form-input .control{direction:ltr;font-size:9px;height:30px;line-height:30px}.form-input-con.file.h-30 .form-input .control .button,.form-input-con.file.h-30 .form-input i.icon{height:30px;line-height:30px}"]
4614
+ styles: [".form-input-con.file{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;cursor:pointer;padding:0 15px;position:relative}.form-input-con.file .form-input{float:right;position:relative;width:100%}.form-input-con.file .form-input .input-base,.form-input-con.file .form-input .input-base-file{cursor:pointer;height:0;opacity:0;position:absolute;right:50%;top:50%;width:0;z-index:1}.form-input-con.file .form-input .control{background-color:#fff;border:var(--border-input);border-radius:var(--border-radius-base);float:left;font-size:11px;height:35px;line-height:35px;overflow:hidden;padding:0 135px 0 35px;position:relative;text-align:center;text-overflow:ellipsis;width:100%;z-index:2}.form-input-con.file .form-input .control .title{-webkit-box-orient:vertical;-webkit-line-clamp:1;display:-webkit-box;overflow:hidden}.form-input-con.file .form-input .control:hover,.form-input-con.file .form-input .input-base:focus+.control{border:var(--border-input-dark);outline:none}.form-input-con.file .form-input i.icon{bottom:0;color:var(--primary);font-size:13px;height:35px;left:0;line-height:35px;position:absolute;text-align:center;width:35px;z-index:2}.form-input-con.file .form-input .label{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;cursor:default;direction:rtl;float:right;font-size:12px;height:20px;line-height:20px;margin-bottom:3px;padding:0 10px;text-align:right;width:100%}.form-input-con.file .form-input .label .required-icon{color:var(--red);font-size:9px;height:20px;line-height:20px;text-align:center;width:20px}.form-input-con.file .form-input .control .title{float:right;width:100%}.form-input-con.file .form-input .control .button{background-color:var(--green);border-radius:0 var(--border-radius-base) var(--border-radius-base) 0;bottom:0;color:#fff;font-size:10px;height:35px;line-height:35px;position:absolute;right:0;text-align:center;width:100px;z-index:2}.form-input-con.file .form-input .button:hover,.form-input-con.file .form-input .control:hover .button,.form-input-con.file .form-input .input-base:focus+.control .button{background-color:var(--green-dark)}.form-input-con.file.error .form-input .control{border:var(--border-input-red)}.form-input-con.file.error .form-input .label{color:var(--red);font-size:10px}.form-input-con.file.error .form-input .control,.form-input-con.file.error .form-input .icon{color:var(--red)}.form-input-con.file.disabled{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;box-shadow:unset;cursor:default;filter:blur(.5px);opacity:.7;pointer-events:none}.form-input-con.file.h-40 .form-input .control{font-size:13px;height:40px;line-height:40px}.form-input-con.file.has-value.h-40 .form-input .control{direction:ltr;font-size:9px;height:40px}.form-input-con.file.h-40 .form-input .control .button,.form-input-con.file.h-40 .form-input i.icon{height:40px;line-height:40px}form-input-con.file.h-30 .form-input .control{height:30px;line-height:30px}.form-input-con.file.h-30 .form-input .control{direction:ltr;font-size:9px;height:30px;line-height:30px}.form-input-con.file.h-30 .form-input .control .button,.form-input-con.file.h-30 .form-input i.icon{height:30px;line-height:30px}"]
4578
4615
  },] }
4579
4616
  ];
4580
4617
  FormFileComponent.ctorParameters = function () { return []; };
@@ -7771,7 +7808,8 @@
7771
7808
  if (v === void 0) { v = null; }
7772
7809
  return lang.get('Public', null, key, v);
7773
7810
  };
7774
- this.months = [this.l('Month1'), this.l('Month2'), this.l('Month3'), this.l('Month4'), this.l('Month5'), this.l('Month6'), this.l('Month7'), this.l('Month8'), this.l('Month9'), this.l('Month10'), this.l('Month11'), this.l('Month12')];
7811
+ this.months = [this.l('Month1'), this.l('Month2'), this.l('Month3'), this.l('Month4'), this.l('Month5'),
7812
+ this.l('Month6'), this.l('Month7'), this.l('Month8'), this.l('Month9'), this.l('Month10'), this.l('Month11'), this.l('Month12')];
7775
7813
  this.setActive(moment__namespace());
7776
7814
  }
7777
7815
  CalendarComponent.prototype.changeState = function (s) {
@@ -7811,16 +7849,16 @@
7811
7849
  var days = [];
7812
7850
  if (startWeek !== 6) {
7813
7851
  for (var i = countDayInPreviousMonth - startWeek; i <= countDayInPreviousMonth; i++) {
7814
- previousDays.push(new DayClass(i, this.isToday(previousMonth, i), false));
7852
+ previousDays.push(new DayClass(i, this.isToday(previousMonth, i), false, false));
7815
7853
  }
7816
7854
  }
7817
7855
  for (var i = 1; i <= countDayInMonth; i++) {
7818
- days.push(new DayClass(i, this.isToday(this.active, i), false));
7856
+ days.push(new DayClass(i, this.isToday(this.active, i), false, true));
7819
7857
  }
7820
7858
  var end = (days.length + previousDays.length) % 7;
7821
7859
  if (end !== 0) {
7822
7860
  for (var i = 1; i <= 7 - end; i++) {
7823
- nextDays.push(new DayClass(i, this.isToday(nextMonth, i), false));
7861
+ nextDays.push(new DayClass(i, this.isToday(nextMonth, i), false, false));
7824
7862
  }
7825
7863
  }
7826
7864
  this.previousDays = previousDays;