From 483bf86101997e1b1ea43139400248350ac45221 Mon Sep 17 00:00:00 2001 From: Lukas Harbarth Date: Fri, 22 Nov 2024 14:30:53 +0100 Subject: [PATCH 1/3] chore(StyleStore): import `useSyncExternalStore` from `react` --- packages/base/src/hooks/useStylesheet.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/base/src/hooks/useStylesheet.ts b/packages/base/src/hooks/useStylesheet.ts index 74b58a35104..4a9a70b86a9 100644 --- a/packages/base/src/hooks/useStylesheet.ts +++ b/packages/base/src/hooks/useStylesheet.ts @@ -3,7 +3,7 @@ import type { StyleDataCSP } from '@ui5/webcomponents-base/dist/ManagedStyles.js'; import { createOrUpdateStyle, removeStyle } from '@ui5/webcomponents-base/dist/ManagedStyles.js'; import { getCurrentRuntimeIndex } from '@ui5/webcomponents-base/dist/Runtimes.js'; -import { useSyncExternalStore } from 'use-sync-external-store/shim/index.js'; +import { useSyncExternalStore } from 'react'; import { StyleStore } from '../stores/StyleStore.js'; import { useIsomorphicLayoutEffect } from './useIsomorphicLayoutEffect.js'; From ad7d694b0aee0e315d07ff1109225f30add78112 Mon Sep 17 00:00:00 2001 From: Lukas Harbarth Date: Fri, 22 Nov 2024 15:09:12 +0100 Subject: [PATCH 2/3] replace shim everywhere --- package.json | 1 - packages/base/package.json | 5 +---- packages/base/src/hooks/useI18nBundle.ts | 3 +-- packages/main/src/components/Modals/index.tsx | 3 +-- yarn.lock | 10 ---------- 5 files changed, 3 insertions(+), 19 deletions(-) diff --git a/package.json b/package.json index 3c5179bc90c..a0abc63e1c7 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,6 @@ "@types/node": "^22.0.0", "@types/react": "^18.3.4", "@types/react-dom": "^18.3.0", - "@types/use-sync-external-store": "^0.0.6", "@ui5/webcomponents-tools": "2.4.0", "@vitejs/plugin-react": "^4.2.0", "chromatic": "^11.0.0", diff --git a/packages/base/package.json b/packages/base/package.json index 193097abfa8..08ad05ee051 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -51,8 +51,5 @@ "LICENSE", "NOTICE.txt", "README.md" - ], - "dependencies": { - "use-sync-external-store": "1.2.2" - } + ] } diff --git a/packages/base/src/hooks/useI18nBundle.ts b/packages/base/src/hooks/useI18nBundle.ts index 85e47a5af0a..1e0e5bd832e 100644 --- a/packages/base/src/hooks/useI18nBundle.ts +++ b/packages/base/src/hooks/useI18nBundle.ts @@ -1,8 +1,7 @@ 'use client'; import I18nBundle from '@ui5/webcomponents-base/dist/i18nBundle.js'; -import { useEffect } from 'react'; -import { useSyncExternalStore } from 'use-sync-external-store/shim/index.js'; +import { useEffect, useSyncExternalStore } from 'react'; import { I18nStore } from '../stores/I18nStore.js'; const defaultBundle = new I18nBundle('defaultBundle'); diff --git a/packages/main/src/components/Modals/index.tsx b/packages/main/src/components/Modals/index.tsx index cef5ad39556..748609b64ae 100644 --- a/packages/main/src/components/Modals/index.tsx +++ b/packages/main/src/components/Modals/index.tsx @@ -1,9 +1,8 @@ 'use client'; import type { RefObject } from 'react'; -import { createRef } from 'react'; +import { createRef, useSyncExternalStore } from 'react'; import { createPortal } from 'react-dom'; -import { useSyncExternalStore } from 'use-sync-external-store/shim/index.js'; import { getRandomId } from '../../internal/getRandomId.js'; import { ModalStore } from '../../internal/ModalStore.js'; import type { diff --git a/yarn.lock b/yarn.lock index ef47b177288..7474728cb87 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5499,13 +5499,6 @@ __metadata: languageName: node linkType: hard -"@types/use-sync-external-store@npm:^0.0.6": - version: 0.0.6 - resolution: "@types/use-sync-external-store@npm:0.0.6" - checksum: 10c0/77c045a98f57488201f678b181cccd042279aff3da34540ad242f893acc52b358bd0a8207a321b8ac09adbcef36e3236944390e2df4fcedb556ce7bb2a88f2a8 - languageName: node - linkType: hard - "@types/uuid@npm:^9.0.1": version: 9.0.7 resolution: "@types/uuid@npm:9.0.7" @@ -5932,8 +5925,6 @@ __metadata: "@ui5/webcomponents-react-base@workspace:packages/base, @ui5/webcomponents-react-base@workspace:~": version: 0.0.0-use.local resolution: "@ui5/webcomponents-react-base@workspace:packages/base" - dependencies: - use-sync-external-store: "npm:1.2.2" peerDependencies: "@types/react": "*" "@ui5/webcomponents-base": ~2.4.0 @@ -21223,7 +21214,6 @@ __metadata: "@types/node": "npm:^22.0.0" "@types/react": "npm:^18.3.4" "@types/react-dom": "npm:^18.3.0" - "@types/use-sync-external-store": "npm:^0.0.6" "@ui5/webcomponents": "npm:2.4.0" "@ui5/webcomponents-compat": "npm:2.4.0" "@ui5/webcomponents-fiori": "npm:2.4.0" From 087ec2869c49b9429bcaa41b4ee71b148e81dcef Mon Sep 17 00:00:00 2001 From: Lukas Harbarth Date: Fri, 22 Nov 2024 15:11:03 +0100 Subject: [PATCH 3/3] remove shim from main pkg --- packages/main/package.json | 3 +-- yarn.lock | 10 ---------- 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/packages/main/package.json b/packages/main/package.json index c19f17415cc..ee58c242561 100644 --- a/packages/main/package.json +++ b/packages/main/package.json @@ -52,8 +52,7 @@ "@tanstack/react-virtual": "~3.10.0", "@ui5/webcomponents-react-base": "workspace:~", "clsx": "2.1.1", - "react-table": "7.8.0", - "use-sync-external-store": "1.2.2" + "react-table": "7.8.0" }, "peerDependencies": { "@types/react": "*", diff --git a/yarn.lock b/yarn.lock index 7474728cb87..da1e1d3be0c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5993,7 +5993,6 @@ __metadata: "@ui5/webcomponents-react-base": "workspace:~" clsx: "npm:2.1.1" react-table: "npm:7.8.0" - use-sync-external-store: "npm:1.2.2" peerDependencies: "@types/react": "*" "@types/react-dom": "*" @@ -21568,15 +21567,6 @@ __metadata: languageName: node linkType: hard -"use-sync-external-store@npm:1.2.2": - version: 1.2.2 - resolution: "use-sync-external-store@npm:1.2.2" - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - checksum: 10c0/23b1597c10adf15b26ade9e8c318d8cc0abc9ec0ab5fc7ca7338da92e89c2536abd150a5891bf076836c352fdfa104fc7231fb48f806fd9960e0cbe03601abaf - languageName: node - linkType: hard - "util-deprecate@npm:^1.0.1, util-deprecate@npm:^1.0.2, util-deprecate@npm:~1.0.1": version: 1.0.2 resolution: "util-deprecate@npm:1.0.2"