@siemens/ix 0.0.0-pr-2300-20260107140403 → 0.0.0-pr-2300-20260112084442
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/components/index.js +1 -1
- package/components/ix-application.js +1 -1
- package/components/ix-menu.js +1 -1
- package/components/{p-G5i1Siog.js → p-CsHYWHE6.js} +5 -15
- package/components/p-CsHYWHE6.js.map +1 -0
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/ix-application.cjs.entry.js +1 -1
- package/dist/cjs/ix-menu.cjs.entry.js +1 -1
- package/dist/cjs/{theme-switcher-BCyZa6wG.js → theme-switcher-76Td30il.js} +5 -15
- package/dist/cjs/theme-switcher-76Td30il.js.map +1 -0
- package/dist/collection/components/utils/theme-switcher.js +3 -13
- package/dist/collection/components/utils/theme-switcher.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/ix-application.entry.js +1 -1
- package/dist/esm/ix-menu.entry.js +1 -1
- package/dist/esm/{theme-switcher-EbjilqRl.js → theme-switcher-DRqJGlG2.js} +5 -15
- package/dist/esm/theme-switcher-DRqJGlG2.js.map +1 -0
- package/dist/siemens-ix/index.esm.js +1 -1
- package/dist/siemens-ix/{p-f5dd421a.entry.js → p-35d6b656.entry.js} +2 -2
- package/dist/siemens-ix/p-CsHYWHE6.js +2 -0
- package/dist/siemens-ix/p-CsHYWHE6.js.map +1 -0
- package/dist/siemens-ix/{p-f5f9940c.entry.js → p-f27c0a6c.entry.js} +2 -2
- package/dist/siemens-ix/siemens-ix.esm.js +1 -1
- package/hydrate/index.js +3 -13
- package/hydrate/index.mjs +3 -13
- package/package.json +1 -1
- package/components/p-G5i1Siog.js.map +0 -1
- package/dist/cjs/theme-switcher-BCyZa6wG.js.map +0 -1
- package/dist/esm/theme-switcher-EbjilqRl.js.map +0 -1
- package/dist/siemens-ix/p-G5i1Siog.js +0 -2
- package/dist/siemens-ix/p-G5i1Siog.js.map +0 -1
- /package/dist/siemens-ix/{p-f5dd421a.entry.js.map → p-35d6b656.entry.js.map} +0 -0
- /package/dist/siemens-ix/{p-f5f9940c.entry.js.map → p-f27c0a6c.entry.js.map} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"theme-switcher-EbjilqRl.js","sources":["src/components/utils/theme-switcher.ts"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { type LiteralStringUnion } from './type-helper';\nimport { TypedEvent } from './typed-event';\n\nexport type ThemeVariant = 'light' | 'dark';\n\nconst dataIxTheme = 'data-ix-theme';\nconst dataIxColorSchema = 'data-ix-color-schema';\n\nclass ThemeSwitcher {\n readonly prefixTheme = 'theme-';\n readonly suffixLight = '-light';\n readonly suffixDark = '-dark';\n readonly defaultTheme = 'theme-classic-dark';\n\n mutationObserver?: MutationObserver;\n _themeChanged = new TypedEvent<string>();\n _schemaChanged = new TypedEvent<string>();\n\n public get themeChanged() {\n return this._themeChanged;\n }\n\n public get schemaChanged() {\n return this._schemaChanged;\n }\n\n public hasVariantSuffix(className: string) {\n return (\n className.endsWith(this.suffixDark) ||\n className.endsWith(this.suffixLight)\n );\n }\n\n private isThemeClass(className: string) {\n return (\n className.startsWith(this.prefixTheme) && this.hasVariantSuffix(className)\n );\n }\n\n public setTheme(themeName: string, systemAppearance = false) {\n if (this.isThemeClass(themeName)) {\n this.replaceThemeClass(themeName);\n } else {\n document.documentElement.setAttribute(dataIxTheme, themeName);\n }\n\n if (systemAppearance) {\n const currentSystemAppearance = getCurrentSystemAppearance();\n this.setVariant(currentSystemAppearance);\n }\n }\n\n private replaceThemeClass(themeName: string) {\n const oldThemes: string[] = [];\n Array.from(document.documentElement.classList)\n .filter((className) => className && this.isThemeClass(className))\n .forEach((className) => {\n oldThemes.push(className);\n });\n\n document.documentElement.classList.remove(...oldThemes);\n document.documentElement.classList.add(themeName);\n }\n\n public toggleMode() {\n if (document.documentElement.hasAttribute(dataIxColorSchema)) {\n const currentSchema = this.getDataColorSchema(document.documentElement)!;\n document.documentElement.setAttribute(\n dataIxColorSchema,\n currentSchema === 'dark' ? 'light' : 'dark'\n );\n return;\n }\n\n const oldThemes: string[] = [];\n Array.from(document.documentElement.classList)\n .filter((className) => className && this.isThemeClass(className))\n .forEach((className) => {\n oldThemes.push(className);\n });\n\n if (oldThemes.length === 0) {\n document.documentElement.classList.add(\n this.getOppositeMode(this.defaultTheme)\n );\n return;\n }\n\n oldThemes.forEach((themeName) => {\n document.documentElement.classList.replace(\n themeName,\n this.getOppositeMode(themeName)\n );\n });\n }\n\n private getDataColorSchema(target: HTMLElement) {\n return target.getAttribute(dataIxColorSchema);\n }\n\n public getCurrentTheme() {\n const themeClass = Array.from(document.documentElement.classList).find(\n (className) => this.isThemeClass(className)\n );\n\n if (themeClass) {\n return themeClass;\n }\n\n const dataTheme = document.documentElement.getAttribute(dataIxTheme);\n const dataColorSchema =\n document.documentElement.getAttribute(dataIxColorSchema);\n\n const theme = dataTheme || 'classic';\n const variant = dataColorSchema || getCurrentSystemAppearance();\n\n return `theme-${theme}-${variant}`;\n }\n\n public setVariant(variant: ThemeVariant = getCurrentSystemAppearance()) {\n if (this.getDataColorSchema(document.documentElement)) {\n document.documentElement.setAttribute(dataIxColorSchema, variant);\n return;\n }\n\n const currentTheme = this.getCurrentTheme();\n if (!currentTheme) {\n document.documentElement.setAttribute(dataIxColorSchema, variant);\n return;\n }\n\n document.documentElement.classList.remove(currentTheme);\n\n if (currentTheme.endsWith(this.suffixDark)) {\n document.documentElement.classList.add(\n currentTheme.replace(/-dark$/g, `-${variant}`)\n );\n }\n\n if (currentTheme.endsWith(this.suffixLight)) {\n document.documentElement.classList.add(\n currentTheme.replace(/-light$/g, `-${variant}`)\n );\n }\n\n document.documentElement.setAttribute(dataIxColorSchema, variant);\n }\n\n private getOppositeMode(themeName: string) {\n if (themeName.endsWith(this.suffixDark)) {\n return themeName.replace(/-dark$/g, this.suffixLight);\n }\n\n if (themeName.endsWith(this.suffixLight)) {\n return themeName.replace(/-light$/g, this.suffixDark);\n }\n\n return '';\n }\n\n private splitMutations(mutations: MutationRecord[]) {\n const classMutations = mutations.filter(\n (mutation) => mutation.attributeName === 'class'\n );\n\n const dataMutations = mutations.filter(\n (mutation) =>\n mutation.attributeName === dataIxTheme ||\n mutation.attributeName === dataIxColorSchema\n );\n\n return { classMutations, dataMutations };\n }\n\n private handleClassMutations(mutations: MutationRecord[]) {\n return mutations.forEach((mutation) => {\n const { target } = mutation;\n (target as HTMLElement).classList.forEach((className) => {\n if (\n this.isThemeClass(className) &&\n !mutation.oldValue?.includes(className)\n ) {\n this._themeChanged.emit(className);\n }\n });\n });\n }\n\n private handleDataMutations(mutations: MutationRecord[]) {\n return mutations.forEach((mutation) => {\n const { target } = mutation;\n const theme = (target as Element).attributes.getNamedItem(dataIxTheme);\n if (theme?.value && mutation.oldValue !== theme.value) {\n this._themeChanged.emit(theme.value);\n }\n\n const colorSchema = (target as Element).attributes.getNamedItem(\n dataIxColorSchema\n );\n if (colorSchema?.value && mutation.oldValue !== colorSchema.value) {\n this._schemaChanged.emit(colorSchema.value);\n }\n });\n }\n\n private registerMutationObservers() {\n if (typeof (window as any) === 'undefined') {\n return;\n }\n\n if (!('MutationObserver' in window)) {\n console.warn(\n 'ThemeSwitcher not supported by your browser. Missing MutationObserver API'\n );\n return;\n }\n\n const mutationObserverConfig = {\n attributeFilter: ['class', dataIxTheme, dataIxColorSchema],\n attributeOldValue: true,\n };\n\n const handleMutations = (mutations: MutationRecord[]) => {\n const { classMutations, dataMutations } = this.splitMutations(mutations);\n\n this.handleClassMutations(classMutations);\n this.handleDataMutations(dataMutations);\n };\n\n this.mutationObserver = new MutationObserver(handleMutations);\n this.mutationObserver.observe(\n document.documentElement,\n mutationObserverConfig\n );\n }\n\n public constructor() {\n this.registerMutationObservers();\n }\n}\n\nexport type IxTheme = LiteralStringUnion<\n 'classic' | 'classic-dark' | 'classic-light'\n>;\n\nexport const getCurrentSystemAppearance = (): ThemeVariant => {\n const matchMedia = window.matchMedia('(prefers-color-scheme: dark)');\n\n if (matchMedia.matches) {\n return 'dark';\n }\n\n return 'light';\n};\n\nexport const themeSwitcher = new ThemeSwitcher();\n"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{T as t}from"./p-BdCnOrqW.js";const e="data-ix-theme";const s="data-ix-color-schema";class i{get themeChanged(){return this._themeChanged}get schemaChanged(){return this._schemaChanged}hasVariantSuffix(t){return t.endsWith(this.suffixDark)||t.endsWith(this.suffixLight)}isThemeClass(t){return t.startsWith(this.prefixTheme)&&this.hasVariantSuffix(t)}setTheme(t,s=false){if(this.isThemeClass(t)){this.replaceThemeClass(t)}else{document.documentElement.setAttribute(e,t)}if(s){const t=n();this.setVariant(t)}}replaceThemeClass(t){const e=[];Array.from(document.documentElement.classList).filter((t=>t&&this.isThemeClass(t))).forEach((t=>{e.push(t)}));document.documentElement.classList.remove(...e);document.documentElement.classList.add(t)}toggleMode(){if(document.documentElement.hasAttribute(s)){const t=this.getDataColorSchema(document.documentElement);document.documentElement.setAttribute(s,t==="dark"?"light":"dark");return}const t=[];Array.from(document.documentElement.classList).filter((t=>t&&this.isThemeClass(t))).forEach((e=>{t.push(e)}));if(t.length===0){document.documentElement.classList.add(this.getOppositeMode(this.defaultTheme));return}t.forEach((t=>{document.documentElement.classList.replace(t,this.getOppositeMode(t))}))}getDataColorSchema(t){return t.getAttribute(s)}getCurrentTheme(){const t=Array.from(document.documentElement.classList).find((t=>this.isThemeClass(t)));if(t){return t}const i=document.documentElement.getAttribute(e);const r=document.documentElement.getAttribute(s);const o=i||"classic";const a=r||n();return`theme-${o}-${a}`}setVariant(t=n()){if(this.getDataColorSchema(document.documentElement)){document.documentElement.setAttribute(s,t);return}const e=this.getCurrentTheme();if(!e){document.documentElement.setAttribute(s,t);return}document.documentElement.classList.remove(e);if(e.endsWith(this.suffixDark)){document.documentElement.classList.add(e.replace(/-dark$/g,`-${t}`))}if(e.endsWith(this.suffixLight)){document.documentElement.classList.add(e.replace(/-light$/g,`-${t}`))}document.documentElement.setAttribute(s,t)}getOppositeMode(t){if(t.endsWith(this.suffixDark)){return t.replace(/-dark$/g,this.suffixLight)}if(t.endsWith(this.suffixLight)){return t.replace(/-light$/g,this.suffixDark)}return""}splitMutations(t){const i=t.filter((t=>t.attributeName==="class"));const n=t.filter((t=>t.attributeName===e||t.attributeName===s));return{classMutations:i,dataMutations:n}}handleClassMutations(t){return t.forEach((t=>{const{target:e}=t;e.classList.forEach((e=>{var s;if(this.isThemeClass(e)&&!((s=t.oldValue)===null||s===void 0?void 0:s.includes(e))){this._themeChanged.emit(e)}}))}))}handleDataMutations(t){return t.forEach((t=>{const{target:i}=t;const n=i.attributes.getNamedItem(e);if((n===null||n===void 0?void 0:n.value)&&t.oldValue!==n.value){this._themeChanged.emit(n.value)}const r=i.attributes.getNamedItem(s);if((r===null||r===void 0?void 0:r.value)&&t.oldValue!==r.value){this._schemaChanged.emit(r.value)}}))}registerMutationObservers(){if(typeof window==="undefined"){return}if(!("MutationObserver"in window)){console.warn("ThemeSwitcher not supported by your browser. Missing MutationObserver API");return}const t={attributeFilter:["class",e,s],attributeOldValue:true};const i=t=>{const{classMutations:e,dataMutations:s}=this.splitMutations(t);this.handleClassMutations(e);this.handleDataMutations(s)};this.mutationObserver=new MutationObserver(i);this.mutationObserver.observe(document.documentElement,t)}constructor(){this.prefixTheme="theme-";this.suffixLight="-light";this.suffixDark="-dark";this.defaultTheme="theme-classic-dark";this._themeChanged=new t;this._schemaChanged=new t;this.registerMutationObservers()}}const n=()=>{const t=window.matchMedia("(prefers-color-scheme: dark)");if(t.matches){return"dark"}return"light"};const r=new i;export{n as g,r as t};
|
|
2
|
-
//# sourceMappingURL=p-G5i1Siog.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"p-G5i1Siog.js","sources":["src/components/utils/theme-switcher.ts"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2025 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { type LiteralStringUnion } from './type-helper';\nimport { TypedEvent } from './typed-event';\n\nexport type ThemeVariant = 'light' | 'dark';\n\nconst dataIxTheme = 'data-ix-theme';\nconst dataIxColorSchema = 'data-ix-color-schema';\n\nclass ThemeSwitcher {\n readonly prefixTheme = 'theme-';\n readonly suffixLight = '-light';\n readonly suffixDark = '-dark';\n readonly defaultTheme = 'theme-classic-dark';\n\n mutationObserver?: MutationObserver;\n _themeChanged = new TypedEvent<string>();\n _schemaChanged = new TypedEvent<string>();\n\n public get themeChanged() {\n return this._themeChanged;\n }\n\n public get schemaChanged() {\n return this._schemaChanged;\n }\n\n public hasVariantSuffix(className: string) {\n return (\n className.endsWith(this.suffixDark) ||\n className.endsWith(this.suffixLight)\n );\n }\n\n private isThemeClass(className: string) {\n return (\n className.startsWith(this.prefixTheme) && this.hasVariantSuffix(className)\n );\n }\n\n public setTheme(themeName: string, systemAppearance = false) {\n if (this.isThemeClass(themeName)) {\n this.replaceThemeClass(themeName);\n } else {\n document.documentElement.setAttribute(dataIxTheme, themeName);\n }\n\n if (systemAppearance) {\n const currentSystemAppearance = getCurrentSystemAppearance();\n this.setVariant(currentSystemAppearance);\n }\n }\n\n private replaceThemeClass(themeName: string) {\n const oldThemes: string[] = [];\n Array.from(document.documentElement.classList)\n .filter((className) => className && this.isThemeClass(className))\n .forEach((className) => {\n oldThemes.push(className);\n });\n\n document.documentElement.classList.remove(...oldThemes);\n document.documentElement.classList.add(themeName);\n }\n\n public toggleMode() {\n if (document.documentElement.hasAttribute(dataIxColorSchema)) {\n const currentSchema = this.getDataColorSchema(document.documentElement)!;\n document.documentElement.setAttribute(\n dataIxColorSchema,\n currentSchema === 'dark' ? 'light' : 'dark'\n );\n return;\n }\n\n const oldThemes: string[] = [];\n Array.from(document.documentElement.classList)\n .filter((className) => className && this.isThemeClass(className))\n .forEach((className) => {\n oldThemes.push(className);\n });\n\n if (oldThemes.length === 0) {\n document.documentElement.classList.add(\n this.getOppositeMode(this.defaultTheme)\n );\n return;\n }\n\n oldThemes.forEach((themeName) => {\n document.documentElement.classList.replace(\n themeName,\n this.getOppositeMode(themeName)\n );\n });\n }\n\n private getDataColorSchema(target: HTMLElement) {\n return target.getAttribute(dataIxColorSchema);\n }\n\n public getCurrentTheme() {\n const themeClass = Array.from(document.documentElement.classList).find(\n (className) => this.isThemeClass(className)\n );\n\n if (themeClass) {\n return themeClass;\n }\n\n const dataTheme = document.documentElement.getAttribute(dataIxTheme);\n const dataColorSchema =\n document.documentElement.getAttribute(dataIxColorSchema);\n\n const theme = dataTheme || 'classic';\n const variant = dataColorSchema || getCurrentSystemAppearance();\n\n return `theme-${theme}-${variant}`;\n }\n\n public setVariant(variant: ThemeVariant = getCurrentSystemAppearance()) {\n if (this.getDataColorSchema(document.documentElement)) {\n document.documentElement.setAttribute(dataIxColorSchema, variant);\n return;\n }\n\n const currentTheme = this.getCurrentTheme();\n if (!currentTheme) {\n document.documentElement.setAttribute(dataIxColorSchema, variant);\n return;\n }\n\n document.documentElement.classList.remove(currentTheme);\n\n if (currentTheme.endsWith(this.suffixDark)) {\n document.documentElement.classList.add(\n currentTheme.replace(/-dark$/g, `-${variant}`)\n );\n }\n\n if (currentTheme.endsWith(this.suffixLight)) {\n document.documentElement.classList.add(\n currentTheme.replace(/-light$/g, `-${variant}`)\n );\n }\n\n document.documentElement.setAttribute(dataIxColorSchema, variant);\n }\n\n private getOppositeMode(themeName: string) {\n if (themeName.endsWith(this.suffixDark)) {\n return themeName.replace(/-dark$/g, this.suffixLight);\n }\n\n if (themeName.endsWith(this.suffixLight)) {\n return themeName.replace(/-light$/g, this.suffixDark);\n }\n\n return '';\n }\n\n private splitMutations(mutations: MutationRecord[]) {\n const classMutations = mutations.filter(\n (mutation) => mutation.attributeName === 'class'\n );\n\n const dataMutations = mutations.filter(\n (mutation) =>\n mutation.attributeName === dataIxTheme ||\n mutation.attributeName === dataIxColorSchema\n );\n\n return { classMutations, dataMutations };\n }\n\n private handleClassMutations(mutations: MutationRecord[]) {\n return mutations.forEach((mutation) => {\n const { target } = mutation;\n (target as HTMLElement).classList.forEach((className) => {\n if (\n this.isThemeClass(className) &&\n !mutation.oldValue?.includes(className)\n ) {\n this._themeChanged.emit(className);\n }\n });\n });\n }\n\n private handleDataMutations(mutations: MutationRecord[]) {\n return mutations.forEach((mutation) => {\n const { target } = mutation;\n const theme = (target as Element).attributes.getNamedItem(dataIxTheme);\n if (theme?.value && mutation.oldValue !== theme.value) {\n this._themeChanged.emit(theme.value);\n }\n\n const colorSchema = (target as Element).attributes.getNamedItem(\n dataIxColorSchema\n );\n if (colorSchema?.value && mutation.oldValue !== colorSchema.value) {\n this._schemaChanged.emit(colorSchema.value);\n }\n });\n }\n\n private registerMutationObservers() {\n if (typeof (window as any) === 'undefined') {\n return;\n }\n\n if (!('MutationObserver' in window)) {\n console.warn(\n 'ThemeSwitcher not supported by your browser. Missing MutationObserver API'\n );\n return;\n }\n\n const mutationObserverConfig = {\n attributeFilter: ['class', dataIxTheme, dataIxColorSchema],\n attributeOldValue: true,\n };\n\n const handleMutations = (mutations: MutationRecord[]) => {\n const { classMutations, dataMutations } = this.splitMutations(mutations);\n\n this.handleClassMutations(classMutations);\n this.handleDataMutations(dataMutations);\n };\n\n this.mutationObserver = new MutationObserver(handleMutations);\n this.mutationObserver.observe(\n document.documentElement,\n mutationObserverConfig\n );\n }\n\n public constructor() {\n this.registerMutationObservers();\n }\n}\n\nexport type IxTheme = LiteralStringUnion<\n 'classic' | 'classic-dark' | 'classic-light'\n>;\n\nexport const getCurrentSystemAppearance = (): ThemeVariant => {\n const matchMedia = window.matchMedia('(prefers-color-scheme: dark)');\n\n if (matchMedia.matches) {\n return 'dark';\n }\n\n return 'light';\n};\n\nexport const themeSwitcher = new ThemeSwitcher();\n"],"names":[],"mappings":"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"}
|
|
File without changes
|
|
File without changes
|