Compare commits

...

2 Commits

Author SHA1 Message Date
e662d7d123 fix: fix solid-js adapter and exclude spec from build
Some checks failed
Build, Lint & Test Lib / Build, Lint and Test Library (push) Has been cancelled
2025-03-04 23:23:36 +08:00
dff1e1f9a6 feat: add solid-js support 2025-03-04 22:02:42 +08:00
11 changed files with 612 additions and 129 deletions

View File

@ -7,11 +7,11 @@ import {
provideAuth,
withDefaultFeatures,
} from 'oidc-client-rx';
import { withTanstackRouter } from 'oidc-client-rx/adapters/@tanstack/react-router';
import {
InjectorContextVoidInjector,
InjectorProvider,
} from 'oidc-client-rx/adapters/react';
import { withTanstackRouter } from 'oidc-client-rx/adapters/tanstack-router';
import React from 'react';
import ReactDOM from 'react-dom/client';
import { routeTree } from './routeTree.gen';

View File

@ -1,6 +1,6 @@
{
"name": "oidc-client-rx",
"version": "0.1.0-alpha.6",
"version": "0.1.0-alpha.8",
"homepage": "https://github.com/lonelyhentxi/oidc-client-rx",
"author": "lonelyhentxi",
"description": "ReactiveX enhanced OIDC and OAuth2 protocol support for browser-based JavaScript applications",
@ -23,10 +23,20 @@
"import": "./dist/adapters/react/index.js",
"require": "./dist/adapters/react.cjs"
},
"./adapters/tanstack-router": {
"types": "./dist/adapters/tanstack-router/index.d.ts",
"import": "./dist/adapters/tanstack-router/index.js",
"require": "./dist/adapters/tanstack-router.cjs"
"./adapters/solid-js": {
"types": "./dist/adapters/solid-js/index.d.ts",
"import": "./dist/adapters/solid-js/index.js",
"require": "./dist/adapters/solid-js.cjs"
},
"./adapters/@tanstack/react-router": {
"types": "./dist/adapters/@tanstack/react-router.d.ts",
"import": "./dist/adapters/@tanstack/react-router.js",
"require": "./dist/adapters/@tanstack/react-router.cjs"
},
"./adapters/@tanstack/solid-router": {
"types": "./dist/adapters/@tanstack/solid-router.d.ts",
"import": "./dist/adapters/@tanstack/solid-router.js",
"require": "./dist/adapters/@tanstack/solid-router.cjs"
}
},
"main": "./dist/index.cjs",
@ -50,17 +60,20 @@
},
"peerDependencies": {
"@tanstack/react-router": "*",
"@tanstack/solid-router": "*",
"react": ">=16.8.0",
"rxjs": "^7.4.0||>=8.0.0"
"rxjs": "^7.4.0||>=8.0.0",
"solid-js": "^1"
},
"devDependencies": {
"@biomejs/biome": "1.9.4",
"@biomejs/js-api": "0.7.1",
"@biomejs/wasm-nodejs": "^1.9.4",
"@playwright/test": "^1.49.1",
"@rslib/core": "^0.5.0",
"@rslib/core": "^0.5.3",
"@swc/core": "^1.10.12",
"@tanstack/react-router": "^1.99.6",
"@tanstack/react-router": "^1.112.11",
"@tanstack/solid-router": "^1.112.11",
"@types/lodash-es": "^4.17.12",
"@types/node": "^22.12.0",
"@types/react": "^19.0.8",
@ -68,12 +81,13 @@
"commander": "^13.1.0",
"happy-dom": "^17.1.0",
"lodash-es": "^4.17.21",
"oxc-parser": "^0.48.1",
"oxc-parser": "^0.54.0",
"oxc-walker": "^0.2.2",
"playwright": "^1.50.0",
"react": "^19.0.0",
"reflect-metadata": "^0.2.2",
"rxjs": "^7.4.0",
"solid-js": "^1.9.5",
"tsx": "^4.19.2",
"typescript": "^5.7.3",
"ultracite": "^4.1.15",
@ -87,6 +101,12 @@
},
"@tanstack/react-router": {
"optional": true
},
"@tanstack/solid-router": {
"optional": true
},
"solid-js": {
"optional": true
}
},
"keywords": [

537
pnpm-lock.yaml generated
View File

@ -31,14 +31,17 @@ importers:
specifier: ^1.49.1
version: 1.49.1
'@rslib/core':
specifier: ^0.5.0
version: 0.5.0(@microsoft/api-extractor@7.49.2(@types/node@22.12.0))(typescript@5.7.3)
specifier: ^0.5.3
version: 0.5.3(@microsoft/api-extractor@7.49.2(@types/node@22.12.0))(typescript@5.7.3)
'@swc/core':
specifier: ^1.10.12
version: 1.10.12(@swc/helpers@0.5.15)
'@tanstack/react-router':
specifier: ^1.99.6
version: 1.99.6(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
specifier: ^1.112.11
version: 1.112.11(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
'@tanstack/solid-router':
specifier: ^1.112.11
version: 1.112.11(solid-js@1.9.5)
'@types/lodash-es':
specifier: ^4.17.12
version: 4.17.12
@ -61,11 +64,11 @@ importers:
specifier: ^4.17.21
version: 4.17.21
oxc-parser:
specifier: ^0.48.1
version: 0.48.1
specifier: ^0.54.0
version: 0.54.0
oxc-walker:
specifier: ^0.2.2
version: 0.2.2(oxc-parser@0.48.1)
version: 0.2.2(oxc-parser@0.54.0)
playwright:
specifier: ^1.50.0
version: 1.50.0
@ -78,6 +81,9 @@ importers:
rxjs:
specifier: ^7.4.0
version: 7.8.1
solid-js:
specifier: ^1.9.5
version: 1.9.5
tsx:
specifier: ^4.19.2
version: 4.19.2
@ -821,6 +827,9 @@ packages:
resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
engines: {node: '>= 8'}
'@nothing-but/utils@0.17.0':
resolution: {integrity: sha512-TuCHcHLOqDL0SnaAxACfuRHBNRgNJcNn9X0GiH5H3YSDBVquCr3qEIG3FOQAuMyZCbu9w8nk2CHhOsn7IvhIwQ==}
'@open-draft/deferred-promise@2.2.0':
resolution: {integrity: sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==}
@ -833,48 +842,48 @@ packages:
'@outposts/injection-js@2.5.1':
resolution: {integrity: sha512-f2HCfEM9k7WqLw5Bs2Sh2rWrwuuQFE3c5yKueQfO4WAnJBvlC6tU0JWSG1j8A7NsEfcdUtMVmIzGIRIHo7ALPw==}
'@oxc-parser/binding-darwin-arm64@0.48.1':
resolution: {integrity: sha512-qCpCWt+8B1c76KndRgTQmCswsd1Nx+7/8Rm/JCee+tSB+emW/EcJEP5cIHvnUAueqlF0ZUuQ9LQWdPNN2n5SiQ==}
'@oxc-parser/binding-darwin-arm64@0.54.0':
resolution: {integrity: sha512-LiNsE4YZ7UUCvkRvqKSr0ubWvOAyqeCKbqzhBQ4Dvj3EpkORX+MLj8c6/LcFWHtulNS066DvvB9nmd4FkMGeDQ==}
cpu: [arm64]
os: [darwin]
'@oxc-parser/binding-darwin-x64@0.48.1':
resolution: {integrity: sha512-Uf2IYgKizJEiUoDi3u6NrQTH6WvNFj0XS3g1KC3/rXdM/UQghTo4dhe1oll/NdrQ5i/EuY0qRwdOxPdxHr50pQ==}
'@oxc-parser/binding-darwin-x64@0.54.0':
resolution: {integrity: sha512-sMoLDWK636eNkhxxu8Zfpgh1m64B68hU+D3qPOopzO9sMri2Xd+/Qy4AIe2CiQMTLf6Sb4+jTeqYqRrR8cgsPg==}
cpu: [x64]
os: [darwin]
'@oxc-parser/binding-linux-arm64-gnu@0.48.1':
resolution: {integrity: sha512-5rxOgUkXpp3q988y86HMTk8+Jw8AdILpHzS3MPTptGySXrv/7g41Xp+KVwLzd8FQpu0fMCy9VAzcBMwCe+aojg==}
'@oxc-parser/binding-linux-arm64-gnu@0.54.0':
resolution: {integrity: sha512-TgnttTu46sdbMTDiObIX21okp58qiGaLk/qAPj8NorQHfBKnK9BWaCb0PBfDxeYozRDW4vppPPq4GXQlzhyQ9w==}
cpu: [arm64]
os: [linux]
'@oxc-parser/binding-linux-arm64-musl@0.48.1':
resolution: {integrity: sha512-NqVaud/N3jOJiwt7afrXG+b6guqglPuTIvuQnhmokq0i8q0fQUgmg0/ZdNI5bu941wijmCC+eCg52H5jD1iaHA==}
'@oxc-parser/binding-linux-arm64-musl@0.54.0':
resolution: {integrity: sha512-4J1Uc6vCbWp62fU7XbwPM93QwM/5ZTldbY/iXzyn/qX3+I6QYA2YaFgssO+zelYM0Bdaqpgeq8jeTAyN3HsLpw==}
cpu: [arm64]
os: [linux]
'@oxc-parser/binding-linux-x64-gnu@0.48.1':
resolution: {integrity: sha512-x+THqLaXVwgi6+YxNz9KmxdfIed89UNr1Ez1IsOew/Rg57RcX9XP4rT9fcjAZ9GM3krszkYAVq2KxP471Dgv8g==}
'@oxc-parser/binding-linux-x64-gnu@0.54.0':
resolution: {integrity: sha512-qG5fxcIVIpQefZ71fTPetlr5FQ+MVKsDvC1Ozgy66apNKeWdjV8Aqx1k1yaZiTsENThhxP6zAOTOek398vsBSw==}
cpu: [x64]
os: [linux]
'@oxc-parser/binding-linux-x64-musl@0.48.1':
resolution: {integrity: sha512-m6XDdH6kEQsM3DAOK+jIN9hMAM9bHPQfdw0Ldbg6W1M9S8vvAvz0nQHkLF2ChBBV1HkTjLolK40sR0W6BGCYww==}
'@oxc-parser/binding-linux-x64-musl@0.54.0':
resolution: {integrity: sha512-dcS2iP7hyF2AO6h3UAcC1OemKpElbiZdNW+88dP8fw5KArMWGH/GRNk2r/kBGq2YCETdP8ROlnUXMqGMaY3NEA==}
cpu: [x64]
os: [linux]
'@oxc-parser/binding-win32-arm64-msvc@0.48.1':
resolution: {integrity: sha512-Zxfnuea6THWQiGmnLyJXlpi3bmN0lcWf7QYLVr71ZaTs9S14eOFwHuH2efZ7zcto+a8osysQT9xMDvdIkiqGZA==}
'@oxc-parser/binding-win32-arm64-msvc@0.54.0':
resolution: {integrity: sha512-YiSM4tZYDGVgT3VXFlzZ86NCgp46BdLjCe85Pq/jfPXGFFSA0EU0Xg94jY8F+6w0BO/NjWJ1mEJwjhUzlWRq3Q==}
cpu: [arm64]
os: [win32]
'@oxc-parser/binding-win32-x64-msvc@0.48.1':
resolution: {integrity: sha512-klialzt6wZOzGl2W+tAKPJAGu0vO3iqPGd13+ZY+VCC2xM+EA5/mYuv+NEK1WDFSxlmz/898Puhqk4teCbxZug==}
'@oxc-parser/binding-win32-x64-msvc@0.54.0':
resolution: {integrity: sha512-NqsfN0pCJcB94bHzZtPzyKkeeGKo6U6Qj//lAE88XaZxVMlw58sz77wHIhIo0p9/KuKiMcD5VO2AIGG56AsJfg==}
cpu: [x64]
os: [win32]
'@oxc-project/types@0.48.1':
resolution: {integrity: sha512-/CoLnZmEI+FmpMvF8vOdVpQddt9Me+paM3c56m5jMZ7EMaU1TQFCrNH0JZr1Cwn4wKb/ALY32HPaCtA8dvgkrw==}
'@oxc-project/types@0.54.0':
resolution: {integrity: sha512-Tf0TGE96lQglNMyGKpIxSz7RmPtf410FY93QAD03XN40Rutpq4UsVePYQ9Nia8xb/YYLX9IskhJ7DK8rkcAabQ==}
'@pkgjs/parseargs@0.11.0':
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
@ -1000,8 +1009,8 @@ packages:
cpu: [x64]
os: [win32]
'@rsbuild/core@1.2.11':
resolution: {integrity: sha512-bsTtXlqJKoqnHwOZ05NePGpBf/neuwHTzJtQegQ9GA8YLyjow1wn8vPXFiRtYL0UqASEDtFtAm2bcaieg7r/TQ==}
'@rsbuild/core@1.2.15':
resolution: {integrity: sha512-f17C4q3MoQ1G9CXzGkiZKZj3MHnV9oSovBjjQQ5bXVBICfGVyRHlHHCa5b9b40F67lbez2K6eLkLP9wU1j1Udw==}
engines: {node: '>=16.7.0'}
hasBin: true
@ -1015,9 +1024,9 @@ packages:
peerDependencies:
'@rsbuild/core': 1.x
'@rslib/core@0.5.0':
resolution: {integrity: sha512-zHgu9GmT/gvbuDoGLxMHxYbKRiARZsH4UXWFsezq7+KZ3PdEMBUNywmslExY/pk+xSpBUF6+peE6WCUOeW3mKQ==}
engines: {node: '>=16.0.0'}
'@rslib/core@0.5.3':
resolution: {integrity: sha512-HlFGd4PZ4kJDrGZ4VBPIglGPjsTI+LuVWTaFg/hrmElnmXpw3iq0Oln5Esv24L3VBofyvZGPMlu1fZTiqTPzcw==}
engines: {node: '>=16.7.0'}
hasBin: true
peerDependencies:
'@microsoft/api-extractor': ^7
@ -1033,8 +1042,8 @@ packages:
cpu: [arm64]
os: [darwin]
'@rspack/binding-darwin-arm64@1.2.3':
resolution: {integrity: sha512-xuwYzhPgNCr4BtKXCU3xe4249TFsXAZglIlbxv8Qs3PeIarrZMRddcqH2zUXi+nJavNw3yN12sCYEzk1f+O4FQ==}
'@rspack/binding-darwin-arm64@1.2.7':
resolution: {integrity: sha512-dT5eSMTknZaI8Djmz8KnaWM68rjZuBZwsKyF144o+ZSJM55vgiNXyL0lQYB8mX9nR3Gck+jKuGUAT2W/EF/t5Q==}
cpu: [arm64]
os: [darwin]
@ -1043,8 +1052,8 @@ packages:
cpu: [x64]
os: [darwin]
'@rspack/binding-darwin-x64@1.2.3':
resolution: {integrity: sha512-afiIN8elcrO2EtO27UN0qyZqu5FXGUdclud56DrhvEfnWS3GGxJEdjA8XUYVXkfCYakdXHucIJKlkkgaAjEvHg==}
'@rspack/binding-darwin-x64@1.2.7':
resolution: {integrity: sha512-5n8IhKBxH71d4BUIvyzTwSOAOKNneLPJwLIphSPNIbCMGjLI59/EVpxSQ/AAUfyMkqOs635NNCn0eGQVuzpI/w==}
cpu: [x64]
os: [darwin]
@ -1053,8 +1062,8 @@ packages:
cpu: [arm64]
os: [linux]
'@rspack/binding-linux-arm64-gnu@1.2.3':
resolution: {integrity: sha512-K2u/fPUmKujlKSWL3q2zaUu8/6ZK/bOGKcqJSib8jdanQQ/GFKwKtPAFOOa/vvqbzhDocqKOobFR10FhgJqCHg==}
'@rspack/binding-linux-arm64-gnu@1.2.7':
resolution: {integrity: sha512-DTtFBJmgQQrVWjbklpgJDr3kE9Uf1fHsPh+1GVslsBuyn+o4O7JslrnjuVsQCYKoiEg0Lg4ZPQmwnhJLHssZ5A==}
cpu: [arm64]
os: [linux]
@ -1063,8 +1072,8 @@ packages:
cpu: [arm64]
os: [linux]
'@rspack/binding-linux-arm64-musl@1.2.3':
resolution: {integrity: sha512-mgovdzGb6cH9hQsjTyzDbfZWCPhTcoHcLro1P7UbiqcLPMDJp/k3Io9xV2/EJhaDA1aynIdq7XfY0fuk4+6Irw==}
'@rspack/binding-linux-arm64-musl@1.2.7':
resolution: {integrity: sha512-01/OoQQF9eyDvRKkxj4DzCznfGZIvnzI8qOsrv+M7VBm8FLoKpb3hygXixaGQOXmNL42XTh61qjgm++fBu6aUA==}
cpu: [arm64]
os: [linux]
@ -1073,8 +1082,8 @@ packages:
cpu: [x64]
os: [linux]
'@rspack/binding-linux-x64-gnu@1.2.3':
resolution: {integrity: sha512-542lwJzB1RMGuVdBdA3cOWTlmL9okpOppHUBWcNCjmJM+9zTI+0jwjVe8HaqOqtuR8XzNsoCwT9QonU/GLcuhg==}
'@rspack/binding-linux-x64-gnu@1.2.7':
resolution: {integrity: sha512-lUOAUq0YSsofCXsP6XnlgfH0ZRDZ2X2XqXLXYjqf4xkSxCl5eBmE0EQYjAHF4zjUvU5rVx4a4bDLWv7+t3bOHg==}
cpu: [x64]
os: [linux]
@ -1083,8 +1092,8 @@ packages:
cpu: [x64]
os: [linux]
'@rspack/binding-linux-x64-musl@1.2.3':
resolution: {integrity: sha512-dJromiREDcTWqzfCOI5y1IVoYmUnCv7vCp63AEq0+13fJJdk7+pcNN3VV2jOKpk9VECSvjg1c01wl+UzXAXFMw==}
'@rspack/binding-linux-x64-musl@1.2.7':
resolution: {integrity: sha512-ZrPXfgT30p4DlydYavaTHiluxHkWvZHt7K4q7qNyTfYYowG6jRGwWi/PATdugNICGv027Wsh5nzEO4o27Iuhwg==}
cpu: [x64]
os: [linux]
@ -1093,8 +1102,8 @@ packages:
cpu: [arm64]
os: [win32]
'@rspack/binding-win32-arm64-msvc@1.2.3':
resolution: {integrity: sha512-S8ZKddMMQDGy8jx/R0i2m1XrmfY2CpI+t6lIEpsuZuKUR4MbOGKN2DuL4MDnT3m8JaYvC8ihsvQjBXQCy3SNxQ==}
'@rspack/binding-win32-arm64-msvc@1.2.7':
resolution: {integrity: sha512-1OzzM+OUSWX39XYcDfxJ8bGX5vNNrRejCMGotBEdP+uQ3KMWCPz0G4KRc3QIjghaLIYk3ofd83hcfUxyk/2Xog==}
cpu: [arm64]
os: [win32]
@ -1103,8 +1112,8 @@ packages:
cpu: [ia32]
os: [win32]
'@rspack/binding-win32-ia32-msvc@1.2.3':
resolution: {integrity: sha512-74lqSMKQJcJcgfFaxm+G9YVJSl2KK9/v4fRoMsWApztNy2qNgee+UguNBCOU6JLa3rVSj8Z5OVVDtJkGFrSvVg==}
'@rspack/binding-win32-ia32-msvc@1.2.7':
resolution: {integrity: sha512-VWlDCV9kDtijk9GK6ZtBQmYoVzKGpnrJB0iI3d2gIEa/2NwikJ89bLMFE4dFx8UNH3p/sSyb5pmPOQnbudFK7Q==}
cpu: [ia32]
os: [win32]
@ -1113,16 +1122,16 @@ packages:
cpu: [x64]
os: [win32]
'@rspack/binding-win32-x64-msvc@1.2.3':
resolution: {integrity: sha512-fcU532PgFdd5Bil8jwQW0Dcb/80oM6V0qSstGIxZ4M77t4t8e/PcukXfORTL71FfNQ64Rd4Dp6XRl1NHNJVxeg==}
'@rspack/binding-win32-x64-msvc@1.2.7':
resolution: {integrity: sha512-l/sTdeMsQF1a1aB79cWykDNRZG6nkUA0biJo2/sEARP3ijdr8TuwUdirp2JRDmZfQJkoJnQ2un9y9qyW+TIZzA==}
cpu: [x64]
os: [win32]
'@rspack/binding@1.2.2':
resolution: {integrity: sha512-GCZwpGFYlLTdJ2soPLwjw9z4LSZ+GdpbHNfBt3Cm/f/bAF8n6mZc7dHUqN893RFh7MPU17HNEL3fMw7XR+6pHg==}
'@rspack/binding@1.2.3':
resolution: {integrity: sha512-enpOXZPQOJO800wdWcR7H5Dx5UZfwkaT0D0xsHD53WbpI09Z2KJbLX7I/i1FLLy3K1KQTB+2FIHLVdRikasXZA==}
'@rspack/binding@1.2.7':
resolution: {integrity: sha512-QH+kxkG0I9C6lmlwgBUDFsy24ihXMGG5lfiNtQilk4CyBN+AgSWFENcYrnkUaBioZAvMBznQLiccV3X0JeH9iQ==}
'@rspack/core@1.2.2':
resolution: {integrity: sha512-EeHAmY65Uj62hSbUKesbrcWGE7jfUI887RD03G++Gj8jS4WPHEu1TFODXNOXg6pa7zyIvs2BK0Bm16Kwz8AEaQ==}
@ -1136,8 +1145,8 @@ packages:
'@swc/helpers':
optional: true
'@rspack/core@1.2.3':
resolution: {integrity: sha512-BFgdUYf05/hjjY9Nlwq8DpWaRJN5w2kTl8ZJi20SRL60oAx+ZD2ABT+fsPhBiFSmfTZDdvGGIq5e3vfRzoIuqg==}
'@rspack/core@1.2.7':
resolution: {integrity: sha512-Vg7ySflnqI1nNOBPd6VJkQozWADssxn3einbxa9OqDVAB+dGSj8qihTs6rlaTSewidoaYTGIAiTMHO2y+61qqQ==}
engines: {node: '>=16.0.0'}
peerDependencies:
'@rspack/tracing': ^1.x
@ -1182,6 +1191,96 @@ packages:
'@rushstack/ts-command-line@4.23.4':
resolution: {integrity: sha512-pqmzDJCm0TS8VyeqnzcJ7ncwXgiLDQ6LVmXXfqv2nPL6VIz+UpyTpNVfZRJpyyJ+UDxqob1vIj2liaUfBjv8/A==}
'@solid-devtools/debugger@0.26.0':
resolution: {integrity: sha512-36QxZ+s/lY60E+Pb9q0eTsdqgaog4c823WIj5dC2LFdGrGXbVGBQEj6k7CgvMnEETdwndrd0Fm72fQyYPlZrVA==}
peerDependencies:
solid-js: ^1.9.0
'@solid-devtools/logger@0.9.7':
resolution: {integrity: sha512-JHZ0ejkQnRoMcV8bgqogSYFlYdo0wJ1S/vAHEROSHQk1jNtErTXJwLrCXdR+LNuBWhJJ0aq/y7Pjit/ssvKrDw==}
peerDependencies:
solid-js: ^1.9.0
'@solid-devtools/shared@0.19.0':
resolution: {integrity: sha512-OGo6l84f9X5YEAqSEM4Xl94+xKXSqmACMzKWsAqO0BStLBMVL0vIVu286AQk5XkNxn11/EB9wrdkZc9GUzKlxA==}
peerDependencies:
solid-js: ^1.9.0
'@solid-primitives/bounds@0.0.122':
resolution: {integrity: sha512-kUq/IprOdFr/rg2upon5lQGOoTnDAmxQS4ASKK2l+VwoKSctdPwgu/4qJxEITZikL+nB0myYZzBZWptySV0cRg==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/cursor@0.0.115':
resolution: {integrity: sha512-8nEmUN/sacXPChwuJOAi6Yi6VnxthW/Jk8VGvvcF38AenjUvOA6FHI6AkJILuFXjQw1PGxia1YbH/Mn77dPiOA==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/event-listener@2.4.0':
resolution: {integrity: sha512-TSfR1PNTfojFEYGSxSMCnUhXsaYWBo4p+cm73QmWODa9YnaQAk6PB7VjzG2bOT2D817VlvuOqTj0Qdq+MZrdGg==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/keyboard@1.3.0':
resolution: {integrity: sha512-0QX9O3eUaQorNNmXZn8a4efSByayIScVq+iGSwheD7m3SL/ACLM5oZlCNpTPLcemnVVfUPAHFiViEj86XpN5qw==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/media@2.3.0':
resolution: {integrity: sha512-7+C3wfbWnGE/WPoNsqcp/EeOP2aNNB92RCpsWhBth8E5lZo/J+rK6jMb7umVsK0zguT8HBpeXp1pFyFbcsHStA==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/platform@0.1.2':
resolution: {integrity: sha512-sSxcZfuUrtxcwV0vdjmGnZQcflACzMfLriVeIIWXKp8hzaS3Or3tO6EFQkTd3L8T5dTq+kTtLvPscXIpL0Wzdg==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/refs@1.1.0':
resolution: {integrity: sha512-QJ3bTSQOlPdHBP2m6llrT13FvVzAwZfx41lTN8lQrRwwcZoWb7kfCAjhaohPnwkAsQ6nJpLjtGfT5GOyuCA4tA==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/resize-observer@2.1.0':
resolution: {integrity: sha512-tO9MDAc2pNjpcRd5B8LWbiR1qzIgvGZ5BtTuO98N7CLwd+fnuyGwtlQtJpz5hcLcTnoawpQYLpiRGNgaYW+YzQ==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/rootless@1.5.0':
resolution: {integrity: sha512-YJ+EveQeDv9DLqfDKfsPAAGy2x3vBruoD23yn+nD2dT84QjoBxWT1T0qA0TMFjek6/xuN3flqnHtQ4r++4zdjg==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/scheduled@1.5.0':
resolution: {integrity: sha512-RVw24IRNh1FQ4DCMb3OahB70tXIwc5vH8nhR4nNPsXwUPQeuOkLsDI5BlxaPk0vyZgqw9lDpufgI3HnPwplgDw==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/static-store@0.0.8':
resolution: {integrity: sha512-ZecE4BqY0oBk0YG00nzaAWO5Mjcny8Fc06CdbXadH9T9lzq/9GefqcSe/5AtdXqjvY/DtJ5C6CkcjPZO0o/eqg==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/static-store@0.1.0':
resolution: {integrity: sha512-6Coau0Kv/dF83UQpbBzc+gnJafOQAPe2jCbB4jmTK5UocsR5cWmFBVRm3kin+nZFVaO4WkuELw0cKANWgTVh8Q==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/styles@0.0.114':
resolution: {integrity: sha512-SFXr16mgr6LvZAIj6L7i59HHg+prAmIF8VP/U3C6jSHz68Eh1G71vaWr9vlJVpy/j6bh1N8QUzu5CgtvIC92OQ==}
peerDependencies:
solid-js: ^1.6.12
'@solid-primitives/utils@6.3.0':
resolution: {integrity: sha512-e7hTlJ1Ywh2+g/Qug+n4L1mpfxsikoIS4/sHE2EK9WatQt8UJqop/vE6bsLnXlU1xuhb/jo94Ah5Y27rd4wP7A==}
peerDependencies:
solid-js: ^1.6.12
'@solidjs/meta@0.29.4':
resolution: {integrity: sha512-zdIWBGpR9zGx1p1bzIPqF5Gs+Ks/BH8R6fWhmUa/dcK1L2rUC8BAcZJzNRYBQv74kScf1TSOs0EY//Vd/I0V8g==}
peerDependencies:
solid-js: '>=1.8.4'
'@swc/core-darwin-arm64@1.10.12':
resolution: {integrity: sha512-pOANQegUTAriW7jq3SSMZGM5l89yLVMs48R0F2UG6UZsH04SiViCnDctOGlA/Sa++25C+rL9MGMYM1jDLylBbg==}
engines: {node: '>=10'}
@ -1260,10 +1359,21 @@ packages:
'@swc/types@0.1.17':
resolution: {integrity: sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==}
'@tanstack/history@1.112.8':
resolution: {integrity: sha512-+EPOvUtnA3PnIBF2oUhggdy7UrVimLZd1SpULhV1UiesNgKtmLjArO7ZdGPrRq7pRXhc8V0ZAWTI9vfplhZfeA==}
engines: {node: '>=12'}
'@tanstack/history@1.99.0':
resolution: {integrity: sha512-MQS1Lg8D+1vpasEJKf4zs1sxhxbXcoejmVCZDbo0bq2wq+xVK+kRixj5Pae2kb2APzdXYga4u236GBbgCKTcnQ==}
engines: {node: '>=12'}
'@tanstack/react-router@1.112.11':
resolution: {integrity: sha512-UfCaLOL8uMn1uhuk8NCUQ4xYoyFdDLSGrP4BdemYeOsgDuTCIGfZeN9e+fk0CCgsXCCVIweeBsarvkVP8KofGA==}
engines: {node: '>=12'}
peerDependencies:
react: '>=18.0.0 || >=19.0.0'
react-dom: '>=18.0.0 || >=19.0.0'
'@tanstack/react-router@1.99.6':
resolution: {integrity: sha512-mH4wkW2h4uILKsCB4qxJWZ8LtVlxvDzZXnXmb5FuAigdTN2qsQhgpxM1bxecII1cDQMjqq8bZvqYw/62MZ5elg==}
engines: {node: '>=12'}
@ -1277,6 +1387,10 @@ packages:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
'@tanstack/router-core@1.112.8':
resolution: {integrity: sha512-IaCWqePzsUQWMAhtQObnM4dmFSxUEzH94jAjBiMGD/FfwMjojFNOzuLe4HG1rGCAbF2M9Q1HjdzHzG0BptjDsQ==}
engines: {node: '>=12'}
'@tanstack/router-core@1.99.6':
resolution: {integrity: sha512-tEfMLeONfyoyI1e/ygUeGFtTWeWQu0GR3OT8OR75EOeNXRmUEtI6H4ThrXcV8nwBd6B88wmp9LhSPLl9H2VwSA==}
engines: {node: '>=12'}
@ -1320,6 +1434,17 @@ packages:
resolution: {integrity: sha512-weYNg+aqXX1aZkcD7nOkjymtJiLgyp5A1Gtg6Ey0ttIaAlL3NuLlwX9z0CCnCLb3AGxGL4OgdZ2xVbH/DVaURQ==}
engines: {node: '>=12'}
'@tanstack/solid-router@1.112.11':
resolution: {integrity: sha512-de2B3bWeXO3SZ8uG6w74HWHaZpO3vRoSIizXc797pmMzGlkUFaxYeGidBXjnm/SnuEFr7VxKFHiEqCD92t2Uew==}
engines: {node: '>=12'}
peerDependencies:
solid-js: ^1.9.5
'@tanstack/solid-store@0.7.0':
resolution: {integrity: sha512-uDQYkUuH3MppitiduZLTEcItkTr8vEJ33jzp2rH2VvlNRMGbuU54GQcqf3dLIlTbZ1/Z2TtIBtBjjl+N/OhwRg==}
peerDependencies:
solid-js: ^1.6.0
'@tanstack/store@0.7.0':
resolution: {integrity: sha512-CNIhdoUsmD2NolYuaIs8VfWM467RK6oIBAW4nPEKZhg1smZ+/CwtCdpURgp7nxSqOaV9oKkzdWD80+bC66F/Jg==}
@ -1677,6 +1802,9 @@ packages:
caniuse-lite@1.0.30001692:
resolution: {integrity: sha512-A95VKan0kdtrsnMubMKxEKUKImOPSuCpYgxSQBo036P5YYgVIcOYJEgt/txJWqObiRQeISNCfef9nvlQ0vbV7A==}
caniuse-lite@1.0.30001702:
resolution: {integrity: sha512-LoPe/D7zioC0REI5W73PeR1e1MLCipRGq/VkovJnd6Df+QVqT+vT33OXCp8QUd7kA7RZrHWxb1B36OQKI/0gOA==}
chai@5.1.2:
resolution: {integrity: sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==}
engines: {node: '>=12'}
@ -1763,6 +1891,9 @@ packages:
core-js@3.40.0:
resolution: {integrity: sha512-7vsMc/Lty6AGnn7uFpYT56QesI5D2Y/UkgKounk87OP9Z2H9Z8kj6jzcSGAxFmUtDOS0ntK6lbQz+Nsa0Jj6mQ==}
core-js@3.41.0:
resolution: {integrity: sha512-SJ4/EHwS36QMJd6h/Rg+GyR4A5xE0FSI3eZ+iBVpfqf1x0eTSg1smWLHrA+2jQThZSh97fmSgFSU8B61nxosxA==}
core-util-is@1.0.3:
resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
@ -2541,8 +2672,8 @@ packages:
outvariant@1.4.3:
resolution: {integrity: sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==}
oxc-parser@0.48.1:
resolution: {integrity: sha512-06Y1yBSlUP5j7wdcyLdjXUe3kBw1QYu7E4vowi59IcwZ7jc/iUCMXxqnSoJLdqex3fZAjCnuzW7/gPi3h5bumA==}
oxc-parser@0.54.0:
resolution: {integrity: sha512-nYqnBdqWL/yOJayDoSe8a/twaaersgXKOwypR9XuSf6gbzsI+aGDm8gg9vn1p+GcRN8P+Z3erTHjUdAvuUhfHQ==}
oxc-walker@0.2.2:
resolution: {integrity: sha512-beQrIxhRrJigGgct4HJ2UtZv8HHA5553rAhD5rydHPPfLHnVzxEHNRiop8VU3zmhL6COMq4XxLVHnTMXiwNGxQ==}
@ -2811,9 +2942,9 @@ packages:
rrweb-cssom@0.8.0:
resolution: {integrity: sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==}
rsbuild-plugin-dts@0.5.0:
resolution: {integrity: sha512-m9p53zzcKJ+dWJ/sQfI7jaF9UpmQigdMXQm96tvSpnzSp7WQvjTHAyV5iB6H/3lWTcRJXmLb6mxSzIiCVRnNNA==}
engines: {node: '>=16.0.0'}
rsbuild-plugin-dts@0.5.3:
resolution: {integrity: sha512-NLy2oKyStcM89CwSdgQUu10BlNTpZieshGj7p7w/sge9VM7aADp8mUqo86bDKX4ITMMACLTO6Q/VQmp9B/1tMg==}
engines: {node: '>=16.7.0'}
peerDependencies:
'@microsoft/api-extractor': ^7
'@rsbuild/core': 1.x
@ -2868,6 +2999,16 @@ packages:
resolution: {integrity: sha512-2G2y++21dhj2R7iHAdd0FIzjGwuKZld+7Pl/bTU6YIkrC2ZMbVUjm+luj6A6V34Rv9XfKJDKpTWu9W4Gse1D9g==}
engines: {node: '>=14.16'}
seroval-plugins@1.2.1:
resolution: {integrity: sha512-H5vs53+39+x4Udwp4J5rNZfgFuA+Lt+uU+09w1gYBVWomtAl98B+E9w7yC05Xc81/HgLvJdlyqJbU0fJCKCmdw==}
engines: {node: '>=10'}
peerDependencies:
seroval: ^1.0
seroval@1.2.1:
resolution: {integrity: sha512-yBxFFs3zmkvKNmR0pFSU//rIsYjuX418TnlDmc2weaq5XFDqDIV/NOMPBoLrbxjLH42p4UzRuXHryXh9dYcKcw==}
engines: {node: '>=10'}
setimmediate@1.0.5:
resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==}
@ -2902,6 +3043,9 @@ packages:
resolution: {integrity: sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==}
engines: {node: '>= 10.0.0', npm: '>= 3.0.0'}
solid-js@1.9.5:
resolution: {integrity: sha512-ogI3DaFcyn6UhYhrgcyRAMbu/buBJitYQASZz5WzfQVPP10RD2AbCoRZ517psnezrasyCbWzIxZ6kVqet768xw==}
source-map-js@1.2.1:
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
engines: {node: '>=0.10.0'}
@ -3983,6 +4127,8 @@ snapshots:
'@nodelib/fs.scandir': 2.1.5
fastq: 1.19.0
'@nothing-but/utils@0.17.0': {}
'@open-draft/deferred-promise@2.2.0':
optional: true
@ -3999,31 +4145,31 @@ snapshots:
dependencies:
tslib: 2.8.1
'@oxc-parser/binding-darwin-arm64@0.48.1':
'@oxc-parser/binding-darwin-arm64@0.54.0':
optional: true
'@oxc-parser/binding-darwin-x64@0.48.1':
'@oxc-parser/binding-darwin-x64@0.54.0':
optional: true
'@oxc-parser/binding-linux-arm64-gnu@0.48.1':
'@oxc-parser/binding-linux-arm64-gnu@0.54.0':
optional: true
'@oxc-parser/binding-linux-arm64-musl@0.48.1':
'@oxc-parser/binding-linux-arm64-musl@0.54.0':
optional: true
'@oxc-parser/binding-linux-x64-gnu@0.48.1':
'@oxc-parser/binding-linux-x64-gnu@0.54.0':
optional: true
'@oxc-parser/binding-linux-x64-musl@0.48.1':
'@oxc-parser/binding-linux-x64-musl@0.54.0':
optional: true
'@oxc-parser/binding-win32-arm64-msvc@0.48.1':
'@oxc-parser/binding-win32-arm64-msvc@0.54.0':
optional: true
'@oxc-parser/binding-win32-x64-msvc@0.48.1':
'@oxc-parser/binding-win32-x64-msvc@0.54.0':
optional: true
'@oxc-project/types@0.48.1': {}
'@oxc-project/types@0.54.0': {}
'@pkgjs/parseargs@0.11.0':
optional: true
@ -4120,12 +4266,13 @@ snapshots:
'@rollup/rollup-win32-x64-msvc@4.30.1':
optional: true
'@rsbuild/core@1.2.11':
'@rsbuild/core@1.2.15':
dependencies:
'@rspack/core': 1.2.3(@swc/helpers@0.5.15)
'@rspack/core': 1.2.7(@swc/helpers@0.5.15)
'@rspack/lite-tapable': 1.0.1
'@swc/helpers': 0.5.15
core-js: 3.40.0
core-js: 3.41.0
jiti: 2.4.2
transitivePeerDependencies:
- '@rspack/tracing'
@ -4144,10 +4291,10 @@ snapshots:
'@rspack/plugin-react-refresh': 1.0.1(react-refresh@0.16.0)
react-refresh: 0.16.0
'@rslib/core@0.5.0(@microsoft/api-extractor@7.49.2(@types/node@22.12.0))(typescript@5.7.3)':
'@rslib/core@0.5.3(@microsoft/api-extractor@7.49.2(@types/node@22.12.0))(typescript@5.7.3)':
dependencies:
'@rsbuild/core': 1.2.11
rsbuild-plugin-dts: 0.5.0(@microsoft/api-extractor@7.49.2(@types/node@22.12.0))(@rsbuild/core@1.2.11)(typescript@5.7.3)
'@rsbuild/core': 1.2.15
rsbuild-plugin-dts: 0.5.3(@microsoft/api-extractor@7.49.2(@types/node@22.12.0))(@rsbuild/core@1.2.15)(typescript@5.7.3)
tinyglobby: 0.2.12
optionalDependencies:
'@microsoft/api-extractor': 7.49.2(@types/node@22.12.0)
@ -4158,55 +4305,55 @@ snapshots:
'@rspack/binding-darwin-arm64@1.2.2':
optional: true
'@rspack/binding-darwin-arm64@1.2.3':
'@rspack/binding-darwin-arm64@1.2.7':
optional: true
'@rspack/binding-darwin-x64@1.2.2':
optional: true
'@rspack/binding-darwin-x64@1.2.3':
'@rspack/binding-darwin-x64@1.2.7':
optional: true
'@rspack/binding-linux-arm64-gnu@1.2.2':
optional: true
'@rspack/binding-linux-arm64-gnu@1.2.3':
'@rspack/binding-linux-arm64-gnu@1.2.7':
optional: true
'@rspack/binding-linux-arm64-musl@1.2.2':
optional: true
'@rspack/binding-linux-arm64-musl@1.2.3':
'@rspack/binding-linux-arm64-musl@1.2.7':
optional: true
'@rspack/binding-linux-x64-gnu@1.2.2':
optional: true
'@rspack/binding-linux-x64-gnu@1.2.3':
'@rspack/binding-linux-x64-gnu@1.2.7':
optional: true
'@rspack/binding-linux-x64-musl@1.2.2':
optional: true
'@rspack/binding-linux-x64-musl@1.2.3':
'@rspack/binding-linux-x64-musl@1.2.7':
optional: true
'@rspack/binding-win32-arm64-msvc@1.2.2':
optional: true
'@rspack/binding-win32-arm64-msvc@1.2.3':
'@rspack/binding-win32-arm64-msvc@1.2.7':
optional: true
'@rspack/binding-win32-ia32-msvc@1.2.2':
optional: true
'@rspack/binding-win32-ia32-msvc@1.2.3':
'@rspack/binding-win32-ia32-msvc@1.2.7':
optional: true
'@rspack/binding-win32-x64-msvc@1.2.2':
optional: true
'@rspack/binding-win32-x64-msvc@1.2.3':
'@rspack/binding-win32-x64-msvc@1.2.7':
optional: true
'@rspack/binding@1.2.2':
@ -4221,17 +4368,17 @@ snapshots:
'@rspack/binding-win32-ia32-msvc': 1.2.2
'@rspack/binding-win32-x64-msvc': 1.2.2
'@rspack/binding@1.2.3':
'@rspack/binding@1.2.7':
optionalDependencies:
'@rspack/binding-darwin-arm64': 1.2.3
'@rspack/binding-darwin-x64': 1.2.3
'@rspack/binding-linux-arm64-gnu': 1.2.3
'@rspack/binding-linux-arm64-musl': 1.2.3
'@rspack/binding-linux-x64-gnu': 1.2.3
'@rspack/binding-linux-x64-musl': 1.2.3
'@rspack/binding-win32-arm64-msvc': 1.2.3
'@rspack/binding-win32-ia32-msvc': 1.2.3
'@rspack/binding-win32-x64-msvc': 1.2.3
'@rspack/binding-darwin-arm64': 1.2.7
'@rspack/binding-darwin-x64': 1.2.7
'@rspack/binding-linux-arm64-gnu': 1.2.7
'@rspack/binding-linux-arm64-musl': 1.2.7
'@rspack/binding-linux-x64-gnu': 1.2.7
'@rspack/binding-linux-x64-musl': 1.2.7
'@rspack/binding-win32-arm64-msvc': 1.2.7
'@rspack/binding-win32-ia32-msvc': 1.2.7
'@rspack/binding-win32-x64-msvc': 1.2.7
'@rspack/core@1.2.2(@swc/helpers@0.5.15)':
dependencies:
@ -4242,12 +4389,12 @@ snapshots:
optionalDependencies:
'@swc/helpers': 0.5.15
'@rspack/core@1.2.3(@swc/helpers@0.5.15)':
'@rspack/core@1.2.7(@swc/helpers@0.5.15)':
dependencies:
'@module-federation/runtime-tools': 0.8.4
'@rspack/binding': 1.2.3
'@rspack/binding': 1.2.7
'@rspack/lite-tapable': 1.0.1
caniuse-lite: 1.0.30001692
caniuse-lite: 1.0.30001702
optionalDependencies:
'@swc/helpers': 0.5.15
@ -4298,6 +4445,125 @@ snapshots:
- '@types/node'
optional: true
'@solid-devtools/debugger@0.26.0(solid-js@1.9.5)':
dependencies:
'@nothing-but/utils': 0.17.0
'@solid-devtools/shared': 0.19.0(solid-js@1.9.5)
'@solid-primitives/bounds': 0.0.122(solid-js@1.9.5)
'@solid-primitives/cursor': 0.0.115(solid-js@1.9.5)
'@solid-primitives/event-listener': 2.4.0(solid-js@1.9.5)
'@solid-primitives/keyboard': 1.3.0(solid-js@1.9.5)
'@solid-primitives/platform': 0.1.2(solid-js@1.9.5)
'@solid-primitives/rootless': 1.5.0(solid-js@1.9.5)
'@solid-primitives/scheduled': 1.5.0(solid-js@1.9.5)
'@solid-primitives/static-store': 0.0.8(solid-js@1.9.5)
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-devtools/logger@0.9.7(solid-js@1.9.5)':
dependencies:
'@nothing-but/utils': 0.17.0
'@solid-devtools/debugger': 0.26.0(solid-js@1.9.5)
'@solid-devtools/shared': 0.19.0(solid-js@1.9.5)
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-devtools/shared@0.19.0(solid-js@1.9.5)':
dependencies:
'@nothing-but/utils': 0.17.0
'@solid-primitives/event-listener': 2.4.0(solid-js@1.9.5)
'@solid-primitives/media': 2.3.0(solid-js@1.9.5)
'@solid-primitives/refs': 1.1.0(solid-js@1.9.5)
'@solid-primitives/rootless': 1.5.0(solid-js@1.9.5)
'@solid-primitives/scheduled': 1.5.0(solid-js@1.9.5)
'@solid-primitives/static-store': 0.0.8(solid-js@1.9.5)
'@solid-primitives/styles': 0.0.114(solid-js@1.9.5)
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/bounds@0.0.122(solid-js@1.9.5)':
dependencies:
'@solid-primitives/event-listener': 2.4.0(solid-js@1.9.5)
'@solid-primitives/resize-observer': 2.1.0(solid-js@1.9.5)
'@solid-primitives/static-store': 0.0.8(solid-js@1.9.5)
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/cursor@0.0.115(solid-js@1.9.5)':
dependencies:
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/event-listener@2.4.0(solid-js@1.9.5)':
dependencies:
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/keyboard@1.3.0(solid-js@1.9.5)':
dependencies:
'@solid-primitives/event-listener': 2.4.0(solid-js@1.9.5)
'@solid-primitives/rootless': 1.5.0(solid-js@1.9.5)
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/media@2.3.0(solid-js@1.9.5)':
dependencies:
'@solid-primitives/event-listener': 2.4.0(solid-js@1.9.5)
'@solid-primitives/rootless': 1.5.0(solid-js@1.9.5)
'@solid-primitives/static-store': 0.1.0(solid-js@1.9.5)
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/platform@0.1.2(solid-js@1.9.5)':
dependencies:
solid-js: 1.9.5
'@solid-primitives/refs@1.1.0(solid-js@1.9.5)':
dependencies:
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/resize-observer@2.1.0(solid-js@1.9.5)':
dependencies:
'@solid-primitives/event-listener': 2.4.0(solid-js@1.9.5)
'@solid-primitives/rootless': 1.5.0(solid-js@1.9.5)
'@solid-primitives/static-store': 0.1.0(solid-js@1.9.5)
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/rootless@1.5.0(solid-js@1.9.5)':
dependencies:
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/scheduled@1.5.0(solid-js@1.9.5)':
dependencies:
solid-js: 1.9.5
'@solid-primitives/static-store@0.0.8(solid-js@1.9.5)':
dependencies:
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/static-store@0.1.0(solid-js@1.9.5)':
dependencies:
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/styles@0.0.114(solid-js@1.9.5)':
dependencies:
'@solid-primitives/rootless': 1.5.0(solid-js@1.9.5)
'@solid-primitives/utils': 6.3.0(solid-js@1.9.5)
solid-js: 1.9.5
'@solid-primitives/utils@6.3.0(solid-js@1.9.5)':
dependencies:
solid-js: 1.9.5
'@solidjs/meta@0.29.4(solid-js@1.9.5)':
dependencies:
solid-js: 1.9.5
'@swc/core-darwin-arm64@1.10.12':
optional: true
@ -4355,8 +4621,21 @@ snapshots:
dependencies:
'@swc/counter': 0.1.3
'@tanstack/history@1.112.8': {}
'@tanstack/history@1.99.0': {}
'@tanstack/react-router@1.112.11(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
dependencies:
'@tanstack/history': 1.112.8
'@tanstack/react-store': 0.7.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
'@tanstack/router-core': 1.112.8
jsesc: 3.1.0
react: 19.0.0
react-dom: 19.0.0(react@19.0.0)
tiny-invariant: 1.3.3
tiny-warning: 1.0.3
'@tanstack/react-router@1.99.6(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
dependencies:
'@tanstack/history': 1.99.0
@ -4375,6 +4654,11 @@ snapshots:
react-dom: 19.0.0(react@19.0.0)
use-sync-external-store: 1.4.0(react@19.0.0)
'@tanstack/router-core@1.112.8':
dependencies:
'@tanstack/history': 1.112.8
'@tanstack/store': 0.7.0
'@tanstack/router-core@1.99.6':
dependencies:
'@tanstack/history': 1.99.0
@ -4431,6 +4715,24 @@ snapshots:
ansis: 3.10.0
diff: 7.0.0
'@tanstack/solid-router@1.112.11(solid-js@1.9.5)':
dependencies:
'@solid-devtools/logger': 0.9.7(solid-js@1.9.5)
'@solid-primitives/refs': 1.1.0(solid-js@1.9.5)
'@solidjs/meta': 0.29.4(solid-js@1.9.5)
'@tanstack/history': 1.112.8
'@tanstack/router-core': 1.112.8
'@tanstack/solid-store': 0.7.0(solid-js@1.9.5)
jsesc: 3.1.0
solid-js: 1.9.5
tiny-invariant: 1.3.3
tiny-warning: 1.0.3
'@tanstack/solid-store@0.7.0(solid-js@1.9.5)':
dependencies:
'@tanstack/store': 0.7.0
solid-js: 1.9.5
'@tanstack/store@0.7.0': {}
'@tanstack/virtual-file-routes@1.99.0': {}
@ -4890,6 +5192,8 @@ snapshots:
caniuse-lite@1.0.30001692: {}
caniuse-lite@1.0.30001702: {}
chai@5.1.2:
dependencies:
assertion-error: 2.0.1
@ -4999,6 +5303,8 @@ snapshots:
core-js@3.40.0: {}
core-js@3.41.0: {}
core-util-is@1.0.3:
optional: true
@ -5567,8 +5873,7 @@ snapshots:
jiti@1.21.7: {}
jiti@2.4.2:
optional: true
jiti@2.4.2: {}
jju@1.4.0:
optional: true
@ -5885,24 +6190,24 @@ snapshots:
outvariant@1.4.3:
optional: true
oxc-parser@0.48.1:
oxc-parser@0.54.0:
dependencies:
'@oxc-project/types': 0.48.1
'@oxc-project/types': 0.54.0
optionalDependencies:
'@oxc-parser/binding-darwin-arm64': 0.48.1
'@oxc-parser/binding-darwin-x64': 0.48.1
'@oxc-parser/binding-linux-arm64-gnu': 0.48.1
'@oxc-parser/binding-linux-arm64-musl': 0.48.1
'@oxc-parser/binding-linux-x64-gnu': 0.48.1
'@oxc-parser/binding-linux-x64-musl': 0.48.1
'@oxc-parser/binding-win32-arm64-msvc': 0.48.1
'@oxc-parser/binding-win32-x64-msvc': 0.48.1
'@oxc-parser/binding-darwin-arm64': 0.54.0
'@oxc-parser/binding-darwin-x64': 0.54.0
'@oxc-parser/binding-linux-arm64-gnu': 0.54.0
'@oxc-parser/binding-linux-arm64-musl': 0.54.0
'@oxc-parser/binding-linux-x64-gnu': 0.54.0
'@oxc-parser/binding-linux-x64-musl': 0.54.0
'@oxc-parser/binding-win32-arm64-msvc': 0.54.0
'@oxc-parser/binding-win32-x64-msvc': 0.54.0
oxc-walker@0.2.2(oxc-parser@0.48.1):
oxc-walker@0.2.2(oxc-parser@0.54.0):
dependencies:
estree-walker: 3.0.3
magic-regexp: 0.8.0
oxc-parser: 0.48.1
oxc-parser: 0.54.0
pac-proxy-agent@7.1.0:
dependencies:
@ -6201,10 +6506,10 @@ snapshots:
rrweb-cssom@0.8.0:
optional: true
rsbuild-plugin-dts@0.5.0(@microsoft/api-extractor@7.49.2(@types/node@22.12.0))(@rsbuild/core@1.2.11)(typescript@5.7.3):
rsbuild-plugin-dts@0.5.3(@microsoft/api-extractor@7.49.2(@types/node@22.12.0))(@rsbuild/core@1.2.15)(typescript@5.7.3):
dependencies:
'@ast-grep/napi': 0.35.0
'@rsbuild/core': 1.2.11
'@rsbuild/core': 1.2.15
magic-string: 0.30.17
picocolors: 1.1.1
tinyglobby: 0.2.12
@ -6254,6 +6559,12 @@ snapshots:
type-fest: 2.19.0
optional: true
seroval-plugins@1.2.1(seroval@1.2.1):
dependencies:
seroval: 1.2.1
seroval@1.2.1: {}
setimmediate@1.0.5:
optional: true
@ -6292,6 +6603,12 @@ snapshots:
smart-buffer: 4.2.0
optional: true
solid-js@1.9.5:
dependencies:
csstype: 3.1.3
seroval: 1.2.1
seroval-plugins: 1.2.1(seroval@1.2.1)
source-map-js@1.2.1: {}
source-map@0.6.1:

View File

@ -14,6 +14,11 @@ export default defineConfig({
build: false,
distPath: './dist',
},
source: {
entry: {
index: ['src/**/*.ts', '!**/*.spec.ts', '!src/testing/**/*'],
},
},
},
{
format: 'cjs',
@ -24,7 +29,11 @@ export default defineConfig({
entry: {
index: './src/index.ts',
'adapters/react': './src/adapters/react/index.ts',
'adapters/tanstack-router': './src/adapters/tanstack-router/index.ts',
'adapters/solid-js': './src/adapters/solid-js/index.ts',
'adapters/@tanstack/react-router':
'./src/adapters/@tanstack/react-router.ts',
'adapters/@tanstack/solid-router':
'./src/adapters/@tanstack/solid-router.ts',
},
},
},

View File

@ -0,0 +1,41 @@
import { InjectionToken, inject } from '@outposts/injection-js';
import type { AnyRouter } from '@tanstack/solid-router';
import type { AuthFeature } from '../../features';
import { AbstractRouter, ROUTER_ABS_PATH_PATTERN } from '../../router';
export type TanStackRouter = AnyRouter;
export const TANSTACK_ROUTER = new InjectionToken<TanStackRouter>(
'TANSTACK_ROUTER'
);
export class TanStackRouterAdapter implements AbstractRouter<string> {
private router = inject(TANSTACK_ROUTER);
navigateByUrl(url: string): void {
this.router.navigate({
href: ROUTER_ABS_PATH_PATTERN.test(url) ? url : `/${url}`,
});
}
getCurrentNavigation() {
return {
extractedUrl: this.router.state.location.href,
};
}
}
export function withTanstackRouter(router: TanStackRouter): AuthFeature {
return {
ɵproviders: [
{
provide: TANSTACK_ROUTER,
useValue: router,
},
{
provide: AbstractRouter,
useClass: TanStackRouterAdapter,
},
],
};
}

View File

@ -6,7 +6,7 @@ import {
useContext,
useMemo,
} from 'react';
import { OidcSecurityService } from '../..';
import { OidcSecurityService } from '../../oidc.security.service';
export const InjectorContextVoidInjector: Injector = {
get: <T>(_token: Type<T> | InjectionToken<T>, _notFoundValue?: T): T => {

View File

@ -0,0 +1,43 @@
import type { InjectionToken, Injector, Type } from '@outposts/injection-js';
import {
type FlowProps,
createContext,
createMemo,
mergeProps,
splitProps,
useContext,
} from 'solid-js';
import { OidcSecurityService } from '../../oidc.security.service';
export const InjectorContextVoidInjector: Injector = {
get: <T>(_token: Type<T> | InjectionToken<T>, _notFoundValue?: T): T => {
throw new Error('Please wrap with a InjectorContext.Provider first');
},
};
export const InjectorContext = createContext<Injector>(
InjectorContextVoidInjector
);
export function InjectorProvider(props: FlowProps<{ injector: Injector }>) {
const [local, others] = splitProps(props, ['injector']);
const providerProps = mergeProps(others, { value: local.injector });
return InjectorContext.Provider(providerProps);
}
export function useInjector() {
return useContext(InjectorContext);
}
export function useOidcClient() {
const injector = useInjector();
const oidcSecurityService = createMemo(() =>
injector.get(OidcSecurityService)
);
return {
injector,
oidcSecurityService: oidcSecurityService(),
};
}

View File

@ -1,16 +1,16 @@
import type { HttpFeature } from '@ngify/http';
import type { Provider } from '@outposts/injection-js';
import { DOCUMENT } from './dom';
import { provideHttpClient } from './http';
import { DOCUMENT } from '../dom';
import { provideHttpClient } from '../http';
import {
AbstractRouter,
VanillaHistoryRouter,
VanillaLocationRouter,
} from './router';
import { AbstractSecurityStorage } from './storage/abstract-security-storage';
import { DefaultLocalStorageService } from './storage/default-localstorage.service';
import { DefaultSessionStorageService } from './storage/default-sessionstorage.service';
import { PLATFORM_ID } from './utils/platform-provider/platform.provider';
} from '../router';
import { AbstractSecurityStorage } from '../storage/abstract-security-storage';
import { DefaultLocalStorageService } from '../storage/default-localstorage.service';
import { DefaultSessionStorageService } from '../storage/default-sessionstorage.service';
import { PLATFORM_ID } from '../utils/platform-provider/platform.provider';
/**
* A feature to be used with `provideAuth`.

8
src/features/index.ts Normal file
View File

@ -0,0 +1,8 @@
export type * from './core';
export * from './core';
export {
CHECK_AUTH_RESULT_EVENT,
withCheckAuthResultEvent,
type CheckAuthResultEventType,
type WithCheckAuthResultEventProps,
} from './with-check-auth-result-event';

View File

@ -0,0 +1,45 @@
import { InjectionToken, inject } from '@outposts/injection-js';
import { type Observable, filter, shareReplay } from 'rxjs';
import { EventTypes } from '../public-events/event-types';
import { PublicEventsService } from '../public-events/public-events.service';
import type { AuthFeature } from './core';
export type CheckAuthResultEventType =
| { type: EventTypes.CheckingAuthFinished }
| {
type: EventTypes.CheckingAuthFinishedWithError;
value: string;
};
export const CHECK_AUTH_RESULT_EVENT = new InjectionToken<
Observable<CheckAuthResultEventType>
>('CHECK_AUTH_RESULT_EVENT');
export interface WithCheckAuthResultEventProps {
shareReplayCount?: number;
}
export function withCheckAuthResultEvent({
shareReplayCount = 1,
}: WithCheckAuthResultEventProps = {}): AuthFeature {
return {
ɵproviders: [
{
provide: CHECK_AUTH_RESULT_EVENT,
useFactory: () => {
const publishEventService = inject(PublicEventsService);
return publishEventService.registerForEvents().pipe(
filter(
(e) =>
e.type === EventTypes.CheckingAuthFinishedWithError ||
e.type === EventTypes.CheckingAuthFinished
),
shareReplay(shareReplayCount)
);
},
deps: [PublicEventsService],
},
],
};
}