improvement: suggestion feature done, adjust i18n language key
This commit is contained in:
parent
04d72d3ca8
commit
f1d22f9d91
@ -1,9 +1,12 @@
|
|||||||
import { completeGoogle } from "search-engine-autocomplete";
|
import { completeGoogle } from "search-engine-autocomplete";
|
||||||
import { NextRequest } from "next/server"
|
import { NextRequest } from "next/server"
|
||||||
|
import { suggestionsResponse } from "@/global";
|
||||||
|
|
||||||
export async function GET(request: NextRequest) {
|
export async function GET(request: NextRequest) {
|
||||||
const query = request.nextUrl.searchParams.get('q')!;
|
const query = request.nextUrl.searchParams.get('q')!;
|
||||||
const language = "ja-JP";
|
const t = parseInt(request.nextUrl.searchParams.get('t') || "0") || null;
|
||||||
|
let language = request.nextUrl.searchParams.get('l');
|
||||||
|
if (language === null) language = 'en-US';
|
||||||
const data = await completeGoogle(query, language);
|
const data = await completeGoogle(query, language);
|
||||||
return new Response(JSON.stringify(data));
|
return new Response(JSON.stringify({...data, time: t} as suggestionsResponse));
|
||||||
}
|
}
|
||||||
|
@ -3,20 +3,31 @@ import SuggestionBox from "./suggestionBox";
|
|||||||
import Suggestion from "./suggestion";
|
import Suggestion from "./suggestion";
|
||||||
import { useRecoilValue } from "recoil";
|
import { useRecoilValue } from "recoil";
|
||||||
import { queryState } from "@/components/state/query";
|
import { queryState } from "@/components/state/query";
|
||||||
|
import { Suggestion as SuggestionType, Suggestions } from "search-engine-autocomplete";
|
||||||
|
import { useLocale } from "next-intl";
|
||||||
|
import { suggestionsResponse } from "@/global";
|
||||||
|
|
||||||
export default function () {
|
export default function () {
|
||||||
const [suggestion, setSuggetsion] = useState([]);
|
const [suggestion, setSuggetsion] = useState([] as string[]);
|
||||||
|
const [lastUpdate, setLastUpdate] = useState(0);
|
||||||
const query = useRecoilValue(queryState);
|
const query = useRecoilValue(queryState);
|
||||||
|
const lang = useLocale();
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
fetch(`/api/suggestion?q=${query}`)
|
const time = new Date().getTime().toString();
|
||||||
|
fetch(`/api/suggestion?q=${query}&l=${lang}&t=${time}`)
|
||||||
.then((res) => res.json())
|
.then((res) => res.json())
|
||||||
.then((data) => {
|
.then((data: suggestionsResponse) => {
|
||||||
setSuggetsion(data);
|
const suggestions = data.suggestions;
|
||||||
|
if (data.time < lastUpdate) return;
|
||||||
|
setSuggetsion((_) => {
|
||||||
|
return suggestions.map((s: SuggestionType) => s.suggestion);
|
||||||
|
});
|
||||||
|
setLastUpdate(new Date().getTime());
|
||||||
});
|
});
|
||||||
}, [query]);
|
}, [query]);
|
||||||
return (
|
return (
|
||||||
<SuggestionBox>
|
<SuggestionBox>
|
||||||
{suggestion.map((s: string) => {
|
{suggestion.slice(0, 10).map((s: string) => {
|
||||||
return <Suggestion key={s}>{s}</Suggestion>;
|
return <Suggestion key={s}>{s}</Suggestion>;
|
||||||
})}
|
})}
|
||||||
</SuggestionBox>
|
</SuggestionBox>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
export default function(props: { children: React.ReactNode }) {
|
export default function(props: { children: React.ReactNode }) {
|
||||||
return (
|
return (
|
||||||
<div className="relative bg-slate-200 dark:bg-zinc-800 w-11/12 sm:w-[700px] h-auto left-1/2
|
<div className={`relative bg-slate-200 dark:bg-zinc-800 w-11/12 sm:w-[700px] h-auto left-1/2
|
||||||
translate-x-[-50%] top-72 z-20 rounded overflow-hidden duration-250">
|
translate-x-[-50%] top-72 z-20 rounded overflow-hidden duration-250 ${props.children ? "opacity-100" : "opacity-0"}`}>
|
||||||
{props.children}
|
{props.children}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
9
global.d.ts
vendored
9
global.d.ts
vendored
@ -1,3 +1,5 @@
|
|||||||
|
import { Suggestion } from "search-engine-autocomplete";
|
||||||
|
|
||||||
type settings = {
|
type settings = {
|
||||||
version: number;
|
version: number;
|
||||||
elementBackdrop: boolean;
|
elementBackdrop: boolean;
|
||||||
@ -8,3 +10,10 @@ type settings = {
|
|||||||
[key: string]: string,
|
[key: string]: string,
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
type suggestionsResponse = {
|
||||||
|
suggestions: Suggestion[],
|
||||||
|
query: string,
|
||||||
|
verbatimRelevance: number,
|
||||||
|
time: number
|
||||||
|
}
|
6
i18n.ts
6
i18n.ts
@ -1,8 +1,8 @@
|
|||||||
import {notFound} from 'next/navigation';
|
import { notFound } from "next/navigation";
|
||||||
import {getRequestConfig} from 'next-intl/server';
|
import { getRequestConfig } from "next-intl/server";
|
||||||
|
|
||||||
// Can be imported from a shared config
|
// Can be imported from a shared config
|
||||||
const locales = ['en', 'zh'];
|
const locales = ["en-US", "zh-CN"];
|
||||||
|
|
||||||
export default getRequestConfig(async ({ locale }) => {
|
export default getRequestConfig(async ({ locale }) => {
|
||||||
// Validate that the incoming `locale` parameter is valid
|
// Validate that the incoming `locale` parameter is valid
|
||||||
|
@ -2,13 +2,13 @@ import createMiddleware from 'next-intl/middleware';
|
|||||||
|
|
||||||
export default createMiddleware({
|
export default createMiddleware({
|
||||||
// A list of all locales that are supported
|
// A list of all locales that are supported
|
||||||
locales: ['en', 'zh'],
|
locales: ['en-US', 'zh-CN'],
|
||||||
|
|
||||||
// Used when no locale matches
|
// Used when no locale matches
|
||||||
defaultLocale: 'en'
|
defaultLocale: 'en-US'
|
||||||
});
|
});
|
||||||
|
|
||||||
export const config = {
|
export const config = {
|
||||||
// Match only internationalized pathnames
|
// Match only internationalized pathnames
|
||||||
matcher: ['/', '/(zh|en)/:path*']
|
matcher: ['/', '/(zh-CN|en-US)/:path*']
|
||||||
};
|
};
|
@ -20,7 +20,7 @@
|
|||||||
"react": "^18.2.0",
|
"react": "^18.2.0",
|
||||||
"react-dom": "^18.2.0",
|
"react-dom": "^18.2.0",
|
||||||
"recoil": "^0.7.7",
|
"recoil": "^0.7.7",
|
||||||
"search-engine-autocomplete": "^0.4.2",
|
"search-engine-autocomplete": "^0.4.3",
|
||||||
"tailwind-merge": "^2.2.2",
|
"tailwind-merge": "^2.2.2",
|
||||||
"ts-node": "^10.9.2",
|
"ts-node": "^10.9.2",
|
||||||
"valid-url": "^1.0.9",
|
"valid-url": "^1.0.9",
|
||||||
@ -31,7 +31,7 @@
|
|||||||
"@testing-library/jest-dom": "^6.4.2",
|
"@testing-library/jest-dom": "^6.4.2",
|
||||||
"@testing-library/react": "^14.3.0",
|
"@testing-library/react": "^14.3.0",
|
||||||
"@types/jest": "^29.5.12",
|
"@types/jest": "^29.5.12",
|
||||||
"@types/node": "^20.12.6",
|
"@types/node": "^20.12.7",
|
||||||
"@types/punycode": "^2.1.4",
|
"@types/punycode": "^2.1.4",
|
||||||
"@types/react": "^18.2.75",
|
"@types/react": "^18.2.75",
|
||||||
"@types/react-dom": "^18.2.24",
|
"@types/react-dom": "^18.2.24",
|
||||||
|
104
pnpm-lock.yaml
104
pnpm-lock.yaml
@ -36,14 +36,14 @@ dependencies:
|
|||||||
specifier: ^0.7.7
|
specifier: ^0.7.7
|
||||||
version: 0.7.7(react-dom@18.2.0)(react@18.2.0)
|
version: 0.7.7(react-dom@18.2.0)(react@18.2.0)
|
||||||
search-engine-autocomplete:
|
search-engine-autocomplete:
|
||||||
specifier: ^0.4.2
|
specifier: ^0.4.3
|
||||||
version: 0.4.2
|
version: 0.4.3
|
||||||
tailwind-merge:
|
tailwind-merge:
|
||||||
specifier: ^2.2.2
|
specifier: ^2.2.2
|
||||||
version: 2.2.2
|
version: 2.2.2
|
||||||
ts-node:
|
ts-node:
|
||||||
specifier: ^10.9.2
|
specifier: ^10.9.2
|
||||||
version: 10.9.2(@types/node@20.12.6)(typescript@5.4.4)
|
version: 10.9.2(@types/node@20.12.7)(typescript@5.4.4)
|
||||||
valid-url:
|
valid-url:
|
||||||
specifier: ^1.0.9
|
specifier: ^1.0.9
|
||||||
version: 1.0.9
|
version: 1.0.9
|
||||||
@ -65,8 +65,8 @@ devDependencies:
|
|||||||
specifier: ^29.5.12
|
specifier: ^29.5.12
|
||||||
version: 29.5.12
|
version: 29.5.12
|
||||||
'@types/node':
|
'@types/node':
|
||||||
specifier: ^20.12.6
|
specifier: ^20.12.7
|
||||||
version: 20.12.6
|
version: 20.12.7
|
||||||
'@types/punycode':
|
'@types/punycode':
|
||||||
specifier: ^2.1.4
|
specifier: ^2.1.4
|
||||||
version: 2.1.4
|
version: 2.1.4
|
||||||
@ -84,7 +84,7 @@ devDependencies:
|
|||||||
version: 10.4.19(postcss@8.4.38)
|
version: 10.4.19(postcss@8.4.38)
|
||||||
jest:
|
jest:
|
||||||
specifier: ^29.7.0
|
specifier: ^29.7.0
|
||||||
version: 29.7.0(@types/node@20.12.6)(ts-node@10.9.2)
|
version: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
|
||||||
jest-environment-jsdom:
|
jest-environment-jsdom:
|
||||||
specifier: ^29.7.0
|
specifier: ^29.7.0
|
||||||
version: 29.7.0
|
version: 29.7.0
|
||||||
@ -570,7 +570,7 @@ packages:
|
|||||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
jest-message-util: 29.7.0
|
jest-message-util: 29.7.0
|
||||||
jest-util: 29.7.0
|
jest-util: 29.7.0
|
||||||
@ -591,14 +591,14 @@ packages:
|
|||||||
'@jest/test-result': 29.7.0
|
'@jest/test-result': 29.7.0
|
||||||
'@jest/transform': 29.7.0
|
'@jest/transform': 29.7.0
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
ansi-escapes: 4.3.2
|
ansi-escapes: 4.3.2
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
ci-info: 3.9.0
|
ci-info: 3.9.0
|
||||||
exit: 0.1.2
|
exit: 0.1.2
|
||||||
graceful-fs: 4.2.11
|
graceful-fs: 4.2.11
|
||||||
jest-changed-files: 29.7.0
|
jest-changed-files: 29.7.0
|
||||||
jest-config: 29.7.0(@types/node@20.12.6)(ts-node@10.9.2)
|
jest-config: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
|
||||||
jest-haste-map: 29.7.0
|
jest-haste-map: 29.7.0
|
||||||
jest-message-util: 29.7.0
|
jest-message-util: 29.7.0
|
||||||
jest-regex-util: 29.6.3
|
jest-regex-util: 29.6.3
|
||||||
@ -626,7 +626,7 @@ packages:
|
|||||||
dependencies:
|
dependencies:
|
||||||
'@jest/fake-timers': 29.7.0
|
'@jest/fake-timers': 29.7.0
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
jest-mock: 29.7.0
|
jest-mock: 29.7.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
@ -653,7 +653,7 @@ packages:
|
|||||||
dependencies:
|
dependencies:
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@sinonjs/fake-timers': 10.3.0
|
'@sinonjs/fake-timers': 10.3.0
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
jest-message-util: 29.7.0
|
jest-message-util: 29.7.0
|
||||||
jest-mock: 29.7.0
|
jest-mock: 29.7.0
|
||||||
jest-util: 29.7.0
|
jest-util: 29.7.0
|
||||||
@ -686,7 +686,7 @@ packages:
|
|||||||
'@jest/transform': 29.7.0
|
'@jest/transform': 29.7.0
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@jridgewell/trace-mapping': 0.3.25
|
'@jridgewell/trace-mapping': 0.3.25
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
collect-v8-coverage: 1.0.2
|
collect-v8-coverage: 1.0.2
|
||||||
exit: 0.1.2
|
exit: 0.1.2
|
||||||
@ -774,7 +774,7 @@ packages:
|
|||||||
'@jest/schemas': 29.6.3
|
'@jest/schemas': 29.6.3
|
||||||
'@types/istanbul-lib-coverage': 2.0.6
|
'@types/istanbul-lib-coverage': 2.0.6
|
||||||
'@types/istanbul-reports': 3.0.4
|
'@types/istanbul-reports': 3.0.4
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
'@types/yargs': 17.0.32
|
'@types/yargs': 17.0.32
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
dev: true
|
dev: true
|
||||||
@ -3194,7 +3194,7 @@ packages:
|
|||||||
chalk: 3.0.0
|
chalk: 3.0.0
|
||||||
css.escape: 1.5.1
|
css.escape: 1.5.1
|
||||||
dom-accessibility-api: 0.6.3
|
dom-accessibility-api: 0.6.3
|
||||||
jest: 29.7.0(@types/node@20.12.6)(ts-node@10.9.2)
|
jest: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
|
||||||
lodash: 4.17.21
|
lodash: 4.17.21
|
||||||
redent: 3.0.0
|
redent: 3.0.0
|
||||||
dev: true
|
dev: true
|
||||||
@ -3266,7 +3266,7 @@ packages:
|
|||||||
/@types/graceful-fs@4.1.9:
|
/@types/graceful-fs@4.1.9:
|
||||||
resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==}
|
resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@types/istanbul-lib-coverage@2.0.6:
|
/@types/istanbul-lib-coverage@2.0.6:
|
||||||
@ -3295,13 +3295,13 @@ packages:
|
|||||||
/@types/jsdom@20.0.1:
|
/@types/jsdom@20.0.1:
|
||||||
resolution: {integrity: sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==}
|
resolution: {integrity: sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
'@types/tough-cookie': 4.0.5
|
'@types/tough-cookie': 4.0.5
|
||||||
parse5: 7.1.2
|
parse5: 7.1.2
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@types/node@20.12.6:
|
/@types/node@20.12.7:
|
||||||
resolution: {integrity: sha512-3KurE8taB8GCvZBPngVbp0lk5CKi8M9f9k1rsADh0Evdz5SzJ+Q+Hx9uHoFGsLnLnd1xmkDQr2hVhlA0Mn0lKQ==}
|
resolution: {integrity: sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==}
|
||||||
dependencies:
|
dependencies:
|
||||||
undici-types: 5.26.5
|
undici-types: 5.26.5
|
||||||
|
|
||||||
@ -3466,7 +3466,7 @@ packages:
|
|||||||
postcss: ^8.1.0
|
postcss: ^8.1.0
|
||||||
dependencies:
|
dependencies:
|
||||||
browserslist: 4.23.0
|
browserslist: 4.23.0
|
||||||
caniuse-lite: 1.0.30001607
|
caniuse-lite: 1.0.30001608
|
||||||
fraction.js: 4.3.7
|
fraction.js: 4.3.7
|
||||||
normalize-range: 0.1.2
|
normalize-range: 0.1.2
|
||||||
picocolors: 1.0.0
|
picocolors: 1.0.0
|
||||||
@ -3583,8 +3583,8 @@ packages:
|
|||||||
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
|
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
dependencies:
|
dependencies:
|
||||||
caniuse-lite: 1.0.30001607
|
caniuse-lite: 1.0.30001608
|
||||||
electron-to-chromium: 1.4.730
|
electron-to-chromium: 1.4.731
|
||||||
node-releases: 2.0.14
|
node-releases: 2.0.14
|
||||||
update-browserslist-db: 1.0.13(browserslist@4.23.0)
|
update-browserslist-db: 1.0.13(browserslist@4.23.0)
|
||||||
|
|
||||||
@ -3642,8 +3642,8 @@ packages:
|
|||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/caniuse-lite@1.0.30001607:
|
/caniuse-lite@1.0.30001608:
|
||||||
resolution: {integrity: sha512-WcvhVRjXLKFB/kmOFVwELtMxyhq3iM/MvmXcyCe2PNf166c39mptscOc/45TTS96n2gpNV2z7+NakArTWZCQ3w==}
|
resolution: {integrity: sha512-cjUJTQkk9fQlJR2s4HMuPMvTiRggl0rAVMtthQuyOlDWuqHXqN8azLq+pi8B2TjwKJ32diHjUqRIKeFX4z1FoA==}
|
||||||
|
|
||||||
/chalk@2.4.2:
|
/chalk@2.4.2:
|
||||||
resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
|
resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
|
||||||
@ -3787,7 +3787,7 @@ packages:
|
|||||||
/convert-source-map@2.0.0:
|
/convert-source-map@2.0.0:
|
||||||
resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
|
resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
|
||||||
|
|
||||||
/create-jest@29.7.0(@types/node@20.12.6)(ts-node@10.9.2):
|
/create-jest@29.7.0(@types/node@20.12.7)(ts-node@10.9.2):
|
||||||
resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==}
|
resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==}
|
||||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
@ -3796,7 +3796,7 @@ packages:
|
|||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
exit: 0.1.2
|
exit: 0.1.2
|
||||||
graceful-fs: 4.2.11
|
graceful-fs: 4.2.11
|
||||||
jest-config: 29.7.0(@types/node@20.12.6)(ts-node@10.9.2)
|
jest-config: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
|
||||||
jest-util: 29.7.0
|
jest-util: 29.7.0
|
||||||
prompts: 2.4.2
|
prompts: 2.4.2
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
@ -3976,8 +3976,8 @@ packages:
|
|||||||
/eastasianwidth@0.2.0:
|
/eastasianwidth@0.2.0:
|
||||||
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
|
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
|
||||||
|
|
||||||
/electron-to-chromium@1.4.730:
|
/electron-to-chromium@1.4.731:
|
||||||
resolution: {integrity: sha512-oJRPo82XEqtQAobHpJIR3zW5YO3sSRRkPz2an4yxi1UvqhsGm54vR/wzTFV74a3soDOJ8CKW7ajOOX5ESzddwg==}
|
resolution: {integrity: sha512-+TqVfZjpRz2V/5SPpmJxq9qK620SC5SqCnxQIOi7i/U08ZDcTpKbT7Xjj9FU5CbXTMUb4fywbIr8C7cGv4hcjw==}
|
||||||
|
|
||||||
/emittery@0.13.1:
|
/emittery@0.13.1:
|
||||||
resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==}
|
resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==}
|
||||||
@ -4684,7 +4684,7 @@ packages:
|
|||||||
'@jest/expect': 29.7.0
|
'@jest/expect': 29.7.0
|
||||||
'@jest/test-result': 29.7.0
|
'@jest/test-result': 29.7.0
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
co: 4.6.0
|
co: 4.6.0
|
||||||
dedent: 1.5.1
|
dedent: 1.5.1
|
||||||
@ -4705,7 +4705,7 @@ packages:
|
|||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/jest-cli@29.7.0(@types/node@20.12.6)(ts-node@10.9.2):
|
/jest-cli@29.7.0(@types/node@20.12.7)(ts-node@10.9.2):
|
||||||
resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==}
|
resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==}
|
||||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
@ -4719,10 +4719,10 @@ packages:
|
|||||||
'@jest/test-result': 29.7.0
|
'@jest/test-result': 29.7.0
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
create-jest: 29.7.0(@types/node@20.12.6)(ts-node@10.9.2)
|
create-jest: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
|
||||||
exit: 0.1.2
|
exit: 0.1.2
|
||||||
import-local: 3.1.0
|
import-local: 3.1.0
|
||||||
jest-config: 29.7.0(@types/node@20.12.6)(ts-node@10.9.2)
|
jest-config: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
|
||||||
jest-util: 29.7.0
|
jest-util: 29.7.0
|
||||||
jest-validate: 29.7.0
|
jest-validate: 29.7.0
|
||||||
yargs: 17.7.2
|
yargs: 17.7.2
|
||||||
@ -4733,7 +4733,7 @@ packages:
|
|||||||
- ts-node
|
- ts-node
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/jest-config@29.7.0(@types/node@20.12.6)(ts-node@10.9.2):
|
/jest-config@29.7.0(@types/node@20.12.7)(ts-node@10.9.2):
|
||||||
resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==}
|
resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==}
|
||||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -4748,7 +4748,7 @@ packages:
|
|||||||
'@babel/core': 7.24.4
|
'@babel/core': 7.24.4
|
||||||
'@jest/test-sequencer': 29.7.0
|
'@jest/test-sequencer': 29.7.0
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
babel-jest: 29.7.0(@babel/core@7.24.4)
|
babel-jest: 29.7.0(@babel/core@7.24.4)
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
ci-info: 3.9.0
|
ci-info: 3.9.0
|
||||||
@ -4768,7 +4768,7 @@ packages:
|
|||||||
pretty-format: 29.7.0
|
pretty-format: 29.7.0
|
||||||
slash: 3.0.0
|
slash: 3.0.0
|
||||||
strip-json-comments: 3.1.1
|
strip-json-comments: 3.1.1
|
||||||
ts-node: 10.9.2(@types/node@20.12.6)(typescript@5.4.4)
|
ts-node: 10.9.2(@types/node@20.12.7)(typescript@5.4.4)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- babel-plugin-macros
|
- babel-plugin-macros
|
||||||
- supports-color
|
- supports-color
|
||||||
@ -4815,7 +4815,7 @@ packages:
|
|||||||
'@jest/fake-timers': 29.7.0
|
'@jest/fake-timers': 29.7.0
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/jsdom': 20.0.1
|
'@types/jsdom': 20.0.1
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
jest-mock: 29.7.0
|
jest-mock: 29.7.0
|
||||||
jest-util: 29.7.0
|
jest-util: 29.7.0
|
||||||
jsdom: 20.0.3
|
jsdom: 20.0.3
|
||||||
@ -4832,7 +4832,7 @@ packages:
|
|||||||
'@jest/environment': 29.7.0
|
'@jest/environment': 29.7.0
|
||||||
'@jest/fake-timers': 29.7.0
|
'@jest/fake-timers': 29.7.0
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
jest-mock: 29.7.0
|
jest-mock: 29.7.0
|
||||||
jest-util: 29.7.0
|
jest-util: 29.7.0
|
||||||
dev: true
|
dev: true
|
||||||
@ -4848,7 +4848,7 @@ packages:
|
|||||||
dependencies:
|
dependencies:
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/graceful-fs': 4.1.9
|
'@types/graceful-fs': 4.1.9
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
anymatch: 3.1.3
|
anymatch: 3.1.3
|
||||||
fb-watchman: 2.0.2
|
fb-watchman: 2.0.2
|
||||||
graceful-fs: 4.2.11
|
graceful-fs: 4.2.11
|
||||||
@ -4899,7 +4899,7 @@ packages:
|
|||||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
jest-util: 29.7.0
|
jest-util: 29.7.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
@ -4954,7 +4954,7 @@ packages:
|
|||||||
'@jest/test-result': 29.7.0
|
'@jest/test-result': 29.7.0
|
||||||
'@jest/transform': 29.7.0
|
'@jest/transform': 29.7.0
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
emittery: 0.13.1
|
emittery: 0.13.1
|
||||||
graceful-fs: 4.2.11
|
graceful-fs: 4.2.11
|
||||||
@ -4985,7 +4985,7 @@ packages:
|
|||||||
'@jest/test-result': 29.7.0
|
'@jest/test-result': 29.7.0
|
||||||
'@jest/transform': 29.7.0
|
'@jest/transform': 29.7.0
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
cjs-module-lexer: 1.2.3
|
cjs-module-lexer: 1.2.3
|
||||||
collect-v8-coverage: 1.0.2
|
collect-v8-coverage: 1.0.2
|
||||||
@ -5037,7 +5037,7 @@ packages:
|
|||||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
ci-info: 3.9.0
|
ci-info: 3.9.0
|
||||||
graceful-fs: 4.2.11
|
graceful-fs: 4.2.11
|
||||||
@ -5062,7 +5062,7 @@ packages:
|
|||||||
dependencies:
|
dependencies:
|
||||||
'@jest/test-result': 29.7.0
|
'@jest/test-result': 29.7.0
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
ansi-escapes: 4.3.2
|
ansi-escapes: 4.3.2
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
emittery: 0.13.1
|
emittery: 0.13.1
|
||||||
@ -5074,13 +5074,13 @@ packages:
|
|||||||
resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==}
|
resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==}
|
||||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
jest-util: 29.7.0
|
jest-util: 29.7.0
|
||||||
merge-stream: 2.0.0
|
merge-stream: 2.0.0
|
||||||
supports-color: 8.1.1
|
supports-color: 8.1.1
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/jest@29.7.0(@types/node@20.12.6)(ts-node@10.9.2):
|
/jest@29.7.0(@types/node@20.12.7)(ts-node@10.9.2):
|
||||||
resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==}
|
resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==}
|
||||||
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
@ -5093,7 +5093,7 @@ packages:
|
|||||||
'@jest/core': 29.7.0(ts-node@10.9.2)
|
'@jest/core': 29.7.0(ts-node@10.9.2)
|
||||||
'@jest/types': 29.6.3
|
'@jest/types': 29.6.3
|
||||||
import-local: 3.1.0
|
import-local: 3.1.0
|
||||||
jest-cli: 29.7.0(@types/node@20.12.6)(ts-node@10.9.2)
|
jest-cli: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- '@types/node'
|
- '@types/node'
|
||||||
- babel-plugin-macros
|
- babel-plugin-macros
|
||||||
@ -5388,7 +5388,7 @@ packages:
|
|||||||
'@next/env': 14.1.4
|
'@next/env': 14.1.4
|
||||||
'@swc/helpers': 0.5.2
|
'@swc/helpers': 0.5.2
|
||||||
busboy: 1.6.0
|
busboy: 1.6.0
|
||||||
caniuse-lite: 1.0.30001607
|
caniuse-lite: 1.0.30001608
|
||||||
graceful-fs: 4.2.11
|
graceful-fs: 4.2.11
|
||||||
postcss: 8.4.31
|
postcss: 8.4.31
|
||||||
react: 18.2.0
|
react: 18.2.0
|
||||||
@ -5611,7 +5611,7 @@ packages:
|
|||||||
dependencies:
|
dependencies:
|
||||||
lilconfig: 3.1.1
|
lilconfig: 3.1.1
|
||||||
postcss: 8.4.38
|
postcss: 8.4.38
|
||||||
ts-node: 10.9.2(@types/node@20.12.6)(typescript@5.4.4)
|
ts-node: 10.9.2(@types/node@20.12.7)(typescript@5.4.4)
|
||||||
yaml: 2.4.1
|
yaml: 2.4.1
|
||||||
|
|
||||||
/postcss-nested@6.0.1(postcss@8.4.38):
|
/postcss-nested@6.0.1(postcss@8.4.38):
|
||||||
@ -5898,8 +5898,8 @@ packages:
|
|||||||
compute-scroll-into-view: 3.1.0
|
compute-scroll-into-view: 3.1.0
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
/search-engine-autocomplete@0.4.2:
|
/search-engine-autocomplete@0.4.3:
|
||||||
resolution: {integrity: sha512-/aVUK+SEmU3IbAhLSh4j/b33gdOUkk5asQY0Qf9xDAhsuCcwScEQ2BBTaURox3OP/7LnRaAMnmi/hsMgWRo85A==}
|
resolution: {integrity: sha512-AqtfGrE+xFh89iNqRXxZ/H88fIzkTuftmcjMxRMTpbmLkSsGM4fJkx8N/xoe3OJYcWzjwj7cD2mdEMwBbxYcoQ==}
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
/semver@6.3.1:
|
/semver@6.3.1:
|
||||||
@ -6273,7 +6273,7 @@ packages:
|
|||||||
'@babel/core': 7.24.4
|
'@babel/core': 7.24.4
|
||||||
bs-logger: 0.2.6
|
bs-logger: 0.2.6
|
||||||
fast-json-stable-stringify: 2.1.0
|
fast-json-stable-stringify: 2.1.0
|
||||||
jest: 29.7.0(@types/node@20.12.6)(ts-node@10.9.2)
|
jest: 29.7.0(@types/node@20.12.7)(ts-node@10.9.2)
|
||||||
jest-util: 29.7.0
|
jest-util: 29.7.0
|
||||||
json5: 2.2.3
|
json5: 2.2.3
|
||||||
lodash.memoize: 4.1.2
|
lodash.memoize: 4.1.2
|
||||||
@ -6283,7 +6283,7 @@ packages:
|
|||||||
yargs-parser: 21.1.1
|
yargs-parser: 21.1.1
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/ts-node@10.9.2(@types/node@20.12.6)(typescript@5.4.4):
|
/ts-node@10.9.2(@types/node@20.12.7)(typescript@5.4.4):
|
||||||
resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==}
|
resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -6302,7 +6302,7 @@ packages:
|
|||||||
'@tsconfig/node12': 1.0.11
|
'@tsconfig/node12': 1.0.11
|
||||||
'@tsconfig/node14': 1.0.3
|
'@tsconfig/node14': 1.0.3
|
||||||
'@tsconfig/node16': 1.0.4
|
'@tsconfig/node16': 1.0.4
|
||||||
'@types/node': 20.12.6
|
'@types/node': 20.12.7
|
||||||
acorn: 8.11.3
|
acorn: 8.11.3
|
||||||
acorn-walk: 8.3.2
|
acorn-walk: 8.3.2
|
||||||
arg: 4.1.3
|
arg: 4.1.3
|
||||||
|
Loading…
Reference in New Issue
Block a user