UNPKG

ngx-obelisco-example

Version:

Componentes funcionales y reutilizables para Angular.

1 lines 19.7 kB
{"version":3,"file":"ngx-obelisco-example-datepicker.mjs","sources":["../../../projects/ngx-obelisco/datepicker/i18n.constans.ts","../../../projects/ngx-obelisco/datepicker/o-datepicker.component.ts","../../../projects/ngx-obelisco/datepicker/o-datepicker.component.html","../../../projects/ngx-obelisco/datepicker/o-datepicker.module.ts","../../../projects/ngx-obelisco/datepicker/ngx-obelisco-example-datepicker.ts"],"sourcesContent":["export const I18N_VALUES: {\r\n [language: string]: {\r\n weekdays: string[];\r\n months: string[];\r\n weekLabel: string;\r\n };\r\n} = {\r\n ar: {\r\n weekdays: ['L', 'M', 'M', 'J', 'V', 'S', 'D'],\r\n months: [\r\n 'Enero',\r\n 'Febrero',\r\n 'Marzo',\r\n 'Abril',\r\n 'Mayo',\r\n 'Junio',\r\n 'Julio',\r\n 'Agosto',\r\n 'Septiembre',\r\n 'Octubre',\r\n 'Noviembre',\r\n 'Diciembre'\r\n ],\r\n weekLabel: 'sem'\r\n }\r\n // Otros idiomas\r\n};\r\n","import { Component, EventEmitter, Injectable, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { NgbDatepickerI18n, NgbCalendar, NgbDateStruct, NgbDate } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TasksService } from 'ngx-obelisco-example/core/services';\r\nimport { I18N_VALUES } from './i18n.constans';\r\nimport { Subject, takeUntil } from 'rxjs';\r\nimport { DatePickerTask, DatepickerDate } from 'ngx-obelisco-example/core/models';\r\n\r\nconst NOW = new Date();\r\n\r\n@Injectable()\r\nexport class I18n {\r\n language = 'ar';\r\n}\r\n\r\n@Injectable()\r\nexport class CustomDatepickerI18n extends NgbDatepickerI18n {\r\n constructor(private _i18n: I18n) {\r\n super();\r\n }\r\n\r\n getWeekdayLabel(weekday: number): string {\r\n return I18N_VALUES[this._i18n.language].weekdays[weekday - 1];\r\n }\r\n override getWeekLabel(): string {\r\n return I18N_VALUES[this._i18n.language].weekLabel;\r\n }\r\n getMonthShortName(month: number): string {\r\n return I18N_VALUES[this._i18n.language].months[month - 1];\r\n }\r\n getMonthFullName(month: number): string {\r\n return this.getMonthShortName(month);\r\n }\r\n getDayAriaLabel(date: DatepickerDate): string {\r\n return `${date.day}-${date.month}-${date.year}`;\r\n }\r\n}\r\n\r\n@Component({\r\n selector: 'o-datepicker',\r\n templateUrl: './o-datepicker.component.html',\r\n styleUrls: ['./o-datepicker.component.scss'],\r\n providers: [I18n, { provide: NgbDatepickerI18n, useClass: CustomDatepickerI18n }]\r\n})\r\nexport class ODatepickerComponent implements OnInit, OnDestroy {\r\n @Input() public isPopUp: boolean = false;\r\n @Input() public firstDayOfWeek: number = 7;\r\n @Input() public outsideDays: 'visible' | 'hidden' = 'hidden';\r\n @Input() public minDate: DatepickerDate = { year: new Date().getFullYear(), month: 1, day: 1 };\r\n @Input() public maxDate: DatepickerDate = { year: new Date().getFullYear() + 5, month: 12, day: 31 };\r\n @Input() public startDate: DatepickerDate = {\r\n year: NOW.getFullYear(),\r\n month: NOW.getMonth() + 1,\r\n day: NOW.getDate()\r\n };\r\n @Input() public disabledWeekends: boolean = false;\r\n @Input() public disabledDates: DatepickerDate[] = [];\r\n\r\n @Output() public dateSelected: EventEmitter<DatepickerDate> = new EventEmitter<DatepickerDate>();\r\n @Output() public taskSelected: EventEmitter<DatePickerTask[]> = new EventEmitter<DatePickerTask[]>();\r\n\r\n model: DatepickerDate = { year: NOW.getFullYear(), month: NOW.getMonth() + 1, day: NOW.getDate() };\r\n private onDestroy$ = new Subject<void>();\r\n\r\n constructor(private calendar: NgbCalendar, private taskService: TasksService) {}\r\n\r\n ngOnInit() {\r\n if (!this.startDate) {\r\n this.startDate = {\r\n year: NOW.getFullYear(),\r\n month: NOW.getMonth() + 1,\r\n day: NOW.getDate()\r\n };\r\n }\r\n this.model = this.startDate;\r\n }\r\n\r\n selectToday() {\r\n this.model = {\r\n year: NOW.getFullYear(),\r\n month: NOW.getMonth() + 1,\r\n day: NOW.getDate()\r\n };\r\n }\r\n\r\n isWeekend(date: DatepickerDate) {\r\n const d = new Date(date.year, date.month - 1, date.day);\r\n return d.getDay() === 0 || d.getDay() === 6;\r\n }\r\n\r\n isDisabled(date: DatepickerDate, current: { month: number }) {\r\n if (this.disabledWeekends && this.isWeekend(date)) {\r\n return true;\r\n }\r\n\r\n return date.month !== current.month || this.isDateDisabled(date);\r\n }\r\n\r\n isDateDisabled(date: DatepickerDate): boolean {\r\n return this.disabledDates.some(\r\n (disabledDate) =>\r\n disabledDate.year === date.year && disabledDate.month === date.month && disabledDate.day === date.day\r\n );\r\n }\r\n\r\n hasTask(date: DatepickerDate) {\r\n return this.dateHasTask(date);\r\n }\r\n\r\n showTasks(date: DatepickerDate, event: MouseEvent) {\r\n if (this.isDateDisabled(date) || (this.disabledWeekends && this.isWeekend(date))) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n return;\r\n }\r\n\r\n this.taskService.task$.value.filter((task) => {\r\n const taskDate = task.date ? new Date(task.date.year, task.date.month - 1, task.date.day) : new Date();\r\n return (\r\n taskDate.getDate() === date.day &&\r\n taskDate.getMonth() + 1 === date.month &&\r\n taskDate.getFullYear() === date.year\r\n );\r\n });\r\n }\r\n\r\n dateHasTask(date: DatepickerDate) {\r\n return this.taskService.task$.value.some((task) => {\r\n const taskDate = task.date ? new Date(task.date.year, task.date.month - 1, task.date.day) : new Date();\r\n return (\r\n taskDate.getDate() === date.day &&\r\n taskDate.getMonth() + 1 === date.month &&\r\n taskDate.getFullYear() === date.year\r\n );\r\n });\r\n }\r\n\r\n gettaskSelected(selectedDate: DatepickerDate): DatePickerTask[] {\r\n let taskOfDate: DatePickerTask[] = [];\r\n this.taskService.task$.pipe(takeUntil(this.onDestroy$)).subscribe((tasks) => {\r\n tasks.forEach((task) => {\r\n const taskDate = new Date(task.date!.year, task.date!.month - 1, task.date!.day);\r\n if (\r\n taskDate.getDate() === selectedDate.day &&\r\n taskDate.getMonth() + 1 === selectedDate.month &&\r\n taskDate.getFullYear() === selectedDate.year\r\n ) {\r\n taskOfDate = task.task ? task.task : [];\r\n }\r\n });\r\n });\r\n\r\n return taskOfDate;\r\n }\r\n\r\n onDateChange(newDate: DatepickerDate) {\r\n if (this.disabledWeekends && this.isWeekend(newDate)) {\r\n return;\r\n }\r\n\r\n this.dateSelected.emit(newDate);\r\n const tasks = this.gettaskSelected(newDate);\r\n this.taskSelected.emit(tasks);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.onDestroy$.next();\r\n this.onDestroy$.complete();\r\n }\r\n}\r\n","<!-- PopUp = false -->\r\n<ngb-datepicker\r\n #dp\r\n *ngIf=\"!isPopUp\"\r\n [(ngModel)]=\"model\"\r\n [dayTemplate]=\"customDay\"\r\n [firstDayOfWeek]=\"firstDayOfWeek\"\r\n [outsideDays]=\"outsideDays\"\r\n [minDate]=\"minDate\"\r\n [maxDate]=\"maxDate\"\r\n [startDate]=\"startDate\"\r\n (ngModelChange)=\"onDateChange($event)\"\r\n></ngb-datepicker>\r\n\r\n<!-- PopUp -->\r\n<form class=\"form-inline\" *ngIf=\"isPopUp\">\r\n <div class=\"form-group\">\r\n <div class=\"input-group\">\r\n <input\r\n class=\"form-control\"\r\n placeholder=\"dd-mm-yyyy\"\r\n name=\"dp\"\r\n ngbDatepicker\r\n #d=\"ngbDatepicker\"\r\n [(ngModel)]=\"model\"\r\n [dayTemplate]=\"customDay\"\r\n [firstDayOfWeek]=\"firstDayOfWeek\"\r\n [outsideDays]=\"outsideDays\"\r\n [minDate]=\"minDate\"\r\n [maxDate]=\"maxDate\"\r\n [startDate]=\"startDate\"\r\n (ngModelChange)=\"onDateChange($event)\"\r\n />\r\n <div class=\"input-group-append\">\r\n <o-button ariaLabel=\"calendario\" (click)=\"d.toggle()\">\r\n <i class=\"bx bxs-calendar\"></i>\r\n </o-button>\r\n </div>\r\n </div>\r\n </div>\r\n</form>\r\n\r\n<!-- Custom Day -->\r\n<ng-template\r\n #customDay\r\n let-date\r\n let-currentMonth=\"currentMonth\"\r\n let-selected=\"selected\"\r\n let-disabled=\"disabled\"\r\n let-focused=\"focused\"\r\n>\r\n <span\r\n class=\"custom-day\"\r\n [class.focused]=\"focused\"\r\n [class.bg-primary]=\"selected\"\r\n [class.hidden]=\"date.month !== currentMonth\"\r\n [class.has-task]=\"hasTask(date)\"\r\n (click)=\"showTasks(date, $event)\"\r\n [class.disabled]=\"disabled || (disabledWeekends && isWeekend(date)) || isDateDisabled(date)\"\r\n >\r\n {{ date.day }}\r\n </span>\r\n</ng-template>\r\n\r\n<!-- En popup siempre esta fijo el dia actual -->\r\n<!-- En popup el formato de la fecha -->\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ODatepickerComponent } from './o-datepicker.component';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { OButtonModule } from 'ngx-obelisco-example/button';\r\n\r\n@NgModule({\r\n imports: [CommonModule, FormsModule, NgbModule, OButtonModule],\r\n declarations: [ODatepickerComponent],\r\n exports: [ODatepickerComponent],\r\n bootstrap: [ODatepickerComponent]\r\n})\r\nexport class ODatepickerModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}