Compare commits
10 Commits
e7b5d833d8
...
f3c4826142
Author | SHA1 | Date |
---|---|---|
Erin | f3c4826142 | |
かっこかり | 7d7a12d7d6 | |
dependabot[bot] | 887c709647 | |
かっこかり | 0e4b6d1dad | |
Juan Aguilar Santillana | 07f26bc8dd | |
syuilo | 366b79e459 | |
Kisaragi | 6b2072f4b1 | |
かっこかり | 1544ba9153 | |
かっこかり | be0906a6c7 | |
かっこかり | e0f54d6a68 |
|
@ -8,11 +8,16 @@
|
||||||
- 埋め込みコードやウェブサイトへの実装方法の詳細はMisskey Hubに掲載予定です
|
- 埋め込みコードやウェブサイトへの実装方法の詳細はMisskey Hubに掲載予定です
|
||||||
- Enhance: サイズ制限を超過するファイルをアップロードしようとした際にエラーを出すように
|
- Enhance: サイズ制限を超過するファイルをアップロードしようとした際にエラーを出すように
|
||||||
- Enhance: アイコンデコレーション管理画面にプレビューを追加
|
- Enhance: アイコンデコレーション管理画面にプレビューを追加
|
||||||
|
- Enhance: コントロールパネル内のファイル一覧でセンシティブなファイルを区別しやすく
|
||||||
- Fix: サーバーメトリクスが2つ以上あるとリロード直後の表示がおかしくなる問題を修正
|
- Fix: サーバーメトリクスが2つ以上あるとリロード直後の表示がおかしくなる問題を修正
|
||||||
|
- Fix: 月の違う同じ日はセパレータが表示されないのを修正
|
||||||
|
|
||||||
### Server
|
### Server
|
||||||
|
- Fix: アンテナの書き込み時にキーワードが与えられなかった場合のエラーをApiErrorとして投げるように
|
||||||
|
- この変更により、公式フロントエンドでは入力の不備が内部エラーとして報告される代わりに一般的なエラーダイアログで報告されます
|
||||||
- Fix: ファイルがサイズの制限を超えてアップロードされた際にエラーを返さなかった問題を修正
|
- Fix: ファイルがサイズの制限を超えてアップロードされた際にエラーを返さなかった問題を修正
|
||||||
|
- Fix: 外部ページを解析する際に、ページに紐づけられた関連リソースも読み込まれてしまう問題を修正
|
||||||
|
(Cherry-picked from https://activitypub.software/TransFem-org/Sharkey/-/commit/26e0412fbb91447c37e8fb06ffb0487346063bb8)
|
||||||
|
|
||||||
## 2024.8.0
|
## 2024.8.0
|
||||||
|
|
||||||
|
|
|
@ -100,7 +100,7 @@
|
||||||
"async-mutex": "0.5.0",
|
"async-mutex": "0.5.0",
|
||||||
"bcryptjs": "2.4.3",
|
"bcryptjs": "2.4.3",
|
||||||
"blurhash": "2.0.5",
|
"blurhash": "2.0.5",
|
||||||
"body-parser": "1.20.2",
|
"body-parser": "1.20.3",
|
||||||
"bullmq": "5.10.4",
|
"bullmq": "5.10.4",
|
||||||
"cacheable-lookup": "7.0.0",
|
"cacheable-lookup": "7.0.0",
|
||||||
"cbor": "9.0.2",
|
"cbor": "9.0.2",
|
||||||
|
@ -119,7 +119,7 @@
|
||||||
"fluent-ffmpeg": "2.1.3",
|
"fluent-ffmpeg": "2.1.3",
|
||||||
"form-data": "4.0.0",
|
"form-data": "4.0.0",
|
||||||
"got": "14.4.2",
|
"got": "14.4.2",
|
||||||
"happy-dom": "10.0.3",
|
"happy-dom": "15.6.1",
|
||||||
"hpagent": "1.2.0",
|
"hpagent": "1.2.0",
|
||||||
"htmlescape": "1.1.1",
|
"htmlescape": "1.1.1",
|
||||||
"http-link-header": "1.1.3",
|
"http-link-header": "1.1.3",
|
||||||
|
|
|
@ -207,8 +207,28 @@ export class ApRequestService {
|
||||||
|
|
||||||
if ((contentType ?? '').split(';')[0].trimEnd().toLowerCase() === 'text/html' && _followAlternate === true) {
|
if ((contentType ?? '').split(';')[0].trimEnd().toLowerCase() === 'text/html' && _followAlternate === true) {
|
||||||
const html = await res.text();
|
const html = await res.text();
|
||||||
const window = new Window();
|
const window = new Window({
|
||||||
|
settings: {
|
||||||
|
disableJavaScriptEvaluation: true,
|
||||||
|
disableJavaScriptFileLoading: true,
|
||||||
|
disableCSSFileLoading: true,
|
||||||
|
disableComputedStyleRendering: true,
|
||||||
|
handleDisabledFileLoadingAsSuccess: true,
|
||||||
|
navigation: {
|
||||||
|
disableMainFrameNavigation: true,
|
||||||
|
disableChildFrameNavigation: true,
|
||||||
|
disableChildPageNavigation: true,
|
||||||
|
disableFallbackToSetURL: true,
|
||||||
|
},
|
||||||
|
timer: {
|
||||||
|
maxTimeout: 0,
|
||||||
|
maxIntervalTime: 0,
|
||||||
|
maxIntervalIterations: 0,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
const document = window.document;
|
const document = window.document;
|
||||||
|
try {
|
||||||
document.documentElement.innerHTML = html;
|
document.documentElement.innerHTML = html;
|
||||||
|
|
||||||
const alternate = document.querySelector('head > link[rel="alternate"][type="application/activity+json"]');
|
const alternate = document.querySelector('head > link[rel="alternate"][type="application/activity+json"]');
|
||||||
|
@ -218,6 +238,11 @@ export class ApRequestService {
|
||||||
return await this.signedGet(href, user, false);
|
return await this.signedGet(href, user, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} catch (e) {
|
||||||
|
// something went wrong parsing the HTML, ignore the whole thing
|
||||||
|
} finally {
|
||||||
|
window.close();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//#endregion
|
//#endregion
|
||||||
|
|
||||||
|
|
|
@ -10,8 +10,9 @@
|
||||||
* The getter will return a .bind version of the function
|
* The getter will return a .bind version of the function
|
||||||
* and memoize the result against a symbol on the instance
|
* and memoize the result against a symbol on the instance
|
||||||
*/
|
*/
|
||||||
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||||
export function bindThis(target: any, key: string, descriptor: any) {
|
export function bindThis(target: any, key: string, descriptor: any) {
|
||||||
let fn = descriptor.value;
|
const fn = descriptor.value;
|
||||||
|
|
||||||
if (typeof fn !== 'function') {
|
if (typeof fn !== 'function') {
|
||||||
throw new TypeError(`@bindThis decorator can only be applied to methods not: ${typeof fn}`);
|
throw new TypeError(`@bindThis decorator can only be applied to methods not: ${typeof fn}`);
|
||||||
|
@ -21,26 +22,18 @@ export function bindThis(target: any, key: string, descriptor: any) {
|
||||||
configurable: true,
|
configurable: true,
|
||||||
get() {
|
get() {
|
||||||
// eslint-disable-next-line no-prototype-builtins
|
// eslint-disable-next-line no-prototype-builtins
|
||||||
if (this === target.prototype || this.hasOwnProperty(key) ||
|
if (this === target.prototype || this.hasOwnProperty(key)) {
|
||||||
typeof fn !== 'function') {
|
|
||||||
return fn;
|
return fn;
|
||||||
}
|
}
|
||||||
|
|
||||||
const boundFn = fn.bind(this);
|
const boundFn = fn.bind(this);
|
||||||
Object.defineProperty(this, key, {
|
Reflect.defineProperty(this, key, {
|
||||||
|
value: boundFn,
|
||||||
configurable: true,
|
configurable: true,
|
||||||
get() {
|
writable: true,
|
||||||
return boundFn;
|
|
||||||
},
|
|
||||||
set(value) {
|
|
||||||
fn = value;
|
|
||||||
delete this[key];
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
|
|
||||||
return boundFn;
|
return boundFn;
|
||||||
},
|
},
|
||||||
set(value: any) {
|
|
||||||
fn = value;
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,6 +34,12 @@ export const meta = {
|
||||||
code: 'TOO_MANY_ANTENNAS',
|
code: 'TOO_MANY_ANTENNAS',
|
||||||
id: 'faf47050-e8b5-438c-913c-db2b1576fde4',
|
id: 'faf47050-e8b5-438c-913c-db2b1576fde4',
|
||||||
},
|
},
|
||||||
|
|
||||||
|
emptyKeyword: {
|
||||||
|
message: 'Either keywords or excludeKeywords is required.',
|
||||||
|
code: 'EMPTY_KEYWORD',
|
||||||
|
id: '53ee222e-1ddd-4f9a-92e5-9fb82ddb463a',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
res: {
|
res: {
|
||||||
|
@ -87,7 +93,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
|
||||||
) {
|
) {
|
||||||
super(meta, paramDef, async (ps, me) => {
|
super(meta, paramDef, async (ps, me) => {
|
||||||
if (ps.keywords.flat().every(x => x === '') && ps.excludeKeywords.flat().every(x => x === '')) {
|
if (ps.keywords.flat().every(x => x === '') && ps.excludeKeywords.flat().every(x => x === '')) {
|
||||||
throw new Error('either keywords or excludeKeywords is required.');
|
throw new ApiError(meta.errors.emptyKeyword);
|
||||||
}
|
}
|
||||||
|
|
||||||
const currentAntennasCount = await this.antennasRepository.countBy({
|
const currentAntennasCount = await this.antennasRepository.countBy({
|
||||||
|
|
|
@ -32,6 +32,12 @@ export const meta = {
|
||||||
code: 'NO_SUCH_USER_LIST',
|
code: 'NO_SUCH_USER_LIST',
|
||||||
id: '1c6b35c9-943e-48c2-81e4-2844989407f7',
|
id: '1c6b35c9-943e-48c2-81e4-2844989407f7',
|
||||||
},
|
},
|
||||||
|
|
||||||
|
emptyKeyword: {
|
||||||
|
message: 'Either keywords or excludeKeywords is required.',
|
||||||
|
code: 'EMPTY_KEYWORD',
|
||||||
|
id: '721aaff6-4e1b-4d88-8de6-877fae9f68c4',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
res: {
|
res: {
|
||||||
|
@ -85,7 +91,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
|
||||||
super(meta, paramDef, async (ps, me) => {
|
super(meta, paramDef, async (ps, me) => {
|
||||||
if (ps.keywords && ps.excludeKeywords) {
|
if (ps.keywords && ps.excludeKeywords) {
|
||||||
if (ps.keywords.flat().every(x => x === '') && ps.excludeKeywords.flat().every(x => x === '')) {
|
if (ps.keywords.flat().every(x => x === '') && ps.excludeKeywords.flat().every(x => x === '')) {
|
||||||
throw new Error('either keywords or excludeKeywords is required.');
|
throw new ApiError(meta.errors.emptyKeyword);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Fetch the antenna
|
// Fetch the antenna
|
||||||
|
|
|
@ -228,6 +228,17 @@ describe('アンテナ', () => {
|
||||||
assert.deepStrictEqual(response, expected);
|
assert.deepStrictEqual(response, expected);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test('を作成する時キーワードが指定されていないとエラーになる', async () => {
|
||||||
|
await failedApiCall({
|
||||||
|
endpoint: 'antennas/create',
|
||||||
|
parameters: { ...defaultParam, keywords: [[]], excludeKeywords: [[]] },
|
||||||
|
user: alice
|
||||||
|
}, {
|
||||||
|
status: 400,
|
||||||
|
code: 'EMPTY_KEYWORD',
|
||||||
|
id: '53ee222e-1ddd-4f9a-92e5-9fb82ddb463a'
|
||||||
|
})
|
||||||
|
});
|
||||||
//#endregion
|
//#endregion
|
||||||
//#region 更新(antennas/update)
|
//#region 更新(antennas/update)
|
||||||
|
|
||||||
|
@ -255,6 +266,18 @@ describe('アンテナ', () => {
|
||||||
id: '1c6b35c9-943e-48c2-81e4-2844989407f7',
|
id: '1c6b35c9-943e-48c2-81e4-2844989407f7',
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
test('を変更する時キーワードが指定されていないとエラーになる', async () => {
|
||||||
|
const antenna = await successfulApiCall({ endpoint: 'antennas/create', parameters: defaultParam, user: alice });
|
||||||
|
await failedApiCall({
|
||||||
|
endpoint: 'antennas/update',
|
||||||
|
parameters: { ...defaultParam, antennaId: antenna.id, keywords: [[]], excludeKeywords: [[]] },
|
||||||
|
user: alice
|
||||||
|
}, {
|
||||||
|
status: 400,
|
||||||
|
code: 'EMPTY_KEYWORD',
|
||||||
|
id: '721aaff6-4e1b-4d88-8de6-877fae9f68c4'
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
//#endregion
|
//#endregion
|
||||||
//#region 表示(antennas/show)
|
//#region 表示(antennas/show)
|
||||||
|
|
|
@ -43,9 +43,9 @@ export default defineComponent({
|
||||||
setup(props, { slots, expose }) {
|
setup(props, { slots, expose }) {
|
||||||
const $style = useCssModule(); // カスタムレンダラなので使っても大丈夫
|
const $style = useCssModule(); // カスタムレンダラなので使っても大丈夫
|
||||||
|
|
||||||
function getDateText(time: string) {
|
function getDateText(dateInstance: Date) {
|
||||||
const date = new Date(time).getDate();
|
const date = dateInstance.getDate();
|
||||||
const month = new Date(time).getMonth() + 1;
|
const month = dateInstance.getMonth() + 1;
|
||||||
return i18n.tsx.monthAndDay({
|
return i18n.tsx.monthAndDay({
|
||||||
month: month.toString(),
|
month: month.toString(),
|
||||||
day: date.toString(),
|
day: date.toString(),
|
||||||
|
@ -62,9 +62,16 @@ export default defineComponent({
|
||||||
})[0];
|
})[0];
|
||||||
if (el.key == null && item.id) el.key = item.id;
|
if (el.key == null && item.id) el.key = item.id;
|
||||||
|
|
||||||
|
const date = new Date(item.createdAt);
|
||||||
|
const nextDate = props.items[i + 1] ? new Date(props.items[i + 1].createdAt) : null;
|
||||||
|
|
||||||
if (
|
if (
|
||||||
i !== props.items.length - 1 &&
|
i !== props.items.length - 1 &&
|
||||||
new Date(item.createdAt).getDate() !== new Date(props.items[i + 1].createdAt).getDate()
|
nextDate != null && (
|
||||||
|
date.getFullYear() !== nextDate.getFullYear() ||
|
||||||
|
date.getMonth() !== nextDate.getMonth() ||
|
||||||
|
date.getDate() !== nextDate.getDate()
|
||||||
|
)
|
||||||
) {
|
) {
|
||||||
const separator = h('div', {
|
const separator = h('div', {
|
||||||
class: $style['separator'],
|
class: $style['separator'],
|
||||||
|
@ -78,12 +85,12 @@ export default defineComponent({
|
||||||
h('i', {
|
h('i', {
|
||||||
class: `ti ti-chevron-up ${$style['date-1-icon']}`,
|
class: `ti ti-chevron-up ${$style['date-1-icon']}`,
|
||||||
}),
|
}),
|
||||||
getDateText(item.createdAt),
|
getDateText(date),
|
||||||
]),
|
]),
|
||||||
h('span', {
|
h('span', {
|
||||||
class: $style['date-2'],
|
class: $style['date-2'],
|
||||||
}, [
|
}, [
|
||||||
getDateText(props.items[i + 1].createdAt),
|
getDateText(nextDate),
|
||||||
h('i', {
|
h('i', {
|
||||||
class: `ti ti-chevron-down ${$style['date-2-icon']}`,
|
class: `ti ti-chevron-down ${$style['date-2-icon']}`,
|
||||||
}),
|
}),
|
||||||
|
|
|
@ -4,7 +4,13 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div ref="thumbnail" :class="$style.root">
|
<div
|
||||||
|
ref="thumbnail"
|
||||||
|
:class="[
|
||||||
|
$style.root,
|
||||||
|
{ [$style.sensitiveHighlight]: highlightWhenSensitive && file.isSensitive },
|
||||||
|
]"
|
||||||
|
>
|
||||||
<ImgWithBlurhash v-if="isThumbnailAvailable" :hash="file.blurhash" :src="file.thumbnailUrl" :alt="file.name" :title="file.name" :cover="fit !== 'contain'"/>
|
<ImgWithBlurhash v-if="isThumbnailAvailable" :hash="file.blurhash" :src="file.thumbnailUrl" :alt="file.name" :title="file.name" :cover="fit !== 'contain'"/>
|
||||||
<i v-else-if="is === 'image'" class="ti ti-photo" :class="$style.icon"></i>
|
<i v-else-if="is === 'image'" class="ti ti-photo" :class="$style.icon"></i>
|
||||||
<i v-else-if="is === 'video'" class="ti ti-video" :class="$style.icon"></i>
|
<i v-else-if="is === 'video'" class="ti ti-video" :class="$style.icon"></i>
|
||||||
|
@ -27,6 +33,7 @@ import ImgWithBlurhash from '@/components/MkImgWithBlurhash.vue';
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
file: Misskey.entities.DriveFile;
|
file: Misskey.entities.DriveFile;
|
||||||
fit: 'cover' | 'contain';
|
fit: 'cover' | 'contain';
|
||||||
|
highlightWhenSensitive?: boolean;
|
||||||
}>();
|
}>();
|
||||||
|
|
||||||
const is = computed(() => {
|
const is = computed(() => {
|
||||||
|
@ -67,6 +74,18 @@ const isThumbnailAvailable = computed(() => {
|
||||||
overflow: clip;
|
overflow: clip;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.sensitiveHighlight::after {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
pointer-events: none;
|
||||||
|
border-radius: inherit;
|
||||||
|
box-shadow: inset 0 0 0 4px var(--warn);
|
||||||
|
}
|
||||||
|
|
||||||
.iconSub {
|
.iconSub {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 30%;
|
width: 30%;
|
||||||
|
|
|
@ -14,7 +14,7 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
class="file _button"
|
class="file _button"
|
||||||
>
|
>
|
||||||
<div v-if="file.isSensitive" class="sensitive-label">{{ i18n.ts.sensitive }}</div>
|
<div v-if="file.isSensitive" class="sensitive-label">{{ i18n.ts.sensitive }}</div>
|
||||||
<MkDriveFileThumbnail class="thumbnail" :file="file" fit="contain"/>
|
<MkDriveFileThumbnail class="thumbnail" :file="file" fit="contain" :highlightWhenSensitive="true"/>
|
||||||
<div v-if="viewMode === 'list'" class="body">
|
<div v-if="viewMode === 'list'" class="body">
|
||||||
<div>
|
<div>
|
||||||
<small style="opacity: 0.7;">{{ file.name }}</small>
|
<small style="opacity: 0.7;">{{ file.name }}</small>
|
||||||
|
|
|
@ -63,7 +63,7 @@ async function detachAndDeleteMedia(file: Misskey.entities.DriveFile) {
|
||||||
|
|
||||||
const { canceled } = await os.confirm({
|
const { canceled } = await os.confirm({
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
text: i18n.t('driveFileDeleteConfirm', { name: file.name }),
|
text: i18n.tsx.driveFileDeleteConfirm({ name: file.name }),
|
||||||
});
|
});
|
||||||
|
|
||||||
if (canceled) return;
|
if (canceled) return;
|
||||||
|
|
|
@ -6,12 +6,12 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
<template>
|
<template>
|
||||||
<div class="_gaps_m">
|
<div class="_gaps_m">
|
||||||
<div :class="$style.buttons">
|
<div :class="$style.buttons">
|
||||||
<MkButton inline primary @click="saveNew">{{ ts._preferencesBackups.saveNew }}</MkButton>
|
<MkButton inline primary @click="saveNew">{{ i18n.ts._preferencesBackups.saveNew }}</MkButton>
|
||||||
<MkButton inline @click="loadFile">{{ ts._preferencesBackups.loadFile }}</MkButton>
|
<MkButton inline @click="loadFile">{{ i18n.ts._preferencesBackups.loadFile }}</MkButton>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<FormSection>
|
<FormSection>
|
||||||
<template #label>{{ ts._preferencesBackups.list }}</template>
|
<template #label>{{ i18n.ts._preferencesBackups.list }}</template>
|
||||||
<template v-if="profiles && Object.keys(profiles).length > 0">
|
<template v-if="profiles && Object.keys(profiles).length > 0">
|
||||||
<div class="_gaps_s">
|
<div class="_gaps_s">
|
||||||
<div
|
<div
|
||||||
|
@ -23,13 +23,13 @@ SPDX-License-Identifier: AGPL-3.0-only
|
||||||
@contextmenu.prevent.stop="$event => menu($event, id)"
|
@contextmenu.prevent.stop="$event => menu($event, id)"
|
||||||
>
|
>
|
||||||
<div :class="$style.profileName">{{ profile.name }}</div>
|
<div :class="$style.profileName">{{ profile.name }}</div>
|
||||||
<div :class="$style.profileTime">{{ t('_preferencesBackups.createdAt', { date: (new Date(profile.createdAt)).toLocaleDateString(), time: (new Date(profile.createdAt)).toLocaleTimeString() }) }}</div>
|
<div :class="$style.profileTime">{{ i18n.tsx._preferencesBackups.createdAt({ date: (new Date(profile.createdAt)).toLocaleDateString(), time: (new Date(profile.createdAt)).toLocaleTimeString() }) }}</div>
|
||||||
<div v-if="profile.updatedAt" :class="$style.profileTime">{{ t('_preferencesBackups.updatedAt', { date: (new Date(profile.updatedAt)).toLocaleDateString(), time: (new Date(profile.updatedAt)).toLocaleTimeString() }) }}</div>
|
<div v-if="profile.updatedAt" :class="$style.profileTime">{{ i18n.tsx._preferencesBackups.updatedAt({ date: (new Date(profile.updatedAt)).toLocaleDateString(), time: (new Date(profile.updatedAt)).toLocaleTimeString() }) }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<div v-else-if="profiles">
|
<div v-else-if="profiles">
|
||||||
<MkInfo>{{ ts._preferencesBackups.noBackups }}</MkInfo>
|
<MkInfo>{{ i18n.ts._preferencesBackups.noBackups }}</MkInfo>
|
||||||
</div>
|
</div>
|
||||||
<MkLoading v-else/>
|
<MkLoading v-else/>
|
||||||
</FormSection>
|
</FormSection>
|
||||||
|
@ -52,7 +52,6 @@ import { i18n } from '@/i18n.js';
|
||||||
import { version, host } from '@@/js/config.js';
|
import { version, host } from '@@/js/config.js';
|
||||||
import { definePageMetadata } from '@/scripts/page-metadata.js';
|
import { definePageMetadata } from '@/scripts/page-metadata.js';
|
||||||
import { miLocalStorage } from '@/local-storage.js';
|
import { miLocalStorage } from '@/local-storage.js';
|
||||||
const { t, ts } = i18n;
|
|
||||||
|
|
||||||
const defaultStoreSaveKeys: (keyof typeof defaultStore['state'])[] = [
|
const defaultStoreSaveKeys: (keyof typeof defaultStore['state'])[] = [
|
||||||
'collapseRenotes',
|
'collapseRenotes',
|
||||||
|
@ -201,15 +200,15 @@ async function saveNew(): Promise<void> {
|
||||||
if (!profiles.value) return;
|
if (!profiles.value) return;
|
||||||
|
|
||||||
const { canceled, result: name } = await os.inputText({
|
const { canceled, result: name } = await os.inputText({
|
||||||
title: ts._preferencesBackups.inputName,
|
title: i18n.ts._preferencesBackups.inputName,
|
||||||
default: '',
|
default: '',
|
||||||
});
|
});
|
||||||
if (canceled) return;
|
if (canceled) return;
|
||||||
|
|
||||||
if (Object.values(profiles.value).some(x => x.name === name)) {
|
if (Object.values(profiles.value).some(x => x.name === name)) {
|
||||||
return os.alert({
|
return os.alert({
|
||||||
title: ts._preferencesBackups.cannotSave,
|
title: i18n.ts._preferencesBackups.cannotSave,
|
||||||
text: t('_preferencesBackups.nameAlreadyExists', { name }),
|
text: i18n.tsx._preferencesBackups.nameAlreadyExists({ name }),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -238,8 +237,8 @@ function loadFile(): void {
|
||||||
if (file.type !== 'application/json') {
|
if (file.type !== 'application/json') {
|
||||||
return os.alert({
|
return os.alert({
|
||||||
type: 'error',
|
type: 'error',
|
||||||
title: ts._preferencesBackups.cannotLoad,
|
title: i18n.ts._preferencesBackups.cannotLoad,
|
||||||
text: ts._preferencesBackups.invalidFile,
|
text: i18n.ts._preferencesBackups.invalidFile,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -250,7 +249,7 @@ function loadFile(): void {
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
return os.alert({
|
return os.alert({
|
||||||
type: 'error',
|
type: 'error',
|
||||||
title: ts._preferencesBackups.cannotLoad,
|
title: i18n.ts._preferencesBackups.cannotLoad,
|
||||||
text: (err as any)?.message ?? '',
|
text: (err as any)?.message ?? '',
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -276,8 +275,8 @@ async function applyProfile(id: string): Promise<void> {
|
||||||
|
|
||||||
const { canceled: cancel1 } = await os.confirm({
|
const { canceled: cancel1 } = await os.confirm({
|
||||||
type: 'warning',
|
type: 'warning',
|
||||||
title: ts._preferencesBackups.apply,
|
title: i18n.ts._preferencesBackups.apply,
|
||||||
text: t('_preferencesBackups.applyConfirm', { name: profile.name }),
|
text: i18n.tsx._preferencesBackups.applyConfirm({ name: profile.name }),
|
||||||
});
|
});
|
||||||
if (cancel1) return;
|
if (cancel1) return;
|
||||||
|
|
||||||
|
@ -322,7 +321,7 @@ async function applyProfile(id: string): Promise<void> {
|
||||||
|
|
||||||
const { canceled: cancel2 } = await os.confirm({
|
const { canceled: cancel2 } = await os.confirm({
|
||||||
type: 'info',
|
type: 'info',
|
||||||
text: ts.reloadToApplySetting,
|
text: i18n.ts.reloadToApplySetting,
|
||||||
});
|
});
|
||||||
if (cancel2) return;
|
if (cancel2) return;
|
||||||
|
|
||||||
|
@ -334,8 +333,8 @@ async function deleteProfile(id: string): Promise<void> {
|
||||||
|
|
||||||
const { canceled } = await os.confirm({
|
const { canceled } = await os.confirm({
|
||||||
type: 'info',
|
type: 'info',
|
||||||
title: ts.delete,
|
title: i18n.ts.delete,
|
||||||
text: t('deleteAreYouSure', { x: profiles.value[id].name }),
|
text: i18n.tsx.deleteAreYouSure({ x: profiles.value[id].name }),
|
||||||
});
|
});
|
||||||
if (canceled) return;
|
if (canceled) return;
|
||||||
|
|
||||||
|
@ -350,8 +349,8 @@ async function save(id: string): Promise<void> {
|
||||||
|
|
||||||
const { canceled } = await os.confirm({
|
const { canceled } = await os.confirm({
|
||||||
type: 'info',
|
type: 'info',
|
||||||
title: ts._preferencesBackups.save,
|
title: i18n.ts._preferencesBackups.save,
|
||||||
text: t('_preferencesBackups.saveConfirm', { name }),
|
text: i18n.tsx._preferencesBackups.saveConfirm({ name }),
|
||||||
});
|
});
|
||||||
if (canceled) return;
|
if (canceled) return;
|
||||||
|
|
||||||
|
@ -370,15 +369,15 @@ async function rename(id: string): Promise<void> {
|
||||||
if (!profiles.value) return;
|
if (!profiles.value) return;
|
||||||
|
|
||||||
const { canceled: cancel1, result: name } = await os.inputText({
|
const { canceled: cancel1, result: name } = await os.inputText({
|
||||||
title: ts._preferencesBackups.inputName,
|
title: i18n.ts._preferencesBackups.inputName,
|
||||||
default: '',
|
default: '',
|
||||||
});
|
});
|
||||||
if (cancel1 || profiles.value[id].name === name) return;
|
if (cancel1 || profiles.value[id].name === name) return;
|
||||||
|
|
||||||
if (Object.values(profiles.value).some(x => x.name === name)) {
|
if (Object.values(profiles.value).some(x => x.name === name)) {
|
||||||
return os.alert({
|
return os.alert({
|
||||||
title: ts._preferencesBackups.cannotSave,
|
title: i18n.ts._preferencesBackups.cannotSave,
|
||||||
text: t('_preferencesBackups.nameAlreadyExists', { name }),
|
text: i18n.tsx._preferencesBackups.nameAlreadyExists({ name }),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -386,8 +385,8 @@ async function rename(id: string): Promise<void> {
|
||||||
|
|
||||||
const { canceled: cancel2 } = await os.confirm({
|
const { canceled: cancel2 } = await os.confirm({
|
||||||
type: 'info',
|
type: 'info',
|
||||||
title: ts.rename,
|
title: i18n.ts.rename,
|
||||||
text: t('_preferencesBackups.renameConfirm', { old: registry.name, new: name }),
|
text: i18n.tsx._preferencesBackups.renameConfirm({ old: registry.name, new: name }),
|
||||||
});
|
});
|
||||||
if (cancel2) return;
|
if (cancel2) return;
|
||||||
|
|
||||||
|
@ -399,25 +398,25 @@ function menu(ev: MouseEvent, profileId: string) {
|
||||||
if (!profiles.value) return;
|
if (!profiles.value) return;
|
||||||
|
|
||||||
return os.popupMenu([{
|
return os.popupMenu([{
|
||||||
text: ts._preferencesBackups.apply,
|
text: i18n.ts._preferencesBackups.apply,
|
||||||
icon: 'ti ti-check',
|
icon: 'ti ti-check',
|
||||||
action: () => applyProfile(profileId),
|
action: () => applyProfile(profileId),
|
||||||
}, {
|
}, {
|
||||||
type: 'a',
|
type: 'a',
|
||||||
text: ts.download,
|
text: i18n.ts.download,
|
||||||
icon: 'ti ti-download',
|
icon: 'ti ti-download',
|
||||||
href: URL.createObjectURL(new Blob([JSON.stringify(profiles.value[profileId], null, 2)], { type: 'application/json' })),
|
href: URL.createObjectURL(new Blob([JSON.stringify(profiles.value[profileId], null, 2)], { type: 'application/json' })),
|
||||||
download: `${profiles.value[profileId].name}.json`,
|
download: `${profiles.value[profileId].name}.json`,
|
||||||
}, { type: 'divider' }, {
|
}, { type: 'divider' }, {
|
||||||
text: ts.rename,
|
text: i18n.ts.rename,
|
||||||
icon: 'ti ti-forms',
|
icon: 'ti ti-forms',
|
||||||
action: () => rename(profileId),
|
action: () => rename(profileId),
|
||||||
}, {
|
}, {
|
||||||
text: ts._preferencesBackups.save,
|
text: i18n.ts._preferencesBackups.save,
|
||||||
icon: 'ti ti-device-floppy',
|
icon: 'ti ti-device-floppy',
|
||||||
action: () => save(profileId),
|
action: () => save(profileId),
|
||||||
}, { type: 'divider' }, {
|
}, { type: 'divider' }, {
|
||||||
text: ts.delete,
|
text: i18n.ts.delete,
|
||||||
icon: 'ti ti-trash',
|
icon: 'ti ti-trash',
|
||||||
action: () => deleteProfile(profileId),
|
action: () => deleteProfile(profileId),
|
||||||
danger: true,
|
danger: true,
|
||||||
|
@ -439,7 +438,7 @@ onUnmounted(() => {
|
||||||
});
|
});
|
||||||
|
|
||||||
definePageMetadata(() => ({
|
definePageMetadata(() => ({
|
||||||
title: ts.preferencesBackups,
|
title: i18n.ts.preferencesBackups,
|
||||||
icon: 'ti ti-device-floppy',
|
icon: 'ti ti-device-floppy',
|
||||||
}));
|
}));
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
* SPDX-License-Identifier: AGPL-3.0-only
|
* SPDX-License-Identifier: AGPL-3.0-only
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { getHighlighterCore, loadWasm } from 'shiki/core';
|
import { createHighlighterCore, loadWasm } from 'shiki/core';
|
||||||
import darkPlus from 'shiki/themes/dark-plus.mjs';
|
import darkPlus from 'shiki/themes/dark-plus.mjs';
|
||||||
import { bundledThemesInfo } from 'shiki/themes';
|
import { bundledThemesInfo } from 'shiki/themes';
|
||||||
import { bundledLanguagesInfo } from 'shiki/langs';
|
import { bundledLanguagesInfo } from 'shiki/langs';
|
||||||
|
@ -69,7 +69,7 @@ async function initHighlighter() {
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const jsLangInfo = bundledLanguagesInfo.find(t => t.id === 'javascript');
|
const jsLangInfo = bundledLanguagesInfo.find(t => t.id === 'javascript');
|
||||||
const highlighter = await getHighlighterCore({
|
const highlighter = await createHighlighterCore({
|
||||||
themes,
|
themes,
|
||||||
langs: [
|
langs: [
|
||||||
...(jsLangInfo ? [async () => await jsLangInfo.import()] : []),
|
...(jsLangInfo ? [async () => await jsLangInfo.import()] : []),
|
||||||
|
|
292
pnpm-lock.yaml
292
pnpm-lock.yaml
|
@ -189,8 +189,8 @@ importers:
|
||||||
specifier: 2.0.5
|
specifier: 2.0.5
|
||||||
version: 2.0.5
|
version: 2.0.5
|
||||||
body-parser:
|
body-parser:
|
||||||
specifier: 1.20.2
|
specifier: 1.20.3
|
||||||
version: 1.20.2
|
version: 1.20.3
|
||||||
bullmq:
|
bullmq:
|
||||||
specifier: 5.10.4
|
specifier: 5.10.4
|
||||||
version: 5.10.4
|
version: 5.10.4
|
||||||
|
@ -246,8 +246,8 @@ importers:
|
||||||
specifier: 14.4.2
|
specifier: 14.4.2
|
||||||
version: 14.4.2
|
version: 14.4.2
|
||||||
happy-dom:
|
happy-dom:
|
||||||
specifier: 10.0.3
|
specifier: 15.6.1
|
||||||
version: 10.0.3
|
version: 15.6.1
|
||||||
hpagent:
|
hpagent:
|
||||||
specifier: 1.2.0
|
specifier: 1.2.0
|
||||||
version: 1.2.0
|
version: 1.2.0
|
||||||
|
@ -1202,7 +1202,7 @@ importers:
|
||||||
version: 7.17.0(eslint@9.8.0)(typescript@5.5.4)
|
version: 7.17.0(eslint@9.8.0)(typescript@5.5.4)
|
||||||
'@vitest/coverage-v8':
|
'@vitest/coverage-v8':
|
||||||
specifier: 1.6.0
|
specifier: 1.6.0
|
||||||
version: 1.6.0(vitest@1.6.0(@types/node@20.14.12)(happy-dom@10.0.3)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3))
|
version: 1.6.0(vitest@1.6.0(@types/node@20.14.12)(happy-dom@10.0.3)(jsdom@24.1.1(bufferutil@4.0.8)(utf-8-validate@6.0.4))(sass@1.77.8)(terser@5.31.3))
|
||||||
'@vue/runtime-core':
|
'@vue/runtime-core':
|
||||||
specifier: 3.4.37
|
specifier: 3.4.37
|
||||||
version: 3.4.37
|
version: 3.4.37
|
||||||
|
@ -6132,6 +6132,10 @@ packages:
|
||||||
resolution: {integrity: sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==}
|
resolution: {integrity: sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==}
|
||||||
engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
|
engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
|
||||||
|
|
||||||
|
body-parser@1.20.3:
|
||||||
|
resolution: {integrity: sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==}
|
||||||
|
engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
|
||||||
|
|
||||||
boolbase@1.0.0:
|
boolbase@1.0.0:
|
||||||
resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
|
resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
|
||||||
|
|
||||||
|
@ -6258,6 +6262,10 @@ packages:
|
||||||
call-bind@1.0.2:
|
call-bind@1.0.2:
|
||||||
resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==}
|
resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==}
|
||||||
|
|
||||||
|
call-bind@1.0.7:
|
||||||
|
resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==}
|
||||||
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
call-me-maybe@1.0.2:
|
call-me-maybe@1.0.2:
|
||||||
resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==}
|
resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==}
|
||||||
|
|
||||||
|
@ -6847,6 +6855,10 @@ packages:
|
||||||
resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==}
|
resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
|
|
||||||
|
define-data-property@1.1.4:
|
||||||
|
resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
|
||||||
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
define-lazy-prop@2.0.0:
|
define-lazy-prop@2.0.0:
|
||||||
resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
|
resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
|
||||||
engines: {node: '>=8'}
|
engines: {node: '>=8'}
|
||||||
|
@ -7055,6 +7067,14 @@ packages:
|
||||||
resolution: {integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==}
|
resolution: {integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==}
|
||||||
engines: {node: '>= 0.4'}
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
|
es-define-property@1.0.0:
|
||||||
|
resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==}
|
||||||
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
|
es-errors@1.3.0:
|
||||||
|
resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
|
||||||
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
es-get-iterator@1.1.3:
|
es-get-iterator@1.1.3:
|
||||||
resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==}
|
resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==}
|
||||||
|
|
||||||
|
@ -7615,6 +7635,10 @@ packages:
|
||||||
get-intrinsic@1.2.1:
|
get-intrinsic@1.2.1:
|
||||||
resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==}
|
resolution: {integrity: sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==}
|
||||||
|
|
||||||
|
get-intrinsic@1.2.4:
|
||||||
|
resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==}
|
||||||
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
get-package-type@0.1.0:
|
get-package-type@0.1.0:
|
||||||
resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==}
|
resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==}
|
||||||
engines: {node: '>=8.0.0'}
|
engines: {node: '>=8.0.0'}
|
||||||
|
@ -7782,6 +7806,10 @@ packages:
|
||||||
happy-dom@10.0.3:
|
happy-dom@10.0.3:
|
||||||
resolution: {integrity: sha512-WkCP+Z5fX6U5PY+yHP3ElV5D9PoxRAHRWPFq3pG9rg/6Hjf5ak7dozAgSCywsTRUq2qfa8vV8OQvUy5pRXy8EQ==}
|
resolution: {integrity: sha512-WkCP+Z5fX6U5PY+yHP3ElV5D9PoxRAHRWPFq3pG9rg/6Hjf5ak7dozAgSCywsTRUq2qfa8vV8OQvUy5pRXy8EQ==}
|
||||||
|
|
||||||
|
happy-dom@15.6.1:
|
||||||
|
resolution: {integrity: sha512-dsMHLsJHZYhXeExP47B2siAfKNVxptlwFss3/bq/9sG3iBt0P2WYFBq68JgMR5vB5gsN2Ev0feTTPD/+rosUNQ==}
|
||||||
|
engines: {node: '>=18.0.0'}
|
||||||
|
|
||||||
har-schema@2.0.0:
|
har-schema@2.0.0:
|
||||||
resolution: {integrity: sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==}
|
resolution: {integrity: sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==}
|
||||||
engines: {node: '>=4'}
|
engines: {node: '>=4'}
|
||||||
|
@ -7809,6 +7837,9 @@ packages:
|
||||||
has-property-descriptors@1.0.0:
|
has-property-descriptors@1.0.0:
|
||||||
resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==}
|
resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==}
|
||||||
|
|
||||||
|
has-property-descriptors@1.0.2:
|
||||||
|
resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
|
||||||
|
|
||||||
has-proto@1.0.1:
|
has-proto@1.0.1:
|
||||||
resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==}
|
resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==}
|
||||||
engines: {node: '>= 0.4'}
|
engines: {node: '>= 0.4'}
|
||||||
|
@ -9483,6 +9514,10 @@ packages:
|
||||||
object-inspect@1.12.3:
|
object-inspect@1.12.3:
|
||||||
resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==}
|
resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==}
|
||||||
|
|
||||||
|
object-inspect@1.13.2:
|
||||||
|
resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==}
|
||||||
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
object-is@1.1.5:
|
object-is@1.1.5:
|
||||||
resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==}
|
resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==}
|
||||||
engines: {node: '>= 0.4'}
|
engines: {node: '>= 0.4'}
|
||||||
|
@ -10282,6 +10317,10 @@ packages:
|
||||||
resolution: {integrity: sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ==}
|
resolution: {integrity: sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ==}
|
||||||
engines: {node: '>=0.6'}
|
engines: {node: '>=0.6'}
|
||||||
|
|
||||||
|
qs@6.13.0:
|
||||||
|
resolution: {integrity: sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==}
|
||||||
|
engines: {node: '>=0.6'}
|
||||||
|
|
||||||
qs@6.5.3:
|
qs@6.5.3:
|
||||||
resolution: {integrity: sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==}
|
resolution: {integrity: sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==}
|
||||||
engines: {node: '>=0.6'}
|
engines: {node: '>=0.6'}
|
||||||
|
@ -10688,6 +10727,10 @@ packages:
|
||||||
set-cookie-parser@2.6.0:
|
set-cookie-parser@2.6.0:
|
||||||
resolution: {integrity: sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==}
|
resolution: {integrity: sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==}
|
||||||
|
|
||||||
|
set-function-length@1.2.2:
|
||||||
|
resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
|
||||||
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
setimmediate@1.0.5:
|
setimmediate@1.0.5:
|
||||||
resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==}
|
resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==}
|
||||||
|
|
||||||
|
@ -10731,6 +10774,10 @@ packages:
|
||||||
side-channel@1.0.4:
|
side-channel@1.0.4:
|
||||||
resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
|
resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
|
||||||
|
|
||||||
|
side-channel@1.0.6:
|
||||||
|
resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==}
|
||||||
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
siginfo@2.0.0:
|
siginfo@2.0.0:
|
||||||
resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
|
resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
|
||||||
|
|
||||||
|
@ -11333,6 +11380,7 @@ packages:
|
||||||
|
|
||||||
ts-case-convert@2.0.2:
|
ts-case-convert@2.0.2:
|
||||||
resolution: {integrity: sha512-vdKfx1VAdpvEBOBv5OpVu5ZFqRg9HdTI4sYt6qqMeICBeNyXvitrarCnFWNDAki51IKwCyx+ZssY46Q9jH5otA==}
|
resolution: {integrity: sha512-vdKfx1VAdpvEBOBv5OpVu5ZFqRg9HdTI4sYt6qqMeICBeNyXvitrarCnFWNDAki51IKwCyx+ZssY46Q9jH5otA==}
|
||||||
|
bundledDependencies: []
|
||||||
|
|
||||||
ts-dedent@2.2.0:
|
ts-dedent@2.2.0:
|
||||||
resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==}
|
resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==}
|
||||||
|
@ -12674,7 +12722,7 @@ snapshots:
|
||||||
'@babel/traverse': 7.23.5
|
'@babel/traverse': 7.23.5
|
||||||
'@babel/types': 7.24.7
|
'@babel/types': 7.24.7
|
||||||
convert-source-map: 2.0.0
|
convert-source-map: 2.0.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
gensync: 1.0.0-beta.2
|
gensync: 1.0.0-beta.2
|
||||||
json5: 2.2.3
|
json5: 2.2.3
|
||||||
semver: 6.3.1
|
semver: 6.3.1
|
||||||
|
@ -12694,7 +12742,7 @@ snapshots:
|
||||||
'@babel/traverse': 7.24.7
|
'@babel/traverse': 7.24.7
|
||||||
'@babel/types': 7.24.7
|
'@babel/types': 7.24.7
|
||||||
convert-source-map: 2.0.0
|
convert-source-map: 2.0.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
gensync: 1.0.0-beta.2
|
gensync: 1.0.0-beta.2
|
||||||
json5: 2.2.3
|
json5: 2.2.3
|
||||||
semver: 6.3.1
|
semver: 6.3.1
|
||||||
|
@ -12769,7 +12817,7 @@ snapshots:
|
||||||
'@babel/core': 7.24.7
|
'@babel/core': 7.24.7
|
||||||
'@babel/helper-compilation-targets': 7.24.7
|
'@babel/helper-compilation-targets': 7.24.7
|
||||||
'@babel/helper-plugin-utils': 7.24.7
|
'@babel/helper-plugin-utils': 7.24.7
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
lodash.debounce: 4.0.8
|
lodash.debounce: 4.0.8
|
||||||
resolve: 1.22.8
|
resolve: 1.22.8
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
|
@ -13636,7 +13684,7 @@ snapshots:
|
||||||
'@babel/helper-split-export-declaration': 7.22.6
|
'@babel/helper-split-export-declaration': 7.22.6
|
||||||
'@babel/parser': 7.24.7
|
'@babel/parser': 7.24.7
|
||||||
'@babel/types': 7.24.7
|
'@babel/types': 7.24.7
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
globals: 11.12.0
|
globals: 11.12.0
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
@ -13651,7 +13699,7 @@ snapshots:
|
||||||
'@babel/helper-split-export-declaration': 7.24.7
|
'@babel/helper-split-export-declaration': 7.24.7
|
||||||
'@babel/parser': 7.24.7
|
'@babel/parser': 7.24.7
|
||||||
'@babel/types': 7.24.7
|
'@babel/types': 7.24.7
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
globals: 11.12.0
|
globals: 11.12.0
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
@ -14111,7 +14159,7 @@ snapshots:
|
||||||
'@eslint/config-array@0.17.1':
|
'@eslint/config-array@0.17.1':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@eslint/object-schema': 2.1.4
|
'@eslint/object-schema': 2.1.4
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
minimatch: 3.1.2
|
minimatch: 3.1.2
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
@ -14119,7 +14167,7 @@ snapshots:
|
||||||
'@eslint/eslintrc@3.1.0':
|
'@eslint/eslintrc@3.1.0':
|
||||||
dependencies:
|
dependencies:
|
||||||
ajv: 6.12.6
|
ajv: 6.12.6
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
espree: 10.1.0
|
espree: 10.1.0
|
||||||
globals: 14.0.0
|
globals: 14.0.0
|
||||||
ignore: 5.3.1
|
ignore: 5.3.1
|
||||||
|
@ -17285,7 +17333,7 @@ snapshots:
|
||||||
'@typescript-eslint/types': 7.17.0
|
'@typescript-eslint/types': 7.17.0
|
||||||
'@typescript-eslint/typescript-estree': 7.17.0(typescript@5.5.4)
|
'@typescript-eslint/typescript-estree': 7.17.0(typescript@5.5.4)
|
||||||
'@typescript-eslint/visitor-keys': 7.17.0
|
'@typescript-eslint/visitor-keys': 7.17.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
eslint: 9.8.0
|
eslint: 9.8.0
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
typescript: 5.5.4
|
typescript: 5.5.4
|
||||||
|
@ -17311,7 +17359,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/typescript-estree': 6.11.0(typescript@5.3.3)
|
'@typescript-eslint/typescript-estree': 6.11.0(typescript@5.3.3)
|
||||||
'@typescript-eslint/utils': 6.11.0(eslint@9.8.0)(typescript@5.3.3)
|
'@typescript-eslint/utils': 6.11.0(eslint@9.8.0)(typescript@5.3.3)
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
eslint: 9.8.0
|
eslint: 9.8.0
|
||||||
ts-api-utils: 1.0.1(typescript@5.3.3)
|
ts-api-utils: 1.0.1(typescript@5.3.3)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
|
@ -17323,7 +17371,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/typescript-estree': 7.1.0(typescript@5.3.3)
|
'@typescript-eslint/typescript-estree': 7.1.0(typescript@5.3.3)
|
||||||
'@typescript-eslint/utils': 7.1.0(eslint@9.8.0)(typescript@5.3.3)
|
'@typescript-eslint/utils': 7.1.0(eslint@9.8.0)(typescript@5.3.3)
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
eslint: 9.8.0
|
eslint: 9.8.0
|
||||||
ts-api-utils: 1.0.1(typescript@5.3.3)
|
ts-api-utils: 1.0.1(typescript@5.3.3)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
|
@ -17335,7 +17383,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/typescript-estree': 7.17.0(typescript@5.5.4)
|
'@typescript-eslint/typescript-estree': 7.17.0(typescript@5.5.4)
|
||||||
'@typescript-eslint/utils': 7.17.0(eslint@9.8.0)(typescript@5.5.4)
|
'@typescript-eslint/utils': 7.17.0(eslint@9.8.0)(typescript@5.5.4)
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
eslint: 9.8.0
|
eslint: 9.8.0
|
||||||
ts-api-utils: 1.3.0(typescript@5.5.4)
|
ts-api-utils: 1.3.0(typescript@5.5.4)
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
|
@ -17353,7 +17401,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/types': 6.11.0
|
'@typescript-eslint/types': 6.11.0
|
||||||
'@typescript-eslint/visitor-keys': 6.11.0
|
'@typescript-eslint/visitor-keys': 6.11.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
globby: 11.1.0
|
globby: 11.1.0
|
||||||
is-glob: 4.0.3
|
is-glob: 4.0.3
|
||||||
semver: 7.6.0
|
semver: 7.6.0
|
||||||
|
@ -17367,7 +17415,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/types': 7.1.0
|
'@typescript-eslint/types': 7.1.0
|
||||||
'@typescript-eslint/visitor-keys': 7.1.0
|
'@typescript-eslint/visitor-keys': 7.1.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
globby: 11.1.0
|
globby: 11.1.0
|
||||||
is-glob: 4.0.3
|
is-glob: 4.0.3
|
||||||
minimatch: 9.0.3
|
minimatch: 9.0.3
|
||||||
|
@ -17382,7 +17430,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/types': 7.17.0
|
'@typescript-eslint/types': 7.17.0
|
||||||
'@typescript-eslint/visitor-keys': 7.17.0
|
'@typescript-eslint/visitor-keys': 7.17.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
globby: 11.1.0
|
globby: 11.1.0
|
||||||
is-glob: 4.0.3
|
is-glob: 4.0.3
|
||||||
minimatch: 9.0.4
|
minimatch: 9.0.4
|
||||||
|
@ -17458,7 +17506,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@ampproject/remapping': 2.2.1
|
'@ampproject/remapping': 2.2.1
|
||||||
'@bcoe/v8-coverage': 0.2.3
|
'@bcoe/v8-coverage': 0.2.3
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
istanbul-lib-coverage: 3.2.2
|
istanbul-lib-coverage: 3.2.2
|
||||||
istanbul-lib-report: 3.0.1
|
istanbul-lib-report: 3.0.1
|
||||||
istanbul-lib-source-maps: 5.0.4
|
istanbul-lib-source-maps: 5.0.4
|
||||||
|
@ -17473,25 +17521,6 @@ snapshots:
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
'@vitest/coverage-v8@1.6.0(vitest@1.6.0(@types/node@20.14.12)(happy-dom@10.0.3)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3))':
|
|
||||||
dependencies:
|
|
||||||
'@ampproject/remapping': 2.2.1
|
|
||||||
'@bcoe/v8-coverage': 0.2.3
|
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
|
||||||
istanbul-lib-coverage: 3.2.2
|
|
||||||
istanbul-lib-report: 3.0.1
|
|
||||||
istanbul-lib-source-maps: 5.0.4
|
|
||||||
istanbul-reports: 3.1.6
|
|
||||||
magic-string: 0.30.10
|
|
||||||
magicast: 0.3.4
|
|
||||||
picocolors: 1.0.1
|
|
||||||
std-env: 3.7.0
|
|
||||||
strip-literal: 2.1.0
|
|
||||||
test-exclude: 6.0.0
|
|
||||||
vitest: 1.6.0(@types/node@20.14.12)(happy-dom@10.0.3)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3)
|
|
||||||
transitivePeerDependencies:
|
|
||||||
- supports-color
|
|
||||||
|
|
||||||
'@vitest/expect@1.6.0':
|
'@vitest/expect@1.6.0':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@vitest/spy': 1.6.0
|
'@vitest/spy': 1.6.0
|
||||||
|
@ -17719,13 +17748,13 @@ snapshots:
|
||||||
|
|
||||||
agent-base@6.0.2:
|
agent-base@6.0.2:
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
agent-base@7.1.0:
|
agent-base@7.1.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
|
@ -17983,7 +18012,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@fastify/error': 3.4.0
|
'@fastify/error': 3.4.0
|
||||||
archy: 1.0.0
|
archy: 1.0.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
fastq: 1.17.1
|
fastq: 1.17.1
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
@ -18165,6 +18194,23 @@ snapshots:
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
|
body-parser@1.20.3:
|
||||||
|
dependencies:
|
||||||
|
bytes: 3.1.2
|
||||||
|
content-type: 1.0.5
|
||||||
|
debug: 2.6.9
|
||||||
|
depd: 2.0.0
|
||||||
|
destroy: 1.2.0
|
||||||
|
http-errors: 2.0.0
|
||||||
|
iconv-lite: 0.4.24
|
||||||
|
on-finished: 2.4.1
|
||||||
|
qs: 6.13.0
|
||||||
|
raw-body: 2.5.2
|
||||||
|
type-is: 1.6.18
|
||||||
|
unpipe: 1.0.0
|
||||||
|
transitivePeerDependencies:
|
||||||
|
- supports-color
|
||||||
|
|
||||||
boolbase@1.0.0: {}
|
boolbase@1.0.0: {}
|
||||||
|
|
||||||
bowser@2.11.0: {}
|
bowser@2.11.0: {}
|
||||||
|
@ -18330,6 +18376,14 @@ snapshots:
|
||||||
function-bind: 1.1.2
|
function-bind: 1.1.2
|
||||||
get-intrinsic: 1.2.1
|
get-intrinsic: 1.2.1
|
||||||
|
|
||||||
|
call-bind@1.0.7:
|
||||||
|
dependencies:
|
||||||
|
es-define-property: 1.0.0
|
||||||
|
es-errors: 1.3.0
|
||||||
|
function-bind: 1.1.2
|
||||||
|
get-intrinsic: 1.2.4
|
||||||
|
set-function-length: 1.2.2
|
||||||
|
|
||||||
call-me-maybe@1.0.2: {}
|
call-me-maybe@1.0.2: {}
|
||||||
|
|
||||||
callsites@3.1.0: {}
|
callsites@3.1.0: {}
|
||||||
|
@ -19002,6 +19056,12 @@ snapshots:
|
||||||
|
|
||||||
defer-to-connect@2.0.1: {}
|
defer-to-connect@2.0.1: {}
|
||||||
|
|
||||||
|
define-data-property@1.1.4:
|
||||||
|
dependencies:
|
||||||
|
es-define-property: 1.0.0
|
||||||
|
es-errors: 1.3.0
|
||||||
|
gopd: 1.0.1
|
||||||
|
|
||||||
define-lazy-prop@2.0.0: {}
|
define-lazy-prop@2.0.0: {}
|
||||||
|
|
||||||
define-properties@1.2.0:
|
define-properties@1.2.0:
|
||||||
|
@ -19037,7 +19097,7 @@ snapshots:
|
||||||
detect-port@1.5.1:
|
detect-port@1.5.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
address: 1.2.2
|
address: 1.2.2
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
|
@ -19208,6 +19268,12 @@ snapshots:
|
||||||
unbox-primitive: 1.0.2
|
unbox-primitive: 1.0.2
|
||||||
which-typed-array: 1.1.11
|
which-typed-array: 1.1.11
|
||||||
|
|
||||||
|
es-define-property@1.0.0:
|
||||||
|
dependencies:
|
||||||
|
get-intrinsic: 1.2.4
|
||||||
|
|
||||||
|
es-errors@1.3.0: {}
|
||||||
|
|
||||||
es-get-iterator@1.1.3:
|
es-get-iterator@1.1.3:
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.2
|
call-bind: 1.0.2
|
||||||
|
@ -19250,7 +19316,7 @@ snapshots:
|
||||||
|
|
||||||
esbuild-register@3.5.0(esbuild@0.19.11):
|
esbuild-register@3.5.0(esbuild@0.19.11):
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
esbuild: 0.19.11
|
esbuild: 0.19.11
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
@ -19480,7 +19546,7 @@ snapshots:
|
||||||
ajv: 6.12.6
|
ajv: 6.12.6
|
||||||
chalk: 4.1.2
|
chalk: 4.1.2
|
||||||
cross-spawn: 7.0.3
|
cross-spawn: 7.0.3
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
escape-string-regexp: 4.0.0
|
escape-string-regexp: 4.0.0
|
||||||
eslint-scope: 8.0.2
|
eslint-scope: 8.0.2
|
||||||
eslint-visitor-keys: 4.0.0
|
eslint-visitor-keys: 4.0.0
|
||||||
|
@ -19933,7 +19999,7 @@ snapshots:
|
||||||
|
|
||||||
follow-redirects@1.15.2(debug@4.3.5):
|
follow-redirects@1.15.2(debug@4.3.5):
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
|
|
||||||
for-each@0.3.3:
|
for-each@0.3.3:
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -20052,6 +20118,14 @@ snapshots:
|
||||||
has-proto: 1.0.1
|
has-proto: 1.0.1
|
||||||
has-symbols: 1.0.3
|
has-symbols: 1.0.3
|
||||||
|
|
||||||
|
get-intrinsic@1.2.4:
|
||||||
|
dependencies:
|
||||||
|
es-errors: 1.3.0
|
||||||
|
function-bind: 1.1.2
|
||||||
|
has-proto: 1.0.1
|
||||||
|
has-symbols: 1.0.3
|
||||||
|
hasown: 2.0.0
|
||||||
|
|
||||||
get-package-type@0.1.0: {}
|
get-package-type@0.1.0: {}
|
||||||
|
|
||||||
get-pixels-frame-info-update@3.3.2:
|
get-pixels-frame-info-update@3.3.2:
|
||||||
|
@ -20217,7 +20291,7 @@ snapshots:
|
||||||
|
|
||||||
gopd@1.0.1:
|
gopd@1.0.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
get-intrinsic: 1.2.1
|
get-intrinsic: 1.2.4
|
||||||
|
|
||||||
got@11.8.5:
|
got@11.8.5:
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -20289,6 +20363,12 @@ snapshots:
|
||||||
whatwg-encoding: 2.0.0
|
whatwg-encoding: 2.0.0
|
||||||
whatwg-mimetype: 3.0.0
|
whatwg-mimetype: 3.0.0
|
||||||
|
|
||||||
|
happy-dom@15.6.1:
|
||||||
|
dependencies:
|
||||||
|
entities: 4.5.0
|
||||||
|
webidl-conversions: 7.0.0
|
||||||
|
whatwg-mimetype: 3.0.0
|
||||||
|
|
||||||
har-schema@2.0.0: {}
|
har-schema@2.0.0: {}
|
||||||
|
|
||||||
har-validator@5.1.5:
|
har-validator@5.1.5:
|
||||||
|
@ -20308,6 +20388,10 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
get-intrinsic: 1.2.1
|
get-intrinsic: 1.2.1
|
||||||
|
|
||||||
|
has-property-descriptors@1.0.2:
|
||||||
|
dependencies:
|
||||||
|
es-define-property: 1.0.0
|
||||||
|
|
||||||
has-proto@1.0.1: {}
|
has-proto@1.0.1: {}
|
||||||
|
|
||||||
has-symbols@1.0.3: {}
|
has-symbols@1.0.3: {}
|
||||||
|
@ -20393,7 +20477,7 @@ snapshots:
|
||||||
http-proxy-agent@7.0.2:
|
http-proxy-agent@7.0.2:
|
||||||
dependencies:
|
dependencies:
|
||||||
agent-base: 7.1.0
|
agent-base: 7.1.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
|
@ -20432,28 +20516,28 @@ snapshots:
|
||||||
https-proxy-agent@5.0.1:
|
https-proxy-agent@5.0.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
agent-base: 6.0.2
|
agent-base: 6.0.2
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
https-proxy-agent@7.0.2:
|
https-proxy-agent@7.0.2:
|
||||||
dependencies:
|
dependencies:
|
||||||
agent-base: 7.1.0
|
agent-base: 7.1.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
https-proxy-agent@7.0.4:
|
https-proxy-agent@7.0.4:
|
||||||
dependencies:
|
dependencies:
|
||||||
agent-base: 7.1.0
|
agent-base: 7.1.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
https-proxy-agent@7.0.5:
|
https-proxy-agent@7.0.5:
|
||||||
dependencies:
|
dependencies:
|
||||||
agent-base: 7.1.0
|
agent-base: 7.1.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
|
@ -20801,7 +20885,7 @@ snapshots:
|
||||||
|
|
||||||
istanbul-lib-source-maps@4.0.1:
|
istanbul-lib-source-maps@4.0.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
istanbul-lib-coverage: 3.2.2
|
istanbul-lib-coverage: 3.2.2
|
||||||
source-map: 0.6.1
|
source-map: 0.6.1
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
|
@ -20810,7 +20894,7 @@ snapshots:
|
||||||
istanbul-lib-source-maps@5.0.4:
|
istanbul-lib-source-maps@5.0.4:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@jridgewell/trace-mapping': 0.3.25
|
'@jridgewell/trace-mapping': 0.3.25
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
istanbul-lib-coverage: 3.2.2
|
istanbul-lib-coverage: 3.2.2
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
@ -21234,35 +21318,6 @@ snapshots:
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
jsdom@24.1.1:
|
|
||||||
dependencies:
|
|
||||||
cssstyle: 4.0.1
|
|
||||||
data-urls: 5.0.0
|
|
||||||
decimal.js: 10.4.3
|
|
||||||
form-data: 4.0.0
|
|
||||||
html-encoding-sniffer: 4.0.0
|
|
||||||
http-proxy-agent: 7.0.2
|
|
||||||
https-proxy-agent: 7.0.5
|
|
||||||
is-potential-custom-element-name: 1.0.1
|
|
||||||
nwsapi: 2.2.12
|
|
||||||
parse5: 7.1.2
|
|
||||||
rrweb-cssom: 0.7.1
|
|
||||||
saxes: 6.0.0
|
|
||||||
symbol-tree: 3.2.4
|
|
||||||
tough-cookie: 4.1.4
|
|
||||||
w3c-xmlserializer: 5.0.0
|
|
||||||
webidl-conversions: 7.0.0
|
|
||||||
whatwg-encoding: 3.1.1
|
|
||||||
whatwg-mimetype: 4.0.0
|
|
||||||
whatwg-url: 14.0.0
|
|
||||||
ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.4)
|
|
||||||
xml-name-validator: 5.0.0
|
|
||||||
transitivePeerDependencies:
|
|
||||||
- bufferutil
|
|
||||||
- supports-color
|
|
||||||
- utf-8-validate
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
jsdom@24.1.1(bufferutil@4.0.7)(utf-8-validate@6.0.3):
|
jsdom@24.1.1(bufferutil@4.0.7)(utf-8-validate@6.0.3):
|
||||||
dependencies:
|
dependencies:
|
||||||
cssstyle: 4.0.1
|
cssstyle: 4.0.1
|
||||||
|
@ -21948,7 +22003,7 @@ snapshots:
|
||||||
micromark@4.0.0:
|
micromark@4.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/debug': 4.1.12
|
'@types/debug': 4.1.12
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
decode-named-character-reference: 1.0.2
|
decode-named-character-reference: 1.0.2
|
||||||
devlop: 1.1.0
|
devlop: 1.1.0
|
||||||
micromark-core-commonmark: 2.0.0
|
micromark-core-commonmark: 2.0.0
|
||||||
|
@ -22423,6 +22478,8 @@ snapshots:
|
||||||
|
|
||||||
object-inspect@1.12.3: {}
|
object-inspect@1.12.3: {}
|
||||||
|
|
||||||
|
object-inspect@1.13.2: {}
|
||||||
|
|
||||||
object-is@1.1.5:
|
object-is@1.1.5:
|
||||||
dependencies:
|
dependencies:
|
||||||
call-bind: 1.0.2
|
call-bind: 1.0.2
|
||||||
|
@ -23209,6 +23266,10 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
side-channel: 1.0.4
|
side-channel: 1.0.4
|
||||||
|
|
||||||
|
qs@6.13.0:
|
||||||
|
dependencies:
|
||||||
|
side-channel: 1.0.6
|
||||||
|
|
||||||
qs@6.5.3: {}
|
qs@6.5.3: {}
|
||||||
|
|
||||||
querystringify@2.2.0: {}
|
querystringify@2.2.0: {}
|
||||||
|
@ -23505,7 +23566,7 @@ snapshots:
|
||||||
|
|
||||||
require-in-the-middle@7.3.0:
|
require-in-the-middle@7.3.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
module-details-from-path: 1.0.3
|
module-details-from-path: 1.0.3
|
||||||
resolve: 1.22.8
|
resolve: 1.22.8
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
|
@ -23712,6 +23773,15 @@ snapshots:
|
||||||
|
|
||||||
set-cookie-parser@2.6.0: {}
|
set-cookie-parser@2.6.0: {}
|
||||||
|
|
||||||
|
set-function-length@1.2.2:
|
||||||
|
dependencies:
|
||||||
|
define-data-property: 1.1.4
|
||||||
|
es-errors: 1.3.0
|
||||||
|
function-bind: 1.1.2
|
||||||
|
get-intrinsic: 1.2.4
|
||||||
|
gopd: 1.0.1
|
||||||
|
has-property-descriptors: 1.0.2
|
||||||
|
|
||||||
setimmediate@1.0.5: {}
|
setimmediate@1.0.5: {}
|
||||||
|
|
||||||
setprototypeof@1.2.0: {}
|
setprototypeof@1.2.0: {}
|
||||||
|
@ -23776,6 +23846,13 @@ snapshots:
|
||||||
get-intrinsic: 1.2.1
|
get-intrinsic: 1.2.1
|
||||||
object-inspect: 1.12.3
|
object-inspect: 1.12.3
|
||||||
|
|
||||||
|
side-channel@1.0.6:
|
||||||
|
dependencies:
|
||||||
|
call-bind: 1.0.7
|
||||||
|
es-errors: 1.3.0
|
||||||
|
get-intrinsic: 1.2.4
|
||||||
|
object-inspect: 1.13.2
|
||||||
|
|
||||||
siginfo@2.0.0: {}
|
siginfo@2.0.0: {}
|
||||||
|
|
||||||
signal-exit@3.0.7: {}
|
signal-exit@3.0.7: {}
|
||||||
|
@ -23786,7 +23863,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@hapi/hoek': 11.0.4
|
'@hapi/hoek': 11.0.4
|
||||||
'@hapi/wreck': 18.0.1
|
'@hapi/wreck': 18.0.1
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
joi: 17.11.0
|
joi: 17.11.0
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
@ -23886,7 +23963,7 @@ snapshots:
|
||||||
socks-proxy-agent@8.0.2:
|
socks-proxy-agent@8.0.2:
|
||||||
dependencies:
|
dependencies:
|
||||||
agent-base: 7.1.0
|
agent-base: 7.1.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
socks: 2.7.1
|
socks: 2.7.1
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
@ -23981,7 +24058,7 @@ snapshots:
|
||||||
arg: 5.0.2
|
arg: 5.0.2
|
||||||
bluebird: 3.7.2
|
bluebird: 3.7.2
|
||||||
check-more-types: 2.24.0
|
check-more-types: 2.24.0
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
execa: 5.1.1
|
execa: 5.1.1
|
||||||
lazy-ass: 1.6.0
|
lazy-ass: 1.6.0
|
||||||
ps-tree: 1.2.0
|
ps-tree: 1.2.0
|
||||||
|
@ -24722,7 +24799,7 @@ snapshots:
|
||||||
vite-node@1.6.0(@types/node@20.14.12)(sass@1.77.8)(terser@5.31.3):
|
vite-node@1.6.0(@types/node@20.14.12)(sass@1.77.8)(terser@5.31.3):
|
||||||
dependencies:
|
dependencies:
|
||||||
cac: 6.7.14
|
cac: 6.7.14
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
pathe: 1.1.2
|
pathe: 1.1.2
|
||||||
picocolors: 1.0.1
|
picocolors: 1.0.1
|
||||||
vite: 5.3.5(@types/node@20.14.12)(sass@1.77.8)(terser@5.31.3)
|
vite: 5.3.5(@types/node@20.14.12)(sass@1.77.8)(terser@5.31.3)
|
||||||
|
@ -24791,41 +24868,6 @@ snapshots:
|
||||||
- supports-color
|
- supports-color
|
||||||
- terser
|
- terser
|
||||||
|
|
||||||
vitest@1.6.0(@types/node@20.14.12)(happy-dom@10.0.3)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.3):
|
|
||||||
dependencies:
|
|
||||||
'@vitest/expect': 1.6.0
|
|
||||||
'@vitest/runner': 1.6.0
|
|
||||||
'@vitest/snapshot': 1.6.0
|
|
||||||
'@vitest/spy': 1.6.0
|
|
||||||
'@vitest/utils': 1.6.0
|
|
||||||
acorn-walk: 8.3.2
|
|
||||||
chai: 4.3.10
|
|
||||||
debug: 4.3.4(supports-color@5.5.0)
|
|
||||||
execa: 8.0.1
|
|
||||||
local-pkg: 0.5.0
|
|
||||||
magic-string: 0.30.10
|
|
||||||
pathe: 1.1.2
|
|
||||||
picocolors: 1.0.0
|
|
||||||
std-env: 3.7.0
|
|
||||||
strip-literal: 2.1.0
|
|
||||||
tinybench: 2.6.0
|
|
||||||
tinypool: 0.8.4
|
|
||||||
vite: 5.3.5(@types/node@20.14.12)(sass@1.77.8)(terser@5.31.3)
|
|
||||||
vite-node: 1.6.0(@types/node@20.14.12)(sass@1.77.8)(terser@5.31.3)
|
|
||||||
why-is-node-running: 2.2.2
|
|
||||||
optionalDependencies:
|
|
||||||
'@types/node': 20.14.12
|
|
||||||
happy-dom: 10.0.3
|
|
||||||
jsdom: 24.1.1
|
|
||||||
transitivePeerDependencies:
|
|
||||||
- less
|
|
||||||
- lightningcss
|
|
||||||
- sass
|
|
||||||
- stylus
|
|
||||||
- sugarss
|
|
||||||
- supports-color
|
|
||||||
- terser
|
|
||||||
|
|
||||||
void-elements@3.1.0: {}
|
void-elements@3.1.0: {}
|
||||||
|
|
||||||
vscode-jsonrpc@8.2.0: {}
|
vscode-jsonrpc@8.2.0: {}
|
||||||
|
@ -24889,7 +24931,7 @@ snapshots:
|
||||||
|
|
||||||
vue-eslint-parser@9.4.3(eslint@9.8.0):
|
vue-eslint-parser@9.4.3(eslint@9.8.0):
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: 4.3.5(supports-color@5.5.0)
|
debug: 4.3.5(supports-color@8.1.1)
|
||||||
eslint: 9.8.0
|
eslint: 9.8.0
|
||||||
eslint-scope: 7.2.2
|
eslint-scope: 7.2.2
|
||||||
eslint-visitor-keys: 3.4.3
|
eslint-visitor-keys: 3.4.3
|
||||||
|
|
Loading…
Reference in New Issue