diff --git a/.github/workflows/install/action.yml b/.github/workflows/install/action.yml index f7dd261a5..f51209030 100644 --- a/.github/workflows/install/action.yml +++ b/.github/workflows/install/action.yml @@ -4,10 +4,10 @@ runs: using: composite steps: - name: Setup pnpm - uses: pnpm/action-setup@v2.2.4 + uses: pnpm/action-setup@v3 - name: Use Node.js 18 - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: 18 cache: pnpm diff --git a/.github/workflows/test-canary.yml b/.github/workflows/test-canary.yml index 9d8c5c0ba..c2625ca0a 100644 --- a/.github/workflows/test-canary.yml +++ b/.github/workflows/test-canary.yml @@ -10,7 +10,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install uses: ./.github/workflows/install @@ -19,8 +19,6 @@ jobs: run: corepack pnpm upgrade react@canary react-dom@canary use-sync-external-store@canary - name: Lint and test - env: - TEST_REACT_LEGACY: 1 run: | pnpm clean pnpm build diff --git a/.github/workflows/test-legacy-react.yml b/.github/workflows/test-legacy-react.yml index 3f3f73852..8ac54ed67 100644 --- a/.github/workflows/test-legacy-react.yml +++ b/.github/workflows/test-legacy-react.yml @@ -13,7 +13,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install uses: ./.github/workflows/install diff --git a/.github/workflows/test-release.yml b/.github/workflows/test-release.yml index 79e974b4d..279864e18 100644 --- a/.github/workflows/test-release.yml +++ b/.github/workflows/test-release.yml @@ -13,7 +13,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install uses: ./.github/workflows/install @@ -23,6 +23,7 @@ jobs: pnpm clean pnpm build pnpm run-all-checks + npm pack pnpm attw pnpm test pnpm test:build @@ -32,7 +33,7 @@ jobs: image: mcr.microsoft.com/playwright:v1.34.3-focal steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install uses: ./.github/workflows/install @@ -45,7 +46,7 @@ jobs: pnpm test:e2e - name: Upload test results if: always() - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: playwright-report path: playwright-report @@ -57,7 +58,7 @@ jobs: id-token: write steps: - name: Check out - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install uses: ./.github/workflows/install diff --git a/.github/workflows/trigger-release.yml b/.github/workflows/trigger-release.yml index 6efdb045b..2beba63ae 100644 --- a/.github/workflows/trigger-release.yml +++ b/.github/workflows/trigger-release.yml @@ -17,10 +17,6 @@ on: - minor - major - secrets: - RELEASE_BOT_GITHUB_TOKEN: - required: true - name: Trigger Release env: @@ -34,36 +30,13 @@ jobs: environment: release-${{ github.event.inputs.releaseType }}-${{ github.event.inputs.semverType }} steps: - - name: Setup node - uses: actions/setup-node@v3 - if: ${{ steps.docs-change.outputs.docsChange == 'nope' }} - with: - node-version: 18 - check-latest: true - - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 10 token: ${{ secrets.RELEASE_BOT_GITHUB_TOKEN }} - - - run: npm i -g pnpm@${PNPM_VERSION} - - - id: get-store-path - run: echo STORE_PATH=$(pnpm store path) >> $GITHUB_OUTPUT - - - uses: actions/cache@v3 - timeout-minutes: 5 - id: cache-pnpm-store - with: - path: ${{ steps.get-store-path.outputs.STORE_PATH }} - key: pnpm-store-${{ hashFiles('pnpm-lock.yaml') }} - restore-keys: | - pnpm-store- - pnpm-store-${{ hashFiles('pnpm-lock.yaml') }} - - - run: pnpm install - + - name: Install + uses: ./.github/workflows/install - run: | pnpm clean pnpm build diff --git a/e2e/site/app/suspense-fallback/layout.tsx b/e2e/site/app/suspense-fallback/layout.tsx new file mode 100644 index 000000000..58736cca6 --- /dev/null +++ b/e2e/site/app/suspense-fallback/layout.tsx @@ -0,0 +1,17 @@ +import { SWRConfig } from 'swr' + +function createPromiseData(data: any, timeout: number) { + return new Promise(resolve => { + setTimeout(() => { + resolve(data) + }, timeout) + }) +} + +export default function Layout({ children }: { children: React.ReactNode }) { + const fallback = { + '/api/promise': createPromiseData({ value: 'async promise' }, 2000) + } + + return {children} +} diff --git a/e2e/site/app/suspense-fallback/promise/page.tsx b/e2e/site/app/suspense-fallback/promise/page.tsx new file mode 100644 index 000000000..a4cede090 --- /dev/null +++ b/e2e/site/app/suspense-fallback/promise/page.tsx @@ -0,0 +1,9 @@ +'use client' + +import useSWR from 'swr' + +export default function Page() { + const { data, isLoading } = useSWR('/api/promise') + + return
{isLoading ? 'loading...' : data?.value}
+} diff --git a/e2e/site/next.config.js b/e2e/site/next.config.js index 950e2f42e..767719fc4 100644 --- a/e2e/site/next.config.js +++ b/e2e/site/next.config.js @@ -1,8 +1,4 @@ /** @type {import('next').NextConfig} */ -const nextConfig = { - experimental: { - serverActions: true, - }, -} +const nextConfig = {} module.exports = nextConfig diff --git a/e2e/site/package.json b/e2e/site/package.json index 241b88d99..16912f9ed 100644 --- a/e2e/site/package.json +++ b/e2e/site/package.json @@ -12,7 +12,7 @@ "@types/node": "^20.2.5", "@types/react": "^18.2.8", "@types/react-dom": "18.2.4", - "next": "^13.4.4", + "next": "^14.1.4", "react": "^18.2.0", "react-dom": "^18.2.0", "typescript": "5.1.3", diff --git a/e2e/test/suspense-fallback.test.ts b/e2e/test/suspense-fallback.test.ts new file mode 100644 index 000000000..d917195e1 --- /dev/null +++ b/e2e/test/suspense-fallback.test.ts @@ -0,0 +1,11 @@ +/* eslint-disable testing-library/prefer-screen-queries */ +import { test, expect } from '@playwright/test' + +test.describe('suspense fallback', () => { + test('should wait for promise fallback value to be resolved', async ({ + page + }) => { + await page.goto('./suspense-fallback/promise', { waitUntil: 'commit' }) + await expect(page.getByText('async promise')).toBeVisible() + }) +}) diff --git a/package.json b/package.json index 73f9d0c2c..48f82533f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "swr", - "version": "2.2.6-beta.0", + "version": "2.2.6-beta.2", "description": "React Hooks library for remote data fetching", "keywords": [ "swr", @@ -97,10 +97,10 @@ "csb:install": "corepack enable && corepack pnpm i", "csb:build": "pnpm build", "clean": "rimraf ./dist && rimraf playwright-report test-result", - "watch": "pnpm -r run watch", + "watch": "bunchee -w", "build": "bunchee", "build:e2e": "pnpm next build e2e/site", - "attw": "attw --pack", + "attw": "attw --pack .", "types:check": "tsc --noEmit", "prepublishOnly": "pnpm clean && pnpm build", "publish-beta": "pnpm publish --tag beta", @@ -121,7 +121,7 @@ ] }, "devDependencies": { - "@arethetypeswrong/cli": "^0.7.0", + "@arethetypeswrong/cli": "^0.15.3", "@playwright/test": "^1.34.3", "@swc/core": "^1.3.62", "@swc/jest": "0.2.26", @@ -134,7 +134,7 @@ "@types/use-sync-external-store": "^0.0.3", "@typescript-eslint/eslint-plugin": "5.59.8", "@typescript-eslint/parser": "5.59.8", - "bunchee": "^4.4.8", + "bunchee": "^5.1.1", "eslint": "8.42.0", "eslint-config-prettier": "8.8.0", "eslint-plugin-jest-dom": "5.1.0", @@ -145,7 +145,7 @@ "jest": "29.7.0", "jest-environment-jsdom": "29.7.0", "lint-staged": "13.2.2", - "next": "14.1.0", + "next": "14.1.4", "prettier": "2.8.8", "react": "^18.2.0", "react-dom": "^18.2.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index badcd499a..ee979f351 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,5 +1,9 @@ lockfileVersion: '6.0' +settings: + autoInstallPeers: false + excludeLinksFromLockfile: false + importers: .: @@ -9,8 +13,8 @@ importers: version: 1.2.0(react@18.2.0) devDependencies: '@arethetypeswrong/cli': - specifier: ^0.7.0 - version: 0.7.0 + specifier: ^0.15.3 + version: 0.15.3 '@playwright/test': specifier: ^1.34.3 version: 1.34.3 @@ -48,8 +52,8 @@ importers: specifier: 5.59.8 version: 5.59.8(eslint@8.42.0)(typescript@5.1.3) bunchee: - specifier: ^4.4.8 - version: 4.4.8(typescript@5.1.3) + specifier: ^5.1.1 + version: 5.1.1(typescript@5.1.3) eslint: specifier: 8.42.0 version: 8.42.0 @@ -81,8 +85,8 @@ importers: specifier: 13.2.2 version: 13.2.2 next: - specifier: 14.1.0 - version: 14.1.0(react-dom@18.2.0)(react@18.2.0) + specifier: 14.1.4 + version: 14.1.4(react-dom@18.2.0)(react@18.2.0) prettier: specifier: 2.8.8 version: 2.8.8 @@ -130,35 +134,34 @@ packages: '@jridgewell/trace-mapping': 0.3.23 dev: true - /@andrewbranch/untar.js@1.0.2: - resolution: {integrity: sha512-hL80MHK3b++pEp6K23+Nl5r5D1F19DRagp2ruCBIv4McyCiLKq67vUNvEQY1aGCAKNZ8GxV23n5MhOm7RwO8Pg==} + /@andrewbranch/untar.js@1.0.3: + resolution: {integrity: sha512-Jh15/qVmrLGhkKJBdXlK1+9tY4lZruYjsgkDFj08ZmDiWVBLJcqkok7Z0/R0In+i1rScBpJlSvrTS2Lm41Pbnw==} dev: true - /@arethetypeswrong/cli@0.7.0: - resolution: {integrity: sha512-fNX9abfPkhYPUlfSI38L0TtbJWIIGuMF1TQsnw9GzAeg6FFWEj5HYoI0pRj049p++BgM9/ikRy1RS2BBDkCHXQ==} + /@arethetypeswrong/cli@0.15.3: + resolution: {integrity: sha512-sIMA9ZJBWDEg1+xt5RkAEflZuf8+PO8SdKj17x6PtETuUho+qlZJg4DgmKc3q+QwQ9zOB5VLK6jVRbFdNLdUIA==} + engines: {node: '>=18'} hasBin: true dependencies: - '@arethetypeswrong/core': 0.7.0 + '@arethetypeswrong/core': 0.15.1 chalk: 4.1.2 cli-table3: 0.6.3 commander: 10.0.1 - marked: 5.1.1 - marked-terminal: 5.2.0(marked@5.1.1) - transitivePeerDependencies: - - encoding + marked: 9.1.6 + marked-terminal: 6.2.0(marked@9.1.6) + semver: 7.5.4 dev: true - /@arethetypeswrong/core@0.7.0: - resolution: {integrity: sha512-qwWmIm8YNvmSOgDXEDJUEjd1yGX4bTY0838A+wCTHlOm2n/lFhjauZjAxfKu9DHn2TSGnHahD07tGDPp4I7fSg==} + /@arethetypeswrong/core@0.15.1: + resolution: {integrity: sha512-FYp6GBAgsNz81BkfItRz8RLZO03w5+BaeiPma1uCfmxTnxbtuMrI/dbzGiOk8VghO108uFI0oJo0OkewdSHw7g==} + engines: {node: '>=18'} dependencies: - '@andrewbranch/untar.js': 1.0.2 - fetch-ponyfill: 7.1.0 - fflate: 0.7.4 + '@andrewbranch/untar.js': 1.0.3 + fflate: 0.8.2 semver: 7.5.4 - typescript: 5.1.3 + ts-expose-internals-conditionally: 1.0.0-empty.0 + typescript: 5.3.3 validate-npm-package-name: 5.0.0 - transitivePeerDependencies: - - encoding dev: true /@babel/code-frame@7.23.5: @@ -863,12 +866,12 @@ packages: '@jridgewell/sourcemap-codec': 1.4.15 dev: true - /@next/env@14.1.0: - resolution: {integrity: sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==} + /@next/env@14.1.4: + resolution: {integrity: sha512-e7X7bbn3Z6DWnDi75UWn+REgAbLEqxI8Tq2pkFOFAMpWAWApz/YCUhtWMWn410h8Q2fYiYL7Yg5OlxMOCfFjJQ==} dev: true - /@next/swc-darwin-arm64@14.1.0: - resolution: {integrity: sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==} + /@next/swc-darwin-arm64@14.1.4: + resolution: {integrity: sha512-ubmUkbmW65nIAOmoxT1IROZdmmJMmdYvXIe8211send9ZYJu+SqxSnJM4TrPj9wmL6g9Atvj0S/2cFmMSS99jg==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] @@ -876,8 +879,8 @@ packages: dev: true optional: true - /@next/swc-darwin-x64@14.1.0: - resolution: {integrity: sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==} + /@next/swc-darwin-x64@14.1.4: + resolution: {integrity: sha512-b0Xo1ELj3u7IkZWAKcJPJEhBop117U78l70nfoQGo4xUSvv0PJSTaV4U9xQBLvZlnjsYkc8RwQN1HoH/oQmLlQ==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] @@ -885,8 +888,8 @@ packages: dev: true optional: true - /@next/swc-linux-arm64-gnu@14.1.0: - resolution: {integrity: sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==} + /@next/swc-linux-arm64-gnu@14.1.4: + resolution: {integrity: sha512-457G0hcLrdYA/u1O2XkRMsDKId5VKe3uKPvrKVOyuARa6nXrdhJOOYU9hkKKyQTMru1B8qEP78IAhf/1XnVqKA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -894,8 +897,8 @@ packages: dev: true optional: true - /@next/swc-linux-arm64-musl@14.1.0: - resolution: {integrity: sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==} + /@next/swc-linux-arm64-musl@14.1.4: + resolution: {integrity: sha512-l/kMG+z6MB+fKA9KdtyprkTQ1ihlJcBh66cf0HvqGP+rXBbOXX0dpJatjZbHeunvEHoBBS69GYQG5ry78JMy3g==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -903,8 +906,8 @@ packages: dev: true optional: true - /@next/swc-linux-x64-gnu@14.1.0: - resolution: {integrity: sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==} + /@next/swc-linux-x64-gnu@14.1.4: + resolution: {integrity: sha512-BapIFZ3ZRnvQ1uWbmqEGJuPT9cgLwvKtxhK/L2t4QYO7l+/DxXuIGjvp1x8rvfa/x1FFSsipERZK70pewbtJtw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -912,8 +915,8 @@ packages: dev: true optional: true - /@next/swc-linux-x64-musl@14.1.0: - resolution: {integrity: sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==} + /@next/swc-linux-x64-musl@14.1.4: + resolution: {integrity: sha512-mqVxTwk4XuBl49qn2A5UmzFImoL1iLm0KQQwtdRJRKl21ylQwwGCxJtIYo2rbfkZHoSKlh/YgztY0qH3wG1xIg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -921,8 +924,8 @@ packages: dev: true optional: true - /@next/swc-win32-arm64-msvc@14.1.0: - resolution: {integrity: sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==} + /@next/swc-win32-arm64-msvc@14.1.4: + resolution: {integrity: sha512-xzxF4ErcumXjO2Pvg/wVGrtr9QQJLk3IyQX1ddAC/fi6/5jZCZ9xpuL9Tzc4KPWMFq8GGWFVDMshZOdHGdkvag==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] @@ -930,8 +933,8 @@ packages: dev: true optional: true - /@next/swc-win32-ia32-msvc@14.1.0: - resolution: {integrity: sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==} + /@next/swc-win32-ia32-msvc@14.1.4: + resolution: {integrity: sha512-WZiz8OdbkpRw6/IU/lredZWKKZopUMhcI2F+XiMAcPja0uZYdMTZQRoQ0WZcvinn9xZAidimE7tN9W5v9Yyfyw==} engines: {node: '>= 10'} cpu: [ia32] os: [win32] @@ -939,8 +942,8 @@ packages: dev: true optional: true - /@next/swc-win32-x64-msvc@14.1.0: - resolution: {integrity: sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==} + /@next/swc-win32-x64-msvc@14.1.4: + resolution: {integrity: sha512-4Rto21sPfw555sZ/XNLqfxDUNeLhNYGO2dlPqsnuCg8N8a2a9u1ltqBOPQ4vj1Gf7eJC0W2hHG2eYUHuiXgY2w==} engines: {node: '>= 10'} cpu: [x64] os: [win32] @@ -987,7 +990,7 @@ packages: fsevents: 2.3.2 dev: true - /@rollup/plugin-commonjs@25.0.7(rollup@4.12.0): + /@rollup/plugin-commonjs@25.0.7(rollup@4.13.2): resolution: {integrity: sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -996,16 +999,16 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.12.0) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) commondir: 1.0.1 estree-walker: 2.0.2 glob: 8.1.0 is-reference: 1.2.1 - magic-string: 0.30.7 - rollup: 4.12.0 + magic-string: 0.30.8 + rollup: 4.13.2 dev: true - /@rollup/plugin-json@6.1.0(rollup@4.12.0): + /@rollup/plugin-json@6.1.0(rollup@4.13.2): resolution: {integrity: sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==} engines: {node: '>=14.0.0'} peerDependencies: @@ -1014,11 +1017,11 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.12.0) - rollup: 4.12.0 + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) + rollup: 4.13.2 dev: true - /@rollup/plugin-node-resolve@15.2.3(rollup@4.12.0): + /@rollup/plugin-node-resolve@15.2.3(rollup@4.13.2): resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -1027,16 +1030,16 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.12.0) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) '@types/resolve': 1.20.2 deepmerge: 4.2.2 is-builtin-module: 3.2.1 is-module: 1.0.0 resolve: 1.22.1 - rollup: 4.12.0 + rollup: 4.13.2 dev: true - /@rollup/plugin-replace@5.0.5(rollup@4.12.0): + /@rollup/plugin-replace@5.0.5(rollup@4.13.2): resolution: {integrity: sha512-rYO4fOi8lMaTg/z5Jb+hKnrHHVn8j2lwkqwyS4kTRhKyWOLf2wST2sWXr4WzWiTcoHTp2sTjqUbqIj2E39slKQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -1045,12 +1048,12 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.12.0) - magic-string: 0.30.7 - rollup: 4.12.0 + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) + magic-string: 0.30.8 + rollup: 4.13.2 dev: true - /@rollup/plugin-wasm@6.2.2(rollup@4.12.0): + /@rollup/plugin-wasm@6.2.2(rollup@4.13.2): resolution: {integrity: sha512-gpC4R1G9Ni92ZIRTexqbhX7U+9estZrbhP+9SRb0DW9xpB9g7j34r+J2hqrcW/lRI7dJaU84MxZM0Rt82tqYPQ==} engines: {node: '>=14.0.0'} peerDependencies: @@ -1059,11 +1062,11 @@ packages: rollup: optional: true dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.12.0) - rollup: 4.12.0 + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) + rollup: 4.13.2 dev: true - /@rollup/pluginutils@5.1.0(rollup@4.12.0): + /@rollup/pluginutils@5.1.0(rollup@4.13.2): resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} engines: {node: '>=14.0.0'} peerDependencies: @@ -1075,107 +1078,123 @@ packages: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 - rollup: 4.12.0 + rollup: 4.13.2 dev: true - /@rollup/rollup-android-arm-eabi@4.12.0: - resolution: {integrity: sha512-+ac02NL/2TCKRrJu2wffk1kZ+RyqxVUlbjSagNgPm94frxtr+XDL12E5Ll1enWskLrtrZ2r8L3wED1orIibV/w==} + /@rollup/rollup-android-arm-eabi@4.13.2: + resolution: {integrity: sha512-3XFIDKWMFZrMnao1mJhnOT1h2g0169Os848NhhmGweEcfJ4rCi+3yMCOLG4zA61rbJdkcrM/DjVZm9Hg5p5w7g==} cpu: [arm] os: [android] requiresBuild: true dev: true optional: true - /@rollup/rollup-android-arm64@4.12.0: - resolution: {integrity: sha512-OBqcX2BMe6nvjQ0Nyp7cC90cnumt8PXmO7Dp3gfAju/6YwG0Tj74z1vKrfRz7qAv23nBcYM8BCbhrsWqO7PzQQ==} + /@rollup/rollup-android-arm64@4.13.2: + resolution: {integrity: sha512-GdxxXbAuM7Y/YQM9/TwwP+L0omeE/lJAR1J+olu36c3LqqZEBdsIWeQ91KBe6nxwOnb06Xh7JS2U5ooWU5/LgQ==} cpu: [arm64] os: [android] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-arm64@4.12.0: - resolution: {integrity: sha512-X64tZd8dRE/QTrBIEs63kaOBG0b5GVEd3ccoLtyf6IdXtHdh8h+I56C2yC3PtC9Ucnv0CpNFJLqKFVgCYe0lOQ==} + /@rollup/rollup-darwin-arm64@4.13.2: + resolution: {integrity: sha512-mCMlpzlBgOTdaFs83I4XRr8wNPveJiJX1RLfv4hggyIVhfB5mJfN4P8Z6yKh+oE4Luz+qq1P3kVdWrCKcMYrrA==} cpu: [arm64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-darwin-x64@4.12.0: - resolution: {integrity: sha512-cc71KUZoVbUJmGP2cOuiZ9HSOP14AzBAThn3OU+9LcA1+IUqswJyR1cAJj3Mg55HbjZP6OLAIscbQsQLrpgTOg==} + /@rollup/rollup-darwin-x64@4.13.2: + resolution: {integrity: sha512-yUoEvnH0FBef/NbB1u6d3HNGyruAKnN74LrPAfDQL3O32e3k3OSfLrPgSJmgb3PJrBZWfPyt6m4ZhAFa2nZp2A==} cpu: [x64] os: [darwin] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm-gnueabihf@4.12.0: - resolution: {integrity: sha512-a6w/Y3hyyO6GlpKL2xJ4IOh/7d+APaqLYdMf86xnczU3nurFTaVN9s9jOXQg97BE4nYm/7Ga51rjec5nfRdrvA==} + /@rollup/rollup-linux-arm-gnueabihf@4.13.2: + resolution: {integrity: sha512-GYbLs5ErswU/Xs7aGXqzc3RrdEjKdmoCrgzhJWyFL0r5fL3qd1NPcDKDowDnmcoSiGJeU68/Vy+OMUluRxPiLQ==} cpu: [arm] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-gnu@4.12.0: - resolution: {integrity: sha512-0fZBq27b+D7Ar5CQMofVN8sggOVhEtzFUwOwPppQt0k+VR+7UHMZZY4y+64WJ06XOhBTKXtQB/Sv0NwQMXyNAA==} + /@rollup/rollup-linux-arm64-gnu@4.13.2: + resolution: {integrity: sha512-L1+D8/wqGnKQIlh4Zre9i4R4b4noxzH5DDciyahX4oOz62CphY7WDWqJoQ66zNR4oScLNOqQJfNSIAe/6TPUmQ==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-arm64-musl@4.12.0: - resolution: {integrity: sha512-eTvzUS3hhhlgeAv6bfigekzWZjaEX9xP9HhxB0Dvrdbkk5w/b+1Sxct2ZuDxNJKzsRStSq1EaEkVSEe7A7ipgQ==} + /@rollup/rollup-linux-arm64-musl@4.13.2: + resolution: {integrity: sha512-tK5eoKFkXdz6vjfkSTCupUzCo40xueTOiOO6PeEIadlNBkadH1wNOH8ILCPIl8by/Gmb5AGAeQOFeLev7iZDOA==} cpu: [arm64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-riscv64-gnu@4.12.0: - resolution: {integrity: sha512-ix+qAB9qmrCRiaO71VFfY8rkiAZJL8zQRXveS27HS+pKdjwUfEhqo2+YF2oI+H/22Xsiski+qqwIBxVewLK7sw==} + /@rollup/rollup-linux-powerpc64le-gnu@4.13.2: + resolution: {integrity: sha512-zvXvAUGGEYi6tYhcDmb9wlOckVbuD+7z3mzInCSTACJ4DQrdSLPNUeDIcAQW39M3q6PDquqLWu7pnO39uSMRzQ==} + cpu: [ppc64le] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-riscv64-gnu@4.13.2: + resolution: {integrity: sha512-C3GSKvMtdudHCN5HdmAMSRYR2kkhgdOfye4w0xzyii7lebVr4riCgmM6lRiSCnJn2w1Xz7ZZzHKuLrjx5620kw==} cpu: [riscv64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-gnu@4.12.0: - resolution: {integrity: sha512-TenQhZVOtw/3qKOPa7d+QgkeM6xY0LtwzR8OplmyL5LrgTWIXpTQg2Q2ycBf8jm+SFW2Wt/DTn1gf7nFp3ssVA==} + /@rollup/rollup-linux-s390x-gnu@4.13.2: + resolution: {integrity: sha512-l4U0KDFwzD36j7HdfJ5/TveEQ1fUTjFFQP5qIt9gBqBgu1G8/kCaq5Ok05kd5TG9F8Lltf3MoYsUMw3rNlJ0Yg==} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-gnu@4.13.2: + resolution: {integrity: sha512-xXMLUAMzrtsvh3cZ448vbXqlUa7ZL8z0MwHp63K2IIID2+DeP5iWIT6g1SN7hg1VxPzqx0xZdiDM9l4n9LRU1A==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-linux-x64-musl@4.12.0: - resolution: {integrity: sha512-LfFdRhNnW0zdMvdCb5FNuWlls2WbbSridJvxOvYWgSBOYZtgBfW9UGNJG//rwMqTX1xQE9BAodvMH9tAusKDUw==} + /@rollup/rollup-linux-x64-musl@4.13.2: + resolution: {integrity: sha512-M/JYAWickafUijWPai4ehrjzVPKRCyDb1SLuO+ZyPfoXgeCEAlgPkNXewFZx0zcnoIe3ay4UjXIMdXQXOZXWqA==} cpu: [x64] os: [linux] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-arm64-msvc@4.12.0: - resolution: {integrity: sha512-JPDxovheWNp6d7AHCgsUlkuCKvtu3RB55iNEkaQcf0ttsDU/JZF+iQnYcQJSk/7PtT4mjjVG8N1kpwnI9SLYaw==} + /@rollup/rollup-win32-arm64-msvc@4.13.2: + resolution: {integrity: sha512-2YWwoVg9KRkIKaXSh0mz3NmfurpmYoBBTAXA9qt7VXk0Xy12PoOP40EFuau+ajgALbbhi4uTj3tSG3tVseCjuA==} cpu: [arm64] os: [win32] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-ia32-msvc@4.12.0: - resolution: {integrity: sha512-fjtuvMWRGJn1oZacG8IPnzIV6GF2/XG+h71FKn76OYFqySXInJtseAqdprVTDTyqPxQOG9Exak5/E9Z3+EJ8ZA==} + /@rollup/rollup-win32-ia32-msvc@4.13.2: + resolution: {integrity: sha512-2FSsE9aQ6OWD20E498NYKEQLneShWes0NGMPQwxWOdws35qQXH+FplabOSP5zEe1pVjurSDOGEVCE2agFwSEsw==} cpu: [ia32] os: [win32] requiresBuild: true dev: true optional: true - /@rollup/rollup-win32-x64-msvc@4.12.0: - resolution: {integrity: sha512-ZYmr5mS2wd4Dew/JjT0Fqi2NPB/ZhZ2VvPp7SmvPZb4Y1CG/LRcS6tcRo2cYU7zLK5A7cdbhWnnWmUjoI4qapg==} + /@rollup/rollup-win32-x64-msvc@4.13.2: + resolution: {integrity: sha512-7h7J2nokcdPePdKykd8wtc8QqqkqxIrUz7MHj6aNr8waBRU//NLDVnNjQnqQO6fqtjrtCdftpbTuOKAyrAQETQ==} cpu: [x64] os: [win32] requiresBuild: true @@ -1186,6 +1205,11 @@ packages: resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} dev: true + /@sindresorhus/is@4.6.0: + resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} + engines: {node: '>=10'} + dev: true + /@sinonjs/commons@2.0.0: resolution: {integrity: sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==} dependencies: @@ -1207,8 +1231,8 @@ packages: dev: true optional: true - /@swc/core-darwin-arm64@1.4.1: - resolution: {integrity: sha512-ePyfx0348UbR4DOAW24TedeJbafnzha8liXFGuQ4bdXtEVXhLfPngprrxKrAddCuv42F9aTxydlF6+adD3FBhA==} + /@swc/core-darwin-arm64@1.4.11: + resolution: {integrity: sha512-C1j1Qp/IHSelVWdEnT7f0iONWxQz6FAqzjCF2iaL+0vFg4V5f2nlgrueY8vj5pNNzSGhrAlxsMxEIp4dj1MXkg==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] @@ -1225,8 +1249,8 @@ packages: dev: true optional: true - /@swc/core-darwin-x64@1.4.1: - resolution: {integrity: sha512-eLf4JSe6VkCMdDowjM8XNC5rO+BrgfbluEzAVtKR8L2HacNYukieumN7EzpYCi0uF1BYwu1ku6tLyG2r0VcGxA==} + /@swc/core-darwin-x64@1.4.11: + resolution: {integrity: sha512-0TTy3Ni8ncgaMCchSQ7FK8ZXQLlamy0FXmGWbR58c+pVZWYZltYPTmheJUvVcR0H2+gPAymRKyfC0iLszDALjg==} engines: {node: '>=10'} cpu: [x64] os: [darwin] @@ -1243,8 +1267,8 @@ packages: dev: true optional: true - /@swc/core-linux-arm-gnueabihf@1.4.1: - resolution: {integrity: sha512-K8VtTLWMw+rkN/jDC9o/Q9SMmzdiHwYo2CfgkwVT29NsGccwmNhCQx6XoYiPKyKGIFKt4tdQnJHKUFzxUqQVtQ==} + /@swc/core-linux-arm-gnueabihf@1.4.11: + resolution: {integrity: sha512-XJLB71uw0rog4DjYAPxFGAuGCBQpgJDlPZZK6MTmZOvI/1t0+DelJ24IjHIxk500YYM26Yv47xPabqFPD7I2zQ==} engines: {node: '>=10'} cpu: [arm] os: [linux] @@ -1261,8 +1285,8 @@ packages: dev: true optional: true - /@swc/core-linux-arm64-gnu@1.4.1: - resolution: {integrity: sha512-0e8p4g0Bfkt8lkiWgcdiENH3RzkcqKtpRXIVNGOmVc0OBkvc2tpm2WTx/eoCnes2HpTT4CTtR3Zljj4knQ4Fvw==} + /@swc/core-linux-arm64-gnu@1.4.11: + resolution: {integrity: sha512-vYQwzJvm/iu052d5Iw27UFALIN5xSrGkPZXxLNMHPySVko2QMNNBv35HLatkEQHbQ3X+VKSW9J9SkdtAvAVRAQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] @@ -1279,8 +1303,8 @@ packages: dev: true optional: true - /@swc/core-linux-arm64-musl@1.4.1: - resolution: {integrity: sha512-b/vWGQo2n7lZVUnSQ7NBq3Qrj85GrAPPiRbpqaIGwOytiFSk8VULFihbEUwDe0rXgY4LDm8z8wkgADZcLnmdUA==} + /@swc/core-linux-arm64-musl@1.4.11: + resolution: {integrity: sha512-eV+KduiRYUFjPsvbZuJ9aknQH9Tj0U2/G9oIZSzLx/18WsYi+upzHbgxmIIHJ2VJgfd7nN40RI/hMtxNsUzR/g==} engines: {node: '>=10'} cpu: [arm64] os: [linux] @@ -1297,8 +1321,8 @@ packages: dev: true optional: true - /@swc/core-linux-x64-gnu@1.4.1: - resolution: {integrity: sha512-AFMQlvkKEdNi1Vk2GFTxxJzbICttBsOQaXa98kFTeWTnFFIyiIj2w7Sk8XRTEJ/AjF8ia8JPKb1zddBWr9+bEQ==} + /@swc/core-linux-x64-gnu@1.4.11: + resolution: {integrity: sha512-WA1iGXZ2HpqM1OR9VCQZJ8sQ1KP2or9O4bO8vWZo6HZJIeoQSo7aa9waaCLRpkZvkng1ct/TF/l6ymqSNFXIzQ==} engines: {node: '>=10'} cpu: [x64] os: [linux] @@ -1315,8 +1339,8 @@ packages: dev: true optional: true - /@swc/core-linux-x64-musl@1.4.1: - resolution: {integrity: sha512-QX2MxIECX1gfvUVZY+jk528/oFkS9MAl76e3ZRvG2KC/aKlCQL0KSzcTSm13mOxkDKS30EaGRDRQWNukGpMeRg==} + /@swc/core-linux-x64-musl@1.4.11: + resolution: {integrity: sha512-UkVJToKf0owwQYRnGvjHAeYVDfeimCEcx0VQSbJoN7Iy0ckRZi7YPlmWJU31xtKvikE2bQWCOVe0qbSDqqcWXA==} engines: {node: '>=10'} cpu: [x64] os: [linux] @@ -1333,8 +1357,8 @@ packages: dev: true optional: true - /@swc/core-win32-arm64-msvc@1.4.1: - resolution: {integrity: sha512-OklkJYXXI/tntD2zaY8i3iZldpyDw5q+NAP3k9OlQ7wXXf37djRsHLV0NW4+ZNHBjE9xp2RsXJ0jlOJhfgGoFA==} + /@swc/core-win32-arm64-msvc@1.4.11: + resolution: {integrity: sha512-35khwkyly7lF5NDSyvIrukBMzxPorgc5iTSDfVO/LvnmN5+fm4lTlrDr4tUfTdOhv3Emy7CsKlsNAeFRJ+Pm+w==} engines: {node: '>=10'} cpu: [arm64] os: [win32] @@ -1351,8 +1375,8 @@ packages: dev: true optional: true - /@swc/core-win32-ia32-msvc@1.4.1: - resolution: {integrity: sha512-MBuc3/QfKX9FnLOU7iGN+6yHRTQaPQ9WskiC8s8JFiKQ+7I2p25tay2RplR9dIEEGgVAu6L7auv96LbNTh+FaA==} + /@swc/core-win32-ia32-msvc@1.4.11: + resolution: {integrity: sha512-Wx8/6f0ufgQF2pbVPsJ2dAmFLwIOW+xBE5fxnb7VnEbGkTgP1qMDWiiAtD9rtvDSuODG3i1AEmAak/2HAc6i6A==} engines: {node: '>=10'} cpu: [ia32] os: [win32] @@ -1369,8 +1393,8 @@ packages: dev: true optional: true - /@swc/core-win32-x64-msvc@1.4.1: - resolution: {integrity: sha512-lu4h4wFBb/bOK6N2MuZwg7TrEpwYXgpQf5R7ObNSXL65BwZ9BG8XRzD+dLJmALu8l5N08rP/TrpoKRoGT4WSxw==} + /@swc/core-win32-x64-msvc@1.4.11: + resolution: {integrity: sha512-0xRFW6K9UZQH2NVC/0pVB0GJXS45lY24f+6XaPBF1YnMHd8A8GoHl7ugyM5yNUTe2AKhSgk5fJV00EJt/XBtdQ==} engines: {node: '>=10'} cpu: [x64] os: [win32] @@ -1403,8 +1427,8 @@ packages: '@swc/core-win32-x64-msvc': 1.3.93 dev: true - /@swc/core@1.4.1(@swc/helpers@0.5.6): - resolution: {integrity: sha512-3y+Y8js+e7BbM16iND+6Rcs3jdiL28q3iVtYsCviYSSpP2uUVKkp5sJnCY4pg8AaVvyN7CGQHO7gLEZQ5ByozQ==} + /@swc/core@1.4.11(@swc/helpers@0.5.6): + resolution: {integrity: sha512-WKEakMZxkVwRdgMN4AMJ9K5nysY8g8npgQPczmjBeNK5In7QEAZAJwnyccrWwJZU0XjVeHn2uj+XbOKdDW17rg==} engines: {node: '>=10'} requiresBuild: true peerDependencies: @@ -1417,16 +1441,16 @@ packages: '@swc/helpers': 0.5.6 '@swc/types': 0.1.5 optionalDependencies: - '@swc/core-darwin-arm64': 1.4.1 - '@swc/core-darwin-x64': 1.4.1 - '@swc/core-linux-arm-gnueabihf': 1.4.1 - '@swc/core-linux-arm64-gnu': 1.4.1 - '@swc/core-linux-arm64-musl': 1.4.1 - '@swc/core-linux-x64-gnu': 1.4.1 - '@swc/core-linux-x64-musl': 1.4.1 - '@swc/core-win32-arm64-msvc': 1.4.1 - '@swc/core-win32-ia32-msvc': 1.4.1 - '@swc/core-win32-x64-msvc': 1.4.1 + '@swc/core-darwin-arm64': 1.4.11 + '@swc/core-darwin-x64': 1.4.11 + '@swc/core-linux-arm-gnueabihf': 1.4.11 + '@swc/core-linux-arm64-gnu': 1.4.11 + '@swc/core-linux-arm64-musl': 1.4.11 + '@swc/core-linux-x64-gnu': 1.4.11 + '@swc/core-linux-x64-musl': 1.4.11 + '@swc/core-win32-arm64-msvc': 1.4.11 + '@swc/core-win32-ia32-msvc': 1.4.11 + '@swc/core-win32-x64-msvc': 1.4.11 dev: true /@swc/counter@0.1.2: @@ -2164,8 +2188,8 @@ packages: semver: 7.5.4 dev: true - /bunchee@4.4.8(typescript@5.1.3): - resolution: {integrity: sha512-YfGENthKSPF94+vJqnV51yDwTv5r6YZoBISJBe6ZeD167QL+iwgpMk2IaZzLgawJGCcoybOqII5sRchALWHhEw==} + /bunchee@5.1.1(typescript@5.1.3): + resolution: {integrity: sha512-g5BHJYw2jdCi47OQaYa4QIL4Eo7JgYkgfISQyDPpOBAcKle/nBdzO6zLXu0kFi4ScjZcwH5WCWDan+U603LhxA==} engines: {node: '>= 18.0.0'} hasBin: true peerDependencies: @@ -2176,23 +2200,22 @@ packages: typescript: optional: true dependencies: - '@rollup/plugin-commonjs': 25.0.7(rollup@4.12.0) - '@rollup/plugin-json': 6.1.0(rollup@4.12.0) - '@rollup/plugin-node-resolve': 15.2.3(rollup@4.12.0) - '@rollup/plugin-replace': 5.0.5(rollup@4.12.0) - '@rollup/plugin-wasm': 6.2.2(rollup@4.12.0) - '@rollup/pluginutils': 5.1.0(rollup@4.12.0) - '@swc/core': 1.4.1(@swc/helpers@0.5.6) + '@rollup/plugin-commonjs': 25.0.7(rollup@4.13.2) + '@rollup/plugin-json': 6.1.0(rollup@4.13.2) + '@rollup/plugin-node-resolve': 15.2.3(rollup@4.13.2) + '@rollup/plugin-replace': 5.0.5(rollup@4.13.2) + '@rollup/plugin-wasm': 6.2.2(rollup@4.13.2) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) + '@swc/core': 1.4.11(@swc/helpers@0.5.6) '@swc/helpers': 0.5.6 arg: 5.0.2 clean-css: 5.3.3 - magic-string: 0.30.7 + magic-string: 0.30.8 pretty-bytes: 5.6.0 - rimraf: 5.0.5 - rollup: 4.12.0 - rollup-plugin-dts: 6.1.0(rollup@4.12.0)(typescript@5.1.3) - rollup-plugin-swc3: 0.11.0(@swc/core@1.4.1)(rollup@4.12.0) - rollup-preserve-directives: 1.1.1(rollup@4.12.0) + rollup: 4.13.2 + rollup-plugin-dts: 6.1.0(rollup@4.13.2)(typescript@5.1.3) + rollup-plugin-swc3: 0.11.0(@swc/core@1.4.11)(rollup@4.13.2) + rollup-preserve-directives: 1.1.1(rollup@4.13.2) tslib: 2.6.2 typescript: 5.1.3 dev: true @@ -2268,6 +2291,11 @@ packages: engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} dev: true + /chalk@5.3.0: + resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + dev: true + /char-regex@1.0.2: resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} engines: {node: '>=10'} @@ -2572,6 +2600,10 @@ packages: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} dev: true + /emojilib@2.4.0: + resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==} + dev: true + /entities@4.4.0: resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==} engines: {node: '>=0.12'} @@ -2930,16 +2962,8 @@ packages: bser: 2.1.1 dev: true - /fetch-ponyfill@7.1.0: - resolution: {integrity: sha512-FhbbL55dj/qdVO3YNK7ZEkshvj3eQ7EuIGV2I6ic/2YiocvyWv+7jg2s4AyS0wdRU75s3tA8ZxI/xPigb0v5Aw==} - dependencies: - node-fetch: 2.6.12 - transitivePeerDependencies: - - encoding - dev: true - - /fflate@0.7.4: - resolution: {integrity: sha512-5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw==} + /fflate@0.8.2: + resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==} dev: true /file-entry-cache@6.0.1: @@ -3107,18 +3131,6 @@ packages: path-scurry: 1.7.0 dev: true - /glob@10.3.10: - resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true - dependencies: - foreground-child: 3.1.1 - jackspeak: 2.3.6 - minimatch: 9.0.1 - minipass: 5.0.0 - path-scurry: 1.10.1 - dev: true - /glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} dependencies: @@ -3551,15 +3563,6 @@ packages: '@pkgjs/parseargs': 0.11.0 dev: true - /jackspeak@2.3.6: - resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} - engines: {node: '>=14'} - dependencies: - '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 - dev: true - /jest-changed-files@29.7.0: resolution: {integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -4226,8 +4229,8 @@ packages: hasBin: true dev: true - /magic-string@0.30.7: - resolution: {integrity: sha512-8vBuFF/I/+OSLRmdf2wwFCJCz+nSn0m6DPvGH1fS/KiQoSaR+sETbov0eIk9KhEKy8CYqIkIAnbohxT/4H0kuA==} + /magic-string@0.30.8: + resolution: {integrity: sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==} engines: {node: '>=12'} dependencies: '@jridgewell/sourcemap-codec': 1.4.15 @@ -4246,24 +4249,24 @@ packages: tmpl: 1.0.5 dev: true - /marked-terminal@5.2.0(marked@5.1.1): - resolution: {integrity: sha512-Piv6yNwAQXGFjZSaiNljyNFw7jKDdGrw70FSbtxEyldLsyeuV5ZHm/1wW++kWbrOF1VPnUgYOhB2oLL0ZpnekA==} - engines: {node: '>=14.13.1 || >=16.0.0'} + /marked-terminal@6.2.0(marked@9.1.6): + resolution: {integrity: sha512-ubWhwcBFHnXsjYNsu+Wndpg0zhY4CahSpPlA70PlO0rR9r2sZpkyU+rkCsOWH+KMEkx847UpALON+HWgxowFtw==} + engines: {node: '>=16.0.0'} peerDependencies: - marked: ^1.0.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 + marked: '>=1 <12' dependencies: ansi-escapes: 6.2.0 cardinal: 2.1.1 - chalk: 5.2.0 + chalk: 5.3.0 cli-table3: 0.6.3 - marked: 5.1.1 - node-emoji: 1.11.0 - supports-hyperlinks: 2.3.0 + marked: 9.1.6 + node-emoji: 2.1.3 + supports-hyperlinks: 3.0.0 dev: true - /marked@5.1.1: - resolution: {integrity: sha512-bTmmGdEINWmOMDjnPWDxGPQ4qkDLeYorpYbEtFOXzOruTwUE671q4Guiuchn4N8h/v6NGd7916kXsm3Iz4iUSg==} - engines: {node: '>= 18'} + /marked@9.1.6: + resolution: {integrity: sha512-jcByLnIFkd5gSXZmjNvS1TlmRhCXZjIzHYlaGkPlLIekG55JDR2Z4va9tZwCiP+/RDERiNhMOFu01xd6O5ct1Q==} + engines: {node: '>= 16'} hasBin: true dev: true @@ -4354,8 +4357,8 @@ packages: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} dev: true - /next@14.1.0(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==} + /next@14.1.4(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-1WTaXeSrUwlz/XcnhGTY7+8eiaFvdet5z9u3V2jb+Ek1vFo0VhHKSAIJvDWfQpttWjnyw14kBeq28TPq7bTeEQ==} engines: {node: '>=18.17.0'} hasBin: true peerDependencies: @@ -4369,7 +4372,7 @@ packages: sass: optional: true dependencies: - '@next/env': 14.1.0 + '@next/env': 14.1.4 '@swc/helpers': 0.5.2 busboy: 1.6.0 caniuse-lite: 1.0.30001587 @@ -4379,36 +4382,28 @@ packages: react-dom: 18.2.0(react@18.2.0) styled-jsx: 5.1.1(react@18.2.0) optionalDependencies: - '@next/swc-darwin-arm64': 14.1.0 - '@next/swc-darwin-x64': 14.1.0 - '@next/swc-linux-arm64-gnu': 14.1.0 - '@next/swc-linux-arm64-musl': 14.1.0 - '@next/swc-linux-x64-gnu': 14.1.0 - '@next/swc-linux-x64-musl': 14.1.0 - '@next/swc-win32-arm64-msvc': 14.1.0 - '@next/swc-win32-ia32-msvc': 14.1.0 - '@next/swc-win32-x64-msvc': 14.1.0 + '@next/swc-darwin-arm64': 14.1.4 + '@next/swc-darwin-x64': 14.1.4 + '@next/swc-linux-arm64-gnu': 14.1.4 + '@next/swc-linux-arm64-musl': 14.1.4 + '@next/swc-linux-x64-gnu': 14.1.4 + '@next/swc-linux-x64-musl': 14.1.4 + '@next/swc-win32-arm64-msvc': 14.1.4 + '@next/swc-win32-ia32-msvc': 14.1.4 + '@next/swc-win32-x64-msvc': 14.1.4 transitivePeerDependencies: - '@babel/core' - babel-plugin-macros dev: true - /node-emoji@1.11.0: - resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} - dependencies: - lodash: 4.17.21 - dev: true - - /node-fetch@2.6.12: - resolution: {integrity: sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true + /node-emoji@2.1.3: + resolution: {integrity: sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==} + engines: {node: '>=18'} dependencies: - whatwg-url: 5.0.0 + '@sindresorhus/is': 4.6.0 + char-regex: 1.0.2 + emojilib: 2.4.0 + skin-tone: 2.0.0 dev: true /node-int64@0.4.0: @@ -4631,14 +4626,6 @@ packages: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} dev: true - /path-scurry@1.10.1: - resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} - engines: {node: '>=16 || 14 >=14.17'} - dependencies: - lru-cache: 9.1.1 - minipass: 5.0.0 - dev: true - /path-scurry@1.7.0: resolution: {integrity: sha512-UkZUeDjczjYRE495+9thsgcVgsaCPkaw80slmfVFgllxY+IO8ubTsOpFVjDPROBqJdHfVPUFRHPBV/WciOVfWg==} engines: {node: '>=16 || 14 >=14.17'} @@ -4924,29 +4911,21 @@ packages: glob: 10.2.6 dev: true - /rimraf@5.0.5: - resolution: {integrity: sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==} - engines: {node: '>=14'} - hasBin: true - dependencies: - glob: 10.3.10 - dev: true - - /rollup-plugin-dts@6.1.0(rollup@4.12.0)(typescript@5.1.3): + /rollup-plugin-dts@6.1.0(rollup@4.13.2)(typescript@5.1.3): resolution: {integrity: sha512-ijSCPICkRMDKDLBK9torss07+8dl9UpY9z1N/zTeA1cIqdzMlpkV3MOOC7zukyvQfDyxa1s3Dl2+DeiP/G6DOw==} engines: {node: '>=16'} peerDependencies: rollup: ^3.29.4 || ^4 typescript: ^4.5 || ^5.0 dependencies: - magic-string: 0.30.7 - rollup: 4.12.0 + magic-string: 0.30.8 + rollup: 4.13.2 typescript: 5.1.3 optionalDependencies: '@babel/code-frame': 7.23.5 dev: true - /rollup-plugin-swc3@0.11.0(@swc/core@1.4.1)(rollup@4.12.0): + /rollup-plugin-swc3@0.11.0(@swc/core@1.4.11)(rollup@4.13.2): resolution: {integrity: sha512-luB9Ngb1YieWPpJttKvkmjN3lG5l28SmASLbf2CoScUB2+EImU0bE8wX4EYKEqv5clVulhWRQHQvE+H33X/03g==} engines: {node: '>=12'} peerDependencies: @@ -4954,42 +4933,44 @@ packages: rollup: ^2.0.0 || ^3.0.0 || ^4.0.0 dependencies: '@fastify/deepmerge': 1.3.0 - '@rollup/pluginutils': 5.1.0(rollup@4.12.0) - '@swc/core': 1.4.1(@swc/helpers@0.5.6) + '@rollup/pluginutils': 5.1.0(rollup@4.13.2) + '@swc/core': 1.4.11(@swc/helpers@0.5.6) get-tsconfig: 4.7.2 - rollup: 4.12.0 - rollup-preserve-directives: 1.1.1(rollup@4.12.0) + rollup: 4.13.2 + rollup-preserve-directives: 1.1.1(rollup@4.13.2) dev: true - /rollup-preserve-directives@1.1.1(rollup@4.12.0): + /rollup-preserve-directives@1.1.1(rollup@4.13.2): resolution: {integrity: sha512-+eQafbuEfDPfxQ9hQPlwaROfin4yiVRxap8hnrvvvcSGoukv1tTiYpAW9mvm3uR8J+fe4xd8FdVd5rz9q7jZ+Q==} peerDependencies: rollup: ^2.0.0 || ^3.0.0 || ^4.0.0 dependencies: - magic-string: 0.30.7 - rollup: 4.12.0 + magic-string: 0.30.8 + rollup: 4.13.2 dev: true - /rollup@4.12.0: - resolution: {integrity: sha512-wz66wn4t1OHIJw3+XU7mJJQV/2NAfw5OAk6G6Hoo3zcvz/XOfQ52Vgi+AN4Uxoxi0KBBwk2g8zPrTDA4btSB/Q==} + /rollup@4.13.2: + resolution: {integrity: sha512-MIlLgsdMprDBXC+4hsPgzWUasLO9CE4zOkj/u6j+Z6j5A4zRY+CtiXAdJyPtgCsc42g658Aeh1DlrdVEJhsL2g==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true dependencies: '@types/estree': 1.0.5 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.12.0 - '@rollup/rollup-android-arm64': 4.12.0 - '@rollup/rollup-darwin-arm64': 4.12.0 - '@rollup/rollup-darwin-x64': 4.12.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.12.0 - '@rollup/rollup-linux-arm64-gnu': 4.12.0 - '@rollup/rollup-linux-arm64-musl': 4.12.0 - '@rollup/rollup-linux-riscv64-gnu': 4.12.0 - '@rollup/rollup-linux-x64-gnu': 4.12.0 - '@rollup/rollup-linux-x64-musl': 4.12.0 - '@rollup/rollup-win32-arm64-msvc': 4.12.0 - '@rollup/rollup-win32-ia32-msvc': 4.12.0 - '@rollup/rollup-win32-x64-msvc': 4.12.0 + '@rollup/rollup-android-arm-eabi': 4.13.2 + '@rollup/rollup-android-arm64': 4.13.2 + '@rollup/rollup-darwin-arm64': 4.13.2 + '@rollup/rollup-darwin-x64': 4.13.2 + '@rollup/rollup-linux-arm-gnueabihf': 4.13.2 + '@rollup/rollup-linux-arm64-gnu': 4.13.2 + '@rollup/rollup-linux-arm64-musl': 4.13.2 + '@rollup/rollup-linux-powerpc64le-gnu': 4.13.2 + '@rollup/rollup-linux-riscv64-gnu': 4.13.2 + '@rollup/rollup-linux-s390x-gnu': 4.13.2 + '@rollup/rollup-linux-x64-gnu': 4.13.2 + '@rollup/rollup-linux-x64-musl': 4.13.2 + '@rollup/rollup-win32-arm64-msvc': 4.13.2 + '@rollup/rollup-win32-ia32-msvc': 4.13.2 + '@rollup/rollup-win32-x64-msvc': 4.13.2 fsevents: 2.3.3 dev: true @@ -5093,6 +5074,13 @@ packages: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} dev: true + /skin-tone@2.0.0: + resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==} + engines: {node: '>=8'} + dependencies: + unicode-emoji-modifier-base: 1.0.0 + dev: true + /slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} @@ -5296,9 +5284,9 @@ packages: has-flag: 4.0.0 dev: true - /supports-hyperlinks@2.3.0: - resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==} - engines: {node: '>=8'} + /supports-hyperlinks@3.0.0: + resolution: {integrity: sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==} + engines: {node: '>=14.18'} dependencies: has-flag: 4.0.0 supports-color: 7.2.0 @@ -5356,10 +5344,6 @@ packages: url-parse: 1.5.10 dev: true - /tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - dev: true - /tr46@3.0.0: resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==} engines: {node: '>=12'} @@ -5367,6 +5351,10 @@ packages: punycode: 2.1.1 dev: true + /ts-expose-internals-conditionally@1.0.0-empty.0: + resolution: {integrity: sha512-F8m9NOF6ZhdOClDVdlM8gj3fDCav4ZIFSs/EI3ksQbAAXVSCN/Jh5OCJDDZWBuBy9psFc6jULGDlPwjMYMhJDw==} + dev: true + /tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} dev: true @@ -5425,6 +5413,12 @@ packages: hasBin: true dev: true + /typescript@5.3.3: + resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} + engines: {node: '>=14.17'} + hasBin: true + dev: true + /unbox-primitive@1.0.2: resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} dependencies: @@ -5434,6 +5428,11 @@ packages: which-boxed-primitive: 1.0.2 dev: true + /unicode-emoji-modifier-base@1.0.0: + resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} + engines: {node: '>=4'} + dev: true + /universalify@0.2.0: resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} engines: {node: '>= 4.0.0'} @@ -5500,10 +5499,6 @@ packages: makeerror: 1.0.12 dev: true - /webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - dev: true - /webidl-conversions@7.0.0: resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} engines: {node: '>=12'} @@ -5529,13 +5524,6 @@ packages: webidl-conversions: 7.0.0 dev: true - /whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - dependencies: - tr46: 0.0.3 - webidl-conversions: 3.0.1 - dev: true - /which-boxed-primitive@1.0.2: resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} dependencies: @@ -5660,7 +5648,3 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} dev: true - -settings: - autoInstallPeers: false - excludeLinksFromLockfile: false diff --git a/src/_internal/utils/env.ts b/src/_internal/utils/env.ts index e3a026c16..c112525c1 100644 --- a/src/_internal/utils/env.ts +++ b/src/_internal/utils/env.ts @@ -3,7 +3,7 @@ import { hasRequestAnimationFrame, isWindowDefined } from './helper' export const IS_REACT_LEGACY = !React.useId -export const IS_SERVER = !isWindowDefined || 'Deno' in window +export const IS_SERVER = !isWindowDefined || 'Deno' in globalThis // Polyfill requestAnimationFrame export const rAF = ( diff --git a/src/index/config.ts b/src/index/config.ts new file mode 100644 index 000000000..b5e796c17 --- /dev/null +++ b/src/index/config.ts @@ -0,0 +1,5 @@ +'use client' + +// TODO: fix SWRConfig re-use issue with bundler +import { SWRConfig as S } from '../_internal' +export const SWRConfig = S diff --git a/src/index/index.react-server.ts b/src/index/index.react-server.ts index 8d7329654..ad596e7ca 100644 --- a/src/index/index.react-server.ts +++ b/src/index/index.react-server.ts @@ -1,2 +1,2 @@ export { unstable_serialize } from '../core/serialize' -export { SWRConfig } from '../_internal' +export { SWRConfig } from './config' diff --git a/src/infinite/index.ts b/src/infinite/index.ts index 99e4d2b40..0bdc556d0 100644 --- a/src/infinite/index.ts +++ b/src/infinite/index.ts @@ -358,5 +358,6 @@ export { SWRInfiniteHook, SWRInfiniteKeyLoader, SWRInfiniteFetcher, - SWRInfiniteCompareFn + SWRInfiniteCompareFn, + SWRInfiniteMutatorOptions } diff --git a/test/use-swr-infinite-preload.test.tsx b/test/use-swr-infinite-preload.test.tsx index 2dadb694f..a32840be7 100644 --- a/test/use-swr-infinite-preload.test.tsx +++ b/test/use-swr-infinite-preload.test.tsx @@ -121,7 +121,7 @@ describe('useSWRInfinite - preload', () => { expect(fetcher).toBeCalledTimes(1) }) - it('avoid suspense waterfall by prefetching the resources', async () => { + it.skip('avoid suspense waterfall by prefetching the resources', async () => { const key1 = createKey() const getKey1 = getKeyFunction(key1) const key2 = createKey() @@ -132,7 +132,6 @@ describe('useSWRInfinite - preload', () => { const fetcher1 = () => response1 const fetcher2 = () => response2 - function Page() { const { data: data1 } = useSWRInfinite(getKey1, fetcher1, { suspense: true @@ -140,16 +139,14 @@ describe('useSWRInfinite - preload', () => { const { data: data2 } = useSWRInfinite(getKey2, fetcher2, { suspense: true }) - return (
data:{data1}:{data2}
) } - preload(getKey1(0), fetcher1) - preload(getKey1(0), fetcher2) + preload(getKey2(0), fetcher2) renderWithConfig( @@ -157,7 +154,7 @@ describe('useSWRInfinite - preload', () => { ) screen.getByText('loading') - // Should avoid waterfall(50ms + 50ms) + //Should avoid waterfall(50ms + 50ms) await act(() => sleep(80)) screen.getByText('data:foo:bar') }) diff --git a/test/use-swr-promise.test.tsx b/test/use-swr-promise.test.tsx index 35027b4d8..4784b4101 100644 --- a/test/use-swr-promise.test.tsx +++ b/test/use-swr-promise.test.tsx @@ -146,9 +146,6 @@ describe('useSWR - promise', () => { await screen.findByText('loading') await act(() => sleep(100)) // wait 100ms until the request inside throws await screen.findByText('error boundary') - - // 1 for js-dom 1 for react-error-boundary - expect(console.error).toHaveBeenCalledTimes(3) }) it('should handle same fallback promise that is already pending', async () => { diff --git a/test/use-swr-subscription.test.tsx b/test/use-swr-subscription.test.tsx index b172aa5a4..d8dfb1ed3 100644 --- a/test/use-swr-subscription.test.tsx +++ b/test/use-swr-subscription.test.tsx @@ -321,8 +321,5 @@ describe('useSWRSubscription', () => { await screen.findByText( 'The `subscribe` function must return a function to unsubscribe.' ) - - // 1 for js-dom 1 for react-error-boundary - expect(console.error).toHaveBeenCalledTimes(2) }) }) diff --git a/test/use-swr-suspense.test.tsx b/test/use-swr-suspense.test.tsx index d6e678dcc..1b0e07b22 100644 --- a/test/use-swr-suspense.test.tsx +++ b/test/use-swr-suspense.test.tsx @@ -115,8 +115,6 @@ describe('useSWR - suspense', () => { // hydration screen.getByText('fallback') await screen.findByText('error boundary') - // 1 for js-dom 1 for react-error-boundary - expect(console.error).toHaveBeenCalledTimes(3) }) it('should render cached data with error', async () => {