ng-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
1 lines • 21.3 kB
Source Map (JSON)
{"version":3,"file":"ng-zorro-antd-calendar.mjs","sources":["../../components/calendar/calendar-cells.ts","../../components/calendar/calendar-header.component.ts","../../components/calendar/calendar.component.ts","../../components/calendar/calendar.module.ts","../../components/calendar/public-api.ts","../../components/calendar/ng-zorro-antd-calendar.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive } from '@angular/core';\n\n@Directive({\n selector: '[nzDateCell]',\n exportAs: 'nzDateCell'\n})\nexport class NzDateCellDirective {}\n\n@Directive({\n selector: '[nzMonthCell]',\n exportAs: 'nzMonthCell'\n})\nexport class NzMonthCellDirective {}\n\n@Directive({\n selector: '[nzDateFullCell]',\n exportAs: 'nzDateFullCell'\n})\nexport class NzDateFullCellDirective {}\n\n@Directive({\n selector: '[nzMonthFullCell]',\n exportAs: 'nzMonthFullCell'\n})\nexport class NzMonthFullCellDirective {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewEncapsulation\n} from '@angular/core';\n\nimport { CandyDate } from 'ng-zorro-antd/core/time';\nimport { DateHelperService, NzI18nService as I18n } from 'ng-zorro-antd/i18n';\nimport { NzSelectSizeType } from 'ng-zorro-antd/select';\n\n@Component({\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'nz-calendar-header',\n exportAs: 'nzCalendarHeader',\n template: `\n <div class=\"ant-picker-calendar-header\">\n <nz-select\n class=\"ant-picker-calendar-year-select\"\n [nzSize]=\"size\"\n [nzDropdownMatchSelectWidth]=\"false\"\n [ngModel]=\"activeYear\"\n (ngModelChange)=\"updateYear($event)\"\n >\n <nz-option *ngFor=\"let year of years\" [nzLabel]=\"year.label\" [nzValue]=\"year.value\"></nz-option>\n </nz-select>\n\n <nz-select\n *ngIf=\"mode === 'month'\"\n class=\"ant-picker-calendar-month-select\"\n [nzSize]=\"size\"\n [nzDropdownMatchSelectWidth]=\"false\"\n [ngModel]=\"activeMonth\"\n (ngModelChange)=\"monthChange.emit($event)\"\n >\n <nz-option *ngFor=\"let month of months\" [nzLabel]=\"month.label\" [nzValue]=\"month.value\"></nz-option>\n </nz-select>\n\n <nz-radio-group\n class=\"ant-picker-calendar-mode-switch\"\n [(ngModel)]=\"mode\"\n (ngModelChange)=\"modeChange.emit($event)\"\n [nzSize]=\"size\"\n >\n <label nz-radio-button nzValue=\"month\">{{ monthTypeText }}</label>\n <label nz-radio-button nzValue=\"year\">{{ yearTypeText }}</label>\n </nz-radio-group>\n </div>\n `,\n host: {\n class: 'ant-fullcalendar-header',\n '[style.display]': `'block'`\n }\n})\nexport class NzCalendarHeaderComponent implements OnInit {\n @Input() mode: 'month' | 'year' = 'month';\n @Input() fullscreen: boolean = true;\n @Input() activeDate: CandyDate = new CandyDate();\n\n @Output() readonly modeChange: EventEmitter<'month' | 'year'> = new EventEmitter();\n @Output() readonly yearChange: EventEmitter<number> = new EventEmitter();\n @Output() readonly monthChange: EventEmitter<number> = new EventEmitter();\n // @Output() readonly valueChange: EventEmitter<CandyDate> = new EventEmitter();\n\n yearOffset: number = 10;\n yearTotal: number = 20;\n years: Array<{ label: string; value: number }> = [];\n months: Array<{ label: string; value: number }> = [];\n\n get activeYear(): number {\n return this.activeDate.getYear();\n }\n\n get activeMonth(): number {\n return this.activeDate.getMonth();\n }\n\n get size(): NzSelectSizeType {\n return this.fullscreen ? 'default' : 'small';\n }\n\n get yearTypeText(): string {\n return this.i18n.getLocale().Calendar.lang.year;\n }\n\n get monthTypeText(): string {\n return this.i18n.getLocale().Calendar.lang.month;\n }\n\n constructor(private i18n: I18n, private dateHelper: DateHelperService) {}\n\n ngOnInit(): void {\n this.setUpYears();\n this.setUpMonths();\n }\n\n updateYear(year: number): void {\n this.yearChange.emit(year);\n this.setUpYears(year);\n }\n\n private setUpYears(year?: number): void {\n const start = (year || this.activeYear) - this.yearOffset;\n const end = start + this.yearTotal;\n\n this.years = [];\n for (let i = start; i < end; i++) {\n this.years.push({ label: `${i}`, value: i });\n }\n }\n\n private setUpMonths(): void {\n this.months = [];\n\n for (let i = 0; i < 12; i++) {\n const dateInMonth = this.activeDate.setMonth(i);\n const monthText = this.dateHelper.format(dateInMonth.nativeDate, 'MMM');\n this.months.push({ label: monthText, value: i });\n }\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n forwardRef,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { CandyDate } from 'ng-zorro-antd/core/time';\nimport { BooleanInput } from 'ng-zorro-antd/core/types';\nimport { InputBoolean } from 'ng-zorro-antd/core/util';\n\nimport {\n NzDateCellDirective as DateCell,\n NzDateFullCellDirective as DateFullCell,\n NzMonthCellDirective as MonthCell,\n NzMonthFullCellDirective as MonthFullCell\n} from './calendar-cells';\n\nexport type NzCalendarMode = 'month' | 'year';\ntype NzCalendarDateTemplate = TemplateRef<{ $implicit: Date }>;\n\n@Component({\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'nz-calendar',\n exportAs: 'nzCalendar',\n template: `\n <nz-calendar-header\n [fullscreen]=\"nzFullscreen\"\n [activeDate]=\"activeDate\"\n [(mode)]=\"nzMode\"\n (modeChange)=\"onModeChange($event)\"\n (yearChange)=\"onYearSelect($event)\"\n (monthChange)=\"onMonthSelect($event)\"\n ></nz-calendar-header>\n\n <div class=\"ant-picker-panel\">\n <div class=\"ant-picker-{{ nzMode === 'month' ? 'date' : 'month' }}-panel\">\n <div class=\"ant-picker-body\">\n <ng-container *ngIf=\"nzMode === 'month'; then monthModeTable; else yearModeTable\"></ng-container>\n </div>\n </div>\n </div>\n <ng-template #monthModeTable>\n <!-- TODO(@wenqi73) [cellRender] [fullCellRender] -->\n <date-table\n [prefixCls]=\"prefixCls\"\n [value]=\"activeDate\"\n [activeDate]=\"activeDate\"\n [cellRender]=\"$any(dateCell)\"\n [fullCellRender]=\"$any(dateFullCell)\"\n [disabledDate]=\"nzDisabledDate\"\n (valueChange)=\"onDateSelect($event)\"\n ></date-table>\n </ng-template>\n\n <!-- TODO(@wenqi73) [cellRender] [fullCellRender] -->\n <ng-template #yearModeTable>\n <month-table\n [prefixCls]=\"prefixCls\"\n [value]=\"activeDate\"\n [activeDate]=\"activeDate\"\n [cellRender]=\"$any(monthCell)\"\n [fullCellRender]=\"$any(monthFullCell)\"\n (valueChange)=\"onDateSelect($event)\"\n ></month-table>\n </ng-template>\n `,\n host: {\n class: 'ant-picker-calendar',\n '[class.ant-picker-calendar-full]': 'nzFullscreen',\n '[class.ant-picker-calendar-mini]': '!nzFullscreen',\n '[class.ant-picker-calendar-rtl]': `dir === 'rtl'`\n },\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NzCalendarComponent), multi: true }]\n})\nexport class NzCalendarComponent implements ControlValueAccessor, OnChanges, OnInit, OnDestroy {\n static ngAcceptInputType_nzFullscreen: BooleanInput;\n\n activeDate: CandyDate = new CandyDate();\n prefixCls: string = 'ant-picker-calendar';\n private destroy$ = new Subject<void>();\n dir: Direction = 'ltr';\n\n private onChangeFn: (date: Date) => void = () => {};\n private onTouchFn: () => void = () => {};\n\n @Input() nzMode: NzCalendarMode = 'month';\n @Input() nzValue?: Date;\n @Input() nzDisabledDate?: (date: Date) => boolean;\n\n @Output() readonly nzModeChange: EventEmitter<NzCalendarMode> = new EventEmitter();\n @Output() readonly nzPanelChange: EventEmitter<{ date: Date; mode: NzCalendarMode }> = new EventEmitter();\n @Output() readonly nzSelectChange: EventEmitter<Date> = new EventEmitter();\n @Output() readonly nzValueChange: EventEmitter<Date> = new EventEmitter();\n\n /**\n * Cannot use @Input and @ContentChild on one variable\n * because { static: false } will make @Input property get delayed\n **/\n @Input() nzDateCell?: NzCalendarDateTemplate;\n @ContentChild(DateCell, { static: false, read: TemplateRef }) nzDateCellChild?: NzCalendarDateTemplate;\n get dateCell(): NzCalendarDateTemplate {\n return (this.nzDateCell || this.nzDateCellChild)!;\n }\n\n @Input() nzDateFullCell?: NzCalendarDateTemplate;\n @ContentChild(DateFullCell, { static: false, read: TemplateRef }) nzDateFullCellChild?: NzCalendarDateTemplate;\n get dateFullCell(): NzCalendarDateTemplate {\n return (this.nzDateFullCell || this.nzDateFullCellChild)!;\n }\n\n @Input() nzMonthCell?: NzCalendarDateTemplate;\n @ContentChild(MonthCell, { static: false, read: TemplateRef }) nzMonthCellChild?: NzCalendarDateTemplate;\n get monthCell(): NzCalendarDateTemplate {\n return (this.nzMonthCell || this.nzMonthCellChild)!;\n }\n\n @Input() nzMonthFullCell?: NzCalendarDateTemplate;\n @ContentChild(MonthFullCell, { static: false, read: TemplateRef }) nzMonthFullCellChild?: NzCalendarDateTemplate;\n get monthFullCell(): NzCalendarDateTemplate {\n return (this.nzMonthFullCell || this.nzMonthFullCellChild)!;\n }\n\n @Input() @InputBoolean() nzFullscreen: boolean = true;\n\n constructor(private cdr: ChangeDetectorRef, @Optional() private directionality: Directionality) {}\n\n ngOnInit(): void {\n this.dir = this.directionality.value;\n this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.dir = this.directionality.value;\n });\n }\n\n onModeChange(mode: NzCalendarMode): void {\n this.nzModeChange.emit(mode);\n this.nzPanelChange.emit({ date: this.activeDate.nativeDate, mode });\n }\n\n onYearSelect(year: number): void {\n const date = this.activeDate.setYear(year);\n this.updateDate(date);\n }\n\n onMonthSelect(month: number): void {\n const date = this.activeDate.setMonth(month);\n this.updateDate(date);\n }\n\n onDateSelect(date: CandyDate): void {\n // Only activeDate is enough in calendar\n // this.value = date;\n this.updateDate(date);\n }\n\n writeValue(value: Date | null): void {\n this.updateDate(new CandyDate(value as Date), false);\n this.cdr.markForCheck();\n }\n\n registerOnChange(fn: (date: Date) => void): void {\n this.onChangeFn = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouchFn = fn;\n }\n\n private updateDate(date: CandyDate, touched: boolean = true): void {\n this.activeDate = date;\n\n if (touched) {\n this.onChangeFn(date.nativeDate);\n this.onTouchFn();\n this.nzSelectChange.emit(date.nativeDate);\n this.nzValueChange.emit(date.nativeDate);\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.nzValue) {\n this.updateDate(new CandyDate(this.nzValue), false);\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { BidiModule } from '@angular/cdk/bidi';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { LibPackerModule } from 'ng-zorro-antd/date-picker';\nimport { NzI18nModule } from 'ng-zorro-antd/i18n';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\n\nimport {\n NzDateCellDirective,\n NzDateFullCellDirective,\n NzMonthCellDirective,\n NzMonthFullCellDirective\n} from './calendar-cells';\nimport { NzCalendarHeaderComponent } from './calendar-header.component';\nimport { NzCalendarComponent } from './calendar.component';\n\n@NgModule({\n declarations: [\n NzCalendarHeaderComponent,\n NzCalendarComponent,\n NzDateCellDirective,\n NzDateFullCellDirective,\n NzMonthCellDirective,\n NzMonthFullCellDirective\n ],\n exports: [\n NzCalendarComponent,\n NzDateCellDirective,\n NzDateFullCellDirective,\n NzMonthCellDirective,\n NzMonthFullCellDirective\n ],\n imports: [BidiModule, CommonModule, FormsModule, NzI18nModule, NzRadioModule, NzSelectModule, LibPackerModule]\n})\nexport class NzCalendarModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './calendar.module';\nexport * from './calendar.component';\nexport * from './calendar-cells';\nexport * from './calendar-header.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["DateCell","DateFullCell","MonthCell","MonthFullCell"],"mappings":"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"}