Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 21 additions & 7 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
{
"name": "root",
"private": true,
"workspaces": ["packages/*"],
"workspaces": [
"packages/*"
],
"type": "module",
"packageManager": "pnpm@9.15.0",
"engines": {
Expand Down Expand Up @@ -45,7 +47,7 @@
"shx": "0.3.4",
"tstyche": "3.1.1",
"typescript": "5.7.2",
"vite": "5.4.11",
"vite": "6.0.3",
"vitest": "2.1.8",
"vitest-localstorage-mock": "0.1.2",
"wait-for-expect": "3.0.2"
Expand All @@ -58,6 +60,7 @@
"format": "biome format --write .",
"test": "pnpm recursive run test:unit",
"test:coverage": "pnpm run test --coverage",
"typecheck": "pnpm tsc --noEmit",
"test:types": "tstyche",
"release": "pnpm build && pnpm changeset publish",
"prepare": "husky install"
Expand All @@ -72,13 +75,24 @@
}
},
"commitlint": {
"extends": ["@commitlint/config-conventional"]
"extends": [
"@commitlint/config-conventional"
]
},
"lint-staged": {
"*.(j|t)s?(x)": ["biome format --write .", "eslint --fix"],
"*.json": ["biome format --write ."],
"*.y(a)ml,": ["pnpm dlx prettier --write '**/*.{yml,yaml}' --single-quote"],
"*.mdx": ["biome format --write ."]
"*.(j|t)s?(x)": [
"biome format --write .",
"eslint --fix"
],
"*.json": [
"biome format --write ."
],
"*.y(a)ml,": [
"pnpm dlx prettier --write '**/*.{yml,yaml}' --single-quote"
],
"*.mdx": [
"biome format --write ."
]
},
"config": {
"commitizen": {
Expand Down
8 changes: 7 additions & 1 deletion packages/changesets-renovate/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
build: {
ssr: true,
target: ['node20'],
Expand Down
8 changes: 7 additions & 1 deletion packages/cookie-consent/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
build: {
lib: {
formats: ['es', 'cjs'],
Expand Down
8 changes: 7 additions & 1 deletion packages/outdated-browser/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
test: {
// environment: 'jsdom',
setupFiles: ['./vitest.setup.ts'],
Expand Down
8 changes: 7 additions & 1 deletion packages/random-name/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
build: {
lib: {
formats: ['es', 'cjs'],
Expand Down
8 changes: 7 additions & 1 deletion packages/regex/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
build: {
target: ['node20'],
},
Expand Down
8 changes: 7 additions & 1 deletion packages/use-dataloader/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
test: {
environment: 'jsdom',
setupFiles: ['./vitest.setup.ts'],
Expand Down
8 changes: 7 additions & 1 deletion packages/use-growthbook/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
build: {
lib: {
formats: ['es', 'cjs'],
Expand Down
55 changes: 26 additions & 29 deletions packages/use-i18n/src/__tests__/usei18n.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,20 @@ type OnTranslateError = ComponentProps<typeof I18n>['onTranslateError']
const isDefaultLocalesSupported = (locale: string): locale is Locales =>
ListLocales.includes(locale as Locales)

const load = async ({
locale,
namespace,
}: {
locale: string
namespace: string
}) =>
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
import(`./locales/namespaces/${locale}/${namespace}.json`)

const CustomComponent = ({ children }: { children: ReactNode }) => (
<p style={{ fontWeight: 'bold' }}>{children}</p>
)

const defaultOnTranslateError: OnTranslateError = () => {}

const wrapper =
Expand Down Expand Up @@ -148,16 +162,6 @@ describe('i18n hook', () => {
})

it('should use specific load on useTranslation', async () => {
const load = async ({
locale,
namespace,
}: {
locale: string
namespace: string
}) =>
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
import(`./locales/namespaces/${locale}/${namespace}.json`)

const { result } = renderHook(
() => useTranslation<NamespaceLocale, Locales>(['user', 'profile'], load),
{
Expand Down Expand Up @@ -206,16 +210,6 @@ describe('i18n hook', () => {
})

it("should use specific load and fallback default local if the key doesn't exist", async () => {
const load = async ({
locale,
namespace,
}: {
locale: string
namespace: string
}) =>
// eslint-disable-next-line @typescript-eslint/no-unsafe-return
import(`./locales/namespaces/${locale}/${namespace}.json`)

const { result } = renderHook(
() => useTranslation<NamespaceLocale, Locales>(['user'], load),
{
Expand Down Expand Up @@ -272,21 +266,24 @@ describe('i18n hook', () => {
wrapper: wrapper({ defaultLocale: 'en' }),
},
)
const CustomComponent = ({ children }: { children: ReactNode }) => (
<p style={{ fontWeight: 'bold' }}>{children}</p>
)

await waitFor(() => {
expect(
result.current.t('with.identifier', { identifier: <b>My resource</b> }),
).toEqual(['Are you sure you want to delete ', <b>My resource</b>, '?'])
result.current.t('with.identifier', {
identifier: <b key="1">My resource</b>,
}),
).toEqual([
'Are you sure you want to delete ',
<b key="1">My resource</b>,
'?',
])
expect(
result.current.t('with.identifier', {
identifier: <CustomComponent>My resource</CustomComponent>,
identifier: <CustomComponent key="1">My resource</CustomComponent>,
}),
).toEqual([
'Are you sure you want to delete ',
<CustomComponent>My resource</CustomComponent>,
<CustomComponent key="1">My resource</CustomComponent>,
'?',
])
})
Expand Down Expand Up @@ -581,12 +578,12 @@ describe('i18n hook', () => {
currency: 'EUR',
style: 'currency',
}),
).toEqual('2,00\xa0€')
).toEqual('2,00\u00A0€')
})

expect(
result.current.formatNumber(2, { currency: 'USD', style: 'currency' }),
).toEqual('2,00\xa0$US')
).toEqual('2,00\u00A0$US')
})

it('should use formatList', async () => {
Expand Down
8 changes: 7 additions & 1 deletion packages/use-i18n/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
test: {
environment: 'jsdom',
setupFiles: ['./vitest.setup.ts'],
Expand Down
8 changes: 7 additions & 1 deletion packages/use-media/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
test: {
environment: 'jsdom',
setupFiles: ['./vitest.setup.ts'],
Expand Down
8 changes: 7 additions & 1 deletion packages/use-query-params/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
test: {
environment: 'jsdom',
setupFiles: ['./vitest.setup.ts'],
Expand Down
8 changes: 7 additions & 1 deletion packages/use-random-name/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
test: {
environment: 'jsdom',
setupFiles: ['./vitest.setup.ts'],
Expand Down
8 changes: 7 additions & 1 deletion packages/use-segment/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
build: {
lib: {
formats: ['es', 'cjs'],
Expand Down
8 changes: 7 additions & 1 deletion packages/use-storage/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
test: {
environment: 'jsdom',
setupFiles: ['./vitest.setup.ts'],
Expand Down
8 changes: 7 additions & 1 deletion packages/validate-icu-locales/vite.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,14 @@

import { defineConfig, mergeConfig } from 'vite'
import { defaultConfig } from '../../vite.config'
import { defaultConfig as vitestDefaultConfig } from '../../vitest.config'

export default mergeConfig(defineConfig(defaultConfig), {
const config = {
...defineConfig(defaultConfig),
...vitestDefaultConfig,
}

export default mergeConfig(config, {
build: {
ssr: true,
target: ['node20'],
Expand Down
Loading
Loading