Skip to content

feat(react-datepicker-preview): scaffold package and DatePicker component - #36914

Merged
Dmytro Kirpa (dmytrokirpa) merged 5 commits into
masterfrom
feat/datepicker-spec
Oct 20, 2026
Merged

Dmytro Kirpa (dmytrokirpa) merged 5 commits into
masterfrom
feat/datepicker-spec

Conversation

@dmytrokirpa

@dmytrokirpa Dmytro Kirpa (dmytrokirpa) commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

Previous Behavior

DatePicker Compat provides the existing date-input experience. There is no non-compat DatePicker preview package on this branch's base.

New Behavior

Adds the private DatePicker preview library and stories scaffold, workspace registration, and ownership entries.

Defines the proposed non-compat DatePicker API and implementation requirements: compat visual/behavioral parity, Calendar Preview composition, v9 slots and event/data callbacks, validation, focus/accessibility, and a compat migration walkthrough.

The scaffold is not a working DatePicker and does not implement the proposed API.

DatePicker stack

  1. This PR: current scaffold, workspace wiring, spec, and migration guide.
  2. feat(react-datepicker-preview): implement DatePicker behavior, hooks and stories #36920: styled DatePicker implementation, shared base hooks, tests, and stories; package remains private.
  3. feat(react-datepicker-preview): prepare public preview publication #36918: public preview publication configuration, docsite/playground registration, bundle fixture, and initial release change file.
  4. feat(react-headless-components-preview): implement DatePicker (blocked) #36919: headless DatePicker implementation, native modal dialog, tests, CSS Module stories, exports, and release metadata. Validated against the pending headless Calendar API from feat(react-headless-components-preview): add headless Calendar #36752; remains a blocked draft until the Calendar prerequisites merge and the stack is rebased.

Independent prerequisite: #36917 contains the Calendar popup focus/geometry fixes and intentionally is not part of this GitHub PR stack. Merge it first, then rebase the DatePicker stack. Implementation and publication remain blocked drafts until that prerequisite is incorporated.

No new DatePicker-to-Calendar/Input component dependency is introduced by this scaffold PR; composition is implemented in the separate implementation layer. The earlier composition-prerequisite wording in this PR description is superseded by the current stack structure above.

Validation

  • yarn nx run-many -p react-datepicker-preview react-datepicker-preview-stories -t test lint type-check --parallel=3 — passed, including library/story lint and type checks, scaffold tests (20 tests and one snapshot), and dependency builds.
  • git diff --cached --check — passed before committing.
  • Runtime parity, browser interaction, visual regression, and screen-reader validation — not run; the component is still a scaffold.
  • Beachball change file — not added: the new library and stories packages are private and this layer changes no published package.

Related Issue(s)

  • No linked issue provided.

Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com

…icker

<!--
Thank you for submitting a pull request!

Please verify that:
* [ ] Code is up-to-date with the `master` branch
* [ ] Your changes are covered by tests (if possible)
* [ ] You've run `yarn change` locally

PR flow tips:
* [ ] Try to start with a Draft PR
* [ ] Once you're ready (ideally the pipeline is passing) promote your PR to Ready for Review. This step will auto-assign reviewers for your PR.
-->

## Previous Behavior

<!-- This is the behavior we have today -->

DatePicker Compat provides the existing date-input experience. There is no non-compat DatePicker preview package on this branch's base.

## New Behavior

<!-- This is the behavior we should expect with the changes in this PR -->

Adds the private DatePicker preview library and stories scaffold, workspace registration, and ownership entries.

Defines the proposed non-compat DatePicker API and implementation requirements: compat visual/behavioral parity, Calendar Preview composition, v9 slots and event/data callbacks, validation, focus/accessibility, and a compat migration walkthrough.

The scaffold is not a working DatePicker and does not implement the proposed API.

### Planned stack

1. This PR: current scaffold, workspace wiring, spec, and migration guide.
2. Dependent PR: styled DatePicker implementation, shared base hooks suitable for headless reuse, tests, and stories.
3. Dependent PR: headless DatePicker using the base hooks from layer 2, with its integration, tests, and stories.

Layers 2 and 3 are deferred pending resolution of the component-package dependency prerequisite documented in the spec. No new DatePicker-to-Calendar/Input component dependency is introduced here.

### Validation

- `yarn nx run-many -p react-datepicker-preview react-datepicker-preview-stories -t test lint type-check --parallel=3` — passed, including library/story lint and type checks, scaffold tests (20 tests and one snapshot), and dependency builds.
- `git diff --cached --check` — passed before committing.
- Runtime parity, browser interaction, visual regression, and screen-reader validation — not run; the component is still a scaffold.
- Beachball change file — not added: the new library and stories packages are private and this layer changes no published package.

## Related Issue(s)

<!-- Please link the issue being fixed so it gets closed when this is merged. -->

- Fixes # — no linked issue provided.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown

📊 Bundle size report

✅ No changes found

@github-actions

Copy link
Copy Markdown

Pull request demo site: URL

Comment thread .github/CODEOWNERS
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: dmytrokirpa <1492102+dmytrokirpa@users.noreply.github.com>
@dmytrokirpa Dmytro Kirpa (dmytrokirpa) changed the title feat(react-datepicker-preview): scaffold package and specify v9 DatePicker feat(react-datepicker-preview): scaffold package and DatePicker component Oct 19, 2026
@dmytrokirpa
Dmytro Kirpa (dmytrokirpa) marked this pull request as ready for review October 19, 2026 12:37

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! Everything’s wired up for the private scaffold, with the actual implementation and validation coming in the follow-up PRs.

@dmytrokirpa

Copy link
Copy Markdown
Contributor Author

Copilot resolve conflicts

# Conflicts:
#	.github/CODEOWNERS
#	tsconfig.base.all.json

Co-authored-by: dmytrokirpa <1492102+dmytrokirpa@users.noreply.github.com>

Copilot AI commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Copilot resolve conflicts

Merged master and resolved both conflicts in commit 184fa46265.

@dmytrokirpa

Dmytro Kirpa (dmytrokirpa) commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor Author

Copilot run the yarn install and commit/push the updated the yarn.lock

Copilot AI commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Copilot run the yarn install and commit/push the updated the yarn.lock

Ran yarn install and committed the updated yarn.lock in 96e042fd. Immutable install validation passed with the Cypress binary download skipped.

@dmytrokirpa
Dmytro Kirpa (dmytrokirpa) merged commit c2baa5e into master Oct 20, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants