Skip to content

feat(datetime-input): add component #IX-3628#2359

Merged
danielleroux merged 201 commits intorelease-5.0.0from
feature/IX-3861-datetime-input
Mar 16, 2026
Merged

feat(datetime-input): add component #IX-3628#2359
danielleroux merged 201 commits intorelease-5.0.0from
feature/IX-3861-datetime-input

Conversation

@alexkaduk
Copy link
Copy Markdown
Collaborator

@alexkaduk alexkaduk commented Jan 25, 2026

💡 What is the current behavior?

No datetime input component exists. Users must use separate date and time inputs.

🆕 What is the new behavior?

Added ix-datetime-input component - a combined date and time input with integrated picker.

Features:

  • Combines date and time selection in single input
  • Wraps ix-datetime-picker with auto-open/close behavior
  • Display format: dateFormat + timeFormat
  • Full validation: format, min/max date, required

🏁 Checklist

A pull request can only be merged if all of these conditions are met (where applicable):

  • 🦮 Accessibility (a11y) features were implemented
  • 🗺️ Internationalization (i18n) - no hard coded strings
  • 📲 Responsiveness - components handle viewport changes and content overflow gracefully
  • 📕 Add or update a Storybook story
  • 📄 Documentation was reviewed/updated siemens/ix-docs
  • 🧪 Unit tests were added/updated and pass (pnpm test)
  • 📸 Visual regression tests were added/updated and pass (Guide)
  • 🧐 Static code analysis passes (pnpm lint)
  • 🏗️ Successful compilation (pnpm build, changes pushed)

Related docu PR is siemens/ix-docs#165

Comment thread packages/core/src/components/datetime-input/datetime-input.tsx Outdated
Comment thread packages/core/src/components/datetime-input/datetime-input.tsx Outdated
Comment thread packages/core/src/components/datetime-input/datetime-input.tsx Outdated
Comment thread packages/core/src/components/datetime-input/datetime-input.tsx Outdated
Comment thread packages/core/src/components/datetime-input/datetime-input.types.ts
Comment thread packages/core/src/components/date-time-card/date-time-card.tsx
Comment thread packages/core/src/components/time-picker/time-picker.tsx Outdated
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud bot commented Mar 9, 2026

Comment thread packages/core/src/components/datetime-input/datetime-input.tsx Outdated
Copy link
Copy Markdown
Collaborator

@danielleroux danielleroux left a comment

Choose a reason for hiding this comment

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

Restore valid datetime is not possible without interacting with with both components date and time:

  • Enter some valid date e.g "2026/03/12 08:42:24"
  • Change the seconds to 99
  • Selecting in the seconds = 30
  • Press "Confirm"
    -- > Picker still invalid

nuke-ellington
nuke-ellington previously approved these changes Mar 11, 2026
Copy link
Copy Markdown
Collaborator

@danielleroux danielleroux left a comment

Choose a reason for hiding this comment

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

I miss the following tests:

  • framework-smoke-tests
  • Component testcase include axe check
    regressionTest('accessibility', async ({ mount, makeAxeBuilder }) => {
    await mount(`
    <ix-tabs>
    <ix-tab-item>Item 1</ix-tab-item>
    <ix-tab-item>Item 2</ix-tab-item>
    <ix-tab-item>Item 3</ix-tab-item>
    </ix-tabs>
    `);
    const accessibilityScanResults = await makeAxeBuilder().analyze();
    expect(accessibilityScanResults.violations).toEqual([]);
    });

@sonarqubecloud
Copy link
Copy Markdown

@danielleroux danielleroux self-requested a review March 16, 2026 13:48
@danielleroux danielleroux merged commit 8378937 into release-5.0.0 Mar 16, 2026
25 of 26 checks passed
@danielleroux danielleroux deleted the feature/IX-3861-datetime-input branch March 16, 2026 15:09
@github-actions github-actions bot mentioned this pull request Apr 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants