merge main

This commit is contained in:
StyleZhang 2024-12-06 16:56:42 +08:00
commit 69daf4a027
51 changed files with 763 additions and 271 deletions

View File

@ -8,16 +8,9 @@ Please include a summary of the change and which issue is fixed. Please also inc
# Screenshots # Screenshots
<table> | Before | After |
<tr> |--------|-------|
<td>Before: </td> | ... | ... |
<td>After: </td>
</tr>
<tr>
<td>...</td>
<td>...</td>
</tr>
</table>
# Checklist # Checklist

View File

@ -9,7 +9,7 @@ class PackagingInfo(BaseSettings):
CURRENT_VERSION: str = Field( CURRENT_VERSION: str = Field(
description="Dify version", description="Dify version",
default="0.13.0", default="0.13.1",
) )
COMMIT_SHA: str = Field( COMMIT_SHA: str = Field(

View File

@ -82,7 +82,7 @@ class AppGenerateResponseConverter(ABC):
for resource in metadata["retriever_resources"]: for resource in metadata["retriever_resources"]:
updated_resources.append( updated_resources.append(
{ {
"segment_id": resource["segment_id"], "segment_id": resource.get("segment_id", ""),
"position": resource["position"], "position": resource["position"],
"document_name": resource["document_name"], "document_name": resource["document_name"],
"score": resource["score"], "score": resource["score"],

View File

@ -6,6 +6,7 @@ features:
- agent-thought - agent-thought
- tool-call - tool-call
- stream-tool-call - stream-tool-call
- vision
model_properties: model_properties:
mode: chat mode: chat
context_size: 300000 context_size: 300000

View File

@ -6,6 +6,7 @@ features:
- agent-thought - agent-thought
- tool-call - tool-call
- stream-tool-call - stream-tool-call
- vision
model_properties: model_properties:
mode: chat mode: chat
context_size: 300000 context_size: 300000

View File

@ -6,6 +6,7 @@ features:
- agent-thought - agent-thought
- tool-call - tool-call
- stream-tool-call - stream-tool-call
- vision
model_properties: model_properties:
mode: chat mode: chat
context_size: 300000 context_size: 300000

View File

@ -6,6 +6,7 @@ features:
- agent-thought - agent-thought
- tool-call - tool-call
- stream-tool-call - stream-tool-call
- vision
model_properties: model_properties:
mode: chat mode: chat
context_size: 300000 context_size: 300000

View File

@ -2,3 +2,4 @@
- rerank-english-v3.0 - rerank-english-v3.0
- rerank-multilingual-v2.0 - rerank-multilingual-v2.0
- rerank-multilingual-v3.0 - rerank-multilingual-v3.0
- rerank-v3.5

View File

@ -0,0 +1,4 @@
model: rerank-v3.5
model_type: rerank
model_properties:
context_size: 5120

View File

@ -5,7 +5,7 @@ import time
import click import click
from celery import shared_task from celery import shared_task
from core.indexing_runner import DocumentIsPausedException from core.indexing_runner import DocumentIsPausedError
from extensions.ext_database import db from extensions.ext_database import db
from extensions.ext_storage import storage from extensions.ext_storage import storage
from models.dataset import Dataset, ExternalKnowledgeApis from models.dataset import Dataset, ExternalKnowledgeApis
@ -86,7 +86,7 @@ def external_document_indexing_task(
fg="green", fg="green",
) )
) )
except DocumentIsPausedException as ex: except DocumentIsPausedError as ex:
logging.info(click.style(str(ex), fg="yellow")) logging.info(click.style(str(ex), fg="yellow"))
except Exception: except Exception:

View File

@ -2,7 +2,7 @@ version: '3'
services: services:
# API service # API service
api: api:
image: langgenius/dify-api:0.13.0 image: langgenius/dify-api:0.13.1
restart: always restart: always
environment: environment:
# Startup mode, 'api' starts the API server. # Startup mode, 'api' starts the API server.
@ -227,7 +227,7 @@ services:
# worker service # worker service
# The Celery worker for processing the queue. # The Celery worker for processing the queue.
worker: worker:
image: langgenius/dify-api:0.13.0 image: langgenius/dify-api:0.13.1
restart: always restart: always
environment: environment:
CONSOLE_WEB_URL: '' CONSOLE_WEB_URL: ''
@ -397,7 +397,7 @@ services:
# Frontend web application. # Frontend web application.
web: web:
image: langgenius/dify-web:0.13.0 image: langgenius/dify-web:0.13.1
restart: always restart: always
environment: environment:
# The base URL of console application api server, refers to the Console base URL of WEB service if console domain is # The base URL of console application api server, refers to the Console base URL of WEB service if console domain is

View File

@ -292,7 +292,7 @@ x-shared-env: &shared-api-worker-env
services: services:
# API service # API service
api: api:
image: langgenius/dify-api:0.13.0 image: langgenius/dify-api:0.13.1
restart: always restart: always
environment: environment:
# Use the shared environment variables. # Use the shared environment variables.
@ -312,7 +312,7 @@ services:
# worker service # worker service
# The Celery worker for processing the queue. # The Celery worker for processing the queue.
worker: worker:
image: langgenius/dify-api:0.13.0 image: langgenius/dify-api:0.13.1
restart: always restart: always
environment: environment:
# Use the shared environment variables. # Use the shared environment variables.
@ -331,7 +331,7 @@ services:
# Frontend web application. # Frontend web application.
web: web:
image: langgenius/dify-web:0.13.0 image: langgenius/dify-web:0.13.1
restart: always restart: always
environment: environment:
CONSOLE_API_URL: ${CONSOLE_API_URL:-} CONSOLE_API_URL: ${CONSOLE_API_URL:-}

View File

@ -165,7 +165,7 @@ const ExtraInfo = ({ isMobile, relatedApps }: IExtraInfoProps) => {
className='inline-flex items-center text-xs text-primary-600 mt-2 cursor-pointer' className='inline-flex items-center text-xs text-primary-600 mt-2 cursor-pointer'
href={ href={
locale === LanguagesSupported[1] locale === LanguagesSupported[1]
? 'https://docs.dify.ai/v/zh-hans/guides/knowledge-base/integrate_knowledge_within_application' ? 'https://docs.dify.ai/v/zh-hans/guides/knowledge-base/integrate-knowledge-within-application'
: 'https://docs.dify.ai/guides/knowledge-base/integrate-knowledge-within-application' : 'https://docs.dify.ai/guides/knowledge-base/integrate-knowledge-within-application'
} }
target='_blank' rel='noopener noreferrer' target='_blank' rel='noopener noreferrer'

View File

@ -334,7 +334,7 @@ const GenerationItem: FC<IGenerationItemProps> = ({
</SimpleBtn> </SimpleBtn>
) )
} }
{(currentTab === 'RESULT' || !isWorkflow) && ( {((currentTab === 'RESULT' && workflowProcessData?.resultText) || !isWorkflow) && (
<SimpleBtn <SimpleBtn
isDisabled={isError || !messageId} isDisabled={isError || !messageId}
className={cn(isMobile && '!px-1.5', 'space-x-1')} className={cn(isMobile && '!px-1.5', 'space-x-1')}

View File

@ -27,15 +27,15 @@ const ResultTab = ({
onCurrentTabChange(tab) onCurrentTabChange(tab)
} }
useEffect(() => { useEffect(() => {
if (data?.resultText) if (data?.resultText || !!data?.files?.length)
switchTab('RESULT') switchTab('RESULT')
else else
switchTab('DETAIL') switchTab('DETAIL')
}, [data?.resultText]) }, [data?.files?.length, data?.resultText])
return ( return (
<div className='grow relative flex flex-col'> <div className='grow relative flex flex-col'>
{data?.resultText && ( {(data?.resultText || !!data?.files?.length) && (
<div className='shrink-0 flex items-center mb-2 border-b-[0.5px] border-[rgba(0,0,0,0.05)]'> <div className='shrink-0 flex items-center mb-2 border-b-[0.5px] border-[rgba(0,0,0,0.05)]'>
<div <div
className={cn( className={cn(
@ -56,14 +56,21 @@ const ResultTab = ({
<div className={cn('grow bg-white')}> <div className={cn('grow bg-white')}>
{currentTab === 'RESULT' && ( {currentTab === 'RESULT' && (
<> <>
<Markdown content={data?.resultText || ''} /> {data?.resultText && <Markdown content={data?.resultText || ''} />}
{!!data?.files?.length && ( {!!data?.files?.length && (
<FileList <div className='flex flex-col gap-2'>
files={data?.files} {data?.files.map((item: any) => (
showDeleteAction={false} <div key={item.varName} className='flex flex-col gap-1 system-xs-regular'>
showDownloadAction <div className='py-1 text-text-tertiary '>{item.varName}</div>
canPreview <FileList
/> files={item.list}
showDeleteAction={false}
showDownloadAction
canPreview
/>
</div>
))}
</div>
)} )}
</> </>
)} )}

View File

@ -1,4 +1,5 @@
import React, { useState } from 'react' import React, { useMemo, useState } from 'react'
import { useTranslation } from 'react-i18next'
import { RiArrowRightSLine } from '@remixicon/react' import { RiArrowRightSLine } from '@remixicon/react'
import FileImageRender from './file-image-render' import FileImageRender from './file-image-render'
import FileTypeIcon from './file-type-icon' import FileTypeIcon from './file-type-icon'
@ -12,23 +13,36 @@ import { SupportUploadFileTypes } from '@/app/components/workflow/types'
import cn from '@/utils/classnames' import cn from '@/utils/classnames'
type Props = { type Props = {
fileList: FileEntity[] fileList: {
varName: string
list: FileEntity[]
}[]
isExpanded?: boolean
noBorder?: boolean
noPadding?: boolean
} }
const FileListInLog = ({ fileList }: Props) => { const FileListInLog = ({ fileList, isExpanded = false, noBorder = false, noPadding = false }: Props) => {
const [expanded, setExpanded] = useState(false) const { t } = useTranslation()
const [expanded, setExpanded] = useState(isExpanded)
const fullList = useMemo(() => {
return fileList.reduce((acc: FileEntity[], { list }) => {
return [...acc, ...list]
}, [])
}, [fileList])
if (!fileList.length) if (!fileList.length)
return null return null
return ( return (
<div className={cn('border-t border-divider-subtle px-3 py-2', expanded && 'py-3')}> <div className={cn('px-3 py-2', expanded && 'py-3', !noBorder && 'border-t border-divider-subtle', noPadding && '!p-0')}>
<div className='flex justify-between gap-1'> <div className='flex justify-between gap-1'>
{expanded && ( {expanded && (
<div></div> <div className='grow py-1 text-text-secondary system-xs-semibold-uppercase cursor-pointer' onClick={() => setExpanded(!expanded)}>{t('appLog.runDetail.fileListLabel')}</div>
)} )}
{!expanded && ( {!expanded && (
<div className='flex'> <div className='flex gap-1'>
{fileList.map((file) => { {fullList.map((file) => {
const { id, name, type, supportFileType, base64Url, url } = file const { id, name, type, supportFileType, base64Url, url } = file
const isImageFile = supportFileType === SupportUploadFileTypes.image const isImageFile = supportFileType === SupportUploadFileTypes.image
return ( return (
@ -63,19 +77,25 @@ const FileListInLog = ({ fileList }: Props) => {
</div> </div>
)} )}
<div className='flex items-center gap-1 cursor-pointer' onClick={() => setExpanded(!expanded)}> <div className='flex items-center gap-1 cursor-pointer' onClick={() => setExpanded(!expanded)}>
{!expanded && <div className='text-text-tertiary system-xs-medium-uppercase'>DETAIL</div>} {!expanded && <div className='text-text-tertiary system-xs-medium-uppercase'>{t('appLog.runDetail.fileListDetail')}</div>}
<RiArrowRightSLine className={cn('w-4 h-4 text-text-tertiary', expanded && 'rotate-90')} /> <RiArrowRightSLine className={cn('w-4 h-4 text-text-tertiary', expanded && 'rotate-90')} />
</div> </div>
</div> </div>
{expanded && ( {expanded && (
<div className='flex flex-col gap-1'> <div className='flex flex-col gap-3'>
{fileList.map(file => ( {fileList.map(item => (
<FileItem <div key={item.varName} className='flex flex-col gap-1 system-xs-regular'>
key={file.id} <div className='py-1 text-text-tertiary '>{item.varName}</div>
file={file} {item.list.map(file => (
showDeleteAction={false} <FileItem
showDownloadAction key={file.id}
/> file={file}
showDeleteAction={false}
showDownloadAction
canPreview
/>
))}
</div>
))} ))}
</div> </div>
)} )}

View File

@ -1,12 +1,15 @@
import { import {
memo, memo,
useState,
} from 'react' } from 'react'
import { import {
RiDeleteBinLine, RiDeleteBinLine,
RiDownloadLine, RiDownloadLine,
RiEyeLine,
} from '@remixicon/react' } from '@remixicon/react'
import FileTypeIcon from '../file-type-icon' import FileTypeIcon from '../file-type-icon'
import { import {
downloadFile,
fileIsUploaded, fileIsUploaded,
getFileAppearanceType, getFileAppearanceType,
getFileExtension, getFileExtension,
@ -19,6 +22,7 @@ import { formatFileSize } from '@/utils/format'
import cn from '@/utils/classnames' import cn from '@/utils/classnames'
import { ReplayLine } from '@/app/components/base/icons/src/vender/other' import { ReplayLine } from '@/app/components/base/icons/src/vender/other'
import { SupportUploadFileTypes } from '@/app/components/workflow/types' import { SupportUploadFileTypes } from '@/app/components/workflow/types'
import ImagePreview from '@/app/components/base/image-uploader/image-preview'
type FileInAttachmentItemProps = { type FileInAttachmentItemProps = {
file: FileEntity file: FileEntity
@ -26,6 +30,7 @@ type FileInAttachmentItemProps = {
showDownloadAction?: boolean showDownloadAction?: boolean
onRemove?: (fileId: string) => void onRemove?: (fileId: string) => void
onReUpload?: (fileId: string) => void onReUpload?: (fileId: string) => void
canPreview?: boolean
} }
const FileInAttachmentItem = ({ const FileInAttachmentItem = ({
file, file,
@ -33,96 +38,116 @@ const FileInAttachmentItem = ({
showDownloadAction = true, showDownloadAction = true,
onRemove, onRemove,
onReUpload, onReUpload,
canPreview,
}: FileInAttachmentItemProps) => { }: FileInAttachmentItemProps) => {
const { id, name, type, progress, supportFileType, base64Url, url, isRemote } = file const { id, name, type, progress, supportFileType, base64Url, url, isRemote } = file
const ext = getFileExtension(name, type, isRemote) const ext = getFileExtension(name, type, isRemote)
const isImageFile = supportFileType === SupportUploadFileTypes.image const isImageFile = supportFileType === SupportUploadFileTypes.image
const [imagePreviewUrl, setImagePreviewUrl] = useState('')
return ( return (
<div className={cn( <>
'flex items-center pr-3 h-12 rounded-lg border-[0.5px] border-components-panel-border bg-components-panel-on-panel-item-bg shadow-xs', <div className={cn(
progress === -1 && 'bg-state-destructive-hover border-state-destructive-border', 'flex items-center pr-3 h-12 rounded-lg border-[0.5px] border-components-panel-border bg-components-panel-on-panel-item-bg shadow-xs',
)}> progress === -1 && 'bg-state-destructive-hover border-state-destructive-border',
<div className='flex items-center justify-center w-12 h-12'> )}>
{ <div className='flex items-center justify-center w-12 h-12'>
isImageFile && ( {
<FileImageRender isImageFile && (
className='w-8 h-8' <FileImageRender
imageUrl={base64Url || url || ''} className='w-8 h-8'
/> imageUrl={base64Url || url || ''}
) />
} )
{ }
!isImageFile && ( {
<FileTypeIcon !isImageFile && (
type={getFileAppearanceType(name, type)} <FileTypeIcon
size='lg' type={getFileAppearanceType(name, type)}
/> size='lg'
) />
} )
</div> }
<div className='grow w-0 mr-1'>
<div
className='flex items-center mb-0.5 system-xs-medium text-text-secondary truncate'
title={file.name}
>
<div className='truncate'>{name}</div>
</div> </div>
<div className='flex items-center system-2xs-medium-uppercase text-text-tertiary'> <div className='grow w-0 mr-1'>
<div
className='flex items-center mb-0.5 system-xs-medium text-text-secondary truncate'
title={file.name}
>
<div className='truncate'>{name}</div>
</div>
<div className='flex items-center system-2xs-medium-uppercase text-text-tertiary'>
{
ext && (
<span>{ext.toLowerCase()}</span>
)
}
{
ext && (
<span className='mx-1 system-2xs-medium'></span>
)
}
{
!!file.size && (
<span>{formatFileSize(file.size)}</span>
)
}
</div>
</div>
<div className='shrink-0 flex items-center'>
{ {
ext && ( progress >= 0 && !fileIsUploaded(file) && (
<span>{ext.toLowerCase()}</span> <ProgressCircle
className='mr-2.5'
percentage={progress}
/>
) )
} }
{ {
ext && ( progress === -1 && (
<span className='mx-1 system-2xs-medium'></span> <ActionButton
className='mr-1'
onClick={() => onReUpload?.(id)}
>
<ReplayLine className='w-4 h-4 text-text-tertiary' />
</ActionButton>
) )
} }
{ {
!!file.size && ( showDeleteAction && (
<span>{formatFileSize(file.size)}</span> <ActionButton onClick={() => onRemove?.(id)}>
<RiDeleteBinLine className='w-4 h-4' />
</ActionButton>
)
}
{
canPreview && isImageFile && (
<ActionButton className='mr-1' onClick={() => setImagePreviewUrl(url || '')}>
<RiEyeLine className='w-4 h-4' />
</ActionButton>
)
}
{
showDownloadAction && (
<ActionButton onClick={(e) => {
e.stopPropagation()
downloadFile(url || base64Url || '', name)
}}>
<RiDownloadLine className='w-4 h-4' />
</ActionButton>
) )
} }
</div> </div>
</div> </div>
<div className='shrink-0 flex items-center'> {
{ imagePreviewUrl && canPreview && (
progress >= 0 && !fileIsUploaded(file) && ( <ImagePreview
<ProgressCircle title={name}
className='mr-2.5' url={imagePreviewUrl}
percentage={progress} onCancel={() => setImagePreviewUrl('')}
/> />
) )
} }
{ </>
progress === -1 && (
<ActionButton
className='mr-1'
onClick={() => onReUpload?.(id)}
>
<ReplayLine className='w-4 h-4 text-text-tertiary' />
</ActionButton>
)
}
{
showDeleteAction && (
<ActionButton onClick={() => onRemove?.(id)}>
<RiDeleteBinLine className='w-4 h-4' />
</ActionButton>
)
}
{
showDownloadAction && (
<ActionButton
size='xs'
>
<RiDownloadLine className='w-3.5 h-3.5 text-text-tertiary' />
</ActionButton>
)
}
</div>
</div>
) )
} }

View File

@ -31,7 +31,7 @@ const FileItem = ({
onRemove, onRemove,
onReUpload, onReUpload,
}: FileItemProps) => { }: FileItemProps) => {
const { id, name, type, progress, url, isRemote } = file const { id, name, type, progress, url, base64Url, isRemote } = file
const ext = getFileExtension(name, type, isRemote) const ext = getFileExtension(name, type, isRemote)
const uploadError = progress === -1 const uploadError = progress === -1
@ -86,7 +86,7 @@ const FileItem = ({
className='hidden group-hover/file-item:flex absolute -right-1 -top-1' className='hidden group-hover/file-item:flex absolute -right-1 -top-1'
onClick={(e) => { onClick={(e) => {
e.stopPropagation() e.stopPropagation()
downloadFile(url || '', name) downloadFile(url || base64Url || '', name)
}} }}
> >
<RiDownloadLine className='w-3.5 h-3.5 text-text-tertiary' /> <RiDownloadLine className='w-3.5 h-3.5 text-text-tertiary' />

View File

@ -1,5 +1,4 @@
import mime from 'mime' import mime from 'mime'
import { flatten } from 'lodash-es'
import { FileAppearanceTypeEnum } from './types' import { FileAppearanceTypeEnum } from './types'
import type { FileEntity } from './types' import type { FileEntity } from './types'
import { upload } from '@/service/base' import { upload } from '@/service/base'
@ -158,12 +157,22 @@ export const isAllowedFileExtension = (fileName: string, fileMimetype: string, a
} }
export const getFilesInLogs = (rawData: any) => { export const getFilesInLogs = (rawData: any) => {
const originalFiles = flatten(Object.keys(rawData || {}).map((key) => { const result = Object.keys(rawData || {}).map((key) => {
if (typeof rawData[key] === 'object' || Array.isArray(rawData[key])) if (typeof rawData[key] === 'object' && rawData[key].dify_model_identity === '__dify__file__') {
return rawData[key] return {
varName: key,
list: getProcessedFilesFromResponse([rawData[key]]),
}
}
if (Array.isArray(rawData[key]) && rawData[key].some(item => item.dify_model_identity === '__dify__file__')) {
return {
varName: key,
list: getProcessedFilesFromResponse(rawData[key]),
}
}
return undefined return undefined
}).filter(Boolean)).filter(item => item?.model_identity === '__dify__file__') }).filter(Boolean)
return getProcessedFilesFromResponse(originalFiles) return result
} }
export const fileIsUploaded = (file: FileEntity) => { export const fileIsUploaded = (file: FileEntity) => {

View File

@ -1,24 +1,18 @@
import React, { useEffect, useRef, useState } from 'react' import React, { useCallback, useEffect, useRef, useState } from 'react'
import mermaid from 'mermaid' import mermaid from 'mermaid'
import { usePrevious } from 'ahooks' import { usePrevious } from 'ahooks'
import CryptoJS from 'crypto-js' import CryptoJS from 'crypto-js'
import { useTranslation } from 'react-i18next'
import { ExclamationTriangleIcon } from '@heroicons/react/24/outline' import { ExclamationTriangleIcon } from '@heroicons/react/24/outline'
import LoadingAnim from '@/app/components/base/chat/chat/loading-anim' import LoadingAnim from '@/app/components/base/chat/chat/loading-anim'
import cn from '@/utils/classnames'
import ImagePreview from '@/app/components/base/image-uploader/image-preview'
let mermaidAPI: any let mermaidAPI: any
mermaidAPI = null mermaidAPI = null
if (typeof window !== 'undefined') { if (typeof window !== 'undefined')
mermaid.initialize({
startOnLoad: true,
theme: 'default',
flowchart: {
htmlLabels: true,
useMaxWidth: true,
},
})
mermaidAPI = mermaid.mermaidAPI mermaidAPI = mermaid.mermaidAPI
}
const style = { const style = {
minWidth: '480px', minWidth: '480px',
@ -40,14 +34,21 @@ const svgToBase64 = (svgGraph: string) => {
const Flowchart = React.forwardRef((props: { const Flowchart = React.forwardRef((props: {
PrimitiveCode: string PrimitiveCode: string
}, ref) => { }, ref) => {
const { t } = useTranslation()
const [svgCode, setSvgCode] = useState(null) const [svgCode, setSvgCode] = useState(null)
const [look, setLook] = useState<'classic' | 'handDrawn'>('classic')
const chartId = useRef(`flowchart_${CryptoJS.MD5(props.PrimitiveCode).toString()}`) const chartId = useRef(`flowchart_${CryptoJS.MD5(props.PrimitiveCode).toString()}`)
const prevPrimitiveCode = usePrevious(props.PrimitiveCode) const prevPrimitiveCode = usePrevious(props.PrimitiveCode)
const [isLoading, setIsLoading] = useState(true) const [isLoading, setIsLoading] = useState(true)
const timeRef = useRef<number>() const timeRef = useRef<number>()
const [errMsg, setErrMsg] = useState('') const [errMsg, setErrMsg] = useState('')
const [imagePreviewUrl, setImagePreviewUrl] = useState('')
const renderFlowchart = useCallback(async (PrimitiveCode: string) => {
setSvgCode(null)
setIsLoading(true)
const renderFlowchart = async (PrimitiveCode: string) => {
try { try {
if (typeof window !== 'undefined' && mermaidAPI) { if (typeof window !== 'undefined' && mermaidAPI) {
const svgGraph = await mermaidAPI.render(chartId.current, PrimitiveCode) const svgGraph = await mermaidAPI.render(chartId.current, PrimitiveCode)
@ -64,10 +65,28 @@ const Flowchart = React.forwardRef((props: {
setErrMsg((error as Error).message) setErrMsg((error as Error).message)
} }
} }
} }, [props.PrimitiveCode])
useEffect(() => {
if (typeof window !== 'undefined') {
mermaid.initialize({
startOnLoad: true,
theme: 'neutral',
look,
flowchart: {
htmlLabels: true,
useMaxWidth: true,
},
})
localStorage.removeItem(chartId.current)
renderFlowchart(props.PrimitiveCode)
}
}, [look])
useEffect(() => { useEffect(() => {
const cachedSvg: any = localStorage.getItem(chartId.current) const cachedSvg: any = localStorage.getItem(chartId.current)
if (cachedSvg) { if (cachedSvg) {
setSvgCode(cachedSvg) setSvgCode(cachedSvg)
setIsLoading(false) setIsLoading(false)
@ -85,24 +104,51 @@ const Flowchart = React.forwardRef((props: {
// eslint-disable-next-line ts/ban-ts-comment // eslint-disable-next-line ts/ban-ts-comment
// @ts-expect-error // @ts-expect-error
<div ref={ref}> <div ref={ref}>
<div className="msh-segmented msh-segmented-sm css-23bs09 css-var-r1">
<div className="msh-segmented-group">
<label className="msh-segmented-item flex items-center space-x-1 m-2 w-[200px]">
<div key='classic'
className={cn('flex items-center justify-center mb-4 w-[calc((100%-8px)/2)] h-8 rounded-lg border border-components-option-card-option-border bg-components-option-card-option-bg cursor-pointer system-sm-medium text-text-secondary',
look === 'classic' && 'border-[1.5px] border-components-option-card-option-selected-border bg-components-option-card-option-selected-bg text-text-primary',
)}
onClick={() => setLook('classic')}
>
<div className="msh-segmented-item-label">{t('app.mermaid.classic')}</div>
</div>
<div key='handDrawn'
className={cn(
'flex items-center justify-center mb-4 w-[calc((100%-8px)/2)] h-8 rounded-lg border border-components-option-card-option-border bg-components-option-card-option-bg cursor-pointer system-sm-medium text-text-secondary',
look === 'handDrawn' && 'border-[1.5px] border-components-option-card-option-selected-border bg-components-option-card-option-selected-bg text-text-primary',
)}
onClick={() => setLook('handDrawn')}
>
<div className="msh-segmented-item-label">{t('app.mermaid.handDrawn')}</div>
</div>
</label>
</div>
</div>
{ {
svgCode svgCode
&& <div className="mermaid" style={style}> && <div className="mermaid cursor-pointer" style={style} onClick={() => setImagePreviewUrl(svgCode)}>
{svgCode && <img src={svgCode} style={{ width: '100%', height: 'auto' }} alt="Mermaid chart" />} {svgCode && <img src={svgCode} style={{ width: '100%', height: 'auto' }} alt="mermaid_chart" />}
</div> </div>
} }
{isLoading {isLoading
&& <div className='py-4 px-[26px]'> && <div className='py-4 px-[26px]'>
<LoadingAnim type='text' /> <LoadingAnim type='text'/>
</div> </div>
} }
{ {
errMsg errMsg
&& <div className='py-4 px-[26px]'> && <div className='py-4 px-[26px]'>
<ExclamationTriangleIcon className='w-6 h-6 text-red-500' /> <ExclamationTriangleIcon className='w-6 h-6 text-red-500'/>
&nbsp; &nbsp;
{errMsg} {errMsg}
</div> </div>
}
{
imagePreviewUrl && (<ImagePreview title='mermaid_chart' url={imagePreviewUrl} onCancel={() => setImagePreviewUrl('')} />)
} }
</div> </div>
) )

View File

@ -21,7 +21,7 @@ import { sleep } from '@/utils'
import type { SiteInfo } from '@/models/share' import type { SiteInfo } from '@/models/share'
import { TEXT_GENERATION_TIMEOUT_MS } from '@/config' import { TEXT_GENERATION_TIMEOUT_MS } from '@/config'
import { import {
getProcessedFilesFromResponse, getFilesInLogs,
} from '@/app/components/base/file-uploader/utils' } from '@/app/components/base/file-uploader/utils'
export interface IResultProps { export interface IResultProps {
@ -288,7 +288,7 @@ const Result: FC<IResultProps> = ({
} }
setWorkflowProcessData(produce(getWorkflowProcessData()!, (draft) => { setWorkflowProcessData(produce(getWorkflowProcessData()!, (draft) => {
draft.status = WorkflowRunningStatus.Succeeded draft.status = WorkflowRunningStatus.Succeeded
draft.files = getProcessedFilesFromResponse(data.files || []) draft.files = getFilesInLogs(data.outputs || []) as any[]
})) }))
if (!data.outputs) { if (!data.outputs) {
setCompletionRes('') setCompletionRes('')

View File

@ -26,7 +26,7 @@ import {
import { useFeaturesStore } from '@/app/components/base/features/hooks' import { useFeaturesStore } from '@/app/components/base/features/hooks'
import { AudioPlayerManager } from '@/app/components/base/audio-btn/audio.player.manager' import { AudioPlayerManager } from '@/app/components/base/audio-btn/audio.player.manager'
import { import {
getProcessedFilesFromResponse, getFilesInLogs,
} from '@/app/components/base/file-uploader/utils' } from '@/app/components/base/file-uploader/utils'
export const useWorkflowRun = () => { export const useWorkflowRun = () => {
@ -213,7 +213,7 @@ export const useWorkflowRun = () => {
draft.result = { draft.result = {
...draft.result, ...draft.result,
...data, ...data,
files: getProcessedFilesFromResponse(data.files || []), files: getFilesInLogs(data.outputs),
} as any } as any
if (isStringOutput) { if (isStringOutput) {
draft.resultTabActive = true draft.resultTabActive = true

View File

@ -27,7 +27,10 @@ interface Props {
isInNode?: boolean isInNode?: boolean
onGenerated?: (prompt: string) => void onGenerated?: (prompt: string) => void
codeLanguages?: CodeLanguage codeLanguages?: CodeLanguage
fileList?: FileEntity[] fileList?: {
varName: string
list: FileEntity[]
}[]
showFileList?: boolean showFileList?: boolean
showCodeGenerator?: boolean showCodeGenerator?: boolean
} }

View File

@ -208,7 +208,7 @@ const CodeEditor: FC<Props> = ({
isInNode={isInNode} isInNode={isInNode}
onGenerated={onGenerated} onGenerated={onGenerated}
codeLanguages={language} codeLanguages={language}
fileList={fileList} fileList={fileList as any}
showFileList={showFileList} showFileList={showFileList}
showCodeGenerator={showCodeGenerator} showCodeGenerator={showCodeGenerator}
> >

View File

@ -48,7 +48,7 @@ const WorkflowPreview = () => {
}, [showDebugAndPreviewPanel, showInputsPanel]) }, [showDebugAndPreviewPanel, showInputsPanel])
useEffect(() => { useEffect(() => {
if ((workflowRunningData?.result.status === WorkflowRunningStatus.Succeeded || workflowRunningData?.result.status === WorkflowRunningStatus.Failed) && !workflowRunningData.resultText) if ((workflowRunningData?.result.status === WorkflowRunningStatus.Succeeded || workflowRunningData?.result.status === WorkflowRunningStatus.Failed) && !workflowRunningData.resultText && !workflowRunningData.result.files?.length)
switchTab('DETAIL') switchTab('DETAIL')
}, [workflowRunningData]) }, [workflowRunningData])

View File

@ -1,10 +1,13 @@
'use client' 'use client'
import type { FC } from 'react' import type { FC } from 'react'
import { useMemo } from 'react'
import CodeEditor from '@/app/components/workflow/nodes/_base/components/editor/code-editor' import CodeEditor from '@/app/components/workflow/nodes/_base/components/editor/code-editor'
import { CodeLanguage } from '@/app/components/workflow/nodes/code/types' import { CodeLanguage } from '@/app/components/workflow/nodes/code/types'
import { Markdown } from '@/app/components/base/markdown' import { Markdown } from '@/app/components/base/markdown'
import LoadingAnim from '@/app/components/base/chat/chat/loading-anim' import LoadingAnim from '@/app/components/base/chat/chat/loading-anim'
import { FileList } from '@/app/components/base/file-uploader'
import StatusContainer from '@/app/components/workflow/run/status-container' import StatusContainer from '@/app/components/workflow/run/status-container'
import { getProcessedFilesFromResponse } from '@/app/components/base/file-uploader/utils'
interface OutputPanelProps { interface OutputPanelProps {
isRunning?: boolean isRunning?: boolean
@ -19,6 +22,30 @@ const OutputPanel: FC<OutputPanelProps> = ({
error, error,
height, height,
}) => { }) => {
const isTextOutput = useMemo(() => {
return outputs && Object.keys(outputs).length === 1 && typeof outputs[Object.keys(outputs)[0]] === 'string'
}, [outputs])
const fileList = useMemo(() => {
const fileList: any[] = []
if (!outputs)
return fileList
if (Object.keys(outputs).length > 1)
return fileList
for (const key in outputs) {
if (Array.isArray(outputs[key])) {
outputs[key].map((output: any) => {
if (output.dify_model_identity === '__dify__file__')
fileList.push(output)
return null
})
}
else if (outputs[key].dify_model_identity === '__dify__file__') {
fileList.push(outputs[key])
}
}
return getProcessedFilesFromResponse(fileList)
}, [outputs])
return ( return (
<div className='py-2'> <div className='py-2'>
{isRunning && ( {isRunning && (
@ -36,20 +63,31 @@ const OutputPanel: FC<OutputPanelProps> = ({
<Markdown content='No Output' /> <Markdown content='No Output' />
</div> </div>
)} )}
{outputs && Object.keys(outputs).length === 1 && ( {isTextOutput && (
<div className='px-4 py-2'> <div className='px-4 py-2'>
<Markdown content={outputs[Object.keys(outputs)[0]] || ''} /> <Markdown content={outputs[Object.keys(outputs)[0]] || ''} />
</div> </div>
)} )}
{fileList.length > 0 && (
<div className='px-4 py-2'>
<FileList
files={fileList}
showDeleteAction={false}
showDownloadAction
canPreview
/>
</div>
)}
{outputs && Object.keys(outputs).length > 1 && height! > 0 && ( {outputs && Object.keys(outputs).length > 1 && height! > 0 && (
<div className='px-4 py-2 flex flex-col gap-2'> <div className='flex flex-col gap-2'>
<CodeEditor <CodeEditor
showFileList
readOnly readOnly
title={<div></div>} title={<div></div>}
language={CodeLanguage.json} language={CodeLanguage.json}
value={outputs} value={outputs}
isJSONStringifyBeauty isJSONStringifyBeauty
height={height} height={height ? (height - 16) / 2 : undefined}
/> />
</div> </div>
)} )}

View File

@ -6,14 +6,13 @@ import { Markdown } from '@/app/components/base/markdown'
import LoadingAnim from '@/app/components/base/chat/chat/loading-anim' import LoadingAnim from '@/app/components/base/chat/chat/loading-anim'
import StatusContainer from '@/app/components/workflow/run/status-container' import StatusContainer from '@/app/components/workflow/run/status-container'
import { FileList } from '@/app/components/base/file-uploader' import { FileList } from '@/app/components/base/file-uploader'
import type { FileEntity } from '@/app/components/base/file-uploader/types'
interface ResultTextProps { interface ResultTextProps {
isRunning?: boolean isRunning?: boolean
outputs?: any outputs?: any
error?: string error?: string
onClick?: () => void onClick?: () => void
allFiles?: FileEntity[] allFiles?: any[]
} }
const ResultText: FC<ResultTextProps> = ({ const ResultText: FC<ResultTextProps> = ({
@ -25,20 +24,20 @@ const ResultText: FC<ResultTextProps> = ({
}) => { }) => {
const { t } = useTranslation() const { t } = useTranslation()
return ( return (
<div className='bg-background-section-burn py-2'> <div className='bg-background-section-burn'>
{isRunning && !outputs && ( {isRunning && !outputs && (
<div className='pt-4 pl-[26px]'> <div className='pt-4 pl-[26px]'>
<LoadingAnim type='text' /> <LoadingAnim type='text' />
</div> </div>
)} )}
{!isRunning && error && ( {!isRunning && error && (
<div className='px-4'> <div className='px-4 py-2'>
<StatusContainer status='failed'> <StatusContainer status='failed'>
{error} {error}
</StatusContainer> </StatusContainer>
</div> </div>
)} )}
{!isRunning && !outputs && !error && ( {!isRunning && !outputs && !error && !allFiles?.length && (
<div className='mt-[120px] px-4 py-2 flex flex-col items-center text-[13px] leading-[18px] text-gray-500'> <div className='mt-[120px] px-4 py-2 flex flex-col items-center text-[13px] leading-[18px] text-gray-500'>
<ImageIndentLeft className='w-6 h-6 text-gray-400' /> <ImageIndentLeft className='w-6 h-6 text-gray-400' />
<div className='mr-2'>{t('runLog.resultEmpty.title')}</div> <div className='mr-2'>{t('runLog.resultEmpty.title')}</div>
@ -49,18 +48,25 @@ const ResultText: FC<ResultTextProps> = ({
</div> </div>
</div> </div>
)} )}
{outputs && ( {(outputs || !!allFiles?.length) && (
<div className='px-4 py-2'> <>
<Markdown content={outputs} /> {outputs && (
{!!allFiles?.length && ( <div className='px-4 py-2'>
<FileList <Markdown content={outputs} />
files={allFiles} </div>
showDeleteAction={false}
showDownloadAction
canPreview
/>
)} )}
</div> {!!allFiles?.length && allFiles.map(item => (
<div key={item.varName} className='px-4 py-2 flex flex-col gap-1 system-xs-regular'>
<div className='py-1 text-text-tertiary '>{item.varName}</div>
<FileList
files={item.list}
showDeleteAction={false}
showDownloadAction
canPreview
/>
</div>
))}
</>
)} )}
</div> </div>
) )

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Konversationsprotokoll', title: 'Konversationsprotokoll',
workflowTitle: 'Protokolldetail', workflowTitle: 'Protokolldetail',
fileListLabel: 'Details zur Datei',
fileListDetail: 'Detail',
}, },
promptLog: 'Prompt-Protokoll', promptLog: 'Prompt-Protokoll',
agentLog: 'Agentenprotokoll', agentLog: 'Agentenprotokoll',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Conversation Log', title: 'Conversation Log',
workflowTitle: 'Log Detail', workflowTitle: 'Log Detail',
fileListLabel: 'File Details',
fileListDetail: 'Detail',
}, },
promptLog: 'Prompt Log', promptLog: 'Prompt Log',
agentLog: 'Agent Log', agentLog: 'Agent Log',

View File

@ -8,6 +8,10 @@ const translation = {
completion: 'Completion', completion: 'Completion',
}, },
duplicate: 'Duplicate', duplicate: 'Duplicate',
mermaid: {
handDrawn: 'Hand Drawn',
classic: 'Classic',
},
duplicateTitle: 'Duplicate App', duplicateTitle: 'Duplicate App',
export: 'Export DSL', export: 'Export DSL',
exportFailed: 'Export DSL failed.', exportFailed: 'Export DSL failed.',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Registro de Conversación', title: 'Registro de Conversación',
workflowTitle: 'Detalle del Registro', workflowTitle: 'Detalle del Registro',
fileListLabel: 'Detalles del archivo',
fileListDetail: 'Detalle',
}, },
promptLog: 'Registro de Indicación', promptLog: 'Registro de Indicación',
agentLog: 'Registro de Agente', agentLog: 'Registro de Agente',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'لاگ مکالمه', title: 'لاگ مکالمه',
workflowTitle: 'جزئیات لاگ', workflowTitle: 'جزئیات لاگ',
fileListLabel: 'جزئیات فایل',
fileListDetail: 'جزئیات',
}, },
promptLog: 'لاگ درخواست', promptLog: 'لاگ درخواست',
agentLog: 'لاگ عامل', agentLog: 'لاگ عامل',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Journal de conversation', title: 'Journal de conversation',
workflowTitle: 'Détail du journal', workflowTitle: 'Détail du journal',
fileListDetail: 'Détail',
fileListLabel: 'Détails du fichier',
}, },
promptLog: 'Journal de consigne', promptLog: 'Journal de consigne',
agentLog: 'Journal des agents', agentLog: 'Journal des agents',

View File

@ -81,6 +81,8 @@ const translation = {
runDetail: { runDetail: {
title: 'बातचीत लॉग', title: 'बातचीत लॉग',
workflowTitle: 'लॉग विवरण', workflowTitle: 'लॉग विवरण',
fileListDetail: 'विस्तार',
fileListLabel: 'फ़ाइल विवरण',
}, },
promptLog: 'प्रॉम्प्ट लॉग', promptLog: 'प्रॉम्प्ट लॉग',
agentLog: 'एजेंट लॉग', agentLog: 'एजेंट लॉग',

View File

@ -83,6 +83,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Registro Conversazione', title: 'Registro Conversazione',
workflowTitle: 'Dettagli Registro', workflowTitle: 'Dettagli Registro',
fileListDetail: 'Dettaglio',
fileListLabel: 'Dettagli del file',
}, },
promptLog: 'Registro Prompt', promptLog: 'Registro Prompt',
agentLog: 'Registro Agente', agentLog: 'Registro Agente',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: '会話ログ', title: '会話ログ',
workflowTitle: 'ログの詳細', workflowTitle: 'ログの詳細',
fileListLabel: 'ファイルの詳細',
fileListDetail: 'ディテール',
}, },
promptLog: 'プロンプトログ', promptLog: 'プロンプトログ',
agentLog: 'エージェントログ', agentLog: 'エージェントログ',

View File

@ -80,6 +80,8 @@ const translation = {
runDetail: { runDetail: {
title: '대화 로그', title: '대화 로그',
workflowTitle: '로그 세부 정보', workflowTitle: '로그 세부 정보',
fileListDetail: '세부',
fileListLabel: '파일 세부 정보',
}, },
promptLog: '프롬프트 로그', promptLog: '프롬프트 로그',
agentLog: '에이전트 로그', agentLog: '에이전트 로그',

View File

@ -83,6 +83,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Dziennik rozmowy', title: 'Dziennik rozmowy',
workflowTitle: 'Szczegół dziennika', workflowTitle: 'Szczegół dziennika',
fileListDetail: 'Detal',
fileListLabel: 'Szczegóły pliku',
}, },
promptLog: 'Dziennik monitów', promptLog: 'Dziennik monitów',
agentLog: 'Dziennik agenta', agentLog: 'Dziennik agenta',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Registro de Conversa', title: 'Registro de Conversa',
workflowTitle: 'Detalhes do Registro', workflowTitle: 'Detalhes do Registro',
fileListLabel: 'Detalhes do arquivo',
fileListDetail: 'Detalhe',
}, },
promptLog: 'Registro de Prompt', promptLog: 'Registro de Prompt',
agentLog: 'Registro do agente', agentLog: 'Registro do agente',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Jurnal de conversație', title: 'Jurnal de conversație',
workflowTitle: 'Detalii jurnal', workflowTitle: 'Detalii jurnal',
fileListDetail: 'Amănunt',
fileListLabel: 'Detalii fișier',
}, },
promptLog: 'Jurnal prompt', promptLog: 'Jurnal prompt',
agentLog: 'Jurnal agent', agentLog: 'Jurnal agent',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Журнал разговоров', title: 'Журнал разговоров',
workflowTitle: 'Подробная информация о журнале', workflowTitle: 'Подробная информация о журнале',
fileListLabel: 'Сведения о файле',
fileListDetail: 'Подробность',
}, },
promptLog: 'Журнал подсказок', promptLog: 'Журнал подсказок',
agentLog: 'Журнал агента', agentLog: 'Журнал агента',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Dnevnik pogovora', title: 'Dnevnik pogovora',
workflowTitle: 'Podrobnosti dnevnika', workflowTitle: 'Podrobnosti dnevnika',
fileListDetail: 'Podrobnosti',
fileListLabel: 'Podrobnosti o datoteki',
}, },
promptLog: 'Dnevnik PROMPT-ov', promptLog: 'Dnevnik PROMPT-ov',
agentLog: 'Dnevnik pomočnika', agentLog: 'Dnevnik pomočnika',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'บันทึกการสนทนา', title: 'บันทึกการสนทนา',
workflowTitle: 'รายละเอียดบันทึก', workflowTitle: 'รายละเอียดบันทึก',
fileListDetail: 'รายละเอียด',
fileListLabel: 'รายละเอียดไฟล์',
}, },
promptLog: 'บันทึกพร้อมท์', promptLog: 'บันทึกพร้อมท์',
agentLog: 'บันทึกตัวแทน', agentLog: 'บันทึกตัวแทน',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Konuşma Günlüğü', title: 'Konuşma Günlüğü',
workflowTitle: 'Günlük Detayı', workflowTitle: 'Günlük Detayı',
fileListDetail: 'Ayrıntı',
fileListLabel: 'Dosya Detayları',
}, },
promptLog: 'Prompt Günlüğü', promptLog: 'Prompt Günlüğü',
agentLog: 'Agent Günlüğü', agentLog: 'Agent Günlüğü',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Журнал Розмови', title: 'Журнал Розмови',
workflowTitle: 'Деталі Журналу', workflowTitle: 'Деталі Журналу',
fileListDetail: 'Деталь',
fileListLabel: 'Подробиці файлу',
}, },
promptLog: 'Журнал Запитань', promptLog: 'Журнал Запитань',
agentLog: 'Журнал агента', agentLog: 'Журнал агента',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: 'Nhật ký cuộc trò chuyện', title: 'Nhật ký cuộc trò chuyện',
workflowTitle: 'Chi tiết nhật ký', workflowTitle: 'Chi tiết nhật ký',
fileListDetail: 'Chi tiết',
fileListLabel: 'Chi tiết tệp',
}, },
promptLog: 'Nhật ký lời nhắc', promptLog: 'Nhật ký lời nhắc',
AgentLog: 'Nhật ký tác nhân', AgentLog: 'Nhật ký tác nhân',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: '对话日志', title: '对话日志',
workflowTitle: '日志详情', workflowTitle: '日志详情',
fileListLabel: '文件详情',
fileListDetail: '详情',
}, },
promptLog: 'Prompt 日志', promptLog: 'Prompt 日志',
agentLog: 'Agent 日志', agentLog: 'Agent 日志',

View File

@ -8,6 +8,10 @@ const translation = {
completion: '文本生成', completion: '文本生成',
}, },
duplicate: '复制', duplicate: '复制',
mermaid: {
handDrawn: '手绘',
classic: '经典',
},
duplicateTitle: '复制应用', duplicateTitle: '复制应用',
export: '导出 DSL', export: '导出 DSL',
exportFailed: '导出 DSL 失败', exportFailed: '导出 DSL 失败',

View File

@ -79,6 +79,8 @@ const translation = {
runDetail: { runDetail: {
title: '對話日誌', title: '對話日誌',
workflowTitle: '日誌詳情', workflowTitle: '日誌詳情',
fileListDetail: '細節',
fileListLabel: '檔詳細資訊',
}, },
promptLog: 'Prompt 日誌', promptLog: 'Prompt 日誌',
agentLog: 'Agent 日誌', agentLog: 'Agent 日誌',

View File

@ -1,6 +1,6 @@
{ {
"name": "dify-web", "name": "dify-web",
"version": "0.13.0", "version": "0.13.1",
"private": true, "private": true,
"engines": { "engines": {
"node": ">=18.17.0" "node": ">=18.17.0"
@ -54,7 +54,8 @@
"dayjs": "^1.11.13", "dayjs": "^1.11.13",
"echarts": "^5.5.1", "echarts": "^5.5.1",
"echarts-for-react": "^3.0.2", "echarts-for-react": "^3.0.2",
"emoji-mart": "^5.6.0", "elkjs": "^0.9.3",
"emoji-mart": "^5.5.2",
"fast-deep-equal": "^3.1.3", "fast-deep-equal": "^3.1.3",
"globals": "^15.11.0", "globals": "^15.11.0",
"i18next": "^23.16.4", "i18next": "^23.16.4",
@ -68,7 +69,7 @@
"lamejs": "^1.2.1", "lamejs": "^1.2.1",
"lexical": "^0.18.0", "lexical": "^0.18.0",
"lodash-es": "^4.17.21", "lodash-es": "^4.17.21",
"mermaid": "10.9.3", "mermaid": "11.4.1",
"mime": "^4.0.4", "mime": "^4.0.4",
"mitt": "^3.0.1", "mitt": "^3.0.1",
"negotiator": "^0.6.3", "negotiator": "^0.6.3",
@ -155,7 +156,7 @@
"@types/uuid": "^10.0.0", "@types/uuid": "^10.0.0",
"autoprefixer": "^10.4.20", "autoprefixer": "^10.4.20",
"bing-translate-api": "^4.0.2", "bing-translate-api": "^4.0.2",
"code-inspector-plugin": "^0.17.4", "code-inspector-plugin": "^0.18.1",
"cross-env": "^7.0.3", "cross-env": "^7.0.3",
"eslint": "^9.13.0", "eslint": "^9.13.0",
"eslint-config-next": "^15.0.0", "eslint-config-next": "^15.0.0",

View File

@ -80,6 +80,19 @@
jsonc-eslint-parser "^2.1.0" jsonc-eslint-parser "^2.1.0"
yaml-eslint-parser "^1.1.0" yaml-eslint-parser "^1.1.0"
"@antfu/install-pkg@^0.4.0":
version "0.4.1"
resolved "https://registry.yarnpkg.com/@antfu/install-pkg/-/install-pkg-0.4.1.tgz#d1d7f3be96ecdb41581629cafe8626d1748c0cf1"
integrity sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==
dependencies:
package-manager-detector "^0.2.0"
tinyexec "^0.3.0"
"@antfu/utils@^0.7.10":
version "0.7.10"
resolved "https://registry.yarnpkg.com/@antfu/utils/-/utils-0.7.10.tgz#ae829f170158e297a9b6a28f161a8e487d00814d"
integrity sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==
"@babel/code-frame@^7.0.0": "@babel/code-frame@^7.0.0":
version "7.21.4" version "7.21.4"
resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz" resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz"
@ -1324,10 +1337,42 @@
resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
"@braintree/sanitize-url@^6.0.1": "@braintree/sanitize-url@^7.0.1":
version "6.0.4" version "7.1.0"
resolved "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-6.0.4.tgz" resolved "https://registry.yarnpkg.com/@braintree/sanitize-url/-/sanitize-url-7.1.0.tgz#048e48aab4f1460e3121e22aa62459d16653dc85"
integrity sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A== integrity sha512-o+UlMLt49RvtCASlOMW0AkHnabN9wR9rwCCherxO0yG4Npy34GkvrAqdXQvrhNs+jh+gkK8gB8Lf05qL/O7KWg==
"@chevrotain/cst-dts-gen@11.0.3":
version "11.0.3"
resolved "https://registry.yarnpkg.com/@chevrotain/cst-dts-gen/-/cst-dts-gen-11.0.3.tgz#5e0863cc57dc45e204ccfee6303225d15d9d4783"
integrity sha512-BvIKpRLeS/8UbfxXxgC33xOumsacaeCKAjAeLyOn7Pcp95HiRbrpl14S+9vaZLolnbssPIUuiUd8IvgkRyt6NQ==
dependencies:
"@chevrotain/gast" "11.0.3"
"@chevrotain/types" "11.0.3"
lodash-es "4.17.21"
"@chevrotain/gast@11.0.3":
version "11.0.3"
resolved "https://registry.yarnpkg.com/@chevrotain/gast/-/gast-11.0.3.tgz#e84d8880323fe8cbe792ef69ce3ffd43a936e818"
integrity sha512-+qNfcoNk70PyS/uxmj3li5NiECO+2YKZZQMbmjTqRI3Qchu8Hig/Q9vgkHpI3alNjr7M+a2St5pw5w5F6NL5/Q==
dependencies:
"@chevrotain/types" "11.0.3"
lodash-es "4.17.21"
"@chevrotain/regexp-to-ast@11.0.3":
version "11.0.3"
resolved "https://registry.yarnpkg.com/@chevrotain/regexp-to-ast/-/regexp-to-ast-11.0.3.tgz#11429a81c74a8e6a829271ce02fc66166d56dcdb"
integrity sha512-1fMHaBZxLFvWI067AVbGJav1eRY7N8DDvYCTwGBiE/ytKBgP8azTdgyrKyWZ9Mfh09eHWb5PgTSO8wi7U824RA==
"@chevrotain/types@11.0.3":
version "11.0.3"
resolved "https://registry.yarnpkg.com/@chevrotain/types/-/types-11.0.3.tgz#f8a03914f7b937f594f56eb89312b3b8f1c91848"
integrity sha512-gsiM3G8b58kZC2HaWR50gu6Y1440cHiJ+i3JUvcp/35JchYejb2+5MVeJK0iKThYpAa/P2PYFV4hoi44HD+aHQ==
"@chevrotain/utils@11.0.3":
version "11.0.3"
resolved "https://registry.yarnpkg.com/@chevrotain/utils/-/utils-11.0.3.tgz#e39999307b102cff3645ec4f5b3665f5297a2224"
integrity sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==
"@chromatic-com/storybook@^1.9.0": "@chromatic-com/storybook@^1.9.0":
version "1.9.0" version "1.9.0"
@ -1621,6 +1666,24 @@
resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz" resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz"
integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
"@iconify/types@^2.0.0":
version "2.0.0"
resolved "https://registry.yarnpkg.com/@iconify/types/-/types-2.0.0.tgz#ab0e9ea681d6c8a1214f30cd741fe3a20cc57f57"
integrity sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==
"@iconify/utils@^2.1.32":
version "2.1.33"
resolved "https://registry.yarnpkg.com/@iconify/utils/-/utils-2.1.33.tgz#cbf7242a52fd0ec58c42d37d28e4406b5327e8c0"
integrity sha512-jP9h6v/g0BIZx0p7XGJJVtkVnydtbgTgt9mVNcGDYwaa7UhdHdI9dvoq+gKj9sijMSJKxUPEG2JyjsgXjxL7Kw==
dependencies:
"@antfu/install-pkg" "^0.4.0"
"@antfu/utils" "^0.7.10"
"@iconify/types" "^2.0.0"
debug "^4.3.6"
kolorist "^1.8.0"
local-pkg "^0.5.0"
mlly "^1.7.1"
"@img/sharp-darwin-arm64@0.33.2": "@img/sharp-darwin-arm64@0.33.2":
version "0.33.2" version "0.33.2"
resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.2.tgz#0a52a82c2169112794dac2c71bfba9e90f7c5bd1" resolved "https://registry.yarnpkg.com/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.2.tgz#0a52a82c2169112794dac2c71bfba9e90f7c5bd1"
@ -2372,6 +2435,13 @@
dependencies: dependencies:
"@types/mdx" "^2.0.0" "@types/mdx" "^2.0.0"
"@mermaid-js/parser@^0.3.0":
version "0.3.0"
resolved "https://registry.yarnpkg.com/@mermaid-js/parser/-/parser-0.3.0.tgz#7a28714599f692f93df130b299fa1aadc9f9c8ab"
integrity sha512-HsvL6zgE5sUPGgkIDlmAWR1HTNHz2Iy11BAWPTa4Jjabkpguy4Ze2gzfLrg6pdRuBvFwgUYyxiaNqZwrEEXepA==
dependencies:
langium "3.0.0"
"@monaco-editor/loader@^1.4.0": "@monaco-editor/loader@^1.4.0":
version "1.4.0" version "1.4.0"
resolved "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.4.0.tgz" resolved "https://registry.npmjs.org/@monaco-editor/loader/-/loader-1.4.0.tgz"
@ -3419,12 +3489,12 @@
resolved "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.3.tgz" resolved "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.3.tgz"
integrity sha512-Imagg1vJ3y76Y2ea0871wpabqp613+8/r0mCLEBfdtqC7xMSfj9idOnmBYyMoULfHePJyxMAw3nWhJxzc+LFwQ== integrity sha512-Imagg1vJ3y76Y2ea0871wpabqp613+8/r0mCLEBfdtqC7xMSfj9idOnmBYyMoULfHePJyxMAw3nWhJxzc+LFwQ==
"@types/d3-scale-chromatic@*", "@types/d3-scale-chromatic@^3.0.0": "@types/d3-scale-chromatic@*":
version "3.0.0" version "3.0.0"
resolved "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz" resolved "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.0.tgz"
integrity sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw== integrity sha512-dsoJGEIShosKVRBZB0Vo3C8nqSDqVGujJU6tPznsBJxNJNwMF8utmS83nvCBKQYPpjCzaaHcrf66iTRpZosLPw==
"@types/d3-scale@*", "@types/d3-scale@^4.0.3": "@types/d3-scale@*":
version "4.0.4" version "4.0.4"
resolved "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.4.tgz" resolved "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.4.tgz"
integrity sha512-eq1ZeTj0yr72L8MQk6N6heP603ubnywSDRfNpi5enouR112HzGLS6RIvExCzZTraFF4HdzNpJMwA/zGiMoHUUw== integrity sha512-eq1ZeTj0yr72L8MQk6N6heP603ubnywSDRfNpi5enouR112HzGLS6RIvExCzZTraFF4HdzNpJMwA/zGiMoHUUw==
@ -3473,9 +3543,9 @@
"@types/d3-interpolate" "*" "@types/d3-interpolate" "*"
"@types/d3-selection" "*" "@types/d3-selection" "*"
"@types/d3@^7.4.0": "@types/d3@^7.4.0", "@types/d3@^7.4.3":
version "7.4.3" version "7.4.3"
resolved "https://registry.npmjs.org/@types/d3/-/d3-7.4.3.tgz" resolved "https://registry.yarnpkg.com/@types/d3/-/d3-7.4.3.tgz#d4550a85d08f4978faf0a4c36b848c61eaac07e2"
integrity sha512-lZXZ9ckh5R8uiFVt8ogUNf+pIrK4EsWrx2Np75WvF/eTpJ0FMHNhjXk8CKEx/+gpHbNQyJWehbFaTvqmHWB3ww== integrity sha512-lZXZ9ckh5R8uiFVt8ogUNf+pIrK4EsWrx2Np75WvF/eTpJ0FMHNhjXk8CKEx/+gpHbNQyJWehbFaTvqmHWB3ww==
dependencies: dependencies:
"@types/d3-array" "*" "@types/d3-array" "*"
@ -3895,6 +3965,11 @@
resolved "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz#cb6e2a691b70cb177c6e3ae9c1d2e8b2ea8cd304" resolved "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz#cb6e2a691b70cb177c6e3ae9c1d2e8b2ea8cd304"
integrity sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA== integrity sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==
"@types/trusted-types@^2.0.7":
version "2.0.7"
resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.7.tgz#baccb07a970b91707df3a3e8ba6896c57ead2d11"
integrity sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==
"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2": "@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2":
version "2.0.6" version "2.0.6"
resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz" resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz"
@ -4334,6 +4409,11 @@ acorn@^8.12.1, acorn@^8.7.1, acorn@^8.8.2:
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.13.0.tgz#2a30d670818ad16ddd6a35d3842dacec9e5d7ca3" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.13.0.tgz#2a30d670818ad16ddd6a35d3842dacec9e5d7ca3"
integrity sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w== integrity sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==
acorn@^8.14.0:
version "8.14.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.0.tgz#063e2c70cac5fb4f6467f0b11152e04c682795b0"
integrity sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==
adjust-sourcemap-loader@^4.0.0: adjust-sourcemap-loader@^4.0.0:
version "4.0.0" version "4.0.0"
resolved "https://registry.yarnpkg.com/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz#fc4a0fd080f7d10471f30a7320f25560ade28c99" resolved "https://registry.yarnpkg.com/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz#fc4a0fd080f7d10471f30a7320f25560ade28c99"
@ -5240,6 +5320,25 @@ check-error@^2.1.1:
resolved "https://registry.yarnpkg.com/check-error/-/check-error-2.1.1.tgz#87eb876ae71ee388fa0471fe423f494be1d96ccc" resolved "https://registry.yarnpkg.com/check-error/-/check-error-2.1.1.tgz#87eb876ae71ee388fa0471fe423f494be1d96ccc"
integrity sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw== integrity sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==
chevrotain-allstar@~0.3.0:
version "0.3.1"
resolved "https://registry.yarnpkg.com/chevrotain-allstar/-/chevrotain-allstar-0.3.1.tgz#b7412755f5d83cc139ab65810cdb00d8db40e6ca"
integrity sha512-b7g+y9A0v4mxCW1qUhf3BSVPg+/NvGErk/dOkrDaHA0nQIQGAtrOjlX//9OQtRlSCy+x9rfB5N8yC71lH1nvMw==
dependencies:
lodash-es "^4.17.21"
chevrotain@~11.0.3:
version "11.0.3"
resolved "https://registry.yarnpkg.com/chevrotain/-/chevrotain-11.0.3.tgz#88ffc1fb4b5739c715807eaeedbbf200e202fc1b"
integrity sha512-ci2iJH6LeIkvP9eJW6gpueU8cnZhv85ELY8w8WiFtNjMHA5ad6pQLaJo9mEly/9qUyCpvqX8/POVUTf18/HFdw==
dependencies:
"@chevrotain/cst-dts-gen" "11.0.3"
"@chevrotain/gast" "11.0.3"
"@chevrotain/regexp-to-ast" "11.0.3"
"@chevrotain/types" "11.0.3"
"@chevrotain/utils" "11.0.3"
lodash-es "4.17.21"
"chokidar@>=3.0.0 <4.0.0", chokidar@^3.5.3: "chokidar@>=3.0.0 <4.0.0", chokidar@^3.5.3:
version "3.5.3" version "3.5.3"
resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz" resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz"
@ -5388,24 +5487,28 @@ co@^4.6.0:
resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" resolved "https://registry.npmjs.org/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184"
integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==
code-inspector-core@0.13.0: code-inspector-core@0.18.2:
version "0.13.0" version "0.18.2"
resolved "https://registry.npmjs.org/code-inspector-core/-/code-inspector-core-0.13.0.tgz" resolved "https://registry.yarnpkg.com/code-inspector-core/-/code-inspector-core-0.18.2.tgz#5d4845789411d8ce2203a8b92b32d023fe6b0e0b"
integrity sha512-oYPNLdJjn3SY50YtF3IuxZOKLBNwzXSRPOqiXVnZFceMz9Ar6ugP3+zj7HszouxrsLFb2dVtlv//5wr4+cq62A== integrity sha512-2fnBXAF5apwrhvih6mseoklbcveMRulAByZiO2BNdfK77LjaBnbLZAxZqUVdgZhXmewkMBrVrPRQVRoldhdpIQ==
dependencies: dependencies:
"@vue/compiler-dom" "^3.2.47" "@vue/compiler-dom" "^3.2.47"
chalk "^4.1.1" chalk "^4.1.1"
dotenv "^16.1.4"
launch-ide "1.0.0"
portfinder "^1.0.28" portfinder "^1.0.28"
code-inspector-plugin@^0.13.0: code-inspector-plugin@^0.18.1:
version "0.13.0" version "0.18.2"
resolved "https://registry.npmjs.org/code-inspector-plugin/-/code-inspector-plugin-0.13.0.tgz" resolved "https://registry.yarnpkg.com/code-inspector-plugin/-/code-inspector-plugin-0.18.2.tgz#b604edef92b7eb6654a1a1660b3dfc5831fd7a14"
integrity sha512-v4mq5hhHkyMmutembTzREVsFeZ/+KsCwfx20+0gTqm1Il/M1T4d2BCv9mZ4ivie3GvvDMt/pVz1iBBVP3SuzJA== integrity sha512-LKOhA4YsoUZ6Dq4OQKP7G+kPcfeYGLoIQz7EDG4yoL5mqSu+uWR+0QvzoDc4HGXQ0jpkzEwlatbH6fBlbPiwKQ==
dependencies: dependencies:
chalk "4.1.1" chalk "4.1.1"
code-inspector-core "0.13.0" code-inspector-core "0.18.2"
vite-code-inspector-plugin "0.13.0" dotenv "^16.3.1"
webpack-code-inspector-plugin "0.13.0" esbuild-code-inspector-plugin "0.18.2"
vite-code-inspector-plugin "0.18.2"
webpack-code-inspector-plugin "0.18.2"
collect-v8-coverage@^1.0.0: collect-v8-coverage@^1.0.0:
version "1.0.2" version "1.0.2"
@ -5514,6 +5617,11 @@ concat-map@0.0.1:
resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
confbox@^0.1.8:
version "0.1.8"
resolved "https://registry.yarnpkg.com/confbox/-/confbox-0.1.8.tgz#820d73d3b3c82d9bd910652c5d4d599ef8ff8b06"
integrity sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==
console-browserify@^1.2.0: console-browserify@^1.2.0:
version "1.2.0" version "1.2.0"
resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336"
@ -5587,6 +5695,13 @@ cose-base@^1.0.0:
dependencies: dependencies:
layout-base "^1.0.0" layout-base "^1.0.0"
cose-base@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/cose-base/-/cose-base-2.2.0.tgz#1c395c35b6e10bb83f9769ca8b817d614add5c01"
integrity sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==
dependencies:
layout-base "^2.0.0"
cosmiconfig@^7.0.1: cosmiconfig@^7.0.1:
version "7.1.0" version "7.1.0"
resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6"
@ -5764,10 +5879,17 @@ cytoscape-cose-bilkent@^4.1.0:
dependencies: dependencies:
cose-base "^1.0.0" cose-base "^1.0.0"
cytoscape@^3.28.1: cytoscape-fcose@^2.2.0:
version "3.30.2" version "2.2.0"
resolved "https://registry.yarnpkg.com/cytoscape/-/cytoscape-3.30.2.tgz#94149707fb6547a55e3b44f03ffe232706212161" resolved "https://registry.yarnpkg.com/cytoscape-fcose/-/cytoscape-fcose-2.2.0.tgz#e4d6f6490df4fab58ae9cea9e5c3ab8d7472f471"
integrity sha512-oICxQsjW8uSaRmn4UK/jkczKOqTrVqt5/1WL0POiJUT2EKNc9STM4hYFHv917yu55aTBMFNRzymlJhVAiWPCxw== integrity sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==
dependencies:
cose-base "^2.2.0"
cytoscape@^3.29.2:
version "3.30.4"
resolved "https://registry.yarnpkg.com/cytoscape/-/cytoscape-3.30.4.tgz#3404da0a159c00a1a3df2c85b2b43fdc66a0e28e"
integrity sha512-OxtlZwQl1WbwMmLiyPSEBuzeTIQnwZhJYYWFzZ2PhEHVFwpeaqNIkUzSiso00D98qk60l8Gwon2RP304d3BJ1A==
"d3-array@1 - 2": "d3-array@1 - 2":
version "2.12.1" version "2.12.1"
@ -6004,10 +6126,10 @@ d3-zoom@3, d3-zoom@^3.0.0:
d3-selection "2 - 3" d3-selection "2 - 3"
d3-transition "2 - 3" d3-transition "2 - 3"
d3@^7.4.0, d3@^7.8.2: d3@^7.9.0:
version "7.8.5" version "7.9.0"
resolved "https://registry.npmjs.org/d3/-/d3-7.8.5.tgz" resolved "https://registry.yarnpkg.com/d3/-/d3-7.9.0.tgz#579e7acb3d749caf8860bd1741ae8d371070cd5d"
integrity sha512-JgoahDG51ncUfJu6wX/1vWQEqOflgXyl4MaHqlcSruTez7yhaRKR9i8VjjcQGeS2en/jnFivXuaIMnseMMt0XA== integrity sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==
dependencies: dependencies:
d3-array "3" d3-array "3"
d3-axis "3" d3-axis "3"
@ -6040,12 +6162,12 @@ d3@^7.4.0, d3@^7.8.2:
d3-transition "3" d3-transition "3"
d3-zoom "3" d3-zoom "3"
dagre-d3-es@7.0.10: dagre-d3-es@7.0.11:
version "7.0.10" version "7.0.11"
resolved "https://registry.npmjs.org/dagre-d3-es/-/dagre-d3-es-7.0.10.tgz" resolved "https://registry.yarnpkg.com/dagre-d3-es/-/dagre-d3-es-7.0.11.tgz#2237e726c0577bfe67d1a7cfd2265b9ab2c15c40"
integrity sha512-qTCQmEhcynucuaZgY5/+ti3X/rnszKZhEQH/ZdWdtP1tA/y3VoHJzcVrO9pjjJCNpigfscAtoUB5ONcd2wNn0A== integrity sha512-tvlJLyQf834SylNKax8Wkzco/1ias1OPw8DcUMDE7oUIoSEW25riQVuiu/0OWEFqT0cxHT3Pa9/D82Jr47IONw==
dependencies: dependencies:
d3 "^7.8.2" d3 "^7.9.0"
lodash-es "^4.17.21" lodash-es "^4.17.21"
damerau-levenshtein@^1.0.8: damerau-levenshtein@^1.0.8:
@ -6062,6 +6184,11 @@ data-urls@^3.0.2:
whatwg-mimetype "^3.0.0" whatwg-mimetype "^3.0.0"
whatwg-url "^11.0.0" whatwg-url "^11.0.0"
dayjs@^1.11.10:
version "1.11.13"
resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.13.tgz#92430b0139055c3ebb60150aa13e860a4b5a366c"
integrity sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==
dayjs@^1.11.7, dayjs@^1.9.1: dayjs@^1.11.7, dayjs@^1.9.1:
version "1.11.8" version "1.11.8"
resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz" resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.8.tgz"
@ -6095,6 +6222,13 @@ debug@^4.0.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4:
dependencies: dependencies:
ms "2.1.2" ms "2.1.2"
debug@^4.3.6:
version "4.3.7"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52"
integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==
dependencies:
ms "^2.1.3"
decimal.js@^10.4.2: decimal.js@^10.4.2:
version "10.4.3" version "10.4.3"
resolved "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" resolved "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23"
@ -6401,10 +6535,12 @@ domhandler@^5.0.2, domhandler@^5.0.3:
dependencies: dependencies:
domelementtype "^2.3.0" domelementtype "^2.3.0"
"dompurify@^3.0.5 <3.1.7": dompurify@^3.2.1:
version "3.1.6" version "3.2.2"
resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.1.6.tgz#43c714a94c6a7b8801850f82e756685300a027e2" resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.2.2.tgz#6c0518745e81686c74a684f5af1e5613e7cc0246"
integrity sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ== integrity sha512-YMM+erhdZ2nkZ4fTNRTSI94mb7VG7uVF5vj5Zde7tImgnhZE3R6YW/IACGIHb2ux+QkEXMhe591N+5jWOmL4Zw==
optionalDependencies:
"@types/trusted-types" "^2.0.7"
domutils@^2.5.2, domutils@^2.8.0: domutils@^2.5.2, domutils@^2.8.0:
version "2.8.0" version "2.8.0"
@ -6432,6 +6568,11 @@ dot-case@^3.0.4:
no-case "^3.0.4" no-case "^3.0.4"
tslib "^2.0.3" tslib "^2.0.3"
dotenv@^16.1.4, dotenv@^16.3.1:
version "16.4.7"
resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.4.7.tgz#0e20c5b82950140aa99be360a8a5f52335f53c26"
integrity sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==
echarts-for-react@^3.0.2: echarts-for-react@^3.0.2:
version "3.0.2" version "3.0.2"
resolved "https://registry.npmjs.org/echarts-for-react/-/echarts-for-react-3.0.2.tgz" resolved "https://registry.npmjs.org/echarts-for-react/-/echarts-for-react-3.0.2.tgz"
@ -6468,7 +6609,7 @@ electron-to-chromium@^1.5.28:
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.40.tgz#5f6aec13751123c5c3185999ebe3e7bcaf828c2b" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.40.tgz#5f6aec13751123c5c3185999ebe3e7bcaf828c2b"
integrity sha512-LYm78o6if4zTasnYclgQzxEcgMoIcybWOhkATWepN95uwVVWV0/IW10v+2sIeHE+bIYWipLneTftVyQm45UY7g== integrity sha512-LYm78o6if4zTasnYclgQzxEcgMoIcybWOhkATWepN95uwVVWV0/IW10v+2sIeHE+bIYWipLneTftVyQm45UY7g==
elkjs@^0.9.0: elkjs@^0.9.3:
version "0.9.3" version "0.9.3"
resolved "https://registry.yarnpkg.com/elkjs/-/elkjs-0.9.3.tgz#16711f8ceb09f1b12b99e971b138a8384a529161" resolved "https://registry.yarnpkg.com/elkjs/-/elkjs-0.9.3.tgz#16711f8ceb09f1b12b99e971b138a8384a529161"
integrity sha512-f/ZeWvW/BCXbhGEf1Ujp29EASo/lk1FDnETgNKwJrsVvGZhUWCZyg3xLJjAsxfOmt8KjswHmI5EwCQcPMpOYhQ== integrity sha512-f/ZeWvW/BCXbhGEf1Ujp29EASo/lk1FDnETgNKwJrsVvGZhUWCZyg3xLJjAsxfOmt8KjswHmI5EwCQcPMpOYhQ==
@ -6704,6 +6845,13 @@ es-to-primitive@^1.2.1:
is-date-object "^1.0.1" is-date-object "^1.0.1"
is-symbol "^1.0.2" is-symbol "^1.0.2"
esbuild-code-inspector-plugin@0.18.2:
version "0.18.2"
resolved "https://registry.yarnpkg.com/esbuild-code-inspector-plugin/-/esbuild-code-inspector-plugin-0.18.2.tgz#3ecb938d3c05356ca2878c71edae9e4a24590b8f"
integrity sha512-q9Qh1xfUhHEtnmYt8eXCAzdbFLaBMgC6wrwmGH7JI2nztYlcpVD4HeAnheQ9ZTaoRGu+2L+qkpM5XQMd6xhUcQ==
dependencies:
code-inspector-core "0.18.2"
esbuild-register@^3.5.0: esbuild-register@^3.5.0:
version "3.6.0" version "3.6.0"
resolved "https://registry.yarnpkg.com/esbuild-register/-/esbuild-register-3.6.0.tgz#cf270cfa677baebbc0010ac024b823cbf723a36d" resolved "https://registry.yarnpkg.com/esbuild-register/-/esbuild-register-3.6.0.tgz#cf270cfa677baebbc0010ac024b823cbf723a36d"
@ -7810,6 +7958,11 @@ grapheme-splitter@^1.0.4:
resolved "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz" resolved "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz"
integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==
hachure-fill@^0.5.2:
version "0.5.2"
resolved "https://registry.yarnpkg.com/hachure-fill/-/hachure-fill-0.5.2.tgz#d19bc4cc8750a5962b47fb1300557a85fcf934cc"
integrity sha512-3GKBOn+m2LX9iq+JC1064cSFprJY4jL1jCXTcpnfER5HYE2l/4EfWSGzkPa/ZDBmYI0ZOEj5VHV/eKnPGkHuOg==
has-bigints@^1.0.1, has-bigints@^1.0.2: has-bigints@^1.0.1, has-bigints@^1.0.2:
version "1.0.2" version "1.0.2"
resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz" resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz"
@ -9397,10 +9550,10 @@ keyv@^4.0.0:
dependencies: dependencies:
json-buffer "3.0.1" json-buffer "3.0.1"
khroma@^2.0.0: khroma@^2.1.0:
version "2.0.0" version "2.1.0"
resolved "https://registry.npmjs.org/khroma/-/khroma-2.0.0.tgz" resolved "https://registry.yarnpkg.com/khroma/-/khroma-2.1.0.tgz#45f2ce94ce231a437cf5b63c2e886e6eb42bbbb1"
integrity sha512-2J8rDNlQWbtiNYThZRvmMv5yt44ZakX+Tz5ZIp/mN1pt4snn+m030Va5Z4v8xA0cQFDXBwO/8i42xL4QPsVk3g== integrity sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==
kleur@^3.0.3: kleur@^3.0.3:
version "3.0.3" version "3.0.3"
@ -9412,6 +9565,11 @@ kleur@^4.0.3:
resolved "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz" resolved "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz"
integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==
kolorist@^1.8.0:
version "1.8.0"
resolved "https://registry.yarnpkg.com/kolorist/-/kolorist-1.8.0.tgz#edddbbbc7894bc13302cdf740af6374d4a04743c"
integrity sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==
lamejs@^1.2.1: lamejs@^1.2.1:
version "1.2.1" version "1.2.1"
resolved "https://registry.npmjs.org/lamejs/-/lamejs-1.2.1.tgz" resolved "https://registry.npmjs.org/lamejs/-/lamejs-1.2.1.tgz"
@ -9419,6 +9577,17 @@ lamejs@^1.2.1:
dependencies: dependencies:
use-strict "1.0.1" use-strict "1.0.1"
langium@3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/langium/-/langium-3.0.0.tgz#4938294eb57c59066ef955070ac4d0c917b26026"
integrity sha512-+Ez9EoiByeoTu/2BXmEaZ06iPNXM6thWJp02KfBO/raSMyCJ4jw7AkWWa+zBCTm0+Tw1Fj9FOxdqSskyN5nAwg==
dependencies:
chevrotain "~11.0.3"
chevrotain-allstar "~0.3.0"
vscode-languageserver "~9.0.1"
vscode-languageserver-textdocument "~1.0.11"
vscode-uri "~3.0.8"
language-subtag-registry@~0.3.2: language-subtag-registry@~0.3.2:
version "0.3.22" version "0.3.22"
resolved "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz" resolved "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz"
@ -9431,11 +9600,24 @@ language-tags@=1.0.5:
dependencies: dependencies:
language-subtag-registry "~0.3.2" language-subtag-registry "~0.3.2"
launch-ide@1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/launch-ide/-/launch-ide-1.0.0.tgz#be405fdef86cff69eeb53fb9ad59054a7480fd56"
integrity sha512-VnVnFZK97DySVgidvlHlbPYOgf0hWjYowdqPu5P9iw1vyA+JUPu7ldJdL3cQm0ILC+4Wf1jtOv/x2f/67ePIfQ==
dependencies:
chalk "^4.1.1"
dotenv "^16.1.4"
layout-base@^1.0.0: layout-base@^1.0.0:
version "1.0.2" version "1.0.2"
resolved "https://registry.npmjs.org/layout-base/-/layout-base-1.0.2.tgz" resolved "https://registry.npmjs.org/layout-base/-/layout-base-1.0.2.tgz"
integrity sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg== integrity sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==
layout-base@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/layout-base/-/layout-base-2.0.1.tgz#d0337913586c90f9c2c075292069f5c2da5dd285"
integrity sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==
leven@^3.1.0: leven@^3.1.0:
version "3.1.0" version "3.1.0"
resolved "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" resolved "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2"
@ -9521,6 +9703,14 @@ local-pkg@^0.4.3:
resolved "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz" resolved "https://registry.npmjs.org/local-pkg/-/local-pkg-0.4.3.tgz"
integrity sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g== integrity sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==
local-pkg@^0.5.0:
version "0.5.1"
resolved "https://registry.yarnpkg.com/local-pkg/-/local-pkg-0.5.1.tgz#69658638d2a95287534d4c2fff757980100dbb6d"
integrity sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==
dependencies:
mlly "^1.7.3"
pkg-types "^1.2.1"
locate-path@^5.0.0: locate-path@^5.0.0:
version "5.0.0" version "5.0.0"
resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz" resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz"
@ -9542,7 +9732,7 @@ locate-path@^7.1.0:
dependencies: dependencies:
p-locate "^6.0.0" p-locate "^6.0.0"
lodash-es@^4.17.21: lodash-es@4.17.21, lodash-es@^4.17.21:
version "4.17.21" version "4.17.21"
resolved "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz" resolved "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz"
integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==
@ -9705,6 +9895,11 @@ markdown-to-jsx@^7.4.5:
resolved "https://registry.yarnpkg.com/markdown-to-jsx/-/markdown-to-jsx-7.5.0.tgz#42ece0c71e842560a7d8bd9f81e7a34515c72150" resolved "https://registry.yarnpkg.com/markdown-to-jsx/-/markdown-to-jsx-7.5.0.tgz#42ece0c71e842560a7d8bd9f81e7a34515c72150"
integrity sha512-RrBNcMHiFPcz/iqIj0n3wclzHXjwS7mzjBNWecKKVhNTIxQepIix6Il/wZCn2Cg5Y1ow2Qi84+eJrryFRWBEWw== integrity sha512-RrBNcMHiFPcz/iqIj0n3wclzHXjwS7mzjBNWecKKVhNTIxQepIix6Il/wZCn2Cg5Y1ow2Qi84+eJrryFRWBEWw==
marked@^13.0.2:
version "13.0.3"
resolved "https://registry.yarnpkg.com/marked/-/marked-13.0.3.tgz#5c5b4a5d0198060c7c9bc6ef9420a7fed30f822d"
integrity sha512-rqRix3/TWzE9rIoFGIn8JmsVfhiuC8VIQ8IdX5TfzmeBucdY05/0UlzKaw0eVtpcN/OdVFpBk7CjKGo9iHJ/zA==
md5.js@^1.3.4: md5.js@^1.3.4:
version "1.3.5" version "1.3.5"
resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f"
@ -9744,7 +9939,7 @@ mdast-util-from-markdown@^0.8.5:
parse-entities "^2.0.0" parse-entities "^2.0.0"
unist-util-stringify-position "^2.0.0" unist-util-stringify-position "^2.0.0"
mdast-util-from-markdown@^1.0.0, mdast-util-from-markdown@^1.1.0, mdast-util-from-markdown@^1.3.0: mdast-util-from-markdown@^1.0.0, mdast-util-from-markdown@^1.1.0:
version "1.3.1" version "1.3.1"
resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz" resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz"
integrity sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww== integrity sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==
@ -9990,31 +10185,31 @@ merge2@^1.3.0, merge2@^1.4.1:
resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz"
integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
mermaid@10.9.3: mermaid@11.4.1:
version "10.9.3" version "11.4.1"
resolved "https://registry.yarnpkg.com/mermaid/-/mermaid-10.9.3.tgz#90bc6f15c33dbe5d9507fed31592cc0d88fee9f7" resolved "https://registry.yarnpkg.com/mermaid/-/mermaid-11.4.1.tgz#577fad5c31a01a06d9f793e298d411f1379eecc8"
integrity sha512-V80X1isSEvAewIL3xhmz/rVmc27CVljcsbWxkxlWJWY/1kQa4XOABqpDl2qQLGKzpKm6WbTfUEKImBlUfFYArw== integrity sha512-Mb01JT/x6CKDWaxigwfZYuYmDZ6xtrNwNlidKZwkSrDaY9n90tdrJTV5Umk+wP1fZscGptmKFXHsXMDEVZ+Q6A==
dependencies: dependencies:
"@braintree/sanitize-url" "^6.0.1" "@braintree/sanitize-url" "^7.0.1"
"@types/d3-scale" "^4.0.3" "@iconify/utils" "^2.1.32"
"@types/d3-scale-chromatic" "^3.0.0" "@mermaid-js/parser" "^0.3.0"
cytoscape "^3.28.1" "@types/d3" "^7.4.3"
cytoscape "^3.29.2"
cytoscape-cose-bilkent "^4.1.0" cytoscape-cose-bilkent "^4.1.0"
d3 "^7.4.0" cytoscape-fcose "^2.2.0"
d3 "^7.9.0"
d3-sankey "^0.12.3" d3-sankey "^0.12.3"
dagre-d3-es "7.0.10" dagre-d3-es "7.0.11"
dayjs "^1.11.7" dayjs "^1.11.10"
dompurify "^3.0.5 <3.1.7" dompurify "^3.2.1"
elkjs "^0.9.0"
katex "^0.16.9" katex "^0.16.9"
khroma "^2.0.0" khroma "^2.1.0"
lodash-es "^4.17.21" lodash-es "^4.17.21"
mdast-util-from-markdown "^1.3.0" marked "^13.0.2"
non-layered-tidy-tree-layout "^2.0.2" roughjs "^4.6.6"
stylis "^4.1.3" stylis "^4.3.1"
ts-dedent "^2.2.0" ts-dedent "^2.2.0"
uuid "^9.0.0" uuid "^9.0.1"
web-worker "^1.2.0"
methods@~1.1.2: methods@~1.1.2:
version "1.1.2" version "1.1.2"
@ -10545,6 +10740,16 @@ mkdirp@^0.5.6:
dependencies: dependencies:
minimist "^1.2.6" minimist "^1.2.6"
mlly@^1.7.1, mlly@^1.7.2, mlly@^1.7.3:
version "1.7.3"
resolved "https://registry.yarnpkg.com/mlly/-/mlly-1.7.3.tgz#d86c0fcd8ad8e16395eb764a5f4b831590cee48c"
integrity sha512-xUsx5n/mN0uQf4V548PKQ+YShA4/IW0KI1dZhrNrPCLG+xizETbHTkOa1f8/xut9JRPp8kQuMnz0oqwkTiLo/A==
dependencies:
acorn "^8.14.0"
pathe "^1.1.2"
pkg-types "^1.2.1"
ufo "^1.5.4"
mri@^1.1.0: mri@^1.1.0:
version "1.2.0" version "1.2.0"
resolved "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz" resolved "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz"
@ -10560,7 +10765,7 @@ ms@2.1.2, ms@^2.1.1:
resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz"
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
ms@2.1.3: ms@2.1.3, ms@^2.1.3:
version "2.1.3" version "2.1.3"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
@ -10686,11 +10891,6 @@ node-releases@^2.0.18:
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.18.tgz#f010e8d35e2fe8d6b2944f03f70213ecedc4ca3f"
integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g== integrity sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==
non-layered-tidy-tree-layout@^2.0.2:
version "2.0.2"
resolved "https://registry.npmjs.org/non-layered-tidy-tree-layout/-/non-layered-tidy-tree-layout-2.0.2.tgz"
integrity sha512-gkXMxRzUH+PB0ax9dUN0yYF0S25BqeAYqhgMaLUFmpXLEk7Fcu8f4emJuOAY0V8kjDICxROIKsTAKsV/v355xw==
normalize-package-data@^2.5.0: normalize-package-data@^2.5.0:
version "2.5.0" version "2.5.0"
resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz"
@ -10958,6 +11158,11 @@ p-try@^2.0.0:
resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz"
integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==
package-manager-detector@^0.2.0:
version "0.2.6"
resolved "https://registry.yarnpkg.com/package-manager-detector/-/package-manager-detector-0.2.6.tgz#7dc8e30ad94861d36114b4499a72d57b30549943"
integrity sha512-9vPH3qooBlYRJdmdYP00nvjZOulm40r5dhtal8st18ctf+6S1k7pi5yIHLvI4w5D70x0Y+xdVD9qITH0QO/A8A==
pako@~1.0.5: pako@~1.0.5:
version "1.0.11" version "1.0.11"
resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf"
@ -11056,6 +11261,11 @@ path-browserify@^1.0.1:
resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd"
integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==
path-data-parser@0.1.0, path-data-parser@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/path-data-parser/-/path-data-parser-0.1.0.tgz#8f5ba5cc70fc7becb3dcefaea08e2659aba60b8c"
integrity sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w==
path-exists@^4.0.0: path-exists@^4.0.0:
version "4.0.0" version "4.0.0"
resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz"
@ -11104,6 +11314,11 @@ path-type@^4.0.0:
resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz"
integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
pathe@^1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.2.tgz#6c4cb47a945692e48a1ddd6e4094d170516437ec"
integrity sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==
pathval@^2.0.0: pathval@^2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://registry.yarnpkg.com/pathval/-/pathval-2.0.0.tgz#7e2550b422601d4f6b8e26f1301bc8f15a741a25" resolved "https://registry.yarnpkg.com/pathval/-/pathval-2.0.0.tgz#7e2550b422601d4f6b8e26f1301bc8f15a741a25"
@ -11183,6 +11398,15 @@ pkg-dir@^7.0.0:
dependencies: dependencies:
find-up "^6.3.0" find-up "^6.3.0"
pkg-types@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/pkg-types/-/pkg-types-1.2.1.tgz#6ac4e455a5bb4b9a6185c1c79abd544c901db2e5"
integrity sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==
dependencies:
confbox "^0.1.8"
mlly "^1.7.2"
pathe "^1.1.2"
pluralize@^8.0.0: pluralize@^8.0.0:
version "8.0.0" version "8.0.0"
resolved "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz" resolved "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz"
@ -11195,6 +11419,19 @@ pnp-webpack-plugin@^1.7.0:
dependencies: dependencies:
ts-pnp "^1.1.6" ts-pnp "^1.1.6"
points-on-curve@0.2.0, points-on-curve@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/points-on-curve/-/points-on-curve-0.2.0.tgz#7dbb98c43791859434284761330fa893cb81b4d1"
integrity sha512-0mYKnYYe9ZcqMCWhUjItv/oHjvgEsfKvnUTg8sAtnHr3GVy7rGkXCb6d5cSyqrWqL4k81b9CPg3urd+T7aop3A==
points-on-path@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/points-on-path/-/points-on-path-0.2.1.tgz#553202b5424c53bed37135b318858eacff85dd52"
integrity sha512-25ClnWWuw7JbWZcgqY/gJ4FQWadKxGWk+3kR/7kD0tCaDtPPMj7oHu2ToLaVhfpnHrZzYby2w6tUA0eOIuUg8g==
dependencies:
path-data-parser "0.1.0"
points-on-curve "0.2.0"
polished@^4.2.2: polished@^4.2.2:
version "4.3.1" version "4.3.1"
resolved "https://registry.yarnpkg.com/polished/-/polished-4.3.1.tgz#5a00ae32715609f83d89f6f31d0f0261c6170548" resolved "https://registry.yarnpkg.com/polished/-/polished-4.3.1.tgz#5a00ae32715609f83d89f6f31d0f0261c6170548"
@ -12259,6 +12496,16 @@ robust-predicates@^3.0.0:
resolved "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz" resolved "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz"
integrity sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg== integrity sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==
roughjs@^4.6.6:
version "4.6.6"
resolved "https://registry.yarnpkg.com/roughjs/-/roughjs-4.6.6.tgz#1059f49a5e0c80dee541a005b20cc322b222158b"
integrity sha512-ZUz/69+SYpFN/g/lUlo2FXcIjRkSu3nDarreVdGGndHEBJ6cXPdKguS8JGxwj5HA5xIbVKSmLgr5b3AWxtRfvQ==
dependencies:
hachure-fill "^0.5.2"
path-data-parser "^0.1.0"
points-on-curve "^0.2.0"
points-on-path "^0.2.1"
run-applescript@^5.0.0: run-applescript@^5.0.0:
version "5.0.0" version "5.0.0"
resolved "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz" resolved "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz"
@ -12981,10 +13228,10 @@ styled-jsx@^5.1.6:
dependencies: dependencies:
client-only "0.0.1" client-only "0.0.1"
stylis@^4.1.3: stylis@^4.3.1:
version "4.3.0" version "4.3.4"
resolved "https://registry.npmjs.org/stylis/-/stylis-4.3.0.tgz" resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.3.4.tgz#ca5c6c4a35c4784e4e93a2a24dc4e9fa075250a4"
integrity sha512-E87pIogpwUsUwXw7dNyU4QDjdgVMy52m+XEOPEKUn161cCzWjjhPSQhByfd1CcNvrOLnXQ6OnnZDwnJrz/Z4YQ== integrity sha512-osIBl6BGUmSfDkyH2mB7EFvCJntXDrLhKjHTRj/rK6xLH0yuPrHULDRQzKokSOD4VoorhtKpfcfW1GAntu8now==
sucrase@^3.32.0: sucrase@^3.32.0:
version "3.32.0" version "3.32.0"
@ -13171,6 +13418,11 @@ tiny-invariant@^1.3.1, tiny-invariant@^1.3.3:
resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.3.tgz#46680b7a873a0d5d10005995eb90a70d74d60127" resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.3.tgz#46680b7a873a0d5d10005995eb90a70d74d60127"
integrity sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg== integrity sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==
tinyexec@^0.3.0:
version "0.3.1"
resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-0.3.1.tgz#0ab0daf93b43e2c211212396bdb836b468c97c98"
integrity sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==
tinyrainbow@^1.2.0: tinyrainbow@^1.2.0:
version "1.2.0" version "1.2.0"
resolved "https://registry.yarnpkg.com/tinyrainbow/-/tinyrainbow-1.2.0.tgz#5c57d2fc0fb3d1afd78465c33ca885d04f02abb5" resolved "https://registry.yarnpkg.com/tinyrainbow/-/tinyrainbow-1.2.0.tgz#5c57d2fc0fb3d1afd78465c33ca885d04f02abb5"
@ -13433,6 +13685,11 @@ typescript@4.9.5:
resolved "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz" resolved "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz"
integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==
ufo@^1.5.4:
version "1.5.4"
resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.5.4.tgz#16d6949674ca0c9e0fbbae1fa20a71d7b1ded754"
integrity sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==
uglify-js@^3.17.4: uglify-js@^3.17.4:
version "3.17.4" version "3.17.4"
resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz" resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz"
@ -13801,12 +14058,12 @@ vfile@^6.0.0:
unist-util-stringify-position "^4.0.0" unist-util-stringify-position "^4.0.0"
vfile-message "^4.0.0" vfile-message "^4.0.0"
vite-code-inspector-plugin@0.13.0: vite-code-inspector-plugin@0.18.2:
version "0.13.0" version "0.18.2"
resolved "https://registry.npmjs.org/vite-code-inspector-plugin/-/vite-code-inspector-plugin-0.13.0.tgz" resolved "https://registry.yarnpkg.com/vite-code-inspector-plugin/-/vite-code-inspector-plugin-0.18.2.tgz#33be5f7408ea81163d833c8f06c2ff1e18669ee4"
integrity sha512-hvIn9G+IFzQHVVynWh2wGTBHo51CBJRqQBzYryeuuaL0BK0w8my2/tlpSAae5ofQxOBXBMhyXC2gWgYUJnNWrA== integrity sha512-MfHvere+71vL0BOposwgbHKZ8o973mYnMhGmU4uzOMt+gsmIjqHxcUkak9K2RMkRB1mG7/Gehvyy28SkUuhg3A==
dependencies: dependencies:
code-inspector-core "0.13.0" code-inspector-core "0.18.2"
vm-browserify@^1.1.2: vm-browserify@^1.1.2:
version "1.1.2" version "1.1.2"
@ -13818,6 +14075,41 @@ void-elements@3.1.0:
resolved "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz" resolved "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz"
integrity sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w== integrity sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==
vscode-jsonrpc@8.2.0:
version "8.2.0"
resolved "https://registry.yarnpkg.com/vscode-jsonrpc/-/vscode-jsonrpc-8.2.0.tgz#f43dfa35fb51e763d17cd94dcca0c9458f35abf9"
integrity sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==
vscode-languageserver-protocol@3.17.5:
version "3.17.5"
resolved "https://registry.yarnpkg.com/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.5.tgz#864a8b8f390835572f4e13bd9f8313d0e3ac4bea"
integrity sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==
dependencies:
vscode-jsonrpc "8.2.0"
vscode-languageserver-types "3.17.5"
vscode-languageserver-textdocument@~1.0.11:
version "1.0.12"
resolved "https://registry.yarnpkg.com/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.12.tgz#457ee04271ab38998a093c68c2342f53f6e4a631"
integrity sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==
vscode-languageserver-types@3.17.5:
version "3.17.5"
resolved "https://registry.yarnpkg.com/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz#3273676f0cf2eab40b3f44d085acbb7f08a39d8a"
integrity sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==
vscode-languageserver@~9.0.1:
version "9.0.1"
resolved "https://registry.yarnpkg.com/vscode-languageserver/-/vscode-languageserver-9.0.1.tgz#500aef82097eb94df90d008678b0b6b5f474015b"
integrity sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==
dependencies:
vscode-languageserver-protocol "3.17.5"
vscode-uri@~3.0.8:
version "3.0.8"
resolved "https://registry.yarnpkg.com/vscode-uri/-/vscode-uri-3.0.8.tgz#1770938d3e72588659a172d0fd4642780083ff9f"
integrity sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==
vue-eslint-parser@^9.3.0: vue-eslint-parser@^9.3.0:
version "9.3.0" version "9.3.0"
resolved "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.3.0.tgz" resolved "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.3.0.tgz"
@ -13858,22 +14150,17 @@ web-namespaces@^2.0.0:
resolved "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz" resolved "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz"
integrity sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ== integrity sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==
web-worker@^1.2.0:
version "1.2.0"
resolved "https://registry.npmjs.org/web-worker/-/web-worker-1.2.0.tgz"
integrity sha512-PgF341avzqyx60neE9DD+XS26MMNMoUQRz9NOZwW32nPQrF6p77f1htcnjBSEV8BGMKZ16choqUG4hyI0Hx7mA==
webidl-conversions@^7.0.0: webidl-conversions@^7.0.0:
version "7.0.0" version "7.0.0"
resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a"
integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==
webpack-code-inspector-plugin@0.13.0: webpack-code-inspector-plugin@0.18.2:
version "0.13.0" version "0.18.2"
resolved "https://registry.npmjs.org/webpack-code-inspector-plugin/-/webpack-code-inspector-plugin-0.13.0.tgz" resolved "https://registry.yarnpkg.com/webpack-code-inspector-plugin/-/webpack-code-inspector-plugin-0.18.2.tgz#c2355d384c12212de5662fa8bc5898f449886b0a"
integrity sha512-T3ZZ84NX0cVmwff5zyYhB9OuroZYsyaQpSgFicgiuYAWCsQePYApM/R3bHdvcECkBXO50hAVtr9SjWRTu1+Ntg== integrity sha512-sSUgrISb8KqKGiX+AvKA5FAdiOh41nEX/EU+c/d1ChYQmwLDdWXxsMyAs494R3r+ihVUchhLalb9V6TvDKTOCA==
dependencies: dependencies:
code-inspector-core "0.13.0" code-inspector-core "0.18.2"
webpack-dev-middleware@^6.1.2: webpack-dev-middleware@^6.1.2:
version "6.1.3" version "6.1.3"