diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5c97b53..94ed13a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,14 +1,14 @@ name: CI env: - NODE_VERSION: 18.0.0 + NODE_VERSION: 22.14 RUNID_VERSION_SUFFIX: ${{ github.run_id }}.${{ github.run_attempt }} on: workflow_dispatch: pull_request: push: - branches: [ main ] + branches: [main] jobs: build: @@ -60,7 +60,7 @@ jobs: yarn pack --filename ../transmitsecurity-riskid-reactjs-ts-v$PACKAGE_VERSION.tgz cd .. - name: Archive NPM package - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: if-no-files-found: error retention-days: 30 @@ -68,8 +68,8 @@ jobs: path: package/transmitsecurity-riskid-reactjs-ts-v*.tgz - name: Archive failure data if: ${{ failure() }} - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: failure-data path: | - /home/runner/.npm/_logs \ No newline at end of file + /home/runner/.npm/_logs diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 871bdf7..5b15d22 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,7 +1,7 @@ name: Release Artifact env: - NODE_VERSION: 18.0.0 + NODE_VERSION: 22.14 RUNID_VERSION_SUFFIX: ${{ github.run_id }}.${{ github.run_attempt }} on: @@ -50,7 +50,7 @@ jobs: - name: Archive failure data if: ${{ failure() }} - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: failure-data path: | @@ -67,7 +67,7 @@ jobs: uses: actions/setup-node@v3 with: node-version: ${{ env.NODE_VERSION }} - registry-url: 'https://npm.pkg.github.com' + registry-url: "https://npm.pkg.github.com" always-auth: true - name: Fetch cached workspace @@ -75,7 +75,7 @@ jobs: with: path: ${{ github.workspace }} key: ${{ runner.os }}-${{ env.RUNID_VERSION_SUFFIX }} - + - name: Enable Corepack run: corepack enable @@ -90,7 +90,7 @@ jobs: - name: Archive failure data if: ${{ failure() }} - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: failure-data path: | @@ -107,7 +107,7 @@ jobs: uses: actions/setup-node@v3 with: node-version: ${{ env.NODE_VERSION }} - registry-url: 'https://registry.npmjs.org' + registry-url: "https://registry.npmjs.org" always-auth: true - name: Fetch cached workspace @@ -115,7 +115,7 @@ jobs: with: path: ${{ github.workspace }} key: ${{ runner.os }}-${{ env.RUNID_VERSION_SUFFIX }} - + - name: Enable Corepack run: corepack enable @@ -130,8 +130,8 @@ jobs: - name: Archive failure data if: ${{ failure() }} - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: failure-data path: | - /home/runner/.npm/_logs \ No newline at end of file + /home/runner/.npm/_logs diff --git a/demo/src/App.tsx b/demo/src/App.tsx index cc6593b..936542b 100644 --- a/demo/src/App.tsx +++ b/demo/src/App.tsx @@ -7,6 +7,7 @@ function App() { const accountProtectionOptions: DRSConfigOptions = { userId: 'demo-user-id', initSuccessLog: 'Detection and Response SDK successfully initialized', + enableSessionToken: true, }; return ( diff --git a/demo/src/InnerComponent.tsx b/demo/src/InnerComponent.tsx index 3899437..f09287a 100644 --- a/demo/src/InnerComponent.tsx +++ b/demo/src/InnerComponent.tsx @@ -1,7 +1,7 @@ import { useTSAccountProtection } from '@transmitsecurity/riskid-reactjs-ts'; function InnerComponent() { - const { triggerActionEvent, setAuthenticatedUser, clearUser } = useTSAccountProtection(); + const { triggerActionEvent, setAuthenticatedUser, clearUser, getSessionToken } = useTSAccountProtection(); return ( <> @@ -21,6 +21,10 @@ function InnerComponent() { style={{width: '100px', height: '100px' }} onClick={() => clearUser()} >Reset + ); }; diff --git a/package/CHANGELOG.md b/package/CHANGELOG.md index 1f57d90..073f692 100644 --- a/package/CHANGELOG.md +++ b/package/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog + +## Version 1.2.0 +1. Expose `getSessionToken()` method from the SDK. + ## Version 1.1.1 1. Update react quickstart documentation link in package README diff --git a/package/README.md b/package/README.md index 4a9f701..f3c6fc1 100644 --- a/package/README.md +++ b/package/README.md @@ -37,19 +37,21 @@ import { TSAccountProtectionProvider } from '@transmitsecurity/riskid-reactjs-ts ## Step 4: Use the React library -The example below demonstrates triggering a login event from a login button, setting and clearing a user. +The example below demonstrates triggering a login event from a login button, setting and clearing a user and obtaining a session token. - `triggerActionEvent()` receives an action type and returns a response that includes the `actionToken`. To obtain risk recommendations for sensitive actions, your application should report these actions. To do this, add the code below to relevant user interactions (such as the Login button `click` event handler). The library allows reporting on events with the following action types: `login`, `register`, `transaction`, `password_reset`, `logout`, `checkout`, `account_details_change`, `account_auth_change`, `withdraw` or `credits_change`. - `setAuthenticatedUser()` sets the user context for all subsequent events in the browser session (or until the user is explicitly cleared). It should be set only after you've fully authenticated the user (including, for example, any 2FA that was required). Receives an opaque identifier of the user in your system ([USER_ID] in the snippet), which shouldn't contain any personal info. - `clearUser()` clears the user context for all subsequent events in the browser session. + +- `getSessionToken()` retrieves the current device session token as a string, that can be used to trigger action events via backend API. ```js import { useTSAccountProtection } from '@transmitsecurity/riskid-reactjs-ts'; function InnerComponent() { - const { triggerActionEvent, setAuthenticatedUser, clearUser } = useTSAccountProtection(); + const { triggerActionEvent, setAuthenticatedUser, clearUser, getSessionToken } = useTSAccountProtection(); return ( <> @@ -69,6 +71,10 @@ function InnerComponent() { style={{width: '100px', height: '100px' }} onClick={() => clearUser()} >Reset + ); }; diff --git a/package/TSAccountProtectionProvider.tsx b/package/TSAccountProtectionProvider.tsx index e048bf2..96b2a7a 100644 --- a/package/TSAccountProtectionProvider.tsx +++ b/package/TSAccountProtectionProvider.tsx @@ -16,6 +16,7 @@ const SDK_LOAD_ERR = 'SDK load error'; const SDK_TRIGGER_ACTION_ERR = 'Error sending action event'; const SDK_AUTHENTICATE_USER_ERR = 'Error authenticating user'; const SDK_CLEAR_USER_ERR = 'Error clearing user'; +const SDK_GET_SESSION_TOKEN_ERR = 'Error getting session token'; type ProviderState = DRSConfigOptions & { initialized: Promise; @@ -68,6 +69,12 @@ type ErrHandler = (err: any) => void; * A string to log when the sdk initialization completes. If not provided - logging will be skipped. */ initSuccessLog?: string; + + /** + * Setting that determines if session token is enabled + * Default: false + */ + enableSessionToken?: boolean; } interface QuerablePromise extends Promise { @@ -148,6 +155,7 @@ const buildProviderState = (clientId: string, options?: DRSConfigOptions): Provi return { initialized: new Promise((res) => undefined), // making default promise in pending state clientId, + enableSessionToken: options?.enableSessionToken ?? false, serverUrl: options?.serverUrl ?? (options?.serverPath || 'https://api.transmitsecurity.io/risk-collect/'), sdkVersion, sdkLoadUrl: options?.sdkLoadUrl ?? generateSdkUrl(sdkVersion), @@ -213,8 +221,8 @@ export function TSAccountProtectionProvider({ const initializedPromise = makeQuerablePromise(providerState.initialized); if (initializedPromise.status != PromiseStatus.Fulfilled && !window.myTSAccountProtection) { try { - const serverPath = providerState.serverUrl; - window.myTSAccountProtection = new TSAccountProtection(providerState.clientId, { serverPath }); + const { serverUrl: serverPath, enableSessionToken } = providerState; + window.myTSAccountProtection = new TSAccountProtection(providerState.clientId, { serverPath, enableSessionToken}); try { await window.myTSAccountProtection.init(providerState?.userId); if (providerState.initSuccessLog) { @@ -286,6 +294,19 @@ function getClearUserFunc(providerState: ProviderState, providerDispatch: Functi } } +function getSessionTokenFunc(providerState: ProviderState) { + return async function getSessionToken(): Promise { + if (await providerState.initialized) { + try { + return await window.myTSAccountProtection?.getSessionToken(); + } catch (err) { + (providerState.onError as ErrHandler)(buildSdkError(err, SDK_GET_SESSION_TOKEN_ERR)); + } + } + return null; + } +} + const useAccountProtectionContext = () => { const context = useContext(AccountProtectionContext); if (context === undefined) { @@ -302,5 +323,6 @@ export const useTSAccountProtection = () => { triggerActionEvent: getTriggerActionEventFunc(state), setAuthenticatedUser: getAuthenticatedUserFunc(state, dispatch), clearUser: getClearUserFunc(state, dispatch), + getSessionToken: getSessionTokenFunc(state), }; }; diff --git a/package/package.json b/package/package.json index dfe8c13..012e12d 100644 --- a/package/package.json +++ b/package/package.json @@ -1,6 +1,6 @@ { "name": "@transmitsecurity/riskid-reactjs-ts", - "version": "1.1.1", + "version": "1.2.0", "license": "SEE LICENSE IN LICENSE", "module": "./dist/index.es.js", "main": "./dist/index.cjs.js", @@ -52,7 +52,7 @@ "react": "17.0.2", "react-error-overlay": "6.0.9", "typescript": "4.9.4", - "vite": "2.9.18", + "vite": "6.3.4", "vite-plugin-dts": "1.7.1", "vite-plugin-environment": "1.1.0", "vite-plugin-rewrite-all": "0.1.2", diff --git a/package/yarn.lock b/package/yarn.lock index 5a40389..5133191 100644 --- a/package/yarn.lock +++ b/package/yarn.lock @@ -319,13 +319,188 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.14.54": - version: 0.14.54 - resolution: "@esbuild/linux-loong64@npm:0.14.54" +"@esbuild/aix-ppc64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/aix-ppc64@npm:0.25.8" + conditions: os=aix & cpu=ppc64 + languageName: node + linkType: hard + +"@esbuild/android-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/android-arm64@npm:0.25.8" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/android-arm@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/android-arm@npm:0.25.8" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@esbuild/android-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/android-x64@npm:0.25.8" + conditions: os=android & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/darwin-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/darwin-arm64@npm:0.25.8" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/darwin-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/darwin-x64@npm:0.25.8" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/freebsd-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/freebsd-arm64@npm:0.25.8" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/freebsd-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/freebsd-x64@npm:0.25.8" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/linux-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-arm64@npm:0.25.8" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/linux-arm@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-arm@npm:0.25.8" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@esbuild/linux-ia32@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-ia32@npm:0.25.8" + conditions: os=linux & cpu=ia32 + languageName: node + linkType: hard + +"@esbuild/linux-loong64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-loong64@npm:0.25.8" conditions: os=linux & cpu=loong64 languageName: node linkType: hard +"@esbuild/linux-mips64el@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-mips64el@npm:0.25.8" + conditions: os=linux & cpu=mips64el + languageName: node + linkType: hard + +"@esbuild/linux-ppc64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-ppc64@npm:0.25.8" + conditions: os=linux & cpu=ppc64 + languageName: node + linkType: hard + +"@esbuild/linux-riscv64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-riscv64@npm:0.25.8" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + +"@esbuild/linux-s390x@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-s390x@npm:0.25.8" + conditions: os=linux & cpu=s390x + languageName: node + linkType: hard + +"@esbuild/linux-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/linux-x64@npm:0.25.8" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/netbsd-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/netbsd-arm64@npm:0.25.8" + conditions: os=netbsd & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/netbsd-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/netbsd-x64@npm:0.25.8" + conditions: os=netbsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/openbsd-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/openbsd-arm64@npm:0.25.8" + conditions: os=openbsd & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/openbsd-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/openbsd-x64@npm:0.25.8" + conditions: os=openbsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/openharmony-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/openharmony-arm64@npm:0.25.8" + conditions: os=openharmony & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/sunos-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/sunos-x64@npm:0.25.8" + conditions: os=sunos & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/win32-arm64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/win32-arm64@npm:0.25.8" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/win32-ia32@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/win32-ia32@npm:0.25.8" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@esbuild/win32-x64@npm:0.25.8": + version: 0.25.8 + resolution: "@esbuild/win32-x64@npm:0.25.8" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@isaacs/cliui@npm:^8.0.2": version: 8.0.2 resolution: "@isaacs/cliui@npm:8.0.2" @@ -517,6 +692,146 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm-eabi@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.46.2" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@rollup/rollup-android-arm64@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-android-arm64@npm:4.46.2" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-arm64@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-darwin-arm64@npm:4.46.2" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-x64@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-darwin-x64@npm:4.46.2" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-freebsd-arm64@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-freebsd-arm64@npm:4.46.2" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-freebsd-x64@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-freebsd-x64@npm:4.46.2" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-gnueabihf@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.46.2" + conditions: os=linux & cpu=arm & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-musleabihf@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.46.2" + conditions: os=linux & cpu=arm & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-gnu@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.46.2" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-musl@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.46.2" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-loongarch64-gnu@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.46.2" + conditions: os=linux & cpu=loong64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-ppc64-gnu@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-linux-ppc64-gnu@npm:4.46.2" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-riscv64-gnu@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.46.2" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-riscv64-musl@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.46.2" + conditions: os=linux & cpu=riscv64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-s390x-gnu@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.46.2" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-gnu@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.46.2" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-musl@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.46.2" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-win32-arm64-msvc@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.46.2" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-win32-ia32-msvc@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.46.2" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@rollup/rollup-win32-x64-msvc@npm:4.46.2": + version: 4.46.2 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.46.2" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@rushstack/node-core-library@npm:5.4.1": version: 5.4.1 resolution: "@rushstack/node-core-library@npm:5.4.1" @@ -735,7 +1050,7 @@ __metadata: react: 17.0.2 react-error-overlay: 6.0.9 typescript: 4.9.4 - vite: 2.9.18 + vite: 6.3.4 vite-plugin-dts: 1.7.1 vite-plugin-environment: 1.1.0 vite-plugin-rewrite-all: 0.1.2 @@ -767,6 +1082,13 @@ __metadata: languageName: node linkType: hard +"@types/estree@npm:1.0.8": + version: 1.0.8 + resolution: "@types/estree@npm:1.0.8" + checksum: bd93e2e415b6f182ec4da1074e1f36c480f1d26add3e696d54fb30c09bc470897e41361c8fd957bf0985024f8fbf1e6e2aff977d79352ef7eb93a5c6dcff6c11 + languageName: node + linkType: hard + "@types/estree@npm:^1.0.0": version: 1.0.5 resolution: "@types/estree@npm:1.0.5" @@ -1397,217 +1719,92 @@ __metadata: languageName: node linkType: hard -"esbuild-android-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-android-64@npm:0.14.54" - conditions: os=android & cpu=x64 - languageName: node - linkType: hard - -"esbuild-android-arm64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-android-arm64@npm:0.14.54" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-darwin-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-darwin-64@npm:0.14.54" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"esbuild-darwin-arm64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-darwin-arm64@npm:0.14.54" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-freebsd-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-freebsd-64@npm:0.14.54" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - -"esbuild-freebsd-arm64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-freebsd-arm64@npm:0.14.54" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-linux-32@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-32@npm:0.14.54" - conditions: os=linux & cpu=ia32 - languageName: node - linkType: hard - -"esbuild-linux-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-64@npm:0.14.54" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - -"esbuild-linux-arm64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-arm64@npm:0.14.54" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - -"esbuild-linux-arm@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-arm@npm:0.14.54" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - -"esbuild-linux-mips64le@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-mips64le@npm:0.14.54" - conditions: os=linux & cpu=mips64el - languageName: node - linkType: hard - -"esbuild-linux-ppc64le@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-ppc64le@npm:0.14.54" - conditions: os=linux & cpu=ppc64 - languageName: node - linkType: hard - -"esbuild-linux-riscv64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-riscv64@npm:0.14.54" - conditions: os=linux & cpu=riscv64 - languageName: node - linkType: hard - -"esbuild-linux-s390x@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-linux-s390x@npm:0.14.54" - conditions: os=linux & cpu=s390x - languageName: node - linkType: hard - -"esbuild-netbsd-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-netbsd-64@npm:0.14.54" - conditions: os=netbsd & cpu=x64 - languageName: node - linkType: hard - -"esbuild-openbsd-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-openbsd-64@npm:0.14.54" - conditions: os=openbsd & cpu=x64 - languageName: node - linkType: hard - -"esbuild-sunos-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-sunos-64@npm:0.14.54" - conditions: os=sunos & cpu=x64 - languageName: node - linkType: hard - -"esbuild-windows-32@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-windows-32@npm:0.14.54" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - -"esbuild-windows-64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-windows-64@npm:0.14.54" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - -"esbuild-windows-arm64@npm:0.14.54": - version: 0.14.54 - resolution: "esbuild-windows-arm64@npm:0.14.54" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - -"esbuild@npm:^0.14.27": - version: 0.14.54 - resolution: "esbuild@npm:0.14.54" - dependencies: - "@esbuild/linux-loong64": 0.14.54 - esbuild-android-64: 0.14.54 - esbuild-android-arm64: 0.14.54 - esbuild-darwin-64: 0.14.54 - esbuild-darwin-arm64: 0.14.54 - esbuild-freebsd-64: 0.14.54 - esbuild-freebsd-arm64: 0.14.54 - esbuild-linux-32: 0.14.54 - esbuild-linux-64: 0.14.54 - esbuild-linux-arm: 0.14.54 - esbuild-linux-arm64: 0.14.54 - esbuild-linux-mips64le: 0.14.54 - esbuild-linux-ppc64le: 0.14.54 - esbuild-linux-riscv64: 0.14.54 - esbuild-linux-s390x: 0.14.54 - esbuild-netbsd-64: 0.14.54 - esbuild-openbsd-64: 0.14.54 - esbuild-sunos-64: 0.14.54 - esbuild-windows-32: 0.14.54 - esbuild-windows-64: 0.14.54 - esbuild-windows-arm64: 0.14.54 +"esbuild@npm:^0.25.0": + version: 0.25.8 + resolution: "esbuild@npm:0.25.8" + dependencies: + "@esbuild/aix-ppc64": 0.25.8 + "@esbuild/android-arm": 0.25.8 + "@esbuild/android-arm64": 0.25.8 + "@esbuild/android-x64": 0.25.8 + "@esbuild/darwin-arm64": 0.25.8 + "@esbuild/darwin-x64": 0.25.8 + "@esbuild/freebsd-arm64": 0.25.8 + "@esbuild/freebsd-x64": 0.25.8 + "@esbuild/linux-arm": 0.25.8 + "@esbuild/linux-arm64": 0.25.8 + "@esbuild/linux-ia32": 0.25.8 + "@esbuild/linux-loong64": 0.25.8 + "@esbuild/linux-mips64el": 0.25.8 + "@esbuild/linux-ppc64": 0.25.8 + "@esbuild/linux-riscv64": 0.25.8 + "@esbuild/linux-s390x": 0.25.8 + "@esbuild/linux-x64": 0.25.8 + "@esbuild/netbsd-arm64": 0.25.8 + "@esbuild/netbsd-x64": 0.25.8 + "@esbuild/openbsd-arm64": 0.25.8 + "@esbuild/openbsd-x64": 0.25.8 + "@esbuild/openharmony-arm64": 0.25.8 + "@esbuild/sunos-x64": 0.25.8 + "@esbuild/win32-arm64": 0.25.8 + "@esbuild/win32-ia32": 0.25.8 + "@esbuild/win32-x64": 0.25.8 dependenciesMeta: - "@esbuild/linux-loong64": + "@esbuild/aix-ppc64": optional: true - esbuild-android-64: + "@esbuild/android-arm": optional: true - esbuild-android-arm64: + "@esbuild/android-arm64": optional: true - esbuild-darwin-64: + "@esbuild/android-x64": optional: true - esbuild-darwin-arm64: + "@esbuild/darwin-arm64": optional: true - esbuild-freebsd-64: + "@esbuild/darwin-x64": optional: true - esbuild-freebsd-arm64: + "@esbuild/freebsd-arm64": optional: true - esbuild-linux-32: + "@esbuild/freebsd-x64": optional: true - esbuild-linux-64: + "@esbuild/linux-arm": optional: true - esbuild-linux-arm: + "@esbuild/linux-arm64": optional: true - esbuild-linux-arm64: + "@esbuild/linux-ia32": optional: true - esbuild-linux-mips64le: + "@esbuild/linux-loong64": + optional: true + "@esbuild/linux-mips64el": + optional: true + "@esbuild/linux-ppc64": + optional: true + "@esbuild/linux-riscv64": + optional: true + "@esbuild/linux-s390x": optional: true - esbuild-linux-ppc64le: + "@esbuild/linux-x64": optional: true - esbuild-linux-riscv64: + "@esbuild/netbsd-arm64": optional: true - esbuild-linux-s390x: + "@esbuild/netbsd-x64": optional: true - esbuild-netbsd-64: + "@esbuild/openbsd-arm64": optional: true - esbuild-openbsd-64: + "@esbuild/openbsd-x64": optional: true - esbuild-sunos-64: + "@esbuild/openharmony-arm64": optional: true - esbuild-windows-32: + "@esbuild/sunos-x64": optional: true - esbuild-windows-64: + "@esbuild/win32-arm64": optional: true - esbuild-windows-arm64: + "@esbuild/win32-ia32": + optional: true + "@esbuild/win32-x64": optional: true bin: esbuild: bin/esbuild - checksum: 49e360b1185c797f5ca3a7f5f0a75121494d97ddf691f65ed1796e6257d318f928342a97f559bb8eced6a90cf604dd22db4a30e0dbbf15edd9dbf22459b639af + checksum: 018e7b151c86df559f30e9b4da95cd5f6c76715818ee1c584ea3a4d19400be75f705f6d57486af2884ad7c1654b791e28419d34c0755186b194d3411745d074c languageName: node linkType: hard @@ -1668,6 +1865,18 @@ __metadata: languageName: node linkType: hard +"fdir@npm:^6.4.4": + version: 6.4.6 + resolution: "fdir@npm:6.4.6" + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + checksum: fe9f3014901d023cf631831dcb9eae5447f4d7f69218001dd01ecf007eccc40f6c129a04411b5cc273a5f93c14e02e971e17270afc9022041c80be924091eb6f + languageName: node + linkType: hard + "fill-range@npm:^7.1.1": version: 7.1.1 resolution: "fill-range@npm:7.1.1" @@ -1727,7 +1936,7 @@ __metadata: languageName: node linkType: hard -"fsevents@npm:~2.3.2": +"fsevents@npm:~2.3.2, fsevents@npm:~2.3.3": version: 2.3.3 resolution: "fsevents@npm:2.3.3" dependencies: @@ -1737,7 +1946,7 @@ __metadata: languageName: node linkType: hard -"fsevents@patch:fsevents@~2.3.2#~builtin": +"fsevents@patch:fsevents@~2.3.2#~builtin, fsevents@patch:fsevents@~2.3.3#~builtin": version: 2.3.3 resolution: "fsevents@patch:fsevents@npm%3A2.3.3#~builtin::version=2.3.3&hash=df0bf1" dependencies: @@ -2420,12 +2629,12 @@ __metadata: languageName: node linkType: hard -"nanoid@npm:^3.3.7": - version: 3.3.7 - resolution: "nanoid@npm:3.3.7" +"nanoid@npm:^3.3.11": + version: 3.3.11 + resolution: "nanoid@npm:3.3.11" bin: nanoid: bin/nanoid.cjs - checksum: d36c427e530713e4ac6567d488b489a36582ef89da1d6d4e3b87eded11eb10d7042a877958c6f104929809b2ab0bafa17652b076cdf84324aa75b30b722204f2 + checksum: 3be20d8866a57a6b6d218e82549711c8352ed969f9ab3c45379da28f405363ad4c9aeb0b39e9abc101a529ca65a72ff9502b00bf74a912c4b64a9d62dfd26c29 languageName: node linkType: hard @@ -2623,6 +2832,13 @@ __metadata: languageName: node linkType: hard +"picocolors@npm:^1.1.1": + version: 1.1.1 + resolution: "picocolors@npm:1.1.1" + checksum: e1cf46bf84886c79055fdfa9dcb3e4711ad259949e3565154b004b260cd356c5d54b31a1437ce9782624bf766272fe6b0154f5f0c744fb7af5d454d2b60db045 + languageName: node + linkType: hard + "picomatch@npm:^2.2.2, picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" @@ -2630,6 +2846,13 @@ __metadata: languageName: node linkType: hard +"picomatch@npm:^4.0.2": + version: 4.0.3 + resolution: "picomatch@npm:4.0.3" + checksum: 6817fb74eb745a71445debe1029768de55fd59a42b75606f478ee1d0dc1aa6e78b711d041a7c9d5550e042642029b7f373dc1a43b224c4b7f12d23436735dba0 + languageName: node + linkType: hard + "pify@npm:^4.0.1": version: 4.0.1 resolution: "pify@npm:4.0.1" @@ -2637,14 +2860,14 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.4.13": - version: 8.4.39 - resolution: "postcss@npm:8.4.39" +"postcss@npm:^8.5.3": + version: 8.5.6 + resolution: "postcss@npm:8.5.6" dependencies: - nanoid: ^3.3.7 - picocolors: ^1.0.1 - source-map-js: ^1.2.0 - checksum: 14b130c90f165961772bdaf99c67f907f3d16494adf0868e57ef68baa67e0d1f6762db9d41ab0f4d09bab6fb7888588dba3596afd1a235fd5c2d43fba7006ac6 + nanoid: ^3.3.11 + picocolors: ^1.1.1 + source-map-js: ^1.2.1 + checksum: 20f3b5d673ffeec2b28d65436756d31ee33f65b0a8bedb3d32f556fbd5973be38c3a7fb5b959a5236c60a5db7b91b0a6b14ffaac0d717dce1b903b964ee1c1bb languageName: node linkType: hard @@ -2740,7 +2963,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:~1.22.1, resolve@npm:~1.22.2": +"resolve@npm:^1.20.0, resolve@npm:~1.22.1, resolve@npm:~1.22.2": version: 1.22.8 resolution: "resolve@npm:1.22.8" dependencies: @@ -2753,7 +2976,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@~1.22.1#~builtin, resolve@patch:resolve@~1.22.2#~builtin": +"resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@~1.22.1#~builtin, resolve@patch:resolve@~1.22.2#~builtin": version: 1.22.8 resolution: "resolve@patch:resolve@npm%3A1.22.8#~builtin::version=1.22.8&hash=c3c19d" dependencies: @@ -2780,17 +3003,78 @@ __metadata: languageName: node linkType: hard -"rollup@npm:>=2.59.0 <2.78.0": - version: 2.77.3 - resolution: "rollup@npm:2.77.3" - dependencies: +"rollup@npm:^4.34.9": + version: 4.46.2 + resolution: "rollup@npm:4.46.2" + dependencies: + "@rollup/rollup-android-arm-eabi": 4.46.2 + "@rollup/rollup-android-arm64": 4.46.2 + "@rollup/rollup-darwin-arm64": 4.46.2 + "@rollup/rollup-darwin-x64": 4.46.2 + "@rollup/rollup-freebsd-arm64": 4.46.2 + "@rollup/rollup-freebsd-x64": 4.46.2 + "@rollup/rollup-linux-arm-gnueabihf": 4.46.2 + "@rollup/rollup-linux-arm-musleabihf": 4.46.2 + "@rollup/rollup-linux-arm64-gnu": 4.46.2 + "@rollup/rollup-linux-arm64-musl": 4.46.2 + "@rollup/rollup-linux-loongarch64-gnu": 4.46.2 + "@rollup/rollup-linux-ppc64-gnu": 4.46.2 + "@rollup/rollup-linux-riscv64-gnu": 4.46.2 + "@rollup/rollup-linux-riscv64-musl": 4.46.2 + "@rollup/rollup-linux-s390x-gnu": 4.46.2 + "@rollup/rollup-linux-x64-gnu": 4.46.2 + "@rollup/rollup-linux-x64-musl": 4.46.2 + "@rollup/rollup-win32-arm64-msvc": 4.46.2 + "@rollup/rollup-win32-ia32-msvc": 4.46.2 + "@rollup/rollup-win32-x64-msvc": 4.46.2 + "@types/estree": 1.0.8 fsevents: ~2.3.2 dependenciesMeta: + "@rollup/rollup-android-arm-eabi": + optional: true + "@rollup/rollup-android-arm64": + optional: true + "@rollup/rollup-darwin-arm64": + optional: true + "@rollup/rollup-darwin-x64": + optional: true + "@rollup/rollup-freebsd-arm64": + optional: true + "@rollup/rollup-freebsd-x64": + optional: true + "@rollup/rollup-linux-arm-gnueabihf": + optional: true + "@rollup/rollup-linux-arm-musleabihf": + optional: true + "@rollup/rollup-linux-arm64-gnu": + optional: true + "@rollup/rollup-linux-arm64-musl": + optional: true + "@rollup/rollup-linux-loongarch64-gnu": + optional: true + "@rollup/rollup-linux-ppc64-gnu": + optional: true + "@rollup/rollup-linux-riscv64-gnu": + optional: true + "@rollup/rollup-linux-riscv64-musl": + optional: true + "@rollup/rollup-linux-s390x-gnu": + optional: true + "@rollup/rollup-linux-x64-gnu": + optional: true + "@rollup/rollup-linux-x64-musl": + optional: true + "@rollup/rollup-win32-arm64-msvc": + optional: true + "@rollup/rollup-win32-ia32-msvc": + optional: true + "@rollup/rollup-win32-x64-msvc": + optional: true fsevents: optional: true bin: rollup: dist/bin/rollup - checksum: b179c68249584565ddb5664a241e8e48c293b2207718d885b08ee25797d98857a383f06b544bb89819407da5a71557f4713309a278f61c4778bb32b1d3321a1c + checksum: cba997c09d51a92bdf0475c522dafe6264891329d4d53689b7fab8a44bbf0b8ab2feb4bb27d9809a5d76831e703fddb44d5f8a95c1d3e7f2f9c9766541f65475 languageName: node linkType: hard @@ -2938,10 +3222,10 @@ __metadata: languageName: node linkType: hard -"source-map-js@npm:^1.2.0": - version: 1.2.0 - resolution: "source-map-js@npm:1.2.0" - checksum: 791a43306d9223792e84293b00458bf102a8946e7188f3db0e4e22d8d530b5f80a4ce468eb5ec0bf585443ad55ebbd630bf379c98db0b1f317fd902500217f97 +"source-map-js@npm:^1.2.1": + version: 1.2.1 + resolution: "source-map-js@npm:1.2.1" + checksum: 4eb0cd997cdf228bc253bcaff9340afeb706176e64868ecd20efbe6efea931465f43955612346d6b7318789e5265bdc419bc7669c1cebe3db0eb255f57efa76b languageName: node linkType: hard @@ -3095,6 +3379,16 @@ __metadata: languageName: node linkType: hard +"tinyglobby@npm:^0.2.13": + version: 0.2.14 + resolution: "tinyglobby@npm:0.2.14" + dependencies: + fdir: ^6.4.4 + picomatch: ^4.0.2 + checksum: 261e986e3f2062dec3a582303bad2ce31b4634b9348648b46828c000d464b012cf474e38f503312367d4117c3f2f18611992738fca684040758bba44c24de522 + languageName: node + linkType: hard + "to-fast-properties@npm:^2.0.0": version: 2.0.0 resolution: "to-fast-properties@npm:2.0.0" @@ -3343,32 +3637,58 @@ __metadata: languageName: node linkType: hard -"vite@npm:2.9.18": - version: 2.9.18 - resolution: "vite@npm:2.9.18" +"vite@npm:6.3.4": + version: 6.3.4 + resolution: "vite@npm:6.3.4" dependencies: - esbuild: ^0.14.27 - fsevents: ~2.3.2 - postcss: ^8.4.13 - resolve: ^1.22.0 - rollup: ">=2.59.0 <2.78.0" + esbuild: ^0.25.0 + fdir: ^6.4.4 + fsevents: ~2.3.3 + picomatch: ^4.0.2 + postcss: ^8.5.3 + rollup: ^4.34.9 + tinyglobby: ^0.2.13 peerDependencies: + "@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0 + jiti: ">=1.21.0" less: "*" + lightningcss: ^1.21.0 sass: "*" + sass-embedded: "*" stylus: "*" + sugarss: "*" + terser: ^5.16.0 + tsx: ^4.8.1 + yaml: ^2.4.2 dependenciesMeta: fsevents: optional: true peerDependenciesMeta: + "@types/node": + optional: true + jiti: + optional: true less: optional: true + lightningcss: + optional: true sass: optional: true + sass-embedded: + optional: true stylus: optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true bin: vite: bin/vite.js - checksum: 98e1eede70b00ddc414ae990ad61d573c8d60995738930dfa7b42bf5cdd9d218ee0c48ac4771545d68b0271742403a767539cfd42474089189e8da50570eb54e + checksum: 6b86f267319342393d2aeea3436d64716dd6d769acd96b13f9be416f751f4f3380119594baebb2ead71f738c6bd20956017320fad4cd79ba00168f4b9a747393 languageName: node linkType: hard