From da0801ce49c60b8505e80d1e9c52887a66eee219 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Wed, 20 May 2026 14:54:55 +0200 Subject: [PATCH 01/21] do not use static namespace --- src/components/Application/stories/ColorPalettes.stories.tsx | 5 ++++- src/components/Chat/_chat.scss | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/components/Application/stories/ColorPalettes.stories.tsx b/src/components/Application/stories/ColorPalettes.stories.tsx index 42409d32..68870862 100644 --- a/src/components/Application/stories/ColorPalettes.stories.tsx +++ b/src/components/Application/stories/ColorPalettes.stories.tsx @@ -1,6 +1,7 @@ import React from "react"; import { createRoot } from "react-dom/client"; import { loremIpsum } from "react-lorem-ipsum"; +import { Classes as BlueprintClasses } from "@blueprintjs/core"; import { Meta, StoryFn } from "@storybook/react"; import Color from "color"; @@ -183,7 +184,9 @@ const ColorPaletteConfigurator = ({ React.useEffect(() => { if (refConfigurator.current) { - const panelConfig = document.getElementById("bp5-tab-panel_colorconfig_editor"); + const panelConfig = document.getElementById( + `${BlueprintClasses.getClassNamespace()}-tab-panel_colorconfig_editor`, + ); if (panelConfig) { const warnings = Array.from(panelConfig.getElementsByClassName("eccgui-badge")) .map((warning: Element) => { diff --git a/src/components/Chat/_chat.scss b/src/components/Chat/_chat.scss index 2a120441..25f434c2 100644 --- a/src/components/Chat/_chat.scss +++ b/src/components/Chat/_chat.scss @@ -1,5 +1,5 @@ .#{$eccgui}-chat__content { - @extend .bp5-elevation-1; + @extend .#{$ns}-elevation-1; position: relative; z-index: 0; @@ -32,7 +32,7 @@ position: relative; &::before { - @extend .bp5-elevation-1; + @extend .#{$ns}-elevation-1; position: absolute; top: calc(#{mini-units(3)} - #{0.5 * $eccgui-size-block-whitespace}); From e0a15f64d61c6f6f7b644398514a20bc340b25a5 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Wed, 20 May 2026 17:18:26 +0200 Subject: [PATCH 02/21] fix output of CSS base method --- src/common/scss/_color-functions.scss | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/common/scss/_color-functions.scss b/src/common/scss/_color-functions.scss index e4d08809..263b76da 100644 --- a/src/common/scss/_color-functions.scss +++ b/src/common/scss/_color-functions.scss @@ -113,7 +113,9 @@ $debug-rgba-values: "yes"; } @else { // rgba(r, g, b, a) is used -> rgb(r g b / a) // @see https://developer.mozilla.org/de/docs/Web/CSS/color_value/rgb - $color-new-notation: rgb(#{$r} #{$g} #{$b} / #{$a}); + @debug "r=#{$r} g=#{$g} b=#{$b} a=#{$a}"; + + $color-new-notation: #{"rgb(" + $r + " " + $g + " " + $b + " / " + $a + ")"}; @return $color-new-notation; } From f88a1c83c769d880c1833c13e722eb261fd2d025 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Wed, 20 May 2026 17:19:12 +0200 Subject: [PATCH 03/21] remove debug output --- src/common/scss/_color-functions.scss | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/common/scss/_color-functions.scss b/src/common/scss/_color-functions.scss index 263b76da..30de5c0a 100644 --- a/src/common/scss/_color-functions.scss +++ b/src/common/scss/_color-functions.scss @@ -113,8 +113,6 @@ $debug-rgba-values: "yes"; } @else { // rgba(r, g, b, a) is used -> rgb(r g b / a) // @see https://developer.mozilla.org/de/docs/Web/CSS/color_value/rgb - @debug "r=#{$r} g=#{$g} b=#{$b} a=#{$a}"; - $color-new-notation: #{"rgb(" + $r + " " + $g + " " + $b + " / " + $a + ")"}; @return $color-new-notation; From a308bc3ef7de6e2aa0f3ae8063536315911e2583 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Wed, 20 May 2026 17:30:32 +0200 Subject: [PATCH 04/21] upgrade BlueprintJS packages --- package.json | 6 ++-- yarn.lock | 96 ++++++++++++++++++++++++++++++++-------------------- 2 files changed, 62 insertions(+), 40 deletions(-) diff --git a/package.json b/package.json index 09074b16..a0664b0b 100644 --- a/package.json +++ b/package.json @@ -68,9 +68,9 @@ "autolint:all": "yarn autolint:scripts && yarn autolint:styles && yarn autolint:prettier" }, "dependencies": { - "@blueprintjs/colors": "^5.1.11", - "@blueprintjs/core": "^5.19.1", - "@blueprintjs/select": "^5.3.21", + "@blueprintjs/colors": "^5.1.16", + "@blueprintjs/core": "^6.14.0", + "@blueprintjs/select": "^6.2.0", "@carbon/icons": "^11.80.0", "@carbon/react": "^1.107.1", "@codemirror/lang-html": "^6.4.11", diff --git a/yarn.lock b/yarn.lock index 3a897d90..8cc51759 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1574,52 +1574,45 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@blueprintjs/colors@^5.1.11": - version "5.1.11" - resolved "https://registry.yarnpkg.com/@blueprintjs/colors/-/colors-5.1.11.tgz#f0e6d3fd0688ba386504984048fe57ac33894b80" - integrity sha512-nSmsgfORb1bYxW4FiMBmFuPPqBK0IbLn1M0hqQCZQ+3hkMJKyQIypBCsw44o4KrpJXbWdS7y2I/p40ZWubYHXw== +"@blueprintjs/colors@^5.1.16": + version "5.1.16" + resolved "https://registry.yarnpkg.com/@blueprintjs/colors/-/colors-5.1.16.tgz#910f605caf97327e61dad13a9ba9384b6ac5e61a" + integrity sha512-P9uX0Aj2TP9+6aUcori1iPl4snxM/Vgq0LZbhUl1l5bHTgNxxwm/0+IoS/SlQg93HBRl8KTAM1evEqtPbwV10A== dependencies: tslib "~2.6.2" -"@blueprintjs/colors@^5.1.8": - version "5.1.8" - resolved "https://registry.yarnpkg.com/@blueprintjs/colors/-/colors-5.1.8.tgz#241bed7d51f2e1fa216e9281ef1a362c27a36da2" - integrity sha512-rCl+NZwR6xjJeCB6yWglbqWU2zOdVgeI5unBASalzMXWpRO0UXIjx0pA/Vtii4cB2kIdk8PaHTlGmZnLTu/MSg== +"@blueprintjs/core@^6.14.0": + version "6.14.0" + resolved "https://registry.yarnpkg.com/@blueprintjs/core/-/core-6.14.0.tgz#45cd8b5d9f446cff955b349a3c6b71e0166361ab" + integrity sha512-CRM9oZ/DWdDM7bVXMr0Iis8srpVTW9inwrrzPM+S209U4q60BTAJf7iiADqXRdNvFd50QXh8CeMuXXl7qY3WWg== dependencies: - tslib "~2.6.2" - -"@blueprintjs/core@^5.19.1": - version "5.19.1" - resolved "https://registry.yarnpkg.com/@blueprintjs/core/-/core-5.19.1.tgz#d17ed32b4eee90c25c308262ff9975c0cbd34a59" - integrity sha512-vjLd9jnuHPunW6zsZtx0f03zb33aRa/k6nnwH+N16NEIs7/wHWX5f5ljtEguSt/M1jx4IT0oescMQMAuXWXAWQ== - dependencies: - "@blueprintjs/colors" "^5.1.8" - "@blueprintjs/icons" "^5.23.0" + "@blueprintjs/colors" "^5.1.16" + "@blueprintjs/icons" "^6.10.0" + "@floating-ui/react" "^0.27.13" "@popperjs/core" "^2.11.8" classnames "^2.3.1" normalize.css "^8.0.1" react-popper "^2.3.0" react-transition-group "^4.4.5" - react-uid "^2.3.3" tslib "~2.6.2" - use-sync-external-store "^1.2.0" -"@blueprintjs/icons@^5.23.0": - version "5.23.0" - resolved "https://registry.yarnpkg.com/@blueprintjs/icons/-/icons-5.23.0.tgz#c01dc80fbadb4dfef20d34abdee14a23b6f5d00b" - integrity sha512-yxQ+A0V79/UsyIw4XYuEvaFqr3FIaRlp79rKh+ZdHLafedqPfp4LO6xtF6EziWFCvuHOTJdFCfSC8AoQeSENMw== +"@blueprintjs/icons@^6.10.0": + version "6.10.0" + resolved "https://registry.yarnpkg.com/@blueprintjs/icons/-/icons-6.10.0.tgz#d49a95aa180297a9138b43298ef60496cf93aa31" + integrity sha512-KjNviCpxjJOcIVgNUOlw2FCGp8T5o0SZW56alL6veDHyHnMP48jaW8cVCRvKvZqGmUL+d9faLis1CJzI20E+kg== dependencies: change-case "^4.1.2" classnames "^2.3.1" tslib "~2.6.2" -"@blueprintjs/select@^5.3.21": - version "5.3.21" - resolved "https://registry.yarnpkg.com/@blueprintjs/select/-/select-5.3.21.tgz#9a5e1fc94389f382aab63da184c8b634ae7bdcfa" - integrity sha512-1mNWnS2Vb0VUP/M3Z9VhrXzAkbsROYrmiE+uRn20O2w/8skxRwtBZ6WRSSY9GPqzVqBqz7+G0VC0CSLBjvRklw== +"@blueprintjs/select@^6.2.0": + version "6.2.0" + resolved "https://registry.yarnpkg.com/@blueprintjs/select/-/select-6.2.0.tgz#a8207e306cee32a3bc15028c211e6f161444ebf5" + integrity sha512-I9F6ifDb2oHnLYq/QLARaS1Lx71KJjhWQms8iuEsVBr9Q7znvvwYupDFgBnhqOnix9LP9HbypaxeqhTGkmie8g== dependencies: - "@blueprintjs/core" "^5.19.1" - "@blueprintjs/icons" "^5.23.0" + "@blueprintjs/colors" "^5.1.16" + "@blueprintjs/core" "^6.14.0" + "@blueprintjs/icons" "^6.10.0" classnames "^2.3.1" tslib "~2.6.2" @@ -2305,6 +2298,13 @@ dependencies: "@floating-ui/utils" "^0.2.9" +"@floating-ui/core@^1.7.5": + version "1.7.5" + resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.7.5.tgz#d4af157a03330af5a60e69da7a4692507ada0622" + integrity sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ== + dependencies: + "@floating-ui/utils" "^0.2.11" + "@floating-ui/dom@^1.0.0": version "1.6.13" resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.6.13.tgz#a8a938532aea27a95121ec16e667a7cbe8c59e34" @@ -2313,6 +2313,14 @@ "@floating-ui/core" "^1.6.0" "@floating-ui/utils" "^0.2.9" +"@floating-ui/dom@^1.7.6": + version "1.7.6" + resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.7.6.tgz#f915bba5abbb177e1f227cacee1b4d0634b187bf" + integrity sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ== + dependencies: + "@floating-ui/core" "^1.7.5" + "@floating-ui/utils" "^0.2.11" + "@floating-ui/react-dom@^2.1.2": version "2.1.2" resolved "https://registry.yarnpkg.com/@floating-ui/react-dom/-/react-dom-2.1.2.tgz#a1349bbf6a0e5cb5ded55d023766f20a4d439a31" @@ -2320,6 +2328,22 @@ dependencies: "@floating-ui/dom" "^1.0.0" +"@floating-ui/react-dom@^2.1.8": + version "2.1.8" + resolved "https://registry.yarnpkg.com/@floating-ui/react-dom/-/react-dom-2.1.8.tgz#5fb5a20d10aafb9505f38c24f38d00c8e1598893" + integrity sha512-cC52bHwM/n/CxS87FH0yWdngEZrjdtLW/qVruo68qg+prK7ZQ4YGdut2GyDVpoGeAYe/h899rVeOVm6Oi40k2A== + dependencies: + "@floating-ui/dom" "^1.7.6" + +"@floating-ui/react@^0.27.13": + version "0.27.19" + resolved "https://registry.yarnpkg.com/@floating-ui/react/-/react-0.27.19.tgz#d8d5d895b7cb97dac370bfbf55f3e630878fdf1f" + integrity sha512-31B8h5mm8YxotlE7/AU/PhNAl8eWxAmjL/v2QOxroDNkTFLk3Uu82u63N3b6TXa4EGJeeZLVcd/9AlNlVqzeog== + dependencies: + "@floating-ui/react-dom" "^2.1.8" + "@floating-ui/utils" "^0.2.11" + tabbable "^6.0.0" + "@floating-ui/react@^0.27.4": version "0.27.8" resolved "https://registry.yarnpkg.com/@floating-ui/react/-/react-0.27.8.tgz#6d7f4bf7bfe2065934ba18d54f7383b777f87dd5" @@ -2329,6 +2353,11 @@ "@floating-ui/utils" "^0.2.9" tabbable "^6.0.0" +"@floating-ui/utils@^0.2.11": + version "0.2.11" + resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.11.tgz#a269e055e40e2f45873bae9d1a2fdccbd314ea3f" + integrity sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg== + "@floating-ui/utils@^0.2.9": version "0.2.9" resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.9.tgz#50dea3616bc8191fb8e112283b49eaff03e78429" @@ -10254,13 +10283,6 @@ react-transition-group@^4.4.5: loose-envify "^1.4.0" prop-types "^15.6.2" -react-uid@^2.3.3: - version "2.4.0" - resolved "https://registry.yarnpkg.com/react-uid/-/react-uid-2.4.0.tgz#ce48a3e2a044964900f3ad5181a0d377702c56c5" - integrity sha512-+MVs/25NrcZuGrmlVRWPOSsbS8y72GJOBsR7d68j3/wqOrRBF52U29XAw4+XSelw0Vm6s5VmGH5mCbTCPGVCVg== - dependencies: - tslib "^2.0.0" - "react@^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0": version "19.2.6" resolved "https://registry.yarnpkg.com/react/-/react-19.2.6.tgz#3dadb8e12b2a7934c1d5317973e5dce1301f9a4d" @@ -11943,7 +11965,7 @@ url-loader@^4.1.1: mime-types "^2.1.27" schema-utils "^3.0.0" -use-sync-external-store@^1.2.0, use-sync-external-store@^1.2.2: +use-sync-external-store@^1.2.2: version "1.5.0" resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.5.0.tgz#55122e2a3edd2a6c106174c27485e0fd59bcfca0" integrity sha512-Rb46I4cGGVBmjamjphe8L/UnvJD+uPPtTkNvX5mZgqdbavhI4EbgIWJiIHXJ8bc/i9EQGPRh4DwEURJ552Do0A== From 14948caee798090c24a6efa3498db7a51fb379f2 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Wed, 20 May 2026 17:34:09 +0200 Subject: [PATCH 05/21] extend support for growVertically property --- src/components/TextField/TextArea.tsx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/components/TextField/TextArea.tsx b/src/components/TextField/TextArea.tsx index df232fb9..35b11794 100644 --- a/src/components/TextField/TextArea.tsx +++ b/src/components/TextField/TextArea.tsx @@ -38,6 +38,11 @@ export interface TextAreaProps extends Omit { * The element wraps `TextArea` in case of a given `wrapperDivProps`, `leftIcon` or `rightElement` property. */ wrapperDivProps?: Omit, "children">; + /** + * Whether the text area should automatically grow vertically to accommodate content. + * @deprecated (v27) use the `autoResize` property instead. + */ + growVertically?: boolean; } export const TextArea = ({ From 829f9c6f00407c415e6e8fe1d5863e54e150c84b Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Thu, 21 May 2026 12:14:27 +0200 Subject: [PATCH 06/21] fix alpha value in rgb method --- src/common/scss/_color-functions.scss | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/common/scss/_color-functions.scss b/src/common/scss/_color-functions.scss index 30de5c0a..8fe9504a 100644 --- a/src/common/scss/_color-functions.scss +++ b/src/common/scss/_color-functions.scss @@ -92,7 +92,11 @@ } @if $alpha > 0 { - @return eccgui-color-mix($color 100% * $alpha, transparent); + @if math.is-unitless($alpha) { + $alpha: 100% * $alpha; + } + + @return eccgui-color-mix($color $alpha, transparent); } @else { // workaround: we need to prevent `0%` because it will reduced to `0` by some CSS minifiers and leads to invalid color-mix values @return eccgui-color-mix($color, transparent 100%); @@ -102,6 +106,8 @@ $debug-rgba-values: "yes"; /** + * Overwrite SCSS built-in rgba function + * TODO: we need to check if this is future proof, maybe this behaviour is not planned by Dart Sass library. * Split between rgba(red, green, blue, alpha) and rgba(color, alpha). */ @function rgba($r, $g, $b: "undefined", $a: 1) { @@ -120,8 +126,7 @@ $debug-rgba-values: "yes"; } /** - * Overwrite SCSS built-in rgba function to support colors by custom properties and CSS color methods. - * TODO: we need to check if this is future proof, maybe this bahaviour is not planned by Dart Sass library. + * Support colors by custom properties and CSS color methods. */ @function rgba-extended($color, $alpha) { @if meta.type-of($color) == "color" { From 6fda6bdf76e3b4c84b2cedd518d8ee84ec68dafb Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Thu, 21 May 2026 12:24:29 +0200 Subject: [PATCH 07/21] set default border radius back to 2px --- src/includes/blueprintjs/_variables.scss | 1 + 1 file changed, 1 insertion(+) diff --git a/src/includes/blueprintjs/_variables.scss b/src/includes/blueprintjs/_variables.scss index 4a9903f1..77a5e3a2 100644 --- a/src/includes/blueprintjs/_variables.scss +++ b/src/includes/blueprintjs/_variables.scss @@ -59,3 +59,4 @@ $pt-font-size-small: $eccgui-size-typo-caption !default; $pt-line-height: $eccgui-size-typo-text-lineheight !default; $pt-icon-size-standard: 20px !default; $pt-icon-size-large: 32px !default; +$pt-border-radius: 2px !default; From b2553dd5c2127262c5b949e620d700b2316b857c Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Thu, 21 May 2026 12:44:37 +0200 Subject: [PATCH 08/21] set BlueprintJS core to 8.8.1 because they made a braking change regarding how they manage their variables --- package.json | 3 ++- yarn.lock | 27 ++++++++++++++------------- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/package.json b/package.json index a0664b0b..a6538042 100644 --- a/package.json +++ b/package.json @@ -69,7 +69,7 @@ }, "dependencies": { "@blueprintjs/colors": "^5.1.16", - "@blueprintjs/core": "^6.14.0", + "@blueprintjs/core": "6.8.1", "@blueprintjs/select": "^6.2.0", "@carbon/icons": "^11.80.0", "@carbon/react": "^1.107.1", @@ -180,6 +180,7 @@ "react": ">=18" }, "resolutions": { + "**/@blueprintjs/core": "6.8.1", "node-sass-package-importer/**/postcss": "^8.5.10", "hast-util-from-parse5": "8.0.0", "**/lodash": "^4.18.1", diff --git a/yarn.lock b/yarn.lock index 8cc51759..497fd240 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1574,20 +1574,20 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@blueprintjs/colors@^5.1.16": +"@blueprintjs/colors@^5.1.14", "@blueprintjs/colors@^5.1.16": version "5.1.16" resolved "https://registry.yarnpkg.com/@blueprintjs/colors/-/colors-5.1.16.tgz#910f605caf97327e61dad13a9ba9384b6ac5e61a" integrity sha512-P9uX0Aj2TP9+6aUcori1iPl4snxM/Vgq0LZbhUl1l5bHTgNxxwm/0+IoS/SlQg93HBRl8KTAM1evEqtPbwV10A== dependencies: tslib "~2.6.2" -"@blueprintjs/core@^6.14.0": - version "6.14.0" - resolved "https://registry.yarnpkg.com/@blueprintjs/core/-/core-6.14.0.tgz#45cd8b5d9f446cff955b349a3c6b71e0166361ab" - integrity sha512-CRM9oZ/DWdDM7bVXMr0Iis8srpVTW9inwrrzPM+S209U4q60BTAJf7iiADqXRdNvFd50QXh8CeMuXXl7qY3WWg== +"@blueprintjs/core@6.8.1", "@blueprintjs/core@^6.14.0": + version "6.8.1" + resolved "https://registry.yarnpkg.com/@blueprintjs/core/-/core-6.8.1.tgz#44e07d9599ad50716437c85f9f86defde433279e" + integrity sha512-DJtO+2TfTF2xhItV4sgmNeUgwiwzkBbncsHI8MVIibD5h+FR7a+8qfd8ybvlfmvTkejLbmHQiyfj1bcQQWvzBg== dependencies: - "@blueprintjs/colors" "^5.1.16" - "@blueprintjs/icons" "^6.10.0" + "@blueprintjs/colors" "^5.1.14" + "@blueprintjs/icons" "^6.6.0" "@floating-ui/react" "^0.27.13" "@popperjs/core" "^2.11.8" classnames "^2.3.1" @@ -1595,8 +1595,9 @@ react-popper "^2.3.0" react-transition-group "^4.4.5" tslib "~2.6.2" + use-sync-external-store "^1.2.0" -"@blueprintjs/icons@^6.10.0": +"@blueprintjs/icons@^6.10.0", "@blueprintjs/icons@^6.6.0": version "6.10.0" resolved "https://registry.yarnpkg.com/@blueprintjs/icons/-/icons-6.10.0.tgz#d49a95aa180297a9138b43298ef60496cf93aa31" integrity sha512-KjNviCpxjJOcIVgNUOlw2FCGp8T5o0SZW56alL6veDHyHnMP48jaW8cVCRvKvZqGmUL+d9faLis1CJzI20E+kg== @@ -11965,16 +11966,16 @@ url-loader@^4.1.1: mime-types "^2.1.27" schema-utils "^3.0.0" +use-sync-external-store@^1.2.0, use-sync-external-store@^1.5.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz#b174bfa65cb2b526732d9f2ac0a408027876f32d" + integrity sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w== + use-sync-external-store@^1.2.2: version "1.5.0" resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.5.0.tgz#55122e2a3edd2a6c106174c27485e0fd59bcfca0" integrity sha512-Rb46I4cGGVBmjamjphe8L/UnvJD+uPPtTkNvX5mZgqdbavhI4EbgIWJiIHXJ8bc/i9EQGPRh4DwEURJ552Do0A== -use-sync-external-store@^1.5.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz#b174bfa65cb2b526732d9f2ac0a408027876f32d" - integrity sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w== - util-deprecate@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" From 605caef7bc54daf5b22447ae9df68789e6d56dbd Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Thu, 21 May 2026 13:10:14 +0200 Subject: [PATCH 09/21] use BlueprintJS Select v6.1.1 only to prevent problems with unavailable core functionality --- package.json | 2 +- yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index a6538042..c82a489e 100644 --- a/package.json +++ b/package.json @@ -70,7 +70,7 @@ "dependencies": { "@blueprintjs/colors": "^5.1.16", "@blueprintjs/core": "6.8.1", - "@blueprintjs/select": "^6.2.0", + "@blueprintjs/select": "6.1.1", "@carbon/icons": "^11.80.0", "@carbon/react": "^1.107.1", "@codemirror/lang-html": "^6.4.11", diff --git a/yarn.lock b/yarn.lock index 497fd240..419b9f0d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1581,7 +1581,7 @@ dependencies: tslib "~2.6.2" -"@blueprintjs/core@6.8.1", "@blueprintjs/core@^6.14.0": +"@blueprintjs/core@6.8.1", "@blueprintjs/core@^6.8.1": version "6.8.1" resolved "https://registry.yarnpkg.com/@blueprintjs/core/-/core-6.8.1.tgz#44e07d9599ad50716437c85f9f86defde433279e" integrity sha512-DJtO+2TfTF2xhItV4sgmNeUgwiwzkBbncsHI8MVIibD5h+FR7a+8qfd8ybvlfmvTkejLbmHQiyfj1bcQQWvzBg== @@ -1597,7 +1597,7 @@ tslib "~2.6.2" use-sync-external-store "^1.2.0" -"@blueprintjs/icons@^6.10.0", "@blueprintjs/icons@^6.6.0": +"@blueprintjs/icons@^6.6.0": version "6.10.0" resolved "https://registry.yarnpkg.com/@blueprintjs/icons/-/icons-6.10.0.tgz#d49a95aa180297a9138b43298ef60496cf93aa31" integrity sha512-KjNviCpxjJOcIVgNUOlw2FCGp8T5o0SZW56alL6veDHyHnMP48jaW8cVCRvKvZqGmUL+d9faLis1CJzI20E+kg== @@ -1606,14 +1606,14 @@ classnames "^2.3.1" tslib "~2.6.2" -"@blueprintjs/select@^6.2.0": - version "6.2.0" - resolved "https://registry.yarnpkg.com/@blueprintjs/select/-/select-6.2.0.tgz#a8207e306cee32a3bc15028c211e6f161444ebf5" - integrity sha512-I9F6ifDb2oHnLYq/QLARaS1Lx71KJjhWQms8iuEsVBr9Q7znvvwYupDFgBnhqOnix9LP9HbypaxeqhTGkmie8g== +"@blueprintjs/select@6.1.1": + version "6.1.1" + resolved "https://registry.yarnpkg.com/@blueprintjs/select/-/select-6.1.1.tgz#9e545000dab1fc3302125af7021cd3bf5812e239" + integrity sha512-c/jlMiMFDmoDCxjKdThLRzCQcjaO13IR52oAqdmG8NCQRNVJQ5P0bapdEMf56VHwCA3ZCVkztPflTH/DSVlXFg== dependencies: - "@blueprintjs/colors" "^5.1.16" - "@blueprintjs/core" "^6.14.0" - "@blueprintjs/icons" "^6.10.0" + "@blueprintjs/colors" "^5.1.14" + "@blueprintjs/core" "^6.8.1" + "@blueprintjs/icons" "^6.6.0" classnames "^2.3.1" tslib "~2.6.2" From 107f2547f40aec209e0903f0c171559a35e06ee2 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Thu, 28 May 2026 10:47:13 +0200 Subject: [PATCH 10/21] fix info about peer dependencies --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5bbd44d1..9873ae7a 100644 --- a/package.json +++ b/package.json @@ -175,7 +175,7 @@ "yargs": "^18.0.0" }, "peerDependencies": { - "@blueprintjs/core": ">=5", + "@blueprintjs/core": ">=6", "react": ">=18" }, "resolutions": { From 0071b140e4e0b17372200628a3b869e8dd8cadaa Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Thu, 28 May 2026 10:48:02 +0200 Subject: [PATCH 11/21] fix Toaster export, keep using old name --- blueprint/toaster/index.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/blueprint/toaster/index.tsx b/blueprint/toaster/index.tsx index f6c4447a..4435c7bb 100644 --- a/blueprint/toaster/index.tsx +++ b/blueprint/toaster/index.tsx @@ -1 +1,3 @@ -export { Toaster as default } from "@blueprintjs/core"; +import { OverlayToaster as Toaster } from "@blueprintjs/core"; +export { Toaster }; +export default Toaster; From 349e40a69af5d0ff837aa129af43859c67323cb7 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Mon, 1 Jun 2026 17:55:35 +0200 Subject: [PATCH 12/21] fix white space configuration in buttons, use old values --- src/components/Button/button.scss | 2 +- src/components/Icon/icon.scss | 8 ++++---- src/index.scss | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/components/Button/button.scss b/src/components/Button/button.scss index 67786112..58002952 100644 --- a/src/components/Button/button.scss +++ b/src/components/Button/button.scss @@ -9,7 +9,7 @@ $button-border-radius: $pt-border-radius; // $button-padding-small: 0 ($pt-grid-size * 0.7) !default; // $button-padding-large: ($pt-grid-size * 0.5) ($pt-grid-size * 1.5) !default; -// $button-icon-spacing: ($pt-button-height - $pt-icon-size-standard) * 0.5 !default; +$button-icon-spacing: $pt-grid-size * 0.5; // ($pt-button-height - $pt-icon-size-standard) * 0.5 !default; // $button-icon-spacing-large: ($pt-button-height-large - $pt-icon-size-large) * 0.5 !default; // $button-box-shadow: inset 0 0 0 $button-border-width rgba($black, 0.2), inset 0 (-$button-border-width) 0 rgba($black, 0.1) !default; // $button-box-shadow-active: inset 0 0 0 $button-border-width rgba($black, 0.2), inset 0 1px 2px rgba($black, 0.2) !default; diff --git a/src/components/Icon/icon.scss b/src/components/Icon/icon.scss index 2285cf98..47044cef 100644 --- a/src/components/Icon/icon.scss +++ b/src/components/Icon/icon.scss @@ -32,15 +32,15 @@ svg.#{$eccgui}-icon { } .#{$ns}-button .#{$eccgui}-icon:first-child { - margin-left: -($pt-button-height - $pt-icon-size-standard) * 0.5; + margin-left: -($button-icon-spacing); } .#{$ns}-button .#{$eccgui}-icon:last-child { - margin-right: -($pt-button-height - $pt-icon-size-standard) * 0.5; + margin-right: -($button-icon-spacing); } .#{$ns}-button .#{$eccgui}-icon:first-child:last-child, .#{$ns}-button .#{$ns}-spinner + .#{$eccgui}-icon:last-child { - margin: 0 (-($pt-button-height - $pt-icon-size-standard) * 0.5); + margin: 0 (-($button-icon-spacing)); } .#{$eccgui}-button--icon { @@ -49,7 +49,7 @@ svg.#{$eccgui}-icon { } & > .#{$ns}-button-text { - margin-left: -5px; + margin-left: -($pt-grid-size) * 0.5; } & > .#{$eccgui}-tooltip__wrapper + .#{$ns}-button-text { diff --git a/src/index.scss b/src/index.scss index d13a53cb..9d180064 100644 --- a/src/index.scss +++ b/src/index.scss @@ -25,10 +25,10 @@ // calculate blueprintjs configuration @import "./includes/blueprintjs/variables"; -// map our palette to BLueprint colors +// map our palette to BlueprintJS colors @import "./includes/blueprintjs/colormap"; -// load blueprintjs requisists +// load blueprintjs requisites @import "./includes/blueprintjs/requisits"; // load blueprintjs components From f0a953edf05008c7e3ab09f1f1a829b50ce6738f Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Mon, 1 Jun 2026 18:03:39 +0200 Subject: [PATCH 13/21] fix headline white space --- src/components/Menu/menu.scss | 1 + 1 file changed, 1 insertion(+) diff --git a/src/components/Menu/menu.scss b/src/components/Menu/menu.scss index 4cc1ca74..a7cfae7c 100644 --- a/src/components/Menu/menu.scss +++ b/src/components/Menu/menu.scss @@ -36,6 +36,7 @@ $menu-background-color: transparent !default; } .#{$ns}-menu-header { + padding-left: unset; margin-right: unset; margin-left: unset; } From 9d41025c586502d7267296d862d05b3dc36bf533 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Tue, 2 Jun 2026 08:54:38 +0200 Subject: [PATCH 14/21] add info about blueprint upgrade to changelog --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index af20b6b7..2bd798b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,6 +29,8 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/) and this p - **React and its types were updated to v18, so you may hit incompatibilities if you run it with React 16 or 17.** - `color` library was upgraded from v4 to v5, so the types changed - if you forward properties then they cannot have `Color` as type, use `ColorLike` +- `@blueprintjs/core` library was updated to v6 + - you may need to update class names in your tests (the new prefix is `bp6-`) - `` - by default, if no searchPredicate or searchListPredicate is defined, the filtering is done via case-insensitive multi-word filtering. From df3415972b8e90393ebac8719d207e399ac3d975 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Tue, 2 Jun 2026 12:39:41 +0200 Subject: [PATCH 15/21] add dummy node auth key for actions/setup-node@main --- .github/workflows/push-tagged-release.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/push-tagged-release.yml b/.github/workflows/push-tagged-release.yml index dace7bba..0f62bcbc 100644 --- a/.github/workflows/push-tagged-release.yml +++ b/.github/workflows/push-tagged-release.yml @@ -53,6 +53,8 @@ jobs: version: ${{ inputs.sectionChangelog }} - name: Install dependencies run: yarn install + env: + NODE_AUTH_TOKEN: THIS-IS-DUMMY-KEY - name: Create dist JS run: yarn build:all - name: Create jest results From db72ef0946da4a4f6138a892b25b6a77e41d4cac Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Tue, 2 Jun 2026 13:27:00 +0200 Subject: [PATCH 16/21] use registry config only for push task, looks like actions/setup-node otherwise needs a dummy node auth --- .github/workflows/push-tagged-release.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/push-tagged-release.yml b/.github/workflows/push-tagged-release.yml index 0f62bcbc..3ad648e1 100644 --- a/.github/workflows/push-tagged-release.yml +++ b/.github/workflows/push-tagged-release.yml @@ -37,7 +37,6 @@ jobs: - uses: actions/setup-node@main with: node-version: "lts/krypton" - registry-url: "https://registry.npmjs.org" - name: Set name vars id: info-vars run: | @@ -53,8 +52,6 @@ jobs: version: ${{ inputs.sectionChangelog }} - name: Install dependencies run: yarn install - env: - NODE_AUTH_TOKEN: THIS-IS-DUMMY-KEY - name: Create dist JS run: yarn build:all - name: Create jest results @@ -74,6 +71,7 @@ jobs: run: yarn publish --access public env: NODE_AUTH_TOKEN: ${{ secrets.npmjsToken }} + registry-url: "https://registry.npmjs.org" - name: Prepare release info # only use for final releases and RCs -- other pre-releases do not need an official announcement if: inputs.onlyNpmPush != true From 792a62ed75feebb2506a08b313cbbdac7b0169f5 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Tue, 2 Jun 2026 13:36:19 +0200 Subject: [PATCH 17/21] use actions/setup-node a second time for the publish task --- .github/workflows/push-tagged-release.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/push-tagged-release.yml b/.github/workflows/push-tagged-release.yml index 3ad648e1..7cd4ba77 100644 --- a/.github/workflows/push-tagged-release.yml +++ b/.github/workflows/push-tagged-release.yml @@ -67,11 +67,14 @@ jobs: token: ${{ secrets.GITHUB_TOKEN }} projectToken: ${{ secrets.chromaticToken }} exitZeroOnChanges: true + - uses: actions/setup-node@main + with: + node-version: "lts/krypton" + registry-url: "https://registry.npmjs.org" - name: Publish npm package run: yarn publish --access public env: NODE_AUTH_TOKEN: ${{ secrets.npmjsToken }} - registry-url: "https://registry.npmjs.org" - name: Prepare release info # only use for final releases and RCs -- other pre-releases do not need an official announcement if: inputs.onlyNpmPush != true From 6503a20d2540c8de32ee7261e620bb5450308d0b Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Tue, 2 Jun 2026 13:58:31 +0200 Subject: [PATCH 18/21] test nm to publish package --- .github/workflows/push-tagged-release.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/push-tagged-release.yml b/.github/workflows/push-tagged-release.yml index 7cd4ba77..a8465131 100644 --- a/.github/workflows/push-tagged-release.yml +++ b/.github/workflows/push-tagged-release.yml @@ -71,8 +71,9 @@ jobs: with: node-version: "lts/krypton" registry-url: "https://registry.npmjs.org" + package-manager-cache: false - name: Publish npm package - run: yarn publish --access public + run: npm publish --provenance --access public env: NODE_AUTH_TOKEN: ${{ secrets.npmjsToken }} - name: Prepare release info From e43bc4dac157712c4f2b64e57dfd70e01f1af9e7 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Tue, 2 Jun 2026 14:08:02 +0200 Subject: [PATCH 19/21] specify dedicated tag on publish command --- .github/workflows/push-tagged-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/push-tagged-release.yml b/.github/workflows/push-tagged-release.yml index a8465131..9603f491 100644 --- a/.github/workflows/push-tagged-release.yml +++ b/.github/workflows/push-tagged-release.yml @@ -73,7 +73,7 @@ jobs: registry-url: "https://registry.npmjs.org" package-manager-cache: false - name: Publish npm package - run: npm publish --provenance --access public + run: npm publish --provenance --access public --tag ${{ steps.info-vars.outputs.tag }} env: NODE_AUTH_TOKEN: ${{ secrets.npmjsToken }} - name: Prepare release info From 4403ff43643407662f760c1e61e0d929acd3d290 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Tue, 2 Jun 2026 14:23:26 +0200 Subject: [PATCH 20/21] return to yarn publish to push feature packages with semver versions --- .github/workflows/push-tagged-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/push-tagged-release.yml b/.github/workflows/push-tagged-release.yml index 9603f491..8ab76f4e 100644 --- a/.github/workflows/push-tagged-release.yml +++ b/.github/workflows/push-tagged-release.yml @@ -73,7 +73,7 @@ jobs: registry-url: "https://registry.npmjs.org" package-manager-cache: false - name: Publish npm package - run: npm publish --provenance --access public --tag ${{ steps.info-vars.outputs.tag }} + run: yarn publish --access public env: NODE_AUTH_TOKEN: ${{ secrets.npmjsToken }} - name: Prepare release info From 75b445dc4729f9854e1f9b744917038ab9f57d98 Mon Sep 17 00:00:00 2001 From: Michael Haschke Date: Tue, 2 Jun 2026 15:52:30 +0200 Subject: [PATCH 21/21] deprecate Toaster export --- CHANGELOG.md | 1 + blueprint/toaster/index.tsx | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2bd798b6..6eb665ad 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -31,6 +31,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/) and this p - if you forward properties then they cannot have `Color` as type, use `ColorLike` - `@blueprintjs/core` library was updated to v6 - you may need to update class names in your tests (the new prefix is `bp6-`) + - `Toaster.create` is now an async function - `` - by default, if no searchPredicate or searchListPredicate is defined, the filtering is done via case-insensitive multi-word filtering. diff --git a/blueprint/toaster/index.tsx b/blueprint/toaster/index.tsx index 4435c7bb..4355845a 100644 --- a/blueprint/toaster/index.tsx +++ b/blueprint/toaster/index.tsx @@ -1,3 +1,9 @@ -import { OverlayToaster as Toaster } from "@blueprintjs/core"; +import { OverlayToaster } from "@blueprintjs/core"; + +/** + * `OverlayToaster` from BlueprintJS, we still serve it as `Toaster`. + * @deprecated (v27) will be completely removed. + */ +const Toaster = OverlayToaster; export { Toaster }; export default Toaster;