From d75c8968898fb6c38347b5f0d89db5b31ff3db79 Mon Sep 17 00:00:00 2001 From: Richard Helm Date: Mon, 24 Feb 2025 11:27:19 +0000 Subject: [PATCH] Move files --- .../src/lib/date-picker/date-picker.ts | 4 +- .../src/lib/date-picker/definition.ts | 2 +- .../date-range-picker/date-range-picker.ts | 4 +- .../src/lib/date-range-picker/definition.ts | 2 +- .../date-picker/date-picker-base.spec.ts | 8 +-- .../mixins/calendar-picker.template.ts} | 49 ++++++++++--------- .../mixins/calendar-picker.ts} | 31 ++++++------ 7 files changed, 53 insertions(+), 47 deletions(-) rename libs/components/src/shared/{date-picker/date-picker-base.template.ts => picker-field/mixins/calendar-picker.template.ts} (88%) rename libs/components/src/shared/{date-picker/date-picker-base.ts => picker-field/mixins/calendar-picker.ts} (95%) diff --git a/libs/components/src/lib/date-picker/date-picker.ts b/libs/components/src/lib/date-picker/date-picker.ts index 0bb8f650b0..3a7b4cd075 100644 --- a/libs/components/src/lib/date-picker/date-picker.ts +++ b/libs/components/src/lib/date-picker/date-picker.ts @@ -5,7 +5,7 @@ import { type FormElement, formElements, } from '../../shared/patterns'; -import { DatePickerBase } from '../../shared/date-picker/date-picker-base'; +import { CalendarPicker } from '../../shared/picker-field/mixins/calendar-picker'; import { type DateStr, isValidDateStr, @@ -27,7 +27,7 @@ import { */ @errorText @formElements -export class DatePicker extends DatePickerBase { +export class DatePicker extends CalendarPicker { /** * @internal */ diff --git a/libs/components/src/lib/date-picker/definition.ts b/libs/components/src/lib/date-picker/definition.ts index 8b148123ea..d45a0dd182 100644 --- a/libs/components/src/lib/date-picker/definition.ts +++ b/libs/components/src/lib/date-picker/definition.ts @@ -3,7 +3,7 @@ import { buttonDefinition } from '../button/definition'; import { textFieldDefinition } from '../text-field/definition'; import { dividerDefinition } from '../divider/definition'; import styles from '../../shared/date-picker/date-picker-base.scss?inline'; -import { DatePickerBaseTemplate as template } from '../../shared/date-picker/date-picker-base.template'; +import { CalendarPickerTemplate as template } from '../../shared/picker-field/mixins/calendar-picker.template'; import { createRegisterFunction } from '../../shared/design-system/createRegisterFunction'; import { defineVividComponent } from '../../shared/design-system/defineVividComponent'; import { DatePicker } from './date-picker'; diff --git a/libs/components/src/lib/date-range-picker/date-range-picker.ts b/libs/components/src/lib/date-range-picker/date-range-picker.ts index 225c3bd2bf..b05200e8db 100644 --- a/libs/components/src/lib/date-range-picker/date-range-picker.ts +++ b/libs/components/src/lib/date-range-picker/date-range-picker.ts @@ -15,7 +15,7 @@ import { formatRange, parsePresentationDateRange, } from '../../shared/date-picker/calendar/presentationDateRange'; -import { DatePickerBase } from '../../shared/date-picker/date-picker-base'; +import { CalendarPicker } from '../../shared/picker-field/mixins/calendar-picker'; import { formatPresentationDate } from '../../shared/date-picker/calendar/presentationDate'; import type { DateRange } from '../../shared/date-picker/calendar/dateRange'; @@ -40,7 +40,7 @@ function isDefined(value: T | null | undefined): value is T { */ @errorText @formElements -export class DateRangePicker extends DatePickerBase { +export class DateRangePicker extends CalendarPicker { /** * The initial start value. This value sets the `start` property * only when the `start` property has not been explicitly set. diff --git a/libs/components/src/lib/date-range-picker/definition.ts b/libs/components/src/lib/date-range-picker/definition.ts index 2c7d904760..93fe0bc5ff 100644 --- a/libs/components/src/lib/date-range-picker/definition.ts +++ b/libs/components/src/lib/date-range-picker/definition.ts @@ -3,7 +3,7 @@ import { popupDefinition } from '../popup/definition'; import { textFieldDefinition } from '../text-field/definition'; import { dividerDefinition } from '../divider/definition'; import styles from '../../shared/date-picker/date-picker-base.scss?inline'; -import { DatePickerBaseTemplate as template } from '../../shared/date-picker/date-picker-base.template'; +import { CalendarPickerTemplate as template } from '../../shared/picker-field/mixins/calendar-picker.template'; import { createRegisterFunction } from '../../shared/design-system/createRegisterFunction'; import { defineVividComponent } from '../../shared/design-system/defineVividComponent'; import { DateRangePicker } from './date-range-picker'; diff --git a/libs/components/src/shared/date-picker/date-picker-base.spec.ts b/libs/components/src/shared/date-picker/date-picker-base.spec.ts index dbcc5bb254..5f61646938 100644 --- a/libs/components/src/shared/date-picker/date-picker-base.spec.ts +++ b/libs/components/src/shared/date-picker/date-picker-base.spec.ts @@ -9,7 +9,7 @@ import { import { TextField } from '../../lib/text-field/text-field'; import { Popup } from '../../lib/popup/popup'; import { Button } from '../../lib/button/button'; -import { DatePickerBase } from './date-picker-base'; +import { CalendarPicker } from '../picker-field/mixins/calendar-picker'; import '../../lib/date-picker'; import '../../lib/date-range-picker'; @@ -29,7 +29,7 @@ vi.mock('./calendar/dateStr.ts', async () => ({ describe.each([['vwc-date-picker'], ['vwc-date-range-picker']])( '%s', (COMPONENT_TAG) => { - let element: DatePickerBase; + let element: CalendarPicker; let textField: TextField; let calendarButton: Button; let popup: Popup; @@ -89,7 +89,7 @@ describe.each([['vwc-date-picker'], ['vwc-date-range-picker']])( beforeEach(async () => { element = (await fixture( `<${COMPONENT_TAG}>` - )) as DatePickerBase; + )) as CalendarPicker; textField = element.shadowRoot!.querySelector('.control') as TextField; calendarButton = element.shadowRoot!.querySelector( '#calendar-button' @@ -716,7 +716,7 @@ describe.each([['vwc-date-picker'], ['vwc-date-range-picker']])( }); it('should attach to closest form', async () => { - const { form: formElement } = createFormHTML({ + const { form: formElement } = createFormHTML({ componentTagName: COMPONENT_TAG, fieldName, fieldValue, diff --git a/libs/components/src/shared/date-picker/date-picker-base.template.ts b/libs/components/src/shared/picker-field/mixins/calendar-picker.template.ts similarity index 88% rename from libs/components/src/shared/date-picker/date-picker-base.template.ts rename to libs/components/src/shared/picker-field/mixins/calendar-picker.template.ts index a8a8a5ae12..bb31fbdce6 100644 --- a/libs/components/src/shared/date-picker/date-picker-base.template.ts +++ b/libs/components/src/shared/picker-field/mixins/calendar-picker.template.ts @@ -1,27 +1,30 @@ import { html, ref, repeat, slotted, when } from '@microsoft/fast-element'; import { classNames } from '@microsoft/fast-web-utilities'; -import { Button } from '../../lib/button/button'; -import { Popup } from '../../lib/popup/popup'; -import { TextField } from '../../lib/text-field/text-field'; -import { Divider } from '../../lib/divider/divider'; -import type { VividElementDefinitionContext } from '../design-system/defineVividComponent'; -import type { CalendarGridDate, Weekday } from './calendar/calendarGrid'; -import { areMonthsEqual, monthToStr } from './calendar/month'; -import type { MonthPickerGridCell } from './calendar/monthPickerGrid'; -import type { DatePickerBase } from './date-picker-base'; +import { Button } from '../../../lib/button/button'; +import { Popup } from '../../../lib/popup/popup'; +import { TextField } from '../../../lib/text-field/text-field'; +import { Divider } from '../../../lib/divider/divider'; +import type { VividElementDefinitionContext } from '../../design-system/defineVividComponent'; +import type { + CalendarGridDate, + Weekday, +} from '../../date-picker/calendar/calendarGrid'; +import { areMonthsEqual, monthToStr } from '../../date-picker/calendar/month'; +import type { MonthPickerGridCell } from '../../date-picker/calendar/monthPickerGrid'; import type { CalendarSegment, MonthPickerSegment, Segment, -} from './calendar/segment'; +} from '../../date-picker/calendar/segment'; +import type { CalendarPicker } from './calendar-picker'; function renderDialogHeader(context: VividElementDefinitionContext) { const buttonTag = context.tagFor(Button); - return html`
+ return html`
${when( (x) => x.prevYearButton, - html` + html` <${buttonTag} tabindex="1" class="vwc-button" @@ -38,7 +41,7 @@ function renderDialogHeader(context: VividElementDefinitionContext) { )} ${when( (x) => x.prevMonthButton, - html` + html` <${buttonTag} tabindex="1" class="vwc-button" @@ -53,7 +56,7 @@ function renderDialogHeader(context: VividElementDefinitionContext) {
${when( (x) => x.titleClickable, - html` + html`