@radix-ng/primitives 0.33.2 → 0.35.0
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.
- package/calendar/src/calendar-root.directive.d.ts +3 -3
- package/core/index.d.ts +1 -0
- package/core/src/accessor/provide-value-accessor.d.ts +1 -1
- package/core/src/date-time/index.d.ts +3 -0
- package/core/src/date-time/parser.d.ts +37 -0
- package/core/src/date-time/parts.d.ts +12 -0
- package/core/src/date-time/segment.d.ts +4 -0
- package/core/src/date-time/types.d.ts +18 -1
- package/core/src/date-time/useDateField.d.ts +141 -0
- package/core/src/date-time/utils.d.ts +3 -0
- package/core/src/provide-token.d.ts +22 -0
- package/date-field/README.md +1 -0
- package/date-field/index.d.ts +2 -0
- package/date-field/src/date-field-context.token.d.ts +18 -0
- package/date-field/src/date-field-input.directive.d.ts +53 -0
- package/date-field/src/date-field-root.directive.d.ts +126 -0
- package/dialog/src/dialog-ref.d.ts +3 -0
- package/dialog/src/dialog.config.d.ts +1 -0
- package/fesm2022/radix-ng-primitives-calendar.mjs +6 -15
- package/fesm2022/radix-ng-primitives-calendar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-checkbox.mjs +3 -4
- package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-core.mjs +1014 -8
- package/fesm2022/radix-ng-primitives-core.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-date-field.mjs +320 -0
- package/fesm2022/radix-ng-primitives-date-field.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-dialog.mjs +54 -4
- package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs +0 -2
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-progress.mjs +3 -3
- package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-radio.mjs +7 -7
- package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-switch.mjs +7 -15
- package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tabs.mjs +3 -6
- package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle-group.mjs +8 -10
- package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle.mjs +5 -12
- package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -1
- package/hover-card/src/hover-card-root.directive.d.ts +4 -4
- package/package.json +5 -1
- package/popover/src/popover-root.directive.d.ts +4 -4
- package/switch/src/switch-root.directive.d.ts +0 -1
- package/toggle/src/toggle.directive.d.ts +0 -1
- package/tooltip/src/tooltip-root.directive.d.ts +4 -4
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"radix-ng-primitives-calendar.mjs","sources":["../../../packages/primitives/calendar/src/сalendar-сontext.token.ts","../../../packages/primitives/calendar/src/calendar-cell-trigger.directive.ts","../../../packages/primitives/calendar/src/calendar-cell.directive.ts","../../../packages/primitives/calendar/src/calendar-grid-body.directive.ts","../../../packages/primitives/calendar/src/calendar-grid-head.directive.ts","../../../packages/primitives/calendar/src/calendar-grid-row.directive.ts","../../../packages/primitives/calendar/src/calendar-grid.directive.ts","../../../packages/primitives/calendar/src/calendar-head-cell.directive.ts","../../../packages/primitives/calendar/src/calendar-header.directive.ts","../../../packages/primitives/calendar/src/calendar-heading.directive.ts","../../../packages/primitives/calendar/src/calendar-next.directive.ts","../../../packages/primitives/calendar/src/calendar-prev.directive.ts","../../../packages/primitives/calendar/src/calendar.ts","../../../packages/primitives/calendar/src/calendar-root.directive.ts","../../../packages/primitives/calendar/index.ts","../../../packages/primitives/calendar/radix-ng-primitives-calendar.ts"],"sourcesContent":["import { inject, InjectionToken, InputSignal, ModelSignal, WritableSignal } from '@angular/core';\nimport { DateValue } from '@internationalized/date';\nimport { DateMatcher, Formatter } from '@radix-ng/primitives/core';\n\nexport interface CalendarRootContextToken {\n nextPage?: (nextPageFunc?: (date: DateValue) => DateValue) => void;\n prevPage?: (nextPageFunc?: (date: DateValue) => DateValue) => void;\n isNextButtonDisabled: (nextPageFunc?: (date: DateValue) => DateValue) => boolean;\n isPrevButtonDisabled: (nextPageFunc?: (date: DateValue) => DateValue) => boolean;\n headingValue: WritableSignal<string>;\n dir: InputSignal<'ltr' | 'rtl'>;\n readonly: boolean;\n numberOfMonths: InputSignal<number>;\n placeholder: ModelSignal<DateValue>;\n pagedNavigation: boolean;\n disabled: InputSignal<boolean>;\n isDateSelected?: DateMatcher;\n isDateDisabled?: DateMatcher;\n isDateUnavailable: DateMatcher;\n formatter: Formatter;\n onDateChange: (date: DateValue) => void;\n currentElement: HTMLElement;\n}\n\nexport const CALENDAR_ROOT_CONTEXT = new InjectionToken<CalendarRootContextToken>('CalendarRootContext');\n\nexport function injectCalendarRootContext(): CalendarRootContextToken {\n return inject(CALENDAR_ROOT_CONTEXT);\n}\n","import { AfterViewInit, computed, Directive, ElementRef, inject, input } from '@angular/core';\nimport { DateValue, getLocalTimeZone, isSameDay, isSameMonth, isToday } from '@internationalized/date';\nimport * as kbd from '@radix-ng/primitives/core';\nimport { getDaysInMonth, toDate } from '@radix-ng/primitives/core';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: '[rdxCalendarCellTrigger]',\n exportAs: 'rdxCalendarCellTrigger',\n host: {\n role: 'button',\n '[attr.aria-label]': 'labelText()',\n '[attr.aria-disabled]': 'isDisabled() || isUnavailable() ? true : undefined',\n '[attr.data-rdx-calendar-cell-trigger]': '\"\"',\n '[attr.tabindex]': 'isFocusedDate() ? 0 : isOutsideView() || isDisabled() ? undefined : -1',\n '[attr.data-value]': 'day()?.toString()',\n '[attr.data-disabled]': 'isDisabled() ? \"\" : undefined',\n '[attr.data-today]': 'isDateToday() ? \"\" : undefined',\n '[attr.data-outside-view]': 'isOutsideView() ? \"\" : undefined',\n '[attr.data-selected]': 'isSelectedDate() ? \"\" : undefined',\n '[attr.data-unavailable]': 'isUnavailable() ? \"\" : undefined',\n '[attr.data-focus]': 'isFocusedDate() ? \"\" : undefined',\n\n '(click)': 'onClick()',\n\n '(keydown)': 'onArrowKey($event)'\n }\n})\nexport class RdxCalendarCellTriggerDirective implements AfterViewInit {\n private readonly rootContext = injectCalendarRootContext();\n private readonly elementRef = inject(ElementRef<HTMLElement>);\n\n /**\n * The date value provided to the cell trigger\n */\n readonly day = input<DateValue>();\n\n /**\n * The month in which the cell is rendered\n */\n readonly month = input<DateValue>();\n\n /**\n * Current day\n */\n readonly dayValue = computed(() => this.day()?.day.toLocaleString());\n\n /**\n * Current today state\n */\n readonly isDateToday = computed(() => {\n return isToday(<DateValue>this.day(), getLocalTimeZone());\n });\n\n /**\n * Current selected state\n */\n readonly isSelectedDate = computed(() => this.rootContext.isDateSelected!(<DateValue>this.day()));\n\n readonly isDisabled = computed(() => this.rootContext.isDateDisabled!(<DateValue>this.day()));\n\n readonly isOutsideView = computed(() => {\n return !isSameMonth(<DateValue>this.day(), <DateValue>this.month());\n });\n\n readonly isFocusedDate = computed(() => {\n return !this.rootContext.disabled() && isSameDay(<DateValue>this.day(), this.rootContext.placeholder());\n });\n\n readonly isUnavailable = computed(() => this.rootContext.isDateUnavailable?.(<DateValue>this.day()) ?? false);\n\n readonly labelText = computed(() => {\n return this.rootContext.formatter.custom(toDate(<DateValue>this.day()), {\n weekday: 'long',\n month: 'long',\n day: 'numeric',\n year: 'numeric'\n });\n });\n\n /**\n * @ignore\n */\n currentElement!: HTMLElement;\n\n ngAfterViewInit() {\n this.currentElement = this.elementRef.nativeElement;\n }\n\n protected onClick() {\n this.changeDate(this.day()!);\n }\n\n protected onArrowKey(event: KeyboardEvent) {\n const code = event.code;\n if (![\n kbd.ARROW_RIGHT,\n kbd.ARROW_LEFT,\n kbd.ARROW_UP,\n kbd.ARROW_DOWN,\n kbd.ENTER,\n kbd.SPACE_CODE\n ].includes(code)) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n const indexIncrementation = 7;\n const sign = this.rootContext.dir() === 'rtl' ? -1 : 1;\n\n switch (code) {\n case kbd.ARROW_RIGHT:\n this.shiftFocus(this.currentElement, sign);\n break;\n case kbd.ARROW_LEFT:\n this.shiftFocus(this.currentElement, -sign);\n break;\n case kbd.ARROW_UP:\n this.shiftFocus(this.currentElement, -indexIncrementation);\n break;\n case kbd.ARROW_DOWN:\n this.shiftFocus(this.currentElement, indexIncrementation);\n break;\n case kbd.ENTER:\n case kbd.SPACE_CODE:\n this.changeDate(<DateValue>this.day());\n }\n }\n\n private shiftFocus(node: HTMLElement, add: number) {\n const parentElement = this.rootContext.currentElement;\n\n const allCollectionItems: HTMLElement[] = this.getSelectableCells(parentElement);\n if (!allCollectionItems.length) return;\n\n const index = allCollectionItems.indexOf(node);\n const newIndex = index + add;\n\n if (newIndex >= 0 && newIndex < allCollectionItems.length) {\n if (allCollectionItems[newIndex].hasAttribute('data-disabled')) {\n this.shiftFocus(allCollectionItems[newIndex], add);\n }\n allCollectionItems[newIndex].focus();\n return;\n }\n\n if (newIndex < 0) {\n if (!this.rootContext.prevPage) return;\n\n this.rootContext.prevPage();\n\n setTimeout(() => {\n const newCollectionItems = this.getSelectableCells(parentElement);\n if (!newCollectionItems.length) return;\n\n if (!this.rootContext.pagedNavigation && this.rootContext.numberOfMonths() > 1) {\n // Placeholder is set to the first month of the new page\n const numberOfDays = getDaysInMonth(this.rootContext.placeholder());\n const computedIndex = numberOfDays - Math.abs(newIndex);\n if (newCollectionItems[computedIndex].hasAttribute('data-disabled')) {\n this.shiftFocus(newCollectionItems[computedIndex], add);\n }\n newCollectionItems[computedIndex].focus();\n return;\n }\n\n const computedIndex = newCollectionItems.length - Math.abs(newIndex);\n if (newCollectionItems[computedIndex].hasAttribute('data-disabled')) {\n this.shiftFocus(newCollectionItems[computedIndex], add);\n }\n newCollectionItems[computedIndex].focus();\n });\n }\n\n if (newIndex >= allCollectionItems.length) {\n if (!this.rootContext.nextPage) return;\n\n this.rootContext.nextPage();\n\n setTimeout(() => {\n const newCollectionItems = this.getSelectableCells(parentElement);\n if (!newCollectionItems.length) return;\n\n if (!this.rootContext.pagedNavigation && this.rootContext.numberOfMonths() > 1) {\n const numberOfDays = getDaysInMonth(\n this.rootContext.placeholder().add({ months: this.rootContext.numberOfMonths() - 1 })\n );\n\n const computedIndex =\n newIndex - allCollectionItems.length + (newCollectionItems.length - numberOfDays);\n\n if (newCollectionItems[computedIndex].hasAttribute('data-disabled')) {\n this.shiftFocus(newCollectionItems[computedIndex], add);\n }\n newCollectionItems[computedIndex].focus();\n return;\n }\n\n const computedIndex = newIndex - allCollectionItems.length;\n if (newCollectionItems[computedIndex].hasAttribute('data-disabled')) {\n this.shiftFocus(newCollectionItems[computedIndex], add);\n }\n\n newCollectionItems[computedIndex].focus();\n });\n }\n }\n\n /**\n * @ignore\n */\n SELECTOR = '[data-rdx-calendar-cell-trigger]:not([data-outside-view]):not([data-outside-visible-view])';\n\n /**\n * @ignore\n */\n getSelectableCells(calendar: HTMLElement): HTMLElement[] {\n return Array.from(calendar.querySelectorAll(this.SELECTOR)) ?? [];\n }\n\n /**\n * @ignore\n */\n changeDate(date: DateValue) {\n this.rootContext.onDateChange(date);\n }\n}\n","import { Directive, input } from '@angular/core';\nimport { DateValue } from '@internationalized/date';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: 'td[rdxCalendarCell]',\n host: {\n role: 'gridcell',\n '[attr.aria-selected]': 'rootContext.isDateSelected?.(date()!) ? true : undefined',\n '[attr.aria-disabled]': 'rootContext.isDateSelected?.(date()!) || rootContext.isDateUnavailable?.(date()!)',\n '[attr.data-disabled]': 'rootContext.isDateSelected?.(date()!) ? \"\" : undefined'\n }\n})\nexport class RdxCalendarCellDirective {\n protected readonly rootContext = injectCalendarRootContext();\n\n /**\n * The date of the cell\n */\n readonly date = input<DateValue>();\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'tbody[rdxCalendarGridBody]'\n})\nexport class RdxCalendarGridBodyDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'thead[rdxCalendarGridHead]',\n host: {\n '[attr.aria-hidden]': 'true'\n }\n})\nexport class RdxCalendarGridHeadDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'tr[rdxCalendarGridRow]'\n})\nexport class RdxCalendarGridRowDirective {}\n","import { computed, Directive } from '@angular/core';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: 'table[rdxCalendarGrid]',\n host: {\n tabindex: '-1',\n role: 'grid',\n '[attr.aria-readonly]': 'readonly()',\n '[attr.aria-disabled]': 'disabled()',\n '[attr.data-readonly]': 'readonly() && \"\"',\n '[attr.data-disabled]': 'disabled() && \"\"'\n }\n})\nexport class RdxCalendarGridDirective {\n private readonly rootContext = injectCalendarRootContext();\n\n readonly disabled = computed(() => (this.rootContext.disabled() ? true : undefined));\n readonly readonly = computed(() => (this.rootContext.readonly ? true : undefined));\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'th[rdxCalendarHeadCell]'\n})\nexport class RdxCalendarHeadCellDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'div[rdxCalendarHeader]'\n})\nexport class RdxCalendarHeaderDirective {}\n","import { computed, Directive } from '@angular/core';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: 'div[rdxCalendarHeading]',\n exportAs: 'rdxCalendarHeading',\n host: {\n '[attr.data-disabled]': 'rootContext.disabled() ? \"\" : undefined'\n }\n})\nexport class RdxCalendarHeadingDirective {\n protected readonly rootContext = injectCalendarRootContext();\n\n readonly headingValue = computed(() => this.rootContext.headingValue());\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { DateValue } from '@internationalized/date';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: 'button[rdxCalendarNext]',\n exportAs: 'rdxCalendarNext',\n host: {\n '(click)': 'onClick()',\n '[disabled]': 'disabled()',\n '[attr.data-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.aria-disabled]': 'disabled() ? \"\" : undefined',\n 'aria-label': 'Next page'\n }\n})\nexport class RdxCalendarNextDirective {\n protected readonly rootContext = injectCalendarRootContext();\n\n /**\n * The function to be used for the `next page`. Overwrites the nextPage function set on the `CalendarRoot`.\n */\n readonly nextPage = input<(placeholder: DateValue) => DateValue>();\n\n /**\n * @ignore\n */\n readonly disabled = computed(\n () => this.rootContext.disabled() || this.rootContext.isNextButtonDisabled(this.nextPage())\n );\n\n protected onClick() {\n this.rootContext.nextPage!(this.nextPage());\n }\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { DateValue } from '@internationalized/date';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: 'button[rdxCalendarPrev]',\n exportAs: 'rdxCalendarPrev',\n host: {\n '(click)': 'onClick()',\n '[disabled]': 'disabled()',\n '[attr.data-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.aria-disabled]': 'disabled() ? \"\" : undefined',\n 'aria-label': 'Previous page'\n }\n})\nexport class RdxCalendarPrevDirective {\n protected readonly rootContext = injectCalendarRootContext();\n\n /**\n * The function to be used for the `prev page`. Overwrites the prevPage function set on the `CalendarRoot`.\n */\n readonly prevPage = input<(placeholder: DateValue) => DateValue>();\n\n /**\n * @ignore\n */\n readonly disabled = computed(\n () => this.rootContext.disabled() || this.rootContext.isNextButtonDisabled(this.prevPage())\n );\n\n protected onClick() {\n this.rootContext.prevPage!(this.prevPage());\n }\n}\n","import { computed, InputSignal, ModelSignal, signal, WritableSignal } from '@angular/core';\nimport { DateFields, DateValue, isEqualMonth, isSameDay } from '@internationalized/date';\nimport {\n createFormatter,\n createMonths,\n DateFormatterOptions,\n DateMatcher,\n getDaysInMonth,\n isAfter,\n isBefore,\n Month,\n toDate,\n watch\n} from '@radix-ng/primitives/core';\n\nexport type CalendarProps = {\n locale: InputSignal<string>;\n placeholder: WritableSignal<DateValue>;\n weekStartsOn: InputSignal<0 | 1 | 2 | 3 | 4 | 5 | 6>;\n fixedWeeks: WritableSignal<boolean>;\n numberOfMonths: InputSignal<number>;\n minValue: InputSignal<DateValue | undefined>;\n maxValue: InputSignal<DateValue | undefined>;\n disabled: WritableSignal<boolean>;\n weekdayFormat: InputSignal<Intl.DateTimeFormatOptions['weekday']>;\n pagedNavigation: WritableSignal<boolean>;\n isDateDisabled?: InputSignal<DateMatcher | undefined>;\n isDateUnavailable?: InputSignal<DateMatcher | undefined>;\n calendarLabel: InputSignal<string | undefined>;\n nextPage: InputSignal<((placeholder: DateValue) => DateValue) | undefined>;\n prevPage: InputSignal<((placeholder: DateValue) => DateValue) | undefined>;\n};\n\nexport type CalendarStateProps = {\n date: ModelSignal<DateValue | DateValue[] | undefined>;\n isDateDisabled?: DateMatcher;\n isDateUnavailable?: DateMatcher;\n};\n\nexport function calendarState(props: CalendarStateProps) {\n function isDateSelected(dateObj: DateValue): boolean {\n const currentValue = props.date(); // signal read\n\n if (Array.isArray(currentValue)) {\n return currentValue.some((d) => isSameDay(d, dateObj));\n } else if (!currentValue) {\n return false;\n } else {\n return isSameDay(currentValue, dateObj);\n }\n }\n\n const isInvalid = computed(() => {\n const currentValue = props.date();\n\n if (Array.isArray(currentValue)) {\n if (!currentValue.length) {\n return false;\n }\n for (const dateObj of currentValue) {\n if (props.isDateDisabled?.(dateObj)) return true;\n if (props.isDateUnavailable?.(dateObj)) return true;\n }\n } else {\n if (!currentValue) {\n return false;\n }\n if (props.isDateDisabled?.(currentValue)) return true;\n if (props.isDateUnavailable?.(currentValue)) return true;\n }\n return false;\n });\n\n return {\n isDateSelected,\n isInvalid\n };\n}\n\nfunction handleNextDisabled(lastPeriodInView: DateValue, nextPageFunc: (date: DateValue) => DateValue): DateValue {\n const firstPeriodOfNextPage = nextPageFunc(lastPeriodInView);\n const diff = firstPeriodOfNextPage.compare(lastPeriodInView);\n const duration: DateFields = {};\n if (diff >= 7) duration.day = 1;\n if (diff >= getDaysInMonth(lastPeriodInView)) duration.month = 1;\n return firstPeriodOfNextPage.set({ ...duration });\n}\n\nfunction handlePrevDisabled(firstPeriodInView: DateValue, prevPageFunc: (date: DateValue) => DateValue): DateValue {\n const lastPeriodOfPrevPage = prevPageFunc(firstPeriodInView);\n const diff = firstPeriodInView.compare(lastPeriodOfPrevPage);\n const duration: DateFields = {};\n if (diff >= 7) duration.day = 35;\n if (diff >= getDaysInMonth(firstPeriodInView)) duration.month = 13;\n return lastPeriodOfPrevPage.set({ ...duration });\n}\n\nfunction handleNextPage(date: DateValue, nextPageFunc: (date: DateValue) => DateValue): DateValue {\n return nextPageFunc(date);\n}\n\nfunction handlePrevPage(date: DateValue, prevPageFunc: (date: DateValue) => DateValue): DateValue {\n return prevPageFunc(date);\n}\n\nexport function calendar(props: CalendarProps) {\n const formatter = createFormatter(props.locale());\n\n const headingFormatOptions = computed(() => {\n const options: DateFormatterOptions = {\n calendar: props.placeholder().calendar.identifier\n };\n\n if (props.placeholder().calendar.identifier === 'gregory' && props.placeholder().era === 'BC') {\n options.era = 'short';\n }\n\n return options;\n });\n\n const month = signal<Month<DateValue>[]>(\n createMonths({\n dateObj: props.placeholder(),\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n })\n );\n\n const visibleView = computed(() => {\n return month().map((month) => month.value);\n });\n\n function isOutsideVisibleView(date: DateValue) {\n return !visibleView().some((month) => isEqualMonth(date, month));\n }\n\n const isNextButtonDisabled = (nextPageFunc?: (date: DateValue) => DateValue) => {\n if (!props.maxValue() || !month().length) return false;\n if (props.disabled()) return true;\n\n const lastPeriodInView = month()[month().length - 1].value;\n\n if (!nextPageFunc && !props.nextPage()) {\n const firstPeriodOfNextPage = lastPeriodInView.add({ months: 1 }).set({ day: 1 });\n return isAfter(firstPeriodOfNextPage, <DateValue>props.maxValue());\n }\n\n const firstPeriodOfNextPage = handleNextDisabled(lastPeriodInView, nextPageFunc || props.nextPage()!);\n return isAfter(firstPeriodOfNextPage, <DateValue>props.maxValue());\n };\n\n const isPrevButtonDisabled = (prevPageFunc?: (date: DateValue) => DateValue) => {\n if (!props.minValue() || !month().length) return false;\n if (props.disabled()) return true;\n const firstPeriodInView = month()[0].value;\n\n if (!prevPageFunc && !props.prevPage()) {\n const lastPeriodOfPrevPage = firstPeriodInView.subtract({ months: 1 }).set({ day: 35 });\n return isBefore(lastPeriodOfPrevPage, <DateValue>props.minValue());\n }\n\n const lastPeriodOfPrevPage = handlePrevDisabled(firstPeriodInView, prevPageFunc || props.prevPage()!);\n return isBefore(lastPeriodOfPrevPage, <DateValue>props.minValue());\n };\n\n const nextPage = (nextPageFunc?: (date: DateValue) => DateValue) => {\n const firstDate = month()[0].value;\n\n if (!nextPageFunc && !props.nextPage()) {\n const newDate = firstDate.add({ months: props.pagedNavigation() ? props.numberOfMonths() : 1 });\n\n const newMonth = createMonths({\n dateObj: newDate,\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n });\n\n month.set(newMonth);\n props.placeholder.set(newMonth[0].value.set({ day: 1 }));\n\n return;\n }\n\n const newDate = handleNextPage(firstDate, nextPageFunc || props.nextPage()!);\n const newMonth = createMonths({\n dateObj: newDate,\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n });\n\n month.set(newMonth);\n\n const duration: DateFields = {};\n\n if (!nextPageFunc) {\n const diff = newMonth[0].value.compare(firstDate);\n if (diff >= getDaysInMonth(firstDate)) {\n duration.day = 1;\n }\n\n if (diff >= 365) {\n duration.month = 1;\n }\n }\n\n props.placeholder.set(newMonth[0].value.set({ ...duration }));\n };\n\n const prevPage = (prevPageFunc?: (date: DateValue) => DateValue) => {\n const firstDate = month()[0].value;\n\n if (!prevPageFunc && !props.prevPage()) {\n const newDate = firstDate.subtract({ months: props.pagedNavigation() ? props.numberOfMonths() : 1 });\n\n const newMonth = createMonths({\n dateObj: newDate,\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n });\n\n month.set(newMonth);\n\n props.placeholder.set(newMonth[0].value.set({ day: 1 }));\n return;\n }\n\n const newDate = handlePrevPage(firstDate, prevPageFunc || props.prevPage()!);\n const newMonth = createMonths({\n dateObj: newDate,\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n });\n\n month.set(newMonth);\n\n const duration: DateFields = {};\n\n // Do not adjust the placeholder if the prevPageFunc is defined (overwrite)\n if (!prevPageFunc) {\n const diff = firstDate.compare(newMonth[0].value);\n if (diff >= getDaysInMonth(firstDate)) duration.day = 1;\n\n if (diff >= 365) duration.month = 1;\n }\n\n props.placeholder.set(newMonth[0].value.set({ ...duration }));\n };\n\n function isDateDisabled(dateObj: DateValue) {\n if (props.isDateDisabled?.()?.(dateObj) || props.disabled()) return true;\n if (props.maxValue() && isAfter(dateObj, <DateValue>props.maxValue())) return true;\n if (props.minValue() && isBefore(dateObj, <DateValue>props.minValue())) return true;\n return false;\n }\n\n const isDateUnavailable = (date: DateValue) => {\n return !!props.isDateUnavailable?.()?.(date);\n };\n\n const weekdays = computed(() => {\n if (!month().length) return [];\n return month()[0].weeks[0].map((date) => {\n return formatter.dayOfWeek(toDate(date), props.weekdayFormat());\n });\n });\n\n watch([props.placeholder], ([placeholder]) => {\n if (visibleView().some((month) => isEqualMonth(month, placeholder))) {\n return;\n }\n\n month.set(\n createMonths({\n dateObj: placeholder,\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n })\n );\n });\n\n watch(\n [props.locale, props.weekStartsOn, props.fixedWeeks, props.numberOfMonths],\n ([locale, weekStartsOn, fixedWeeks, numberOfMonths]) => {\n month.set(\n createMonths({\n dateObj: props.placeholder(),\n weekStartsOn: weekStartsOn,\n locale: locale,\n fixedWeeks: fixedWeeks,\n numberOfMonths: numberOfMonths\n })\n );\n }\n );\n\n const headingValue = computed(() => {\n if (!month().length) {\n return '';\n }\n\n if (props.locale() !== formatter.getLocale()) formatter.setLocale(props.locale());\n\n if (month().length === 1) {\n const _month = month()[0].value;\n return `${formatter.fullMonthAndYear(toDate(_month), headingFormatOptions())}`;\n }\n\n const startMonth = toDate(month()[0].value);\n const endMonth = toDate(month()[month().length - 1].value);\n\n const startMonthName = formatter.fullMonth(startMonth, headingFormatOptions());\n const endMonthName = formatter.fullMonth(endMonth, headingFormatOptions());\n const startMonthYear = formatter.fullYear(startMonth, headingFormatOptions());\n const endMonthYear = formatter.fullYear(endMonth, headingFormatOptions());\n\n return startMonthYear === endMonthYear\n ? `${startMonthName} - ${endMonthName} ${endMonthYear}`\n : `${startMonthName} ${startMonthYear} - ${endMonthName} ${endMonthYear}`;\n });\n\n const fullCalendarLabel = computed(() => `${props.calendarLabel() ?? 'Event Date'}, ${headingValue()}`);\n\n return {\n isDateDisabled,\n isDateUnavailable,\n isNextButtonDisabled,\n isPrevButtonDisabled,\n month,\n weekdays,\n visibleView,\n isOutsideVisibleView,\n formatter,\n nextPage,\n prevPage,\n headingValue,\n fullCalendarLabel\n };\n}\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport {\n AfterViewInit,\n booleanAttribute,\n Directive,\n effect,\n ElementRef,\n forwardRef,\n inject,\n input,\n linkedSignal,\n model,\n signal\n} from '@angular/core';\nimport { DateValue, isEqualDay, isSameDay } from '@internationalized/date';\nimport { DateMatcher, Formatter, getDefaultDate, Month, watch } from '@radix-ng/primitives/core';\nimport { calendar, calendarState } from './calendar';\nimport { CALENDAR_ROOT_CONTEXT } from './сalendar-сontext.token';\n\n@Directive({\n selector: '[rdxCalendarRoot]',\n exportAs: 'rdxCalendarRoot',\n providers: [\n { provide: CALENDAR_ROOT_CONTEXT, useExisting: forwardRef(() => RdxCalendarRootDirective) }],\n host: {\n role: 'application',\n '[attr.aria-label]': 'fullCalendarLabel()',\n '[attr.data-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.data-readonly]': 'readonly() ? \"\" : undefined',\n '[attr.data-invalid]': 'isInvalid ? \"\" : undefined',\n '[attr.dir]': 'dir()'\n }\n})\nexport class RdxCalendarRootDirective implements AfterViewInit {\n private readonly elementRef = inject(ElementRef<HTMLElement>);\n\n /**\n * The controlled checked state of the calendar\n */\n readonly value = model<DateValue | DateValue[] | undefined>();\n\n /**\n * The default placeholder date\n */\n readonly defaultPlaceholder = model<DateValue>();\n\n readonly locale = input<string>('en');\n\n readonly defaultDate = getDefaultDate({\n defaultPlaceholder: this.defaultPlaceholder(),\n defaultValue: this.value(),\n locale: this.locale()\n });\n\n /**\n * The placeholder date, which is used to determine what month to display when no date is selected.\n * This updates as the user navigates the calendar and can be used to programmatically control the calendar view\n */\n readonly placeholder = model<DateValue>(this.defaultPlaceholder() ?? this.defaultDate.copy());\n\n readonly multiple = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * Whether to always display 6 weeks in the calendar\n */\n readonly fixedWeeks = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * Whether the calendar is disabled\n */\n readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * Whether to prevent the user from deselecting a date without selecting another date first\n */\n readonly preventDeselect = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * The day of the week to start the calendar on\n */\n readonly weekStartsOn = input<0 | 1 | 2 | 3 | 4 | 5 | 6>(1);\n\n /**\n * The number of months to display at once\n */\n readonly numberOfMonths = input<number>(1);\n\n /**\n * The reading direction of the calendar when applicable.\n */\n readonly dir = input<'ltr' | 'rtl'>('ltr');\n\n /**\n * The minimum date that can be selected\n */\n readonly minValue = input<DateValue>();\n\n /**\n * The maximum date that can be selected\n */\n readonly maxValue = input<DateValue>();\n\n /**\n * The format to use for the weekday strings provided via the weekdays slot prop\n */\n readonly weekdayFormat = input<Intl.DateTimeFormatOptions['weekday']>('narrow');\n\n /**\n * The accessible label for the calendar\n */\n readonly calendarLabel = input<string>();\n\n /**\n * Whether the calendar is readonly\n */\n readonly readonly = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * This property causes the previous and next buttons to navigate by the number of months displayed at once, rather than one month\n */\n readonly pagedNavigation = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n readonly propsNextPage = input<(placeholder: DateValue) => DateValue>();\n\n readonly propsPrevPage = input<(placeholder: DateValue) => DateValue>();\n\n /**\n * A function that returns whether a date is disabled\n */\n readonly isDateDisabled = input<DateMatcher>();\n\n /**\n * A function that returns whether a date is unavailable\n */\n readonly isDateUnavailable = input<DateMatcher>();\n\n readonly initialFocus = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n readonly months = model<Month<DateValue>[]>();\n\n /**\n * The days of the week\n */\n readonly weekDays = model<string[]>();\n\n protected readonly fixedWeeksRef = linkedSignal({\n source: this.fixedWeeks,\n computation: (value) => value as boolean\n });\n\n protected readonly disabledRef = linkedSignal({\n source: this.disabled,\n computation: (value) => value as boolean\n });\n\n protected readonly pagedNavigationRef = linkedSignal({\n source: this.pagedNavigation,\n computation: (value) => value as boolean\n });\n\n /**\n * @ignore\n */\n readonly headingValue = signal<string>('');\n\n /**\n * @ignore\n */\n readonly fullCalendarLabel = signal<string>('');\n\n /**\n * @ignore\n */\n nextPage: (nextPageFunc?: (date: DateValue) => DateValue) => void;\n\n /**\n * @ignore\n */\n prevPage: (nextPageFunc?: (date: DateValue) => DateValue) => void;\n\n /**\n * @ignore\n */\n isNextButtonDisabled: (nextPageFunc?: (date: DateValue) => DateValue) => boolean;\n\n /**\n * @ignore\n */\n isPrevButtonDisabled: (nextPageFunc?: (date: DateValue) => DateValue) => boolean;\n\n /**\n * @ignore\n */\n isDateSelected: DateMatcher;\n\n /**\n * @ignore\n */\n isInvalid: boolean;\n\n /**\n * @ignore\n */\n isOutsideVisibleView: (date: DateValue) => boolean;\n\n /**\n * @ignore\n */\n formatter: Formatter;\n\n /**\n * @ignore\n */\n currentElement!: HTMLElement;\n\n private readonly calendar = calendar({\n locale: this.locale,\n placeholder: this.placeholder,\n weekStartsOn: this.weekStartsOn,\n fixedWeeks: this.fixedWeeksRef,\n numberOfMonths: this.numberOfMonths,\n minValue: this.minValue,\n maxValue: this.maxValue,\n disabled: this.disabledRef,\n weekdayFormat: this.weekdayFormat,\n pagedNavigation: this.pagedNavigationRef,\n isDateDisabled: this.isDateDisabled,\n isDateUnavailable: this.isDateUnavailable,\n calendarLabel: this.calendarLabel,\n nextPage: this.propsNextPage,\n prevPage: this.propsPrevPage\n });\n\n constructor() {\n this.nextPage = this.calendar.nextPage;\n this.prevPage = this.calendar.prevPage;\n this.isOutsideVisibleView = this.calendar.isOutsideVisibleView;\n this.isNextButtonDisabled = this.calendar.isNextButtonDisabled;\n this.isPrevButtonDisabled = this.calendar.isPrevButtonDisabled;\n this.formatter = this.calendar.formatter;\n\n effect(() => {\n this.months.set(this.calendar.month());\n\n this.weekDays.set(this.calendar.weekdays());\n\n this.fullCalendarLabel.set(this.calendar.fullCalendarLabel());\n\n this.headingValue.set(this.calendar.headingValue());\n\n const { isInvalid, isDateSelected } = calendarState({\n date: this.value,\n isDateDisabled: this.isDateDisabled(),\n isDateUnavailable: this.isDateUnavailable()\n });\n\n this.isDateSelected = isDateSelected;\n this.isInvalid = isInvalid();\n });\n\n watch([this.value], (_modelValue) => {\n if (Array.isArray(_modelValue) && _modelValue.length) {\n const lastValue = _modelValue[_modelValue.length - 1];\n if (lastValue && !isEqualDay(this.placeholder(), <DateValue>lastValue)) {\n this.onPlaceholderChange(<DateValue>lastValue);\n }\n } else if (!Array.isArray(_modelValue) && _modelValue && !isEqualDay(this.placeholder(), _modelValue)) {\n this.onPlaceholderChange(_modelValue);\n }\n });\n }\n\n ngAfterViewInit() {\n this.currentElement = this.elementRef.nativeElement;\n }\n\n /**\n * @ignore\n */\n onPlaceholderChange(value: DateValue) {\n this.placeholder.set(value.copy());\n }\n\n /**\n * @ignore\n */\n onDateChange(date: DateValue) {\n const currentValue = this.value();\n\n if (!this.multiple()) {\n // for single selection\n if (!this.value()) {\n this.value.set(date.copy());\n return;\n }\n\n if (!this.preventDeselect() && isEqualDay(this.value() as DateValue, date)) {\n this.placeholder.set(date.copy());\n this.value.set(undefined);\n } else {\n this.value.set(date.copy());\n }\n } else if (!this.value()) {\n // for multiple selection\n this.value.set([date.copy()]);\n } else if (Array.isArray(currentValue)) {\n const index = currentValue.findIndex((d: DateValue) => isSameDay(d, date));\n if (index === -1) {\n this.value.set([...currentValue, date.copy()]);\n } else if (!this.preventDeselect()) {\n const next = currentValue.filter((d: DateValue) => !isSameDay(d, date));\n if (next.length === 0) {\n this.placeholder.set(date.copy());\n this.value.set(undefined);\n return;\n }\n this.value.set(next.map((d) => d.copy()));\n }\n }\n }\n}\n","import { NgModule } from '@angular/core';\n\nexport { RdxCalendarCellTriggerDirective } from './src/calendar-cell-trigger.directive';\nexport { RdxCalendarCellDirective } from './src/calendar-cell.directive';\nexport { RdxCalendarGridBodyDirective } from './src/calendar-grid-body.directive';\nexport { RdxCalendarGridHeadDirective } from './src/calendar-grid-head.directive';\nexport { RdxCalendarGridRowDirective } from './src/calendar-grid-row.directive';\nexport { RdxCalendarGridDirective } from './src/calendar-grid.directive';\nexport { RdxCalendarHeadCellDirective } from './src/calendar-head-cell.directive';\nexport { RdxCalendarHeaderDirective } from './src/calendar-header.directive';\nexport { RdxCalendarHeadingDirective } from './src/calendar-heading.directive';\nexport { RdxCalendarNextDirective } from './src/calendar-next.directive';\nexport { RdxCalendarPrevDirective } from './src/calendar-prev.directive';\nexport { RdxCalendarRootDirective } from './src/calendar-root.directive';\n\nimport { RdxCalendarCellTriggerDirective } from './src/calendar-cell-trigger.directive';\nimport { RdxCalendarCellDirective } from './src/calendar-cell.directive';\nimport { RdxCalendarGridBodyDirective } from './src/calendar-grid-body.directive';\nimport { RdxCalendarGridHeadDirective } from './src/calendar-grid-head.directive';\nimport { RdxCalendarGridRowDirective } from './src/calendar-grid-row.directive';\nimport { RdxCalendarGridDirective } from './src/calendar-grid.directive';\nimport { RdxCalendarHeadCellDirective } from './src/calendar-head-cell.directive';\nimport { RdxCalendarHeaderDirective } from './src/calendar-header.directive';\nimport { RdxCalendarHeadingDirective } from './src/calendar-heading.directive';\nimport { RdxCalendarNextDirective } from './src/calendar-next.directive';\nimport { RdxCalendarPrevDirective } from './src/calendar-prev.directive';\nimport { RdxCalendarRootDirective } from './src/calendar-root.directive';\n\nconst _imports = [\n RdxCalendarCellTriggerDirective,\n RdxCalendarCellDirective,\n RdxCalendarGridBodyDirective,\n RdxCalendarGridHeadDirective,\n RdxCalendarGridRowDirective,\n RdxCalendarGridDirective,\n RdxCalendarHeadCellDirective,\n RdxCalendarHeaderDirective,\n RdxCalendarPrevDirective,\n RdxCalendarRootDirective,\n RdxCalendarHeadingDirective,\n RdxCalendarNextDirective\n];\n\n@NgModule({\n imports: [..._imports],\n exports: [..._imports]\n})\nexport class RdxCalendarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"radix-ng-primitives-calendar.mjs","sources":["../../../packages/primitives/calendar/src/сalendar-сontext.token.ts","../../../packages/primitives/calendar/src/calendar-cell-trigger.directive.ts","../../../packages/primitives/calendar/src/calendar-cell.directive.ts","../../../packages/primitives/calendar/src/calendar-grid-body.directive.ts","../../../packages/primitives/calendar/src/calendar-grid-head.directive.ts","../../../packages/primitives/calendar/src/calendar-grid-row.directive.ts","../../../packages/primitives/calendar/src/calendar-grid.directive.ts","../../../packages/primitives/calendar/src/calendar-head-cell.directive.ts","../../../packages/primitives/calendar/src/calendar-header.directive.ts","../../../packages/primitives/calendar/src/calendar-heading.directive.ts","../../../packages/primitives/calendar/src/calendar-next.directive.ts","../../../packages/primitives/calendar/src/calendar-prev.directive.ts","../../../packages/primitives/calendar/src/calendar.ts","../../../packages/primitives/calendar/src/calendar-root.directive.ts","../../../packages/primitives/calendar/index.ts","../../../packages/primitives/calendar/radix-ng-primitives-calendar.ts"],"sourcesContent":["import { inject, InjectionToken, InputSignal, ModelSignal, WritableSignal } from '@angular/core';\nimport { DateValue } from '@internationalized/date';\nimport { DateMatcher, Formatter } from '@radix-ng/primitives/core';\n\nexport interface CalendarRootContextToken {\n nextPage?: (nextPageFunc?: (date: DateValue) => DateValue) => void;\n prevPage?: (nextPageFunc?: (date: DateValue) => DateValue) => void;\n isNextButtonDisabled: (nextPageFunc?: (date: DateValue) => DateValue) => boolean;\n isPrevButtonDisabled: (nextPageFunc?: (date: DateValue) => DateValue) => boolean;\n headingValue: WritableSignal<string>;\n dir: InputSignal<'ltr' | 'rtl'>;\n readonly: boolean;\n numberOfMonths: InputSignal<number>;\n placeholder: ModelSignal<DateValue>;\n pagedNavigation: boolean;\n disabled: InputSignal<boolean>;\n isDateSelected?: DateMatcher;\n isDateDisabled?: DateMatcher;\n isDateUnavailable: DateMatcher;\n formatter: Formatter;\n onDateChange: (date: DateValue) => void;\n currentElement: HTMLElement;\n}\n\nexport const CALENDAR_ROOT_CONTEXT = new InjectionToken<CalendarRootContextToken>('CalendarRootContext');\n\nexport function injectCalendarRootContext(): CalendarRootContextToken {\n return inject(CALENDAR_ROOT_CONTEXT);\n}\n","import { AfterViewInit, computed, Directive, ElementRef, inject, input } from '@angular/core';\nimport { DateValue, getLocalTimeZone, isSameDay, isSameMonth, isToday } from '@internationalized/date';\nimport * as kbd from '@radix-ng/primitives/core';\nimport { getDaysInMonth, toDate } from '@radix-ng/primitives/core';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: '[rdxCalendarCellTrigger]',\n exportAs: 'rdxCalendarCellTrigger',\n host: {\n role: 'button',\n '[attr.aria-label]': 'labelText()',\n '[attr.aria-disabled]': 'isDisabled() || isUnavailable() ? true : undefined',\n '[attr.data-rdx-calendar-cell-trigger]': '\"\"',\n '[attr.tabindex]': 'isFocusedDate() ? 0 : isOutsideView() || isDisabled() ? undefined : -1',\n '[attr.data-value]': 'day()?.toString()',\n '[attr.data-disabled]': 'isDisabled() ? \"\" : undefined',\n '[attr.data-today]': 'isDateToday() ? \"\" : undefined',\n '[attr.data-outside-view]': 'isOutsideView() ? \"\" : undefined',\n '[attr.data-selected]': 'isSelectedDate() ? \"\" : undefined',\n '[attr.data-unavailable]': 'isUnavailable() ? \"\" : undefined',\n '[attr.data-focus]': 'isFocusedDate() ? \"\" : undefined',\n\n '(click)': 'onClick()',\n\n '(keydown)': 'onArrowKey($event)'\n }\n})\nexport class RdxCalendarCellTriggerDirective implements AfterViewInit {\n private readonly rootContext = injectCalendarRootContext();\n private readonly elementRef = inject(ElementRef<HTMLElement>);\n\n /**\n * The date value provided to the cell trigger\n */\n readonly day = input<DateValue>();\n\n /**\n * The month in which the cell is rendered\n */\n readonly month = input<DateValue>();\n\n /**\n * Current day\n */\n readonly dayValue = computed(() => this.day()?.day.toLocaleString());\n\n /**\n * Current today state\n */\n readonly isDateToday = computed(() => {\n return isToday(<DateValue>this.day(), getLocalTimeZone());\n });\n\n /**\n * Current selected state\n */\n readonly isSelectedDate = computed(() => this.rootContext.isDateSelected!(<DateValue>this.day()));\n\n readonly isDisabled = computed(() => this.rootContext.isDateDisabled!(<DateValue>this.day()));\n\n readonly isOutsideView = computed(() => {\n return !isSameMonth(<DateValue>this.day(), <DateValue>this.month());\n });\n\n readonly isFocusedDate = computed(() => {\n return !this.rootContext.disabled() && isSameDay(<DateValue>this.day(), this.rootContext.placeholder());\n });\n\n readonly isUnavailable = computed(() => this.rootContext.isDateUnavailable?.(<DateValue>this.day()) ?? false);\n\n readonly labelText = computed(() => {\n return this.rootContext.formatter.custom(toDate(<DateValue>this.day()), {\n weekday: 'long',\n month: 'long',\n day: 'numeric',\n year: 'numeric'\n });\n });\n\n /**\n * @ignore\n */\n currentElement!: HTMLElement;\n\n ngAfterViewInit() {\n this.currentElement = this.elementRef.nativeElement;\n }\n\n protected onClick() {\n this.changeDate(this.day()!);\n }\n\n protected onArrowKey(event: KeyboardEvent) {\n const code = event.code;\n if (![\n kbd.ARROW_RIGHT,\n kbd.ARROW_LEFT,\n kbd.ARROW_UP,\n kbd.ARROW_DOWN,\n kbd.ENTER,\n kbd.SPACE_CODE\n ].includes(code)) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n const indexIncrementation = 7;\n const sign = this.rootContext.dir() === 'rtl' ? -1 : 1;\n\n switch (code) {\n case kbd.ARROW_RIGHT:\n this.shiftFocus(this.currentElement, sign);\n break;\n case kbd.ARROW_LEFT:\n this.shiftFocus(this.currentElement, -sign);\n break;\n case kbd.ARROW_UP:\n this.shiftFocus(this.currentElement, -indexIncrementation);\n break;\n case kbd.ARROW_DOWN:\n this.shiftFocus(this.currentElement, indexIncrementation);\n break;\n case kbd.ENTER:\n case kbd.SPACE_CODE:\n this.changeDate(<DateValue>this.day());\n }\n }\n\n private shiftFocus(node: HTMLElement, add: number) {\n const parentElement = this.rootContext.currentElement;\n\n const allCollectionItems: HTMLElement[] = this.getSelectableCells(parentElement);\n if (!allCollectionItems.length) return;\n\n const index = allCollectionItems.indexOf(node);\n const newIndex = index + add;\n\n if (newIndex >= 0 && newIndex < allCollectionItems.length) {\n if (allCollectionItems[newIndex].hasAttribute('data-disabled')) {\n this.shiftFocus(allCollectionItems[newIndex], add);\n }\n allCollectionItems[newIndex].focus();\n return;\n }\n\n if (newIndex < 0) {\n if (!this.rootContext.prevPage) return;\n\n this.rootContext.prevPage();\n\n setTimeout(() => {\n const newCollectionItems = this.getSelectableCells(parentElement);\n if (!newCollectionItems.length) return;\n\n if (!this.rootContext.pagedNavigation && this.rootContext.numberOfMonths() > 1) {\n // Placeholder is set to the first month of the new page\n const numberOfDays = getDaysInMonth(this.rootContext.placeholder());\n const computedIndex = numberOfDays - Math.abs(newIndex);\n if (newCollectionItems[computedIndex].hasAttribute('data-disabled')) {\n this.shiftFocus(newCollectionItems[computedIndex], add);\n }\n newCollectionItems[computedIndex].focus();\n return;\n }\n\n const computedIndex = newCollectionItems.length - Math.abs(newIndex);\n if (newCollectionItems[computedIndex].hasAttribute('data-disabled')) {\n this.shiftFocus(newCollectionItems[computedIndex], add);\n }\n newCollectionItems[computedIndex].focus();\n });\n }\n\n if (newIndex >= allCollectionItems.length) {\n if (!this.rootContext.nextPage) return;\n\n this.rootContext.nextPage();\n\n setTimeout(() => {\n const newCollectionItems = this.getSelectableCells(parentElement);\n if (!newCollectionItems.length) return;\n\n if (!this.rootContext.pagedNavigation && this.rootContext.numberOfMonths() > 1) {\n const numberOfDays = getDaysInMonth(\n this.rootContext.placeholder().add({ months: this.rootContext.numberOfMonths() - 1 })\n );\n\n const computedIndex =\n newIndex - allCollectionItems.length + (newCollectionItems.length - numberOfDays);\n\n if (newCollectionItems[computedIndex].hasAttribute('data-disabled')) {\n this.shiftFocus(newCollectionItems[computedIndex], add);\n }\n newCollectionItems[computedIndex].focus();\n return;\n }\n\n const computedIndex = newIndex - allCollectionItems.length;\n if (newCollectionItems[computedIndex].hasAttribute('data-disabled')) {\n this.shiftFocus(newCollectionItems[computedIndex], add);\n }\n\n newCollectionItems[computedIndex].focus();\n });\n }\n }\n\n /**\n * @ignore\n */\n SELECTOR = '[data-rdx-calendar-cell-trigger]:not([data-outside-view]):not([data-outside-visible-view])';\n\n /**\n * @ignore\n */\n getSelectableCells(calendar: HTMLElement): HTMLElement[] {\n return Array.from(calendar.querySelectorAll(this.SELECTOR)) ?? [];\n }\n\n /**\n * @ignore\n */\n changeDate(date: DateValue) {\n this.rootContext.onDateChange(date);\n }\n}\n","import { Directive, input } from '@angular/core';\nimport { DateValue } from '@internationalized/date';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: 'td[rdxCalendarCell]',\n host: {\n role: 'gridcell',\n '[attr.aria-selected]': 'rootContext.isDateSelected?.(date()!) ? true : undefined',\n '[attr.aria-disabled]': 'rootContext.isDateSelected?.(date()!) || rootContext.isDateUnavailable?.(date()!)',\n '[attr.data-disabled]': 'rootContext.isDateSelected?.(date()!) ? \"\" : undefined'\n }\n})\nexport class RdxCalendarCellDirective {\n protected readonly rootContext = injectCalendarRootContext();\n\n /**\n * The date of the cell\n */\n readonly date = input<DateValue>();\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'tbody[rdxCalendarGridBody]'\n})\nexport class RdxCalendarGridBodyDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'thead[rdxCalendarGridHead]',\n host: {\n '[attr.aria-hidden]': 'true'\n }\n})\nexport class RdxCalendarGridHeadDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'tr[rdxCalendarGridRow]'\n})\nexport class RdxCalendarGridRowDirective {}\n","import { computed, Directive } from '@angular/core';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: 'table[rdxCalendarGrid]',\n host: {\n tabindex: '-1',\n role: 'grid',\n '[attr.aria-readonly]': 'readonly()',\n '[attr.aria-disabled]': 'disabled()',\n '[attr.data-readonly]': 'readonly() && \"\"',\n '[attr.data-disabled]': 'disabled() && \"\"'\n }\n})\nexport class RdxCalendarGridDirective {\n private readonly rootContext = injectCalendarRootContext();\n\n readonly disabled = computed(() => (this.rootContext.disabled() ? true : undefined));\n readonly readonly = computed(() => (this.rootContext.readonly ? true : undefined));\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'th[rdxCalendarHeadCell]'\n})\nexport class RdxCalendarHeadCellDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'div[rdxCalendarHeader]'\n})\nexport class RdxCalendarHeaderDirective {}\n","import { computed, Directive } from '@angular/core';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: 'div[rdxCalendarHeading]',\n exportAs: 'rdxCalendarHeading',\n host: {\n '[attr.data-disabled]': 'rootContext.disabled() ? \"\" : undefined'\n }\n})\nexport class RdxCalendarHeadingDirective {\n protected readonly rootContext = injectCalendarRootContext();\n\n readonly headingValue = computed(() => this.rootContext.headingValue());\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { DateValue } from '@internationalized/date';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: 'button[rdxCalendarNext]',\n exportAs: 'rdxCalendarNext',\n host: {\n '(click)': 'onClick()',\n '[disabled]': 'disabled()',\n '[attr.data-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.aria-disabled]': 'disabled() ? \"\" : undefined',\n 'aria-label': 'Next page'\n }\n})\nexport class RdxCalendarNextDirective {\n protected readonly rootContext = injectCalendarRootContext();\n\n /**\n * The function to be used for the `next page`. Overwrites the nextPage function set on the `CalendarRoot`.\n */\n readonly nextPage = input<(placeholder: DateValue) => DateValue>();\n\n /**\n * @ignore\n */\n readonly disabled = computed(\n () => this.rootContext.disabled() || this.rootContext.isNextButtonDisabled(this.nextPage())\n );\n\n protected onClick() {\n this.rootContext.nextPage!(this.nextPage());\n }\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { DateValue } from '@internationalized/date';\nimport { injectCalendarRootContext } from './сalendar-сontext.token';\n\n@Directive({\n selector: 'button[rdxCalendarPrev]',\n exportAs: 'rdxCalendarPrev',\n host: {\n '(click)': 'onClick()',\n '[disabled]': 'disabled()',\n '[attr.data-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.aria-disabled]': 'disabled() ? \"\" : undefined',\n 'aria-label': 'Previous page'\n }\n})\nexport class RdxCalendarPrevDirective {\n protected readonly rootContext = injectCalendarRootContext();\n\n /**\n * The function to be used for the `prev page`. Overwrites the prevPage function set on the `CalendarRoot`.\n */\n readonly prevPage = input<(placeholder: DateValue) => DateValue>();\n\n /**\n * @ignore\n */\n readonly disabled = computed(\n () => this.rootContext.disabled() || this.rootContext.isNextButtonDisabled(this.prevPage())\n );\n\n protected onClick() {\n this.rootContext.prevPage!(this.prevPage());\n }\n}\n","import { computed, InputSignal, ModelSignal, signal, WritableSignal } from '@angular/core';\nimport { DateFields, DateValue, isEqualMonth, isSameDay } from '@internationalized/date';\nimport {\n createFormatter,\n createMonths,\n DateFormatterOptions,\n DateMatcher,\n getDaysInMonth,\n isAfter,\n isBefore,\n Month,\n toDate,\n watch\n} from '@radix-ng/primitives/core';\n\nexport type CalendarProps = {\n locale: InputSignal<string>;\n placeholder: WritableSignal<DateValue>;\n weekStartsOn: InputSignal<0 | 1 | 2 | 3 | 4 | 5 | 6>;\n fixedWeeks: WritableSignal<boolean>;\n numberOfMonths: InputSignal<number>;\n minValue: InputSignal<DateValue | undefined>;\n maxValue: InputSignal<DateValue | undefined>;\n disabled: WritableSignal<boolean>;\n weekdayFormat: InputSignal<Intl.DateTimeFormatOptions['weekday']>;\n pagedNavigation: WritableSignal<boolean>;\n isDateDisabled?: InputSignal<DateMatcher | undefined>;\n isDateUnavailable?: InputSignal<DateMatcher | undefined>;\n calendarLabel: InputSignal<string | undefined>;\n nextPage: InputSignal<((placeholder: DateValue) => DateValue) | undefined>;\n prevPage: InputSignal<((placeholder: DateValue) => DateValue) | undefined>;\n};\n\nexport type CalendarStateProps = {\n date: ModelSignal<DateValue | DateValue[] | undefined>;\n isDateDisabled?: DateMatcher;\n isDateUnavailable?: DateMatcher;\n};\n\nexport function calendarState(props: CalendarStateProps) {\n function isDateSelected(dateObj: DateValue): boolean {\n const currentValue = props.date(); // signal read\n\n if (Array.isArray(currentValue)) {\n return currentValue.some((d) => isSameDay(d, dateObj));\n } else if (!currentValue) {\n return false;\n } else {\n return isSameDay(currentValue, dateObj);\n }\n }\n\n const isInvalid = computed(() => {\n const currentValue = props.date();\n\n if (Array.isArray(currentValue)) {\n if (!currentValue.length) {\n return false;\n }\n for (const dateObj of currentValue) {\n if (props.isDateDisabled?.(dateObj)) return true;\n if (props.isDateUnavailable?.(dateObj)) return true;\n }\n } else {\n if (!currentValue) {\n return false;\n }\n if (props.isDateDisabled?.(currentValue)) return true;\n if (props.isDateUnavailable?.(currentValue)) return true;\n }\n return false;\n });\n\n return {\n isDateSelected,\n isInvalid\n };\n}\n\nfunction handleNextDisabled(lastPeriodInView: DateValue, nextPageFunc: (date: DateValue) => DateValue): DateValue {\n const firstPeriodOfNextPage = nextPageFunc(lastPeriodInView);\n const diff = firstPeriodOfNextPage.compare(lastPeriodInView);\n const duration: DateFields = {};\n if (diff >= 7) duration.day = 1;\n if (diff >= getDaysInMonth(lastPeriodInView)) duration.month = 1;\n return firstPeriodOfNextPage.set({ ...duration });\n}\n\nfunction handlePrevDisabled(firstPeriodInView: DateValue, prevPageFunc: (date: DateValue) => DateValue): DateValue {\n const lastPeriodOfPrevPage = prevPageFunc(firstPeriodInView);\n const diff = firstPeriodInView.compare(lastPeriodOfPrevPage);\n const duration: DateFields = {};\n if (diff >= 7) duration.day = 35;\n if (diff >= getDaysInMonth(firstPeriodInView)) duration.month = 13;\n return lastPeriodOfPrevPage.set({ ...duration });\n}\n\nfunction handleNextPage(date: DateValue, nextPageFunc: (date: DateValue) => DateValue): DateValue {\n return nextPageFunc(date);\n}\n\nfunction handlePrevPage(date: DateValue, prevPageFunc: (date: DateValue) => DateValue): DateValue {\n return prevPageFunc(date);\n}\n\nexport function calendar(props: CalendarProps) {\n const formatter = createFormatter(props.locale());\n\n const headingFormatOptions = computed(() => {\n const options: DateFormatterOptions = {\n calendar: props.placeholder().calendar.identifier\n };\n\n if (props.placeholder().calendar.identifier === 'gregory' && props.placeholder().era === 'BC') {\n options.era = 'short';\n }\n\n return options;\n });\n\n const month = signal<Month<DateValue>[]>(\n createMonths({\n dateObj: props.placeholder(),\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n })\n );\n\n const visibleView = computed(() => {\n return month().map((month) => month.value);\n });\n\n function isOutsideVisibleView(date: DateValue) {\n return !visibleView().some((month) => isEqualMonth(date, month));\n }\n\n const isNextButtonDisabled = (nextPageFunc?: (date: DateValue) => DateValue) => {\n if (!props.maxValue() || !month().length) return false;\n if (props.disabled()) return true;\n\n const lastPeriodInView = month()[month().length - 1].value;\n\n if (!nextPageFunc && !props.nextPage()) {\n const firstPeriodOfNextPage = lastPeriodInView.add({ months: 1 }).set({ day: 1 });\n return isAfter(firstPeriodOfNextPage, <DateValue>props.maxValue());\n }\n\n const firstPeriodOfNextPage = handleNextDisabled(lastPeriodInView, nextPageFunc || props.nextPage()!);\n return isAfter(firstPeriodOfNextPage, <DateValue>props.maxValue());\n };\n\n const isPrevButtonDisabled = (prevPageFunc?: (date: DateValue) => DateValue) => {\n if (!props.minValue() || !month().length) return false;\n if (props.disabled()) return true;\n const firstPeriodInView = month()[0].value;\n\n if (!prevPageFunc && !props.prevPage()) {\n const lastPeriodOfPrevPage = firstPeriodInView.subtract({ months: 1 }).set({ day: 35 });\n return isBefore(lastPeriodOfPrevPage, <DateValue>props.minValue());\n }\n\n const lastPeriodOfPrevPage = handlePrevDisabled(firstPeriodInView, prevPageFunc || props.prevPage()!);\n return isBefore(lastPeriodOfPrevPage, <DateValue>props.minValue());\n };\n\n const nextPage = (nextPageFunc?: (date: DateValue) => DateValue) => {\n const firstDate = month()[0].value;\n\n if (!nextPageFunc && !props.nextPage()) {\n const newDate = firstDate.add({ months: props.pagedNavigation() ? props.numberOfMonths() : 1 });\n\n const newMonth = createMonths({\n dateObj: newDate,\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n });\n\n month.set(newMonth);\n props.placeholder.set(newMonth[0].value.set({ day: 1 }));\n\n return;\n }\n\n const newDate = handleNextPage(firstDate, nextPageFunc || props.nextPage()!);\n const newMonth = createMonths({\n dateObj: newDate,\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n });\n\n month.set(newMonth);\n\n const duration: DateFields = {};\n\n if (!nextPageFunc) {\n const diff = newMonth[0].value.compare(firstDate);\n if (diff >= getDaysInMonth(firstDate)) {\n duration.day = 1;\n }\n\n if (diff >= 365) {\n duration.month = 1;\n }\n }\n\n props.placeholder.set(newMonth[0].value.set({ ...duration }));\n };\n\n const prevPage = (prevPageFunc?: (date: DateValue) => DateValue) => {\n const firstDate = month()[0].value;\n\n if (!prevPageFunc && !props.prevPage()) {\n const newDate = firstDate.subtract({ months: props.pagedNavigation() ? props.numberOfMonths() : 1 });\n\n const newMonth = createMonths({\n dateObj: newDate,\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n });\n\n month.set(newMonth);\n\n props.placeholder.set(newMonth[0].value.set({ day: 1 }));\n return;\n }\n\n const newDate = handlePrevPage(firstDate, prevPageFunc || props.prevPage()!);\n const newMonth = createMonths({\n dateObj: newDate,\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n });\n\n month.set(newMonth);\n\n const duration: DateFields = {};\n\n // Do not adjust the placeholder if the prevPageFunc is defined (overwrite)\n if (!prevPageFunc) {\n const diff = firstDate.compare(newMonth[0].value);\n if (diff >= getDaysInMonth(firstDate)) duration.day = 1;\n\n if (diff >= 365) duration.month = 1;\n }\n\n props.placeholder.set(newMonth[0].value.set({ ...duration }));\n };\n\n function isDateDisabled(dateObj: DateValue) {\n if (props.isDateDisabled?.()?.(dateObj) || props.disabled()) return true;\n if (props.maxValue() && isAfter(dateObj, <DateValue>props.maxValue())) return true;\n if (props.minValue() && isBefore(dateObj, <DateValue>props.minValue())) return true;\n return false;\n }\n\n const isDateUnavailable = (date: DateValue) => {\n return !!props.isDateUnavailable?.()?.(date);\n };\n\n const weekdays = computed(() => {\n if (!month().length) return [];\n return month()[0].weeks[0].map((date) => {\n return formatter.dayOfWeek(toDate(date), props.weekdayFormat());\n });\n });\n\n watch([props.placeholder], ([placeholder]) => {\n if (visibleView().some((month) => isEqualMonth(month, placeholder))) {\n return;\n }\n\n month.set(\n createMonths({\n dateObj: placeholder,\n weekStartsOn: props.weekStartsOn(),\n locale: props.locale(),\n fixedWeeks: props.fixedWeeks(),\n numberOfMonths: props.numberOfMonths()\n })\n );\n });\n\n watch(\n [props.locale, props.weekStartsOn, props.fixedWeeks, props.numberOfMonths],\n ([locale, weekStartsOn, fixedWeeks, numberOfMonths]) => {\n month.set(\n createMonths({\n dateObj: props.placeholder(),\n weekStartsOn: weekStartsOn,\n locale: locale,\n fixedWeeks: fixedWeeks,\n numberOfMonths: numberOfMonths\n })\n );\n }\n );\n\n const headingValue = computed(() => {\n if (!month().length) {\n return '';\n }\n\n if (props.locale() !== formatter.getLocale()) formatter.setLocale(props.locale());\n\n if (month().length === 1) {\n const _month = month()[0].value;\n return `${formatter.fullMonthAndYear(toDate(_month), headingFormatOptions())}`;\n }\n\n const startMonth = toDate(month()[0].value);\n const endMonth = toDate(month()[month().length - 1].value);\n\n const startMonthName = formatter.fullMonth(startMonth, headingFormatOptions());\n const endMonthName = formatter.fullMonth(endMonth, headingFormatOptions());\n const startMonthYear = formatter.fullYear(startMonth, headingFormatOptions());\n const endMonthYear = formatter.fullYear(endMonth, headingFormatOptions());\n\n return startMonthYear === endMonthYear\n ? `${startMonthName} - ${endMonthName} ${endMonthYear}`\n : `${startMonthName} ${startMonthYear} - ${endMonthName} ${endMonthYear}`;\n });\n\n const fullCalendarLabel = computed(() => `${props.calendarLabel() ?? 'Event Date'}, ${headingValue()}`);\n\n return {\n isDateDisabled,\n isDateUnavailable,\n isNextButtonDisabled,\n isPrevButtonDisabled,\n month,\n weekdays,\n visibleView,\n isOutsideVisibleView,\n formatter,\n nextPage,\n prevPage,\n headingValue,\n fullCalendarLabel\n };\n}\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport {\n AfterViewInit,\n booleanAttribute,\n Directive,\n effect,\n ElementRef,\n forwardRef,\n inject,\n input,\n linkedSignal,\n model,\n signal\n} from '@angular/core';\nimport { DateValue, isEqualDay, isSameDay } from '@internationalized/date';\nimport { DateMatcher, Formatter, getDefaultDate, Month, watch } from '@radix-ng/primitives/core';\nimport { calendar, calendarState } from './calendar';\nimport { CALENDAR_ROOT_CONTEXT } from './сalendar-сontext.token';\n\n@Directive({\n selector: '[rdxCalendarRoot]',\n exportAs: 'rdxCalendarRoot',\n providers: [\n { provide: CALENDAR_ROOT_CONTEXT, useExisting: forwardRef(() => RdxCalendarRootDirective) }],\n host: {\n role: 'application',\n '[attr.aria-label]': 'fullCalendarLabel()',\n '[attr.data-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.data-readonly]': 'readonly() ? \"\" : undefined',\n '[attr.data-invalid]': 'isInvalid ? \"\" : undefined',\n '[attr.dir]': 'dir()'\n }\n})\nexport class RdxCalendarRootDirective implements AfterViewInit {\n private readonly elementRef = inject(ElementRef<HTMLElement>);\n\n /**\n * The controlled checked state of the calendar\n */\n readonly value = model<DateValue | DateValue[] | undefined>();\n\n /**\n * The default placeholder date\n */\n readonly defaultPlaceholder = model<DateValue>();\n\n readonly locale = input<string>('en');\n\n readonly defaultDate = getDefaultDate({\n defaultPlaceholder: this.defaultPlaceholder(),\n defaultValue: this.value(),\n locale: this.locale()\n });\n\n /**\n * The placeholder date, which is used to determine what month to display when no date is selected.\n * This updates as the user navigates the calendar and can be used to programmatically control the calendar view\n */\n readonly placeholder = model<DateValue>(this.defaultPlaceholder() ?? this.defaultDate.copy());\n\n readonly multiple = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * Whether to always display 6 weeks in the calendar\n */\n readonly fixedWeeks = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * Whether the calendar is disabled\n */\n readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * Whether to prevent the user from deselecting a date without selecting another date first\n */\n readonly preventDeselect = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * The day of the week to start the calendar on\n */\n readonly weekStartsOn = input<0 | 1 | 2 | 3 | 4 | 5 | 6>(1);\n\n /**\n * The number of months to display at once\n */\n readonly numberOfMonths = input<number>(1);\n\n /**\n * The reading direction of the calendar when applicable.\n */\n readonly dir = input<'ltr' | 'rtl'>('ltr');\n\n /**\n * The minimum date that can be selected\n */\n readonly minValue = input<DateValue>();\n\n /**\n * The maximum date that can be selected\n */\n readonly maxValue = input<DateValue>();\n\n /**\n * The format to use for the weekday strings provided via the weekdays slot prop\n */\n readonly weekdayFormat = input<Intl.DateTimeFormatOptions['weekday']>('narrow');\n\n /**\n * The accessible label for the calendar\n */\n readonly calendarLabel = input<string>();\n\n /**\n * Whether the calendar is readonly\n */\n readonly readonly = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * This property causes the previous and next buttons to navigate by the number of months displayed at once, rather than one month\n */\n readonly pagedNavigation = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n readonly propsNextPage = input<(placeholder: DateValue) => DateValue>();\n\n readonly propsPrevPage = input<(placeholder: DateValue) => DateValue>();\n\n /**\n * A function that returns whether a date is disabled\n */\n readonly isDateDisabled = input<DateMatcher>();\n\n /**\n * A function that returns whether a date is unavailable\n */\n readonly isDateUnavailable = input<DateMatcher>();\n\n readonly initialFocus = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n readonly months = model<Month<DateValue>[]>();\n\n /**\n * The days of the week\n */\n readonly weekDays = model<string[]>();\n\n protected readonly _fixedWeeks = linkedSignal(this.fixedWeeks);\n\n protected readonly _disabled = linkedSignal(this.disabled);\n\n protected readonly _pagedNavigation = linkedSignal(this.pagedNavigation);\n\n /**\n * @ignore\n */\n readonly headingValue = signal<string>('');\n\n /**\n * @ignore\n */\n readonly fullCalendarLabel = signal<string>('');\n\n /**\n * @ignore\n */\n nextPage: (nextPageFunc?: (date: DateValue) => DateValue) => void;\n\n /**\n * @ignore\n */\n prevPage: (nextPageFunc?: (date: DateValue) => DateValue) => void;\n\n /**\n * @ignore\n */\n isNextButtonDisabled: (nextPageFunc?: (date: DateValue) => DateValue) => boolean;\n\n /**\n * @ignore\n */\n isPrevButtonDisabled: (nextPageFunc?: (date: DateValue) => DateValue) => boolean;\n\n /**\n * @ignore\n */\n isDateSelected: DateMatcher;\n\n /**\n * @ignore\n */\n isInvalid: boolean;\n\n /**\n * @ignore\n */\n isOutsideVisibleView: (date: DateValue) => boolean;\n\n /**\n * @ignore\n */\n formatter: Formatter;\n\n /**\n * @ignore\n */\n currentElement!: HTMLElement;\n\n private readonly calendar = calendar({\n locale: this.locale,\n placeholder: this.placeholder,\n weekStartsOn: this.weekStartsOn,\n fixedWeeks: this._fixedWeeks,\n numberOfMonths: this.numberOfMonths,\n minValue: this.minValue,\n maxValue: this.maxValue,\n disabled: this._disabled,\n weekdayFormat: this.weekdayFormat,\n pagedNavigation: this._pagedNavigation,\n isDateDisabled: this.isDateDisabled,\n isDateUnavailable: this.isDateUnavailable,\n calendarLabel: this.calendarLabel,\n nextPage: this.propsNextPage,\n prevPage: this.propsPrevPage\n });\n\n constructor() {\n this.nextPage = this.calendar.nextPage;\n this.prevPage = this.calendar.prevPage;\n this.isOutsideVisibleView = this.calendar.isOutsideVisibleView;\n this.isNextButtonDisabled = this.calendar.isNextButtonDisabled;\n this.isPrevButtonDisabled = this.calendar.isPrevButtonDisabled;\n this.formatter = this.calendar.formatter;\n\n effect(() => {\n this.months.set(this.calendar.month());\n\n this.weekDays.set(this.calendar.weekdays());\n\n this.fullCalendarLabel.set(this.calendar.fullCalendarLabel());\n\n this.headingValue.set(this.calendar.headingValue());\n\n const { isInvalid, isDateSelected } = calendarState({\n date: this.value,\n isDateDisabled: this.isDateDisabled(),\n isDateUnavailable: this.isDateUnavailable()\n });\n\n this.isDateSelected = isDateSelected;\n this.isInvalid = isInvalid();\n });\n\n watch([this.value], (_modelValue) => {\n if (Array.isArray(_modelValue) && _modelValue.length) {\n const lastValue = _modelValue[_modelValue.length - 1];\n if (lastValue && !isEqualDay(this.placeholder(), <DateValue>lastValue)) {\n this.onPlaceholderChange(<DateValue>lastValue);\n }\n } else if (!Array.isArray(_modelValue) && _modelValue && !isEqualDay(this.placeholder(), _modelValue)) {\n this.onPlaceholderChange(_modelValue);\n }\n });\n }\n\n ngAfterViewInit() {\n this.currentElement = this.elementRef.nativeElement;\n }\n\n /**\n * @ignore\n */\n onPlaceholderChange(value: DateValue) {\n this.placeholder.set(value.copy());\n }\n\n /**\n * @ignore\n */\n onDateChange(date: DateValue) {\n const currentValue = this.value();\n\n if (!this.multiple()) {\n // for single selection\n if (!this.value()) {\n this.value.set(date.copy());\n return;\n }\n\n if (!this.preventDeselect() && isEqualDay(this.value() as DateValue, date)) {\n this.placeholder.set(date.copy());\n this.value.set(undefined);\n } else {\n this.value.set(date.copy());\n }\n } else if (!this.value()) {\n // for multiple selection\n this.value.set([date.copy()]);\n } else if (Array.isArray(currentValue)) {\n const index = currentValue.findIndex((d: DateValue) => isSameDay(d, date));\n if (index === -1) {\n this.value.set([...currentValue, date.copy()]);\n } else if (!this.preventDeselect()) {\n const next = currentValue.filter((d: DateValue) => !isSameDay(d, date));\n if (next.length === 0) {\n this.placeholder.set(date.copy());\n this.value.set(undefined);\n return;\n }\n this.value.set(next.map((d) => d.copy()));\n }\n }\n }\n}\n","import { NgModule } from '@angular/core';\n\nexport { RdxCalendarCellTriggerDirective } from './src/calendar-cell-trigger.directive';\nexport { RdxCalendarCellDirective } from './src/calendar-cell.directive';\nexport { RdxCalendarGridBodyDirective } from './src/calendar-grid-body.directive';\nexport { RdxCalendarGridHeadDirective } from './src/calendar-grid-head.directive';\nexport { RdxCalendarGridRowDirective } from './src/calendar-grid-row.directive';\nexport { RdxCalendarGridDirective } from './src/calendar-grid.directive';\nexport { RdxCalendarHeadCellDirective } from './src/calendar-head-cell.directive';\nexport { RdxCalendarHeaderDirective } from './src/calendar-header.directive';\nexport { RdxCalendarHeadingDirective } from './src/calendar-heading.directive';\nexport { RdxCalendarNextDirective } from './src/calendar-next.directive';\nexport { RdxCalendarPrevDirective } from './src/calendar-prev.directive';\nexport { RdxCalendarRootDirective } from './src/calendar-root.directive';\n\nimport { RdxCalendarCellTriggerDirective } from './src/calendar-cell-trigger.directive';\nimport { RdxCalendarCellDirective } from './src/calendar-cell.directive';\nimport { RdxCalendarGridBodyDirective } from './src/calendar-grid-body.directive';\nimport { RdxCalendarGridHeadDirective } from './src/calendar-grid-head.directive';\nimport { RdxCalendarGridRowDirective } from './src/calendar-grid-row.directive';\nimport { RdxCalendarGridDirective } from './src/calendar-grid.directive';\nimport { RdxCalendarHeadCellDirective } from './src/calendar-head-cell.directive';\nimport { RdxCalendarHeaderDirective } from './src/calendar-header.directive';\nimport { RdxCalendarHeadingDirective } from './src/calendar-heading.directive';\nimport { RdxCalendarNextDirective } from './src/calendar-next.directive';\nimport { RdxCalendarPrevDirective } from './src/calendar-prev.directive';\nimport { RdxCalendarRootDirective } from './src/calendar-root.directive';\n\nconst _imports = [\n RdxCalendarCellTriggerDirective,\n RdxCalendarCellDirective,\n RdxCalendarGridBodyDirective,\n RdxCalendarGridHeadDirective,\n RdxCalendarGridRowDirective,\n RdxCalendarGridDirective,\n RdxCalendarHeadCellDirective,\n RdxCalendarHeaderDirective,\n RdxCalendarPrevDirective,\n RdxCalendarRootDirective,\n RdxCalendarHeadingDirective,\n RdxCalendarNextDirective\n];\n\n@NgModule({\n imports: [..._imports],\n exports: [..._imports]\n})\nexport class RdxCalendarModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
|
|
2
2
|
import { InjectionToken, inject, input, computed, Directive, EventEmitter, booleanAttribute, Output, Input, NgModule } from '@angular/core';
|
3
3
|
import * as i1 from '@radix-ng/primitives/visually-hidden';
|
4
4
|
import { RdxVisuallyHiddenInputDirective } from '@radix-ng/primitives/visually-hidden';
|
5
|
-
import {
|
5
|
+
import { provideValueAccessor } from '@radix-ng/primitives/core';
|
6
6
|
|
7
7
|
const RdxCheckboxToken = new InjectionToken('RdxCheckboxToken');
|
8
8
|
function injectCheckbox() {
|
@@ -208,17 +208,16 @@ class RdxCheckboxDirective {
|
|
208
208
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxCheckboxDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
209
209
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.4", type: RdxCheckboxDirective, isStandalone: true, selector: "[rdxCheckboxRoot]", inputs: { checked: ["checked", "checked", booleanAttribute], indeterminate: ["indeterminate", "indeterminate", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], required: ["required", "required", booleanAttribute] }, outputs: { checkedChange: "checkedChange", indeterminateChange: "indeterminateChange" }, host: { listeners: { "keydown": "onKeyDown($event)", "click": "onClick($event)", "blur": "onBlur()" }, properties: { "disabled": "disabled", "attr.data-disabled": "disabled ? \"\" : null", "attr.data-state": "state" } }, providers: [
|
210
210
|
{ provide: RdxCheckboxToken, useExisting: RdxCheckboxDirective },
|
211
|
-
|
211
|
+
provideValueAccessor(RdxCheckboxDirective)
|
212
212
|
], usesOnChanges: true, ngImport: i0 }); }
|
213
213
|
}
|
214
214
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxCheckboxDirective, decorators: [{
|
215
215
|
type: Directive,
|
216
216
|
args: [{
|
217
217
|
selector: '[rdxCheckboxRoot]',
|
218
|
-
standalone: true,
|
219
218
|
providers: [
|
220
219
|
{ provide: RdxCheckboxToken, useExisting: RdxCheckboxDirective },
|
221
|
-
|
220
|
+
provideValueAccessor(RdxCheckboxDirective)
|
222
221
|
],
|
223
222
|
host: {
|
224
223
|
'[disabled]': 'disabled',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"radix-ng-primitives-checkbox.mjs","sources":["../../../packages/primitives/checkbox/src/checkbox.token.ts","../../../packages/primitives/checkbox/src/checkbox-button.directive.ts","../../../packages/primitives/checkbox/src/checkbox-indicator.directive.ts","../../../packages/primitives/checkbox/src/checkbox-input.directive.ts","../../../packages/primitives/checkbox/src/checkbox.directive.ts","../../../packages/primitives/checkbox/index.ts","../../../packages/primitives/checkbox/radix-ng-primitives-checkbox.ts"],"sourcesContent":["import { inject, InjectionToken } from '@angular/core';\nimport type { RdxCheckboxDirective } from './checkbox.directive';\n\nexport const RdxCheckboxToken = new InjectionToken<RdxCheckboxDirective>('RdxCheckboxToken');\n\nexport function injectCheckbox(): RdxCheckboxDirective {\n return inject(RdxCheckboxToken);\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { injectCheckbox } from './checkbox.token';\n\n@Directive({\n standalone: true,\n selector: 'button[rdxCheckboxButton]',\n host: {\n type: 'button',\n role: 'checkbox',\n tabindex: '-1',\n '[checked]': 'checkbox.checked',\n '[disabled]': 'checkbox.disabled',\n '[required]': 'checkbox.required',\n '[attr.id]': 'elementId()',\n '[attr.aria-checked]': 'checkbox.indeterminate ? \"mixed\" : checkbox.checked',\n '[attr.aria-required]': 'checkbox.required ? \"\" : null',\n '[attr.data-state]': 'checkbox.state',\n '[attr.data-disabled]': 'checkbox.disabled ? \"\" : null'\n }\n})\nexport class RdxCheckboxButtonDirective {\n protected readonly checkbox = injectCheckbox();\n\n readonly id = input<string | null>(null);\n\n protected readonly elementId = computed(() => (this.id() ? this.id() : `rdx-checkbox-${this.id()}`));\n}\n","import { Directive } from '@angular/core';\nimport { injectCheckbox } from './checkbox.token';\n\n@Directive({\n selector: '[rdxCheckboxIndicator]',\n standalone: true,\n host: {\n '[style.pointer-events]': '\"none\"',\n '[attr.aria-checked]': 'checkbox.indeterminate ? \"mixed\" : checkbox.checked',\n '[attr.data-state]': 'checkbox.state',\n '[attr.data-disabled]': 'checkbox.disabled ? \"\" : null'\n }\n})\nexport class RdxCheckboxIndicatorDirective {\n protected readonly checkbox = injectCheckbox();\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { RdxVisuallyHiddenInputDirective } from '@radix-ng/primitives/visually-hidden';\nimport { injectCheckbox } from './checkbox.token';\n\n@Directive({\n standalone: true,\n selector: 'input[rdxCheckboxInput]',\n hostDirectives: [{ directive: RdxVisuallyHiddenInputDirective, inputs: ['feature: \"fully-hidden\"'] }],\n host: {\n type: 'checkbox',\n tabindex: '-1',\n '[checked]': 'checkbox.checked',\n '[disabled]': 'checkbox.disabled',\n '[required]': 'checkbox.required',\n '[attr.id]': 'elementId()',\n '[attr.aria-hidden]': 'true',\n '[attr.aria-checked]': 'checkbox.indeterminate ? \"mixed\" : checkbox.checked',\n '[attr.aria-required]': 'checkbox.required ? \"\" : null',\n '[attr.data-state]': 'checkbox.state',\n '[attr.data-disabled]': 'checkbox.disabled ? \"\" : null',\n '[attr.value]': 'value()'\n }\n})\nexport class RdxCheckboxInputDirective {\n protected readonly checkbox = injectCheckbox();\n\n readonly id = input<string>();\n\n protected readonly elementId = computed(() => (this.id() ? this.id() : `rdx-checkbox-${this.id()}`));\n\n protected readonly value = computed(() => {\n const state = this.checkbox.state;\n if (state === 'indeterminate') {\n return '';\n }\n\n return state ? 'on' : 'off';\n });\n}\n","import { booleanAttribute, Directive, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { RdxCheckboxToken } from './checkbox.token';\n\nexport type CheckboxState = 'unchecked' | 'checked' | 'indeterminate';\n\n/**\n * @group Components\n */\n@Directive({\n selector: '[rdxCheckboxRoot]',\n standalone: true,\n providers: [\n { provide: RdxCheckboxToken, useExisting: RdxCheckboxDirective },\n { provide: NG_VALUE_ACCESSOR, useExisting: RdxCheckboxDirective, multi: true }\n ],\n host: {\n '[disabled]': 'disabled',\n '[attr.data-disabled]': 'disabled ? \"\" : null',\n '[attr.data-state]': 'state',\n\n '(keydown)': 'onKeyDown($event)',\n '(click)': 'onClick($event)',\n '(blur)': 'onBlur()'\n }\n})\nexport class RdxCheckboxDirective implements ControlValueAccessor, OnChanges {\n /**\n * The controlled checked state of the checkbox. Must be used in conjunction with onCheckedChange.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) checked = false;\n\n /**\n * Defines whether the checkbox is indeterminate.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) indeterminate = false;\n\n /**\n * Defines whether the checkbox is disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled = false;\n\n /**\n * @group Props\n */\n @Input({ transform: booleanAttribute }) required = false;\n\n /**\n * Event emitted when the checkbox checked state changes.\n * @group Emits\n */\n @Output() readonly checkedChange = new EventEmitter<boolean>();\n\n /**\n * Event emitted when the indeterminate state changes.\n * @group Emits\n */\n @Output() readonly indeterminateChange = new EventEmitter<boolean>();\n\n /**\n * Determine the state\n */\n get state(): CheckboxState {\n if (this.indeterminate) {\n return 'indeterminate';\n }\n return this.checked ? 'checked' : 'unchecked';\n }\n\n /**\n * Store the callback function that should be called when the checkbox checked state changes.\n * @internal\n */\n private onChange?: (checked: boolean) => void;\n\n /**\n * Store the callback function that should be called when the checkbox is blurred.\n * @internal\n */\n private onTouched?: () => void;\n\n protected onKeyDown(event: KeyboardEvent): void {\n // According to WAI ARIA, Checkboxes don't activate on enter keypress\n if (event.key === 'Enter') {\n event.preventDefault();\n }\n }\n\n protected onClick($event: MouseEvent): void {\n if (this.disabled) {\n return;\n }\n\n this.checked = this.indeterminate ? true : !this.checked;\n this.checkedChange.emit(this.checked);\n this.onChange?.(this.checked);\n\n if (this.indeterminate) {\n this.indeterminate = false;\n this.indeterminateChange.emit(this.indeterminate);\n }\n\n $event.preventDefault();\n }\n\n protected onBlur(): void {\n this.onTouched?.();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['checked'] && !changes['checked'].isFirstChange()) {\n this.checkedChange.emit(this.checked);\n }\n if (changes['indeterminate'] && !changes['indeterminate'].isFirstChange()) {\n this.indeterminateChange.emit(this.indeterminate);\n }\n }\n\n /**\n * Sets the checked state of the checkbox.\n * @param checked The checked state of the checkbox.\n * @internal\n */\n writeValue(checked: boolean): void {\n this.checked = checked;\n }\n\n /**\n * Registers a callback function that should be called when the checkbox checked state changes.\n * @param fn The callback function.\n * @internal\n */\n registerOnChange(fn: (checked: boolean) => void): void {\n this.onChange = fn;\n }\n\n /**\n * Registers a callback function that should be called when the checkbox is blurred.\n * @param fn The callback function.\n * @internal\n */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n /**\n * Sets the disabled state of the checkbox.\n * @param isDisabled The disabled state of the checkbox.\n * @internal\n */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { RdxCheckboxButtonDirective } from './src/checkbox-button.directive';\nimport { RdxCheckboxIndicatorDirective } from './src/checkbox-indicator.directive';\nimport { RdxCheckboxInputDirective } from './src/checkbox-input.directive';\nimport { RdxCheckboxDirective } from './src/checkbox.directive';\n\nexport * from './src/checkbox-button.directive';\nexport * from './src/checkbox-indicator.directive';\nexport * from './src/checkbox-input.directive';\nexport * from './src/checkbox.directive';\nexport type { CheckboxState } from './src/checkbox.directive';\nexport * from './src/checkbox.token';\n\nconst _imports = [\n RdxCheckboxInputDirective,\n RdxCheckboxDirective,\n RdxCheckboxButtonDirective,\n RdxCheckboxIndicatorDirective\n];\n\n@NgModule({\n imports: [..._imports],\n exports: [..._imports]\n})\nexport class RdxCheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"radix-ng-primitives-checkbox.mjs","sources":["../../../packages/primitives/checkbox/src/checkbox.token.ts","../../../packages/primitives/checkbox/src/checkbox-button.directive.ts","../../../packages/primitives/checkbox/src/checkbox-indicator.directive.ts","../../../packages/primitives/checkbox/src/checkbox-input.directive.ts","../../../packages/primitives/checkbox/src/checkbox.directive.ts","../../../packages/primitives/checkbox/index.ts","../../../packages/primitives/checkbox/radix-ng-primitives-checkbox.ts"],"sourcesContent":["import { inject, InjectionToken } from '@angular/core';\nimport type { RdxCheckboxDirective } from './checkbox.directive';\n\nexport const RdxCheckboxToken = new InjectionToken<RdxCheckboxDirective>('RdxCheckboxToken');\n\nexport function injectCheckbox(): RdxCheckboxDirective {\n return inject(RdxCheckboxToken);\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { injectCheckbox } from './checkbox.token';\n\n@Directive({\n standalone: true,\n selector: 'button[rdxCheckboxButton]',\n host: {\n type: 'button',\n role: 'checkbox',\n tabindex: '-1',\n '[checked]': 'checkbox.checked',\n '[disabled]': 'checkbox.disabled',\n '[required]': 'checkbox.required',\n '[attr.id]': 'elementId()',\n '[attr.aria-checked]': 'checkbox.indeterminate ? \"mixed\" : checkbox.checked',\n '[attr.aria-required]': 'checkbox.required ? \"\" : null',\n '[attr.data-state]': 'checkbox.state',\n '[attr.data-disabled]': 'checkbox.disabled ? \"\" : null'\n }\n})\nexport class RdxCheckboxButtonDirective {\n protected readonly checkbox = injectCheckbox();\n\n readonly id = input<string | null>(null);\n\n protected readonly elementId = computed(() => (this.id() ? this.id() : `rdx-checkbox-${this.id()}`));\n}\n","import { Directive } from '@angular/core';\nimport { injectCheckbox } from './checkbox.token';\n\n@Directive({\n selector: '[rdxCheckboxIndicator]',\n standalone: true,\n host: {\n '[style.pointer-events]': '\"none\"',\n '[attr.aria-checked]': 'checkbox.indeterminate ? \"mixed\" : checkbox.checked',\n '[attr.data-state]': 'checkbox.state',\n '[attr.data-disabled]': 'checkbox.disabled ? \"\" : null'\n }\n})\nexport class RdxCheckboxIndicatorDirective {\n protected readonly checkbox = injectCheckbox();\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { RdxVisuallyHiddenInputDirective } from '@radix-ng/primitives/visually-hidden';\nimport { injectCheckbox } from './checkbox.token';\n\n@Directive({\n standalone: true,\n selector: 'input[rdxCheckboxInput]',\n hostDirectives: [{ directive: RdxVisuallyHiddenInputDirective, inputs: ['feature: \"fully-hidden\"'] }],\n host: {\n type: 'checkbox',\n tabindex: '-1',\n '[checked]': 'checkbox.checked',\n '[disabled]': 'checkbox.disabled',\n '[required]': 'checkbox.required',\n '[attr.id]': 'elementId()',\n '[attr.aria-hidden]': 'true',\n '[attr.aria-checked]': 'checkbox.indeterminate ? \"mixed\" : checkbox.checked',\n '[attr.aria-required]': 'checkbox.required ? \"\" : null',\n '[attr.data-state]': 'checkbox.state',\n '[attr.data-disabled]': 'checkbox.disabled ? \"\" : null',\n '[attr.value]': 'value()'\n }\n})\nexport class RdxCheckboxInputDirective {\n protected readonly checkbox = injectCheckbox();\n\n readonly id = input<string>();\n\n protected readonly elementId = computed(() => (this.id() ? this.id() : `rdx-checkbox-${this.id()}`));\n\n protected readonly value = computed(() => {\n const state = this.checkbox.state;\n if (state === 'indeterminate') {\n return '';\n }\n\n return state ? 'on' : 'off';\n });\n}\n","import { booleanAttribute, Directive, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { ControlValueAccessor } from '@angular/forms';\nimport { provideValueAccessor } from '@radix-ng/primitives/core';\nimport { RdxCheckboxToken } from './checkbox.token';\n\nexport type CheckboxState = 'unchecked' | 'checked' | 'indeterminate';\n\n/**\n * @group Components\n */\n@Directive({\n selector: '[rdxCheckboxRoot]',\n providers: [\n { provide: RdxCheckboxToken, useExisting: RdxCheckboxDirective },\n provideValueAccessor(RdxCheckboxDirective)],\n host: {\n '[disabled]': 'disabled',\n '[attr.data-disabled]': 'disabled ? \"\" : null',\n '[attr.data-state]': 'state',\n\n '(keydown)': 'onKeyDown($event)',\n '(click)': 'onClick($event)',\n '(blur)': 'onBlur()'\n }\n})\nexport class RdxCheckboxDirective implements ControlValueAccessor, OnChanges {\n /**\n * The controlled checked state of the checkbox. Must be used in conjunction with onCheckedChange.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) checked = false;\n\n /**\n * Defines whether the checkbox is indeterminate.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) indeterminate = false;\n\n /**\n * Defines whether the checkbox is disabled.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) disabled = false;\n\n /**\n * @group Props\n */\n @Input({ transform: booleanAttribute }) required = false;\n\n /**\n * Event emitted when the checkbox checked state changes.\n * @group Emits\n */\n @Output() readonly checkedChange = new EventEmitter<boolean>();\n\n /**\n * Event emitted when the indeterminate state changes.\n * @group Emits\n */\n @Output() readonly indeterminateChange = new EventEmitter<boolean>();\n\n /**\n * Determine the state\n */\n get state(): CheckboxState {\n if (this.indeterminate) {\n return 'indeterminate';\n }\n return this.checked ? 'checked' : 'unchecked';\n }\n\n /**\n * Store the callback function that should be called when the checkbox checked state changes.\n * @internal\n */\n private onChange?: (checked: boolean) => void;\n\n /**\n * Store the callback function that should be called when the checkbox is blurred.\n * @internal\n */\n private onTouched?: () => void;\n\n protected onKeyDown(event: KeyboardEvent): void {\n // According to WAI ARIA, Checkboxes don't activate on enter keypress\n if (event.key === 'Enter') {\n event.preventDefault();\n }\n }\n\n protected onClick($event: MouseEvent): void {\n if (this.disabled) {\n return;\n }\n\n this.checked = this.indeterminate ? true : !this.checked;\n this.checkedChange.emit(this.checked);\n this.onChange?.(this.checked);\n\n if (this.indeterminate) {\n this.indeterminate = false;\n this.indeterminateChange.emit(this.indeterminate);\n }\n\n $event.preventDefault();\n }\n\n protected onBlur(): void {\n this.onTouched?.();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['checked'] && !changes['checked'].isFirstChange()) {\n this.checkedChange.emit(this.checked);\n }\n if (changes['indeterminate'] && !changes['indeterminate'].isFirstChange()) {\n this.indeterminateChange.emit(this.indeterminate);\n }\n }\n\n /**\n * Sets the checked state of the checkbox.\n * @param checked The checked state of the checkbox.\n * @internal\n */\n writeValue(checked: boolean): void {\n this.checked = checked;\n }\n\n /**\n * Registers a callback function that should be called when the checkbox checked state changes.\n * @param fn The callback function.\n * @internal\n */\n registerOnChange(fn: (checked: boolean) => void): void {\n this.onChange = fn;\n }\n\n /**\n * Registers a callback function that should be called when the checkbox is blurred.\n * @param fn The callback function.\n * @internal\n */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n /**\n * Sets the disabled state of the checkbox.\n * @param isDisabled The disabled state of the checkbox.\n * @internal\n */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { RdxCheckboxButtonDirective } from './src/checkbox-button.directive';\nimport { RdxCheckboxIndicatorDirective } from './src/checkbox-indicator.directive';\nimport { RdxCheckboxInputDirective } from './src/checkbox-input.directive';\nimport { RdxCheckboxDirective } from './src/checkbox.directive';\n\nexport * from './src/checkbox-button.directive';\nexport * from './src/checkbox-indicator.directive';\nexport * from './src/checkbox-input.directive';\nexport * from './src/checkbox.directive';\nexport type { CheckboxState } from './src/checkbox.directive';\nexport * from './src/checkbox.token';\n\nconst _imports = [\n RdxCheckboxInputDirective,\n RdxCheckboxDirective,\n RdxCheckboxButtonDirective,\n RdxCheckboxIndicatorDirective\n];\n\n@NgModule({\n imports: [..._imports],\n exports: [..._imports]\n})\nexport class RdxCheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|