ng-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
1 lines • 28.8 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 standalone: true\n})\nexport class NzDateCellDirective {}\n\n@Directive({\n selector: '[nzMonthCell]',\n exportAs: 'nzMonthCell',\n standalone: true\n})\nexport class NzMonthCellDirective {}\n\n@Directive({\n selector: '[nzDateFullCell]',\n exportAs: 'nzDateFullCell',\n standalone: true\n})\nexport class NzDateFullCellDirective {}\n\n@Directive({\n selector: '[nzMonthFullCell]',\n exportAs: 'nzMonthFullCell',\n standalone: true\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 { NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation,\n booleanAttribute\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { NzStringTemplateOutletDirective } from 'ng-zorro-antd/core/outlet';\nimport { CandyDate } from 'ng-zorro-antd/core/time';\nimport { DateHelperService, NzI18nService as I18n } from 'ng-zorro-antd/i18n';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzSelectModule, 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 @if (nzCustomHeader) {\n <ng-container *nzStringTemplateOutlet=\"nzCustomHeader\">{{ nzCustomHeader }}</ng-container>\n } @else {\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 @for (year of years; track year.value) {\n <nz-option [nzLabel]=\"year.label\" [nzValue]=\"year.value\" />\n }\n </nz-select>\n\n @if (mode === 'month') {\n <nz-select\n class=\"ant-picker-calendar-month-select\"\n [nzSize]=\"size\"\n [nzDropdownMatchSelectWidth]=\"false\"\n [ngModel]=\"activeMonth\"\n (ngModelChange)=\"monthChange.emit($event)\"\n >\n @for (month of months; track month.value) {\n <nz-option [nzLabel]=\"month.label\" [nzValue]=\"month.value\" />\n }\n </nz-select>\n }\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 `,\n host: {\n class: 'ant-fullcalendar-header',\n '[style.display]': `'block'`\n },\n imports: [NzSelectModule, FormsModule, NzRadioModule, NgTemplateOutlet, NzStringTemplateOutletDirective],\n standalone: true\n})\nexport class NzCalendarHeaderComponent implements OnInit, OnChanges {\n @Input() mode: 'month' | 'year' = 'month';\n @Input({ transform: booleanAttribute }) fullscreen: boolean = true;\n @Input() activeDate: CandyDate = new CandyDate();\n @Input() nzCustomHeader?: string | TemplateRef<void>;\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(\n private i18n: I18n,\n private dateHelper: DateHelperService\n ) {}\n\n ngOnInit(): void {\n this.setUpYears();\n this.setUpMonths();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['activeDate']) {\n const previousActiveDate = changes['activeDate'].previousValue as CandyDate;\n const currentActiveDate = changes['activeDate'].currentValue as CandyDate;\n if (previousActiveDate?.getYear() !== currentActiveDate?.getYear()) {\n this.setUpYears();\n }\n }\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 Input,\n OnChanges,\n OnDestroy,\n OnInit,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewEncapsulation,\n booleanAttribute,\n forwardRef\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 { LibPackerModule } from 'ng-zorro-antd/date-picker';\n\nimport {\n NzDateCellDirective as DateCell,\n NzDateFullCellDirective as DateFullCell,\n NzMonthCellDirective as MonthCell,\n NzMonthFullCellDirective as MonthFullCell\n} from './calendar-cells';\nimport { NzCalendarHeaderComponent } from './calendar-header.component';\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 [nzCustomHeader]=\"nzCustomHeader\"\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 @if (nzMode === 'month') {\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 } @else {\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 }\n </div>\n </div>\n </div>\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 imports: [NzCalendarHeaderComponent, LibPackerModule],\n standalone: true\n})\nexport class NzCalendarComponent implements ControlValueAccessor, OnChanges, OnInit, OnDestroy {\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() nzCustomHeader?: string | TemplateRef<void>;\n\n @Input({ transform: booleanAttribute })\n nzFullscreen: boolean = true;\n\n constructor(\n private cdr: ChangeDetectorRef,\n private directionality: Directionality\n ) {}\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 { NgModule } from '@angular/core';\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 imports: [\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})\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":["i1","DateCell","DateFullCell","MonthCell","MonthFullCell","i2"],"mappings":"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"}