mirror of
https://github.com/warp-tech/warpgate.git
synced 2024-09-20 06:46:17 +08:00
lint
This commit is contained in:
parent
c328127493
commit
2cd3078d43
4
justfile
4
justfile
|
@ -21,8 +21,8 @@ yarn *ARGS:
|
|||
migrate *ARGS:
|
||||
cargo run --all-features -p warpgate-db-migrations -- {{ARGS}}
|
||||
|
||||
lint:
|
||||
cd warpgate-web && yarn run lint
|
||||
lint *ARGS:
|
||||
cd warpgate-web && yarn run lint {{ARGS}}
|
||||
|
||||
svelte-check:
|
||||
cd warpgate-web && yarn run check
|
||||
|
|
|
@ -138,11 +138,14 @@ rules:
|
|||
imports: always-multiline
|
||||
exports: always-multiline
|
||||
functions: only-multiline
|
||||
'@typescript-eslint/use-unknown-in-catch-callback-variable': off
|
||||
|
||||
overrides:
|
||||
- files: '*.svelte'
|
||||
parser: 'svelte-eslint-parser'
|
||||
parserOptions:
|
||||
svelteFeatures:
|
||||
experimentalGenerics: true
|
||||
parser:
|
||||
ts: '@typescript-eslint/parser'
|
||||
js: 'espree'
|
||||
|
|
|
@ -27,20 +27,21 @@
|
|||
"@otplib/plugin-crypto-js": "^12.0.1",
|
||||
"@otplib/preset-browser": "^12.0.1",
|
||||
"@sveltejs/vite-plugin-svelte": "^3.1.1",
|
||||
"@sveltestrap/sveltestrap": "^6.2.7",
|
||||
"@tsconfig/svelte": "^5.0.0",
|
||||
"@types/qrcode": "^1.5.0",
|
||||
"@types/ua-parser-js": "^0.7.36",
|
||||
"@typescript-eslint/eslint-plugin": "^7.13.0",
|
||||
"@typescript-eslint/parser": "^7.13.0",
|
||||
"@typescript-eslint/eslint-plugin": "^7.17.0",
|
||||
"@typescript-eslint/parser": "^7.17.0",
|
||||
"bootstrap": "^5.3.3",
|
||||
"copy-text-to-clipboard": "^3.0.1",
|
||||
"date-fns": "^3.6.0",
|
||||
"eslint": "^8.57.0",
|
||||
"eslint": "^8",
|
||||
"eslint-config-standard": "^17.1.0",
|
||||
"eslint-import-resolver-typescript": "^3.6.1",
|
||||
"eslint-plugin-import": "^2.29.1",
|
||||
"eslint-plugin-node": "^11.1.0",
|
||||
"eslint-plugin-promise": "^6.2.0",
|
||||
"eslint-plugin-promise": "^7.0.0",
|
||||
"eslint-plugin-svelte": "^2.39.4",
|
||||
"format-duration": "^3.0.2",
|
||||
"otplib": "^12.0.1",
|
||||
|
@ -51,15 +52,14 @@
|
|||
"svelte-fa": "^4.0.2",
|
||||
"svelte-intersection-observer": "^1.0.0",
|
||||
"svelte-observable": "^0.4.0",
|
||||
"svelte-preprocess": "^5.0.3",
|
||||
"svelte-preprocess": "^6.0.2",
|
||||
"svelte-spa-router": "^4.0.1",
|
||||
"@sveltestrap/sveltestrap": "^6.2.7",
|
||||
"thenby": "^1.3.4",
|
||||
"tslib": "^2.6.3",
|
||||
"typescript": "^5.0.0",
|
||||
"ua-parser-js": "^1.0.35",
|
||||
"vite": "^5.3.1",
|
||||
"vite-plugin-checker": "^0.6.4",
|
||||
"vite": "^5.3.5",
|
||||
"vite-plugin-checker": "^0.7.2",
|
||||
"vite-tsconfig-paths": "^4.3.2",
|
||||
"xterm": "^4.18.0",
|
||||
"xterm-addon-serialize": "^0.7.0"
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
<script lang="ts">
|
||||
import { Input } from '@sveltestrap/sveltestrap'
|
||||
|
||||
import { CredentialKind, User, UserRequireCredentialsPolicy } from './lib/api'
|
||||
import { CredentialKind, type User, type UserRequireCredentialsPolicy } from './lib/api'
|
||||
|
||||
export let user: User
|
||||
export let value: UserRequireCredentialsPolicy
|
||||
export let possibleCredentials: Set<CredentialKind>
|
||||
export let protocolId: "http" | "ssh" | "mysql"
|
||||
export let protocolId: 'http' | 'ssh' | 'mysql'
|
||||
|
||||
const labels = {
|
||||
Password: 'Password',
|
||||
|
@ -33,7 +33,7 @@ function updateAny () {
|
|||
value[protocolId] = undefined
|
||||
} else {
|
||||
value[protocolId] = []
|
||||
let oneCred = Array.from(validCredentials).filter(x => possibleCredentials.has(x))[0]
|
||||
let oneCred = Array.from(validCredentials).find(x => possibleCredentials.has(x))
|
||||
if (oneCred) {
|
||||
value[protocolId] = [oneCred]
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<script lang="ts">
|
||||
import { Observable, from, map } from 'rxjs'
|
||||
import { Role, Target, User, api } from 'admin/lib/api'
|
||||
import ItemList, { LoadOptions, PaginatedResponse } from 'common/ItemList.svelte'
|
||||
import { type Role, type Target, type User, api } from 'admin/lib/api'
|
||||
import ItemList, { type LoadOptions, type PaginatedResponse } from 'common/ItemList.svelte'
|
||||
import { link } from 'svelte-spa-router'
|
||||
|
||||
function getTargets (options: LoadOptions): Observable<PaginatedResponse<Target>> {
|
||||
|
@ -48,7 +48,6 @@
|
|||
</div>
|
||||
|
||||
<ItemList load={getTargets} showSearch={true}>
|
||||
<!-- svelte-ignore a11y-missing-attribute -->
|
||||
<a
|
||||
slot="item" let:item={target}
|
||||
class="list-group-item list-group-item-action"
|
||||
|
@ -87,7 +86,6 @@
|
|||
</div>
|
||||
|
||||
<ItemList load={getUsers} showSearch={true}>
|
||||
<!-- svelte-ignore a11y-missing-attribute -->
|
||||
<a
|
||||
slot="item" let:item={user}
|
||||
class="list-group-item list-group-item-action"
|
||||
|
@ -110,7 +108,6 @@
|
|||
</div>
|
||||
|
||||
<ItemList load={getRoles} showSearch={true}>
|
||||
<!-- svelte-ignore a11y-missing-attribute -->
|
||||
<a
|
||||
slot="item" let:item={role}
|
||||
class="list-group-item list-group-item-action"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts">
|
||||
import { api, TargetOptions, TlsMode } from 'admin/lib/api'
|
||||
import { api, type TargetOptions, TlsMode } from 'admin/lib/api'
|
||||
import AsyncButton from 'common/AsyncButton.svelte'
|
||||
import { replace } from 'svelte-spa-router'
|
||||
import { Alert, FormGroup } from '@sveltestrap/sveltestrap'
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts">
|
||||
import { api, User, Target, TargetOptions, TicketAndSecret } from 'admin/lib/api'
|
||||
import { api, type User, type Target, type TicketAndSecret } from 'admin/lib/api'
|
||||
import AsyncButton from 'common/AsyncButton.svelte'
|
||||
import ConnectionInstructions from 'common/ConnectionInstructions.svelte'
|
||||
import { TargetKind } from 'gateway/lib/api'
|
||||
|
@ -68,7 +68,7 @@ async function create () {
|
|||
targetName={selectedTarget.name}
|
||||
targetKind={TargetKind[selectedTarget.options.kind]}
|
||||
username={selectedUser.username}
|
||||
targetExternalHost={selectedTarget.options.kind == "Http" ? selectedTarget.options.externalHost : undefined}
|
||||
targetExternalHost={selectedTarget.options.kind === 'Http' ? selectedTarget.options.externalHost : undefined}
|
||||
ticketSecret={result.secret}
|
||||
/>
|
||||
{/if}
|
||||
|
|
|
@ -3,12 +3,12 @@
|
|||
import { faCircleDot as iconActive } from '@fortawesome/free-regular-svg-icons'
|
||||
import { onDestroy } from 'svelte'
|
||||
import { link } from 'svelte-spa-router'
|
||||
import { api, SessionSnapshot } from 'admin/lib/api'
|
||||
import { formatDistance } from 'date-fns';
|
||||
import { api, type SessionSnapshot } from 'admin/lib/api'
|
||||
import { formatDistance } from 'date-fns'
|
||||
import { timer, Observable, switchMap, from, combineLatest, fromEvent, merge } from 'rxjs'
|
||||
import RelativeDate from './RelativeDate.svelte'
|
||||
import AsyncButton from 'common/AsyncButton.svelte'
|
||||
import ItemList, { LoadOptions, PaginatedResponse } from 'common/ItemList.svelte'
|
||||
import ItemList, { type LoadOptions, type PaginatedResponse } from 'common/ItemList.svelte'
|
||||
import { Input } from '@sveltestrap/sveltestrap'
|
||||
import { autosave } from 'common/autosave'
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts">
|
||||
import { api, LogEntry } from 'admin/lib/api'
|
||||
import { api, type LogEntry } from 'admin/lib/api'
|
||||
import { Alert } from '@sveltestrap/sveltestrap'
|
||||
import { firstBy } from 'thenby'
|
||||
import IntersectionObserver from 'svelte-intersection-observer'
|
||||
|
@ -31,7 +31,7 @@ function addItems (newItems: LogEntry[]) {
|
|||
return
|
||||
}
|
||||
items ??= []
|
||||
if (items?.[0]?.timestamp > newItems[0].timestamp) {
|
||||
if ((items?.[0]?.timestamp ?? 0) > newItems[0]!.timestamp) {
|
||||
items = items.concat(newItems)
|
||||
} else {
|
||||
items = [
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts">
|
||||
import { api, Recording } from 'admin/lib/api'
|
||||
import { api, type Recording } from 'admin/lib/api'
|
||||
import { Alert } from '@sveltestrap/sveltestrap'
|
||||
import TerminalRecordingPlayer from 'admin/player/TerminalRecordingPlayer.svelte'
|
||||
import DelayedSpinner from 'common/DelayedSpinner.svelte'
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts">
|
||||
import { api, Role } from 'admin/lib/api'
|
||||
import { api, type Role } from 'admin/lib/api'
|
||||
import AsyncButton from 'common/AsyncButton.svelte'
|
||||
import DelayedSpinner from 'common/DelayedSpinner.svelte'
|
||||
import { replace } from 'svelte-spa-router'
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts">
|
||||
import { api, SSHKey, SSHKnownHost } from 'admin/lib/api'
|
||||
import { api, type SSHKey, type SSHKnownHost } from 'admin/lib/api'
|
||||
import CopyButton from 'common/CopyButton.svelte'
|
||||
import { Alert } from '@sveltestrap/sveltestrap'
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
<script lang="ts">
|
||||
import { api, SessionSnapshot, Recording, TargetSSHOptions, TargetHTTPOptions, TargetMySqlOptions } from 'admin/lib/api'
|
||||
import { api, type SessionSnapshot, type Recording, type TargetSSHOptions, type TargetHTTPOptions, type TargetMySqlOptions } from 'admin/lib/api'
|
||||
import { timeAgo } from 'admin/lib/time'
|
||||
import AsyncButton from 'common/AsyncButton.svelte'
|
||||
import DelayedSpinner from 'common/DelayedSpinner.svelte'
|
||||
import { formatDistance, formatDistanceToNow } from 'date-fns';
|
||||
import { formatDistance, formatDistanceToNow } from 'date-fns'
|
||||
import { onDestroy } from 'svelte'
|
||||
import { link } from 'svelte-spa-router'
|
||||
import { Alert } from '@sveltestrap/sveltestrap'
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<script lang="ts">
|
||||
import { faExternalLink } from '@fortawesome/free-solid-svg-icons'
|
||||
import { api, Role, Target, User } from 'admin/lib/api'
|
||||
import { api, type Role, type Target, type User } from 'admin/lib/api'
|
||||
import AsyncButton from 'common/AsyncButton.svelte'
|
||||
import ConnectionInstructions from 'common/ConnectionInstructions.svelte'
|
||||
import DelayedSpinner from 'common/DelayedSpinner.svelte'
|
||||
|
@ -17,7 +17,7 @@ let error: Error|undefined
|
|||
let selectedUser: User|undefined
|
||||
let target: Target
|
||||
let allRoles: Role[] = []
|
||||
let roleIsAllowed: { [id: string] : any; } = {}
|
||||
let roleIsAllowed: Record<string, any> = {}
|
||||
|
||||
async function load () {
|
||||
try {
|
||||
|
@ -110,8 +110,8 @@ async function toggleRole (role: Role) {
|
|||
{/each}
|
||||
</select>
|
||||
</FormGroup>
|
||||
{:catch error}
|
||||
<Alert color="danger">{error}</Alert>
|
||||
{:catch _error}
|
||||
<Alert color="danger">{_error}</Alert>
|
||||
{/await}
|
||||
{/if}
|
||||
|
||||
|
@ -124,7 +124,7 @@ async function toggleRole (role: Role) {
|
|||
Http: TargetKind.Http,
|
||||
MySql: TargetKind.MySql,
|
||||
}[target.options.kind ?? '']}
|
||||
targetExternalHost={target.options.kind == "Http" ? target.options.externalHost : undefined}
|
||||
targetExternalHost={target.options.kind === 'Http' ? target.options.externalHost : undefined}
|
||||
/>
|
||||
|
||||
<h4 class="mt-4">Configuration</h4>
|
||||
|
@ -234,16 +234,18 @@ async function toggleRole (role: Role) {
|
|||
{#await loadRoles() then}
|
||||
<div class="list-group list-group-flush mb-3">
|
||||
{#each allRoles as role}
|
||||
<div
|
||||
<label
|
||||
for="role-{role.id}"
|
||||
class="list-group-item list-group-item-action d-flex align-items-center"
|
||||
on:click={() => toggleRole(role)}
|
||||
>
|
||||
<Input
|
||||
id="role-{role.id}"
|
||||
class="mb-0 me-2"
|
||||
type="switch"
|
||||
on:click={() => toggleRole(role)}
|
||||
checked={roleIsAllowed[role.id]} />
|
||||
<div>{role.name}</div>
|
||||
</div>
|
||||
</label>
|
||||
{/each}
|
||||
</div>
|
||||
{/await}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts">
|
||||
import { api, Ticket } from 'admin/lib/api'
|
||||
import { api, type Ticket } from 'admin/lib/api'
|
||||
import { link } from 'svelte-spa-router'
|
||||
import { Alert } from '@sveltestrap/sveltestrap'
|
||||
import RelativeDate from './RelativeDate.svelte'
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<script lang="ts">
|
||||
import { Tls, TlsMode } from 'admin/lib/api'
|
||||
import { type Tls, TlsMode } from 'admin/lib/api'
|
||||
import { FormGroup, Input } from '@sveltestrap/sveltestrap'
|
||||
|
||||
export let value: Tls
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<script lang="ts">
|
||||
import { faIdBadge, faKey, faKeyboard, faMobileScreen } from '@fortawesome/free-solid-svg-icons'
|
||||
import { api, CredentialKind, Role, User, UserAuthCredential, UserRequireCredentialsPolicy } from 'admin/lib/api'
|
||||
import { api, CredentialKind, type Role, type User, type UserAuthCredential, type UserRequireCredentialsPolicy } from 'admin/lib/api'
|
||||
import AsyncButton from 'common/AsyncButton.svelte'
|
||||
import DelayedSpinner from 'common/DelayedSpinner.svelte'
|
||||
import Fa from 'svelte-fa'
|
||||
|
@ -16,9 +16,9 @@ let user: User
|
|||
let editingCredential: UserAuthCredential|undefined
|
||||
let policy: UserRequireCredentialsPolicy
|
||||
let allRoles: Role[] = []
|
||||
let roleIsAllowed: { [id: string] : any; } = {}
|
||||
let roleIsAllowed: Record<string, any> = {}
|
||||
|
||||
const policyProtocols: {id: 'ssh' | 'http' | 'mysql', name: string}[] = [
|
||||
const policyProtocols: { id: 'ssh' | 'http' | 'mysql', name: string }[] = [
|
||||
{ id: 'ssh', name: 'SSH' },
|
||||
{ id: 'http', name: 'HTTP' },
|
||||
{ id: 'mysql', name: 'MySQL' },
|
||||
|
@ -100,7 +100,7 @@ function saveCredential () {
|
|||
editingCredential.kind === CredentialKind.Totp
|
||||
&& !user.credentialPolicy?.[protocol]
|
||||
&& user.credentials.some(x => x.kind === ck)
|
||||
&& possibleCredentials[protocol].has(ck)
|
||||
&& possibleCredentials[protocol]?.has(ck)
|
||||
) {
|
||||
user.credentialPolicy = {
|
||||
...user.credentialPolicy ?? {},
|
||||
|
@ -114,6 +114,12 @@ function saveCredential () {
|
|||
editingCredential = undefined
|
||||
}
|
||||
|
||||
function assertDefined<T>(value: T|undefined): T {
|
||||
if (value === undefined) {
|
||||
throw new Error('Value is undefined')
|
||||
}
|
||||
return value
|
||||
}
|
||||
</script>
|
||||
|
||||
{#await load()}
|
||||
|
@ -202,12 +208,15 @@ function saveCredential () {
|
|||
<div>
|
||||
<strong>{protocol.name}</strong>
|
||||
</div>
|
||||
<AuthPolicyEditor
|
||||
user={user}
|
||||
bind:value={policy}
|
||||
possibleCredentials={possibleCredentials[protocol.id]}
|
||||
protocolId={protocol.id}
|
||||
/>
|
||||
{#if possibleCredentials[protocol.id]}
|
||||
{@const _possibleCredentials = assertDefined(possibleCredentials[protocol.id])}
|
||||
<AuthPolicyEditor
|
||||
user={user}
|
||||
bind:value={policy}
|
||||
possibleCredentials={_possibleCredentials}
|
||||
protocolId={protocol.id}
|
||||
/>
|
||||
{/if}
|
||||
</div>
|
||||
{/each}
|
||||
</div>
|
||||
|
@ -215,16 +224,18 @@ function saveCredential () {
|
|||
<h4 class="mt-4">User roles</h4>
|
||||
<div class="list-group list-group-flush mb-3">
|
||||
{#each allRoles as role}
|
||||
<div
|
||||
<label
|
||||
for="role-{role.id}"
|
||||
class="list-group-item list-group-item-action d-flex align-items-center"
|
||||
on:click={() => toggleRole(role)}
|
||||
>
|
||||
<Input
|
||||
id="role-{role.id}"
|
||||
class="mb-0 me-2"
|
||||
type="switch"
|
||||
on:click={() => toggleRole(role)}
|
||||
checked={roleIsAllowed[role.id]} />
|
||||
<div>{role.name}</div>
|
||||
</div>
|
||||
</label>
|
||||
{/each}
|
||||
</div>
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
import { onMount } from 'svelte'
|
||||
import { Alert, Button, FormGroup, Input, Modal, ModalBody, ModalFooter, ModalHeader } from '@sveltestrap/sveltestrap'
|
||||
import QRCode from 'qrcode'
|
||||
import { TOTP, TOTPOptions } from '@otplib/core'
|
||||
import { TOTP, type TOTPOptions } from '@otplib/core'
|
||||
import { createDigest } from '@otplib/plugin-crypto-js'
|
||||
import { faRefresh } from '@fortawesome/free-solid-svg-icons'
|
||||
import Fa from 'svelte-fa'
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
'brightBlack', 'brightRed', 'brightGreen', 'brightYellow', 'brightBlue', 'brightMagenta', 'brightCyan', 'brightWhite',
|
||||
]
|
||||
|
||||
const theme: { [key: string]: string } = {
|
||||
const theme: Record<string, string> = {
|
||||
foreground: '#ffcb83',
|
||||
background: '#262626',
|
||||
cursor: '#fc531d',
|
||||
|
@ -56,7 +56,7 @@
|
|||
'#fafaff',
|
||||
]
|
||||
for (let i = 0; i < COLOR_NAMES.length; i++) {
|
||||
theme[COLOR_NAMES[i]] = colors[i]
|
||||
theme[COLOR_NAMES[i]!] = colors[i]!
|
||||
}
|
||||
|
||||
interface AsciiCastHeader {
|
||||
|
@ -216,7 +216,7 @@
|
|||
let lastSize = { cols: term.cols, rows: term.rows }
|
||||
|
||||
for (let i = 0; i <= index; i++) {
|
||||
let event = events[i]
|
||||
let event = events[i]!
|
||||
if ('cols' in event) {
|
||||
lastSize = { cols: event.cols, rows: event.rows }
|
||||
}
|
||||
|
@ -233,7 +233,7 @@
|
|||
|
||||
for (let i = index; i < events.length; i++) {
|
||||
let shouldSnapshot = false
|
||||
let event = events[i]
|
||||
let event = events[i]!
|
||||
if (event.time > time) {
|
||||
break
|
||||
}
|
||||
|
@ -296,6 +296,12 @@
|
|||
playing = !playing
|
||||
}
|
||||
|
||||
function keyPressHandler (event: KeyboardEvent) {
|
||||
if (event.key === ' ') {
|
||||
togglePlaying()
|
||||
}
|
||||
}
|
||||
|
||||
step()
|
||||
|
||||
function toggleFullscreen () {
|
||||
|
@ -318,10 +324,13 @@
|
|||
</div>
|
||||
{/if}
|
||||
|
||||
<!-- svelte-ignore a11y-no-noninteractive-element-interactions -->
|
||||
<div
|
||||
class="container"
|
||||
class:invisible={loading}
|
||||
on:click={togglePlaying}
|
||||
on:keypress={keyPressHandler}
|
||||
role="img"
|
||||
bind:this={containerElement}
|
||||
></div>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<script lang="ts">
|
||||
import { faCheck } from '@fortawesome/free-solid-svg-icons'
|
||||
import Fa from 'svelte-fa'
|
||||
import { Button, Spinner, Color } from '@sveltestrap/sveltestrap'
|
||||
import { Button, Spinner, type Color } from '@sveltestrap/sveltestrap'
|
||||
|
||||
enum State {
|
||||
Normal = 'n',
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<script lang="ts">
|
||||
import { faCheck, faCopy } from '@fortawesome/free-solid-svg-icons'
|
||||
import Fa from 'svelte-fa'
|
||||
import { Button, Color } from '@sveltestrap/sveltestrap'
|
||||
import { Button, type Color } from '@sveltestrap/sveltestrap'
|
||||
import copyTextToClipboard from 'copy-text-to-clipboard'
|
||||
|
||||
export let text: string
|
||||
|
@ -13,7 +13,9 @@ let successVisible = false
|
|||
let button: HTMLElement
|
||||
|
||||
async function _click () {
|
||||
if (disabled) return
|
||||
if (disabled) {
|
||||
return
|
||||
}
|
||||
successVisible = true
|
||||
copyTextToClipboard(text)
|
||||
setTimeout(() => {
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
}
|
||||
</script>
|
||||
|
||||
<script lang="ts">
|
||||
<script lang="ts" generics="T">
|
||||
import { onDestroy } from 'svelte'
|
||||
import { Subject, switchMap, map, Observable, distinctUntilChanged, share, combineLatest, tap, debounceTime } from 'rxjs'
|
||||
import Pagination from './Pagination.svelte'
|
||||
|
@ -20,9 +20,6 @@
|
|||
import { Input } from '@sveltestrap/sveltestrap'
|
||||
import DelayedSpinner from './DelayedSpinner.svelte'
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-type-alias
|
||||
type T = $$Generic
|
||||
|
||||
export let page = 0
|
||||
export let pageSize: number|undefined = undefined
|
||||
export let load: (_: LoadOptions) => Observable<PaginatedResponse<T>>
|
||||
|
@ -83,27 +80,27 @@
|
|||
</div>
|
||||
{#await $items}
|
||||
<DelayedSpinner />
|
||||
{:then items}
|
||||
{#if items}
|
||||
{:then _items}
|
||||
{#if _items}
|
||||
<div class="list-group list-group-flush mb-3">
|
||||
{#each items as item}
|
||||
{#each _items as item}
|
||||
<slot name="item" item={item} />
|
||||
{/each}
|
||||
</div>
|
||||
<slot name="footer" items={items} />
|
||||
<slot name="footer" items={_items} />
|
||||
{:else}
|
||||
<DelayedSpinner />
|
||||
{/if}
|
||||
|
||||
{#if filter && loaded && !items?.length}
|
||||
{#if filter && loaded && !_items?.length}
|
||||
<em>
|
||||
Nothing found
|
||||
</em>
|
||||
{/if}
|
||||
{/await}
|
||||
|
||||
{#await $total then total}
|
||||
{#if pageSize && total > pageSize}
|
||||
<Pagination total={total} bind:page={page} pageSize={pageSize} />
|
||||
{#await $total then _total}
|
||||
{#if pageSize && _total > pageSize}
|
||||
<Pagination total={_total} bind:page={page} pageSize={pageSize} />
|
||||
{/if}
|
||||
{/await}
|
||||
|
|
|
@ -1,11 +1,14 @@
|
|||
<script lang="ts">
|
||||
// eslint-disable-next-line import/no-duplicates
|
||||
import { onDestroy, onMount } from 'svelte'
|
||||
// eslint-disable-next-line import/no-duplicates
|
||||
import { get } from 'svelte/store'
|
||||
import { currentThemeFile } from 'theme'
|
||||
import logo from '../../public/assets/logo.svg?raw'
|
||||
|
||||
let element: HTMLElement|undefined
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/max-params
|
||||
function colorize (r: number, g: number, b: number, dr: number, dg: number, db: number) {
|
||||
element?.querySelectorAll('path').forEach((p, idx) => {
|
||||
let d = idx
|
||||
|
@ -32,6 +35,7 @@ onDestroy(s)
|
|||
</script>
|
||||
|
||||
<div bind:this={element} class="d-flex">
|
||||
<!-- eslint-disable-next-line svelte/no-at-html-tags -->
|
||||
{@html logo}
|
||||
</div>
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import { BehaviorSubject } from 'rxjs'
|
||||
import { get, writable, Writable } from 'svelte/store'
|
||||
import { get, writable, type Writable } from 'svelte/store'
|
||||
|
||||
export function autosave<T> (key: string, initial: T): ([Writable<T>, BehaviorSubject<T>]) {
|
||||
key = `warpgate:${key}`
|
||||
|
|
|
@ -82,6 +82,7 @@ async function logout () {
|
|||
}
|
||||
}}
|
||||
>
|
||||
<!-- svelte-ignore a11y-no-noninteractive-element-interactions -->
|
||||
<img class="logo" src={logo} alt="Warpgate" on:mousedown|preventDefault />
|
||||
</button>
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
import { faSignOut } from '@fortawesome/free-solid-svg-icons'
|
||||
import { Alert } from '@sveltestrap/sveltestrap'
|
||||
import Fa from 'svelte-fa'
|
||||
import Router, { push, RouteDetail } from 'svelte-spa-router'
|
||||
import Router, { push, type RouteDetail } from 'svelte-spa-router'
|
||||
import { wrap } from 'svelte-spa-router/wrap'
|
||||
import { get } from 'svelte/store'
|
||||
import { api } from 'gateway/lib/api'
|
||||
|
|
|
@ -6,7 +6,7 @@ import Fa from 'svelte-fa'
|
|||
import { faArrowRight } from '@fortawesome/free-solid-svg-icons'
|
||||
import { faGoogle, faMicrosoft, faApple } from '@fortawesome/free-brands-svg-icons'
|
||||
|
||||
import { api, ApiAuthState, LoginFailureResponseFromJSON, SsoProviderDescription, SsoProviderKind, ResponseError } from 'gateway/lib/api'
|
||||
import { api, ApiAuthState, LoginFailureResponseFromJSON, type SsoProviderDescription, SsoProviderKind, ResponseError } from 'gateway/lib/api'
|
||||
import { reloadServerInfo } from 'gateway/lib/store'
|
||||
import AsyncButton from 'common/AsyncButton.svelte'
|
||||
import DelayedSpinner from 'common/DelayedSpinner.svelte'
|
||||
|
@ -56,7 +56,7 @@ async function continueWithState () {
|
|||
// todo
|
||||
}
|
||||
if (providers.length === 1) {
|
||||
startSSO(providers[0])
|
||||
startSSO(providers[0]!)
|
||||
}
|
||||
}
|
||||
if (authState === ApiAuthState.OtpNeeded) {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<script lang="ts">
|
||||
import { Alert } from '@sveltestrap/sveltestrap'
|
||||
|
||||
import { api, ApiAuthState, AuthStateResponseInternal } from 'gateway/lib/api'
|
||||
import { api, ApiAuthState, type AuthStateResponseInternal } from 'gateway/lib/api'
|
||||
import AsyncButton from 'common/AsyncButton.svelte'
|
||||
import DelayedSpinner from 'common/DelayedSpinner.svelte'
|
||||
import RelativeDate from 'admin/RelativeDate.svelte'
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
import { Observable, from, map } from 'rxjs'
|
||||
import { faArrowRight } from '@fortawesome/free-solid-svg-icons'
|
||||
import ConnectionInstructions from 'common/ConnectionInstructions.svelte'
|
||||
import ItemList, { LoadOptions, PaginatedResponse } from 'common/ItemList.svelte'
|
||||
import { api, TargetSnapshot, TargetKind } from 'gateway/lib/api'
|
||||
import ItemList, { type LoadOptions, type PaginatedResponse } from 'common/ItemList.svelte'
|
||||
import { api, type TargetSnapshot, TargetKind } from 'gateway/lib/api'
|
||||
import { createEventDispatcher } from 'svelte'
|
||||
import Fa from 'svelte-fa'
|
||||
import { Modal, ModalBody, ModalHeader } from '@sveltestrap/sveltestrap'
|
||||
|
@ -53,10 +53,10 @@ function loadURL (url: string) {
|
|||
class="list-group-item list-group-item-action target-item"
|
||||
href={
|
||||
target.kind === TargetKind.WebAdmin
|
||||
? '/@warpgate/admin'
|
||||
: target.kind === TargetKind.Http
|
||||
? `/?warpgate-target=${target.name}`
|
||||
: '/@warpgate/admin'
|
||||
? '/@warpgate/admin'
|
||||
: target.kind === TargetKind.Http
|
||||
? `/?warpgate-target=${target.name}`
|
||||
: '/@warpgate/admin'
|
||||
}
|
||||
on:click|preventDefault={e => {
|
||||
if (e.metaKey || e.ctrlKey) {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import { DefaultApi, Configuration } from './api-client/dist'
|
||||
import { DefaultApi, Configuration } from './api-client'
|
||||
|
||||
const configuration = new Configuration({
|
||||
basePath: '/@warpgate/api',
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import { writable } from 'svelte/store'
|
||||
import { api, Info } from './api'
|
||||
import { api, type Info } from './api'
|
||||
|
||||
export const serverInfo = writable<Info|undefined>(undefined)
|
||||
|
||||
|
|
|
@ -7,8 +7,9 @@
|
|||
"resolveJsonModule": true,
|
||||
"strictNullChecks": true,
|
||||
"baseUrl": ".",
|
||||
"preserveValueImports": false,
|
||||
"verbatimModuleSyntax": true,
|
||||
"noUnusedLocals": false,
|
||||
"noUncheckedIndexedAccess": true,
|
||||
/**
|
||||
* Typecheck JS in `.svelte` and `.js` files by default.
|
||||
* Disable checkJs if you'd like to use dynamic types in JS.
|
||||
|
@ -22,8 +23,7 @@
|
|||
"*": [
|
||||
"src/*"
|
||||
]
|
||||
},
|
||||
"verbatimModuleSyntax": false,
|
||||
}
|
||||
},
|
||||
"include": [
|
||||
"src/**/*.d.ts",
|
||||
|
|
|
@ -8,7 +8,7 @@ export default defineConfig({
|
|||
plugins: [
|
||||
svelte(),
|
||||
tsconfigPaths(),
|
||||
checker({ typescript: true }),
|
||||
// checker({ typescript: true }),
|
||||
],
|
||||
base: '/@warpgate',
|
||||
build: {
|
||||
|
|
|
@ -155,11 +155,16 @@
|
|||
dependencies:
|
||||
eslint-visitor-keys "^3.3.0"
|
||||
|
||||
"@eslint-community/regexpp@^4.10.0", "@eslint-community/regexpp@^4.6.1":
|
||||
"@eslint-community/regexpp@^4.10.0":
|
||||
version "4.10.1"
|
||||
resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.10.1.tgz#361461e5cb3845d874e61731c11cfedd664d83a0"
|
||||
integrity sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==
|
||||
|
||||
"@eslint-community/regexpp@^4.6.1":
|
||||
version "4.11.0"
|
||||
resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.11.0.tgz#b0ffd0312b4a3fd2d6f77237e7248a5ad3a680ae"
|
||||
integrity sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==
|
||||
|
||||
"@eslint/eslintrc@^2.1.4":
|
||||
version "2.1.4"
|
||||
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad"
|
||||
|
@ -249,16 +254,11 @@
|
|||
resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280"
|
||||
integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==
|
||||
|
||||
"@jridgewell/sourcemap-codec@^1.4.10":
|
||||
"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.4.15":
|
||||
version "1.5.0"
|
||||
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a"
|
||||
integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==
|
||||
|
||||
"@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.4.15":
|
||||
version "1.4.15"
|
||||
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32"
|
||||
integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
|
||||
|
||||
"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24":
|
||||
version "0.3.25"
|
||||
resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0"
|
||||
|
@ -563,62 +563,62 @@
|
|||
resolved "https://registry.yarnpkg.com/@types/ua-parser-js/-/ua-parser-js-0.7.39.tgz#832c58e460c9435e4e34bb866e85e9146e12cdbb"
|
||||
integrity sha512-P/oDfpofrdtF5xw433SPALpdSchtJmY7nsJItf8h3KXqOslkbySh8zq4dSWXH2oTjRvJ5PczVEoCZPow6GicLg==
|
||||
|
||||
"@typescript-eslint/eslint-plugin@^7.13.0":
|
||||
version "7.13.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.1.tgz#cdc521c8bca38b55585cf30db787fb2abad3f9fd"
|
||||
integrity sha512-kZqi+WZQaZfPKnsflLJQCz6Ze9FFSMfXrrIOcyargekQxG37ES7DJNpJUE9Q/X5n3yTIP/WPutVNzgknQ7biLg==
|
||||
"@typescript-eslint/eslint-plugin@^7.17.0":
|
||||
version "7.17.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.17.0.tgz#c8ed1af1ad2928ede5cdd207f7e3090499e1f77b"
|
||||
integrity sha512-pyiDhEuLM3PuANxH7uNYan1AaFs5XE0zw1hq69JBvGvE7gSuEoQl1ydtEe/XQeoC3GQxLXyOVa5kNOATgM638A==
|
||||
dependencies:
|
||||
"@eslint-community/regexpp" "^4.10.0"
|
||||
"@typescript-eslint/scope-manager" "7.13.1"
|
||||
"@typescript-eslint/type-utils" "7.13.1"
|
||||
"@typescript-eslint/utils" "7.13.1"
|
||||
"@typescript-eslint/visitor-keys" "7.13.1"
|
||||
"@typescript-eslint/scope-manager" "7.17.0"
|
||||
"@typescript-eslint/type-utils" "7.17.0"
|
||||
"@typescript-eslint/utils" "7.17.0"
|
||||
"@typescript-eslint/visitor-keys" "7.17.0"
|
||||
graphemer "^1.4.0"
|
||||
ignore "^5.3.1"
|
||||
natural-compare "^1.4.0"
|
||||
ts-api-utils "^1.3.0"
|
||||
|
||||
"@typescript-eslint/parser@^7.13.0":
|
||||
version "7.13.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.13.1.tgz#fac57811b3e519185f7259bac312291f7b9c4e72"
|
||||
integrity sha512-1ELDPlnLvDQ5ybTSrMhRTFDfOQEOXNM+eP+3HT/Yq7ruWpciQw+Avi73pdEbA4SooCawEWo3dtYbF68gN7Ed1A==
|
||||
"@typescript-eslint/parser@^7.17.0":
|
||||
version "7.17.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.17.0.tgz#be8e32c159190cd40a305a2121220eadea5a88e7"
|
||||
integrity sha512-puiYfGeg5Ydop8eusb/Hy1k7QmOU6X3nvsqCgzrB2K4qMavK//21+PzNE8qeECgNOIoertJPUC1SpegHDI515A==
|
||||
dependencies:
|
||||
"@typescript-eslint/scope-manager" "7.13.1"
|
||||
"@typescript-eslint/types" "7.13.1"
|
||||
"@typescript-eslint/typescript-estree" "7.13.1"
|
||||
"@typescript-eslint/visitor-keys" "7.13.1"
|
||||
"@typescript-eslint/scope-manager" "7.17.0"
|
||||
"@typescript-eslint/types" "7.17.0"
|
||||
"@typescript-eslint/typescript-estree" "7.17.0"
|
||||
"@typescript-eslint/visitor-keys" "7.17.0"
|
||||
debug "^4.3.4"
|
||||
|
||||
"@typescript-eslint/scope-manager@7.13.1":
|
||||
version "7.13.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.13.1.tgz#c08041206904bf36f0e6997efdb0ca775e0c452e"
|
||||
integrity sha512-adbXNVEs6GmbzaCpymHQ0MB6E4TqoiVbC0iqG3uijR8ZYfpAXMGttouQzF4Oat3P2GxDVIrg7bMI/P65LiQZdg==
|
||||
"@typescript-eslint/scope-manager@7.17.0":
|
||||
version "7.17.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.17.0.tgz#e072d0f914662a7bfd6c058165e3c2b35ea26b9d"
|
||||
integrity sha512-0P2jTTqyxWp9HiKLu/Vemr2Rg1Xb5B7uHItdVZ6iAenXmPo4SZ86yOPCJwMqpCyaMiEHTNqizHfsbmCFT1x9SA==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "7.13.1"
|
||||
"@typescript-eslint/visitor-keys" "7.13.1"
|
||||
"@typescript-eslint/types" "7.17.0"
|
||||
"@typescript-eslint/visitor-keys" "7.17.0"
|
||||
|
||||
"@typescript-eslint/type-utils@7.13.1":
|
||||
version "7.13.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.13.1.tgz#63bec3f1fb43cf0bc409cbdb88ef96d118ca8632"
|
||||
integrity sha512-aWDbLu1s9bmgPGXSzNCxELu+0+HQOapV/y+60gPXafR8e2g1Bifxzevaa+4L2ytCWm+CHqpELq4CSoN9ELiwCg==
|
||||
"@typescript-eslint/type-utils@7.17.0":
|
||||
version "7.17.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.17.0.tgz#c5da78feb134c9c9978cbe89e2b1a589ed22091a"
|
||||
integrity sha512-XD3aaBt+orgkM/7Cei0XNEm1vwUxQ958AOLALzPlbPqb8C1G8PZK85tND7Jpe69Wualri81PLU+Zc48GVKIMMA==
|
||||
dependencies:
|
||||
"@typescript-eslint/typescript-estree" "7.13.1"
|
||||
"@typescript-eslint/utils" "7.13.1"
|
||||
"@typescript-eslint/typescript-estree" "7.17.0"
|
||||
"@typescript-eslint/utils" "7.17.0"
|
||||
debug "^4.3.4"
|
||||
ts-api-utils "^1.3.0"
|
||||
|
||||
"@typescript-eslint/types@7.13.1":
|
||||
version "7.13.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.13.1.tgz#787db283bd0b58751094c90d5b58bbf5e9fc9bd8"
|
||||
integrity sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw==
|
||||
"@typescript-eslint/types@7.17.0":
|
||||
version "7.17.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.17.0.tgz#7ce8185bdf06bc3494e73d143dbf3293111b9cff"
|
||||
integrity sha512-a29Ir0EbyKTKHnZWbNsrc/gqfIBqYPwj3F2M+jWE/9bqfEHg0AMtXzkbUkOG6QgEScxh2+Pz9OXe11jHDnHR7A==
|
||||
|
||||
"@typescript-eslint/typescript-estree@7.13.1":
|
||||
version "7.13.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.1.tgz#3412841b130e070db2f675e3d9b8cb1ae49e1c3f"
|
||||
integrity sha512-uxNr51CMV7npU1BxZzYjoVz9iyjckBduFBP0S5sLlh1tXYzHzgZ3BR9SVsNed+LmwKrmnqN3Kdl5t7eZ5TS1Yw==
|
||||
"@typescript-eslint/typescript-estree@7.17.0":
|
||||
version "7.17.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.17.0.tgz#dcab3fea4c07482329dd6107d3c6480e228e4130"
|
||||
integrity sha512-72I3TGq93t2GoSBWI093wmKo0n6/b7O4j9o8U+f65TVD0FS6bI2180X5eGEr8MA8PhKMvYe9myZJquUT2JkCZw==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "7.13.1"
|
||||
"@typescript-eslint/visitor-keys" "7.13.1"
|
||||
"@typescript-eslint/types" "7.17.0"
|
||||
"@typescript-eslint/visitor-keys" "7.17.0"
|
||||
debug "^4.3.4"
|
||||
globby "^11.1.0"
|
||||
is-glob "^4.0.3"
|
||||
|
@ -626,22 +626,22 @@
|
|||
semver "^7.6.0"
|
||||
ts-api-utils "^1.3.0"
|
||||
|
||||
"@typescript-eslint/utils@7.13.1":
|
||||
version "7.13.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.13.1.tgz#611083379caa0d3a2c09d126c65065a3e4337ba2"
|
||||
integrity sha512-h5MzFBD5a/Gh/fvNdp9pTfqJAbuQC4sCN2WzuXme71lqFJsZtLbjxfSk4r3p02WIArOF9N94pdsLiGutpDbrXQ==
|
||||
"@typescript-eslint/utils@7.17.0":
|
||||
version "7.17.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.17.0.tgz#815cd85b9001845d41b699b0ce4f92d6dfb84902"
|
||||
integrity sha512-r+JFlm5NdB+JXc7aWWZ3fKSm1gn0pkswEwIYsrGPdsT2GjsRATAKXiNtp3vgAAO1xZhX8alIOEQnNMl3kbTgJw==
|
||||
dependencies:
|
||||
"@eslint-community/eslint-utils" "^4.4.0"
|
||||
"@typescript-eslint/scope-manager" "7.13.1"
|
||||
"@typescript-eslint/types" "7.13.1"
|
||||
"@typescript-eslint/typescript-estree" "7.13.1"
|
||||
"@typescript-eslint/scope-manager" "7.17.0"
|
||||
"@typescript-eslint/types" "7.17.0"
|
||||
"@typescript-eslint/typescript-estree" "7.17.0"
|
||||
|
||||
"@typescript-eslint/visitor-keys@7.13.1":
|
||||
version "7.13.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.1.tgz#9c229a795a919db61f2d7f2337ef584ac05fbe96"
|
||||
integrity sha512-k/Bfne7lrP7hcb7m9zSsgcBmo+8eicqqfNAJ7uUY+jkTFpKeH2FSkWpFRtimBxgkyvqfu9jTPRbYOvud6isdXA==
|
||||
"@typescript-eslint/visitor-keys@7.17.0":
|
||||
version "7.17.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.17.0.tgz#680465c734be30969e564b4647f38d6cdf49bfb0"
|
||||
integrity sha512-RVGC9UhPOCsfCdI9pU++K4nD7to+jTcMIbXTSOcrLqUEW6gF2pU1UUbYJKc9cvcRSK1UDeMJ7pdMxf4bhMpV/A==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "7.13.1"
|
||||
"@typescript-eslint/types" "7.17.0"
|
||||
eslint-visitor-keys "^3.4.3"
|
||||
|
||||
"@ungap/structured-clone@^1.2.0":
|
||||
|
@ -654,11 +654,16 @@ acorn-jsx@^5.3.2:
|
|||
resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
|
||||
integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
|
||||
|
||||
acorn@^8.10.0, acorn@^8.9.0:
|
||||
acorn@^8.10.0:
|
||||
version "8.12.0"
|
||||
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.0.tgz#1627bfa2e058148036133b8d9b51a700663c294c"
|
||||
integrity sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==
|
||||
|
||||
acorn@^8.9.0:
|
||||
version "8.12.1"
|
||||
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.12.1.tgz#71616bdccbe25e27a54439e0046e89ca76df2248"
|
||||
integrity sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==
|
||||
|
||||
agent-base@^7.0.2:
|
||||
version "7.1.1"
|
||||
resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.1.tgz#bdbded7dfb096b751a2a087eeeb9664725b2e317"
|
||||
|
@ -877,12 +882,12 @@ brace-expansion@^2.0.1:
|
|||
dependencies:
|
||||
balanced-match "^1.0.0"
|
||||
|
||||
braces@^3.0.2, braces@~3.0.2:
|
||||
version "3.0.2"
|
||||
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
|
||||
integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
|
||||
braces@^3.0.3, braces@~3.0.2:
|
||||
version "3.0.3"
|
||||
resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789"
|
||||
integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==
|
||||
dependencies:
|
||||
fill-range "^7.0.1"
|
||||
fill-range "^7.1.1"
|
||||
|
||||
buffer-crc32@^1.0.0:
|
||||
version "1.0.0"
|
||||
|
@ -1510,27 +1515,27 @@ eslint-plugin-node@^11.1.0:
|
|||
resolve "^1.10.1"
|
||||
semver "^6.1.0"
|
||||
|
||||
eslint-plugin-promise@^6.2.0:
|
||||
version "6.2.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-6.2.0.tgz#e24ab0e3c0a25fa227d98d9ff612156b5af15945"
|
||||
integrity sha512-QmAqwizauvnKOlifxyDj2ObfULpHQawlg/zQdgEixur9vl0CvZGv/LCJV2rtj3210QCoeGBzVMfMXqGAOr/4fA==
|
||||
eslint-plugin-promise@^7.0.0:
|
||||
version "7.0.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-7.0.0.tgz#2d54cf6e92213cb2915be62abf338b64c089431d"
|
||||
integrity sha512-wb1ECT+b90ndBdAujhIdAU8oQ3Vt5gKqP/t78KOmg0ifynrvc2jGR9f6ndbOVNFpKf6jLUBlBBDF3H3Wk0JICg==
|
||||
|
||||
eslint-plugin-svelte@^2.39.4:
|
||||
version "2.39.4"
|
||||
resolved "https://registry.yarnpkg.com/eslint-plugin-svelte/-/eslint-plugin-svelte-2.39.4.tgz#540e24fdd50e327785d38086faa32f83cad81dc0"
|
||||
integrity sha512-MAuMNCOQAfCNaOlJfzC/ZnhQi2YwKdQvjYTFs99QIMWTMhN8nIatwQf8X50kCoSfQb7Q8dadGu8QUOOMoCCMTA==
|
||||
version "2.43.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-plugin-svelte/-/eslint-plugin-svelte-2.43.0.tgz#bcfaec0e114e3450071415c3ef9c57dcf7ce118f"
|
||||
integrity sha512-REkxQWvg2pp7QVLxQNa+dJ97xUqRe7Y2JJbSWkHSuszu0VcblZtXkPBPckkivk99y5CdLw4slqfPylL2d/X4jQ==
|
||||
dependencies:
|
||||
"@eslint-community/eslint-utils" "^4.4.0"
|
||||
"@jridgewell/sourcemap-codec" "^1.4.15"
|
||||
eslint-compat-utils "^0.5.1"
|
||||
esutils "^2.0.3"
|
||||
known-css-properties "^0.32.0"
|
||||
known-css-properties "^0.34.0"
|
||||
postcss "^8.4.38"
|
||||
postcss-load-config "^3.1.4"
|
||||
postcss-safe-parser "^6.0.0"
|
||||
postcss-selector-parser "^6.1.0"
|
||||
semver "^7.6.2"
|
||||
svelte-eslint-parser "^0.38.0"
|
||||
svelte-eslint-parser "^0.41.0"
|
||||
|
||||
eslint-scope@^7.2.2:
|
||||
version "7.2.2"
|
||||
|
@ -1552,17 +1557,12 @@ eslint-visitor-keys@^1.1.0:
|
|||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e"
|
||||
integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==
|
||||
|
||||
eslint-visitor-keys@^3.3.0:
|
||||
version "3.4.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz#c7f0f956124ce677047ddbc192a68f999454dedc"
|
||||
integrity sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==
|
||||
|
||||
eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3:
|
||||
eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3:
|
||||
version "3.4.3"
|
||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800"
|
||||
integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
|
||||
|
||||
eslint@^8.57.0:
|
||||
eslint@^8:
|
||||
version "8.57.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.0.tgz#c786a6fd0e0b68941aaf624596fb987089195668"
|
||||
integrity sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==
|
||||
|
@ -1616,9 +1616,9 @@ espree@^9.6.0, espree@^9.6.1:
|
|||
eslint-visitor-keys "^3.4.1"
|
||||
|
||||
esquery@^1.4.2:
|
||||
version "1.5.0"
|
||||
resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b"
|
||||
integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==
|
||||
version "1.6.0"
|
||||
resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7"
|
||||
integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==
|
||||
dependencies:
|
||||
estraverse "^5.1.0"
|
||||
|
||||
|
@ -1660,10 +1660,10 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
|
|||
resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
|
||||
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
|
||||
|
||||
fast-glob@^3.2.7, fast-glob@^3.2.9:
|
||||
version "3.2.12"
|
||||
resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80"
|
||||
integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==
|
||||
fast-glob@^3.2.7, fast-glob@^3.3.1:
|
||||
version "3.3.2"
|
||||
resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129"
|
||||
integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==
|
||||
dependencies:
|
||||
"@nodelib/fs.stat" "^2.0.2"
|
||||
"@nodelib/fs.walk" "^1.2.3"
|
||||
|
@ -1671,10 +1671,10 @@ fast-glob@^3.2.7, fast-glob@^3.2.9:
|
|||
merge2 "^1.3.0"
|
||||
micromatch "^4.0.4"
|
||||
|
||||
fast-glob@^3.3.1:
|
||||
version "3.3.2"
|
||||
resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129"
|
||||
integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==
|
||||
fast-glob@^3.2.9:
|
||||
version "3.2.12"
|
||||
resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80"
|
||||
integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==
|
||||
dependencies:
|
||||
"@nodelib/fs.stat" "^2.0.2"
|
||||
"@nodelib/fs.walk" "^1.2.3"
|
||||
|
@ -1718,10 +1718,10 @@ file-entry-cache@^6.0.1:
|
|||
dependencies:
|
||||
flat-cache "^3.0.4"
|
||||
|
||||
fill-range@^7.0.1:
|
||||
version "7.0.1"
|
||||
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
|
||||
integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
|
||||
fill-range@^7.1.1:
|
||||
version "7.1.1"
|
||||
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292"
|
||||
integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==
|
||||
dependencies:
|
||||
to-regex-range "^5.0.1"
|
||||
|
||||
|
@ -1875,7 +1875,7 @@ glob-parent@^6.0.2:
|
|||
dependencies:
|
||||
is-glob "^4.0.3"
|
||||
|
||||
glob@7.2.3:
|
||||
glob@7.2.3, glob@^7.1.3:
|
||||
version "7.2.3"
|
||||
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
|
||||
integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
|
||||
|
@ -1887,18 +1887,6 @@ glob@7.2.3:
|
|||
once "^1.3.0"
|
||||
path-is-absolute "^1.0.0"
|
||||
|
||||
glob@^7.1.3:
|
||||
version "7.2.0"
|
||||
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
|
||||
integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
|
||||
dependencies:
|
||||
fs.realpath "^1.0.0"
|
||||
inflight "^1.0.4"
|
||||
inherits "2"
|
||||
minimatch "^3.0.4"
|
||||
once "^1.3.0"
|
||||
path-is-absolute "^1.0.0"
|
||||
|
||||
globals@^13.19.0:
|
||||
version "13.24.0"
|
||||
resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171"
|
||||
|
@ -2329,10 +2317,10 @@ kleur@^4.1.5:
|
|||
resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780"
|
||||
integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==
|
||||
|
||||
known-css-properties@^0.32.0:
|
||||
version "0.32.0"
|
||||
resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.32.0.tgz#0bdb64b1bd16bdf3614a87cedf921d3d6d6a417a"
|
||||
integrity sha512-PXuex21brpp7qENI143ZL5cWQcMR4IZVeeZv9ew6dg+bZX2xRUu/NzGKudZJY5DO4APiMkNPYIF8VGIdY08Tdw==
|
||||
known-css-properties@^0.34.0:
|
||||
version "0.34.0"
|
||||
resolved "https://registry.yarnpkg.com/known-css-properties/-/known-css-properties-0.34.0.tgz#ccd7e9f4388302231b3f174a8b1d5b1f7b576cea"
|
||||
integrity sha512-tBECoUqNFbyAY4RrbqsBQqDFpGXAEbdD5QKr8kACx3+rnArmuuR22nKQWKazvp07N9yjTyDZaw/20UIH8tL9DQ==
|
||||
|
||||
levn@^0.4.1:
|
||||
version "0.4.1"
|
||||
|
@ -2409,11 +2397,11 @@ merge2@^1.3.0, merge2@^1.4.1:
|
|||
integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
|
||||
|
||||
micromatch@^4.0.4:
|
||||
version "4.0.5"
|
||||
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"
|
||||
integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==
|
||||
version "4.0.7"
|
||||
resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.7.tgz#33e8190d9fe474a9895525f5618eee136d46c2e5"
|
||||
integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==
|
||||
dependencies:
|
||||
braces "^3.0.2"
|
||||
braces "^3.0.3"
|
||||
picomatch "^2.3.1"
|
||||
|
||||
mime-db@1.52.0:
|
||||
|
@ -2453,9 +2441,9 @@ minimatch@^9.0.4:
|
|||
brace-expansion "^2.0.1"
|
||||
|
||||
minimist@^1.2.0, minimist@^1.2.6:
|
||||
version "1.2.7"
|
||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18"
|
||||
integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==
|
||||
version "1.2.8"
|
||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
|
||||
integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
|
||||
|
||||
mkdirp@^0.5.1:
|
||||
version "0.5.6"
|
||||
|
@ -2695,7 +2683,7 @@ periscopic@^3.1.0:
|
|||
estree-walker "^3.0.0"
|
||||
is-reference "^3.0.0"
|
||||
|
||||
picocolors@^1.0.0:
|
||||
picocolors@^1.0.0, picocolors@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1"
|
||||
integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==
|
||||
|
@ -2734,20 +2722,20 @@ postcss-scss@^4.0.9:
|
|||
integrity sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==
|
||||
|
||||
postcss-selector-parser@^6.1.0:
|
||||
version "6.1.0"
|
||||
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.1.0.tgz#49694cb4e7c649299fea510a29fa6577104bcf53"
|
||||
integrity sha512-UMz42UD0UY0EApS0ZL9o1XnLhSTtvvvLe5Dc2H2O56fvRZi+KulDyf5ctDhhtYJBGKStV2FL1fy6253cmLgqVQ==
|
||||
version "6.1.1"
|
||||
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.1.1.tgz#5be94b277b8955904476a2400260002ce6c56e38"
|
||||
integrity sha512-b4dlw/9V8A71rLIDsSwVmak9z2DuBUB7CA1/wSdelNEzqsjoSPeADTWNO09lpH49Diy3/JIZ2bSPB1dI3LJCHg==
|
||||
dependencies:
|
||||
cssesc "^3.0.0"
|
||||
util-deprecate "^1.0.2"
|
||||
|
||||
postcss@^8.4.38:
|
||||
version "8.4.38"
|
||||
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.38.tgz#b387d533baf2054288e337066d81c6bee9db9e0e"
|
||||
integrity sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==
|
||||
postcss@^8.4.38, postcss@^8.4.39:
|
||||
version "8.4.40"
|
||||
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.40.tgz#eb81f2a4dd7668ed869a6db25999e02e9ad909d8"
|
||||
integrity sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q==
|
||||
dependencies:
|
||||
nanoid "^3.3.7"
|
||||
picocolors "^1.0.0"
|
||||
picocolors "^1.0.1"
|
||||
source-map-js "^1.2.0"
|
||||
|
||||
prelude-ls@^1.2.1:
|
||||
|
@ -3011,7 +2999,12 @@ semver@^7.3.4:
|
|||
dependencies:
|
||||
lru-cache "^6.0.0"
|
||||
|
||||
semver@^7.5.0, semver@^7.5.4, semver@^7.6.0, semver@^7.6.2:
|
||||
semver@^7.5.4, semver@^7.6.2:
|
||||
version "7.6.3"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.3.tgz#980f7b5550bc175fb4dc09403085627f9eb33143"
|
||||
integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==
|
||||
|
||||
semver@^7.6.0:
|
||||
version "7.6.2"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13"
|
||||
integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==
|
||||
|
@ -3195,28 +3188,26 @@ supports-preserve-symlinks-flag@^1.0.0:
|
|||
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
|
||||
|
||||
svelte-check@^3.4.3:
|
||||
version "3.8.0"
|
||||
resolved "https://registry.yarnpkg.com/svelte-check/-/svelte-check-3.8.0.tgz#e0850b876d3d32760465bfb26d06b32c4c9f98a1"
|
||||
integrity sha512-7Nxn+3X97oIvMzYJ7t27w00qUf1Y52irE2RU2dQAd5PyvfGp4E7NLhFKVhb6PV2fx7dCRMpNKDIuazmGthjpSQ==
|
||||
version "3.8.4"
|
||||
resolved "https://registry.yarnpkg.com/svelte-check/-/svelte-check-3.8.4.tgz#7cd51e978e5a289a1278a2ea2ff77d8bd3e2f0c1"
|
||||
integrity sha512-61aHMkdinWyH8BkkTX9jPLYxYzaAAz/FK/VQqdr2FiCQQ/q04WCwDlpGbHff1GdrMYTmW8chlTFvRWL9k0A8vg==
|
||||
dependencies:
|
||||
"@jridgewell/trace-mapping" "^0.3.17"
|
||||
chokidar "^3.4.1"
|
||||
fast-glob "^3.2.7"
|
||||
import-fresh "^3.2.1"
|
||||
picocolors "^1.0.0"
|
||||
sade "^1.7.4"
|
||||
svelte-preprocess "^5.1.3"
|
||||
typescript "^5.0.3"
|
||||
|
||||
svelte-eslint-parser@^0.38.0:
|
||||
version "0.38.0"
|
||||
resolved "https://registry.yarnpkg.com/svelte-eslint-parser/-/svelte-eslint-parser-0.38.0.tgz#a75e54c31531d44cbef3edbbb6a57a8a546abf31"
|
||||
integrity sha512-5qyDMW19cqafbRua5xLKI4wHfHapDx1emu93Vl3Po+2qcV9mSXL/XhmgBN23S9ddE4SQ7vrF7V6Q2a+VMfmUQg==
|
||||
svelte-eslint-parser@^0.41.0:
|
||||
version "0.41.0"
|
||||
resolved "https://registry.yarnpkg.com/svelte-eslint-parser/-/svelte-eslint-parser-0.41.0.tgz#7d02c2314abe7dc4fe0e935bf4fcc28078c590f2"
|
||||
integrity sha512-L6f4hOL+AbgfBIB52Z310pg1d2QjRqm7wy3kI1W6hhdhX5bvu7+f0R6w4ykp5HoDdzq+vGhIJmsisaiJDGmVfA==
|
||||
dependencies:
|
||||
eslint-scope "^7.2.2"
|
||||
eslint-visitor-keys "^3.4.3"
|
||||
espree "^9.6.1"
|
||||
postcss "^8.4.38"
|
||||
postcss "^8.4.39"
|
||||
postcss-scss "^4.0.9"
|
||||
|
||||
svelte-fa@^4.0.2:
|
||||
|
@ -3239,7 +3230,7 @@ svelte-observable@^0.4.0:
|
|||
resolved "https://registry.yarnpkg.com/svelte-observable/-/svelte-observable-0.4.0.tgz#74756e42fa3516c154d53f4244fa9cf691854224"
|
||||
integrity sha512-e8CfnkUfOZ/nAIpdFi+g63lS5oU+8J+KKhwkHpO0/reADeTBbIiVbcCqVrLsETp8+i+4ydQoawNCwMP/C8oMyA==
|
||||
|
||||
svelte-preprocess@^5.0.3, svelte-preprocess@^5.1.3:
|
||||
svelte-preprocess@^5.1.3:
|
||||
version "5.1.4"
|
||||
resolved "https://registry.yarnpkg.com/svelte-preprocess/-/svelte-preprocess-5.1.4.tgz#14ada075c94bbd2b71c5ec70ff72f8ebe1c95b91"
|
||||
integrity sha512-IvnbQ6D6Ao3Gg6ftiM5tdbR6aAETwjhHV+UKGf5bHGYR69RQvF1ho0JKPcbUON4vy4R7zom13jPjgdOWCQ5hDA==
|
||||
|
@ -3250,6 +3241,11 @@ svelte-preprocess@^5.0.3, svelte-preprocess@^5.1.3:
|
|||
sorcery "^0.11.0"
|
||||
strip-indent "^3.0.0"
|
||||
|
||||
svelte-preprocess@^6.0.2:
|
||||
version "6.0.2"
|
||||
resolved "https://registry.yarnpkg.com/svelte-preprocess/-/svelte-preprocess-6.0.2.tgz#920bd53b1127757edb0a7d946dace75a0cac9ecf"
|
||||
integrity sha512-OvDTLfaOkkhjprbDKO0SOCkjNYuHy16dbD4SpqbIi6QiabOMHxRT4km5/dzbFFkmW1L0E2INF3MFltG2pgOyKQ==
|
||||
|
||||
svelte-spa-router@^4.0.1:
|
||||
version "4.0.1"
|
||||
resolved "https://registry.yarnpkg.com/svelte-spa-router/-/svelte-spa-router-4.0.1.tgz#720ef0cc9a4af33b155812496545c7999483878c"
|
||||
|
@ -3437,11 +3433,16 @@ typed-array-length@^1.0.6:
|
|||
is-typed-array "^1.1.13"
|
||||
possible-typed-array-names "^1.0.0"
|
||||
|
||||
typescript@^5.0.0, typescript@^5.0.3:
|
||||
typescript@^5.0.0:
|
||||
version "5.4.5"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611"
|
||||
integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==
|
||||
|
||||
typescript@^5.0.3:
|
||||
version "5.5.4"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.4.tgz#d9852d6c82bad2d2eda4fd74a5762a8f5909e9ba"
|
||||
integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==
|
||||
|
||||
ua-parser-js@^1.0.35:
|
||||
version "1.0.37"
|
||||
resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-1.0.37.tgz#b5dc7b163a5c1f0c510b08446aed4da92c46373f"
|
||||
|
@ -3486,10 +3487,10 @@ util-deprecate@^1.0.1, util-deprecate@^1.0.2:
|
|||
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
||||
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
|
||||
|
||||
vite-plugin-checker@^0.6.4:
|
||||
version "0.6.4"
|
||||
resolved "https://registry.yarnpkg.com/vite-plugin-checker/-/vite-plugin-checker-0.6.4.tgz#aca186ab605aa15bd2c5dd9cc6d7c8fdcbe214ec"
|
||||
integrity sha512-2zKHH5oxr+ye43nReRbC2fny1nyARwhxdm0uNYp/ERy4YvU9iZpNOsueoi/luXw5gnpqRSvjcEPxXbS153O2wA==
|
||||
vite-plugin-checker@^0.7.2:
|
||||
version "0.7.2"
|
||||
resolved "https://registry.yarnpkg.com/vite-plugin-checker/-/vite-plugin-checker-0.7.2.tgz#093ffdf9ccf51b2c9eab7101480bd0217ae99536"
|
||||
integrity sha512-xeYeJbG0gaCaT0QcUC4B2Zo4y5NR8ZhYenc5gPbttrZvraRFwkEADCYwq+BfEHl9zYz7yf85TxsiGoYwyyIjhw==
|
||||
dependencies:
|
||||
"@babel/code-frame" "^7.12.13"
|
||||
ansi-escapes "^4.3.0"
|
||||
|
@ -3499,7 +3500,6 @@ vite-plugin-checker@^0.6.4:
|
|||
fast-glob "^3.2.7"
|
||||
fs-extra "^11.1.0"
|
||||
npm-run-path "^4.0.1"
|
||||
semver "^7.5.0"
|
||||
strip-ansi "^6.0.0"
|
||||
tiny-invariant "^1.1.0"
|
||||
vscode-languageclient "^7.0.0"
|
||||
|
@ -3516,13 +3516,13 @@ vite-tsconfig-paths@^4.3.2:
|
|||
globrex "^0.1.2"
|
||||
tsconfck "^3.0.3"
|
||||
|
||||
vite@^5.3.1:
|
||||
version "5.3.1"
|
||||
resolved "https://registry.yarnpkg.com/vite/-/vite-5.3.1.tgz#bb2ca6b5fd7483249d3e86b25026e27ba8a663e6"
|
||||
integrity sha512-XBmSKRLXLxiaPYamLv3/hnP/KXDai1NDexN0FpkTaZXTfycHvkRHoenpgl/fvuK/kPbB6xAgoyiryAhQNxYmAQ==
|
||||
vite@^5.3.5:
|
||||
version "5.3.5"
|
||||
resolved "https://registry.yarnpkg.com/vite/-/vite-5.3.5.tgz#b847f846fb2b6cb6f6f4ed50a830186138cb83d8"
|
||||
integrity sha512-MdjglKR6AQXQb9JGiS7Rc2wC6uMjcm7Go/NHNO63EwiJXfuk9PgqiP/n5IDJCziMkfw9n4Ubp7lttNwz+8ZVKA==
|
||||
dependencies:
|
||||
esbuild "^0.21.3"
|
||||
postcss "^8.4.38"
|
||||
postcss "^8.4.39"
|
||||
rollup "^4.13.0"
|
||||
optionalDependencies:
|
||||
fsevents "~2.3.3"
|
||||
|
|
Loading…
Reference in a new issue