diff --git a/.github/workflows/push-tagged-release.yml b/.github/workflows/push-tagged-release.yml
index dace7bba3..8ab76f4e2 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: |
@@ -68,6 +67,11 @@ 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"
+ package-manager-cache: false
- name: Publish npm package
run: yarn publish --access public
env:
diff --git a/CHANGELOG.md b/CHANGELOG.md
index af20b6b78..6eb665ad3 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -29,6 +29,9 @@ 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-`)
+ - `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 f6c4447af..4355845ab 100644
--- a/blueprint/toaster/index.tsx
+++ b/blueprint/toaster/index.tsx
@@ -1 +1,9 @@
-export { Toaster as default } 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;
diff --git a/package.json b/package.json
index 6da6c2caa..9873ae7a1 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.8.1",
+ "@blueprintjs/select": "6.1.1",
"@carbon/icons": "^11.80.0",
"@carbon/react": "^1.107.1",
"@codemirror/lang-html": "^6.4.11",
@@ -175,10 +175,11 @@
"yargs": "^18.0.0"
},
"peerDependencies": {
- "@blueprintjs/core": ">=5",
+ "@blueprintjs/core": ">=6",
"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/src/common/scss/_color-functions.scss b/src/common/scss/_color-functions.scss
index e4d088092..8fe9504a3 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) {
@@ -113,15 +119,14 @@ $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});
+ $color-new-notation: #{"rgb(" + $r + " " + $g + " " + $b + " / " + $a + ")"};
@return $color-new-notation;
}
}
/**
- * 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" {
diff --git a/src/components/Application/stories/ColorPalettes.stories.tsx b/src/components/Application/stories/ColorPalettes.stories.tsx
index 42409d325..68870862f 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/Button/button.scss b/src/components/Button/button.scss
index 677861123..580029522 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/Chat/_chat.scss b/src/components/Chat/_chat.scss
index 2a1204415..25f434c2e 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});
diff --git a/src/components/Icon/icon.scss b/src/components/Icon/icon.scss
index 2285cf987..47044cef7 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/components/Menu/menu.scss b/src/components/Menu/menu.scss
index 4cc1ca749..a7cfae7c7 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;
}
diff --git a/src/components/TextField/TextArea.tsx b/src/components/TextField/TextArea.tsx
index df232fb98..35b117943 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 = ({
diff --git a/src/includes/blueprintjs/_variables.scss b/src/includes/blueprintjs/_variables.scss
index 4a9903f13..77a5e3a21 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;
diff --git a/src/index.scss b/src/index.scss
index d13a53cbf..9d1800642 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
diff --git a/yarn.lock b/yarn.lock
index 0f1f2f24c..f4a8bd060 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1574,52 +1574,46 @@
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.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/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==
- 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==
+"@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==
dependencies:
- "@blueprintjs/colors" "^5.1.8"
- "@blueprintjs/icons" "^5.23.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"
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.6.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.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/core" "^5.19.1"
- "@blueprintjs/icons" "^5.23.0"
+ "@blueprintjs/colors" "^5.1.14"
+ "@blueprintjs/core" "^6.8.1"
+ "@blueprintjs/icons" "^6.6.0"
classnames "^2.3.1"
tslib "~2.6.2"
@@ -2305,6 +2299,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 +2314,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 +2329,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 +2354,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"
@@ -10249,13 +10279,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"
@@ -11938,16 +11961,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.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:
+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==
+
util-deprecate@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"