Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/optional-collection-peers.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'@siemens/ix': major
---

V6 makes the Stencil collection's `@floating-ui/dom`, `animejs`, `luxon`, and `@stencil/core` dependencies optional peer dependencies. Consumers of the collection must install these packages explicitly; standard bundled entry points remain self-contained.
13 changes: 13 additions & 0 deletions BREAKING_CHANGES/v6.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,19 @@

This document lists breaking changes introduced in Siemens Industrial Experience V6.

## Stencil collection optional peers

Collection metadata and output consumers must install the Stencil collection's
`@floating-ui/dom`, `animejs`, `luxon`, and `@stencil/core` dependencies:

```sh
pnpm add @floating-ui/dom animejs luxon @stencil/core
```

Use the equivalent command for npm, Yarn, or another package manager. Root,
custom-elements, loader, hydrate, and framework consumers do not need to install
these packages solely for IX because those outputs bundle the runtime libraries.

## Siemens design tokens

IX components now use SI Theme 6 system and reference tokens instead of legacy
Expand Down
33 changes: 26 additions & 7 deletions packages/core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -132,16 +132,15 @@
},
"siemensix": {
"dependencies": [
"@stencil/core"
"@floating-ui/dom",
"@stencil/core",
"animejs",
"luxon"
]
},
"dependencies": {
"@floating-ui/dom": "^1.6.13",
"animejs": "^4.1.2",
"luxon": "^3.4.4"
},
"devDependencies": {
"@axe-core/playwright": "catalog:",
"@floating-ui/dom": "^1.6.13",
"@playwright/test": "catalog:",
"@siemens/ix-icons": "catalog:",
"@stencil-community/eslint-plugin": "^0.10.0",
Expand All @@ -162,6 +161,7 @@
"@typescript-eslint/eslint-plugin": "^8.56.1",
"@typescript-eslint/parser": "^8.56.1",
"animate.css": "~4.1.1",
"animejs": "^4.1.2",
"autoprefixer": "10.4.20",
"cssnano": "^6.1.2",
"cz-conventional-changelog": "^3.3.0",
Expand All @@ -172,6 +172,7 @@
"http-server": "^14.1.1",
"jest": "^29.7.0",
"jest-cli": "^29.7.0",
"luxon": "^3.4.4",
"mustache": "^4.2.0",
"postcss": "^8.4.40",
"puppeteer": "21.1.1",
Expand All @@ -183,7 +184,25 @@
"vitest": "^4.1.4"
},
"peerDependencies": {
"@siemens/ix-icons": "^3.5.0"
"@floating-ui/dom": "^1.6.13",
"@siemens/ix-icons": "^3.5.0",
"@stencil/core": "^4.43.5",
"animejs": "^4.1.2",
"luxon": "^3.4.4"
},
"peerDependenciesMeta": {
"@floating-ui/dom": {
"optional": true
},
"@stencil/core": {
"optional": true
},
"animejs": {
"optional": true
},
"luxon": {
"optional": true
}
Comment thread
danielleroux marked this conversation as resolved.
},
"config": {
"commitizen": {
Expand Down
6 changes: 3 additions & 3 deletions packages/core/src/components.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ import { DateDropdownOption, DateRangeChangeEvent } from "./components/date-drop
import { DateInputValidityState } from "./components/date-input/date-input.types";
import { DateTimeCardCorners } from "./components/date-time-card/date-time-card.types";
import { DateChangeEvent } from "./components/date-picker/date-picker.events";
import { DateTime } from "luxon";
import { DatePickerYearMonth } from "./components/date-picker/date-picker.types";
import { DateTimeInputValidityState } from "./components/datetime-input/datetime-input.types";
import { DateTimeDateChangeEvent, DateTimeSelectEvent } from "./components/datetime-picker/datetime-picker.types";
import { ElementReference } from "./components/utils/element-reference";
Expand Down Expand Up @@ -86,7 +86,7 @@ export { DateDropdownOption, DateRangeChangeEvent } from "./components/date-drop
export { DateInputValidityState } from "./components/date-input/date-input.types";
export { DateTimeCardCorners } from "./components/date-time-card/date-time-card.types";
export { DateChangeEvent } from "./components/date-picker/date-picker.events";
export { DateTime } from "luxon";
export { DatePickerYearMonth } from "./components/date-picker/date-picker.types";
export { DateTimeInputValidityState } from "./components/datetime-input/datetime-input.types";
export { DateTimeDateChangeEvent, DateTimeSelectEvent } from "./components/datetime-picker/datetime-picker.types";
export { ElementReference } from "./components/utils/element-reference";
Expand Down Expand Up @@ -1443,7 +1443,7 @@ export namespace Components {
* @default DateTime.now().toISO()
*/
"today": string;
"updateSelectedYearMonth": (date: DateTime) => Promise<void>;
"updateSelectedYearMonth": (date: DatePickerYearMonth) => Promise<void>;
/**
* The index of which day to start the week on, based on the Locale#weekdays array. E.g. if the locale is en-us, weekStartIndex = 1 results in starting the week on Monday.
* @default 0
Expand Down
3 changes: 2 additions & 1 deletion packages/core/src/components/date-picker/date-picker.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ import { makeRef } from '../utils/make-ref';
import { requestAnimationFrameNoNgZone } from '../utils/requestAnimationFrame';
import { IxDatePickerComponent } from './date-picker-component';
import type { DateChangeEvent } from './date-picker.events';
import type { DatePickerYearMonth } from './date-picker.types';
import { hasKeyboardMode } from '../utils/internal/mixins/setup.mixin';

interface CalendarWeek {
Expand Down Expand Up @@ -383,7 +384,7 @@ export class DatePicker
* @internal
*/
@Method()
async updateSelectedYearMonth(date: DateTime) {
async updateSelectedYearMonth(date: DatePickerYearMonth) {
this.selectedYear = date.year;
this.selectedMonth = date.month - 1;
}
Expand Down
13 changes: 13 additions & 0 deletions packages/core/src/components/date-picker/date-picker.types.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
/*
* SPDX-FileCopyrightText: 2026 Siemens AG
*
* SPDX-License-Identifier: MIT
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/

export interface DatePickerYearMonth {
year: number;
month: number;
}
19 changes: 9 additions & 10 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading