diff --git a/packages/use-i18n/package.json b/packages/use-i18n/package.json index c4eb7f2ec..50cad89d5 100644 --- a/packages/use-i18n/package.json +++ b/packages/use-i18n/package.json @@ -29,11 +29,11 @@ "license": "MIT", "dependencies": { "@formatjs/ecma402-abstract": "1.14.3", - "@formatjs/fast-memoize": "1.2.7", + "@formatjs/fast-memoize": "1.2.8", "date-fns": "2.29.3", "filesize": "10.0.6", "international-types": "0.3.8", - "intl-messageformat": "10.2.5" + "intl-messageformat": "10.2.6" }, "peerDependencies": { "date-fns": "2.x", diff --git a/packages/use-i18n/src/formatters.ts b/packages/use-i18n/src/formatters.ts index 46ca4fd8e..95ab2b217 100644 --- a/packages/use-i18n/src/formatters.ts +++ b/packages/use-i18n/src/formatters.ts @@ -38,17 +38,16 @@ type BaseFormatters = { } function createFastMemoizeCache(): Cache { - const store: Record = {} + const store = new Map() return { - // @ts-expect-error waiting for https://github.com/formatjs/formatjs/pull/3964 create() { return { get(key) { - return store[key] + return store.get(key) }, set(key, value) { - store[key] = value + return store.set(key, value) }, } }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4039f93cd..77c360c64 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -165,18 +165,18 @@ importers: packages/use-i18n: specifiers: '@formatjs/ecma402-abstract': 1.14.3 - '@formatjs/fast-memoize': 1.2.7 + '@formatjs/fast-memoize': 1.2.8 date-fns: 2.29.3 filesize: 10.0.6 international-types: 0.3.8 - intl-messageformat: 10.2.5 + intl-messageformat: 10.2.6 dependencies: '@formatjs/ecma402-abstract': 1.14.3 - '@formatjs/fast-memoize': 1.2.7 + '@formatjs/fast-memoize': 1.2.8 date-fns: 2.29.3 filesize: 10.0.6 international-types: 0.3.8 - intl-messageformat: 10.2.5 + intl-messageformat: 10.2.6 packages/use-media: specifiers: {} @@ -1935,8 +1935,8 @@ packages: tslib: 2.4.1 dev: false - /@formatjs/fast-memoize/1.2.7: - resolution: {integrity: sha512-hPeM5LXUUjtCKPybWOUAWpv8lpja8Xz+uKprFPJcg5F2Rd+/bf1E0UUsLRpaAgOReAf5HMRtoIgv/UcyPICrTQ==} + /@formatjs/fast-memoize/1.2.8: + resolution: {integrity: sha512-PemNUObyoIZcqdQ1ixTPugzAzhEj7j6AHIyrq/qR6x5BFTvOQeXHYsVZUqBEFduAIscUaDfou+U+xTqOiunJ3Q==} dependencies: tslib: 2.4.1 dev: false @@ -7753,11 +7753,11 @@ packages: resolution: {integrity: sha512-DeAFYOSA2wuUiSkFnAqrIM1UNVSAa8aP6hbXQOK4n74VuP/bCZPlZ7SEnCZ6+JBID/ekH1Ir5xTwsKA2Q++mKw==} dev: false - /intl-messageformat/10.2.5: - resolution: {integrity: sha512-AievYMN6WLLHwBeCTv4aRKG+w3ZNyZtkObwgsKk3Q7GNTq8zDRvDbJSBQkb2OPeVCcAKcIXvak9FF/bRNavoww==} + /intl-messageformat/10.2.6: + resolution: {integrity: sha512-qaTfGjXhdgDup5h3O8406GlQjEj0ky3q0cWWu/lL+H6vJA+sY2/8e4l4XrRPbi9vp38Pop0gO5dsrMO0DdEEBw==} dependencies: '@formatjs/ecma402-abstract': 1.14.3 - '@formatjs/fast-memoize': 1.2.7 + '@formatjs/fast-memoize': 1.2.8 '@formatjs/icu-messageformat-parser': 2.1.14 tslib: 2.4.1 dev: false