From 9e77586a64e00d52acacaaf03542572e9f907aba Mon Sep 17 00:00:00 2001 From: Robert Date: Wed, 25 Jun 2025 20:21:31 +0800 Subject: [PATCH 1/4] Update --- apps/base/views.py | 1 + core/settings.py | 19 +- core/storage.py | 241 +- docker-compose.yml | 7 +- main.py | 6 +- themes/2024/index.html | 2 +- themes/2025/assets/AdminLayout-BSI80wlV.js | 21 + themes/2025/assets/AdminLayout-CZwJxNxp.css | 1 + themes/2025/assets/AdminLayout-DlX3CUuP.js | 21 + themes/2025/assets/DashboardView-CykWLsDF.js | 11 + themes/2025/assets/DashboardView-DHkW9fcL.js | 11 + themes/2025/assets/DingTalk-CT5a5scH.ttf | Bin 0 -> 85552 bytes themes/2025/assets/FileManageView-3VMR54FC.js | 26 + themes/2025/assets/FileManageView-BLdG4lo7.js | 26 + .../2025/assets/FileManageView-CwWUDTzq.css | 1 + themes/2025/assets/LoginView-DXxv6UDD.js | 1 + themes/2025/assets/LoginView-T1LQBbzg.js | 1 + themes/2025/assets/LoginView-zMyguVQQ.css | 1 + .../assets/RetrievewFileView-BgLHFGkc.css | 1 + .../2025/assets/RetrievewFileView-DyKPLNPu.js | 76 + .../2025/assets/RetrievewFileView-DzS7C4LK.js | 76 + themes/2025/assets/SendFileView-DFaiiDlV.css | 1 + themes/2025/assets/SendFileView-DJlusruR.js | 31 + themes/2025/assets/SendFileView-DsSIurce.js | 31 + .../assets/SystemSettingsView-BvNjuhLF.js | 1 + .../assets/SystemSettingsView-DJ12QIQD.js | 1 + themes/2025/assets/box-Btnwq7DC.js | 6 + themes/2025/assets/box-Ty09a89y.js | 6 + themes/2025/assets/clipboard-BhvW87y2.js | 21 + themes/2025/assets/clipboard-WGJncgVO.js | 21 + themes/2025/assets/file-D-r2HShG.js | 6 + themes/2025/assets/file-D8mQlyUF.js | 6 + themes/2025/assets/hard-drive-C37_tD5A.js | 6 + themes/2025/assets/hard-drive-X0PLCy-z.js | 6 + themes/2025/assets/index-BILSbgLN.css | 1 + themes/2025/assets/index-C-4-823a.js | 86 + themes/2025/assets/index-DKQ1YPO4.js | 86 + themes/2025/assets/index-DpAQhrHl.css | 1 + themes/2025/assets/logo_small.png | Bin 0 -> 93858 bytes themes/2025/assets/trash-CAImX6bg.js | 6 + themes/2025/assets/trash-FNvP9-P8.js | 6 + themes/2025/index.html | 22 + web/.env.development | 1 + web/.env.production | 1 + web/.eslintrc.cjs | 15 + web/.gitignore | 30 + web/.prettierrc.json | 8 + web/README.md | 39 + web/env.d.ts | 1 + web/index.html | 21 + web/openapi.json | 1170 ++++ web/package-lock.json | 6016 +++++++++++++++++ web/package.json | 54 + web/pnpm-lock.yaml | 4071 +++++++++++ web/postcss.config.js | 6 + web/public/assets/logo_small.png | Bin 0 -> 93858 bytes web/src/App.vue | 148 + web/src/assets/font/DingTalk.ttf | Bin 0 -> 85552 bytes web/src/assets/style/main.css | 12 + web/src/components/common/AlertComponent.vue | 94 + .../components/common/BorderProgressBar.vue | 154 + web/src/components/common/ThemeToggle.vue | 22 + web/src/composables/useSystemConfig.ts | 0 web/src/layout/AdminLayout/AdminLayout.vue | 257 + web/src/main.ts | 14 + web/src/router/index.ts | 50 + web/src/stores/adminStore.ts | 11 + web/src/stores/alertStore.ts | 45 + web/src/stores/fileData.ts | 39 + web/src/utils/api.ts | 75 + web/src/utils/clipboard.ts | 122 + web/src/utils/convert.ts | 10 + web/src/views/RetrievewFileView.vue | 623 ++ web/src/views/SendFileView.vue | 919 +++ web/src/views/manage/DashboardView.vue | 198 + web/src/views/manage/FileManageView.vue | 639 ++ web/src/views/manage/LoginView.vue | 202 + web/src/views/manage/SystemSettingsView.vue | 756 +++ web/src/vite-env.d.ts | 5 + web/tailwind.config.js | 12 + web/tsconfig.app.json | 14 + web/tsconfig.json | 19 + web/tsconfig.node.json | 19 + web/vercel.json | 3 + web/vite.config.ts | 24 + 85 files changed, 16714 insertions(+), 106 deletions(-) create mode 100644 themes/2025/assets/AdminLayout-BSI80wlV.js create mode 100644 themes/2025/assets/AdminLayout-CZwJxNxp.css create mode 100644 themes/2025/assets/AdminLayout-DlX3CUuP.js create mode 100644 themes/2025/assets/DashboardView-CykWLsDF.js create mode 100644 themes/2025/assets/DashboardView-DHkW9fcL.js create mode 100644 themes/2025/assets/DingTalk-CT5a5scH.ttf create mode 100644 themes/2025/assets/FileManageView-3VMR54FC.js create mode 100644 themes/2025/assets/FileManageView-BLdG4lo7.js create mode 100644 themes/2025/assets/FileManageView-CwWUDTzq.css create mode 100644 themes/2025/assets/LoginView-DXxv6UDD.js create mode 100644 themes/2025/assets/LoginView-T1LQBbzg.js create mode 100644 themes/2025/assets/LoginView-zMyguVQQ.css create mode 100644 themes/2025/assets/RetrievewFileView-BgLHFGkc.css create mode 100644 themes/2025/assets/RetrievewFileView-DyKPLNPu.js create mode 100644 themes/2025/assets/RetrievewFileView-DzS7C4LK.js create mode 100644 themes/2025/assets/SendFileView-DFaiiDlV.css create mode 100644 themes/2025/assets/SendFileView-DJlusruR.js create mode 100644 themes/2025/assets/SendFileView-DsSIurce.js create mode 100644 themes/2025/assets/SystemSettingsView-BvNjuhLF.js create mode 100644 themes/2025/assets/SystemSettingsView-DJ12QIQD.js create mode 100644 themes/2025/assets/box-Btnwq7DC.js create mode 100644 themes/2025/assets/box-Ty09a89y.js create mode 100644 themes/2025/assets/clipboard-BhvW87y2.js create mode 100644 themes/2025/assets/clipboard-WGJncgVO.js create mode 100644 themes/2025/assets/file-D-r2HShG.js create mode 100644 themes/2025/assets/file-D8mQlyUF.js create mode 100644 themes/2025/assets/hard-drive-C37_tD5A.js create mode 100644 themes/2025/assets/hard-drive-X0PLCy-z.js create mode 100644 themes/2025/assets/index-BILSbgLN.css create mode 100644 themes/2025/assets/index-C-4-823a.js create mode 100644 themes/2025/assets/index-DKQ1YPO4.js create mode 100644 themes/2025/assets/index-DpAQhrHl.css create mode 100644 themes/2025/assets/logo_small.png create mode 100644 themes/2025/assets/trash-CAImX6bg.js create mode 100644 themes/2025/assets/trash-FNvP9-P8.js create mode 100644 themes/2025/index.html create mode 100644 web/.env.development create mode 100644 web/.env.production create mode 100644 web/.eslintrc.cjs create mode 100644 web/.gitignore create mode 100644 web/.prettierrc.json create mode 100644 web/README.md create mode 100644 web/env.d.ts create mode 100644 web/index.html create mode 100644 web/openapi.json create mode 100644 web/package-lock.json create mode 100644 web/package.json create mode 100644 web/pnpm-lock.yaml create mode 100644 web/postcss.config.js create mode 100644 web/public/assets/logo_small.png create mode 100644 web/src/App.vue create mode 100644 web/src/assets/font/DingTalk.ttf create mode 100644 web/src/assets/style/main.css create mode 100644 web/src/components/common/AlertComponent.vue create mode 100644 web/src/components/common/BorderProgressBar.vue create mode 100644 web/src/components/common/ThemeToggle.vue create mode 100644 web/src/composables/useSystemConfig.ts create mode 100644 web/src/layout/AdminLayout/AdminLayout.vue create mode 100644 web/src/main.ts create mode 100644 web/src/router/index.ts create mode 100644 web/src/stores/adminStore.ts create mode 100644 web/src/stores/alertStore.ts create mode 100644 web/src/stores/fileData.ts create mode 100644 web/src/utils/api.ts create mode 100644 web/src/utils/clipboard.ts create mode 100644 web/src/utils/convert.ts create mode 100644 web/src/views/RetrievewFileView.vue create mode 100644 web/src/views/SendFileView.vue create mode 100644 web/src/views/manage/DashboardView.vue create mode 100644 web/src/views/manage/FileManageView.vue create mode 100644 web/src/views/manage/LoginView.vue create mode 100644 web/src/views/manage/SystemSettingsView.vue create mode 100644 web/src/vite-env.d.ts create mode 100644 web/tailwind.config.js create mode 100644 web/tsconfig.app.json create mode 100644 web/tsconfig.json create mode 100644 web/tsconfig.node.json create mode 100644 web/vercel.json create mode 100644 web/vite.config.ts diff --git a/apps/base/views.py b/apps/base/views.py index 2744c7031..5d41eb3d0 100644 --- a/apps/base/views.py +++ b/apps/base/views.py @@ -74,6 +74,7 @@ async def share_file( path, suffix, prefix, uuid_file_name, save_path = await get_file_path_name(file) file_storage: FileStorageInterface = storages[settings.file_storage]() + await file_storage.save_file(file, save_path) await create_file_code( diff --git a/core/settings.py b/core/settings.py index 7190bd518..3aec39a95 100644 --- a/core/settings.py +++ b/core/settings.py @@ -13,20 +13,21 @@ DEFAULT_CONFIG = { "file_storage": "local", "storage_path": "", - "name": "文件快递柜 - FileCodeBox", + "name": "Chewie Transfer", "description": "开箱即用的文件快传系统", "notify_title": "系统通知", - "notify_content": '欢迎使用 FileCodeBox,本程序开源于 Github ,欢迎Star和Fork。', + "notify_content": '欢迎使用Chewie Transfer,本网站构建自开源项目 Github ,欢迎Star和Fork。', "page_explain": "请勿上传或分享违法内容。根据《中华人民共和国网络安全法》、《中华人民共和国刑法》、《中华人民共和国治安管理处罚法》等相关规定。 传播或存储违法、违规内容,会受到相关处罚,严重者将承担刑事责任。本站坚决配合相关部门,确保网络内容的安全,和谐,打造绿色网络环境。", - "keywords": "FileCodeBox, 文件快递柜, 口令传送箱, 匿名口令分享文本, 文件", + "keywords": "Chewie Transfer, 文件快递柜, 口令传送箱, 匿名口令分享文本, 文件", "s3_access_key_id": "", "s3_secret_access_key": "", "s3_bucket_name": "", "s3_endpoint_url": "", "s3_region_name": "auto", - "s3_signature_version": "s3v2", + "s3_signature_version": "s3v4", "s3_hostname": "", "s3_proxy": 0, + "s3_cdn_url": "", "max_save_seconds": 0, "aws_session_token": "", "onedrive_domain": "", @@ -38,7 +39,7 @@ "webdav_hostname": "", "webdav_root_path": "filebox_storage", "webdav_proxy": 0, - "admin_token": "FileCodeBox2023", + "admin_token": "ChewieTransfer@#?123", "openUpload": 1, "uploadSize": 1024 * 1024 * 10, "expireStyle": ["day", "hour", "minute", "forever", "count"], @@ -63,8 +64,14 @@ "author": "Lan", "version": "1.0", }, + { + "name": "2025", + "key": "themes/2025", + "author": "Robert", + "version": "1.0", + }, ], - "themesSelect": "themes/2024", + "themesSelect": "themes/2025", "errorMinute": 1, "errorCount": 1, "port": 12345, diff --git a/core/storage.py b/core/storage.py index 7326140ef..505a150c8 100644 --- a/core/storage.py +++ b/core/storage.py @@ -66,7 +66,14 @@ async def get_file_response(self, file_code: FileCodes): """ raise NotImplementedError - async def save_chunk(self, upload_id: str, chunk_index: int, chunk_data: bytes, chunk_hash: str, save_path: str): + async def save_chunk( + self, + upload_id: str, + chunk_index: int, + chunk_data: bytes, + chunk_hash: str, + save_path: str, + ): """ 保存分片文件 :param upload_id: 上传会话ID @@ -77,7 +84,9 @@ async def save_chunk(self, upload_id: str, chunk_index: int, chunk_data: bytes, """ raise NotImplementedError - async def merge_chunks(self, upload_id: str, chunk_info: UploadChunk, save_path: str) -> tuple[str, str]: + async def merge_chunks( + self, upload_id: str, chunk_info: UploadChunk, save_path: str + ) -> tuple[str, str]: """ 合并分片文件并返回文件路径和完整哈希值 :param upload_id: 上传会话ID @@ -133,15 +142,22 @@ async def get_file_response(self, file_code: FileCodes): if not file_path.exists(): return APIResponse(code=404, detail="文件已过期删除") filename = f"{file_code.prefix}{file_code.suffix}" - encoded_filename = quote(filename, safe='') + encoded_filename = quote(filename, safe="") content_disposition = f"attachment; filename*=UTF-8''{encoded_filename}" return FileResponse( file_path, headers={"Content-Disposition": content_disposition}, - filename=filename # 保留原始文件名以备某些场景使用 + filename=filename, # 保留原始文件名以备某些场景使用 ) - async def save_chunk(self, upload_id: str, chunk_index: int, chunk_data: bytes, chunk_hash: str, save_path: str): + async def save_chunk( + self, + upload_id: str, + chunk_index: int, + chunk_data: bytes, + chunk_hash: str, + save_path: str, + ): """ 保存分片文件到本地文件系统 :param upload_id: 上传会话ID @@ -151,13 +167,15 @@ async def save_chunk(self, upload_id: str, chunk_index: int, chunk_data: bytes, :param save_path: 文件保存路径 """ chunk_dir = self.root_path / save_path - chunk_path = chunk_dir.parent / 'chunks' / f"{chunk_index}.part" + chunk_path = chunk_dir.parent / "chunks" / f"{chunk_index}.part" if not chunk_path.parent.exists(): chunk_path.parent.mkdir(parents=True) async with aiofiles.open(chunk_path, "wb") as f: await f.write(chunk_data) - async def merge_chunks(self, upload_id: str, chunk_info: UploadChunk, save_path: str) -> tuple[str, str]: + async def merge_chunks( + self, upload_id: str, chunk_info: UploadChunk, save_path: str + ) -> tuple[str, str]: """ 合并本地文件系统的分片文件并返回文件路径和完整哈希值 :param upload_id: 上传会话ID @@ -172,7 +190,7 @@ async def merge_chunks(self, upload_id: str, chunk_info: UploadChunk, save_path: for i in range(chunk_info.total_chunks): # 获取分片记录 chunk_record = await UploadChunk.get(upload_id=upload_id, chunk_index=i) - chunk_path = output_dir.parent / 'chunks' / f"{i}.part" + chunk_path = output_dir.parent / "chunks" / f"{i}.part" async with aiofiles.open(chunk_path, "rb") as in_file: chunk_data = await in_file.read() current_hash = hashlib.sha256(chunk_data).hexdigest() @@ -188,7 +206,7 @@ async def clean_chunks(self, upload_id: str, save_path: str): :param upload_id: 上传会话ID :param save_path: 文件保存路径 """ - chunk_dir = (self.root_path / save_path).parent / 'chunks' + chunk_dir = (self.root_path / save_path).parent / "chunks" if chunk_dir.exists(): shutil.rmtree(chunk_dir) @@ -202,6 +220,7 @@ def __init__(self): self.region_name = settings.s3_region_name self.signature_version = settings.s3_signature_version self.endpoint_url = settings.s3_endpoint_url or f"https://{self.s3_hostname}" + self.s3_cdn_url = settings.s3_cdn_url self.aws_session_token = settings.aws_session_token self.proxy = settings.s3_proxy self.session = aioboto3.Session( @@ -216,11 +235,14 @@ def __init__(self): async def save_file(self, file: UploadFile, save_path: str): async with self.session.client( - "s3", - endpoint_url=self.endpoint_url, - aws_session_token=self.aws_session_token, - region_name=self.region_name, - config=Config(signature_version=self.signature_version), + "s3", + endpoint_url=self.endpoint_url, + aws_session_token=self.aws_session_token, + region_name=self.region_name, + config=Config( + signature_version=self.signature_version, + s3={"addressing_style": "virtual"}, + ), ) as s3: await s3.put_object( Bucket=self.bucket_name, @@ -231,10 +253,13 @@ async def save_file(self, file: UploadFile, save_path: str): async def delete_file(self, file_code: FileCodes): async with self.session.client( - "s3", - endpoint_url=self.endpoint_url, - region_name=self.region_name, - config=Config(signature_version=self.signature_version), + "s3", + endpoint_url=self.endpoint_url, + region_name=self.region_name, + config=Config( + signature_version=self.signature_version, + s3={"addressing_style": "virtual"}, + ), ) as s3: await s3.delete_object( Bucket=self.bucket_name, Key=await file_code.get_file_path() @@ -244,10 +269,13 @@ async def get_file_response(self, file_code: FileCodes): try: filename = file_code.prefix + file_code.suffix async with self.session.client( - "s3", - endpoint_url=self.endpoint_url, - region_name=self.region_name, - config=Config(signature_version=self.signature_version), + "s3", + endpoint_url=self.endpoint_url, + region_name=self.region_name, + config=Config( + signature_version=self.signature_version, + s3={"addressing_style": "virtual"}, + ), ) as s3: link = await s3.generate_presigned_url( "get_object", @@ -280,11 +308,17 @@ async def get_file_url(self, file_code: FileCodes): if self.proxy: return await get_file_url(file_code.code) else: + if self.s3_cdn_url and len(self.s3_cdn_url) > 0: + from urllib.parse import urljoin + return urljoin(self.s3_cdn_url.rstrip('/') + '/', await file_code.get_file_path()) async with self.session.client( - "s3", - endpoint_url=self.endpoint_url, - region_name=self.region_name, - config=Config(signature_version=self.signature_version), + "s3", + endpoint_url=self.endpoint_url, + region_name=self.region_name, + config=Config( + signature_version=self.signature_version, + s3={"addressing_style": "virtual"}, + ), ) as s3: result = await s3.generate_presigned_url( "get_object", @@ -296,61 +330,70 @@ async def get_file_url(self, file_code: FileCodes): ) return result - async def save_chunk(self, upload_id: str, chunk_index: int, chunk_data: bytes, chunk_hash: str, save_path: str): - chunk_key = str(Path(save_path).parent / "chunks" / - upload_id / f"{chunk_index}.part") - async with self.session.client('s3') as s3: + async def save_chunk( + self, + upload_id: str, + chunk_index: int, + chunk_data: bytes, + chunk_hash: str, + save_path: str, + ): + chunk_key = str( + Path(save_path).parent / "chunks" / upload_id / f"{chunk_index}.part" + ) + async with self.session.client("s3") as s3: response = await s3.upload_part( Bucket=self.bucket_name, Key=chunk_key, PartNumber=chunk_index + 1, UploadId=upload_id, - Body=chunk_data + Body=chunk_data, ) await s3.put_object_tagging( Bucket=self.bucket_name, Key=chunk_key, Tagging={ - 'TagSet': [ - {'Key': 'ChunkHash', 'Value': chunk_hash}, - {'Key': 'ETag', 'Value': response['ETag']} + "TagSet": [ + {"Key": "ChunkHash", "Value": chunk_hash}, + {"Key": "ETag", "Value": response["ETag"]}, ] - } + }, ) - async def merge_chunks(self, upload_id: str, chunk_info: UploadChunk, save_path: str) -> tuple[str, str]: + async def merge_chunks( + self, upload_id: str, chunk_info: UploadChunk, save_path: str + ) -> tuple[str, str]: file_sha256 = hashlib.sha256() chunk_dir = str(Path(save_path).parent / "chunks" / upload_id) - async with self.session.client('s3') as s3: + async with self.session.client("s3") as s3: # 获取所有分片 parts = await s3.list_parts( - Bucket=self.bucket_name, - Key=chunk_dir, - UploadId=upload_id + Bucket=self.bucket_name, Key=chunk_dir, UploadId=upload_id ) part_list = [] - for part in parts['Parts']: - part_number = part['PartNumber'] + for part in parts["Parts"]: + part_number = part["PartNumber"] chunk_index = part_number - 1 - chunk_record = await UploadChunk.get(upload_id=upload_id, chunk_index=chunk_index) + chunk_record = await UploadChunk.get( + upload_id=upload_id, chunk_index=chunk_index + ) response = await s3.get_object( Bucket=self.bucket_name, Key=f"{chunk_dir}/{chunk_index}.part", - PartNumber=part_number + PartNumber=part_number, ) - chunk_data = await response['Body'].read() + chunk_data = await response["Body"].read() current_hash = hashlib.sha256(chunk_data).hexdigest() if current_hash != chunk_record.chunk_hash: raise Exception(f"分片{chunk_index}哈希不匹配") file_sha256.update(chunk_data) - part_list.append( - {'PartNumber': part_number, 'ETag': part['ETag']}) + part_list.append({"PartNumber": part_number, "ETag": part["ETag"]}) # 完成合并 await s3.complete_multipart_upload( Bucket=self.bucket_name, Key=save_path, UploadId=upload_id, - MultipartUpload={'Parts': part_list} + MultipartUpload={"Parts": part_list}, ) return save_path, file_sha256.hexdigest() @@ -361,13 +404,11 @@ async def clean_chunks(self, upload_id: str, save_path: str): :param save_path: 文件保存路径 """ chunk_dir = str(Path(save_path).parent / "chunks" / upload_id) - async with self.session.client('s3') as s3: + async with self.session.client("s3") as s3: try: # 终止未完成的分片上传会话 await s3.abort_multipart_upload( - Bucket=self.bucket_name, - Key=chunk_dir, - UploadId=upload_id + Bucket=self.bucket_name, Key=chunk_dir, UploadId=upload_id ) except Exception as e: # 如果上传会话不存在或其他错误,忽略 @@ -376,14 +417,12 @@ async def clean_chunks(self, upload_id: str, save_path: str): try: # 清理已上传的分片数据 parts = await s3.list_parts( - Bucket=self.bucket_name, - Key=chunk_dir, - UploadId=upload_id + Bucket=self.bucket_name, Key=chunk_dir, UploadId=upload_id ) - for part in parts.get('Parts', []): + for part in parts.get("Parts", []): await s3.delete_object( Bucket=self.bucket_name, - Key=f"{chunk_dir}/{part['PartNumber'] - 1}.part" + Key=f"{chunk_dir}/{part['PartNumber'] - 1}.part", ) except Exception as e: # 如果分片数据不存在或其他错误,忽略 @@ -419,8 +458,7 @@ def __init__(self): if e.code == "itemNotFound": client.me.drive.root.create_folder(settings.onedrive_root_path) self.root_path = ( - client.me.drive.root.get_by_path( - settings.onedrive_root_path) + client.me.drive.root.get_by_path(settings.onedrive_root_path) .get() .execute_query() ) @@ -485,8 +523,7 @@ def _get_file_url(self, save_path, name): expiration_datetime = datetime.datetime.now( tz=datetime.timezone.utc ) + datetime.timedelta(hours=1) - expiration_datetime = expiration_datetime.strftime( - "%Y-%m-%dT%H:%M:%SZ") + expiration_datetime = expiration_datetime.strftime("%Y-%m-%dT%H:%M:%SZ") permission = remote_file.create_link( "view", "anonymous", expiration_datetime=expiration_datetime ).execute_query() @@ -555,8 +592,7 @@ async def get_file_response(self, file_code: FileCodes): try: filename = file_code.prefix + file_code.suffix content = await self.operator.read(await file_code.get_file_path()) - headers = { - "Content-Disposition": f'attachment; filename="{filename}"'} + headers = {"Content-Disposition": f'attachment; filename="{filename}"'} return Response( content, headers=headers, media_type="application/octet-stream" ) @@ -648,8 +684,7 @@ async def save_file(self, file: UploadFile, save_path: str): async with aiohttp.ClientSession(auth=self.auth) as session: content = await file.read() async with session.put( - url, data=content, headers={ - "Content-Type": file.content_type} + url, data=content, headers={"Content-Type": file.content_type} ) as resp: if resp.status not in (200, 201, 204): content = await resp.text() @@ -658,8 +693,7 @@ async def save_file(self, file: UploadFile, save_path: str): detail=f"文件上传失败: {content[:200]}", ) except aiohttp.ClientError as e: - raise HTTPException( - status_code=503, detail=f"WebDAV连接异常: {str(e)}") + raise HTTPException(status_code=503, detail=f"WebDAV连接异常: {str(e)}") async def delete_file(self, file_code: FileCodes): """删除WebDAV文件及空目录""" @@ -680,8 +714,7 @@ async def delete_file(self, file_code: FileCodes): await self._delete_empty_dirs(file_path, session) except aiohttp.ClientError as e: - raise HTTPException( - status_code=503, detail=f"WebDAV连接异常: {str(e)}") + raise HTTPException(status_code=503, detail=f"WebDAV连接异常: {str(e)}") async def get_file_url(self, file_code: FileCodes): return await get_file_url(file_code.code) @@ -691,9 +724,11 @@ async def get_file_response(self, file_code: FileCodes): try: filename = file_code.prefix + file_code.suffix url = self._build_url(await file_code.get_file_path()) - async with aiohttp.ClientSession(headers={ - "Authorization": f"Basic {base64.b64encode(f'{settings.webdav_username}:{settings.webdav_password}'.encode()).decode()}" - }) as session: + async with aiohttp.ClientSession( + headers={ + "Authorization": f"Basic {base64.b64encode(f'{settings.webdav_username}:{settings.webdav_password}'.encode()).decode()}" + } + ) as session: async with session.get(url) as resp: if resp.status != 200: raise HTTPException( @@ -712,17 +747,24 @@ async def get_file_response(self, file_code: FileCodes): }, ) except aiohttp.ClientError as e: - raise HTTPException( - status_code=503, detail=f"WebDAV连接异常: {str(e)}") - - async def save_chunk(self, upload_id: str, chunk_index: int, chunk_data: bytes, chunk_hash: str, save_path: str): - chunk_path = str(Path(save_path).parent / "chunks" / upload_id / f"{chunk_index}.part") + raise HTTPException(status_code=503, detail=f"WebDAV连接异常: {str(e)}") + + async def save_chunk( + self, + upload_id: str, + chunk_index: int, + chunk_data: bytes, + chunk_hash: str, + save_path: str, + ): + chunk_path = str( + Path(save_path).parent / "chunks" / upload_id / f"{chunk_index}.part" + ) chunk_url = self._build_url(chunk_path) async with aiohttp.ClientSession(auth=self.auth) as session: await session.put(chunk_url, data=chunk_data) propfind_url = self._build_url(chunk_path) - headers = { - 'Content-Type': 'application/xml; charset=utf-8', 'Depth': '0'} + headers = {"Content-Type": "application/xml; charset=utf-8", "Depth": "0"} body = f""" @@ -732,20 +774,24 @@ async def save_chunk(self, upload_id: str, chunk_index: int, chunk_data: bytes, """ - await session.request('PROPPATCH', propfind_url, headers=headers, data=body) + await session.request("PROPPATCH", propfind_url, headers=headers, data=body) - async def merge_chunks(self, upload_id: str, chunk_info: UploadChunk, save_path: str) -> tuple[str, str]: + async def merge_chunks( + self, upload_id: str, chunk_info: UploadChunk, save_path: str + ) -> tuple[str, str]: file_sha256 = hashlib.sha256() output_url = self._build_url(save_path) chunk_dir = str(Path(save_path).parent / "chunks" / upload_id) async with aiohttp.ClientSession(auth=self.auth) as session: - await session.put(output_url, headers={'Content-Length': '0'}) + await session.put(output_url, headers={"Content-Length": "0"}) for i in range(chunk_info.total_chunks): chunk_path = f"{chunk_dir}/{i}.part" chunk_url = self._build_url(chunk_path) propfind_url = self._build_url(chunk_path) headers = { - 'Content-Type': 'application/xml; charset=utf-8', 'Depth': '0'} + "Content-Type": "application/xml; charset=utf-8", + "Depth": "0", + } body = """ @@ -753,18 +799,26 @@ async def merge_chunks(self, upload_id: str, chunk_info: UploadChunk, save_path: """ - async with session.request('PROPFIND', propfind_url, headers=headers, data=body) as resp: + async with session.request( + "PROPFIND", propfind_url, headers=headers, data=body + ) as resp: xml_data = await resp.text() chunk_hash = re.search( - r']*>([^<]+)', xml_data).group(1) + r"]*>([^<]+)", xml_data + ).group(1) file_sha256.update(bytes.fromhex(chunk_hash)) async with session.get(chunk_url) as resp: chunk_data = await resp.read() - await session.request('PATCH', output_url, headers={ - 'Content-Type': 'application/octet-stream', - 'Content-Length': str(len(chunk_data)), - 'Content-Range': f'bytes */{chunk_info.file_size}' - }, data=chunk_data) + await session.request( + "PATCH", + output_url, + headers={ + "Content-Type": "application/octet-stream", + "Content-Length": str(len(chunk_data)), + "Content-Range": f"bytes */{chunk_info.file_size}", + }, + data=chunk_data, + ) return save_path, file_sha256.hexdigest() async def clean_chunks(self, upload_id: str, save_path: str): @@ -778,12 +832,13 @@ async def clean_chunks(self, upload_id: str, save_path: str): async with aiohttp.ClientSession(auth=self.auth) as session: try: # 检查分片目录是否存在 - async with session.request("PROPFIND", chunk_dir_url, headers={"Depth": "1"}) as resp: + async with session.request( + "PROPFIND", chunk_dir_url, headers={"Depth": "1"} + ) as resp: if resp.status == 207: # 207 表示 Multi-Status # 获取目录下的所有分片文件 xml_data = await resp.text() - file_paths = re.findall( - r'(.*?)', xml_data) + file_paths = re.findall(r"(.*?)", xml_data) for file_path in file_paths: if file_path.endswith(".part"): # 删除分片文件 diff --git a/docker-compose.yml b/docker-compose.yml index eff13d85d..a08204fa0 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,10 +3,7 @@ services: file-code-box: image: lanol/filecodebox:latest volumes: - - fcb-data:/app/data:rw + - ./data:/app/data:rw restart: unless-stopped ports: - - "12345:12345" -volumes: - fcb-data: - external: false \ No newline at end of file + - "12345:12345" \ No newline at end of file diff --git a/main.py b/main.py index a85da8022..e013b7515 100644 --- a/main.py +++ b/main.py @@ -134,7 +134,11 @@ async def get_config(): "explain": settings.page_explain, "uploadSize": settings.uploadSize, "expireStyle": settings.expireStyle, - "enableChunk": settings.enableChunk if settings.file_storage == "local" and settings.enableChunk else 0, + "enableChunk": ( + settings.enableChunk + if settings.file_storage == "local" and settings.enableChunk + else 0 + ), "openUpload": settings.openUpload, "notify_title": settings.notify_title, "notify_content": settings.notify_content, diff --git a/themes/2024/index.html b/themes/2024/index.html index ec43614f6..c3a63ce5d 100644 --- a/themes/2024/index.html +++ b/themes/2024/index.html @@ -13,7 +13,7 @@ {{title}} - +
diff --git a/themes/2025/assets/AdminLayout-BSI80wlV.js b/themes/2025/assets/AdminLayout-BSI80wlV.js new file mode 100644 index 000000000..76c0eca14 --- /dev/null +++ b/themes/2025/assets/AdminLayout-BSI80wlV.js @@ -0,0 +1,21 @@ +import{c as i,d as k,r as h,o as u,K as v,a as x,b as t,n as o,h as e,i as w,g as n,X as _,F as M,s as C,y as L,B as z,A as B,x as D,L as F,t as I,e as d}from"./index-C-4-823a.js";import{B as j}from"./box-Btnwq7DC.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const S=i("CogIcon",[["path",{d:"M12 20a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z",key:"sobvz5"}],["path",{d:"M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z",key:"11i496"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 22v-2",key:"1osdcq"}],["path",{d:"m17 20.66-1-1.73",key:"eq3orb"}],["path",{d:"M11 10.27 7 3.34",key:"16pf9h"}],["path",{d:"m20.66 17-1.73-1",key:"sg0v6f"}],["path",{d:"m3.34 7 1.73 1",key:"1ulond"}],["path",{d:"M14 12h8",key:"4f43i9"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"m20.66 7-1.73 1",key:"1ow05n"}],["path",{d:"m3.34 17 1.73-1",key:"nuk764"}],["path",{d:"m17 3.34-1 1.73",key:"2wel8s"}],["path",{d:"m11 13.73-4 6.93",key:"794ttg"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const V=i("FolderIcon",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const A=i("LayoutDashboardIcon",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const E=i("MenuIcon",[["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}],["line",{x1:"4",x2:"20",y1:"6",y2:"6",key:"1owob3"}],["line",{x1:"4",x2:"20",y1:"18",y2:"18",key:"yk5zj1"}]]),N={class:"flex items-center"},R={class:"rounded-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 p-1 animate-spin-slow"},Z={class:"flex-1 overflow-y-auto"},q={class:"p-4 space-y-2"},T=["onClick"],H={class:"flex-1 flex flex-col min-h-screen"},K={class:"flex items-center justify-between h-16 px-4"},G=k({__name:"AdminLayout",setup(O){const c=z(),a=w("isDarkMode"),m=[{id:"Dashboard",name:"仪表盘",icon:A,redirect:"/admin/dashboard"},{id:"FileManage",name:"文件管理",icon:V,redirect:"/admin/files"},{id:"Settings",name:"系统设置",icon:S,redirect:"/admin/settings"}],r=h(!0),y=()=>{r.value=!r.value},l=()=>{window.innerWidth>=1024?r.value=!0:r.value=!1};u(()=>{l(),window.addEventListener("resize",l)}),v(()=>{window.removeEventListener("resize",l)});const p=h({page:1,size:10,total:0}),b=async()=>{try{p.value.total=85}catch(g){console.error("加载文件列表失败:",g)}};return u(()=>{b()}),(g,U)=>{const f=L("router-view");return d(),x("div",{class:o(["min-h-screen flex flex-col lg:flex-row transition-colors duration-300",[e(a)?"bg-gray-900":"bg-gray-50"]])},[t("aside",{class:o(["fixed inset-y-0 left-0 z-50 w-64 transform transition-all duration-300 ease-in-out lg:relative lg:translate-x-0 border-r",[e(a)?"bg-gray-800 bg-opacity-90 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200",{"-translate-x-full":!r.value}]])},[t("div",{class:o(["flex items-center justify-between h-16 px-4 border-b",[e(a)?"border-gray-700":"border-gray-200"]])},[t("div",N,[t("div",R,[t("div",{class:o(["rounded-full p-1",[e(a)?"bg-gray-800":"bg-white"]])},[n(e(j),{class:o(["w-6 h-6",[e(a)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2)]),t("h1",{class:o(["ml-2 text-xl font-semibold",[e(a)?"text-white":"text-gray-800"]])}," Chewie Transfer ",2)]),t("button",{onClick:y,class:"lg:hidden"},[n(e(_),{class:o(["w-6 h-6",[e(a)?"text-gray-400":"text-gray-600"]])},null,8,["class"])])],2),t("nav",Z,[t("ul",q,[(d(),x(M,null,C(m,s=>t("li",{key:s.id,style:{cursor:"pointer"}},[t("a",{onClick:W=>e(c).push(s.redirect),class:o(["flex items-center p-2 rounded-lg transition-colors duration-200",[e(c).currentRoute.value.name===s.id?e(a)?"bg-indigo-900 text-indigo-400":"bg-indigo-100 text-indigo-600":e(a)?"text-gray-400 hover:bg-gray-700":"text-gray-600 hover:bg-gray-100"]])},[(d(),B(F(s.icon),{class:"w-5 h-5 mr-3"})),D(" "+I(s.name),1)],10,T)])),64))])])],2),t("div",H,[t("header",{class:o(["shadow-md border-b transition-colors duration-300",[e(a)?"bg-gray-800 border-gray-700":"bg-white border-gray-200"]])},[t("div",K,[t("button",{onClick:y,class:"lg:hidden"},[n(e(E),{class:o(["w-6 h-6",[e(a)?"text-gray-400":"text-gray-600"]])},null,8,["class"])])])],2),t("main",{class:o(["flex-1 p-6 transition-colors duration-300",[e(a)?"bg-gray-900":"bg-gray-50"]]),style:{padding:"0rem 0rem 1.5rem 0rem"}},[n(f)],2)])],2)}}});export{G as default}; diff --git a/themes/2025/assets/AdminLayout-CZwJxNxp.css b/themes/2025/assets/AdminLayout-CZwJxNxp.css new file mode 100644 index 000000000..0b7de1395 --- /dev/null +++ b/themes/2025/assets/AdminLayout-CZwJxNxp.css @@ -0,0 +1 @@ +.switch{position:relative;display:inline-block;width:60px;height:34px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#e5e7eb;transition:.4s}.dark .slider{background-color:#4b5563}input:checked+.slider{background-color:#4f46e5}.dark input:checked+.slider{background-color:#4f46e5}.slider:before{position:absolute;content:"";height:26px;width:26px;left:4px;bottom:4px;background-color:#fff;transition:.4s}.dark .slider:before{background-color:#e5e7eb}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin-slow{animation:spin 8s linear infinite}.transition-colors{transition-property:background-color,border-color,color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.custom-scrollbar::-webkit-scrollbar{width:8px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#cbd5e0;border-radius:4px}:is():hover{background-color:#a0aec0}.custom-scrollbar :deep(.dark &::-webkit-scrollbar-thumb){background-color:#4a5568}.custom-scrollbar :deep(.dark &::-webkit-scrollbar-thumb):hover{background-color:#2d3748}.space-y-6{margin-bottom:5rem}.h-screen{height:100%} diff --git a/themes/2025/assets/AdminLayout-DlX3CUuP.js b/themes/2025/assets/AdminLayout-DlX3CUuP.js new file mode 100644 index 000000000..4dd4c9a3a --- /dev/null +++ b/themes/2025/assets/AdminLayout-DlX3CUuP.js @@ -0,0 +1,21 @@ +import{c as i,d as k,r as h,o as u,K as v,a as x,b as t,n as o,h as e,i as w,g as n,X as _,F as M,s as C,y as L,B as z,A as B,x as D,L as F,t as I,e as d}from"./index-DKQ1YPO4.js";import{B as j}from"./box-Ty09a89y.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const S=i("CogIcon",[["path",{d:"M12 20a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z",key:"sobvz5"}],["path",{d:"M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z",key:"11i496"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 22v-2",key:"1osdcq"}],["path",{d:"m17 20.66-1-1.73",key:"eq3orb"}],["path",{d:"M11 10.27 7 3.34",key:"16pf9h"}],["path",{d:"m20.66 17-1.73-1",key:"sg0v6f"}],["path",{d:"m3.34 7 1.73 1",key:"1ulond"}],["path",{d:"M14 12h8",key:"4f43i9"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"m20.66 7-1.73 1",key:"1ow05n"}],["path",{d:"m3.34 17 1.73-1",key:"nuk764"}],["path",{d:"m17 3.34-1 1.73",key:"2wel8s"}],["path",{d:"m11 13.73-4 6.93",key:"794ttg"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const V=i("FolderIcon",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const A=i("LayoutDashboardIcon",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const E=i("MenuIcon",[["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}],["line",{x1:"4",x2:"20",y1:"6",y2:"6",key:"1owob3"}],["line",{x1:"4",x2:"20",y1:"18",y2:"18",key:"yk5zj1"}]]),N={class:"flex items-center"},R={class:"rounded-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 p-1 animate-spin-slow"},Z={class:"flex-1 overflow-y-auto"},q={class:"p-4 space-y-2"},T=["onClick"],H={class:"flex-1 flex flex-col min-h-screen"},K={class:"flex items-center justify-between h-16 px-4"},G=k({__name:"AdminLayout",setup(O){const c=z(),a=w("isDarkMode"),m=[{id:"Dashboard",name:"仪表盘",icon:A,redirect:"/admin/dashboard"},{id:"FileManage",name:"文件管理",icon:V,redirect:"/admin/files"},{id:"Settings",name:"系统设置",icon:S,redirect:"/admin/settings"}],r=h(!0),y=()=>{r.value=!r.value},l=()=>{window.innerWidth>=1024?r.value=!0:r.value=!1};u(()=>{l(),window.addEventListener("resize",l)}),v(()=>{window.removeEventListener("resize",l)});const p=h({page:1,size:10,total:0}),b=async()=>{try{p.value.total=85}catch(g){console.error("加载文件列表失败:",g)}};return u(()=>{b()}),(g,U)=>{const f=L("router-view");return d(),x("div",{class:o(["min-h-screen flex flex-col lg:flex-row transition-colors duration-300",[e(a)?"bg-gray-900":"bg-gray-50"]])},[t("aside",{class:o(["fixed inset-y-0 left-0 z-50 w-64 transform transition-all duration-300 ease-in-out lg:relative lg:translate-x-0 border-r",[e(a)?"bg-gray-800 bg-opacity-90 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200",{"-translate-x-full":!r.value}]])},[t("div",{class:o(["flex items-center justify-between h-16 px-4 border-b",[e(a)?"border-gray-700":"border-gray-200"]])},[t("div",N,[t("div",R,[t("div",{class:o(["rounded-full p-1",[e(a)?"bg-gray-800":"bg-white"]])},[n(e(j),{class:o(["w-6 h-6",[e(a)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2)]),t("h1",{class:o(["ml-2 text-xl font-semibold",[e(a)?"text-white":"text-gray-800"]])}," Chewie Transfer ",2)]),t("button",{onClick:y,class:"lg:hidden"},[n(e(_),{class:o(["w-6 h-6",[e(a)?"text-gray-400":"text-gray-600"]])},null,8,["class"])])],2),t("nav",Z,[t("ul",q,[(d(),x(M,null,C(m,s=>t("li",{key:s.id,style:{cursor:"pointer"}},[t("a",{onClick:W=>e(c).push(s.redirect),class:o(["flex items-center p-2 rounded-lg transition-colors duration-200",[e(c).currentRoute.value.name===s.id?e(a)?"bg-indigo-900 text-indigo-400":"bg-indigo-100 text-indigo-600":e(a)?"text-gray-400 hover:bg-gray-700":"text-gray-600 hover:bg-gray-100"]])},[(d(),B(F(s.icon),{class:"w-5 h-5 mr-3"})),D(" "+I(s.name),1)],10,T)])),64))])])],2),t("div",H,[t("header",{class:o(["shadow-md border-b transition-colors duration-300",[e(a)?"bg-gray-800 border-gray-700":"bg-white border-gray-200"]])},[t("div",K,[t("button",{onClick:y,class:"lg:hidden"},[n(e(E),{class:o(["w-6 h-6",[e(a)?"text-gray-400":"text-gray-600"]])},null,8,["class"])])])],2),t("main",{class:o(["flex-1 p-6 transition-colors duration-300",[e(a)?"bg-gray-900":"bg-gray-50"]]),style:{padding:"0rem 0rem 1.5rem 0rem"}},[n(f)],2)])],2)}}});export{G as default}; diff --git a/themes/2025/assets/DashboardView-CykWLsDF.js b/themes/2025/assets/DashboardView-CykWLsDF.js new file mode 100644 index 000000000..55c52a1b4 --- /dev/null +++ b/themes/2025/assets/DashboardView-CykWLsDF.js @@ -0,0 +1,11 @@ +import{c as y,d as m,J as b,o as h,a as f,b as t,n as a,h as e,i as v,t as n,g,x as w,C as _,e as C}from"./index-DKQ1YPO4.js";import{F}from"./file-D8mQlyUF.js";import{H as k}from"./hard-drive-C37_tD5A.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const U=y("ActivityIcon",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const z=y("UsersIcon",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]),D={class:"p-6 h-screen custom-scrollbar"},M={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8"},S={class:"flex items-center justify-between"},B={class:"flex items-center justify-between"},$={class:"flex items-center justify-between"},j={class:"flex items-center justify-between"},H={class:"text-sm mt-1"},N=m({__name:"DashboardView",setup(I){const s=v("isDarkMode"),o=b({totalFiles:0,storageUsed:0,yesterdayCount:0,todayCount:0,yesterdaySize:0,todaySize:0,sysUptime:0}),u=l=>{const i=new Date().getTime()-l,d=Math.floor(i/(24*60*60*1e3)),c=Math.floor(i%(24*60*60*1e3)/(60*60*1e3));return`${d}天${c}小时`},x=l=>{const r=parseInt(l)/1024,i=r/1024,d=i/1024,c=d/1024;return c>1?`${c.toFixed(2)}TB`:d>1?`${d.toFixed(2)}GB`:i>1?`${i.toFixed(2)}MB`:r>1?`${r.toFixed(2)}KB`:`${l}B`},p=async()=>{const l=await _.get("admin/dashboard");o.totalFiles=l.detail.totalFiles,o.storageUsed=x(l.detail.storageUsed),o.yesterdaySize=x(l.detail.yesterdaySize),o.todaySize=x(l.detail.todaySize),o.yesterdayCount=l.detail.yesterdayCount,o.todayCount=l.detail.todayCount,o.sysUptime=u(l.detail.sysUptime)};return h(()=>{p()}),(l,r)=>(C(),f("div",D,[t("h2",{class:a(["text-2xl font-bold mb-6",[e(s)?"text-white":"text-gray-800"]])}," 仪表盘 ",2),t("div",M,[t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",S,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 总文件数 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])},n(o.totalFiles),3)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-indigo-900":"bg-indigo-100"]])},[g(e(F),{class:a(["w-6 h-6",[e(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-green-400":"text-green-600"]])},[t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"昨天:",2),t("span",null,n(o.yesterdayCount),1),t("span",{class:a(["ml-2",[e(s)?"text-gray-400":"text-gray-600"]])},"今天:",2),t("span",null,n(o.todayCount),1)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",B,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 存储空间 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])},n(o.storageUsed),3)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-purple-900":"bg-purple-100"]])},[g(e(k),{class:a(["w-6 h-6",[e(s)?"text-purple-400":"text-purple-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-green-400":"text-green-600"]])},[t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"昨天:",2),t("span",null,n(o.yesterdaySize),1),t("span",{class:a(["ml-2",[e(s)?"text-gray-400":"text-gray-600"]])},"今天:",2),t("span",null,n(o.todaySize),1)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",$,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 活跃用户 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])}," 25 ",2)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-green-900":"bg-green-100"]])},[g(e(z),{class:a(["w-6 h-6",[e(s)?"text-green-400":"text-green-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-red-400":"text-red-600"]])},[r[0]||(r[0]=t("span",null,"↓ 5% ",-1)),t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"较上周",2)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",j,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 系统状态 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])}," 正常 ",2)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-blue-900":"bg-blue-100"]])},[g(e(U),{class:a(["w-6 h-6",[e(s)?"text-blue-400":"text-blue-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-gray-400":"text-gray-600"]])}," 服务器运行时间: "+n(o.sysUptime),3)],2)]),t("div",{class:a(["mt-auto text-center py-4",[e(s)?"text-gray-400":"text-gray-600"]])},[r[2]||(r[2]=t("p",{class:"text-sm"}," 版本 v2.0.3 更新时间:2025-03-03 ",-1)),t("p",H,[w(" © "+n(new Date().getFullYear())+" ",1),r[1]||(r[1]=t("a",{href:"https://github.com/vastsa/FileCodeBox"},"FileCodeBox",-1))])],2)]))}});export{N as default}; diff --git a/themes/2025/assets/DashboardView-DHkW9fcL.js b/themes/2025/assets/DashboardView-DHkW9fcL.js new file mode 100644 index 000000000..b8bbb3a2e --- /dev/null +++ b/themes/2025/assets/DashboardView-DHkW9fcL.js @@ -0,0 +1,11 @@ +import{c as y,d as m,J as b,o as h,a as f,b as t,n as a,h as e,i as v,t as n,g,x as w,C as _,e as C}from"./index-C-4-823a.js";import{F}from"./file-D-r2HShG.js";import{H as k}from"./hard-drive-X0PLCy-z.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const U=y("ActivityIcon",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const z=y("UsersIcon",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]),D={class:"p-6 h-screen custom-scrollbar"},M={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8"},S={class:"flex items-center justify-between"},B={class:"flex items-center justify-between"},$={class:"flex items-center justify-between"},j={class:"flex items-center justify-between"},H={class:"text-sm mt-1"},N=m({__name:"DashboardView",setup(I){const s=v("isDarkMode"),o=b({totalFiles:0,storageUsed:0,yesterdayCount:0,todayCount:0,yesterdaySize:0,todaySize:0,sysUptime:0}),u=l=>{const i=new Date().getTime()-l,d=Math.floor(i/(24*60*60*1e3)),c=Math.floor(i%(24*60*60*1e3)/(60*60*1e3));return`${d}天${c}小时`},x=l=>{const r=parseInt(l)/1024,i=r/1024,d=i/1024,c=d/1024;return c>1?`${c.toFixed(2)}TB`:d>1?`${d.toFixed(2)}GB`:i>1?`${i.toFixed(2)}MB`:r>1?`${r.toFixed(2)}KB`:`${l}B`},p=async()=>{const l=await _.get("admin/dashboard");o.totalFiles=l.detail.totalFiles,o.storageUsed=x(l.detail.storageUsed),o.yesterdaySize=x(l.detail.yesterdaySize),o.todaySize=x(l.detail.todaySize),o.yesterdayCount=l.detail.yesterdayCount,o.todayCount=l.detail.todayCount,o.sysUptime=u(l.detail.sysUptime)};return h(()=>{p()}),(l,r)=>(C(),f("div",D,[t("h2",{class:a(["text-2xl font-bold mb-6",[e(s)?"text-white":"text-gray-800"]])}," 仪表盘 ",2),t("div",M,[t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",S,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 总文件数 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])},n(o.totalFiles),3)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-indigo-900":"bg-indigo-100"]])},[g(e(F),{class:a(["w-6 h-6",[e(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-green-400":"text-green-600"]])},[t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"昨天:",2),t("span",null,n(o.yesterdayCount),1),t("span",{class:a(["ml-2",[e(s)?"text-gray-400":"text-gray-600"]])},"今天:",2),t("span",null,n(o.todayCount),1)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",B,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 存储空间 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])},n(o.storageUsed),3)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-purple-900":"bg-purple-100"]])},[g(e(k),{class:a(["w-6 h-6",[e(s)?"text-purple-400":"text-purple-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-green-400":"text-green-600"]])},[t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"昨天:",2),t("span",null,n(o.yesterdaySize),1),t("span",{class:a(["ml-2",[e(s)?"text-gray-400":"text-gray-600"]])},"今天:",2),t("span",null,n(o.todaySize),1)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",$,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 活跃用户 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])}," 25 ",2)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-green-900":"bg-green-100"]])},[g(e(z),{class:a(["w-6 h-6",[e(s)?"text-green-400":"text-green-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-red-400":"text-red-600"]])},[r[0]||(r[0]=t("span",null,"↓ 5% ",-1)),t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"较上周",2)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",j,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 系统状态 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])}," 正常 ",2)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-blue-900":"bg-blue-100"]])},[g(e(U),{class:a(["w-6 h-6",[e(s)?"text-blue-400":"text-blue-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-gray-400":"text-gray-600"]])}," 服务器运行时间: "+n(o.sysUptime),3)],2)]),t("div",{class:a(["mt-auto text-center py-4",[e(s)?"text-gray-400":"text-gray-600"]])},[r[2]||(r[2]=t("p",{class:"text-sm"}," 版本 v2.0.3 更新时间:2025-03-03 ",-1)),t("p",H,[w(" © "+n(new Date().getFullYear())+" ",1),r[1]||(r[1]=t("a",{href:"https://github.com/vastsa/FileCodeBox"},"FileCodeBox",-1))])],2)]))}});export{N as default}; diff --git a/themes/2025/assets/DingTalk-CT5a5scH.ttf b/themes/2025/assets/DingTalk-CT5a5scH.ttf new file mode 100644 index 0000000000000000000000000000000000000000..a5b78e63fdde9a1a53e1bd54ed818470effb561e GIT binary patch literal 85552 zcmeEvcVHaF_5Z%v>qYIPJ9S-=?$p~!I?1+*o7}5pTef9mxp!<_F~u?66g%`1LIM~E z2pvLALQMiO;DiJM!C-1AA(RwC5^L}Gnc2P5>D11A^ZPG4-Rgv&I_8bbv3&mx zNiwdKBuo3Oj;h)%%XW53QtDmEzih>(o-N+DuB(%zG}M=L*P5PfTaa#*B=@7d{xus< zUp=>bUJZ4g+js9>*LW_j(T4Sb zji;{Y$z8DUDv7F0failvJ-fHams71ob)O->dvnjGRkvRJNsmPJXrJxea_YA2Uw&G- zUZT)>lH@$J<+N2>wlH0qL^F#yJos{KsJ|#7{+MKw{P^gkGx5<$XG?qWd!e)+zn9^o zlWxLCC%q{BQDS5U=5#cR=HR@Wx^aFcp%hDDDH0R4TcmucT%rl>(>u{3ur5jAu((4T zR-Lvv3I*XF6FHKk=P8|lA^94SKSe5)>ZDOpo765%mzGN3kuH!fm9CL)lx~r3m+p}s zLb>AbH`0Xg6R5X1{IU4`yZHT5{2oO;#o_m*Cfu74o-a)b7osJGGT!hpsWJQ!QooTV z;@ckn40qpU-)w**}{Jce-%CssFEdMk^P)wL7ptHmkg2}b$ue~C8v~z zdhOwN!|#V*41b{2_$7``q=SOd&fmhHgue{G9@|L&D}D#%zYdSV@dvT_hCUC!H`KlG zA;9VtuvW@@0BIU>>ciKEpA5efzEa8nw7r9tbx7%$BT48h|4ReRe;b%D{DbhX0qdRN z6Z{@({5t&Cfw>|n;eSQXz7aT$Tn=#ze;)oc{7>y>O89DE{~zIBNLhed3V$72NW-8h zd?@@1@cWp!XB})TV@vV#@ZaN823`+=p@A7=QU+@~{Ao;vAx?+GU!+JBCy@lsEBMT| zgT^u?pHwInOZ8HtG(nn(**Qs?DqR8|L6Xc;SsHWW%z)g5QmvMUP;#rZ1Dxd|k@E)d zk~^gzOLs|kOZV|vhEi$xb&Il`7uoS4j6@cGi}4}wf;#**;$uR)6C^X*o`|xO@R2pH z#d(xo`T;%$)PE;tAHy~3$EOe<84%TiR(UOYQJ!!IE#qSyvdspm0rzfOt1J?WSv7wwxKy4M6vIuFQ7IH zsLcWngMivB;7Ap4m<0qz0lP)OuEJpxa3l#h>;jHtAp=s-8pI=7eSHAm2miudh92tB zGXwf=LVqmi2S&Q5XXAEh_6q*nwQ}RSHPX`6r}eCmR<7Q)Zl$z-E&ttun zES>LHW&_lu&&QYR2fUVK zk%Bx(jiiu19rrk7kn^~I8Fk~n0g{t+?|_%{I&}DEt4EaMxkv|DtVd1!DAGu$2)J?u zTsG+y9M6_s#qUMDZmwSdPrObUh$#_d{c0$oD(^?gefcbeh-jyI=YPe$ftEd|jmSvo~;dro?ocF&m~! zGcek-(AFGjuGArQO7qa_0;x+{C@qo}OWo2EP{JwFGO0&eE`eU9Rnh~}gV0NUB0VfU zB0VZSCOs}aA^lYPne=n%N$Dx+Y3Uj1S?M|H7t$}KUrEnPFG#2A80o~7r+ zkzYSTkI{GOa+LiJ8^xR~pB3QaVO}_nd3$Z-=sKcR=|9=cC_AEn2|^?F*vvhitTK32$z zXs3E)jc8-NM>zf5x}PYUDMLHS@2GIde`L6@L;f|Awj>OA~Is)fFqF^Ukkoge8Fo7x&tNQn~X2y5~U*d0_wu=BXk76 zj}f?nd>&@}n}CFWnS2h?FQ%IT8|p(XobPc<$0|}xs6(XSYBj$DS<5vZ0$<`Ka;XUS zxrAfj0}}E4D@E#No{Me}zf1AUISl7JoO@j;&dx#_*LaeJc9kV%1JhoiWfh_JVrVRN z(6$<&e>8#nMKmrhgSJZBgjRKyu-7gG2i-4S3>v;nx>mX#TEzEI{|_L$HBAdpnIQqJ zWFtEzQ8J}aD)7=xOK2&bLOrwsGkmR>V`1kM{sq_fe#ue7rd32I=Rw7()hK4)YZBuWIUCBW6N}l*K&I ziFuHOQCJ{l0>h6=S-|n*pmQ#B`Ak|Z<`M%H-hf(k@_70#v@#RBn03JxnZ}P&87-A+ zsgchz15_72sc=r2{8#&%Jagd`YLndI59PVx^>jdfT;f)o$id9)2+rM@cYL0L&)_Sx z7Wj3RNjl?nTptEEGhoi04SDRK94ez4ngPDl1Bthr&IaWiW4~fY*dN(3`KRu5ceXp< z?RERz)$Y;m3GVIgyF9YT>~VU$o(-PUJ=c5FyxHD-?_}??!gYn;E1Fict>|FU)kQZK zJy`U!qF)sqDLPv8q2J&)``i5Es{T{Ws$JDBwI#JRwYLTj25$=99DFYLa`2Vls~=sX zWGOYu1ZA$WKv}J92rq?CAq;rk(hn((vZ)ksP6r=d2I;&Tv*!wWiT#qjpuy>IXS#FU zZg&yjZ0ZN6$Ft0{#q-@5IF}V}FOrI87ws#$vgn6J4;1~h=$C-=<)ZiedJWDmtEFla z;B*T(4+L-2;QTG%yi7?^s+FKJMd?%)Dr>_8i=D%%{e@>m&J^wqiCmc_Q?KXU{gHd` zLHmB!^3J>Op89UmyXJTPElJ1EKE6ki-pP0;`<;yAA00n(?15tsL~a4qwLgWmw&aps^L z9=siV7u=UtFh1W-TGoKipGCK`TKWMyhPgU4R~t(1+{SElm{kM%<&X=xEE7_}&W!9$ zW|H2dH(3pR5A*XwW@VL_ZJq2bR?iHyiv5Y^O2_CJ&E~#FS_!*R24ApXj+$Y~CBZI8 z!yL}QJjjKGPymY~AXP{uQkhgOm188Ups$RA*3t~EB`AGg+90iw)=8V8xonb7723;A z*m0*z=S%yfbEWg7?Lw0|0ITk5>2g*gT?K9ChwwMv3V-8u(!H>LHp1dQLvl#FBoFkS zO6f|e20qCUbf59k9nv)EesHw4Ql4}Uyq5>1(bCP*Sm{TwS`JCA(rr?kbeO%(-et$x zJM29!Rp?dX^5r#_#FA+>ILtD7i{7TwSq8JPcGkwmu?cK4o5Cisv1~k>$nId5u>0AS z>@IeI-OUcNJK3e|$Lun8J3EJ+2|oEF_8qo|?PvFaOZ|df!R`eYc$Qtx9%6rB&#|-E z@7cNR*X$bhAbX8H!_Hv8WBb_i>}qzHUB@0~d)eviG4?%n5xa+7&mIA<8>-b_=_W9b&g)c1^=GzMwzTd?EX}9OUwy%ResjAop21a|jv8<^0$5SNeuNpufQq;Wo+nutm51t@**VDDa>flxh*Q&XN!Yvc7eRC^?YuVfAG}=Mi=~UWGdto7Q3+fCZIW|SDBd#TF z<#rTnq?=d~IF66@uxwaT>tPLimo8xiu0FCD|x@u565f&n>IM{Nq z2G9967Avg9b73!@fJW5&ZLC+in~kD-SraTv4{S&UHYR+*|C6Oc=KoKY{!f+;u-pD8 zOaCWJ|0hfTCrbxsFiX@r-;-nLGE;q4)b&9D%d1-hj~;3c8H(p#GzI?he$udysl9 zyx!LS_3E_#-;CZDz?P_zBu7I-Fj(s}8Vv@Y&+88r#a+jD;qT9V_>&rdy^M5@KCi#NE`)Puu(l!8P+#Zwc@4(+ z7HPuxv5gJPIBx8ydNw&dJ1DdKN-G)Jcc%Z4G#+csLR9<6BH&`9X&OC#~k({3Y zqd3SSeZ2*%rA4q3#i-UgT}}Z?P{0=O4+_txsnZ(s3e%HPY^mwyg(=e;bN#rmq-K~0 zn*tf_lTw^XmP~j1RdC(!1MJAg-){KhCO&mDosqdK`7!_ZqFx8Q$lw_+hsVh=Z!{RS zqrvBB2!$E~J|n0aCw`pyyQyU52Bx#Mm6c<;ZvW1#4R*b8{lnQm9zDUR*EfxMCAW}$ zK^?PA&cb;msqHn%rqU&==mFMI+{u2YJWl0-vdS7d4qsbC_;uKLN8rKc+{a}M_%UM) zXrB*xur?GjVhZ^=5roh@JyklhC3)1!tn$SRlhSk(XI0nl$}%lqRej!>`s9r7Uk5Xm zPGzin&E>@@Q^px-vx&CsE~q;H)+@R1y+Qd{wAFyIjIG}or8e+`T0vyKP_)fp3|RL? znp}K})lgqW#!+o6lc(mm(w(#NcWx0Nl*d3w<_H*mpWki_HB3uSv)R`ewwzYx<1lH! zVtmCoJSzCG3z&%D-so{SK=&%)`(%2Q_tSafwaSt1j~6epa|}E?jvb+`rx#T0;}w3< zySIDIWxUnizrg>4=p~FVub1Cu`?VBp2C4v-)ZIP~m1WcsJveyaQ;|Cvl`Cz&l^|=XZn#kR2ta~8bOprghpiFIrN!bxj2_P?8@DKaD&aq zH!CksR-P_7xKtahS0(=T_Y?*;~6g6UpqGI0Xr4fp0~2@@^kgcNwcrm znsfT*q>l9^`BS>8%xStAOWTdV+^nokr7frDSDnB4qBfGjHA*_$FE37-HkKl^{JKWV zLD}O7%07n&knZ%;djHPuoyE#E#eh_KfkM5hG*x+6rGM!gl)+j7&wmcGu_L{FB~ajw zb_qI%KIY&W5_0?rdYh26LN+oM*GjT z5Y+k-$nIHQkkeUTzV$MvG2n^Q7{?Q>=d?AR=j7C+_Jbrd>U;(GhUOaLLb)LXv?np2 zH{hJ^scsFJM(-SLAGdvJs9_e%p3q9~D!FU6SM!w|l@6alS&rqPOhLk0F(0yGnt4ds zO;c`BJ}BYi`#99)1IoEHSGgxzt_tP!q8ymRIXh?31$IS;k>0x*S=74ajmU!mB1e$W z0S9qKFd*|Y-EBH*KBs%*Sfw|`TjDcbJa%I@3g5t1_aYolu@@B3-+Di1UqtJ|$|u*) z0VlaQT~PplZly~7#I4<1mEY{K|yt{9+OqwWf;xH7*pqoA+?s@ z^=nNYsIbH}kM_A-f14eJUJ(EmqVlXyl*?QKyMjWefLa&u84N~xTa|CuP1WT22arFr zHBrxx?5GfR`yuLtVCN^wC`h5PM2pv49XSE@i1r1&xuBCv!X`-+iuW)rFBkz5Oxd=R zgN4heY^(u9q!biMp=cS5BOv9VI`y9$2_nH3jwc2bXe5H8KDbow5mo#~fQwmF4)ep2 z;1bMdbi#1yw6Rn9QxFk|5?64Cv!@aT86jsQ7+QrRb!IRYcXq;ki{PBgVU;d9Crp$O zUI4pXF%p1ar3n&d3=MF8tHQ%MZi4Wz)toEeIubzO*iR;kAQ=|xqjEBsUk><25F>Al zP7*IC&xj!axgR2M5EuDa3ar@)3LU~WOc0w=cu4j;A}<=iklPbPIOo%U)D^Ioz^A!=(5KKDG)%iR zKJDOG))n+q;n8KJ23f2Q)@uOTmWyCiQ0)d)11)HDDXGbogxeK!F!Hp~EDzxFCq=3KKV5`U{5&X|_)*xh?I%BjJj8H_QnklD3 z&BBaYZ?I}L`PQ*(&3V<$BgwcQO}l>PJ+}U0Zd|tzayUf#dIS2J!u#4MV;w#jpICGn z>6fcF!(3mp;KlF$e7_GE&1q^i8mKP#+X7&8NtZR#vv_@y@;2ou@1x5%P-SD8(N+;4 zgi{cn&v>1+p&dN4u@`ZcxVFI(J^u zo+b9yDQ+Eex3*61ERpSJpVL0Q+g_i$pnb~t%+e}z&eX1Q*)sm@mBscg$(fafX+~dR zvdQEf8*=7sUB)&O1t%30*o>sJ7LISq$n02F%KOjZnkaPN(EwA`l^rJyAdOSyYs$$0 zs_Nh;N>2h_l3HPlbJ{n8GDGmPVvt(xY>xe_89QgNC7U<*?q&NpzT42RkB|?Z0O;Z& z=zN%as*=FZx!y!OmMlsN?QF=n@w&kIXX-;cL%Q}k?X+kW{X!Xg^A%h>%CDd&mC?mX zQ`&eGp{P^nLpf*y_6PUo3|jM>(0&RBsT~?mZ)nIC_;{#oaD4)C;F0kds+o&atS=v| zC85cjxNhji;@eU+7tTNi>k^YSyImQqF`=IHjv2BsS?iaokAyIGg4~Dp?#e@ep^T(_ zTre1TgDD&*{xu}D@TaQq>Xt%EIS?1h=LUE1d`qb53(&)wZv(n+>7m(C&vc)UdN|-C zurCA+Ibrj+MCs^TgMXt+XC>dN2Mf8s|BI9BM5GU~_~-tXZ;SuexNqjZZv(#k_@R>? zfj;_ailHCw>-m=Ovu#{Uoce9x*ERL@96dSY3mu?8uLJIfnvwJjaQlnFW*xNX;h0^7 z|8TvT^HbnwD1ORL;r$;wSR>GkPdqy0OeQ>IdJN8*BZ$D`au*JM_!0=~4qpeYThChA zN%B7B1DiLqu#MfzMMv-CeCSk=ACtpx>N-#^lb7?0f({hstkH-C6}TY`zN1+l-ITLh zb6&e?QqEiZ{_d#WiG;el(rXI~JfgY@y-)Be>sf(^{;1@Ku(J3G@%qwZa?=HFVt%J(ZcP=|zh*0d!%BSR1E>hmfxUX-rB!o0t0|uCqm+R6MPr=HY2xk(L=v z`!(tsE7GzM52@z64fz&`y0Z78F1i{xStIh~(5Y%3%0}AzBF&3uA=GlWpj?Y6=R1?b z@Cx$0De@HJsS!2LV&u75d2Yq^LUHXsi(lUfc;>`!P3bM4pLn^E|td=M0gjT{@uE^Cr^H7HN|ZEvnZ2B+`N+Z7QCH;eSj@ z2R;nU49g8vj+qWkyoCjW+G>&4$d}Bx-vo-dT*Q~tLIJ2{*JQ1-$} z$$2Sr@^jX#XC=yAo`QQ)5Bn?hh4UsPn_8xLOnP&mTECi+ZuwlZQ#pJnui#Rmf&gz{ z*4qCHXFgcL>P$@(3R=U}%mhGTUmfZ_I1)H2EH3sL^aekoc_XvNkuW&v>ZHm}1ftKl zR&e6Wk${T9Q6F5IrkXHZ2Q}68;Y0wN%mM4YYGlB4V(fC+aj`DgiswH^)@l<4`Qnk7 z=*x+8<@Q13e(#)-dNzd}cr$?K5vj6oj=UJ1BjEpX!tngrro3h| zB?8ZjJw3fCBVmW@c7kWfC4J+bHbSgL!qC1kL=49AMBx8&h@gz#@)0|wj(Iws4$Hz5 zZ{t-;9^4m~a9{Qe>5EHt;?$nl!C`bExgK^ku7M ztMUUDYO5(-Z|xdWb5_H+t)n|v5S$Oo(i>V#%IRGt%Zp^0?k=l&r_&(o&HifrI^C$2 zvR@@vbMW@bV<+E;FziZce-PnfuapOnV)VGO#y^be% z?0CinmslzC?*POmpwj`ai`&1STrSD8(_MTG& z1)74K0+*lS%Iw^I`X`{k>e_QTKB18S2f2*vCZ6c}U!tvVgle*W1PH!5)RrI&T=o~n zuKOhlMwY6Q+&%&%LK`_gJTMV_^ueO7^(6|+RjL~D(-B}13drc;VbO`P@o2h7Ghg2u z$)jdW5X^%ksUB@3z(1JQarW@t8HCpOnqGnsQwLOzy(2&cWn%pK~x_wfh_hGK1VwV|4iXN9tYnyF%MS+wI%+&W9_; zq>?MS-&EhB}h>57niPH2Z$V+Zk+%_0EaFDy5*^vM4UN_Kun# z54?0EtQ~Z?P7@2F$xK%5o?O;Vgf5+wyJo z$8S;I_{Y`1^vUT;=X3v7UM9Zt4d#RNIdG_rInteyO%KZvh>Eu7>pSuXtQ~X5qfJQ-2d@V#0d})MM=yXiICx>bZ z^HDiEcx!#_aXHJ^FCu;jd88)&>h#?=WUFFME7e0Ztn&XxF~`+*BP(LVBb08|SU}E@ z4GX@Y{C@C;RaxGs@rf!twLGFMrx8$b<49aYxpqic2jeZu<%5HcS*g+<*AZ3P;M`^e z=x7;dMO{Ne0RA)-bwt|ZvO;Z-bF7it>*d_+)*;&ii&JI~-a$F6gb(29?**`n3;9zi zkyskcElwS(+70^9B553c+%OhF^aW%ml0)qNodsgD)d$+QZ}N-N=CUcuUS{|x&54Oe z`AmK*#fmew;EM7onV5jK`4?4mW@dGMmAY8joNmrcqXPZ8lx9q`D}Q06Zemd9@LU1PMkmk3a+uwp^3Hw`MQa=du z8ap?A)V}n1O>6p6Xa17$;B0cbYTqdT?9bbZ{L}iWUd4gp09akOYVf=p%kem0m%|q9 zonwyL+^QZ30F90aOtQT6KdQxjLH6Ck=Dw)(YZg{b?pLTeVsr~0t=4xOJ1FoKrC1xj zUyZw=Ee)tsepR#M`&G*AT?-2U#;Cn3`vz!rc^`fa&%oLJ?cH8_g>(5ndzYjn=mA%v zF1}hMp2vY8iD~alFs0>|2_&eaot+`wa2&W*P^T&I<#G}k5<&+0DTlwMV7ca^#~m5oj}1$?#R#Fot1 zC-)dV#IEI(3+@C&58brkz<~{6 zqisBPshB#&}U|K-$lks4|7cRz9 zKCH=OM7Qzr7%|Qv9y+=dBqB(MOT>-~ctLcZ($E0u1|2=Tn@s`E#q1CZ3n)*{o>PZy!exQF5czC7Hz3dKdpSE{N)$Io-c(C zvIS*K0E~Pg5oE%)C~NkddGA@L%fDmhUMvkbmF*+~B^dh4^YgJlk2$Z(w z33}n{H!^kwdmkgf;~(Ba+Fyi^WQ!WtfcOw6d;-TrzOB;Vw0ymwn;emE8}|HF%YKb~ zUqDBfv8yEM9d z`+rHKP3dFwp;z?bGVJs#>XM!XoqZt^*-k*rH8wk%&i#|xG z50r~Gz9*f~(n83096FFJ-9*Bb1z7N0u*_peWa$UkU05wEBh4?;?!?~4B2C(Ww4Wi3 zNk1OL`|w!!E!ijX+=cy-)jVGTwvb4>J5rbQAGE3ZJMWYJ&GUiw;BP|g&HH>MNW$Zq zm_VB63u<7jo7mWQ#jYvV%c|4(y@8Hn`Mszcne8sCa0xeZKUcC#^(jZ&*IUs(m!dKL zEDnV*8%BgEXw;4A^9RpaRte{|e1ZJ}K=#fc(7glbW^}E|W@e~?QNJ;}ULFcm-D^=i z9R{56$`PJ970y9{sv*$?-#S}OZ4&?kv|VG|!iIi$}O&RWm5js!{mEp`!(Q0jn%pa@+?X;STr0lWLXkCiP6 z^I-rj4yb(~fDFakxr6f%ZW6PFv8M04 zgYdHVgoR8u^)rb3vs#$T90naLuiWx~* zgy}u(%N%2E$5PCa1^HgG#a{8{wB09uteel;w3V62nc8>Q`jB6u?=kXa02Y8_^f@YU z*ug##6N`njgjZlN3DXY;@Djwz7!HF4vX;j~4rqBmf(D8hf{xh6-;2FaA$fnW5r_vx z8v`aaVR!T+hylqER4kt6YiMu?qg?1j^E@`_*KKpi*gbO(bu}-rE*Z11 z)96Sy-WNVX|smnlY(G=ygEjerr0zvbDcqX+_9vw$p$zrV0 zN`qL#!6V&ppt+n4BF+a7FsWNKgeJS5C^*ba;`gQMput453)BP4`8m*@g!NIB+%&9JX)Y6n$#IOD{#ckMZ1(@m!|qfxoMhrDO*d9zBoge0 zv!I|+FDzibr3vh2J=Sj>+Lum%BNl7l6IE-AJFi)PPm=#uM;4=hAhck$_7yx4Y;juD z%C6xn-s%^yF9Hk))P9cQu-!#iqeJ?W(Bn%qJzm&TxMvOTl>aRAH-q`Oj-J*K!Y)^w zXE|N!(}(;4JMOm)sE^g+rUPCC_nL)E7q3p%2Wyws1`X^-edoz*7G~Lczi*=_k8j-l zhck+T%kJ-)|G@I98l?f3{#y02vUczBjcoF=Wh$-5!T@U}5h!F&$TK1&X}$lnFpJUJ zdxs?vcn&UBCM;cwan#4*MeOjFC{!FW*GM?B_I_+(S#3&*gvf6DeP(Z^@gI0M?&iY5B#KMM}rUf_$s~ zi{PSbYhAXQvldjoD-&Uwb6(g-A5G|MLj5H40kRI82f=NjMi@XLAnT^LH;;uzQ@%_}W6MeD&2hS}KEeg*DJb zXo*v|N32h)laibcpFc1x^!b+F!&WJrx6-4mZ(dlwx^`A0Z74f+&4i8wKxelvS+aMp zlD6#7lFipFp`Nu$_{Trz{390sc(ODR*x@NFGU|;6v8XIUJN($zEi^ptm9tLCpiYZ& zR~9jL&6>H^>Fe+G7s=TVS{_UQe7WlBnk6+~F;>0STT%FB_LA&)+9}5yQWAn5u0*HH zh!sIGFZi?w4vY5By3_N{>KQvJ>GYgarY)V_?et-lWkmKTXWspn$8tBmdOjU|YoU9| zi@WcN!!-m?Lb&FU%SM^UF*hJETF8}3%D&|9JUXCDqmKv{KG;v=Q1bB)&!ts`N{!0t^1*ey18sTjw=|e5;?@0Shq*OqaP$-XLRa5X zGHJ3sL)Xw;Qr%L7MriYCd1bd<_g$im+w#k9qX1KC^9sg|A?jFjTb_H|Xn51-v~w5; z??^pH=L3ENw*q-gyJKqd^DDb|PN&az@eQwd3_kYp!n_{=ScH*&w z^7i27&8yEZ$}XsbB7t}I0Tu=Al%pNK{219=M)|)pn8nf~FRnjh?<_K~l#l>`2dY?eK$z_>*ZI116<*?=PnI0^Dq2br%sLOO+B*>=Tm8h17>urF}!bSd}X zK}{t@FDRkSk3QO^;*-!=bkVGN4r~4CE0=DmD7yTXL%LJ-%5qC;pfok3y0kP{OF_K5 zSn5E(C!*hij<9gy!)Af>p+&jrJX(OgGZyu3;CpAt!0qdJW5iMD>UFSTBu+UR%%Mm> zBEufpQbQ=X>MZb!ZOCMUGj3zDQq#ERX(Zb&T0MTjCX(&TPQh*}2RBb!y@NeM!MZB! zrXuTVDkoQsF-*{nYMS0O$)KY#&5h&RO^>y7y8LsKP1)Trn7ihrnzL6_1Xh~U-Q6oO zU*?+AsLNm}Eg`B7W|vkFRg@~%mDS*~+-n7CDij;q=JY_OFy*l1pJT6!CfG z;Lx~Jc?c%}bf?1p7oic+$psoRKphaQU{1#KcRxWPeNM&;KYm>Km42~q)Ar}jxhN$^ zw_)3_&fA|tbN5-Um@%%KUcCQq<v*b!1hS2m`f0UgsvpZOEGtS7rLQZknbu-yZ!+CYvU!5f!8>;rscf zIp32W@ZyD2c?B*+Kh4(BjwDm&gdAJ7-lMEc;P3D{__xAn)@qC~L;*$*=)x_=-h9b!CHZN(4}u~EPlBqj8| zdNl?S2pb7OhfQ5wX$z+5lI_dZlF>aTuOAUFh)}Ic#KR(mIIZUAowap2rfLigo9qRg zYLiqNj;EIp)W#q0c#33^rb@`qjHwVaXqPG7c-lC9QhQ=H>Nvc)!Krt;1% z%LS90=l@$y&vfPG8?ACirZYd!G;F_rKvU;t=kM48^{0JCUg3^YSJCPgF2i5(W|m;^ zM@`$|c9mlIM^A;`QwqIj{mI%e2Q(X|B*um*)ohs3leb~6fZgy?ME4Xn%oPJ{m`3QQ zt;jQ?4fE3f&4w9`cKALZCu_qz^Ix`MJb+^c;23Db939bynT@g`lpV>2+5IhTn0~r4 zUkL;sh|GjUY?%2&>&pKp8)i59y&nDUvtf1*YQtoM=9mB1Z5VgNhFR0khMBI}Fx8q3 zGexsuW@t7{Q>+cMWcB~WhUrGXI{yzgO!Ls=@_({nY~e%lr+8N-U-#ha=FrdtcT^25 z@XUeh9wZDH2Q@BSY1h@)FRicFC#_sSAN0Fawpp*4HgRDSJGSxZQ$2yMTNlp0b&8lrv^bOH8D#BVYzl!q&7Cyld?pRiya z83JwfquPxBvMBdiZKsSaE6LL(1pCYqYo~d3i_KWoTArCbCe+a}ePyo0RqW>SyMKSC zC)l3>{u$MRgcj4^vKf8^9_rM~#);!$sjOc)dX8mA>*#tscu`ij+Oo0?wvAlcGP%_n znwd~1Uzjo_Yf@h3EK^#>)CuMebAd0Tq!8~K>j!c=erJ&5Y}7ZDM`J+Gw8-$QK&E zN6NnWn{O;#SUT1+Hg#c|VoD5jLK~ zf-F#<;t*~?&6_ps#8G;eo0zAiVthO4%-std3ufu;$(Np2lxHr^`8}01jH%VjvbQW) zS}Z5hRkmm1OnoYiZcR27FP=8B(_OIX^fTlRo$`VysWh*!s=)6jKf<~Ck6*(4O8Cr1 z7_6BV+GtY#xq>JmfOpLuucXks7!Q5ic+8bnBsL&@ZY)x}dbF|Nx(e9Y)&6@_lM*CElG|fpyVt%Nwg?>kY&+AtH z>MknuWZHcNL`4{}IQktc%}ESfn%|Fa3)9cI5f1F2=Jrz^*Kqj_kDE6@ym@0Q_k(tq z%unx{sY^<}^jufDC9jBi1kK7+5&{V)f`~tH$~}YA?bP;p?!1kAK({d9L9l_M^z`!l zLagw_(MSk;9Ko-Z(7I1VchiW1OEtYJe}(rU&R1Koa>3F*G0g7nJBNfmbL?nXFw>{I zCN$}+wrR7J+15)Yw#}`7MRw(6dfi5w?8*#h>i2vQ2U5cfX=2>TWGRp(}WWbo0a{qcloLB2BHV|15^6~AlPb`(vbel?v}N>|xl;{#Ut?7;Wc;H^ zdBbAuXbco)CB{iLT`H>-YRQrbgD55as^6x=Qe+qRNG)E`Ny*XAP|(bM5$qhEwbM3Qbu_H4mw*#N!~rNCXWBFoR>2mSHDd zq@yoPU$(DkW>J%ARPv1EKNu64W0CGCchCamj=5ZciHCdQ$;~58k%?U|Q6>HenoOh< z7rMz{el)4_dd@hzg5xcto9ZidIyq2%GUM}0uGV}f*%+tS#LLks61-iB@JKdi7xgguFRH>8oFthtS z!BTi@o68FEe!2v>=AMR0E;}`~q?rSYrjMVUU3TuZ}~oRVBu>}W^a?(}v?NiZd; z+Mj9`n$eU=B&h@47APzXINTm0w@3MFQcf=1y}nG7JuibO7pwL0`ocJA3SYHIWG?uJ zSRLhBlFJ#?7?`#$30(px<*OUUVJE{Q+GH5bVkU#D%EBkZgDUcVMfvWsLa$EdlcKIP z5oCSXFex*M8poKNfyL9t&C1m#1GTD1Iz?|O$j3a$7L#HCPC}4dh=)xCCvq%Jsp_NZ z)j&XJpTq`TiG@#Jk?I{*SN3_pC-5@@f;Kic$u{fM$*#7L&T5@HU8yy-jPexfWULyD zGL7}l9IH1V_Q>s$?=${~cIce>uAJN?y-nxJ%goMAG9*A+(70xG=D3B%HF*v+E~s8g z?!1Mb^va5oV%t3PqDkXs6sG3{%jO;{@)UXSmXoG48j`RUh7*a=8pOyvB>Znq$P7)P zikco+ug0r-X^rOEHR?QBd3YzUPUpojR~Ly_>HUO1yPKbrpP$3m<-gSGEZ{q=3>&>7 zmNXHZC054K5<7ncPw=gA5DXLDqBQpb#iT!LFqQLtBTg#PB@P+vw2{5Wcm;b8o+XF!E}6<$GUYehH65Jk^so>hiulzF94dr}ve9_39)Z@5b??#`Mhp zuSNC5qwUp*hy3KDeCYMK&iog`ey-|6gN)}L`q9X@hyaQw<&TD@k$7)9-4WNj1Ve;k z*%EZQsahY>@mx-gcxxKpu0BpO6{&n#yr9_??0aDs1k-@oc)6u^(d3-@vvkSHt5@YO zo~Bctw?E!JZ&Q1(uAr!(!0$Ass3+JJ*dNygI=psY8?D9#=8s5)_`?C%>5?t@eN@&eX!_};dW*hZHId>pQ)s!+Y69v+K_LoJox}d@4-Em7GP8@0MmXN`A=FX{eZIxpyfIWj89Q)6qAp1syhc20wX6Y9n8Yj2<=5qmPvkCgS zL}?!FW$93-2U&HEo!ctlViPE+mhr5ZF7r`Zda=juap%riVbv9kubVoP>8+c3oIMK+ ziZ+wprphrBnhFXxdzBHo{E1Hk8zTtEe`iHq+5ix`09Q%rTWZWw`!$u<{53=Ra#Y-y@252xz1=SEJ6@$ zmD_15f=!qbD2@?>F)}1db44z74qz5WkQIsgVIGA13}WtyU{5&6G9N7Tz{|fI%6zN?eN(etre)G*N=tbiNRh?Mmn&wLAwN9 zhx-TOWuzWr5y^vCZXOYn%{Q{+Y$0m74e09i$;(&e%taVe^2$^4=TFutXPL?;1S_ib zx{CU`Io8D`Yr2f)2~)~S3iN-rC=bwAhJrwW&!1*YG2|EX6KrT7*Ks<`<>(x7~V|(x2h1&C~Nab8JXvQ=yO zKaZFeEuPttwi`lKlY#S#E4?v{}ZLd9wA4GV{Bv9l6<9^K%BK1?&~Ax~%|p zeSZMi(a~d)DzfuhZCgzpq)%~Lbfy$rN3z47mL$)Yd+ivRQ~LlXX&GHXC2~lObrCUB z%LL8?>?V#=8jYC#7UVe%c@PIA4LVw491(tzIdFii>d>)=<3?qcI#{TYq!8*~f%^SJ z;SGz5{jo;*@hI}W7Zh42vrj$grd*0~w<2S!nwPv@PPJ`ltZU zAl@G{?$$?4a!3sJ(pD4$%)7$p(HiLzj<*nh>^2biX!OLLc@wfOS$EUK1JDM-VOC7f z%bB1FBQ2o&86w^B%+d;!>p(e13qIqvbYb`$8Yle_&!OXaaWFcrH5foN{(9j8R#{+1 z;hg4{xy9rB&2uJ|e~~#f6ehbkPdtnfKOo!v>wNDq^Yn3^ z0*g*}s=?4$=Pia`uCaB}rt-MP*;5Ad4HoD0IqsCa{5*fKc}`|>W+30@^QHD4kHW;^ zDGfX6MbR(7gZ0>c{o?)Pi|ra%!3dy;8m-n6D zN5GSD?a}g>o&b2-C%wV;&=Ee;n!xWDs!#h3O{KN|YBCx}mDc#Hh&EN!l=vr?k{g@hG~rc2BgmoH#229UsmG(w>O zbk2XYmX(#aGJ~a|G07%dr!?gR>kN~1>6uQ5Ba#eX&L56uw zfj3>RuNXHiE2( zuP~%nlmmYabQS$Ub|aP#b`zdshsz%ijD}qN_1wni+?V*SxuAZBZeGD9-mA~A+o7kc zuIZYBw^Daqdu`X`*48Oq*PxCmsN>V2>i9z zy?)8mh25QcM^bZLzQ9nrQtiY(zuB?`2Gmn>LI#L%njlqnx?1IZmf*=#f zo6A8bOEGU4E#1Yh_k??>8a!R5C6GdWc{YIeFnCuue`Mij%;1l> z>+z+FWPfgcZobUqVjOejome2EBzC6qWfG-0b3LBij6AO=zjo)&ooI;HdldCf#2Mdb z1N)BP#SGf_?PE#DXcqsO^LEnPH7Fs<@b|YKlZ&9Y&C;Zgi8JA9ZU zfra@#cu5JglZ>6eS(0;E@iJ#m?UdT}_%3&@2&{0fDxX@hzG6znuZ!0g588?>b+B3T zH|(7VUgMShC|=(f9Is~xys}&45Xd|F$wQy(eC*G# zU!MeCz2KOj<^W${8|gGu>vXBh)0hy6oa>{RxEP5P9_HLQA`CGZblJJS?5va|S9(Tv z%7~}tw4C(xjHHy@bbWrhwckZ*?ofA57*li7Gf*l!BO@<0Eh{5>9-AI}Zq6yn0!*2J zDS5hJRP`P!pE<9o!Ic-9(b?GG%I*D#eerg>v10P1bVKE2)0gOn=KM}$?P1R@`P5DMXEYCtDqn&HM^i7yZ8LD*bJ>;tn#k-QQpPnw5)>s z?9|-6yxdeRUtX^Ad9(=Ve=+#K2mBvaAzpj!TfCXNHnStx*h`a{OCUpKIz^S4@Oyj( zzsDnLe(v{3Mt0@)sNaL68K}?ESKo|ieb8m^A*(z?=#G$S@!DfN_8yMYCYdEJAx6FI zXH!u4?eGioZ$Y(7Bq@*x-;K?4QasqDG16>jjw>bhJUT~_9(!($OmSys%7~}a)LCgW z4t4AvZn|UqcER2|m(w@XcVaxT+qJUi+H4&6cqNg0LTG-$pLtkUG1d6_lcXGeLir8;On^kC4yfw1#C6V#et`UukMkyYk2w*BmH$>r3-W}`|EE4dY0-Q9dy5neEvxe}?*w>Q#JbGAK_-n3P ziB*TcvCS%;;vtN;bC<`Fcf6l~h5CSr^%DS=OQ9=n#h5YLGM&S=4dZ^1825%!emxI1 z_U9_!UbR{n2+-vQvjX=A4!GA+#lW3ZTQ!hO^{H!aF!m#+J2NRWNAFEa%gxHkb!6u1JW0sl%1%kk&B)Gn zSTpSgx83E*%+5^9$mgf-EF`BEBxhP(-b`_tlaZ1Gml>RepbfT#evf@jUk0r&Vf)xN zju)h_mtF&2xEz7I<+VNCd*rz%GUbnPuSxnf{f!#MJ>YW^-Ib(tQX}U#(R++;5cL?S zk(r3UpMmfH?n$S=Cn+{MyqULwd-92xd-BIgCo=gx)RT)gUPBwG=Y2j-zX)g1bKwgk zV^~Fhvnlq|Q4RbMSB38b9Xt6wJseJS)%wlrXUnTk+<-R5Q!e$=#gX>ssIXo{yDQ31d2-V;&s0}``F9TM zODLPBmc<($B0CsDhr&a0F-89sUlL^{C-$;^3VX_8-$tzM!v+_82DT!AP$L&2c07M+ zq~GVXReOB~uf8F4&~{;g2@A}*x`GRB2W!g6!*cVUTbW-;>D6UDC&sm=*vkS|ztZFJ z<8hJnG-H7iu)d4-E>YVnf~n89%H{Sbz*bkca3OpJ>a$8gBhB>q3_fFB!$Hf19#f#) zog=$1v>dD{CokpYRokB{s8T+wDeF}z5Ht1Q$9Qjct?J2&xsFva`OS_A5o@LE#p#Q@GZ#HWZ zH=ANy*OiCwe`e;w#c0~@`~6;Y?mW}ZnK|donLcB*v%j#v80|70FYCKPKdswHQ+nWa zMWr63?2sdom$l;}y+}{*snY{I(?)s^4e!)<2l$%(d>apTWm~6RUlrgT5F%(~>brtH zBw&?QtKfyw^nQ&Oh11$YOJ=nj0i ziTQ`|E%;B+L7q7Hb*CyHWLWgy&n3fhatkuNA|cTu4(cAIizOM3F~!I#6DMStS>r~Z zf((B&0d;01>dc1?@yP+^e|h=GLxlgoX7L)DQimhXy}gJ^s_wYPWnZ8HVynW%r*Qi__@<|MDKY|& zmEk}KY&4-d>++5MvXe#c?!3zEcc-%9#p=V;U3DxX-p3d&s~bLjD1h3Dr~A6Nw_b#P z&GQBa2J&NlU91FtoW0;f^55OJN$=J3>BU@+I*LcXzL1 zM|iDF=b+;xgkHo~t?YwZMb9e&o-Ehw1TRI(m>=3k^*qMGM^QNV~Dm9na4B2LvWP`^+qb z$d;iHo!PAiC|tzDjeS?@f7ae2>Lo=)dYF?v95fo`HBn)#GQe1GI0IN$WOU%0UcQfa zfAC@V6Mm>MNEgHYsxQ$;Q#vgrHQC{TYeZ3x*mY51#{K^6BKBy2u@&jqC+-Ou?&`iu zKZ;ur!_a2ql0%w-OhLDgj!n?FJtjB+?tQo#kK4Mst>GXity^Nf50j<$?5RC-Q*y*`-HhTg&_grOPFaa#Xa>>{{S@ zU3-$=Do&P*3yC;1soxqM#bO(xjO2hPBZv5!zkEi%@x!!Gb_RMOgW`wEWeK{q)hVO1 zcLLZM_xN1!^snr9;0^SML+}%X0dGCsIDC`jYasDC2=9iT#qW8JUtv}gAxz1@;-9Y{IaMk$Gxmw_+0Yd4ebiwuP>NR2mN z_A4GYw=>^Zx}cr;87Fq_qIj7+L9YZq5DzsIm(b#^*ven^eu#+dh6Q?taf10#Owfug z2h6{*c&TSRaE&B3N8-X=EGQg}FuI5GhD;;Kn_V7J61Vcf_n6VbCQo7y^@+5AehXg* zJW{t|IF=k5X-55YFz*O<`Ow~9WfsPza~A9})*vU8X{`!Ni9NDdytmWm9CL)AdkzerjQqw`WM*?|fUr22?6ZxfPW zZ#N`o{>5*PmWbHHj8(g1F;24s0ujo>v|CV?=e2LK$6QOs#kq9xH5Mdjo;49pEXsKX za$28;Z;pc}HF~nxwENRjcyL3|EfdH3hEJThGq@qdoSAvw=tR>AX7%)oiegErUSU^X ziut!DK z2)#(RQkqbxJQSQVl#n{oJ&B$%kfyJ%e{Toom8k6}H(P;urUY_>n{%}1U~{~)6{H`> zT!)l9T#1+Ch!?+llH6jEEG*rJwpWlrKVl9KV(%bLDxkFRduV*ja$plZDJ)dL!}yS( zu~0Vvh@#R{9HbNJNxot*A9n%n!58_!P02d0;D^yeZ@Q>^>vQYJ!#sDGccQtw0)^dhnu+Tb^6bx{-9_makc)@hLrRK(@#$aAFpV zaB32x#HFwhY(}sdy)#O21Y`+Q0i!rvn~gGGit^C9r+CwzRzB~m3vSy8!-GzrJ}qET zJncOZPsE}a2$f;jzb4+#z)WML9W16LW_uQ@QCoz9V`FR*UZ2Z}x~U za_qS#CdQY0KKF8f$FRcOq=o+RiO)7R7M3S82F1tCX?$tIWC%9V=-a+`O}NGu?F#7# z&{d53Kq$}|PLK=SLhaS3)}(#A()gb@+V-c{u)Ah2xZukLb85yt>JyzD=`m>>F2a3; zl^9nWTUf2}du%rQEx({Qn0;%c$LM+tJ8XD?zp0pKdk!>9&{mpgU3evXU*v)IRQ?VA z(R4;DRE$Wde#<9d zH)grNZ!x>;MpJ4-svehAnX|yLGl%UeEUFt4K4Q4{a_@T*;;O&m%Z%}S6h7(cuc+`5 z>GDM@qKl3g8Aiq7@)b6LSe5GrB71+JXEUvPg9fdJf8gYAo~sF24rRvgjIY z3>Rt07|$Plw$&7R)0bCm{8Ni5=$Bt_Ga}~R)w=eTivmpzcQyCCa%mucruUcTsY#QQ zx-yN^UOe6NaOm^q=OdX(FK;=xHYslV`|Dc|u1SjB`q7r&PeYgOncMQz>a@`2JLa}N zy~g;wlub46VZSdax!w7+mWX-T=k?3^H;_wuZ#fua>mfM*K<`D+y9il$TWu^}fiJ?X z0p-~FP^-;A-JgfsKo)DuwN|{-w-#@5T&P{DZPTuXHiA5cL);?2$Al+(AoP6Zd@0Wt zpZvoGGzs%u>2FK26fY|*Tq^$ee^ezETY4ib7Tw2UIdgKb-COO7E)&V$UhCjku2j9z z#g-)gNpX^;_aaxiel+|qz%%HN@>2LaWts*BHMxcC1w6~3w2-Rw|BzoDTDKd=uF-D5 ztAfAMZqxSQ-f`&NpUb^-QJwtG#kHRj_rJ&4AIH%j8S7{AyJ8Tp*Mrx0!mJ>|8pVb|@y|E!a^wGyCIpHubJ<`f+V_c%r-R9jvQeHEOWV{;`}qANO483HtfsP`zy} zrvEMCcZ%%W^xkK&9DuIgUR2a9{`V9WO-U|}>kYS9coo>(LUvpnb+*3GEwytxs*O=p zR0JRr8XF!LM<{?SiKiDQ#~DtyJPhuf6|X3A7GLAmTPsc|E-$*IsHC{5coOVMuuEW< z7cT;!IAl`(H5WUJ?j7WV(>*`buco)ICY+~N?cPhf5`1^>rTy$a+F&{OdHi?r*=3)P z*DfhLzpg&J=iU2?rOgONk`T53DOEHrAU*WlnPe0an@$+1LG8YV29CEw(>~4P#&%xB6 z#Y`9T|4|44x%fFG1jWGZGw!3epV~nyIS+4%=fwNV`guG7F6ynFvw!x(e3y0IsZG)< zaT0jCHWNGT8q^5-e}(UZ>pF4A#XYiVgiaiG`ALqtT<*Md`H58jwNZBO7tr@tx<<+v zTla#cqIQ2lot;zCVT7Ox8y_pj+H*z!nd7jDKqvq9fTt4*?|>;R+*4>tfK{M^ww;gN zm>KyY-G1(R-h{iIR%k0RXR=ybuWiPh$(7nQ+I48vf2sXO`|Xb(eY^ASr+$Z@v(EmP z_>8gC0mVtts!OK+;OCoQbYp(L`~TjN3eHbtaYlX*__idU2G-rw(m;D^x{&)0rZ`okpR-p6T`beck7&f5pGTy1`{{(A@lb_B{B``##6M-w)vLL;Ely6EX9Sql8!zz-8zI z>ja6kA0$y9KW+YW``z6i-rcf|`4+KVJ4~t5Quw4PIn#6Y*c0_IqxPB8#>))1Yx7b2 z;>D7Hf5besB7n7v<-j$MzmGgzUPXD>#&FhK^T2*sPyI{y>zHXDftx`}v1gW+QE2~w ze2IxptYXO^86J2?y8mi+>3i1s5nQx_rOhn7GL2ObpII|6m>sZqcG4{-pO^=dt13&DHzDrruDFRx6tX5nIFUNwLCJZrXBlCGcWWraPf z?~9L}_SFUTme}gAdhfo+Yl(MKYSIO>V&cqE-VGPdit?F1aY9|RcLTeiXd=}o9dz}? zxiW98eWYo0N4_8+Hr2QhRlS_mzc?dGMt4GqykmoXPOanCoZ4cx<0?~XZ5l6qwYVTH z)x$IkI}D@u-aRSu#?r#+ymZ!xnX>}eE=guSYA>$hrnMN~dA)B_F0nRKA@a-~jrN(( zF1VQTXTrXncTE9;=4Px~VP%XS=Egd3*12-ZNG|TFpI3jNF|g6Fq`7cmA1QBj#{B}&96hD3%_CeHF;2aN)muRi3< z5O*|KkuO?}5(`pt0a^}f=61t|@v38%<6g(CV)ln!rqo%f zdFC3?r_xd#($bKpK4H9mL!`tsI_stvhoe&uj9-C6hB$MYOFesIC`IhF;>`~JPL@Tt7bQ_8Qp zsyt>wQ(6{o-!ay(rRCU?20fP7_bYv`PV07ZUdgp?H!$X)vBu!O$%WeGgZiEti-e*{ zNyVZhy($bTh@_>;A?&P!LxZ=9o{k;;v za-75Hqe7}@j+&BHTTxUIoK!a=tuA%c^u*fU>yr{oJIl&em6g%&q)DClUsg6Xx$Mkd zDDu&XiDzDw_8jA0>oBYFFBX(%Jj`lF#*JjUabk?oIXIdtdcXZ`X=0L|QI?!|#&Dq_ z9FryiC9e;zPDm;kA7)8Pij7ZrKe;r)?XNUBL1b;xBxC=O&6|hp9MaV_WasOyoVJ&h zbs$PYGEDy;ScNngW1$BMGXLQ~D5c$Pjio?lV- z#TRv7u*8K6St7Ph{QWn-VWAJQIO9X)o4cjKrpbX+9*L1S?4RmLOdXWoupYj*@V@&B z?>#(u5U7O9URu5SrOVzVT5uNLcbNZ$AHhBWywSkIAyydrLKy8CID9fdmsBjuyO!jM zF5GX&4(pB`jtlJhi}Uf{e!&!L_2|*nR`JVXFU`36>WoW03mWodcwR$6s&%Th|G&ch zI&i;_+gj3qJ9rp(aey#8f^m}pZBRIi8{E$gspD$PV_{DWGr15GdVZa8W)NaeX4+uo9ig*LjgAbm(#{_GVUaii$Yg87Ss(&e26g@qxZ1ry2> z-cJvS44V;T&KtP2fNP1^2QnJxK(aJ+M3OvJ$BA0B^WAMhmu#brK(isPwh-l_f{Cjw z*ei{tr4=pA!)NNOp;6p-<=l}oXPLV6g!JU$qdeG9%dMG-UDhdo{oMvnPvbYdc2Zhq zT);J1IkBD|qsnT7yy(Lc=Fa4ZGDhIoX%_r>A@PWLcPR8tO3gTTb5_dM0!py-!>O zs)fW0{Ur}2SWr@R4>&PZ?)pK`IFc%RWR{tBGD?ZY32c#sZiA^#WQjL#xX=_4^4qI! zHVo4Yea7rvi<|u;^y#yAEp7I1^j$hnnX}mZ=#uYF4FyAiRL`tMU4yg@BrVX^Bd}G z^vOIkXMVwWNP;zY{`m3c#Q2S)N9i1AqsL9pjq)ju2+$e#kH|9f=y|hm@{MkvKfAO% zEQ0xkk4kflZwvFXrR9u&oCRd0`o*N1=g*vZlXsvwz{^hZHj%~ZU65Hb_6gzi30iwS zaVS@Nzsw@{=vGbiVRb&6)9Xh3**GP5A)8{@0NF;TMDP@BtX<#6&CUW`Z5B4fGBi9Y zc8E!LEHHUWg? z`K2bKh&|SX_(KrC74gxU;qDUAY3=WPqN~a#Ee=2Ge>4gvd~x{u{_jV@B;C{Wr>1-8 z2ieBB|fbn)K-fANfGq!Z15-%n(Gtflygu8{gxu+_Y(LgkQ>yF5~pK1&fE6t zZTv3yfX3MK7LRii@%q%>wm80hn)qeEH+pLX|2Ox&uHPegMU+N7GUj-c`1UiWeRWSG z&A1bmuW@(IY~E3CJXT+CQ~>e>7Hi5uIx{FfAeo^oUcL`P0|XE3QN%T=zO2c2Q+jplT1 z7vp20KYMSKqawtdmf*F*lWp2$-W48IvS68c%VypTJX~w;drQBPKL9)!PbQ_J{~(Tx z(0xdx+i)S081m4yNZ3A26-Ct)&v3S}=*HabY20so%j7kcbLKfOAHOY;`#IZ7H&o5o zHM?@$!n`?E;}+zmSl5?#6io4pnmf6>e2vwod)t@I1VJX%`&*;u7LA)|@!+x9_9)*evq$TGOP7YWg{1knd3t9#!Z5Dz zH=7fR$Am>qsvlw6el>5w{i12O(=y)T?};Y@6N<-1L@i$Aw_`i_6xmnCK16=8H*+Ar zKQX%prcU$CsE>=z8y7h=D{tK7WNsc&TN*GkU~I8ZN?5twY9C@^k!k56KI11PbD!GU zz?lIex5LI{B&p2$Sq5d+JE%Xi`TmwAO_W(7R}5#)cR{X3O1bJE;ff|92mP`{+L5pH z3M33NAX;_yhe=aI?(u!Ve82C#Y{KMGsZHS_US4zNWo%lduk&5w+2gw|X8Y#!)X8H5 z9CM@ioWjz^!p5>f55`-(Sl324Hm+ivwQ?@<0Uh){zZChvHuq$DfKo^^p%qQ4S#%@J zVgQb2iC6mdKJ1r2G%C!?r^BzqH*nphjSc>-)sC^TW}mP8zVbGQhZZ%?X92!hg;N`+ zuUkEA>5!;#`Q?ojxf5|9hw4)*>ez$87Xb&*U~eo{TB^P_|;7j4JesBC?wwUO*3pC;~tOvdpioataojr{@aNq-~w)?K^0-tIn3 zGzic}avvFwdEf|+Bbgb-b*$9SDD-FlU`G-2aQE9(7=|6W<9Q=rKF}^HB2DZW`b@wx zLwklk8}KY&{(kGxqpdPNi{*{%3glOu7jNKtKyNR*0)Y%Wd}r~?c_qP0Hj|2>%hn>z zeBSKaUMhR(wmG-rcTeTrcjJE*{gRHa)3W(moN1>!z!CujVxc-IXoK+l25IoK{c=sI zu~D({cxyZ@W=KptuKer$G=N7Mm%)EXti{Al!(*bz#-(TR!$M;d6Jw2kw;E@ZD`6P* z6SQmjMQ77}1xLsDQ+B%dQ-54=>7qO0GJX+XO>HsSZW1M$q>yz7lN8*%-hW@|-~5eF zYTIkK`9EIztv^evUWxSU+OD|F_Wy?fh? zG2j=+-s~~_S{{e?E(_eG3K zaqwpkwZ%eJoHJ)-{aDV%|LWOD2xhG|iTB{H0nBwI<5X0<&R&f+mOygSCcV~bJR#&e z5pyR=sH2`ppi^Hil-;*@U(dhWcd!vG*?5Qj+L%vryG&c7U(J&+KcAtEK~GaM&1zpiz92ecYL<6I z-pJ88V@FPOB#oZnNF9|<4KCAguZJFoa^WOpD0(&MK_=?IY+^$h4|vcxvhfDC&3KP5 zZ0+5|?h)}#7+X3q{~QEbQHL=Bv!JlWsDkax=_vl&%u&PI=X9j931dpx!QQ_lo#cJS zlU_j%$Py?#34Oe|7+3y`JFQfG2MvjYay)zXomMqI(DGE)Uo6uQ)EVnL*zqpEh|IG-qSsg>C`r>xY|FGpNz^Pf?EcHvnBG2U~d z2?`3VI z9sqr+^O602$KaPH{6_WreXdQ?gXkU-p4spBtu|iwM4ok?qTNdHP>##{9>G}TS(=*+ zO~r*==2Yb5l@eBU9W%{%xvIO0RZT$`;*HABdpGm-GR+m57sk|Aiup{IO3FDB7X%zK zyecq;c-WuaHYckU$K%IOXMb#6W{7)lwEDiodMAI9(j+G%MXH0D8GD6!_FfpkH@q~1 zc?KKzrhVG|S(WkT4&yD6x97AleG=yEC`~-WiMK4>9M8O2xzRb7U6IzB-DzBKA$z*k z$Y&MCtR*5%ci%gxr+=d~9*N9BgTv%V9(#JAvZ@ ziNleK$T$HPZ$3RYyDg2KDmOgYWdE>b>~>6%|8crefQmsh>qJ?$tFoApuSgH{bJ(jh zjMKqviqkmF*9Y`&PN`(Wcd+#8W8EUnF3>Da(kvP4U04O6@&~kKtzx_VjR)8jbBxZ7 zc(bLI8TqyBphz=O^VN4FO(4pT-bZqz8Dzuh)l~E$+NK{4W)VfN@Nu`*9S$}=D?ZeF zu&(@{JN{X<|B>>OJN{X@U*`3feYff5`~<=9NJQ#Tb80eXT2pmLB=^1U@bueCUM^-~ z*B!3At>l%WIj71W;p6sKo`l`|)c#78RqI=-AM5*sWYhyo82T}~ljjB!1PWV*`*|7% zhh0wx?_6OY%CKOS?s^7ds4zD7?64C9Vegz3##i=-;YtaSmwuR-IC8G&J^F&W1C%g5h90YyHw^)f6nF*s}e`t{d~`-teSqSFKZIEUEp&${)JxYDi{BvH-vw2OFv9~`9L~- z`I+nVY$3Ag1S{+#;?64giUmKHN4KeQS(cm?XNx*aoS?5LB!gV&wvDWqQfVm@^se{@ef z&8NDp?x6p1u2nDU5~G`k#{L}PgYz+HC9L<;y!m6sETsQ=4SDR6%o@2YWVP004$hl%o@;kec#{o<+2`o>-uuza;igYuK4W+{RYBme$txzRM9k$(U!%^j# z>@M5VEF+a2rmizlq;DCYfb`-FI>?JuGCiMQ>-|b4Wq0*H!2_4rj8sa)_9&e4{JcoR z6t>>4Y9#0 z4zR=V#r7a0Y!C3H+SndSsn_6B;Jn!;Bp{eiQ0Z0bRH8{1542H1awxeC^nJpX0|>HA zZa6gtJi%E^U}T5!Ai)zh9w@M}A}SxqXUr63B3cMsa=tiA&^-&#L2h6Wm*gR$sb8;C znS$xw68BQMb8K+wdY^FPoqI7U4>qEe!cS+S`)L(Qt%{HW1r3?GSpX6sdY{mbp-AAS zE_o^18&~>7Rc^siDv2Vr;wlx22ND4kXI*`UZj?-e93Y*Y=$8mW+l-m|F-qt(lG!^p zn~{ttO6Iz$ALxqjiVdk#aeKc3-I$U!x416IQp^CC`wOrVE~Kbi&fLp<0K2o@aKc;W zfM5#zqYw|ZSV}w}g*dFc_Z#+3e>iAD`2$C(JdhoK3q^Xz28HKG7NR15kBYh=V1aIk zD=_j=gpd0piYtzSM{%-9l0`fVz=)ikfFg0xM#w(VQotkJDz-!~6Ho>y1)@pWVmF*s z?qrY!;~K|@u-5sN9ofB@g<9ovQVT)+Z81Cm?+abqTB*j zf4P%w01td}Uzwtff=6Ycl2f^pZI*WSsD#Hy8%6zP0FAy|ZYl?%R|)W8IH}x1cahdW zEkG)lJ|X!KTJMOF0$fQpp;jP>lt%L2A8Ei_$$LAvD@2IsNs104pCjTjSw<08mN8st zROFxgBknsa*q8}{MeOtOK*`=&JQy{I2SWB-JW%p9n6A!t$kPB_fsPn^1J(Y19e)F{ z7w2MEH7PxN${}TaMrDaGzV_2@9oFikCpaKIgT9R=|_&RY8ZhJ@qz0%z%^9iLOlz|8l}Y4 zk3}DP#MpPF_st_jUn(=?11$$>XHg?Zu}9ImK{NoBBp5*y4{)jNP#PBDB;U~Xe`%+> zsNhhz(DESdqX+^Fh^>%Wk)B#1l$-KG8c)I|nLnqD5}zp}XUnLRH_8v?Tj>&lNzn-| zzD2$z-(BVFuPII{7_pwT#Si46sNE<zUhr-{_d_(MB;>|FH3J+|$nLp%~`Ta+FBbMBS4 z`MoVy{^N@4x4gGG?TUXumOck| zv(VRVJ;a?XhRHSBqaa{NHJdRhx8H zTkOxe&Tf;sdQY$;RA#AzyG4B#vMb~kQajMTA{y!kaJlQlZuBIjK6FAKQrM5uhut>u zC(;7hHVy&wv3YYp2P!I$d=)N#^82w9MguC?NVcD$(fd*vY zJZ*M=-52#OnP@7~i2S(gL(ws$EQ#EUc#`j~^7ZS(WGWc3o}|D9?>zNa)OnEysZP+o zyVrTNRc`uF=pU)EWFH1(w21t=>B9m2BWOfj02|tkAEAE+bm5Q4i_p!Kdup1L@;P^2 zTs=c-;HaT+Qoo7_^L@M-(1lbDztc{D=I7z3K=GaYEBO&=RC|H`EuTOmGwMnyX(VDv zdOF2;iD-}Bpy=JoaT!GxQmHz&==&?!f=}qzQNLM0mIF7EPzm;X%PVLv$s;*7&~H}o z&)KJNuS2K<)P_?&)c6MZ=5taJ2yOjZgLUH|Sw$X5 zuH5tB-d4E!&Z3W?;!&M)jWVgNfN+5fB>aQ<4U393G5stLeg{2(5gRisZYV7ECFs$KBVt$6ISphoH7k-u z-geDaUU~cNM5|>8yI6+N`Lh$(+}6XtLWm42V;}M3V&4KCSVGd4aW$)UHFoi`ni`Rw zwPOeB5jyXI1lWtkkN6q4`|%eW8bFU*a6aTAg%_}SazAjUZQy0tcO+nk((8$dso&(+ zb`t305;W4^g!B&#(;r zh4}gZa!w-d;&;$|hTGd7oMFWpZr8iIoLwN?uD5+Ts~2w9TR@y$EZna5UpV`PaJ$~c z;p}p9_rEoRS6s;5e@8E8uL!s6K3&cZiTJK}e>l5T(3NPbC1o5ApBI?_t)>fYr@j9~ zNfD9#{TIG|ug_u}^N2Cch0{#BQ~V)~{zxD0j`k?T%iVq+F-W&og$auvVbmK0~wd9N6bE>_IJ- z7i&p;K2}u!ty!2SmTROjG0(m)VUEEa1QX4)z8;>3c;9NV`gKT$G{VdS{PUUn`wR-h zt<8yIZwKx9K)%=(Er5NgnaJ>4kmo;Wet?zvqm4sL*W0wwytwbLe3q8(GVCj8Js8mJ zpD^!%_89kTy)d9H8wcBfIg0NaV66B)EWfp4>8~Aw{S*w+P&m_I9B`k4O*L&f%pYLB zg84V(E7qeB^f)MuMQVR~SqVP*rC-+$Mz#enxE%;zwV!l2xO z*9rKhvJx*Q|2Wgvt9{dF(WA9Ey;K_xxlCr`wfU@BD_~18-}{(01#looRG;xK{0VI# zzLW4Bi4&gD+VQ@BxNP{>u_0O#i`F8cix zm^EZ09T#SbR*0~F0I|unCIlBU;17dz45r)-h;YQu+gA8!8zlHxs7-|)% z?xBwHt*{BswXj2BC|rmCL5W|x3~tCcTMnD}OYsn{-2yWVW+&N#zYp~N1L<1ep2GsA zL7j==Gy6`nc_{ll*qz#J?FHNez6mlU^OFjjbXNcj=>Aho-`7Y>d_dla?(|J%?K=+B zr(ov6CcQ?y-iB`~FXa)2g$v^gJ{LlF{~CSmUuYxr>1a=Vv^4#4oEeM6J7IoW2=mA8 z=vAn@tF$42eM(;l{fV!RtM?<`IJ7y? ziyUp5(67JHCV2!>z0m^U|1R)tA{;O;!;sD=T9FJuuL`-Yhy5H3>Vx28C+uA?6JdS{ zL;U^^4E8+9^h9%)S&wfrs6)a~Ufhk#-(@TOY!BkO<%Qhte&_q9G+12`#y!382W=?K z-5(PG{qFv-(JG!}aQw63_Q!Y2r#o!dH~T>1aM><@m))NS!b|xfyzcqJH$$8Lo%lb1 zm*TtAsXzUr@P~1^UA8FSS$O-y-1y<1c5pt~2ikP(spw=IwPoxywc)HC<`#UD9=(aJ z);ic3t&ttoE@88%&SED|Bv0c@`7~(Y4cfJs4Zluw+{3gmoMo7+ZPgxPCN`4Qv0K?O z9)@^Z`P;flAEQsxJN29OCrw_abW???(e!K6Bc|s}@0w0{1bCEr%=T#a*zR$+$KxI! zdupDAo|`*YJfx6OCAui-b_ z?{WWO{u})F`G4eZ1f&O)1k4TC5b$)s(Lf&P7Z?#}2}}#L1?C5q1Xcys2QCO)7T6iM zF7TqjD*~?%+!eSxa9`jffd>O$417KCXyCEHuY+tsJwZf*~hZ8;{D>V94@5i{@n*#FNY6-1%1ww#Igj1P*Bj!%jo8J`nh7(Y3FYy8m!OF~=16>h9E&Y0YUb4j(yu>+p}#tJ8O--;sV_`hoOk(+{N|N&h(g zi}X_?_=w^WbtATpczML}kuf8ej9fSJ*r@DLYes#LQJ-$offUW9IJ6 z{h7yYR$G;AgY5;|(X7c?*JmBgF3CP%53sk{zsSkWIpmn^cp-OK?)JQpyq3Io$25-F zKX$>`ed9ka98yG8Sh z+KL`1`nb5TxTbhZ@sq{x;@=m=r<|HI&1rL1Ip;dBbv{yJDoHD;DA`f+ZprD=n9_Bn zyGoxdvzFzSO)Q&S)>XE>?CG+TlM*K7PcEMPa`~9@iRF{apDur`{N3{7<)S)!m zs*_VpQ~ahxPf43%ol-ERV#=&3OQu{h<@PD>R!3A@t0z}4s@_t4NA=57J*O5-?V7rG z>cOdR*7()r*Ob&$)ilypow`YpX^=_kvImvt`Nwe0R?PcD0V+3Dpa z%WIa;UEaBT`|^X!Uu@Qz%bI`Pd}>Ahip~`~SL|M~Z^ix<2Uonf;-eKOTl`v*T5K&9 zEtj?IYI(Bd^_I_CeOl{Vx3unPy`xQQi)zblyM1Nh%KDWHR<^HPxAKye+gIMa^7fUF zuY7yu*X@4oN$myg_1O5Zqy2&QgYAdfkG3CgKi%Qg5z&#O zj$NGvowGZy>O9_gW>v(hq*Y^9m945<)x2ucs;gG*Ty@8)hgQA0>dP*_E=yNo*Q~Ct zuB}}Ub-mejsynDVr8~d7x_f?iSNCPzySn#xzu5h5_t!n9p6H(Jo~oY4o;5vJ_3Y}| z*YkMKyFI5@hpbLtU9h@p_1x9Xt1nr7^Xk2;pId!&^~p6sYf{$auc=$pw&tQWH?FyR z&A~Mvulaf{UmLMDWo_=-lC_O%x2(N+?R{&XUHj(RPu8AT7qBj2UCz4db&J-mTX+4s zyVo6D_wKrr>jTy&tsk>~+WIByH>|&E{q5@?SpV|+kJg{s;I(1chKvnm8|H54+;IJd zeH)(J@X>~o8+|q=ZOq+Rv9WFAWgCCJ@%4=#ZTxZ*-xRcI*e2_yf=z9kZr*gqrWZH8 zzUkdfA8$Io>BOcpn@yYjHivDFq4^%n<2|XRwuw2NVKl3Ved}m+#0-x=PD3CT z{uoYhiy0#Pa?Jl=b&|XhFB$EG{5HWiPknn}#;inrd%}M@Vlorv^|ig)0`<)>{tr^$ z9Ao!%^{s1@8NF#s@lA-cMSXkV?WCRRo8}H4DPG#Lcv?gAa!YMPOGi!9;#JKJ?SuR* z%F|NU)ZVeQwZ)Q|VYTA_ph)Kl8%02IBCu6!!#$ksxRZ0SwnXdHEZXm2Y&d0a!#|5w zjF1+DP172*W^Flq(vWJ2@NK~D-4<;U!WRKfJ8t!C00g?lw*~&waNE*C#B71P8D=r? zSOmrloaVJ?6^Pr2Q)d?3&4LOBdmtAb!qtS^fScgkg$2{U2+7jl={Fpxr z(B8zDD-S0E$KquB=h~yVrTY^WgdN8rER=<@aC-HLMX@0)8b|M9u=QgYi(?iR&k|T7 zOJd0^1v^60*l^+nB!4+Lvy6=ZuU2Tk#*LvRkcU$3Gn|fWV z24>SXX`6AXDVy0@j<%6GaM$oGyx22aJFY!~TZjL~a#&3;tW>LX0loA0yZ0Ob}s~1 zUBj+rzhFDqb?kcF({Uqu!8fBvyp#Qs?P9-Tzh=Kd&-ONUJNqr$jaBbE*zee#xUc1I z_ItLM-NW{=d)a;Le)a%+kUfOAO&(`| zXJ6o`_m}J|_BGxDKf%6bC)q!7()?fSH2XI@gEzMg)`uz;#F=)Vc0cFZM6Poar@hdA z=-7?0x? z9?uhaB2LjJ^Aw(nQN(bb&PVW(d=$^%qq!9)?4H)1!3p>WwTHBap*Qc;9@n10>b#G( zo7;F6&&G`yIo!c>@tWEgK9=Y6alC+!=Y@O%pU8`NF;1qI@KRpJC-KR=oL6A&sfthG z)qEU7~HnDCG+6LY&Y%rftyEveR?(SE{MY|`g@>>ZimjjR{Je)(!8{1`69lU zFTogT8P?UB`3k&Y*NSn|O5V;pcqd=QyLdP6;j8%?oYG#$*Ygd0Bj1D<+_&%xai08Q zehF?yxC|%exAJZL3VtQO3b#3J=hxs&_AmGjejUG_-@tF=H}RYKEqo{cCGK@zmwm^@8-YfdvU|tK7KF1kKd2AxCgPG_b}hj|G*#NkK+8s zWBhUc1b-4Yz8&OG@u&GS{8|1d{v3avzrg>@U*s?Gm-#FF5Py}whMUJ;=Wp;g`CI&L zei&;UDwA@=y5Ru#WR7?g{&xALoDPU+{nMFZoyeYyJ&C z!N27v`9Jw7+(dVp|C^uTz1-k^ItG$D*L92(J#4ZTdt3L$4EKk+ulAmH zSUZAwb3ff*56}bkAU#+Q(L?nxJ>0yiWvMl@sMtJVMZ?1O))r6a!UkAor*x{|67wW? zcX6h9${=@^j92VXcAl~)D%)EX^+Zo9H`lr7*QJXg5|e7Gkl zx4;8;k#ZL++o|jlX=hoLt?*|l{J2z2;Zjj~k zY?9<_8Yr$cv)F20I>>D^w+?a(w1_9b!&YF6MRDLpHU{FClw_;yXRGXItL$g1>}RX& zXRGXItL$g1>}RX&XDjk$EAnM4@?|UXWh?S!EArVD`Roe6UE#;w^@4nMh2O65+ZBGh z!f#jj?Fzqrg1%_pA|IG}OEQ|5E^hFk&!xg+neY&w%Ll@mkzfhTQm;kxWDGc#!!*OA zQ^fOHrb4_r=PeRGdgr`O%AhrCq9~v(Ge;BzwkQZ}Q4rXoAh1P2V2gsl76pMV3Ibac z1hyy$Y(Yraf{?aMhl1}=@Er<17PFBLge&+C1>d3I;|4StuHZWa{4ASIz=JK|!4~jf z3wW>vJlFyrYyl6pfCpQ^gRKaksTi557@4UUnW-3=Dd3fqWGY5xDn@21MrJBTX3Fws zD|%)tdS)wn;v!2?o@_ zxy_4OSG5a!X_pA^SlUD39Zg+LE%ec}bn%i-iqNuD0FZbTy|Wd)ard6`SNI*0-r17g zwrq#wXSPG~Gut8MCfgw@2Es+ffGsM9Ejw58J3CkMJ3CkMJ3CjEKUeZQJ6G~MJ6GY) zRrqri{#-@RT!lYZ;m=k0a~1wvg+Eu}&r|sG6#hJgKTqM$Q~2`~{yc?0PvOr~`12J0 zJcU0`;I~>Q3V+xFE^GBoJtWnm11(*r9yHl1?E%=&8ZZaQz<}E`wcq&nn1OQeqWkK{KPOPnOb`nbP0ssy0D&7`z&m2 zZf(g}0x1suH+rs#V4BZ{b{SS(BZr#ye$8 zXSGfck^~A!{LZXQ-zBTtmY@>3DvX+;W$XZ@fB5Qd` ziJ&jSWo<7hk^Ib(S_F7iKG3@p`6(9gv$CYN$;v7ga1l@PGi!p3XUmed)kQCtt>|Ck zl=;q)^t0tiS%;nDxd{EF<|Y&Uh_Yl#UfMEcy@2hKIROJamSxU#^&p)}zH{+o<3RqcUYwI6oXp4id8G%s?Cr`jL8 zYLD!yeX^q+Xu*-(RW|uus*s@C4RR_&3RSEoM z6|l>O3F!srU`r9TtB#CabyV!C!LZ97uFWphtIe*&&@MYzHoH_w@E5AbW|u0(X16J~ zRF!ZGaYlSqJ}JhCFRQ3sb(HL~Aw+&vxux0$e3ehB?g2+gG;9}KsRD5Ap`^2HE|72K zFPja(QTS9fv&#k(`BU*^#}fHcaBM2SQgs2I%k9daqN{9>k2gaIW|u88{6)=$tt3tkOU?6&>Wj0Qqs{Pw__%Bmm#V zH^pDo!M96|XtfoI{J<9Bu!a0M9kQbeTa*j7fa`R~jw){d.value={id:r.id,code:r.code,prefix:r.prefix,suffix:r.suffix,expired_at:r.expired_at?r.expired_at.slice(0,16):"",expired_count:r.expired_count},z.value=!0},w=()=>{z.value=!1,d.value={id:null,code:"",prefix:"",suffix:"",expired_at:"",expired_count:null}},q=async()=>{try{await j({url:"admin/file/update",method:"patch",data:d.value}),await b(),w()}catch(r){B.showAlert(r.response.data.detail,"error")}},A=async r=>{try{await j({url:"admin/file/delete",method:"delete",data:{id:r}}),await b()}catch(s){console.error("删除失败:",s)}},b=async()=>{try{const r=await j({url:"/admin/file/list",method:"get",params:n.value});F.value=r.detail.data,n.value.total=r.detail.total}catch(r){console.error("加载文件列表失败:",r)}},V=async r=>{r<1||r>f.value||(n.value.page=r,await b())};b();const f=U(()=>Math.ceil(n.value.total/n.value.size)),H=U(()=>{const r=n.value.page,s=f.value,a=2;let c=[];c.push(1);let _=Math.max(2,r-a),k=Math.min(s-1,r+a);_>2&&c.push("...");for(let m=_;m<=k;m++)c.push(m);return k1&&c.push(s),c}),D=async()=>{n.value.page=1,await b()};return(r,s)=>(p(),u("div",Z,[t("div",tt,[t("h2",{class:i(["text-2xl font-bold mb-4",[e(o)?"text-white":"text-gray-800"]])}," 文件管理 ",2)]),t("div",{class:i(["mb-6 flex flex-col sm:flex-row gap-4 items-start sm:items-center justify-between bg-opacity-70 p-4 rounded-lg shadow-sm",[e(o)?"bg-gray-800":"bg-white"]])},[t("div",et,[t("div",ot,[x(t("input",{type:"text","onUpdate:modelValue":s[0]||(s[0]=a=>n.value.keyword=a),onKeyup:N(D,["enter"]),class:i([e(o)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400":"bg-white border-gray-300 text-gray-900 placeholder-gray-400","w-full pl-10 pr-4 py-2.5 rounded-lg border focus:ring-2 focus:ring-indigo-500 focus:border-transparent"]),placeholder:"搜索文件名称、描述..."},null,34),[[y,n.value.keyword]]),l(e(L),{class:i(["absolute left-3 top-3 w-5 h-5",[e(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"])]),t("button",{onClick:D,class:"px-4 py-2.5 rounded-lg inline-flex items-center transition-all duration-200 bg-indigo-600 hover:bg-indigo-700 text-white shadow-sm"},[l(e(L),{class:"w-5 h-5 mr-2"}),s[8]||(s[8]=M(" 搜索 "))])])],2),t("div",{class:i(["rounded-lg shadow-sm overflow-hidden transition-all duration-300",[e(o)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",{class:i(["px-6 py-4 border-b",[e(o)?"border-gray-700":"border-gray-200"]])},[t("h3",{class:i(["text-lg font-medium",[e(o)?"text-white":"text-gray-800"]])}," 所有文件 ",2)],2),t("div",st,[t("table",{class:i(["min-w-full divide-y",[e(o)?"divide-gray-700":"divide-gray-200"]])},[t("thead",{class:i([e(o)?"bg-gray-900/50":"bg-gray-50"])},[t("tr",null,[(p(),u(S,null,$(P,a=>t("th",{key:a,class:i(["px-6 py-3.5 text-left text-xs font-medium uppercase tracking-wider",[e(o)?"text-gray-400":"text-gray-500"]])},g(a),3)),64))])],2),t("tbody",{class:i([e(o)?"bg-gray-800/50 divide-y divide-gray-700":"bg-white divide-y divide-gray-200"])},[(p(!0),u(S,null,$(F.value,a=>(p(),u("tr",{key:a.id,class:i(["hover:bg-opacity-50 transition-colors duration-200",[e(o)?"hover:bg-gray-700":"hover:bg-gray-50"]])},[t("td",it,[t("div",at,[t("span",{class:i(["font-medium select-all",[e(o)?"text-white":"text-gray-900"]])},g(a.code),3)])]),t("td",rt,[t("div",nt,[l(e(O),{class:i(["w-5 h-5 mr-2 flex-shrink-0",[e(o)?"text-indigo-400":"text-indigo-500"]])},null,8,["class"]),t("span",{class:i(["font-medium truncate max-w-[200px]",[e(o)?"text-white":"text-gray-900"]]),title:a.prefix},g(a.prefix),11,lt),t("div",dt,[t("div",gt,g(a.prefix),1)])])]),t("td",ct,[t("span",{class:i(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium",[e(o)?"bg-gray-700 text-gray-300":"bg-gray-100 text-gray-800"]])},g(Math.round(a.size/1024/1024*100)/100)+"MB ",3)]),t("td",ut,[t("div",pt,[t("span",{class:i(["block truncate max-w-[250px]",[e(o)?"text-gray-400":"text-gray-500"]])},g(a.text),3),t("div",xt,[t("div",yt,g(a.text),1)])])]),t("td",ht,[t("span",{class:i(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium",[a.expired_at?e(o)?"bg-yellow-900/30 text-yellow-400":"bg-yellow-100 text-yellow-800":e(o)?"bg-green-900/30 text-green-400":"bg-green-100 text-green-800"]])},g(a.expired_at?T(a.expired_at):"永久"),3)]),t("td",bt,[t("div",ft,[t("button",{onClick:c=>E(a),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?"bg-blue-900/20 text-blue-400 hover:bg-blue-900/30":"bg-blue-50 text-blue-600 hover:bg-blue-100"]])},[l(e(I),{class:"w-4 h-4 mr-1.5"}),s[9]||(s[9]=M(" 编辑 "))],10,mt),t("button",{onClick:c=>A(a.id),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?"bg-red-900/20 text-red-400 hover:bg-red-900/30":"bg-red-50 text-red-600 hover:bg-red-100"]])},[l(e(Q),{class:"w-4 h-4 mr-1.5"}),s[10]||(s[10]=M(" 删除 "))],10,vt)])])],2))),128))],2)],2)]),t("div",{class:i(["mt-4 flex items-center justify-between px-6 py-4 border-t",[e(o)?"border-gray-700":"border-gray-200"]])},[t("div",{class:i(["flex items-center text-sm",[e(o)?"text-gray-400":"text-gray-500"]])}," 显示第 "+g((n.value.page-1)*n.value.size+1)+" 到 "+g(Math.min(n.value.page*n.value.size,n.value.total))+" 条,共 "+g(n.value.total)+" 条 ",3),t("div",wt,[t("button",{onClick:s[1]||(s[1]=a=>V(n.value.page-1)),disabled:n.value.page===1,class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?n.value.page===1?"bg-gray-800 text-gray-600 cursor-not-allowed":"bg-gray-800 text-gray-300 hover:bg-gray-700":n.value.page===1?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},[l(e(W),{class:"w-4 h-4"}),s[11]||(s[11]=t("span",{class:"pagination-button"},"上一页",-1))],10,_t),t("div",kt,[(p(!0),u(S,null,$(H.value,a=>(p(),u(S,{key:a},[a!=="..."?(p(),u("button",{key:0,onClick:c=>V(a),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[n.value.page===a?"bg-indigo-600 text-white":e(o)?"bg-gray-800 text-gray-300 hover:bg-gray-700":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},g(a),11,Ct)):(p(),u("span",{key:1,class:i(["px-2",[e(o)?"text-gray-400":"text-gray-500"]])}," ... ",2))],64))),128))]),t("button",{onClick:s[2]||(s[2]=a=>V(n.value.page+1)),disabled:n.value.page>=f.value,class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?n.value.page>=f.value?"bg-gray-800 text-gray-600 cursor-not-allowed":"bg-gray-800 text-gray-300 hover:bg-gray-700":n.value.page>=f.value?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},[s[12]||(s[12]=t("span",{class:"pagination-button"},"上一页",-1)),l(e(X),{class:"w-4 h-4"})],10,Mt)])],2)],2),z.value?(p(),u("div",St,[t("div",{class:"fixed inset-0 bg-gradient-to-br from-gray-900/90 to-black/90 backdrop-blur-sm transition-opacity duration-300",onClick:w}),t("div",zt,[t("div",Vt,[t("div",{class:i(["relative transform overflow-hidden rounded-2xl text-left shadow-2xl transition-all sm:my-8 sm:w-full sm:max-w-xl animate-modal-scale",[e(o)?"bg-gray-800/95 backdrop-blur-md":"bg-white"]])},[t("div",{class:i(["relative px-6 pt-6 pb-4",[e(o)?"bg-gradient-to-r from-gray-800/50 to-gray-700/50":"bg-gradient-to-r from-gray-50 to-white"]])},[t("div",$t,[t("div",jt,[t("div",{class:i(["p-2 rounded-lg",[e(o)?"bg-indigo-500/10":"bg-indigo-50"]])},[l(e(I),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2),t("h3",{class:i(["text-xl font-semibold leading-6",[e(o)?"text-white":"text-gray-900"]])}," 编辑文件信息 ",2)]),t("button",{onClick:w,class:i(["rounded-lg p-2 transition-all duration-200 hover:rotate-90",[e(o)?"text-gray-400 hover:text-white hover:bg-white/10":"text-gray-500 hover:text-gray-700 hover:bg-gray-100"]])},s[13]||(s[13]=[t("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)]),2)])],2),t("div",Ft,[t("div",Dt,[t("div",Ut,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[14]||(s[14]=t("span",null,"取件码",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",It,[x(t("input",{type:"text","onUpdate:modelValue":s[3]||(s[3]=a=>d.value.code=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入取件码"},null,2),[[y,d.value.code]]),t("div",Lt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Tt,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[15]||(s[15]=t("span",null,"文件名称",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Bt,[x(t("input",{type:"text","onUpdate:modelValue":s[4]||(s[4]=a=>d.value.prefix=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入文件名称"},null,2),[[y,d.value.prefix]]),t("div",Pt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Et,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[16]||(s[16]=t("span",null,"文件后缀",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",qt,[x(t("input",{type:"text","onUpdate:modelValue":s[5]||(s[5]=a=>d.value.suffix=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入文件后缀"},null,2),[[y,d.value.suffix]]),t("div",At,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Ht,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[17]||(s[17]=t("span",null,"过期时间",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Kt,[x(t("input",{type:"datetime-local","onUpdate:modelValue":s[6]||(s[6]=a=>d.value.expired_at=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]])},null,2),[[y,d.value.expired_at]]),t("div",Rt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Yt,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[18]||(s[18]=t("span",null,"下载次数限制",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Gt,[x(t("input",{type:"number","onUpdate:modelValue":s[7]||(s[7]=a=>d.value.expired_count=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入下载次数限制"},null,2),[[y,d.value.expired_count]]),t("div",Jt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])])])]),t("div",{class:i(["flex items-center justify-end gap-3 px-6 py-4 border-t bg-gradient-to-b",[e(o)?"border-gray-700/50 from-gray-800/50 to-gray-800":"border-gray-200 from-gray-50 to-white"]])},[t("button",{onClick:w,class:i(["inline-flex items-center justify-center rounded-lg px-4 py-2.5 text-sm font-medium transition-all duration-200",[e(o)?"bg-gray-700/50 text-gray-300 hover:bg-gray-600/50 hover:text-white":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])}," 取消 ",2),t("button",{onClick:q,class:"inline-flex items-center justify-center rounded-lg px-4 py-2.5 text-sm font-medium transition-all duration-200 bg-gradient-to-r from-indigo-600 to-indigo-500 hover:from-indigo-500 hover:to-indigo-600 text-white shadow-lg shadow-indigo-500/25 hover:shadow-indigo-500/35"},[l(e(h),{class:"w-4 h-4 mr-2"}),s[19]||(s[19]=M(" 保存更改 "))])],2)],2)])])])):G("",!0)]))}});export{Xt as default}; diff --git a/themes/2025/assets/FileManageView-BLdG4lo7.js b/themes/2025/assets/FileManageView-BLdG4lo7.js new file mode 100644 index 000000000..3da2c1e10 --- /dev/null +++ b/themes/2025/assets/FileManageView-BLdG4lo7.js @@ -0,0 +1,26 @@ +import{c as v,d as R,r as C,u as Y,f as U,a as u,b as t,l as G,n as i,h as e,i as J,m as x,g as l,v as y,M as N,x as M,F as S,s as $,t as g,C as j,e as p}from"./index-DKQ1YPO4.js";import{F as O}from"./file-D8mQlyUF.js";import{T as Q}from"./trash-FNvP9-P8.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const h=v("CheckIcon",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const W=v("ChevronLeftIcon",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const X=v("ChevronRightIcon",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const I=v("PencilIcon",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const L=v("SearchIcon",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]),Z={class:"p-6 h-screen custom-scrollbar"},tt={class:"mb-8"},et={class:"flex flex-1 gap-4 w-full sm:w-auto"},ot={class:"relative flex-1"},st={class:"overflow-x-auto"},it={class:"px-6 py-4 whitespace-nowrap"},at={class:"flex items-center"},rt={class:"px-6 py-4"},nt={class:"flex items-center group relative"},lt=["title"],dt={class:"absolute left-0 -top-2 -translate-y-full opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none"},gt={class:"bg-gray-900 text-white text-sm rounded px-2 py-1 max-w-xs break-all"},ct={class:"px-6 py-4 whitespace-nowrap"},ut={class:"px-6 py-4"},pt={class:"group relative"},xt={class:"absolute left-0 -top-2 -translate-y-full opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none z-10"},yt={class:"bg-gray-900 text-white text-sm rounded px-2 py-1 max-w-xs break-all"},ht={class:"px-6 py-4 whitespace-nowrap"},bt={class:"px-6 py-4 whitespace-nowrap text-right text-sm font-medium"},ft={class:"flex items-center space-x-2"},mt=["onClick"],vt=["onClick"],wt={class:"flex items-center space-x-2"},_t=["disabled"],kt={class:"flex items-center space-x-1"},Ct=["onClick"],Mt=["disabled"],St={key:0,class:"fixed inset-0 z-50","aria-labelledby":"modal-title",role:"dialog","aria-modal":"true"},zt={class:"fixed inset-0 z-10 overflow-y-auto"},Vt={class:"flex min-h-full items-center justify-center p-4 text-center sm:p-0"},$t={class:"flex items-center justify-between"},jt={class:"flex items-center space-x-3"},Ft={class:"px-6 py-5"},Dt={class:"grid gap-6"},Ut={class:"space-y-2 group"},It={class:"relative rounded-lg shadow-sm"},Lt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Tt={class:"space-y-2 group"},Bt={class:"relative rounded-lg shadow-sm"},Pt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Et={class:"space-y-2 group"},qt={class:"relative rounded-lg shadow-sm"},At={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Ht={class:"space-y-2 group"},Kt={class:"relative rounded-lg shadow-sm"},Rt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Yt={class:"space-y-2 group"},Gt={class:"relative rounded-lg shadow-sm"},Jt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Xt=R({__name:"FileManageView",setup(Nt){function T(r){const s=new Date(r),a=s.getFullYear(),c=(s.getMonth()+1).toString().padStart(2,"0"),_=s.getDate().toString().padStart(2,"0"),k=s.getHours().toString().padStart(2,"0"),m=s.getMinutes().toString().padStart(2,"0"),K=s.getSeconds().toString().padStart(2,"0");return`${a}-${c}-${_} ${k}:${m}:${K}`}const o=J("isDarkMode"),F=C([]),B=Y(),P=["取件码","名称","大小","描述","过期时间","操作"],n=C({page:1,size:10,total:0,keyword:""}),z=C(!1),d=C({id:null,code:"",prefix:"",suffix:"",expired_at:"",expired_count:null}),E=r=>{d.value={id:r.id,code:r.code,prefix:r.prefix,suffix:r.suffix,expired_at:r.expired_at?r.expired_at.slice(0,16):"",expired_count:r.expired_count},z.value=!0},w=()=>{z.value=!1,d.value={id:null,code:"",prefix:"",suffix:"",expired_at:"",expired_count:null}},q=async()=>{try{await j({url:"admin/file/update",method:"patch",data:d.value}),await b(),w()}catch(r){B.showAlert(r.response.data.detail,"error")}},A=async r=>{try{await j({url:"admin/file/delete",method:"delete",data:{id:r}}),await b()}catch(s){console.error("删除失败:",s)}},b=async()=>{try{const r=await j({url:"/admin/file/list",method:"get",params:n.value});F.value=r.detail.data,n.value.total=r.detail.total}catch(r){console.error("加载文件列表失败:",r)}},V=async r=>{r<1||r>f.value||(n.value.page=r,await b())};b();const f=U(()=>Math.ceil(n.value.total/n.value.size)),H=U(()=>{const r=n.value.page,s=f.value,a=2;let c=[];c.push(1);let _=Math.max(2,r-a),k=Math.min(s-1,r+a);_>2&&c.push("...");for(let m=_;m<=k;m++)c.push(m);return k1&&c.push(s),c}),D=async()=>{n.value.page=1,await b()};return(r,s)=>(p(),u("div",Z,[t("div",tt,[t("h2",{class:i(["text-2xl font-bold mb-4",[e(o)?"text-white":"text-gray-800"]])}," 文件管理 ",2)]),t("div",{class:i(["mb-6 flex flex-col sm:flex-row gap-4 items-start sm:items-center justify-between bg-opacity-70 p-4 rounded-lg shadow-sm",[e(o)?"bg-gray-800":"bg-white"]])},[t("div",et,[t("div",ot,[x(t("input",{type:"text","onUpdate:modelValue":s[0]||(s[0]=a=>n.value.keyword=a),onKeyup:N(D,["enter"]),class:i([e(o)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400":"bg-white border-gray-300 text-gray-900 placeholder-gray-400","w-full pl-10 pr-4 py-2.5 rounded-lg border focus:ring-2 focus:ring-indigo-500 focus:border-transparent"]),placeholder:"搜索文件名称、描述..."},null,34),[[y,n.value.keyword]]),l(e(L),{class:i(["absolute left-3 top-3 w-5 h-5",[e(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"])]),t("button",{onClick:D,class:"px-4 py-2.5 rounded-lg inline-flex items-center transition-all duration-200 bg-indigo-600 hover:bg-indigo-700 text-white shadow-sm"},[l(e(L),{class:"w-5 h-5 mr-2"}),s[8]||(s[8]=M(" 搜索 "))])])],2),t("div",{class:i(["rounded-lg shadow-sm overflow-hidden transition-all duration-300",[e(o)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",{class:i(["px-6 py-4 border-b",[e(o)?"border-gray-700":"border-gray-200"]])},[t("h3",{class:i(["text-lg font-medium",[e(o)?"text-white":"text-gray-800"]])}," 所有文件 ",2)],2),t("div",st,[t("table",{class:i(["min-w-full divide-y",[e(o)?"divide-gray-700":"divide-gray-200"]])},[t("thead",{class:i([e(o)?"bg-gray-900/50":"bg-gray-50"])},[t("tr",null,[(p(),u(S,null,$(P,a=>t("th",{key:a,class:i(["px-6 py-3.5 text-left text-xs font-medium uppercase tracking-wider",[e(o)?"text-gray-400":"text-gray-500"]])},g(a),3)),64))])],2),t("tbody",{class:i([e(o)?"bg-gray-800/50 divide-y divide-gray-700":"bg-white divide-y divide-gray-200"])},[(p(!0),u(S,null,$(F.value,a=>(p(),u("tr",{key:a.id,class:i(["hover:bg-opacity-50 transition-colors duration-200",[e(o)?"hover:bg-gray-700":"hover:bg-gray-50"]])},[t("td",it,[t("div",at,[t("span",{class:i(["font-medium select-all",[e(o)?"text-white":"text-gray-900"]])},g(a.code),3)])]),t("td",rt,[t("div",nt,[l(e(O),{class:i(["w-5 h-5 mr-2 flex-shrink-0",[e(o)?"text-indigo-400":"text-indigo-500"]])},null,8,["class"]),t("span",{class:i(["font-medium truncate max-w-[200px]",[e(o)?"text-white":"text-gray-900"]]),title:a.prefix},g(a.prefix),11,lt),t("div",dt,[t("div",gt,g(a.prefix),1)])])]),t("td",ct,[t("span",{class:i(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium",[e(o)?"bg-gray-700 text-gray-300":"bg-gray-100 text-gray-800"]])},g(Math.round(a.size/1024/1024*100)/100)+"MB ",3)]),t("td",ut,[t("div",pt,[t("span",{class:i(["block truncate max-w-[250px]",[e(o)?"text-gray-400":"text-gray-500"]])},g(a.text),3),t("div",xt,[t("div",yt,g(a.text),1)])])]),t("td",ht,[t("span",{class:i(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium",[a.expired_at?e(o)?"bg-yellow-900/30 text-yellow-400":"bg-yellow-100 text-yellow-800":e(o)?"bg-green-900/30 text-green-400":"bg-green-100 text-green-800"]])},g(a.expired_at?T(a.expired_at):"永久"),3)]),t("td",bt,[t("div",ft,[t("button",{onClick:c=>E(a),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?"bg-blue-900/20 text-blue-400 hover:bg-blue-900/30":"bg-blue-50 text-blue-600 hover:bg-blue-100"]])},[l(e(I),{class:"w-4 h-4 mr-1.5"}),s[9]||(s[9]=M(" 编辑 "))],10,mt),t("button",{onClick:c=>A(a.id),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?"bg-red-900/20 text-red-400 hover:bg-red-900/30":"bg-red-50 text-red-600 hover:bg-red-100"]])},[l(e(Q),{class:"w-4 h-4 mr-1.5"}),s[10]||(s[10]=M(" 删除 "))],10,vt)])])],2))),128))],2)],2)]),t("div",{class:i(["mt-4 flex items-center justify-between px-6 py-4 border-t",[e(o)?"border-gray-700":"border-gray-200"]])},[t("div",{class:i(["flex items-center text-sm",[e(o)?"text-gray-400":"text-gray-500"]])}," 显示第 "+g((n.value.page-1)*n.value.size+1)+" 到 "+g(Math.min(n.value.page*n.value.size,n.value.total))+" 条,共 "+g(n.value.total)+" 条 ",3),t("div",wt,[t("button",{onClick:s[1]||(s[1]=a=>V(n.value.page-1)),disabled:n.value.page===1,class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?n.value.page===1?"bg-gray-800 text-gray-600 cursor-not-allowed":"bg-gray-800 text-gray-300 hover:bg-gray-700":n.value.page===1?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},[l(e(W),{class:"w-4 h-4"}),s[11]||(s[11]=t("span",{class:"pagination-button"},"上一页",-1))],10,_t),t("div",kt,[(p(!0),u(S,null,$(H.value,a=>(p(),u(S,{key:a},[a!=="..."?(p(),u("button",{key:0,onClick:c=>V(a),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[n.value.page===a?"bg-indigo-600 text-white":e(o)?"bg-gray-800 text-gray-300 hover:bg-gray-700":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},g(a),11,Ct)):(p(),u("span",{key:1,class:i(["px-2",[e(o)?"text-gray-400":"text-gray-500"]])}," ... ",2))],64))),128))]),t("button",{onClick:s[2]||(s[2]=a=>V(n.value.page+1)),disabled:n.value.page>=f.value,class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?n.value.page>=f.value?"bg-gray-800 text-gray-600 cursor-not-allowed":"bg-gray-800 text-gray-300 hover:bg-gray-700":n.value.page>=f.value?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},[s[12]||(s[12]=t("span",{class:"pagination-button"},"上一页",-1)),l(e(X),{class:"w-4 h-4"})],10,Mt)])],2)],2),z.value?(p(),u("div",St,[t("div",{class:"fixed inset-0 bg-gradient-to-br from-gray-900/90 to-black/90 backdrop-blur-sm transition-opacity duration-300",onClick:w}),t("div",zt,[t("div",Vt,[t("div",{class:i(["relative transform overflow-hidden rounded-2xl text-left shadow-2xl transition-all sm:my-8 sm:w-full sm:max-w-xl animate-modal-scale",[e(o)?"bg-gray-800/95 backdrop-blur-md":"bg-white"]])},[t("div",{class:i(["relative px-6 pt-6 pb-4",[e(o)?"bg-gradient-to-r from-gray-800/50 to-gray-700/50":"bg-gradient-to-r from-gray-50 to-white"]])},[t("div",$t,[t("div",jt,[t("div",{class:i(["p-2 rounded-lg",[e(o)?"bg-indigo-500/10":"bg-indigo-50"]])},[l(e(I),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2),t("h3",{class:i(["text-xl font-semibold leading-6",[e(o)?"text-white":"text-gray-900"]])}," 编辑文件信息 ",2)]),t("button",{onClick:w,class:i(["rounded-lg p-2 transition-all duration-200 hover:rotate-90",[e(o)?"text-gray-400 hover:text-white hover:bg-white/10":"text-gray-500 hover:text-gray-700 hover:bg-gray-100"]])},s[13]||(s[13]=[t("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)]),2)])],2),t("div",Ft,[t("div",Dt,[t("div",Ut,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[14]||(s[14]=t("span",null,"取件码",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",It,[x(t("input",{type:"text","onUpdate:modelValue":s[3]||(s[3]=a=>d.value.code=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入取件码"},null,2),[[y,d.value.code]]),t("div",Lt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Tt,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[15]||(s[15]=t("span",null,"文件名称",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Bt,[x(t("input",{type:"text","onUpdate:modelValue":s[4]||(s[4]=a=>d.value.prefix=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入文件名称"},null,2),[[y,d.value.prefix]]),t("div",Pt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Et,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[16]||(s[16]=t("span",null,"文件后缀",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",qt,[x(t("input",{type:"text","onUpdate:modelValue":s[5]||(s[5]=a=>d.value.suffix=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入文件后缀"},null,2),[[y,d.value.suffix]]),t("div",At,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Ht,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[17]||(s[17]=t("span",null,"过期时间",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Kt,[x(t("input",{type:"datetime-local","onUpdate:modelValue":s[6]||(s[6]=a=>d.value.expired_at=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]])},null,2),[[y,d.value.expired_at]]),t("div",Rt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Yt,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[18]||(s[18]=t("span",null,"下载次数限制",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Gt,[x(t("input",{type:"number","onUpdate:modelValue":s[7]||(s[7]=a=>d.value.expired_count=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入下载次数限制"},null,2),[[y,d.value.expired_count]]),t("div",Jt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])])])]),t("div",{class:i(["flex items-center justify-end gap-3 px-6 py-4 border-t bg-gradient-to-b",[e(o)?"border-gray-700/50 from-gray-800/50 to-gray-800":"border-gray-200 from-gray-50 to-white"]])},[t("button",{onClick:w,class:i(["inline-flex items-center justify-center rounded-lg px-4 py-2.5 text-sm font-medium transition-all duration-200",[e(o)?"bg-gray-700/50 text-gray-300 hover:bg-gray-600/50 hover:text-white":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])}," 取消 ",2),t("button",{onClick:q,class:"inline-flex items-center justify-center rounded-lg px-4 py-2.5 text-sm font-medium transition-all duration-200 bg-gradient-to-r from-indigo-600 to-indigo-500 hover:from-indigo-500 hover:to-indigo-600 text-white shadow-lg shadow-indigo-500/25 hover:shadow-indigo-500/35"},[l(e(h),{class:"w-4 h-4 mr-2"}),s[19]||(s[19]=M(" 保存更改 "))])],2)],2)])])])):G("",!0)]))}});export{Xt as default}; diff --git a/themes/2025/assets/FileManageView-CwWUDTzq.css b/themes/2025/assets/FileManageView-CwWUDTzq.css new file mode 100644 index 000000000..3c82fe117 --- /dev/null +++ b/themes/2025/assets/FileManageView-CwWUDTzq.css @@ -0,0 +1 @@ +.animate-modal-scale{animation:modal-scale .3s ease-out}@keyframes modal-scale{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}input:focus{transform:scale(1.002)}@media (max-width: 1024px){.pagination-button{display:none}button:has(.pagination-button){height:36px}} diff --git a/themes/2025/assets/LoginView-DXxv6UDD.js b/themes/2025/assets/LoginView-DXxv6UDD.js new file mode 100644 index 000000000..6aa54ee22 --- /dev/null +++ b/themes/2025/assets/LoginView-DXxv6UDD.js @@ -0,0 +1 @@ +import{I as y,r as u,d as b,u as v,a as w,b as e,n as l,h as o,i as x,g as h,j as k,m as S,v as A,x as V,t as B,B as D,e as j,C as P,_}from"./index-DKQ1YPO4.js";import{B as I}from"./box-Ty09a89y.js";const M=y("adminData",()=>{const d=u(localStorage.getItem("adminPassword")||"");function n(a){d.value=a,localStorage.setItem("token",a)}return{adminPassword:d,updateAdminPwd:n}}),z={class:"mx-auto h-16 w-16 relative"},C={class:"rounded-md shadow-sm -space-y-px"},L=["disabled"],N=b({__name:"LoginView",setup(d){const n=v(),a=u(""),i=u(!1),s=x("isDarkMode"),c=M(),p=()=>{let r=!0;return a.value?a.value.length<6&&(n.showAlert("密码长度至少为6位","error"),r=!1):(n.showAlert("无效的密码","error"),r=!1),r},m=D(),f=async()=>{if(p()){P.post("/admin/login",{password:a.value}).then(r=>{c.updateAdminPwd(r.detail.token),m.push("/admin")}).catch(r=>{n.showAlert(r.response.data.detail,"error")}),i.value=!0;try{await new Promise(r=>setTimeout(r,2e3))}catch{}finally{i.value=!1}}};return(r,t)=>(j(),w("div",{class:l(["min-h-screen flex items-center justify-center py-12 px-4 sm:px-6 lg:px-8 transition-colors duration-200 relative overflow-hidden",o(s)?"bg-gray-900":"bg-gray-50"])},[t[6]||(t[6]=e("div",{class:"absolute inset-0 z-0"},[e("div",{class:"cyber-grid"}),e("div",{class:"floating-particles"})],-1)),e("div",{class:l(["max-w-md w-full space-y-8 backdrop-blur-lg bg-opacity-20 p-8 rounded-xl border border-opacity-20",[o(s)?"bg-gray-800 border-gray-600":"bg-white/70 border-gray-200"]])},[e("div",null,[e("div",z,[t[1]||(t[1]=e("div",{class:"absolute inset-0 bg-gradient-to-r from-cyan-500 via-purple-500 to-pink-500 rounded-full animate-spin-slow"},null,-1)),t[2]||(t[2]=e("div",{class:"absolute -inset-2 bg-gradient-to-r from-cyan-500 via-purple-500 to-pink-500 rounded-full opacity-50 blur-md animate-pulse"},null,-1)),e("div",{class:l(["absolute inset-1 rounded-full flex items-center justify-center",o(s)?"bg-gray-800":"bg-white"])},[h(o(I),{class:l(["h-8 w-8",o(s)?"text-cyan-400":"text-cyan-600"])},null,8,["class"])],2)]),e("h2",{class:l(["mt-6 text-center text-3xl font-extrabold",o(s)?"text-white":"text-gray-900"])}," 登录 ",2)]),e("form",{class:"mt-8",onSubmit:k(f,["prevent"])},[t[5]||(t[5]=e("input",{type:"hidden",name:"remember",value:"true"},null,-1)),e("div",C,[e("div",null,[t[3]||(t[3]=e("label",{for:"password",class:"sr-only"},"密码",-1)),S(e("input",{id:"password",name:"password",type:"password",autocomplete:"current-password",required:"","onUpdate:modelValue":t[0]||(t[0]=g=>a.value=g),class:l(["appearance-none rounded-t-md relative block w-full px-4 py-3 border transition-all duration-200 placeholder-gray-500 focus:outline-none focus:ring-2 focus:ring-cyan-500 focus:border-cyan-500 focus:z-10 sm:text-sm backdrop-blur-sm",o(s)?"bg-gray-800/50 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"bg-white/50 border-gray-300 text-gray-900 hover:border-gray-400"]),placeholder:"密码"},null,2),[[A,a.value]])])]),e("div",null,[e("button",{type:"submit",class:l(["group relative w-full flex justify-center py-3 px-4 border border-transparent text-sm font-medium rounded-md text-white transition-all duration-300 transform hover:scale-[1.02] focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-cyan-500 shadow-lg hover:shadow-cyan-500/50",o(s)?"bg-gradient-to-r from-cyan-500 to-purple-500 hover:from-cyan-600 hover:to-purple-600":"bg-gradient-to-r from-cyan-600 to-purple-600 hover:from-cyan-700 hover:to-purple-700",i.value?"opacity-75 cursor-not-allowed":""]),disabled:i.value},[t[4]||(t[4]=e("span",{class:"absolute left-0 inset-y-0 flex items-center pl-3"},null,-1)),V(" "+B(i.value?"登录中...":"登录"),1)],10,L)])],32)],2)],2))}}),E=_(N,[["__scopeId","data-v-44028ffe"]]);export{E as default}; diff --git a/themes/2025/assets/LoginView-T1LQBbzg.js b/themes/2025/assets/LoginView-T1LQBbzg.js new file mode 100644 index 000000000..1b12db46e --- /dev/null +++ b/themes/2025/assets/LoginView-T1LQBbzg.js @@ -0,0 +1 @@ +import{I as y,r as u,d as b,u as v,a as w,b as e,n as l,h as o,i as x,g as h,j as k,m as S,v as A,x as V,t as B,B as D,e as j,C as P,_}from"./index-C-4-823a.js";import{B as I}from"./box-Btnwq7DC.js";const M=y("adminData",()=>{const d=u(localStorage.getItem("adminPassword")||"");function n(a){d.value=a,localStorage.setItem("token",a)}return{adminPassword:d,updateAdminPwd:n}}),z={class:"mx-auto h-16 w-16 relative"},C={class:"rounded-md shadow-sm -space-y-px"},L=["disabled"],N=b({__name:"LoginView",setup(d){const n=v(),a=u(""),i=u(!1),s=x("isDarkMode"),c=M(),p=()=>{let r=!0;return a.value?a.value.length<6&&(n.showAlert("密码长度至少为6位","error"),r=!1):(n.showAlert("无效的密码","error"),r=!1),r},m=D(),f=async()=>{if(p()){P.post("/admin/login",{password:a.value}).then(r=>{c.updateAdminPwd(r.detail.token),m.push("/admin")}).catch(r=>{n.showAlert(r.response.data.detail,"error")}),i.value=!0;try{await new Promise(r=>setTimeout(r,2e3))}catch{}finally{i.value=!1}}};return(r,t)=>(j(),w("div",{class:l(["min-h-screen flex items-center justify-center py-12 px-4 sm:px-6 lg:px-8 transition-colors duration-200 relative overflow-hidden",o(s)?"bg-gray-900":"bg-gray-50"])},[t[6]||(t[6]=e("div",{class:"absolute inset-0 z-0"},[e("div",{class:"cyber-grid"}),e("div",{class:"floating-particles"})],-1)),e("div",{class:l(["max-w-md w-full space-y-8 backdrop-blur-lg bg-opacity-20 p-8 rounded-xl border border-opacity-20",[o(s)?"bg-gray-800 border-gray-600":"bg-white/70 border-gray-200"]])},[e("div",null,[e("div",z,[t[1]||(t[1]=e("div",{class:"absolute inset-0 bg-gradient-to-r from-cyan-500 via-purple-500 to-pink-500 rounded-full animate-spin-slow"},null,-1)),t[2]||(t[2]=e("div",{class:"absolute -inset-2 bg-gradient-to-r from-cyan-500 via-purple-500 to-pink-500 rounded-full opacity-50 blur-md animate-pulse"},null,-1)),e("div",{class:l(["absolute inset-1 rounded-full flex items-center justify-center",o(s)?"bg-gray-800":"bg-white"])},[h(o(I),{class:l(["h-8 w-8",o(s)?"text-cyan-400":"text-cyan-600"])},null,8,["class"])],2)]),e("h2",{class:l(["mt-6 text-center text-3xl font-extrabold",o(s)?"text-white":"text-gray-900"])}," 登录 ",2)]),e("form",{class:"mt-8",onSubmit:k(f,["prevent"])},[t[5]||(t[5]=e("input",{type:"hidden",name:"remember",value:"true"},null,-1)),e("div",C,[e("div",null,[t[3]||(t[3]=e("label",{for:"password",class:"sr-only"},"密码",-1)),S(e("input",{id:"password",name:"password",type:"password",autocomplete:"current-password",required:"","onUpdate:modelValue":t[0]||(t[0]=g=>a.value=g),class:l(["appearance-none rounded-t-md relative block w-full px-4 py-3 border transition-all duration-200 placeholder-gray-500 focus:outline-none focus:ring-2 focus:ring-cyan-500 focus:border-cyan-500 focus:z-10 sm:text-sm backdrop-blur-sm",o(s)?"bg-gray-800/50 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"bg-white/50 border-gray-300 text-gray-900 hover:border-gray-400"]),placeholder:"密码"},null,2),[[A,a.value]])])]),e("div",null,[e("button",{type:"submit",class:l(["group relative w-full flex justify-center py-3 px-4 border border-transparent text-sm font-medium rounded-md text-white transition-all duration-300 transform hover:scale-[1.02] focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-cyan-500 shadow-lg hover:shadow-cyan-500/50",o(s)?"bg-gradient-to-r from-cyan-500 to-purple-500 hover:from-cyan-600 hover:to-purple-600":"bg-gradient-to-r from-cyan-600 to-purple-600 hover:from-cyan-700 hover:to-purple-700",i.value?"opacity-75 cursor-not-allowed":""]),disabled:i.value},[t[4]||(t[4]=e("span",{class:"absolute left-0 inset-y-0 flex items-center pl-3"},null,-1)),V(" "+B(i.value?"登录中...":"登录"),1)],10,L)])],32)],2)],2))}}),E=_(N,[["__scopeId","data-v-44028ffe"]]);export{E as default}; diff --git a/themes/2025/assets/LoginView-zMyguVQQ.css b/themes/2025/assets/LoginView-zMyguVQQ.css new file mode 100644 index 000000000..018cd5990 --- /dev/null +++ b/themes/2025/assets/LoginView-zMyguVQQ.css @@ -0,0 +1 @@ +@keyframes spin-44028ffe{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin-slow[data-v-44028ffe]{animation:spin-44028ffe 8s linear infinite}.fade-enter-active[data-v-44028ffe],.fade-leave-active[data-v-44028ffe]{transition:opacity .3s ease}.fade-enter-from[data-v-44028ffe],.fade-leave-to[data-v-44028ffe]{opacity:0}input[data-v-44028ffe]:focus{box-shadow:0 0 15px #6366f14d}button[data-v-44028ffe]:active:not(:disabled){transform:scale(.98)}.cyber-grid[data-v-44028ffe]{background-image:linear-gradient(transparent 95%,#6366f11a 50%),linear-gradient(90deg,transparent 95%,rgba(99,102,241,.1) 50%);background-size:30px 30px;width:100%;height:100%;position:absolute;opacity:.5}.floating-particles[data-v-44028ffe]{position:absolute;width:100%;height:100%;background:radial-gradient(circle at center,transparent 0%,transparent 100%);filter:url(#gooey)}.floating-particles[data-v-44028ffe]:before,.floating-particles[data-v-44028ffe]:after{content:"";position:absolute;width:100%;height:100%;background-image:radial-gradient(circle at center,rgba(99,102,241,.1) 0%,transparent 50%);animation:float-44028ffe 20s infinite linear}.floating-particles[data-v-44028ffe]:after{animation-delay:-10s;opacity:.5}@keyframes float-44028ffe{0%{transform:translate(0) scale(1)}50%{transform:translate(50px,50px) scale(1.5)}to{transform:translate(0) scale(1)}}button[data-v-44028ffe]:hover:not(:disabled){box-shadow:0 0 25px #6366f180}.fade-enter-active[data-v-44028ffe],.fade-leave-active[data-v-44028ffe]{transition:all .5s cubic-bezier(.4,0,.2,1)} diff --git a/themes/2025/assets/RetrievewFileView-BgLHFGkc.css b/themes/2025/assets/RetrievewFileView-BgLHFGkc.css new file mode 100644 index 000000000..d180fe6a2 --- /dev/null +++ b/themes/2025/assets/RetrievewFileView-BgLHFGkc.css @@ -0,0 +1 @@ +@keyframes blob-3129e8a3{0%,to{transform:translate(0) scale(1)}25%{transform:translate(20px,-50px) scale(1.1)}50%{transform:translate(-20px,20px) scale(.9)}75%{transform:translate(50px,50px) scale(1.05)}}.animate-blob-1[data-v-3129e8a3]{animation:blob-3129e8a3 25s infinite}.animate-blob-2[data-v-3129e8a3]{animation:blob-3129e8a3 30s infinite}.animate-blob-3[data-v-3129e8a3]{animation:blob-3129e8a3 35s infinite}.animate-blob-4[data-v-3129e8a3]{animation:blob-3129e8a3 40s infinite}.animate-spin-slow[data-v-3129e8a3]{animation:spin-3129e8a3 8s linear infinite}@keyframes spin-3129e8a3{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-enter-active[data-v-3129e8a3],.fade-leave-active[data-v-3129e8a3]{transition:opacity .3s ease}.fade-enter-from[data-v-3129e8a3],.fade-leave-to[data-v-3129e8a3]{opacity:0}.list-enter-active[data-v-3129e8a3],.list-leave-active[data-v-3129e8a3]{transition:all .5s ease}.list-enter-from[data-v-3129e8a3],.list-leave-to[data-v-3129e8a3]{opacity:0;transform:translate(30px)}.drawer-enter-active[data-v-3129e8a3],.drawer-leave-active[data-v-3129e8a3]{transition:transform .3s ease}.drawer-enter-from[data-v-3129e8a3],.drawer-leave-to[data-v-3129e8a3]{transform:translate(100%)}.w-97-100[data-v-3129e8a3]{width:97%}[data-v-3129e8a3] .prose{text-align:left}[data-v-3129e8a3] .prose h1,[data-v-3129e8a3] .prose h2,[data-v-3129e8a3] .prose h3,[data-v-3129e8a3] .prose h4,[data-v-3129e8a3] .prose h5,[data-v-3129e8a3] .prose h6{color:#4f46e5}@media (prefers-color-scheme: dark){[data-v-3129e8a3] .prose h1,[data-v-3129e8a3] .prose h2,[data-v-3129e8a3] .prose h3,[data-v-3129e8a3] .prose h4,[data-v-3129e8a3] .prose h5,[data-v-3129e8a3] .prose h6{color:#818cf8}}@media (min-width: 640px){.sm\:w-120[data-v-3129e8a3]{width:30rem}}.custom-scrollbar[data-v-3129e8a3]{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.3) transparent}.custom-scrollbar[data-v-3129e8a3]::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar[data-v-3129e8a3]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar[data-v-3129e8a3]::-webkit-scrollbar-thumb{background-color:#9ca3af4d;border-radius:3px;-webkit-transition:background-color .3s;transition:background-color .3s}.custom-scrollbar[data-v-3129e8a3]::-webkit-scrollbar-thumb:hover{background-color:#9ca3af80}[data-v-3129e8a3] [class*=dark] .custom-scrollbar{scrollbar-color:rgba(75,85,99,.3) transparent}[data-v-3129e8a3] [class*=dark] .custom-scrollbar::-webkit-scrollbar-thumb{background-color:#4b55634d}[data-v-3129e8a3] [class*=dark] .custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:#4b556380} diff --git a/themes/2025/assets/RetrievewFileView-DyKPLNPu.js b/themes/2025/assets/RetrievewFileView-DyKPLNPu.js new file mode 100644 index 000000000..d3bf26cfc --- /dev/null +++ b/themes/2025/assets/RetrievewFileView-DyKPLNPu.js @@ -0,0 +1,76 @@ +var Ue=Object.defineProperty;var Fe=(d,e,t)=>e in d?Ue(d,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):d[e]=t;var v=(d,e,t)=>Fe(d,typeof e!="symbol"?e+"":e,t);import{c as re,_ as Ze,u as Oe,D as Qe,r as q,o as He,E as Ne,w as Ve,f as We,a as L,b as h,g as _,n as b,h as f,i as Ge,t as j,j as Xe,m as Ke,l as ee,v as Je,k as O,x as P,y as Ye,X as ke,z as et,F as tt,s as nt,T as ae,B as st,e as M,C as it}from"./index-DKQ1YPO4.js";import{u as rt,S as ot,C as lt,Q as at,d as ct,E as ut}from"./clipboard-BhvW87y2.js";import{B as ht}from"./box-Ty09a89y.js";import{F as be}from"./file-D8mQlyUF.js";import{H as pt}from"./hard-drive-C37_tD5A.js";import{T as dt}from"./trash-FNvP9-P8.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const ft=re("ArrowRightIcon",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const gt=re("CalendarIcon",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const xt=re("CopyIcon",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const we=re("DownloadIcon",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]);var Q=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Te={exports:{}};(function(d,e){(function(t,n){n()})(Q,function(){function t(c,l){return typeof l>"u"?l={autoBom:!1}:typeof l!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),l={autoBom:!l}),l.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(c.type)?new Blob(["\uFEFF",c],{type:c.type}):c}function n(c,l,u){var p=new XMLHttpRequest;p.open("GET",c),p.responseType="blob",p.onload=function(){a(p.response,l,u)},p.onerror=function(){console.error("could not download file")},p.send()}function s(c){var l=new XMLHttpRequest;l.open("HEAD",c,!1);try{l.send()}catch{}return 200<=l.status&&299>=l.status}function i(c){try{c.dispatchEvent(new MouseEvent("click"))}catch{var l=document.createEvent("MouseEvents");l.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),c.dispatchEvent(l)}}var r=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof Q=="object"&&Q.global===Q?Q:void 0,o=r.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),a=r.saveAs||(typeof window!="object"||window!==r?function(){}:"download"in HTMLAnchorElement.prototype&&!o?function(c,l,u){var p=r.URL||r.webkitURL,k=document.createElement("a");l=l||c.name||"download",k.download=l,k.rel="noopener",typeof c=="string"?(k.href=c,k.origin===location.origin?i(k):s(k.href)?n(c,l,u):i(k,k.target="_blank")):(k.href=p.createObjectURL(c),setTimeout(function(){p.revokeObjectURL(k.href)},4e4),setTimeout(function(){i(k)},0))}:"msSaveOrOpenBlob"in navigator?function(c,l,u){if(l=l||c.name||"download",typeof c!="string")navigator.msSaveOrOpenBlob(t(c,u),l);else if(s(c))n(c,l,u);else{var p=document.createElement("a");p.href=c,p.target="_blank",setTimeout(function(){i(p)})}}:function(c,l,u,p){if(p=p||open("","_blank"),p&&(p.document.title=p.document.body.innerText="downloading..."),typeof c=="string")return n(c,l,u);var k=c.type==="application/octet-stream",w=/constructor/i.test(r.HTMLElement)||r.safari,T=/CriOS\/[\d]+/.test(navigator.userAgent);if((T||k&&w||o)&&typeof FileReader<"u"){var R=new FileReader;R.onloadend=function(){var E=R.result;E=T?E:E.replace(/^data:[^;]*;/,"data:attachment/file;"),p?p.location.href=E:location=E,p=null},R.readAsDataURL(c)}else{var B=r.URL||r.webkitURL,I=B.createObjectURL(c);p?p.location=I:location.href=I,p=null,setTimeout(function(){B.revokeObjectURL(I)},4e4)}});r.saveAs=a.saveAs=a,d.exports=a})})(Te);var kt=Te.exports;function ue(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let F=ue();function Re(d){F=d}const ze=/[&<>"']/,bt=new RegExp(ze.source,"g"),Se=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,wt=new RegExp(Se.source,"g"),mt={"&":"&","<":"<",">":">",'"':""","'":"'"},me=d=>mt[d];function z(d,e){if(e){if(ze.test(d))return d.replace(bt,me)}else if(Se.test(d))return d.replace(wt,me);return d}const yt=/(^|[^\[])\^/g;function y(d,e){let t=typeof d=="string"?d:d.source;e=e||"";const n={replace:(s,i)=>{let r=typeof i=="string"?i:i.source;return r=r.replace(yt,"$1"),t=t.replace(s,r),n},getRegex:()=>new RegExp(t,e)};return n}function ye(d){try{d=encodeURI(d).replace(/%25/g,"%")}catch{return null}return d}const V={exec:()=>null};function ve(d,e){const t=d.replace(/\|/g,(i,r,o)=>{let a=!1,c=r;for(;--c>=0&&o[c]==="\\";)a=!a;return a?"|":" |"}),n=t.split(/ \|/);let s=0;if(n[0].trim()||n.shift(),n.length>0&&!n[n.length-1].trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length{const i=s.match(/^\s+/);if(i===null)return s;const[r]=i;return r.length>=n.length?s.slice(n.length):s}).join(` +`)}class ne{constructor(e){v(this,"options");v(this,"rules");v(this,"lexer");this.options=e||F}space(e){const t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){const t=this.rules.block.code.exec(e);if(t){const n=t[0].replace(/^(?: {1,4}| {0,3}\t)/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:H(n,` +`)}}}fences(e){const t=this.rules.block.fences.exec(e);if(t){const n=t[0],s=_t(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:s}}}heading(e){const t=this.rules.block.heading.exec(e);if(t){let n=t[2].trim();if(/#$/.test(n)){const s=H(n,"#");(this.options.pedantic||!s||/ $/.test(s))&&(n=s.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){const t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:H(t[0],` +`)}}blockquote(e){const t=this.rules.block.blockquote.exec(e);if(t){let n=H(t[0],` +`).split(` +`),s="",i="";const r=[];for(;n.length>0;){let o=!1;const a=[];let c;for(c=0;c/.test(n[c]))a.push(n[c]),o=!0;else if(!o)a.push(n[c]);else break;n=n.slice(c);const l=a.join(` +`),u=l.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` + $1`).replace(/^ {0,3}>[ \t]?/gm,"");s=s?`${s} +${l}`:l,i=i?`${i} +${u}`:u;const p=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(u,r,!0),this.lexer.state.top=p,n.length===0)break;const k=r[r.length-1];if((k==null?void 0:k.type)==="code")break;if((k==null?void 0:k.type)==="blockquote"){const w=k,T=w.raw+` +`+n.join(` +`),R=this.blockquote(T);r[r.length-1]=R,s=s.substring(0,s.length-w.raw.length)+R.raw,i=i.substring(0,i.length-w.text.length)+R.text;break}else if((k==null?void 0:k.type)==="list"){const w=k,T=w.raw+` +`+n.join(` +`),R=this.list(T);r[r.length-1]=R,s=s.substring(0,s.length-k.raw.length)+R.raw,i=i.substring(0,i.length-w.raw.length)+R.raw,n=T.substring(r[r.length-1].raw.length).split(` +`);continue}}return{type:"blockquote",raw:s,tokens:r,text:i}}}list(e){let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim();const s=n.length>1,i={type:"list",raw:"",ordered:s,start:s?+n.slice(0,-1):"",loose:!1,items:[]};n=s?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=s?n:"[*+-]");const r=new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`);let o=!1;for(;e;){let a=!1,c="",l="";if(!(t=r.exec(e))||this.rules.block.hr.test(e))break;c=t[0],e=e.substring(c.length);let u=t[2].split(` +`,1)[0].replace(/^\t+/,B=>" ".repeat(3*B.length)),p=e.split(` +`,1)[0],k=!u.trim(),w=0;if(this.options.pedantic?(w=2,l=u.trimStart()):k?w=t[1].length+1:(w=t[2].search(/[^ ]/),w=w>4?1:w,l=u.slice(w),w+=t[1].length),k&&/^[ \t]*$/.test(p)&&(c+=p+` +`,e=e.substring(p.length+1),a=!0),!a){const B=new RegExp(`^ {0,${Math.min(3,w-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),I=new RegExp(`^ {0,${Math.min(3,w-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),E=new RegExp(`^ {0,${Math.min(3,w-1)}}(?:\`\`\`|~~~)`),K=new RegExp(`^ {0,${Math.min(3,w-1)}}#`),le=new RegExp(`^ {0,${Math.min(3,w-1)}}<(?:[a-z].*>|!--)`,"i");for(;e;){const Z=e.split(` +`,1)[0];let D;if(p=Z,this.options.pedantic?(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," "),D=p):D=p.replace(/\t/g," "),E.test(p)||K.test(p)||le.test(p)||B.test(p)||I.test(p))break;if(D.search(/[^ ]/)>=w||!p.trim())l+=` +`+D.slice(w);else{if(k||u.replace(/\t/g," ").search(/[^ ]/)>=4||E.test(u)||K.test(u)||I.test(u))break;l+=` +`+p}!k&&!p.trim()&&(k=!0),c+=Z+` +`,e=e.substring(Z.length+1),u=D.slice(w)}}i.loose||(o?i.loose=!0:/\n[ \t]*\n[ \t]*$/.test(c)&&(o=!0));let T=null,R;this.options.gfm&&(T=/^\[[ xX]\] /.exec(l),T&&(R=T[0]!=="[ ] ",l=l.replace(/^\[[ xX]\] +/,""))),i.items.push({type:"list_item",raw:c,task:!!T,checked:R,loose:!1,text:l,tokens:[]}),i.raw+=c}i.items[i.items.length-1].raw=i.items[i.items.length-1].raw.trimEnd(),i.items[i.items.length-1].text=i.items[i.items.length-1].text.trimEnd(),i.raw=i.raw.trimEnd();for(let a=0;au.type==="space"),l=c.length>0&&c.some(u=>/\n.*\n/.test(u.raw));i.loose=l}if(i.loose)for(let a=0;a$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:n,raw:t[0],href:s,title:i}}}table(e){const t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;const n=ve(t[1]),s=t[2].replace(/^\||\| *$/g,"").split("|"),i=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` +`):[],r={type:"table",raw:t[0],header:[],align:[],rows:[]};if(n.length===s.length){for(const o of s)/^ *-+: *$/.test(o)?r.align.push("right"):/^ *:-+: *$/.test(o)?r.align.push("center"):/^ *:-+ *$/.test(o)?r.align.push("left"):r.align.push(null);for(let o=0;o({text:a,tokens:this.lexer.inline(a),header:!1,align:r.align[c]})));return r}}lheading(e){const t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[2].charAt(0)==="="?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){const t=this.rules.block.paragraph.exec(e);if(t){const n=t[1].charAt(t[1].length-1)===` +`?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:n,tokens:this.lexer.inline(n)}}}text(e){const t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){const t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:z(t[1])}}tag(e){const t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){const t=this.rules.inline.link.exec(e);if(t){const n=t[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;const r=H(n.slice(0,-1),"\\");if((n.length-r.length)%2===0)return}else{const r=vt(t[2],"()");if(r>-1){const a=(t[0].indexOf("!")===0?5:4)+t[1].length+r;t[2]=t[2].substring(0,r),t[0]=t[0].substring(0,a).trim(),t[3]=""}}let s=t[2],i="";if(this.options.pedantic){const r=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(s);r&&(s=r[1],i=r[3])}else i=t[3]?t[3].slice(1,-1):"";return s=s.trim(),/^$/.test(n)?s=s.slice(1):s=s.slice(1,-1)),_e(t,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){const s=(n[2]||n[1]).replace(/\s+/g," "),i=t[s.toLowerCase()];if(!i){const r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return _e(n,i,n[0],this.lexer)}}emStrong(e,t,n=""){let s=this.rules.inline.emStrongLDelim.exec(e);if(!s||s[3]&&n.match(/[\p{L}\p{N}]/u))return;if(!(s[1]||s[2]||"")||!n||this.rules.inline.punctuation.exec(n)){const r=[...s[0]].length-1;let o,a,c=r,l=0;const u=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(u.lastIndex=0,t=t.slice(-1*e.length+r);(s=u.exec(t))!=null;){if(o=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!o)continue;if(a=[...o].length,s[3]||s[4]){c+=a;continue}else if((s[5]||s[6])&&r%3&&!((r+a)%3)){l+=a;continue}if(c-=a,c>0)continue;a=Math.min(a,a+c+l);const p=[...s[0]][0].length,k=e.slice(0,r+s.index+p+a);if(Math.min(r,a)%2){const T=k.slice(1,-1);return{type:"em",raw:k,text:T,tokens:this.lexer.inlineTokens(T)}}const w=k.slice(2,-2);return{type:"strong",raw:k,text:w,tokens:this.lexer.inlineTokens(w)}}}}codespan(e){const t=this.rules.inline.code.exec(e);if(t){let n=t[2].replace(/\n/g," ");const s=/[^ ]/.test(n),i=/^ /.test(n)&&/ $/.test(n);return s&&i&&(n=n.substring(1,n.length-1)),n=z(n,!0),{type:"codespan",raw:t[0],text:n}}}br(e){const t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){const t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){const t=this.rules.inline.autolink.exec(e);if(t){let n,s;return t[2]==="@"?(n=z(t[1]),s="mailto:"+n):(n=z(t[1]),s=n),{type:"link",raw:t[0],text:n,href:s,tokens:[{type:"text",raw:n,text:n}]}}}url(e){var n;let t;if(t=this.rules.inline.url.exec(e)){let s,i;if(t[2]==="@")s=z(t[0]),i="mailto:"+s;else{let r;do r=t[0],t[0]=((n=this.rules.inline._backpedal.exec(t[0]))==null?void 0:n[0])??"";while(r!==t[0]);s=z(t[0]),t[1]==="www."?i="http://"+t[0]:i=t[0]}return{type:"link",raw:t[0],text:s,href:i,tokens:[{type:"text",raw:s,text:s}]}}}inlineText(e){const t=this.rules.inline.text.exec(e);if(t){let n;return this.lexer.state.inRawBlock?n=t[0]:n=z(t[0]),{type:"text",raw:t[0],text:n}}}}const $t=/^(?:[ \t]*(?:\n|$))+/,Tt=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Rt=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,G=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,zt=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Ae=/(?:[*+-]|\d{1,9}[.)])/,Ee=y(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Ae).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),he=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,St=/^[^\n]+/,pe=/(?!\s*\])(?:\\.|[^\[\]\\])+/,At=y(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",pe).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Et=y(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Ae).getRegex(),oe="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",de=/|$))/,Ct=y("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",de).replace("tag",oe).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Ce=y(he).replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex(),It=y(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Ce).getRegex(),fe={blockquote:It,code:Tt,def:At,fences:Rt,heading:zt,hr:G,html:Ct,lheading:Ee,list:Et,newline:$t,paragraph:Ce,table:V,text:St},$e=y("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex(),Lt={...fe,table:$e,paragraph:y(he).replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",$e).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex()},Mt={...fe,html:y(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",de).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:V,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:y(he).replace("hr",G).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",Ee).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Ie=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Bt=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Le=/^( {2,}|\\)\n(?!\s*$)/,jt=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,Pt=y(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,X).getRegex(),Ut=y("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,X).getRegex(),Ft=y("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,X).getRegex(),Zt=y(/\\([punct])/,"gu").replace(/punct/g,X).getRegex(),Ot=y(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Qt=y(de).replace("(?:-->|$)","-->").getRegex(),Ht=y("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Qt).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),se=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Nt=y(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",se).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Me=y(/^!?\[(label)\]\[(ref)\]/).replace("label",se).replace("ref",pe).getRegex(),Be=y(/^!?\[(ref)\](?:\[\])?/).replace("ref",pe).getRegex(),Vt=y("reflink|nolink(?!\\()","g").replace("reflink",Me).replace("nolink",Be).getRegex(),ge={_backpedal:V,anyPunctuation:Zt,autolink:Ot,blockSkip:qt,br:Le,code:Bt,del:V,emStrongLDelim:Pt,emStrongRDelimAst:Ut,emStrongRDelimUnd:Ft,escape:Ie,link:Nt,nolink:Be,punctuation:Dt,reflink:Me,reflinkSearch:Vt,tag:Ht,text:jt,url:V},Wt={...ge,link:y(/^!?\[(label)\]\((.*?)\)/).replace("label",se).getRegex(),reflink:y(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",se).getRegex()},ce={...ge,escape:y(Ie).replace("])","~|])").getRegex(),url:y(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\(s=o.call({lexer:this},e,t))?(e=e.substring(s.raw.length),t.push(s),!0):!1))){if(s=this.tokenizer.space(e)){e=e.substring(s.raw.length),s.raw.length===1&&t.length>0?t[t.length-1].raw+=` +`:t.push(s);continue}if(s=this.tokenizer.code(e)){e=e.substring(s.raw.length),i=t[t.length-1],i&&(i.type==="paragraph"||i.type==="text")?(i.raw+=` +`+s.raw,i.text+=` +`+s.text,this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s);continue}if(s=this.tokenizer.fences(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.heading(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.hr(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.blockquote(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.list(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.html(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.def(e)){e=e.substring(s.raw.length),i=t[t.length-1],i&&(i.type==="paragraph"||i.type==="text")?(i.raw+=` +`+s.raw,i.text+=` +`+s.raw,this.inlineQueue[this.inlineQueue.length-1].src=i.text):this.tokens.links[s.tag]||(this.tokens.links[s.tag]={href:s.href,title:s.title});continue}if(s=this.tokenizer.table(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.lheading(e)){e=e.substring(s.raw.length),t.push(s);continue}if(r=e,this.options.extensions&&this.options.extensions.startBlock){let o=1/0;const a=e.slice(1);let c;this.options.extensions.startBlock.forEach(l=>{c=l.call({lexer:this},a),typeof c=="number"&&c>=0&&(o=Math.min(o,c))}),o<1/0&&o>=0&&(r=e.substring(0,o+1))}if(this.state.top&&(s=this.tokenizer.paragraph(r))){i=t[t.length-1],n&&(i==null?void 0:i.type)==="paragraph"?(i.raw+=` +`+s.raw,i.text+=` +`+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s),n=r.length!==e.length,e=e.substring(s.raw.length);continue}if(s=this.tokenizer.text(e)){e=e.substring(s.raw.length),i=t[t.length-1],i&&i.type==="text"?(i.raw+=` +`+s.raw,i.text+=` +`+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s);continue}if(e){const o="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw new Error(o)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n,s,i,r=e,o,a,c;if(this.tokens.links){const l=Object.keys(this.tokens.links);if(l.length>0)for(;(o=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null;)l.includes(o[0].slice(o[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(o=this.tokenizer.rules.inline.blockSkip.exec(r))!=null;)r=r.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(o=this.tokenizer.rules.inline.anyPunctuation.exec(r))!=null;)r=r.slice(0,o.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(a||(c=""),a=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(l=>(n=l.call({lexer:this},e,t))?(e=e.substring(n.raw.length),t.push(n),!0):!1))){if(n=this.tokenizer.escape(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.tag(e)){e=e.substring(n.raw.length),s=t[t.length-1],s&&n.type==="text"&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(n=this.tokenizer.link(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(n.raw.length),s=t[t.length-1],s&&n.type==="text"&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(n=this.tokenizer.emStrong(e,r,c)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.codespan(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.br(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.del(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.autolink(e)){e=e.substring(n.raw.length),t.push(n);continue}if(!this.state.inLink&&(n=this.tokenizer.url(e))){e=e.substring(n.raw.length),t.push(n);continue}if(i=e,this.options.extensions&&this.options.extensions.startInline){let l=1/0;const u=e.slice(1);let p;this.options.extensions.startInline.forEach(k=>{p=k.call({lexer:this},u),typeof p=="number"&&p>=0&&(l=Math.min(l,p))}),l<1/0&&l>=0&&(i=e.substring(0,l+1))}if(n=this.tokenizer.inlineText(i)){e=e.substring(n.raw.length),n.raw.slice(-1)!=="_"&&(c=n.raw.slice(-1)),a=!0,s=t[t.length-1],s&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(e){const l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return t}}class ie{constructor(e){v(this,"options");v(this,"parser");this.options=e||F}space(e){return""}code({text:e,lang:t,escaped:n}){var r;const s=(r=(t||"").match(/^\S*/))==null?void 0:r[0],i=e.replace(/\n$/,"")+` +`;return s?'
'+(n?i:z(i,!0))+`
+`:"
"+(n?i:z(i,!0))+`
+`}blockquote({tokens:e}){return`
+${this.parser.parse(e)}
+`}html({text:e}){return e}heading({tokens:e,depth:t}){return`${this.parser.parseInline(e)} +`}hr(e){return`
+`}list(e){const t=e.ordered,n=e.start;let s="";for(let o=0;o +`+s+" +`}listitem(e){let t="";if(e.task){const n=this.checkbox({checked:!!e.checked});e.loose?e.tokens.length>0&&e.tokens[0].type==="paragraph"?(e.tokens[0].text=n+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&e.tokens[0].tokens[0].type==="text"&&(e.tokens[0].tokens[0].text=n+" "+e.tokens[0].tokens[0].text)):e.tokens.unshift({type:"text",raw:n+" ",text:n+" "}):t+=n+" "}return t+=this.parser.parse(e.tokens,!!e.loose),`
  • ${t}
  • +`}checkbox({checked:e}){return"'}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    +`}table(e){let t="",n="";for(let i=0;i${s}`),` + +`+t+` +`+s+`
    +`}tablerow({text:e}){return` +${e} +`}tablecell(e){const t=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+` +`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${e}`}br(e){return"
    "}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:n}){const s=this.parser.parseInline(n),i=ye(e);if(i===null)return s;e=i;let r='
    ",r}image({href:e,title:t,text:n}){const s=ye(e);if(s===null)return n;e=s;let i=`${n}{const c=o[a].flat(1/0);n=n.concat(this.walkTokens(c,t))}):o.tokens&&(n=n.concat(this.walkTokens(o.tokens,t)))}}return n}use(...e){const t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(n=>{const s={...n};if(s.async=this.defaults.async||s.async||!1,n.extensions&&(n.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){const r=t.renderers[i.name];r?t.renderers[i.name]=function(...o){let a=i.renderer.apply(this,o);return a===!1&&(a=r.apply(this,o)),a}:t.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const r=t[i.level];r?r.unshift(i.tokenizer):t[i.level]=[i.tokenizer],i.start&&(i.level==="block"?t.startBlock?t.startBlock.push(i.start):t.startBlock=[i.start]:i.level==="inline"&&(t.startInline?t.startInline.push(i.start):t.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(t.childTokens[i.name]=i.childTokens)}),s.extensions=t),n.renderer){const i=this.defaults.renderer||new ie(this.defaults);for(const r in n.renderer){if(!(r in i))throw new Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;const o=r,a=n.renderer[o],c=i[o];i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u||""}}s.renderer=i}if(n.tokenizer){const i=this.defaults.tokenizer||new ne(this.defaults);for(const r in n.tokenizer){if(!(r in i))throw new Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;const o=r,a=n.tokenizer[o],c=i[o];i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u}}s.tokenizer=i}if(n.hooks){const i=this.defaults.hooks||new W;for(const r in n.hooks){if(!(r in i))throw new Error(`hook '${r}' does not exist`);if(["options","block"].includes(r))continue;const o=r,a=n.hooks[o],c=i[o];W.passThroughHooks.has(r)?i[o]=l=>{if(this.defaults.async)return Promise.resolve(a.call(i,l)).then(p=>c.call(i,p));const u=a.call(i,l);return c.call(i,u)}:i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u}}s.hooks=i}if(n.walkTokens){const i=this.defaults.walkTokens,r=n.walkTokens;s.walkTokens=function(o){let a=[];return a.push(r.call(this,o)),i&&(a=a.concat(i.call(this,o))),a}}this.defaults={...this.defaults,...s}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return S.lex(e,t??this.defaults)}parser(e,t){return A.parse(e,t??this.defaults)}parseMarkdown(e){return(n,s)=>{const i={...s},r={...this.defaults,...i},o=this.onError(!!r.silent,!!r.async);if(this.defaults.async===!0&&i.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof n>"u"||n===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof n!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));r.hooks&&(r.hooks.options=r,r.hooks.block=e);const a=r.hooks?r.hooks.provideLexer():e?S.lex:S.lexInline,c=r.hooks?r.hooks.provideParser():e?A.parse:A.parseInline;if(r.async)return Promise.resolve(r.hooks?r.hooks.preprocess(n):n).then(l=>a(l,r)).then(l=>r.hooks?r.hooks.processAllTokens(l):l).then(l=>r.walkTokens?Promise.all(this.walkTokens(l,r.walkTokens)).then(()=>l):l).then(l=>c(l,r)).then(l=>r.hooks?r.hooks.postprocess(l):l).catch(o);try{r.hooks&&(n=r.hooks.preprocess(n));let l=a(n,r);r.hooks&&(l=r.hooks.processAllTokens(l)),r.walkTokens&&this.walkTokens(l,r.walkTokens);let u=c(l,r);return r.hooks&&(u=r.hooks.postprocess(u)),u}catch(l){return o(l)}}}onError(e,t){return n=>{if(n.message+=` +Please report this to https://github.com/markedjs/marked.`,e){const s="

    An error occurred:

    "+z(n.message+"",!0)+"
    ";return t?Promise.resolve(s):s}if(t)return Promise.reject(n);throw n}}}const U=new Xt;function m(d,e){return U.parse(d,e)}m.options=m.setOptions=function(d){return U.setOptions(d),m.defaults=U.defaults,Re(m.defaults),m};m.getDefaults=ue;m.defaults=F;m.use=function(...d){return U.use(...d),m.defaults=U.defaults,Re(m.defaults),m};m.walkTokens=function(d,e){return U.walkTokens(d,e)};m.parseInline=U.parseInline;m.Parser=A;m.parser=A.parse;m.Renderer=ie;m.TextRenderer=xe;m.Lexer=S;m.lexer=S.lex;m.Tokenizer=ne;m.Hooks=W;m.parse=m;m.options;m.setOptions;m.use;m.walkTokens;m.parseInline;A.parse;S.lex;const Kt={class:"min-h-screen flex items-center justify-center p-4 overflow-hidden transition-colors duration-300"},Jt={class:"w-full max-w-md relative z-10"},Yt={class:"p-8"},en={class:"flex justify-center mb-8"},tn={class:"rounded-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 p-1 animate-spin-slow"},nn={class:"rounded-full bg-gray-900 p-2"},sn={class:"mb-6 relative"},rn={class:"relative"},on=["readonly"],ln={key:0,class:"absolute inset-y-0 right-0 flex items-center pr-3"},an=["disabled"],cn={class:"flex items-center justify-center relative z-10"},un={class:"mt-6 text-center"},hn={class:"flex-grow overflow-y-auto p-6"},pn={class:"flex-shrink-0 mr-4"},dn={class:"flex-grow min-w-0 mr-4"},fn={class:"flex-shrink-0 flex space-x-2"},gn=["onClick"],xn=["onClick"],kn=["onClick"],bn={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},wn={class:"space-y-4"},mn={class:"flex items-center"},yn={class:"flex items-center"},vn={class:"flex items-center"},_n={class:"flex items-center"},$n={key:0,class:"ml-2"},Tn={key:1},Rn=["href"],zn={class:"mt-6 flex flex-col items-center"},Sn={class:"bg-white p-2 rounded-lg shadow-md"},An={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},En={class:"flex justify-between items-center mb-4 flex-shrink-0"},Cn={class:"flex items-center gap-3"},In={class:"flex-1 overflow-y-auto custom-scrollbar"},Ln=["innerHTML"],Mn={__name:"RetrievewFileView",setup(d){const e=Oe(),t=window.location.origin,n=st(),s=Ge("isDarkMode"),i=rt(),{receiveData:r}=Qe(i),o=q(""),a=q({readonly:!1,loading:!1}),c=q(!1),l=q(""),u=q(null),p=q(!1),k=Ne(),w=r,T=JSON.parse(localStorage.getItem("config")||"{}");He(()=>{const g=k.query.code;g&&(o.value=g)}),Ve(o,g=>{g.length===5&&I()});const R=g=>g.downloadUrl.startsWith("http")?g.downloadUrl:`${t}${g.downloadUrl}`,B=async()=>{u.value&&u.value.content&&await ct(u.value.content,{successMsg:"内容已复制到剪贴板",errorMsg:"复制失败,请重试"})},I=async()=>{if(o.value.length!==5){e.showAlert("请输入5位取件码","error");return}a.value.readonly=!0,a.value.loading=!0;try{const g=await it.post("/share/select/",{code:o.value});if(g.code===200)if(g.detail){const x=g.detail.text.startsWith("/share/download")||g.detail.name!=="Text",C={id:Date.now(),code:g.detail.code,filename:g.detail.name,size:E(g.detail.size),downloadUrl:x?g.detail.text:null,content:x?null:g.detail.text,date:new Date().toLocaleString()};let $=!0;i.receiveData.forEach(Y=>{if(Y.code===C.code){$=!1;return}}),$&&i.addReceiveData(C),x?u.value=C:(u.value=C,J.value=!0),e.showAlert("文件获取成功","success")}else e.showAlert("无效的取件码","error");else e.showAlert(g.detail||"获取文件失败","error")}catch(g){console.error("取件失败:",g),e.showAlert("取件失败,请稍后重试","error")}finally{a.value.readonly=!1,a.value.loading=!1,o.value=""}},E=g=>{if(g===0)return"0 Bytes";const x=1024,C=["Bytes","KB","MB","GB","TB"],$=Math.floor(Math.log(g)/Math.log(x));return parseFloat((g/Math.pow(x,$)).toFixed(2))+" "+C[$]},K=g=>{u.value=g},le=g=>{const x=w.value.findIndex(C=>C.id===g);x!==-1&&i.deleteReceiveData(x)},Z=()=>{p.value=!p.value},D=()=>{n.push("/send")},je=g=>g.downloadUrl?`${t}${g.downloadUrl}`:`${t}?code=${g.code}`,De=g=>{if(console.log(g),g.downloadUrl)window.open(`${g.downloadUrl.startsWith("http")?"":t}${g.downloadUrl}`,"_blank");else if(g.content){const x=new Blob([g.content],{type:"text/plain;charset=utf-8"});kt.saveAs(x,`${g.filename}.txt`)}},J=q(!1),qe=We(()=>u.value&&u.value.content?m(u.value.content):""),Pe=()=>{J.value=!0};return(g,x)=>{const C=Ye("router-link");return M(),L("div",Kt,[h("div",Jt,[h("div",{class:b(["rounded-3xl shadow-2xl overflow-hidden border transform transition-all duration-300",[f(s)?"bg-gray-800 bg-opacity-50 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200"]])},[h("div",Yt,[h("div",en,[h("div",tn,[h("div",nn,[_(f(ht),{class:"w-8 h-8 text-white"})])])]),h("h2",{onClick:D,class:b(["text-3xl cursor-pointer font-extrabold text-center mb-6",[f(s)?"text-transparent bg-clip-text bg-gradient-to-r from-indigo-300 via-purple-300 to-pink-300":"text-indigo-600"]])},j(f(T).name),3),h("form",{onSubmit:Xe(I,["prevent"])},[h("div",sn,[h("label",{for:"code",class:b(["block text-sm font-medium mb-2",[f(s)?"text-gray-300":"text-gray-800"]])},"取件码",2),h("div",rn,[Ke(h("input",{id:"code","onUpdate:modelValue":x[0]||(x[0]=$=>o.value=$),type:"text",class:b(["w-full px-4 py-3 rounded-lg placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-indigo-500 transition duration-300 pr-10",[f(s)?"bg-gray-700 bg-opacity-50":"bg-gray-100",{"ring-2 ring-red-500":l.value},f(s)?"text-gray-300":"text-gray-800"]]),placeholder:"请输入5位取件码",required:"",readonly:a.value.readonly,maxlength:"5",onFocus:x[1]||(x[1]=$=>c.value=!0),onBlur:x[2]||(x[2]=$=>c.value=!1)},null,42,on),[[Je,o.value]]),a.value.loading?(M(),L("div",ln,x[5]||(x[5]=[h("span",{class:"animate-spin rounded-full h-5 w-5 border-b-2 border-indigo-500"},null,-1)]))):ee("",!0)]),h("div",{class:b(["absolute -bottom-0.5 left-2 h-0.5 bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 transition-all duration-300 ease-in-out",{"w-97-100":c.value,"w-0":!c.value}])},null,2)]),h("button",{type:"submit",class:"w-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 text-white font-bold py-3 px-4 rounded-lg hover:from-indigo-600 hover:via-purple-600 hover:to-pink-600 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition duration-300 transform hover:scale-105 hover:shadow-lg relative overflow-hidden group",disabled:a.value.loading},[h("span",cn,[h("span",null,j(a.value.loading?"处理中...":"提取文件"),1),_(f(ft),{class:"w-5 h-5 ml-2 transition-transform duration-300 transform group-hover:translate-x-1"})]),x[6]||(x[6]=h("span",{class:"absolute top-0 left-0 w-full h-full bg-gradient-to-r from-pink-500 via-purple-500 to-indigo-500 opacity-0 group-hover:opacity-100 transition-opacity duration-300"},null,-1))],8,an)],32),h("div",un,[_(C,{to:"/send",class:"text-indigo-400 hover:text-indigo-300 transition duration-300"},{default:O(()=>x[7]||(x[7]=[P(" 需要发送文件?点击这里 ")])),_:1,__:[7]})])]),h("div",{class:b(["px-8 py-4 bg-opacity-50 flex justify-between items-center",[f(s)?"bg-gray-800":"bg-gray-100"]])},[h("span",{class:b(["text-sm flex items-center",[f(s)?"text-gray-300":"text-gray-800"]])},[_(f(ot),{class:"w-4 h-4 mr-1 text-green-400"}),x[8]||(x[8]=P(" 安全加密 "))],2),h("button",{onClick:Z,class:b(["text-sm hover:text-indigo-300 transition duration-300 flex items-center",[f(s)?"text-indigo-400":"text-indigo-600"]])},[x[9]||(x[9]=P(" 取件记录 ")),_(f(lt),{class:"w-4 h-4 ml-1"})],2)],2)],2)]),_(ae,{name:"drawer"},{default:O(()=>[p.value?(M(),L("div",{key:0,class:b(["fixed inset-y-0 right-0 w-full sm:w-120 bg-opacity-70 backdrop-filter backdrop-blur-xl shadow-2xl z-50 overflow-hidden flex flex-col",[f(s)?"bg-gray-900":"bg-white"]])},[h("div",{class:b(["flex justify-between items-center p-6 border-b",[f(s)?"border-gray-700":"border-gray-200"]])},[h("h3",{class:b(["text-2xl font-bold",[f(s)?"text-white":"text-gray-800"]])}," 取件记录 ",2),h("button",{onClick:Z,class:b(["hover:text-white transition duration-300",[f(s)?"text-gray-400":"text-gray-800"]])},[_(f(ke),{class:"w-6 h-6"})],2)],2),h("div",hn,[_(et,{name:"list",tag:"div",class:"space-y-4"},{default:O(()=>[(M(!0),L(tt,null,nt(f(w),$=>(M(),L("div",{key:$.id,class:b(["bg-opacity-50 rounded-lg p-4 flex items-center shadow-md hover:shadow-lg transition duration-300 transform hover:scale-102",[f(s)?"bg-gray-800 hover:bg-gray-700":"bg-gray-100 hover:bg-white"]])},[h("div",pn,[_(f(be),{class:b(["w-10 h-10",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])]),h("div",dn,[h("p",{class:b(["font-medium text-lg truncate",[f(s)?"text-white":"text-gray-800"]])},j($.filename),3),h("p",{class:b(["text-sm truncate",[f(s)?"text-gray-400":"text-gray-600"]])},j($.date)+" · "+j($.size),3)]),h("div",fn,[h("button",{onClick:Y=>K($),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-indigo-400 text-indigo-400":"hover:bg-indigo-100 text-indigo-600"]])},[_(f(ut),{class:"w-5 h-5"})],10,gn),h("button",{onClick:Y=>De($),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-green-400 text-green-400":"hover:bg-green-100 text-green-600"]])},[_(f(we),{class:"w-5 h-5"})],10,xn),h("button",{onClick:Y=>le($.id),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-red-400 text-red-400":"hover:bg-red-100 text-red-600"]])},[_(f(dt),{class:"w-5 h-5"})],10,kn)])],2))),128))]),_:1})])],2)):ee("",!0)]),_:1}),_(ae,{name:"fade"},{default:O(()=>[u.value?(M(),L("div",bn,[h("div",{class:b(["p-8 rounded-2xl max-w-md w-full mx-4 shadow-2xl transform transition-all duration-300 ease-out backdrop-filter backdrop-blur-lg overflow-hidden",[f(s)?"bg-gray-800 bg-opacity-70":"bg-white bg-opacity-95"]])},[h("h3",{class:b(["text-2xl font-bold mb-6 truncate",[f(s)?"text-white":"text-gray-800"]])}," 文件详情 ",2),h("div",wn,[h("div",mn,[_(f(be),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[10]||(x[10]=h("span",{class:"font-medium"},"文件名:",-1)),P(j(u.value.filename),1)],2)]),h("div",yn,[_(f(gt),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[11]||(x[11]=h("span",{class:"font-medium"},"取件日期:",-1)),P(j(u.value.date),1)],2)]),h("div",vn,[_(f(pt),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[12]||(x[12]=h("span",{class:"font-medium"},"文件大小:",-1)),P(j(u.value.size),1)],2)]),h("div",_n,[_(f(we),{class:b(["w-6 h-6 mr-3",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([f(s)?"text-gray-300":"text-gray-800"])},x[13]||(x[13]=[h("span",{class:"font-medium"},"文件内容:",-1)]),2),u.value.filename=="Text"?(M(),L("div",$n,[h("button",{onClick:Pe,class:"px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition duration-300"}," 预览内容 ")])):(M(),L("div",Tn,[h("a",{href:R(u.value),target:"_blank",rel:"noopener noreferrer",class:"px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition duration-300"}," 点击下载 ",8,Rn)]))])]),h("div",zn,[h("h4",{class:b(["text-lg font-semibold mb-3",[f(s)?"text-white":"text-gray-800"]])}," 取件二维码 ",2),h("div",Sn,[_(at,{value:je(u.value),size:128,level:"M"},null,8,["value"])]),h("p",{class:b(["mt-2 text-sm",[f(s)?"text-gray-400":"text-gray-600"]])}," 扫描二维码快速取件 ",2)]),h("button",{onClick:x[3]||(x[3]=$=>u.value=null),class:"mt-8 w-full bg-gradient-to-r from-indigo-500 to-purple-600 text-white px-6 py-3 rounded-lg font-medium hover:from-indigo-600 hover:to-purple-700 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition duration-300 transform hover:scale-105"}," 关闭 ")],2)])):ee("",!0)]),_:1}),_(ae,{name:"fade"},{default:O(()=>[J.value?(M(),L("div",An,[h("div",{class:b(["p-6 rounded-2xl max-w-3xl w-full mx-4 shadow-2xl transform transition-all duration-300 ease-out backdrop-filter backdrop-blur-lg bg-opacity-70 max-h-[85vh] overflow-hidden flex flex-col",[f(s)?"bg-gray-800":"bg-white"]])},[h("div",En,[h("h3",{class:b(["text-2xl font-bold",[f(s)?"text-white":"text-gray-800"]])}," 内容预览 ",2),h("div",Cn,[h("button",{onClick:B,class:b(["px-4 py-1.5 rounded-lg transition duration-300 flex items-center gap-2 text-sm font-medium",[f(s)?"bg-gray-700 hover:bg-gray-600 text-gray-300 hover:text-white":"bg-gray-100 hover:bg-gray-200 text-gray-700 hover:text-gray-900"]])},[_(f(xt),{class:"w-4 h-4"}),x[14]||(x[14]=P(" 复制 "))],2),h("button",{onClick:x[4]||(x[4]=$=>J.value=!1),class:b(["p-1.5 rounded-lg transition duration-300 hover:bg-opacity-10",[f(s)?"text-gray-400 hover:text-white hover:bg-white":"text-gray-500 hover:text-gray-900 hover:bg-black"]])},[_(f(ke),{class:"w-5 h-5"})],2)])]),h("div",In,[h("div",{class:b(["prose max-w-none p-6 rounded-xl",[f(s)?"prose-invert bg-gray-900 bg-opacity-50":"bg-gray-50"]]),innerHTML:qe.value},null,10,Ln)])],2)])):ee("",!0)]),_:1})])}}},Zn=Ze(Mn,[["__scopeId","data-v-3129e8a3"]]);export{Zn as default}; diff --git a/themes/2025/assets/RetrievewFileView-DzS7C4LK.js b/themes/2025/assets/RetrievewFileView-DzS7C4LK.js new file mode 100644 index 000000000..1fe726a83 --- /dev/null +++ b/themes/2025/assets/RetrievewFileView-DzS7C4LK.js @@ -0,0 +1,76 @@ +var Ue=Object.defineProperty;var Fe=(d,e,t)=>e in d?Ue(d,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):d[e]=t;var v=(d,e,t)=>Fe(d,typeof e!="symbol"?e+"":e,t);import{c as re,_ as Ze,u as Oe,D as Qe,r as q,o as He,E as Ne,w as Ve,f as We,a as L,b as h,g as _,n as b,h as f,i as Ge,t as j,j as Xe,m as Ke,l as ee,v as Je,k as O,x as P,y as Ye,X as ke,z as et,F as tt,s as nt,T as ae,B as st,e as M,C as it}from"./index-C-4-823a.js";import{u as rt,S as ot,C as lt,Q as at,d as ct,E as ut}from"./clipboard-WGJncgVO.js";import{B as ht}from"./box-Btnwq7DC.js";import{F as be}from"./file-D-r2HShG.js";import{H as pt}from"./hard-drive-X0PLCy-z.js";import{T as dt}from"./trash-CAImX6bg.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const ft=re("ArrowRightIcon",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const gt=re("CalendarIcon",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const xt=re("CopyIcon",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const we=re("DownloadIcon",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]);var Q=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Te={exports:{}};(function(d,e){(function(t,n){n()})(Q,function(){function t(c,l){return typeof l>"u"?l={autoBom:!1}:typeof l!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),l={autoBom:!l}),l.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(c.type)?new Blob(["\uFEFF",c],{type:c.type}):c}function n(c,l,u){var p=new XMLHttpRequest;p.open("GET",c),p.responseType="blob",p.onload=function(){a(p.response,l,u)},p.onerror=function(){console.error("could not download file")},p.send()}function s(c){var l=new XMLHttpRequest;l.open("HEAD",c,!1);try{l.send()}catch{}return 200<=l.status&&299>=l.status}function i(c){try{c.dispatchEvent(new MouseEvent("click"))}catch{var l=document.createEvent("MouseEvents");l.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),c.dispatchEvent(l)}}var r=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof Q=="object"&&Q.global===Q?Q:void 0,o=r.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),a=r.saveAs||(typeof window!="object"||window!==r?function(){}:"download"in HTMLAnchorElement.prototype&&!o?function(c,l,u){var p=r.URL||r.webkitURL,k=document.createElement("a");l=l||c.name||"download",k.download=l,k.rel="noopener",typeof c=="string"?(k.href=c,k.origin===location.origin?i(k):s(k.href)?n(c,l,u):i(k,k.target="_blank")):(k.href=p.createObjectURL(c),setTimeout(function(){p.revokeObjectURL(k.href)},4e4),setTimeout(function(){i(k)},0))}:"msSaveOrOpenBlob"in navigator?function(c,l,u){if(l=l||c.name||"download",typeof c!="string")navigator.msSaveOrOpenBlob(t(c,u),l);else if(s(c))n(c,l,u);else{var p=document.createElement("a");p.href=c,p.target="_blank",setTimeout(function(){i(p)})}}:function(c,l,u,p){if(p=p||open("","_blank"),p&&(p.document.title=p.document.body.innerText="downloading..."),typeof c=="string")return n(c,l,u);var k=c.type==="application/octet-stream",w=/constructor/i.test(r.HTMLElement)||r.safari,T=/CriOS\/[\d]+/.test(navigator.userAgent);if((T||k&&w||o)&&typeof FileReader<"u"){var R=new FileReader;R.onloadend=function(){var E=R.result;E=T?E:E.replace(/^data:[^;]*;/,"data:attachment/file;"),p?p.location.href=E:location=E,p=null},R.readAsDataURL(c)}else{var B=r.URL||r.webkitURL,I=B.createObjectURL(c);p?p.location=I:location.href=I,p=null,setTimeout(function(){B.revokeObjectURL(I)},4e4)}});r.saveAs=a.saveAs=a,d.exports=a})})(Te);var kt=Te.exports;function ue(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let F=ue();function Re(d){F=d}const ze=/[&<>"']/,bt=new RegExp(ze.source,"g"),Se=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,wt=new RegExp(Se.source,"g"),mt={"&":"&","<":"<",">":">",'"':""","'":"'"},me=d=>mt[d];function z(d,e){if(e){if(ze.test(d))return d.replace(bt,me)}else if(Se.test(d))return d.replace(wt,me);return d}const yt=/(^|[^\[])\^/g;function y(d,e){let t=typeof d=="string"?d:d.source;e=e||"";const n={replace:(s,i)=>{let r=typeof i=="string"?i:i.source;return r=r.replace(yt,"$1"),t=t.replace(s,r),n},getRegex:()=>new RegExp(t,e)};return n}function ye(d){try{d=encodeURI(d).replace(/%25/g,"%")}catch{return null}return d}const V={exec:()=>null};function ve(d,e){const t=d.replace(/\|/g,(i,r,o)=>{let a=!1,c=r;for(;--c>=0&&o[c]==="\\";)a=!a;return a?"|":" |"}),n=t.split(/ \|/);let s=0;if(n[0].trim()||n.shift(),n.length>0&&!n[n.length-1].trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length{const i=s.match(/^\s+/);if(i===null)return s;const[r]=i;return r.length>=n.length?s.slice(n.length):s}).join(` +`)}class ne{constructor(e){v(this,"options");v(this,"rules");v(this,"lexer");this.options=e||F}space(e){const t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){const t=this.rules.block.code.exec(e);if(t){const n=t[0].replace(/^(?: {1,4}| {0,3}\t)/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:H(n,` +`)}}}fences(e){const t=this.rules.block.fences.exec(e);if(t){const n=t[0],s=_t(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:s}}}heading(e){const t=this.rules.block.heading.exec(e);if(t){let n=t[2].trim();if(/#$/.test(n)){const s=H(n,"#");(this.options.pedantic||!s||/ $/.test(s))&&(n=s.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){const t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:H(t[0],` +`)}}blockquote(e){const t=this.rules.block.blockquote.exec(e);if(t){let n=H(t[0],` +`).split(` +`),s="",i="";const r=[];for(;n.length>0;){let o=!1;const a=[];let c;for(c=0;c/.test(n[c]))a.push(n[c]),o=!0;else if(!o)a.push(n[c]);else break;n=n.slice(c);const l=a.join(` +`),u=l.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` + $1`).replace(/^ {0,3}>[ \t]?/gm,"");s=s?`${s} +${l}`:l,i=i?`${i} +${u}`:u;const p=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(u,r,!0),this.lexer.state.top=p,n.length===0)break;const k=r[r.length-1];if((k==null?void 0:k.type)==="code")break;if((k==null?void 0:k.type)==="blockquote"){const w=k,T=w.raw+` +`+n.join(` +`),R=this.blockquote(T);r[r.length-1]=R,s=s.substring(0,s.length-w.raw.length)+R.raw,i=i.substring(0,i.length-w.text.length)+R.text;break}else if((k==null?void 0:k.type)==="list"){const w=k,T=w.raw+` +`+n.join(` +`),R=this.list(T);r[r.length-1]=R,s=s.substring(0,s.length-k.raw.length)+R.raw,i=i.substring(0,i.length-w.raw.length)+R.raw,n=T.substring(r[r.length-1].raw.length).split(` +`);continue}}return{type:"blockquote",raw:s,tokens:r,text:i}}}list(e){let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim();const s=n.length>1,i={type:"list",raw:"",ordered:s,start:s?+n.slice(0,-1):"",loose:!1,items:[]};n=s?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=s?n:"[*+-]");const r=new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`);let o=!1;for(;e;){let a=!1,c="",l="";if(!(t=r.exec(e))||this.rules.block.hr.test(e))break;c=t[0],e=e.substring(c.length);let u=t[2].split(` +`,1)[0].replace(/^\t+/,B=>" ".repeat(3*B.length)),p=e.split(` +`,1)[0],k=!u.trim(),w=0;if(this.options.pedantic?(w=2,l=u.trimStart()):k?w=t[1].length+1:(w=t[2].search(/[^ ]/),w=w>4?1:w,l=u.slice(w),w+=t[1].length),k&&/^[ \t]*$/.test(p)&&(c+=p+` +`,e=e.substring(p.length+1),a=!0),!a){const B=new RegExp(`^ {0,${Math.min(3,w-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),I=new RegExp(`^ {0,${Math.min(3,w-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),E=new RegExp(`^ {0,${Math.min(3,w-1)}}(?:\`\`\`|~~~)`),K=new RegExp(`^ {0,${Math.min(3,w-1)}}#`),le=new RegExp(`^ {0,${Math.min(3,w-1)}}<(?:[a-z].*>|!--)`,"i");for(;e;){const Z=e.split(` +`,1)[0];let D;if(p=Z,this.options.pedantic?(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," "),D=p):D=p.replace(/\t/g," "),E.test(p)||K.test(p)||le.test(p)||B.test(p)||I.test(p))break;if(D.search(/[^ ]/)>=w||!p.trim())l+=` +`+D.slice(w);else{if(k||u.replace(/\t/g," ").search(/[^ ]/)>=4||E.test(u)||K.test(u)||I.test(u))break;l+=` +`+p}!k&&!p.trim()&&(k=!0),c+=Z+` +`,e=e.substring(Z.length+1),u=D.slice(w)}}i.loose||(o?i.loose=!0:/\n[ \t]*\n[ \t]*$/.test(c)&&(o=!0));let T=null,R;this.options.gfm&&(T=/^\[[ xX]\] /.exec(l),T&&(R=T[0]!=="[ ] ",l=l.replace(/^\[[ xX]\] +/,""))),i.items.push({type:"list_item",raw:c,task:!!T,checked:R,loose:!1,text:l,tokens:[]}),i.raw+=c}i.items[i.items.length-1].raw=i.items[i.items.length-1].raw.trimEnd(),i.items[i.items.length-1].text=i.items[i.items.length-1].text.trimEnd(),i.raw=i.raw.trimEnd();for(let a=0;au.type==="space"),l=c.length>0&&c.some(u=>/\n.*\n/.test(u.raw));i.loose=l}if(i.loose)for(let a=0;a$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:n,raw:t[0],href:s,title:i}}}table(e){const t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;const n=ve(t[1]),s=t[2].replace(/^\||\| *$/g,"").split("|"),i=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` +`):[],r={type:"table",raw:t[0],header:[],align:[],rows:[]};if(n.length===s.length){for(const o of s)/^ *-+: *$/.test(o)?r.align.push("right"):/^ *:-+: *$/.test(o)?r.align.push("center"):/^ *:-+ *$/.test(o)?r.align.push("left"):r.align.push(null);for(let o=0;o({text:a,tokens:this.lexer.inline(a),header:!1,align:r.align[c]})));return r}}lheading(e){const t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[2].charAt(0)==="="?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){const t=this.rules.block.paragraph.exec(e);if(t){const n=t[1].charAt(t[1].length-1)===` +`?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:n,tokens:this.lexer.inline(n)}}}text(e){const t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){const t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:z(t[1])}}tag(e){const t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^
    /i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){const t=this.rules.inline.link.exec(e);if(t){const n=t[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;const r=H(n.slice(0,-1),"\\");if((n.length-r.length)%2===0)return}else{const r=vt(t[2],"()");if(r>-1){const a=(t[0].indexOf("!")===0?5:4)+t[1].length+r;t[2]=t[2].substring(0,r),t[0]=t[0].substring(0,a).trim(),t[3]=""}}let s=t[2],i="";if(this.options.pedantic){const r=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(s);r&&(s=r[1],i=r[3])}else i=t[3]?t[3].slice(1,-1):"";return s=s.trim(),/^$/.test(n)?s=s.slice(1):s=s.slice(1,-1)),_e(t,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){const s=(n[2]||n[1]).replace(/\s+/g," "),i=t[s.toLowerCase()];if(!i){const r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return _e(n,i,n[0],this.lexer)}}emStrong(e,t,n=""){let s=this.rules.inline.emStrongLDelim.exec(e);if(!s||s[3]&&n.match(/[\p{L}\p{N}]/u))return;if(!(s[1]||s[2]||"")||!n||this.rules.inline.punctuation.exec(n)){const r=[...s[0]].length-1;let o,a,c=r,l=0;const u=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(u.lastIndex=0,t=t.slice(-1*e.length+r);(s=u.exec(t))!=null;){if(o=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!o)continue;if(a=[...o].length,s[3]||s[4]){c+=a;continue}else if((s[5]||s[6])&&r%3&&!((r+a)%3)){l+=a;continue}if(c-=a,c>0)continue;a=Math.min(a,a+c+l);const p=[...s[0]][0].length,k=e.slice(0,r+s.index+p+a);if(Math.min(r,a)%2){const T=k.slice(1,-1);return{type:"em",raw:k,text:T,tokens:this.lexer.inlineTokens(T)}}const w=k.slice(2,-2);return{type:"strong",raw:k,text:w,tokens:this.lexer.inlineTokens(w)}}}}codespan(e){const t=this.rules.inline.code.exec(e);if(t){let n=t[2].replace(/\n/g," ");const s=/[^ ]/.test(n),i=/^ /.test(n)&&/ $/.test(n);return s&&i&&(n=n.substring(1,n.length-1)),n=z(n,!0),{type:"codespan",raw:t[0],text:n}}}br(e){const t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){const t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){const t=this.rules.inline.autolink.exec(e);if(t){let n,s;return t[2]==="@"?(n=z(t[1]),s="mailto:"+n):(n=z(t[1]),s=n),{type:"link",raw:t[0],text:n,href:s,tokens:[{type:"text",raw:n,text:n}]}}}url(e){var n;let t;if(t=this.rules.inline.url.exec(e)){let s,i;if(t[2]==="@")s=z(t[0]),i="mailto:"+s;else{let r;do r=t[0],t[0]=((n=this.rules.inline._backpedal.exec(t[0]))==null?void 0:n[0])??"";while(r!==t[0]);s=z(t[0]),t[1]==="www."?i="http://"+t[0]:i=t[0]}return{type:"link",raw:t[0],text:s,href:i,tokens:[{type:"text",raw:s,text:s}]}}}inlineText(e){const t=this.rules.inline.text.exec(e);if(t){let n;return this.lexer.state.inRawBlock?n=t[0]:n=z(t[0]),{type:"text",raw:t[0],text:n}}}}const $t=/^(?:[ \t]*(?:\n|$))+/,Tt=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Rt=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,G=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,zt=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Ae=/(?:[*+-]|\d{1,9}[.)])/,Ee=y(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Ae).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),he=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,St=/^[^\n]+/,pe=/(?!\s*\])(?:\\.|[^\[\]\\])+/,At=y(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",pe).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Et=y(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Ae).getRegex(),oe="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",de=/|$))/,Ct=y("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",de).replace("tag",oe).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Ce=y(he).replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex(),It=y(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Ce).getRegex(),fe={blockquote:It,code:Tt,def:At,fences:Rt,heading:zt,hr:G,html:Ct,lheading:Ee,list:Et,newline:$t,paragraph:Ce,table:V,text:St},$e=y("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex(),Lt={...fe,table:$e,paragraph:y(he).replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",$e).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex()},Mt={...fe,html:y(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",de).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:V,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:y(he).replace("hr",G).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",Ee).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Ie=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Bt=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Le=/^( {2,}|\\)\n(?!\s*$)/,jt=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,Pt=y(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,X).getRegex(),Ut=y("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,X).getRegex(),Ft=y("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,X).getRegex(),Zt=y(/\\([punct])/,"gu").replace(/punct/g,X).getRegex(),Ot=y(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Qt=y(de).replace("(?:-->|$)","-->").getRegex(),Ht=y("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Qt).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),se=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Nt=y(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",se).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Me=y(/^!?\[(label)\]\[(ref)\]/).replace("label",se).replace("ref",pe).getRegex(),Be=y(/^!?\[(ref)\](?:\[\])?/).replace("ref",pe).getRegex(),Vt=y("reflink|nolink(?!\\()","g").replace("reflink",Me).replace("nolink",Be).getRegex(),ge={_backpedal:V,anyPunctuation:Zt,autolink:Ot,blockSkip:qt,br:Le,code:Bt,del:V,emStrongLDelim:Pt,emStrongRDelimAst:Ut,emStrongRDelimUnd:Ft,escape:Ie,link:Nt,nolink:Be,punctuation:Dt,reflink:Me,reflinkSearch:Vt,tag:Ht,text:jt,url:V},Wt={...ge,link:y(/^!?\[(label)\]\((.*?)\)/).replace("label",se).getRegex(),reflink:y(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",se).getRegex()},ce={...ge,escape:y(Ie).replace("])","~|])").getRegex(),url:y(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\(s=o.call({lexer:this},e,t))?(e=e.substring(s.raw.length),t.push(s),!0):!1))){if(s=this.tokenizer.space(e)){e=e.substring(s.raw.length),s.raw.length===1&&t.length>0?t[t.length-1].raw+=` +`:t.push(s);continue}if(s=this.tokenizer.code(e)){e=e.substring(s.raw.length),i=t[t.length-1],i&&(i.type==="paragraph"||i.type==="text")?(i.raw+=` +`+s.raw,i.text+=` +`+s.text,this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s);continue}if(s=this.tokenizer.fences(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.heading(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.hr(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.blockquote(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.list(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.html(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.def(e)){e=e.substring(s.raw.length),i=t[t.length-1],i&&(i.type==="paragraph"||i.type==="text")?(i.raw+=` +`+s.raw,i.text+=` +`+s.raw,this.inlineQueue[this.inlineQueue.length-1].src=i.text):this.tokens.links[s.tag]||(this.tokens.links[s.tag]={href:s.href,title:s.title});continue}if(s=this.tokenizer.table(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.lheading(e)){e=e.substring(s.raw.length),t.push(s);continue}if(r=e,this.options.extensions&&this.options.extensions.startBlock){let o=1/0;const a=e.slice(1);let c;this.options.extensions.startBlock.forEach(l=>{c=l.call({lexer:this},a),typeof c=="number"&&c>=0&&(o=Math.min(o,c))}),o<1/0&&o>=0&&(r=e.substring(0,o+1))}if(this.state.top&&(s=this.tokenizer.paragraph(r))){i=t[t.length-1],n&&(i==null?void 0:i.type)==="paragraph"?(i.raw+=` +`+s.raw,i.text+=` +`+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s),n=r.length!==e.length,e=e.substring(s.raw.length);continue}if(s=this.tokenizer.text(e)){e=e.substring(s.raw.length),i=t[t.length-1],i&&i.type==="text"?(i.raw+=` +`+s.raw,i.text+=` +`+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s);continue}if(e){const o="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw new Error(o)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n,s,i,r=e,o,a,c;if(this.tokens.links){const l=Object.keys(this.tokens.links);if(l.length>0)for(;(o=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null;)l.includes(o[0].slice(o[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(o=this.tokenizer.rules.inline.blockSkip.exec(r))!=null;)r=r.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(o=this.tokenizer.rules.inline.anyPunctuation.exec(r))!=null;)r=r.slice(0,o.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(a||(c=""),a=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(l=>(n=l.call({lexer:this},e,t))?(e=e.substring(n.raw.length),t.push(n),!0):!1))){if(n=this.tokenizer.escape(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.tag(e)){e=e.substring(n.raw.length),s=t[t.length-1],s&&n.type==="text"&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(n=this.tokenizer.link(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(n.raw.length),s=t[t.length-1],s&&n.type==="text"&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(n=this.tokenizer.emStrong(e,r,c)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.codespan(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.br(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.del(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.autolink(e)){e=e.substring(n.raw.length),t.push(n);continue}if(!this.state.inLink&&(n=this.tokenizer.url(e))){e=e.substring(n.raw.length),t.push(n);continue}if(i=e,this.options.extensions&&this.options.extensions.startInline){let l=1/0;const u=e.slice(1);let p;this.options.extensions.startInline.forEach(k=>{p=k.call({lexer:this},u),typeof p=="number"&&p>=0&&(l=Math.min(l,p))}),l<1/0&&l>=0&&(i=e.substring(0,l+1))}if(n=this.tokenizer.inlineText(i)){e=e.substring(n.raw.length),n.raw.slice(-1)!=="_"&&(c=n.raw.slice(-1)),a=!0,s=t[t.length-1],s&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(e){const l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return t}}class ie{constructor(e){v(this,"options");v(this,"parser");this.options=e||F}space(e){return""}code({text:e,lang:t,escaped:n}){var r;const s=(r=(t||"").match(/^\S*/))==null?void 0:r[0],i=e.replace(/\n$/,"")+` +`;return s?'
    '+(n?i:z(i,!0))+`
    +`:"
    "+(n?i:z(i,!0))+`
    +`}blockquote({tokens:e}){return`
    +${this.parser.parse(e)}
    +`}html({text:e}){return e}heading({tokens:e,depth:t}){return`${this.parser.parseInline(e)} +`}hr(e){return`
    +`}list(e){const t=e.ordered,n=e.start;let s="";for(let o=0;o +`+s+" +`}listitem(e){let t="";if(e.task){const n=this.checkbox({checked:!!e.checked});e.loose?e.tokens.length>0&&e.tokens[0].type==="paragraph"?(e.tokens[0].text=n+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&e.tokens[0].tokens[0].type==="text"&&(e.tokens[0].tokens[0].text=n+" "+e.tokens[0].tokens[0].text)):e.tokens.unshift({type:"text",raw:n+" ",text:n+" "}):t+=n+" "}return t+=this.parser.parse(e.tokens,!!e.loose),`
  • ${t}
  • +`}checkbox({checked:e}){return"'}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    +`}table(e){let t="",n="";for(let i=0;i${s}`),` + +`+t+` +`+s+`
    +`}tablerow({text:e}){return` +${e} +`}tablecell(e){const t=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+` +`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${e}`}br(e){return"
    "}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:n}){const s=this.parser.parseInline(n),i=ye(e);if(i===null)return s;e=i;let r='
    ",r}image({href:e,title:t,text:n}){const s=ye(e);if(s===null)return n;e=s;let i=`${n}{const c=o[a].flat(1/0);n=n.concat(this.walkTokens(c,t))}):o.tokens&&(n=n.concat(this.walkTokens(o.tokens,t)))}}return n}use(...e){const t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(n=>{const s={...n};if(s.async=this.defaults.async||s.async||!1,n.extensions&&(n.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){const r=t.renderers[i.name];r?t.renderers[i.name]=function(...o){let a=i.renderer.apply(this,o);return a===!1&&(a=r.apply(this,o)),a}:t.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const r=t[i.level];r?r.unshift(i.tokenizer):t[i.level]=[i.tokenizer],i.start&&(i.level==="block"?t.startBlock?t.startBlock.push(i.start):t.startBlock=[i.start]:i.level==="inline"&&(t.startInline?t.startInline.push(i.start):t.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(t.childTokens[i.name]=i.childTokens)}),s.extensions=t),n.renderer){const i=this.defaults.renderer||new ie(this.defaults);for(const r in n.renderer){if(!(r in i))throw new Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;const o=r,a=n.renderer[o],c=i[o];i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u||""}}s.renderer=i}if(n.tokenizer){const i=this.defaults.tokenizer||new ne(this.defaults);for(const r in n.tokenizer){if(!(r in i))throw new Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;const o=r,a=n.tokenizer[o],c=i[o];i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u}}s.tokenizer=i}if(n.hooks){const i=this.defaults.hooks||new W;for(const r in n.hooks){if(!(r in i))throw new Error(`hook '${r}' does not exist`);if(["options","block"].includes(r))continue;const o=r,a=n.hooks[o],c=i[o];W.passThroughHooks.has(r)?i[o]=l=>{if(this.defaults.async)return Promise.resolve(a.call(i,l)).then(p=>c.call(i,p));const u=a.call(i,l);return c.call(i,u)}:i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u}}s.hooks=i}if(n.walkTokens){const i=this.defaults.walkTokens,r=n.walkTokens;s.walkTokens=function(o){let a=[];return a.push(r.call(this,o)),i&&(a=a.concat(i.call(this,o))),a}}this.defaults={...this.defaults,...s}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return S.lex(e,t??this.defaults)}parser(e,t){return A.parse(e,t??this.defaults)}parseMarkdown(e){return(n,s)=>{const i={...s},r={...this.defaults,...i},o=this.onError(!!r.silent,!!r.async);if(this.defaults.async===!0&&i.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof n>"u"||n===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof n!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));r.hooks&&(r.hooks.options=r,r.hooks.block=e);const a=r.hooks?r.hooks.provideLexer():e?S.lex:S.lexInline,c=r.hooks?r.hooks.provideParser():e?A.parse:A.parseInline;if(r.async)return Promise.resolve(r.hooks?r.hooks.preprocess(n):n).then(l=>a(l,r)).then(l=>r.hooks?r.hooks.processAllTokens(l):l).then(l=>r.walkTokens?Promise.all(this.walkTokens(l,r.walkTokens)).then(()=>l):l).then(l=>c(l,r)).then(l=>r.hooks?r.hooks.postprocess(l):l).catch(o);try{r.hooks&&(n=r.hooks.preprocess(n));let l=a(n,r);r.hooks&&(l=r.hooks.processAllTokens(l)),r.walkTokens&&this.walkTokens(l,r.walkTokens);let u=c(l,r);return r.hooks&&(u=r.hooks.postprocess(u)),u}catch(l){return o(l)}}}onError(e,t){return n=>{if(n.message+=` +Please report this to https://github.com/markedjs/marked.`,e){const s="

    An error occurred:

    "+z(n.message+"",!0)+"
    ";return t?Promise.resolve(s):s}if(t)return Promise.reject(n);throw n}}}const U=new Xt;function m(d,e){return U.parse(d,e)}m.options=m.setOptions=function(d){return U.setOptions(d),m.defaults=U.defaults,Re(m.defaults),m};m.getDefaults=ue;m.defaults=F;m.use=function(...d){return U.use(...d),m.defaults=U.defaults,Re(m.defaults),m};m.walkTokens=function(d,e){return U.walkTokens(d,e)};m.parseInline=U.parseInline;m.Parser=A;m.parser=A.parse;m.Renderer=ie;m.TextRenderer=xe;m.Lexer=S;m.lexer=S.lex;m.Tokenizer=ne;m.Hooks=W;m.parse=m;m.options;m.setOptions;m.use;m.walkTokens;m.parseInline;A.parse;S.lex;const Kt={class:"min-h-screen flex items-center justify-center p-4 overflow-hidden transition-colors duration-300"},Jt={class:"w-full max-w-md relative z-10"},Yt={class:"p-8"},en={class:"flex justify-center mb-8"},tn={class:"rounded-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 p-1 animate-spin-slow"},nn={class:"rounded-full bg-gray-900 p-2"},sn={class:"mb-6 relative"},rn={class:"relative"},on=["readonly"],ln={key:0,class:"absolute inset-y-0 right-0 flex items-center pr-3"},an=["disabled"],cn={class:"flex items-center justify-center relative z-10"},un={class:"mt-6 text-center"},hn={class:"flex-grow overflow-y-auto p-6"},pn={class:"flex-shrink-0 mr-4"},dn={class:"flex-grow min-w-0 mr-4"},fn={class:"flex-shrink-0 flex space-x-2"},gn=["onClick"],xn=["onClick"],kn=["onClick"],bn={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},wn={class:"space-y-4"},mn={class:"flex items-center"},yn={class:"flex items-center"},vn={class:"flex items-center"},_n={class:"flex items-center"},$n={key:0,class:"ml-2"},Tn={key:1},Rn=["href"],zn={class:"mt-6 flex flex-col items-center"},Sn={class:"bg-white p-2 rounded-lg shadow-md"},An={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},En={class:"flex justify-between items-center mb-4 flex-shrink-0"},Cn={class:"flex items-center gap-3"},In={class:"flex-1 overflow-y-auto custom-scrollbar"},Ln=["innerHTML"],Mn={__name:"RetrievewFileView",setup(d){const e=Oe(),t=window.location.origin,n=st(),s=Ge("isDarkMode"),i=rt(),{receiveData:r}=Qe(i),o=q(""),a=q({readonly:!1,loading:!1}),c=q(!1),l=q(""),u=q(null),p=q(!1),k=Ne(),w=r,T=JSON.parse(localStorage.getItem("config")||"{}");He(()=>{const g=k.query.code;g&&(o.value=g)}),Ve(o,g=>{g.length===5&&I()});const R=g=>g.downloadUrl.startsWith("http")?g.downloadUrl:`${t}${g.downloadUrl}`,B=async()=>{u.value&&u.value.content&&await ct(u.value.content,{successMsg:"内容已复制到剪贴板",errorMsg:"复制失败,请重试"})},I=async()=>{if(o.value.length!==5){e.showAlert("请输入5位取件码","error");return}a.value.readonly=!0,a.value.loading=!0;try{const g=await it.post("/share/select/",{code:o.value});if(g.code===200)if(g.detail){const x=g.detail.text.startsWith("/share/download")||g.detail.name!=="Text",C={id:Date.now(),code:g.detail.code,filename:g.detail.name,size:E(g.detail.size),downloadUrl:x?g.detail.text:null,content:x?null:g.detail.text,date:new Date().toLocaleString()};let $=!0;i.receiveData.forEach(Y=>{if(Y.code===C.code){$=!1;return}}),$&&i.addReceiveData(C),x?u.value=C:(u.value=C,J.value=!0),e.showAlert("文件获取成功","success")}else e.showAlert("无效的取件码","error");else e.showAlert(g.detail||"获取文件失败","error")}catch(g){console.error("取件失败:",g),e.showAlert("取件失败,请稍后重试","error")}finally{a.value.readonly=!1,a.value.loading=!1,o.value=""}},E=g=>{if(g===0)return"0 Bytes";const x=1024,C=["Bytes","KB","MB","GB","TB"],$=Math.floor(Math.log(g)/Math.log(x));return parseFloat((g/Math.pow(x,$)).toFixed(2))+" "+C[$]},K=g=>{u.value=g},le=g=>{const x=w.value.findIndex(C=>C.id===g);x!==-1&&i.deleteReceiveData(x)},Z=()=>{p.value=!p.value},D=()=>{n.push("/send")},je=g=>g.downloadUrl?`${t}${g.downloadUrl}`:`${t}?code=${g.code}`,De=g=>{if(console.log(g),g.downloadUrl)window.open(`${g.downloadUrl.startsWith("http")?"":t}${g.downloadUrl}`,"_blank");else if(g.content){const x=new Blob([g.content],{type:"text/plain;charset=utf-8"});kt.saveAs(x,`${g.filename}.txt`)}},J=q(!1),qe=We(()=>u.value&&u.value.content?m(u.value.content):""),Pe=()=>{J.value=!0};return(g,x)=>{const C=Ye("router-link");return M(),L("div",Kt,[h("div",Jt,[h("div",{class:b(["rounded-3xl shadow-2xl overflow-hidden border transform transition-all duration-300",[f(s)?"bg-gray-800 bg-opacity-50 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200"]])},[h("div",Yt,[h("div",en,[h("div",tn,[h("div",nn,[_(f(ht),{class:"w-8 h-8 text-white"})])])]),h("h2",{onClick:D,class:b(["text-3xl cursor-pointer font-extrabold text-center mb-6",[f(s)?"text-transparent bg-clip-text bg-gradient-to-r from-indigo-300 via-purple-300 to-pink-300":"text-indigo-600"]])},j(f(T).name),3),h("form",{onSubmit:Xe(I,["prevent"])},[h("div",sn,[h("label",{for:"code",class:b(["block text-sm font-medium mb-2",[f(s)?"text-gray-300":"text-gray-800"]])},"取件码",2),h("div",rn,[Ke(h("input",{id:"code","onUpdate:modelValue":x[0]||(x[0]=$=>o.value=$),type:"text",class:b(["w-full px-4 py-3 rounded-lg placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-indigo-500 transition duration-300 pr-10",[f(s)?"bg-gray-700 bg-opacity-50":"bg-gray-100",{"ring-2 ring-red-500":l.value},f(s)?"text-gray-300":"text-gray-800"]]),placeholder:"请输入5位取件码",required:"",readonly:a.value.readonly,maxlength:"5",onFocus:x[1]||(x[1]=$=>c.value=!0),onBlur:x[2]||(x[2]=$=>c.value=!1)},null,42,on),[[Je,o.value]]),a.value.loading?(M(),L("div",ln,x[5]||(x[5]=[h("span",{class:"animate-spin rounded-full h-5 w-5 border-b-2 border-indigo-500"},null,-1)]))):ee("",!0)]),h("div",{class:b(["absolute -bottom-0.5 left-2 h-0.5 bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 transition-all duration-300 ease-in-out",{"w-97-100":c.value,"w-0":!c.value}])},null,2)]),h("button",{type:"submit",class:"w-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 text-white font-bold py-3 px-4 rounded-lg hover:from-indigo-600 hover:via-purple-600 hover:to-pink-600 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition duration-300 transform hover:scale-105 hover:shadow-lg relative overflow-hidden group",disabled:a.value.loading},[h("span",cn,[h("span",null,j(a.value.loading?"处理中...":"提取文件"),1),_(f(ft),{class:"w-5 h-5 ml-2 transition-transform duration-300 transform group-hover:translate-x-1"})]),x[6]||(x[6]=h("span",{class:"absolute top-0 left-0 w-full h-full bg-gradient-to-r from-pink-500 via-purple-500 to-indigo-500 opacity-0 group-hover:opacity-100 transition-opacity duration-300"},null,-1))],8,an)],32),h("div",un,[_(C,{to:"/send",class:"text-indigo-400 hover:text-indigo-300 transition duration-300"},{default:O(()=>x[7]||(x[7]=[P(" 需要发送文件?点击这里 ")])),_:1,__:[7]})])]),h("div",{class:b(["px-8 py-4 bg-opacity-50 flex justify-between items-center",[f(s)?"bg-gray-800":"bg-gray-100"]])},[h("span",{class:b(["text-sm flex items-center",[f(s)?"text-gray-300":"text-gray-800"]])},[_(f(ot),{class:"w-4 h-4 mr-1 text-green-400"}),x[8]||(x[8]=P(" 安全加密 "))],2),h("button",{onClick:Z,class:b(["text-sm hover:text-indigo-300 transition duration-300 flex items-center",[f(s)?"text-indigo-400":"text-indigo-600"]])},[x[9]||(x[9]=P(" 取件记录 ")),_(f(lt),{class:"w-4 h-4 ml-1"})],2)],2)],2)]),_(ae,{name:"drawer"},{default:O(()=>[p.value?(M(),L("div",{key:0,class:b(["fixed inset-y-0 right-0 w-full sm:w-120 bg-opacity-70 backdrop-filter backdrop-blur-xl shadow-2xl z-50 overflow-hidden flex flex-col",[f(s)?"bg-gray-900":"bg-white"]])},[h("div",{class:b(["flex justify-between items-center p-6 border-b",[f(s)?"border-gray-700":"border-gray-200"]])},[h("h3",{class:b(["text-2xl font-bold",[f(s)?"text-white":"text-gray-800"]])}," 取件记录 ",2),h("button",{onClick:Z,class:b(["hover:text-white transition duration-300",[f(s)?"text-gray-400":"text-gray-800"]])},[_(f(ke),{class:"w-6 h-6"})],2)],2),h("div",hn,[_(et,{name:"list",tag:"div",class:"space-y-4"},{default:O(()=>[(M(!0),L(tt,null,nt(f(w),$=>(M(),L("div",{key:$.id,class:b(["bg-opacity-50 rounded-lg p-4 flex items-center shadow-md hover:shadow-lg transition duration-300 transform hover:scale-102",[f(s)?"bg-gray-800 hover:bg-gray-700":"bg-gray-100 hover:bg-white"]])},[h("div",pn,[_(f(be),{class:b(["w-10 h-10",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])]),h("div",dn,[h("p",{class:b(["font-medium text-lg truncate",[f(s)?"text-white":"text-gray-800"]])},j($.filename),3),h("p",{class:b(["text-sm truncate",[f(s)?"text-gray-400":"text-gray-600"]])},j($.date)+" · "+j($.size),3)]),h("div",fn,[h("button",{onClick:Y=>K($),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-indigo-400 text-indigo-400":"hover:bg-indigo-100 text-indigo-600"]])},[_(f(ut),{class:"w-5 h-5"})],10,gn),h("button",{onClick:Y=>De($),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-green-400 text-green-400":"hover:bg-green-100 text-green-600"]])},[_(f(we),{class:"w-5 h-5"})],10,xn),h("button",{onClick:Y=>le($.id),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-red-400 text-red-400":"hover:bg-red-100 text-red-600"]])},[_(f(dt),{class:"w-5 h-5"})],10,kn)])],2))),128))]),_:1})])],2)):ee("",!0)]),_:1}),_(ae,{name:"fade"},{default:O(()=>[u.value?(M(),L("div",bn,[h("div",{class:b(["p-8 rounded-2xl max-w-md w-full mx-4 shadow-2xl transform transition-all duration-300 ease-out backdrop-filter backdrop-blur-lg overflow-hidden",[f(s)?"bg-gray-800 bg-opacity-70":"bg-white bg-opacity-95"]])},[h("h3",{class:b(["text-2xl font-bold mb-6 truncate",[f(s)?"text-white":"text-gray-800"]])}," 文件详情 ",2),h("div",wn,[h("div",mn,[_(f(be),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[10]||(x[10]=h("span",{class:"font-medium"},"文件名:",-1)),P(j(u.value.filename),1)],2)]),h("div",yn,[_(f(gt),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[11]||(x[11]=h("span",{class:"font-medium"},"取件日期:",-1)),P(j(u.value.date),1)],2)]),h("div",vn,[_(f(pt),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[12]||(x[12]=h("span",{class:"font-medium"},"文件大小:",-1)),P(j(u.value.size),1)],2)]),h("div",_n,[_(f(we),{class:b(["w-6 h-6 mr-3",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([f(s)?"text-gray-300":"text-gray-800"])},x[13]||(x[13]=[h("span",{class:"font-medium"},"文件内容:",-1)]),2),u.value.filename=="Text"?(M(),L("div",$n,[h("button",{onClick:Pe,class:"px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition duration-300"}," 预览内容 ")])):(M(),L("div",Tn,[h("a",{href:R(u.value),target:"_blank",rel:"noopener noreferrer",class:"px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition duration-300"}," 点击下载 ",8,Rn)]))])]),h("div",zn,[h("h4",{class:b(["text-lg font-semibold mb-3",[f(s)?"text-white":"text-gray-800"]])}," 取件二维码 ",2),h("div",Sn,[_(at,{value:je(u.value),size:128,level:"M"},null,8,["value"])]),h("p",{class:b(["mt-2 text-sm",[f(s)?"text-gray-400":"text-gray-600"]])}," 扫描二维码快速取件 ",2)]),h("button",{onClick:x[3]||(x[3]=$=>u.value=null),class:"mt-8 w-full bg-gradient-to-r from-indigo-500 to-purple-600 text-white px-6 py-3 rounded-lg font-medium hover:from-indigo-600 hover:to-purple-700 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition duration-300 transform hover:scale-105"}," 关闭 ")],2)])):ee("",!0)]),_:1}),_(ae,{name:"fade"},{default:O(()=>[J.value?(M(),L("div",An,[h("div",{class:b(["p-6 rounded-2xl max-w-3xl w-full mx-4 shadow-2xl transform transition-all duration-300 ease-out backdrop-filter backdrop-blur-lg bg-opacity-70 max-h-[85vh] overflow-hidden flex flex-col",[f(s)?"bg-gray-800":"bg-white"]])},[h("div",En,[h("h3",{class:b(["text-2xl font-bold",[f(s)?"text-white":"text-gray-800"]])}," 内容预览 ",2),h("div",Cn,[h("button",{onClick:B,class:b(["px-4 py-1.5 rounded-lg transition duration-300 flex items-center gap-2 text-sm font-medium",[f(s)?"bg-gray-700 hover:bg-gray-600 text-gray-300 hover:text-white":"bg-gray-100 hover:bg-gray-200 text-gray-700 hover:text-gray-900"]])},[_(f(xt),{class:"w-4 h-4"}),x[14]||(x[14]=P(" 复制 "))],2),h("button",{onClick:x[4]||(x[4]=$=>J.value=!1),class:b(["p-1.5 rounded-lg transition duration-300 hover:bg-opacity-10",[f(s)?"text-gray-400 hover:text-white hover:bg-white":"text-gray-500 hover:text-gray-900 hover:bg-black"]])},[_(f(ke),{class:"w-5 h-5"})],2)])]),h("div",In,[h("div",{class:b(["prose max-w-none p-6 rounded-xl",[f(s)?"prose-invert bg-gray-900 bg-opacity-50":"bg-gray-50"]]),innerHTML:qe.value},null,10,Ln)])],2)])):ee("",!0)]),_:1})])}}},Zn=Ze(Mn,[["__scopeId","data-v-3129e8a3"]]);export{Zn as default}; diff --git a/themes/2025/assets/SendFileView-DFaiiDlV.css b/themes/2025/assets/SendFileView-DFaiiDlV.css new file mode 100644 index 000000000..e312d4b72 --- /dev/null +++ b/themes/2025/assets/SendFileView-DFaiiDlV.css @@ -0,0 +1 @@ +.border-progress-container[data-v-74085255]{position:relative;width:100%;height:100%}.border-progress-canvas[data-v-74085255]{position:absolute;top:0;left:0;width:100%;height:100%;transition:all .3s ease}.fade-enter-active[data-v-fad875ce],.fade-leave-active[data-v-fad875ce]{transition:opacity .3s ease,transform .3s ease}.fade-enter-from[data-v-fad875ce],.fade-leave-to[data-v-fad875ce]{opacity:0;transform:translateY(10px)}@media (min-width: 640px){.sm\:w-120[data-v-fad875ce]{width:30rem}}.fade-enter-to[data-v-fad875ce],.fade-leave-from[data-v-fad875ce]{opacity:1;transform:translateY(0)}.drawer-enter-active[data-v-fad875ce],.drawer-leave-active[data-v-fad875ce]{transition:transform .3s ease}.drawer-enter-from[data-v-fad875ce],.drawer-leave-to[data-v-fad875ce]{transform:translate(100%)}.list-enter-active[data-v-fad875ce],.list-leave-active[data-v-fad875ce]{transition:all .5s ease}.list-enter-from[data-v-fad875ce],.list-leave-to[data-v-fad875ce]{opacity:0;transform:translate(30px)}select option[data-v-fad875ce]{padding:8px;margin:4px;border-radius:6px}select option[data-v-fad875ce]:checked{background:linear-gradient(to right,#6366f180,#a855f780)!important;color:#fff!important}.dark select option[data-v-fad875ce]:checked{background:linear-gradient(to right,#6366f1b3,#a855f7b3)!important}select option[data-v-fad875ce]:hover{background-color:#6366f11a}.dark select option[data-v-fad875ce]:hover{background-color:#6366f133} diff --git a/themes/2025/assets/SendFileView-DJlusruR.js b/themes/2025/assets/SendFileView-DJlusruR.js new file mode 100644 index 000000000..4c2a0e2c4 --- /dev/null +++ b/themes/2025/assets/SendFileView-DJlusruR.js @@ -0,0 +1,31 @@ +import{c as U,d as ue,r as I,o as ge,w as Ie,a as S,b as e,e as w,_ as pe,u as Ae,f as $e,g as m,n as a,h as r,i as De,t as T,j as E,k as V,l as j,m as O,v as se,T as Q,F as J,p as Fe,q as Pe,s as ae,x as K,y as je,X as ne,z as Be,A as le,B as Ue,C as H}from"./index-C-4-823a.js";import{u as Re,S as ie,C as Ve,c as He,a as Le,Q as qe,b as X,E as Ee}from"./clipboard-WGJncgVO.js";import{F as ce}from"./file-D-r2HShG.js";import{T as Ne}from"./trash-CAImX6bg.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Y=U("ClipboardCopyIcon",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const We=U("ClockIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Ge=U("CloudUploadIcon",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242",key:"1pljnt"}],["path",{d:"m8 17 4-4 4 4",key:"1quai1"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Oe=U("SendIcon",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Qe=U("TerminalIcon",[["polyline",{points:"4 17 10 11 4 5",key:"akl6gq"}],["line",{x1:"12",x2:"20",y1:"19",y2:"19",key:"q2wloq"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Je=U("TextIcon",[["path",{d:"M17 6.1H3",key:"wptmhv"}],["path",{d:"M21 12.1H3",key:"1j38uz"}],["path",{d:"M15.1 18H3",key:"1nb16a"}]]),Ke=ue({__name:"BorderProgressBar",props:{progress:{}},setup($){const M=$,B=I(null),o=I(null);let u=null;const k=()=>{if(!u||!o.value||!B.value)return;const g=B.value.clientWidth,h=B.value.clientHeight;o.value.width=g,o.value.height=h;const c=4,l=8;u.lineWidth=c;const y=u.createLinearGradient(0,0,g,h);y.addColorStop(0,"#4f46e5"),y.addColorStop(.5,"#7c3aed"),y.addColorStop(1,"#db2777"),u.strokeStyle="rgba(229, 231, 235, 0.2)",_(u,c/2,c/2,g-c,h-c,l),u.stroke();const v=((g+h)*2-8*l+2*Math.PI*l)*M.progress/100;u.strokeStyle=y,u.lineCap="round",u.lineJoin="round",u.beginPath();let d=v;const x=c/2,z=g-c,D=h-c;if(d>0){const p=Math.min(z-2*l,d);u.moveTo(l+x,x),u.lineTo(p+l+x,x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(z-l+x,l+x,l,-Math.PI/2,p-Math.PI/2,!1),d-=p*l}if(d>0){const p=Math.min(D-2*l,d);u.lineTo(z+x,p+l+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(z-l+x,D-l+x,l,0,p,!1),d-=p*l}if(d>0){const p=Math.min(z-2*l,d);u.lineTo(z-p-l+x,D+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(l+x,D-l+x,l,Math.PI/2,Math.PI/2+p,!1),d-=p*l}if(d>0){const p=Math.min(D-2*l,d);u.lineTo(x,D-p-l+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(l+x,l+x,l,Math.PI,Math.PI+p,!1)}u.stroke()};function _(g,h,c,l,y,b){g.beginPath(),g.moveTo(h+b,c),g.lineTo(h+l-b,c),g.arcTo(h+l,c,h+l,c+b,b),g.lineTo(h+l,c+y-b),g.arcTo(h+l,c+y,h+l-b,c+y,b),g.lineTo(h+b,c+y),g.arcTo(h,c+y,h,c+y-b,b),g.lineTo(h,c+b),g.arcTo(h,c,h+b,c,b),g.closePath()}return ge(()=>{o.value&&(u=o.value.getContext("2d"),k())}),Ie(()=>M.progress,k),(g,h)=>(w(),S("div",{class:"border-progress-container",ref_key:"container",ref:B},[e("canvas",{ref_key:"canvas",ref:o,class:"border-progress-canvas"},null,512)],512))}}),Xe=pe(Ke,[["__scopeId","data-v-74085255"]]),de=$=>$>=1024*1024*1024?Math.round($/(1024*1024*1024))+"GB":$>=1024*1024?Math.round($/(1024*1024))+"MB":Math.round($/1024)+"KB",Ye={class:"p-8"},Ze={class:"flex justify-center space-x-4 mb-6"},et={key:"file",class:"grid grid-cols-1 gap-8"},tt={key:0,class:"absolute inset-0 w-full h-full"},rt={class:"block truncate"},ot={key:"text",class:"grid grid-cols-1 gap-8"},st={key:0,class:"flex flex-col"},at={class:"flex flex-col space-y-3"},nt={class:"relative flex-grow group"},lt=["placeholder"],it=["value"],ct={type:"submit",class:"w-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 text-white font-bold py-4 px-6 rounded-lg focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition-all duration-300 transform hover:scale-105 hover:shadow-lg relative overflow-hidden group"},dt={class:"relative z-10 flex items-center justify-center text-lg"},ut={class:"mt-6 text-center"},gt={class:"flex-grow overflow-y-auto p-6"},pt={class:"flex-shrink-0 mr-4"},ht={class:"flex-grow min-w-0 mr-4"},ft={class:"flex-shrink-0 flex space-x-2"},mt=["onClick"],xt=["onClick"],vt=["onClick"],yt={key:0,class:"fixed inset-0 bg-black/60 backdrop-blur-sm flex items-center justify-center z-50 p-3 sm:p-4 overflow-y-auto"},bt={class:"flex items-center justify-between"},wt={class:"p-4 sm:p-6"},kt={class:"flex items-center mb-3 sm:mb-4"},_t={class:"ml-3 sm:ml-4 min-w-0 flex-1"},Ct={class:"grid grid-cols-2 gap-3 sm:gap-4"},St={class:"flex items-center min-w-0"},Mt={class:"flex items-center min-w-0"},zt={class:"grid grid-cols-1 md:grid-cols-2 gap-4 sm:gap-6"},Tt={class:"space-y-3 sm:space-y-4"},It={class:"bg-gradient-to-br from-indigo-500 to-purple-600 rounded-xl p-4 sm:p-5 text-white"},At={class:"flex items-center justify-between mb-3 sm:mb-4"},$t={class:"text-2xl sm:text-3xl font-bold tracking-wider text-center break-all"},Dt={class:"flex items-center justify-between mb-2 sm:mb-3"},Ft={class:"bg-white p-3 sm:p-4 rounded-lg shadow-sm mb-3 sm:mb-4"},Pt=ue({__name:"SendFileView",setup($){const M=JSON.parse(localStorage.getItem("config")||"{}"),B=Ue(),o=De("isDarkMode"),u=Re(),k=I("file"),_=I(null),g=I(""),h=I(null),c=I("day"),l=I("1"),y=I(0),b=I(!1),v=I(null),d=Ae(),x=$e(()=>u.shareData),z=I(""),D=()=>{var n;(n=h.value)==null||n.click()},p=async n=>{const t=n.target;if(t.files&&t.files.length>0){const i=t.files[0];if(_.value=i,!W())return;z.value=await N(i),console.log(z.value)}},he=async n=>{var t;if((t=n.dataTransfer)!=null&&t.files&&n.dataTransfer.files.length>0){const i=n.dataTransfer.files[0];if(_.value=i,!W())return;z.value=await N(i)}},fe=async n=>{var i;const t=(i=n.clipboardData)==null?void 0:i.items;if(t)for(const s of t)if(s.kind==="file"){const f=s.getAsFile();if(f){if(f.size===0){d.showAlert("无法读取空文件","error");return}if(_.value=f,!W())return;try{z.value=await N(f),d.showAlert("已从剪贴板添加文件:"+f.name,"success")}catch(C){d.showAlert("文件处理失败","error"),console.error("File hash calculation failed:",C)}break}}else k.value="text",t[0].getAsString(f=>{g.value+=f})},N=async n=>new Promise(t=>{const s=new FileReader;let f=0;const C=Math.ceil(n.size/2097152);s.onload=async F=>{const A=new Uint8Array(F.target.result);try{if(window.isSecureContext){const P=await crypto.subtle.digest("SHA-256",A),G=Array.from(new Uint8Array(P)).map(q=>q.toString(16).padStart(2,"0")).join("");f++,f{const F=f*2097152,A=F+2097152>=n.size?n.size:F+2097152;s.readAsArrayBuffer(n.slice(F,A))};R()}),Z=n=>{const t=`${n.name}-${n.size}-${n.lastModified}`;let i=0;for(let s=0;s{switch(n){case"day":return"输入天数";case"hour":return"输入小时数";case"minute":return"输入分钟数";case"count":return"输入查看次数";case"forever":return"永久";default:return"输入值"}},ee=(n=c.value)=>{switch(n){case"day":return"天";case"hour":return"小时";case"minute":return"分钟";case"count":return"次";case"forever":return"永久";default:return""}},xe=async n=>{var t,i;try{const f=Math.ceil(n.size/5242880),C=await H.post("chunk/upload/init/",{file_name:n.name,file_size:n.size,chunk_size:5242880,file_hash:z.value});if(C.code!==200)throw new Error("初始化切片上传失败");if(C.detail.existed)return C;const R=C.detail.upload_id;for(let A=0;A{const Te=Math.round((A*5242880+ze.loaded)*100/n.size);y.value=Te}})).code!==200)throw new Error(`切片 ${A} 上传失败`)}const F=await H.post(`chunk/upload/complete/${R}`,{expire_value:l.value?parseInt(l.value):1,expire_style:c.value});if(F.code!==200)throw new Error("完成上传失败");return F}catch(s){throw console.error("切片上传失败:",s),(i=(t=s.response)==null?void 0:t.data)!=null&&i.detail?d.showAlert(s.response.data.detail,"error"):d.showAlert("上传失败,请稍后重试","error"),s}},ve=async n=>{const t=new FormData,i={headers:{"Content-Type":"multipart/form-data"},onUploadProgress:f=>{const C=Math.round(f.loaded*100/f.total);y.value=C}};return t.append("file",n),t.append("expire_value",l.value),t.append("expire_style",c.value),await H.post("share/file/",t,i)},ye=()=>M.openUpload===0&&localStorage.getItem("token")===null?(d.showAlert("游客上传功能已关闭","error"),!1):!0,be=n=>n.size>M.uploadSize?(d.showAlert(`文件大小超过限制 (${de(M.uploadSize)})`,"error"),_.value=null,!1):!0,te=(n,t)=>{if(n==="forever"||n==="count")return!0;const i=M.max_save_seconds||0;if(i===0)return!0;let s=0;switch(n){case"minute":s=parseInt(t)*60;break;case"hour":s=parseInt(t)*3600;break;case"day":s=parseInt(t)*86400;break;default:return!1}return s<=i},W=()=>!(!ye()||!be(_.value)||!te(c.value,l.value)),we=async()=>{var n,t;if(k.value==="file"&&!_.value){d.showAlert("请选择要上传的文件","error");return}if(k.value==="text"&&!g.value.trim()){d.showAlert("请输入要发送的文本","error");return}if(c.value!=="forever"&&!l.value){d.showAlert("请输入过期值","error");return}if(!te(c.value,l.value)){const i=Math.floor(M.max_save_seconds/86400);d.showAlert(`过期时间不能超过${i}天`,"error");return}try{let i;if(k.value==="file")M.enableChunk?i=await xe(_.value):i=await ve(_.value);else{const s=new FormData;s.append("text",g.value),s.append("expire_value",l.value),s.append("expire_style",c.value),i=await H.post("share/text/",s,{headers:{"Content-Type":"multipart/form-data"}})}if(i&&i.code===200){const s=i.detail.code,f=i.detail.name,C={id:Date.now(),type:k.value,filename:f,date:new Date().toISOString().split("T")[0],size:k.value==="text"?`${(g.value.length/1024).toFixed(2)} KB`:`${(_.value.size/(1024*1024)).toFixed(1)} MB`,expiration:c.value==="forever"?"永久":`${l.value}${ee()}后过期`,retrieveCode:s};console.log(C),u.addShareData(C),d.showAlert(`文件发送成功!取件码:${s}`,"success"),_.value=null,g.value="",y.value=0,v.value=C,await X(s)}else throw new Error("服务器响应异常")}catch(i){console.error("发送失败:",i),(t=(n=i.response)==null?void 0:n.data)!=null&&t.detail?d.showAlert(i.response.data.detail,"error"):d.showAlert("发送失败,请稍后重试","error")}finally{y.value=0}},ke=()=>{B.push("/")},re=()=>{b.value=!b.value},_e=n=>{v.value=n},Ce=n=>{const t=u.shareData.findIndex(i=>i.id===n);t!==-1&&u.deleteShareData(t)},Se=window.location.origin+"/#/",Me=n=>`${Se}?code=${n.retrieveCode}`,oe=n=>{const i=(parseInt(l.value)||0)+n;i>=1&&(l.value=i.toString())};return ge(()=>{console.log("SendFileView mounted")}),(n,t)=>{const i=je("router-link");return w(),S("div",{class:"min-h-screen flex items-center justify-center p-4 overflow-hidden transition-colors duration-300",onPaste:E(fe,["prevent"])},[e("div",{class:a(["rounded-3xl shadow-2xl overflow-hidden border w-full max-w-md transition-colors duration-300",[r(o)?"bg-white bg-opacity-10 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200"]])},[e("div",Ye,[e("h2",{class:a(["text-3xl font-extrabold text-center mb-8 cursor-pointer transition-colors duration-300",[r(o)?"text-transparent bg-clip-text bg-gradient-to-r from-indigo-300 via-purple-300 to-pink-300":"text-indigo-600"]]),onClick:ke},T(r(M).name),3),e("form",{onSubmit:E(we,["prevent"]),class:"space-y-8"},[e("div",Ze,[e("button",{type:"button",onClick:t[0]||(t[0]=s=>k.value="file"),class:a(["px-4 py-2 rounded-lg",k.value==="file"?"bg-indigo-600 text-white":"bg-gray-700 text-gray-300"])}," 发送文件 ",2),e("button",{type:"button",onClick:t[1]||(t[1]=s=>k.value="text"),class:a(["px-4 py-2 rounded-lg",k.value==="text"?"bg-indigo-600 text-white":"bg-gray-700 text-gray-300"])}," 发送文本 ",2)]),m(Q,{name:"fade",mode:"out-in"},{default:V(()=>[k.value==="file"?(w(),S("div",et,[e("div",{class:a(["rounded-xl p-8 flex flex-col items-center justify-center border-2 border-dashed transition-all duration-300 group cursor-pointer relative",[r(o)?"bg-gray-800 bg-opacity-50 border-gray-600 hover:border-indigo-500":"bg-gray-100 border-gray-300 hover:border-indigo-500"]]),onClick:D,onDragover:t[2]||(t[2]=E(()=>{},["prevent"])),onDrop:E(he,["prevent"])},[e("input",{id:"file-upload",type:"file",class:"hidden",onChange:p,ref_key:"fileInput",ref:h},null,544),y.value>0?(w(),S("div",tt,[m(Xe,{progress:y.value},null,8,["progress"])])):j("",!0),m(r(Ge),{class:a(["w-16 h-16 transition-colors duration-300",r(o)?"text-gray-400 group-hover:text-indigo-400":"text-gray-600 group-hover:text-indigo-600"])},null,8,["class"]),e("p",{class:a(["mt-4 text-sm transition-colors duration-300 w-full text-center",r(o)?"text-gray-400 group-hover:text-indigo-400":"text-gray-600 group-hover:text-indigo-600"])},[e("span",rt,T(_.value?_.value.name:"点击或拖放文件到此处上传"),1)],2),e("p",{class:a(["mt-2 text-xs",r(o)?"text-gray-500":"text-gray-400"])}," 支持各种常见格式,最大"+T(r(de)(r(M).uploadSize)),3)],34)])):(w(),S("div",ot,[k.value==="text"?(w(),S("div",st,[O(e("textarea",{id:"text-content","onUpdate:modelValue":t[3]||(t[3]=s=>g.value=s),rows:"7",class:a(["flex-grow px-4 py-3 rounded-xl placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-indigo-500 transition duration-300 resize-none",r(o)?"bg-gray-800 bg-opacity-50 text-white":"bg-white text-gray-900 border border-gray-300"]),placeholder:"在此输入要发送的文本..."},null,2),[[se,g.value]])])):j("",!0)]))]),_:1}),e("div",at,[e("label",{class:a(["text-sm font-medium",r(o)?"text-gray-300":"text-gray-700"])}," 过期时间 ",2),e("div",nt,[e("div",{class:a(["relative h-11 rounded-xl border transition-all duration-300",r(o)?"bg-gray-800/50 border-gray-700/50 group-hover:border-gray-600":"bg-white border-gray-200 group-hover:border-gray-300"])},[c.value!=="forever"?(w(),S(J,{key:0},[O(e("input",{"onUpdate:modelValue":t[4]||(t[4]=s=>l.value=s),type:"number",placeholder:me(),min:"1",class:a(["w-full h-full px-4 pr-32 rounded-xl placeholder-gray-400 transition-all duration-300","focus:outline-none focus:ring-2 focus:ring-offset-0","[appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none","bg-transparent",r(o)?"text-gray-100 focus:ring-indigo-500/70 placeholder-gray-500":"text-gray-900 focus:ring-indigo-500/50 placeholder-gray-400"])},null,10,lt),[[se,l.value]]),e("div",{class:a(["absolute right-24 top-0 h-full flex flex-col border-l",[r(o)?"border-gray-700/50":"border-gray-200"]])},[e("button",{type:"button",onClick:t[5]||(t[5]=s=>oe(1)),class:a(["flex-1 px-2 flex items-center justify-center transition-all duration-200",[r(o)?"hover:bg-gray-700/50 text-gray-400 hover:text-gray-200":"hover:bg-gray-50 text-gray-500 hover:text-gray-700"]])},t[12]||(t[12]=[e("svg",{class:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 15l7-7 7 7"})],-1)]),2),e("button",{type:"button",onClick:t[6]||(t[6]=s=>oe(-1)),class:a(["flex-1 px-2 flex items-center justify-center transition-all duration-200",[r(o)?"hover:bg-gray-700/50 text-gray-400 hover:text-gray-200":"hover:bg-gray-50 text-gray-500 hover:text-gray-700"]])},t[13]||(t[13]=[e("svg",{class:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"})],-1)]),2)],2)],64)):j("",!0),O(e("select",{"onUpdate:modelValue":t[7]||(t[7]=s=>c.value=s),class:a(["absolute right-0 top-0 h-full appearance-none cursor-pointer","focus:outline-none focus:ring-2 focus:ring-offset-0",c.value==="forever"?"w-full px-4":"w-24 pl-3 pr-8 border-l",r(o)?"text-gray-100 border-gray-700/50 focus:ring-indigo-500/70 bg-gray-800/50":"text-gray-900 border-gray-200 focus:ring-indigo-500/50 bg-white"]),style:Pe([c.value==="forever"?"border-radius: 0.75rem;":"border-top-right-radius: 0.75rem;border-bottom-right-radius: 0.75rem;"])},[(w(!0),S(J,null,ae(r(M).expireStyle,s=>(w(),S("option",{value:s,key:s,class:a([r(o)?"bg-gray-800 text-gray-100":"bg-white text-gray-900"])},T(ee(s)),11,it))),128))],6),[[Fe,c.value]]),e("div",{class:a(["absolute pointer-events-none",[c.value==="forever"?"right-3":"right-2","top-1/2 -translate-y-1/2"]])},[(w(),S("svg",{class:a(["w-4 h-4 transition-colors duration-300",[r(o)?"text-gray-400":"text-gray-500"]]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},t[14]||(t[14]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"},null,-1)]),2))],2)],2)])]),e("button",ct,[t[16]||(t[16]=e("span",{class:"absolute top-0 left-0 w-full h-full bg-white opacity-0 group-hover:opacity-20 transition-opacity duration-300"},null,-1)),e("span",dt,[m(r(Oe),{class:"w-6 h-6 mr-2"}),t[15]||(t[15]=e("span",null,"安全寄送",-1))])])],32),e("div",ut,[m(i,{to:"/",class:"text-indigo-400 hover:text-indigo-300 transition duration-300"},{default:V(()=>t[17]||(t[17]=[K(" 需要取件?点击这里 ")])),_:1,__:[17]})])]),e("div",{class:a(["px-8 py-4 bg-opacity-50 flex justify-between items-center",[r(o)?"bg-gray-800":"bg-gray-100"]])},[e("span",{class:a(["text-sm flex items-center",[r(o)?"text-gray-300":"text-gray-800"]])},[m(r(ie),{class:"w-4 h-4 mr-1 text-green-400"}),t[18]||(t[18]=K(" 安全加密 "))],2),e("button",{onClick:re,class:a(["text-sm hover:text-indigo-300 transition duration-300 flex items-center",[r(o)?"text-indigo-400":"text-indigo-600"]])},[t[19]||(t[19]=K(" 发件记录 ")),m(r(Ve),{class:"w-4 h-4 ml-1"})],2)],2)],2),m(Q,{name:"drawer"},{default:V(()=>[b.value?(w(),S("div",{key:0,class:a(["fixed inset-y-0 right-0 w-full sm:w-120 bg-opacity-70 backdrop-filter backdrop-blur-xl shadow-2xl z-50 overflow-hidden flex flex-col",[r(o)?"bg-gray-900":"bg-white"]])},[e("div",{class:a(["flex justify-between items-center p-6 border-b",[r(o)?"border-gray-700":"border-gray-200"]])},[e("h3",{class:a(["text-2xl font-bold",[r(o)?"text-white":"text-gray-800"]])}," 发件记录 ",2),e("button",{onClick:re,class:a(["hover:text-white transition duration-300",[r(o)?"text-gray-400":"text-gray-800"]])},[m(r(ne),{class:"w-6 h-6"})],2)],2),e("div",gt,[m(Be,{name:"list",tag:"div",class:"space-y-4"},{default:V(()=>[(w(!0),S(J,null,ae(x.value,s=>(w(),S("div",{key:s.id,class:a(["bg-opacity-50 rounded-lg p-4 flex items-center shadow-md hover:shadow-lg transition duration-300 transform hover:scale-102",[r(o)?"bg-gray-800 hover:bg-gray-700":"bg-gray-100 hover:bg-white"]])},[e("div",pt,[m(r(ce),{class:a(["w-10 h-10",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])]),e("div",ht,[e("p",{class:a(["font-medium text-lg truncate",[r(o)?"text-white":"text-gray-800"]])},T(s.filename?s.filename:"Text"),3),e("p",{class:a(["text-sm truncate",[r(o)?"text-gray-400":"text-gray-600"]])},T(s.date)+" · "+T(s.size),3)]),e("div",ft,[e("button",{onClick:f=>r(X)(s.retrieveCode),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-blue-400 text-blue-400":"hover:bg-blue-100 text-blue-600"]])},[m(r(Y),{class:"w-5 h-5"})],10,mt),e("button",{onClick:f=>_e(s),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-green-400 text-green-400":"hover:bg-green-100 text-green-600"]])},[m(r(Ee),{class:"w-5 h-5"})],10,xt),e("button",{onClick:f=>Ce(s.id),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-red-400 text-red-400":"hover:bg-red-100 text-red-600"]])},[m(r(Ne),{class:"w-5 h-5"})],10,vt)])],2))),128))]),_:1})])],2)):j("",!0)]),_:1}),m(Q,{name:"fade"},{default:V(()=>[v.value?(w(),S("div",yt,[e("div",{class:a(["w-full max-w-2xl rounded-2xl shadow-2xl transform transition-all duration-300 ease-out overflow-hidden",[r(o)?"bg-gray-900 bg-opacity-70":"bg-white bg-opacity-95"]])},[e("div",{class:a(["px-4 sm:px-6 py-3 sm:py-4 border-b",[r(o)?"border-gray-800":"border-gray-100"]])},[e("div",bt,[e("h3",{class:a(["text-lg sm:text-xl font-semibold",[r(o)?"text-white":"text-gray-900"]])}," 文件详情 ",2),e("button",{onClick:t[8]||(t[8]=s=>v.value=null),class:"p-1.5 sm:p-2 rounded-full hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors"},[m(r(ne),{class:a(["w-4 h-4 sm:w-5 sm:h-5",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"])])])],2),e("div",wt,[e("div",{class:a(["rounded-xl p-3 sm:p-4 mb-4 sm:mb-6",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",kt,[e("div",{class:a(["p-2 sm:p-3 rounded-lg",[r(o)?"bg-gray-800":"bg-white"]])},[v.value.type==="file"?(w(),le(r(ce),{key:0,class:a(["w-5 h-5 sm:w-6 sm:h-6",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):j("",!0),v.value.type==="text"?(w(),le(r(Je),{key:1,class:a(["w-5 h-5 sm:w-6 sm:h-6",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):j("",!0)],2),e("div",_t,[e("h4",{class:a(["font-medium text-sm sm:text-base truncate",[r(o)?"text-white":"text-gray-900"]])},T(v.value.filename?v.value.filename:"Text"),3),e("p",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-400":"text-gray-500"]])},T(v.value.size)+" · "+T(v.value.date),3)])]),e("div",Ct,[e("div",St,[m(r(We),{class:a(["w-3.5 h-3.5 sm:w-4 sm:h-4 mr-1.5 sm:mr-2 flex-shrink-0",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"]),e("span",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-300":"text-gray-600"]])},T(v.value.expiration),3)]),e("div",Mt,[m(r(ie),{class:a(["w-3.5 h-3.5 sm:w-4 sm:h-4 mr-1.5 sm:mr-2 flex-shrink-0",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"]),e("span",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-300":"text-gray-600"]])}," 安全加密 ",2)])])],2),e("div",zt,[e("div",Tt,[e("div",It,[e("div",At,[t[20]||(t[20]=e("h4",{class:"font-medium text-sm sm:text-base"},"取件码",-1)),e("button",{onClick:t[9]||(t[9]=s=>r(He)(v.value.retrieveCode)),class:"p-1.5 sm:p-2 rounded-full hover:bg-white/10 transition-colors"},[m(r(Y),{class:"w-4 h-4 sm:w-5 sm:h-5",name:"点击复制取件码"})])]),e("p",$t,T(v.value.retrieveCode),1)]),e("div",{class:a(["rounded-xl p-3 sm:p-4",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",Dt,[e("h4",{class:a(["font-medium text-sm sm:text-base flex items-center min-w-0",[r(o)?"text-white":"text-gray-900"]])},[m(r(Qe),{class:"w-4 h-4 sm:w-5 sm:h-5 mr-1.5 sm:mr-2 text-indigo-500 flex-shrink-0"}),t[21]||(t[21]=e("span",{class:"truncate"},"wget下载",-1))],2),e("button",{onClick:t[10]||(t[10]=s=>r(Le)(v.value.retrieveCode,v.value.filename)),class:"p-1.5 sm:p-2 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors flex-shrink-0"},[m(r(Y),{class:a(["w-4 h-4 sm:w-5 sm:h-5",[r(o)?"text-gray-400":"text-gray-500"]]),name:"点击复制wget命令"},null,8,["class"])])]),e("p",{class:a(["text-xs sm:text-sm font-mono break-all line-clamp-2",[r(o)?"text-gray-300":"text-gray-600"]])}," 点击复制wget命令 ",2)],2)]),e("div",{class:a(["rounded-xl p-4 sm:p-5 flex flex-col items-center",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",Ft,[m(qe,{value:Me(v.value),size:140,level:"M",class:"sm:w-[160px] sm:h-[160px]"},null,8,["value"])]),e("p",{class:a(["text-xs sm:text-sm truncate max-w-full",[r(o)?"text-gray-400":"text-gray-500"]])}," 扫描二维码快速取件 ",2)],2)])]),e("div",{class:a(["px-4 sm:px-6 py-3 sm:py-4 border-t",[r(o)?"border-gray-800":"border-gray-100"]])},[e("button",{onClick:t[11]||(t[11]=s=>r(X)(v.value.retrieveCode)),class:"w-full bg-indigo-600 hover:bg-indigo-700 text-white px-4 sm:px-6 py-2 sm:py-3 rounded-lg text-sm sm:text-base font-medium transition-colors"}," 复制取件链接 ")],2)],2)])):j("",!0)]),_:1})],32)}}}),Ht=pe(Pt,[["__scopeId","data-v-fad875ce"]]);export{Ht as default}; diff --git a/themes/2025/assets/SendFileView-DsSIurce.js b/themes/2025/assets/SendFileView-DsSIurce.js new file mode 100644 index 000000000..3188dcb34 --- /dev/null +++ b/themes/2025/assets/SendFileView-DsSIurce.js @@ -0,0 +1,31 @@ +import{c as U,d as ue,r as I,o as ge,w as Ie,a as S,b as e,e as w,_ as pe,u as Ae,f as $e,g as m,n as a,h as r,i as De,t as T,j as E,k as V,l as j,m as O,v as se,T as Q,F as J,p as Fe,q as Pe,s as ae,x as K,y as je,X as ne,z as Be,A as le,B as Ue,C as H}from"./index-DKQ1YPO4.js";import{u as Re,S as ie,C as Ve,c as He,a as Le,Q as qe,b as X,E as Ee}from"./clipboard-BhvW87y2.js";import{F as ce}from"./file-D8mQlyUF.js";import{T as Ne}from"./trash-FNvP9-P8.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Y=U("ClipboardCopyIcon",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const We=U("ClockIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Ge=U("CloudUploadIcon",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242",key:"1pljnt"}],["path",{d:"m8 17 4-4 4 4",key:"1quai1"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Oe=U("SendIcon",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Qe=U("TerminalIcon",[["polyline",{points:"4 17 10 11 4 5",key:"akl6gq"}],["line",{x1:"12",x2:"20",y1:"19",y2:"19",key:"q2wloq"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Je=U("TextIcon",[["path",{d:"M17 6.1H3",key:"wptmhv"}],["path",{d:"M21 12.1H3",key:"1j38uz"}],["path",{d:"M15.1 18H3",key:"1nb16a"}]]),Ke=ue({__name:"BorderProgressBar",props:{progress:{}},setup($){const M=$,B=I(null),o=I(null);let u=null;const k=()=>{if(!u||!o.value||!B.value)return;const g=B.value.clientWidth,h=B.value.clientHeight;o.value.width=g,o.value.height=h;const c=4,l=8;u.lineWidth=c;const y=u.createLinearGradient(0,0,g,h);y.addColorStop(0,"#4f46e5"),y.addColorStop(.5,"#7c3aed"),y.addColorStop(1,"#db2777"),u.strokeStyle="rgba(229, 231, 235, 0.2)",_(u,c/2,c/2,g-c,h-c,l),u.stroke();const v=((g+h)*2-8*l+2*Math.PI*l)*M.progress/100;u.strokeStyle=y,u.lineCap="round",u.lineJoin="round",u.beginPath();let d=v;const x=c/2,z=g-c,D=h-c;if(d>0){const p=Math.min(z-2*l,d);u.moveTo(l+x,x),u.lineTo(p+l+x,x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(z-l+x,l+x,l,-Math.PI/2,p-Math.PI/2,!1),d-=p*l}if(d>0){const p=Math.min(D-2*l,d);u.lineTo(z+x,p+l+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(z-l+x,D-l+x,l,0,p,!1),d-=p*l}if(d>0){const p=Math.min(z-2*l,d);u.lineTo(z-p-l+x,D+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(l+x,D-l+x,l,Math.PI/2,Math.PI/2+p,!1),d-=p*l}if(d>0){const p=Math.min(D-2*l,d);u.lineTo(x,D-p-l+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(l+x,l+x,l,Math.PI,Math.PI+p,!1)}u.stroke()};function _(g,h,c,l,y,b){g.beginPath(),g.moveTo(h+b,c),g.lineTo(h+l-b,c),g.arcTo(h+l,c,h+l,c+b,b),g.lineTo(h+l,c+y-b),g.arcTo(h+l,c+y,h+l-b,c+y,b),g.lineTo(h+b,c+y),g.arcTo(h,c+y,h,c+y-b,b),g.lineTo(h,c+b),g.arcTo(h,c,h+b,c,b),g.closePath()}return ge(()=>{o.value&&(u=o.value.getContext("2d"),k())}),Ie(()=>M.progress,k),(g,h)=>(w(),S("div",{class:"border-progress-container",ref_key:"container",ref:B},[e("canvas",{ref_key:"canvas",ref:o,class:"border-progress-canvas"},null,512)],512))}}),Xe=pe(Ke,[["__scopeId","data-v-74085255"]]),de=$=>$>=1024*1024*1024?Math.round($/(1024*1024*1024))+"GB":$>=1024*1024?Math.round($/(1024*1024))+"MB":Math.round($/1024)+"KB",Ye={class:"p-8"},Ze={class:"flex justify-center space-x-4 mb-6"},et={key:"file",class:"grid grid-cols-1 gap-8"},tt={key:0,class:"absolute inset-0 w-full h-full"},rt={class:"block truncate"},ot={key:"text",class:"grid grid-cols-1 gap-8"},st={key:0,class:"flex flex-col"},at={class:"flex flex-col space-y-3"},nt={class:"relative flex-grow group"},lt=["placeholder"],it=["value"],ct={type:"submit",class:"w-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 text-white font-bold py-4 px-6 rounded-lg focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition-all duration-300 transform hover:scale-105 hover:shadow-lg relative overflow-hidden group"},dt={class:"relative z-10 flex items-center justify-center text-lg"},ut={class:"mt-6 text-center"},gt={class:"flex-grow overflow-y-auto p-6"},pt={class:"flex-shrink-0 mr-4"},ht={class:"flex-grow min-w-0 mr-4"},ft={class:"flex-shrink-0 flex space-x-2"},mt=["onClick"],xt=["onClick"],vt=["onClick"],yt={key:0,class:"fixed inset-0 bg-black/60 backdrop-blur-sm flex items-center justify-center z-50 p-3 sm:p-4 overflow-y-auto"},bt={class:"flex items-center justify-between"},wt={class:"p-4 sm:p-6"},kt={class:"flex items-center mb-3 sm:mb-4"},_t={class:"ml-3 sm:ml-4 min-w-0 flex-1"},Ct={class:"grid grid-cols-2 gap-3 sm:gap-4"},St={class:"flex items-center min-w-0"},Mt={class:"flex items-center min-w-0"},zt={class:"grid grid-cols-1 md:grid-cols-2 gap-4 sm:gap-6"},Tt={class:"space-y-3 sm:space-y-4"},It={class:"bg-gradient-to-br from-indigo-500 to-purple-600 rounded-xl p-4 sm:p-5 text-white"},At={class:"flex items-center justify-between mb-3 sm:mb-4"},$t={class:"text-2xl sm:text-3xl font-bold tracking-wider text-center break-all"},Dt={class:"flex items-center justify-between mb-2 sm:mb-3"},Ft={class:"bg-white p-3 sm:p-4 rounded-lg shadow-sm mb-3 sm:mb-4"},Pt=ue({__name:"SendFileView",setup($){const M=JSON.parse(localStorage.getItem("config")||"{}"),B=Ue(),o=De("isDarkMode"),u=Re(),k=I("file"),_=I(null),g=I(""),h=I(null),c=I("day"),l=I("1"),y=I(0),b=I(!1),v=I(null),d=Ae(),x=$e(()=>u.shareData),z=I(""),D=()=>{var n;(n=h.value)==null||n.click()},p=async n=>{const t=n.target;if(t.files&&t.files.length>0){const i=t.files[0];if(_.value=i,!W())return;z.value=await N(i),console.log(z.value)}},he=async n=>{var t;if((t=n.dataTransfer)!=null&&t.files&&n.dataTransfer.files.length>0){const i=n.dataTransfer.files[0];if(_.value=i,!W())return;z.value=await N(i)}},fe=async n=>{var i;const t=(i=n.clipboardData)==null?void 0:i.items;if(t)for(const s of t)if(s.kind==="file"){const f=s.getAsFile();if(f){if(f.size===0){d.showAlert("无法读取空文件","error");return}if(_.value=f,!W())return;try{z.value=await N(f),d.showAlert("已从剪贴板添加文件:"+f.name,"success")}catch(C){d.showAlert("文件处理失败","error"),console.error("File hash calculation failed:",C)}break}}else k.value="text",t[0].getAsString(f=>{g.value+=f})},N=async n=>new Promise(t=>{const s=new FileReader;let f=0;const C=Math.ceil(n.size/2097152);s.onload=async F=>{const A=new Uint8Array(F.target.result);try{if(window.isSecureContext){const P=await crypto.subtle.digest("SHA-256",A),G=Array.from(new Uint8Array(P)).map(q=>q.toString(16).padStart(2,"0")).join("");f++,f{const F=f*2097152,A=F+2097152>=n.size?n.size:F+2097152;s.readAsArrayBuffer(n.slice(F,A))};R()}),Z=n=>{const t=`${n.name}-${n.size}-${n.lastModified}`;let i=0;for(let s=0;s{switch(n){case"day":return"输入天数";case"hour":return"输入小时数";case"minute":return"输入分钟数";case"count":return"输入查看次数";case"forever":return"永久";default:return"输入值"}},ee=(n=c.value)=>{switch(n){case"day":return"天";case"hour":return"小时";case"minute":return"分钟";case"count":return"次";case"forever":return"永久";default:return""}},xe=async n=>{var t,i;try{const f=Math.ceil(n.size/5242880),C=await H.post("chunk/upload/init/",{file_name:n.name,file_size:n.size,chunk_size:5242880,file_hash:z.value});if(C.code!==200)throw new Error("初始化切片上传失败");if(C.detail.existed)return C;const R=C.detail.upload_id;for(let A=0;A{const Te=Math.round((A*5242880+ze.loaded)*100/n.size);y.value=Te}})).code!==200)throw new Error(`切片 ${A} 上传失败`)}const F=await H.post(`chunk/upload/complete/${R}`,{expire_value:l.value?parseInt(l.value):1,expire_style:c.value});if(F.code!==200)throw new Error("完成上传失败");return F}catch(s){throw console.error("切片上传失败:",s),(i=(t=s.response)==null?void 0:t.data)!=null&&i.detail?d.showAlert(s.response.data.detail,"error"):d.showAlert("上传失败,请稍后重试","error"),s}},ve=async n=>{const t=new FormData,i={headers:{"Content-Type":"multipart/form-data"},onUploadProgress:f=>{const C=Math.round(f.loaded*100/f.total);y.value=C}};return t.append("file",n),t.append("expire_value",l.value),t.append("expire_style",c.value),await H.post("share/file/",t,i)},ye=()=>M.openUpload===0&&localStorage.getItem("token")===null?(d.showAlert("游客上传功能已关闭","error"),!1):!0,be=n=>n.size>M.uploadSize?(d.showAlert(`文件大小超过限制 (${de(M.uploadSize)})`,"error"),_.value=null,!1):!0,te=(n,t)=>{if(n==="forever"||n==="count")return!0;const i=M.max_save_seconds||0;if(i===0)return!0;let s=0;switch(n){case"minute":s=parseInt(t)*60;break;case"hour":s=parseInt(t)*3600;break;case"day":s=parseInt(t)*86400;break;default:return!1}return s<=i},W=()=>!(!ye()||!be(_.value)||!te(c.value,l.value)),we=async()=>{var n,t;if(k.value==="file"&&!_.value){d.showAlert("请选择要上传的文件","error");return}if(k.value==="text"&&!g.value.trim()){d.showAlert("请输入要发送的文本","error");return}if(c.value!=="forever"&&!l.value){d.showAlert("请输入过期值","error");return}if(!te(c.value,l.value)){const i=Math.floor(M.max_save_seconds/86400);d.showAlert(`过期时间不能超过${i}天`,"error");return}try{let i;if(k.value==="file")M.enableChunk?i=await xe(_.value):i=await ve(_.value);else{const s=new FormData;s.append("text",g.value),s.append("expire_value",l.value),s.append("expire_style",c.value),i=await H.post("share/text/",s,{headers:{"Content-Type":"multipart/form-data"}})}if(i&&i.code===200){const s=i.detail.code,f=i.detail.name,C={id:Date.now(),type:k.value,filename:f,date:new Date().toISOString().split("T")[0],size:k.value==="text"?`${(g.value.length/1024).toFixed(2)} KB`:`${(_.value.size/(1024*1024)).toFixed(1)} MB`,expiration:c.value==="forever"?"永久":`${l.value}${ee()}后过期`,retrieveCode:s};console.log(C),u.addShareData(C),d.showAlert(`文件发送成功!取件码:${s}`,"success"),_.value=null,g.value="",y.value=0,v.value=C,await X(s)}else throw new Error("服务器响应异常")}catch(i){console.error("发送失败:",i),(t=(n=i.response)==null?void 0:n.data)!=null&&t.detail?d.showAlert(i.response.data.detail,"error"):d.showAlert("发送失败,请稍后重试","error")}finally{y.value=0}},ke=()=>{B.push("/")},re=()=>{b.value=!b.value},_e=n=>{v.value=n},Ce=n=>{const t=u.shareData.findIndex(i=>i.id===n);t!==-1&&u.deleteShareData(t)},Se=window.location.origin+"/#/",Me=n=>`${Se}?code=${n.retrieveCode}`,oe=n=>{const i=(parseInt(l.value)||0)+n;i>=1&&(l.value=i.toString())};return ge(()=>{console.log("SendFileView mounted")}),(n,t)=>{const i=je("router-link");return w(),S("div",{class:"min-h-screen flex items-center justify-center p-4 overflow-hidden transition-colors duration-300",onPaste:E(fe,["prevent"])},[e("div",{class:a(["rounded-3xl shadow-2xl overflow-hidden border w-full max-w-md transition-colors duration-300",[r(o)?"bg-white bg-opacity-10 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200"]])},[e("div",Ye,[e("h2",{class:a(["text-3xl font-extrabold text-center mb-8 cursor-pointer transition-colors duration-300",[r(o)?"text-transparent bg-clip-text bg-gradient-to-r from-indigo-300 via-purple-300 to-pink-300":"text-indigo-600"]]),onClick:ke},T(r(M).name),3),e("form",{onSubmit:E(we,["prevent"]),class:"space-y-8"},[e("div",Ze,[e("button",{type:"button",onClick:t[0]||(t[0]=s=>k.value="file"),class:a(["px-4 py-2 rounded-lg",k.value==="file"?"bg-indigo-600 text-white":"bg-gray-700 text-gray-300"])}," 发送文件 ",2),e("button",{type:"button",onClick:t[1]||(t[1]=s=>k.value="text"),class:a(["px-4 py-2 rounded-lg",k.value==="text"?"bg-indigo-600 text-white":"bg-gray-700 text-gray-300"])}," 发送文本 ",2)]),m(Q,{name:"fade",mode:"out-in"},{default:V(()=>[k.value==="file"?(w(),S("div",et,[e("div",{class:a(["rounded-xl p-8 flex flex-col items-center justify-center border-2 border-dashed transition-all duration-300 group cursor-pointer relative",[r(o)?"bg-gray-800 bg-opacity-50 border-gray-600 hover:border-indigo-500":"bg-gray-100 border-gray-300 hover:border-indigo-500"]]),onClick:D,onDragover:t[2]||(t[2]=E(()=>{},["prevent"])),onDrop:E(he,["prevent"])},[e("input",{id:"file-upload",type:"file",class:"hidden",onChange:p,ref_key:"fileInput",ref:h},null,544),y.value>0?(w(),S("div",tt,[m(Xe,{progress:y.value},null,8,["progress"])])):j("",!0),m(r(Ge),{class:a(["w-16 h-16 transition-colors duration-300",r(o)?"text-gray-400 group-hover:text-indigo-400":"text-gray-600 group-hover:text-indigo-600"])},null,8,["class"]),e("p",{class:a(["mt-4 text-sm transition-colors duration-300 w-full text-center",r(o)?"text-gray-400 group-hover:text-indigo-400":"text-gray-600 group-hover:text-indigo-600"])},[e("span",rt,T(_.value?_.value.name:"点击或拖放文件到此处上传"),1)],2),e("p",{class:a(["mt-2 text-xs",r(o)?"text-gray-500":"text-gray-400"])}," 支持各种常见格式,最大"+T(r(de)(r(M).uploadSize)),3)],34)])):(w(),S("div",ot,[k.value==="text"?(w(),S("div",st,[O(e("textarea",{id:"text-content","onUpdate:modelValue":t[3]||(t[3]=s=>g.value=s),rows:"7",class:a(["flex-grow px-4 py-3 rounded-xl placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-indigo-500 transition duration-300 resize-none",r(o)?"bg-gray-800 bg-opacity-50 text-white":"bg-white text-gray-900 border border-gray-300"]),placeholder:"在此输入要发送的文本..."},null,2),[[se,g.value]])])):j("",!0)]))]),_:1}),e("div",at,[e("label",{class:a(["text-sm font-medium",r(o)?"text-gray-300":"text-gray-700"])}," 过期时间 ",2),e("div",nt,[e("div",{class:a(["relative h-11 rounded-xl border transition-all duration-300",r(o)?"bg-gray-800/50 border-gray-700/50 group-hover:border-gray-600":"bg-white border-gray-200 group-hover:border-gray-300"])},[c.value!=="forever"?(w(),S(J,{key:0},[O(e("input",{"onUpdate:modelValue":t[4]||(t[4]=s=>l.value=s),type:"number",placeholder:me(),min:"1",class:a(["w-full h-full px-4 pr-32 rounded-xl placeholder-gray-400 transition-all duration-300","focus:outline-none focus:ring-2 focus:ring-offset-0","[appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none","bg-transparent",r(o)?"text-gray-100 focus:ring-indigo-500/70 placeholder-gray-500":"text-gray-900 focus:ring-indigo-500/50 placeholder-gray-400"])},null,10,lt),[[se,l.value]]),e("div",{class:a(["absolute right-24 top-0 h-full flex flex-col border-l",[r(o)?"border-gray-700/50":"border-gray-200"]])},[e("button",{type:"button",onClick:t[5]||(t[5]=s=>oe(1)),class:a(["flex-1 px-2 flex items-center justify-center transition-all duration-200",[r(o)?"hover:bg-gray-700/50 text-gray-400 hover:text-gray-200":"hover:bg-gray-50 text-gray-500 hover:text-gray-700"]])},t[12]||(t[12]=[e("svg",{class:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 15l7-7 7 7"})],-1)]),2),e("button",{type:"button",onClick:t[6]||(t[6]=s=>oe(-1)),class:a(["flex-1 px-2 flex items-center justify-center transition-all duration-200",[r(o)?"hover:bg-gray-700/50 text-gray-400 hover:text-gray-200":"hover:bg-gray-50 text-gray-500 hover:text-gray-700"]])},t[13]||(t[13]=[e("svg",{class:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"})],-1)]),2)],2)],64)):j("",!0),O(e("select",{"onUpdate:modelValue":t[7]||(t[7]=s=>c.value=s),class:a(["absolute right-0 top-0 h-full appearance-none cursor-pointer","focus:outline-none focus:ring-2 focus:ring-offset-0",c.value==="forever"?"w-full px-4":"w-24 pl-3 pr-8 border-l",r(o)?"text-gray-100 border-gray-700/50 focus:ring-indigo-500/70 bg-gray-800/50":"text-gray-900 border-gray-200 focus:ring-indigo-500/50 bg-white"]),style:Pe([c.value==="forever"?"border-radius: 0.75rem;":"border-top-right-radius: 0.75rem;border-bottom-right-radius: 0.75rem;"])},[(w(!0),S(J,null,ae(r(M).expireStyle,s=>(w(),S("option",{value:s,key:s,class:a([r(o)?"bg-gray-800 text-gray-100":"bg-white text-gray-900"])},T(ee(s)),11,it))),128))],6),[[Fe,c.value]]),e("div",{class:a(["absolute pointer-events-none",[c.value==="forever"?"right-3":"right-2","top-1/2 -translate-y-1/2"]])},[(w(),S("svg",{class:a(["w-4 h-4 transition-colors duration-300",[r(o)?"text-gray-400":"text-gray-500"]]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},t[14]||(t[14]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"},null,-1)]),2))],2)],2)])]),e("button",ct,[t[16]||(t[16]=e("span",{class:"absolute top-0 left-0 w-full h-full bg-white opacity-0 group-hover:opacity-20 transition-opacity duration-300"},null,-1)),e("span",dt,[m(r(Oe),{class:"w-6 h-6 mr-2"}),t[15]||(t[15]=e("span",null,"安全寄送",-1))])])],32),e("div",ut,[m(i,{to:"/",class:"text-indigo-400 hover:text-indigo-300 transition duration-300"},{default:V(()=>t[17]||(t[17]=[K(" 需要取件?点击这里 ")])),_:1,__:[17]})])]),e("div",{class:a(["px-8 py-4 bg-opacity-50 flex justify-between items-center",[r(o)?"bg-gray-800":"bg-gray-100"]])},[e("span",{class:a(["text-sm flex items-center",[r(o)?"text-gray-300":"text-gray-800"]])},[m(r(ie),{class:"w-4 h-4 mr-1 text-green-400"}),t[18]||(t[18]=K(" 安全加密 "))],2),e("button",{onClick:re,class:a(["text-sm hover:text-indigo-300 transition duration-300 flex items-center",[r(o)?"text-indigo-400":"text-indigo-600"]])},[t[19]||(t[19]=K(" 发件记录 ")),m(r(Ve),{class:"w-4 h-4 ml-1"})],2)],2)],2),m(Q,{name:"drawer"},{default:V(()=>[b.value?(w(),S("div",{key:0,class:a(["fixed inset-y-0 right-0 w-full sm:w-120 bg-opacity-70 backdrop-filter backdrop-blur-xl shadow-2xl z-50 overflow-hidden flex flex-col",[r(o)?"bg-gray-900":"bg-white"]])},[e("div",{class:a(["flex justify-between items-center p-6 border-b",[r(o)?"border-gray-700":"border-gray-200"]])},[e("h3",{class:a(["text-2xl font-bold",[r(o)?"text-white":"text-gray-800"]])}," 发件记录 ",2),e("button",{onClick:re,class:a(["hover:text-white transition duration-300",[r(o)?"text-gray-400":"text-gray-800"]])},[m(r(ne),{class:"w-6 h-6"})],2)],2),e("div",gt,[m(Be,{name:"list",tag:"div",class:"space-y-4"},{default:V(()=>[(w(!0),S(J,null,ae(x.value,s=>(w(),S("div",{key:s.id,class:a(["bg-opacity-50 rounded-lg p-4 flex items-center shadow-md hover:shadow-lg transition duration-300 transform hover:scale-102",[r(o)?"bg-gray-800 hover:bg-gray-700":"bg-gray-100 hover:bg-white"]])},[e("div",pt,[m(r(ce),{class:a(["w-10 h-10",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])]),e("div",ht,[e("p",{class:a(["font-medium text-lg truncate",[r(o)?"text-white":"text-gray-800"]])},T(s.filename?s.filename:"Text"),3),e("p",{class:a(["text-sm truncate",[r(o)?"text-gray-400":"text-gray-600"]])},T(s.date)+" · "+T(s.size),3)]),e("div",ft,[e("button",{onClick:f=>r(X)(s.retrieveCode),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-blue-400 text-blue-400":"hover:bg-blue-100 text-blue-600"]])},[m(r(Y),{class:"w-5 h-5"})],10,mt),e("button",{onClick:f=>_e(s),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-green-400 text-green-400":"hover:bg-green-100 text-green-600"]])},[m(r(Ee),{class:"w-5 h-5"})],10,xt),e("button",{onClick:f=>Ce(s.id),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-red-400 text-red-400":"hover:bg-red-100 text-red-600"]])},[m(r(Ne),{class:"w-5 h-5"})],10,vt)])],2))),128))]),_:1})])],2)):j("",!0)]),_:1}),m(Q,{name:"fade"},{default:V(()=>[v.value?(w(),S("div",yt,[e("div",{class:a(["w-full max-w-2xl rounded-2xl shadow-2xl transform transition-all duration-300 ease-out overflow-hidden",[r(o)?"bg-gray-900 bg-opacity-70":"bg-white bg-opacity-95"]])},[e("div",{class:a(["px-4 sm:px-6 py-3 sm:py-4 border-b",[r(o)?"border-gray-800":"border-gray-100"]])},[e("div",bt,[e("h3",{class:a(["text-lg sm:text-xl font-semibold",[r(o)?"text-white":"text-gray-900"]])}," 文件详情 ",2),e("button",{onClick:t[8]||(t[8]=s=>v.value=null),class:"p-1.5 sm:p-2 rounded-full hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors"},[m(r(ne),{class:a(["w-4 h-4 sm:w-5 sm:h-5",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"])])])],2),e("div",wt,[e("div",{class:a(["rounded-xl p-3 sm:p-4 mb-4 sm:mb-6",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",kt,[e("div",{class:a(["p-2 sm:p-3 rounded-lg",[r(o)?"bg-gray-800":"bg-white"]])},[v.value.type==="file"?(w(),le(r(ce),{key:0,class:a(["w-5 h-5 sm:w-6 sm:h-6",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):j("",!0),v.value.type==="text"?(w(),le(r(Je),{key:1,class:a(["w-5 h-5 sm:w-6 sm:h-6",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):j("",!0)],2),e("div",_t,[e("h4",{class:a(["font-medium text-sm sm:text-base truncate",[r(o)?"text-white":"text-gray-900"]])},T(v.value.filename?v.value.filename:"Text"),3),e("p",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-400":"text-gray-500"]])},T(v.value.size)+" · "+T(v.value.date),3)])]),e("div",Ct,[e("div",St,[m(r(We),{class:a(["w-3.5 h-3.5 sm:w-4 sm:h-4 mr-1.5 sm:mr-2 flex-shrink-0",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"]),e("span",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-300":"text-gray-600"]])},T(v.value.expiration),3)]),e("div",Mt,[m(r(ie),{class:a(["w-3.5 h-3.5 sm:w-4 sm:h-4 mr-1.5 sm:mr-2 flex-shrink-0",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"]),e("span",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-300":"text-gray-600"]])}," 安全加密 ",2)])])],2),e("div",zt,[e("div",Tt,[e("div",It,[e("div",At,[t[20]||(t[20]=e("h4",{class:"font-medium text-sm sm:text-base"},"取件码",-1)),e("button",{onClick:t[9]||(t[9]=s=>r(He)(v.value.retrieveCode)),class:"p-1.5 sm:p-2 rounded-full hover:bg-white/10 transition-colors"},[m(r(Y),{class:"w-4 h-4 sm:w-5 sm:h-5",name:"点击复制取件码"})])]),e("p",$t,T(v.value.retrieveCode),1)]),e("div",{class:a(["rounded-xl p-3 sm:p-4",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",Dt,[e("h4",{class:a(["font-medium text-sm sm:text-base flex items-center min-w-0",[r(o)?"text-white":"text-gray-900"]])},[m(r(Qe),{class:"w-4 h-4 sm:w-5 sm:h-5 mr-1.5 sm:mr-2 text-indigo-500 flex-shrink-0"}),t[21]||(t[21]=e("span",{class:"truncate"},"wget下载",-1))],2),e("button",{onClick:t[10]||(t[10]=s=>r(Le)(v.value.retrieveCode,v.value.filename)),class:"p-1.5 sm:p-2 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors flex-shrink-0"},[m(r(Y),{class:a(["w-4 h-4 sm:w-5 sm:h-5",[r(o)?"text-gray-400":"text-gray-500"]]),name:"点击复制wget命令"},null,8,["class"])])]),e("p",{class:a(["text-xs sm:text-sm font-mono break-all line-clamp-2",[r(o)?"text-gray-300":"text-gray-600"]])}," 点击复制wget命令 ",2)],2)]),e("div",{class:a(["rounded-xl p-4 sm:p-5 flex flex-col items-center",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",Ft,[m(qe,{value:Me(v.value),size:140,level:"M",class:"sm:w-[160px] sm:h-[160px]"},null,8,["value"])]),e("p",{class:a(["text-xs sm:text-sm truncate max-w-full",[r(o)?"text-gray-400":"text-gray-500"]])}," 扫描二维码快速取件 ",2)],2)])]),e("div",{class:a(["px-4 sm:px-6 py-3 sm:py-4 border-t",[r(o)?"border-gray-800":"border-gray-100"]])},[e("button",{onClick:t[11]||(t[11]=s=>r(X)(v.value.retrieveCode)),class:"w-full bg-indigo-600 hover:bg-indigo-700 text-white px-4 sm:px-6 py-2 sm:py-3 rounded-lg text-sm sm:text-base font-medium transition-colors"}," 复制取件链接 ")],2)],2)])):j("",!0)]),_:1})],32)}}}),Ht=pe(Pt,[["__scopeId","data-v-fad875ce"]]);export{Ht as default}; diff --git a/themes/2025/assets/SystemSettingsView-BvNjuhLF.js b/themes/2025/assets/SystemSettingsView-BvNjuhLF.js new file mode 100644 index 000000000..2297ad1e6 --- /dev/null +++ b/themes/2025/assets/SystemSettingsView-BvNjuhLF.js @@ -0,0 +1 @@ +import{d as B,r as m,u as M,a as c,b as e,n as a,h as l,i as F,m as n,v as d,p as x,F as w,s as _,l as h,t as y,C as k,N as A,e as b}from"./index-DKQ1YPO4.js";const z={class:"p-6 h-screen custom-scrollbar"},E={class:"space-y-4"},T={class:"grid grid-cols-1 gap-6"},W={class:"space-y-2"},K={class:"space-y-2"},N={class:"space-y-2"},I={class:"relative"},R={class:"space-y-2"},j={class:"space-y-2"},G=["value"],L={class:"space-y-2"},$={class:"grid grid-cols-1 gap-6 mt-8"},P={class:"space-y-2"},H={class:"space-y-2"},q={class:"space-y-4"},J={class:"space-y-2"},O={class:"space-y-4"},Q={class:"space-y-2"},X={key:0,class:"space-y-2"},Y={class:"flex items-center"},Z=["aria-checked"],ee={key:1,class:"space-y-4"},oe={class:"space-y-2"},re={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},te={class:"space-y-2"},ae={class:"space-y-2"},se={key:2,class:"space-y-4"},le={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},ne={class:"space-y-2"},de={class:"space-y-2"},ie={class:"space-y-2"},ue={class:"space-y-2"},ge={class:"space-y-2"},ce={class:"space-y-2"},ye={class:"space-y-2"},be={class:"space-y-2"},pe={class:"space-y-2"},ve={class:"flex items-center"},me=["aria-checked"],xe={class:"mt-8"},he={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},fe={class:"space-y-2"},we={class:"flex items-center space-x-2"},_e={class:"space-y-2"},ke={class:"flex items-center space-x-2"},Ue={class:"space-y-2"},Se={class:"flex items-center space-x-2"},Ve={class:"space-y-2"},Ce={class:"flex flex-wrap gap-3"},De=["value"],Be={class:"space-y-2"},Me={class:"flex items-center space-x-2"},Fe={class:"space-y-2"},Ae={class:"flex items-center"},ze=["aria-checked"],Ee={class:"mt-8"},Te={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},We={class:"space-y-2"},Ke={class:"flex items-center space-x-2"},Ne={class:"space-y-2"},Ie={class:"flex items-center space-x-2"},Ge=B({__name:"SystemSettingsView",setup(Re){const s=F("isDarkMode"),t=m({name:"",description:"",file_storage:"",webdav_url:"",webdav_username:"",webdav_password:"",themesChoices:[],expireStyle:[],admin_token:"",robotsText:"",keywords:"",notify_title:"",storage_path:"",notify_content:"",openUpload:1,uploadSize:1,enableChunk:0,uploadMinute:1,max_save_seconds:0,opacity:.9,s3_access_key_id:"",background:"",showAdminAddr:0,page_explain:"",s3_secret_access_key:"",aws_session_token:"",s3_signature_version:"",s3_region_name:"",s3_bucket_name:"",s3_endpoint_url:"",s3_hostname:"",s3_cdn_url:"",uploadCount:1,errorMinute:1,errorCount:1,s3_proxy:0,themesSelect:""}),p=m(1),v=m("MB"),u=m(1),g=m("天"),U=(i,o)=>i*{秒:1,分:60,时:3600,天:86400}[o],S=()=>{k({url:"admin/config/get",method:"get"}).then(i=>{t.value=i.detail;let o=t.value.uploadSize;o>=1024*1024*1024?(p.value=Math.round(o/(1024*1024*1024)),v.value="GB"):o>=1024*1024?(p.value=Math.round(o/(1024*1024)),v.value="MB"):(p.value=Math.round(o/1024),v.value="KB");let r=t.value.max_save_seconds;r===0?(u.value=7,g.value="天"):r%86400===0&&r>=86400?(u.value=r/86400,g.value="天"):r%3600===0&&r>=3600?(u.value=r/3600,g.value="时"):r%60===0&&r>=60?(u.value=r/60,g.value="分"):(u.value=r,g.value="秒")})},f=M(),V=(i,o)=>i*{KB:1024,MB:1048576,GB:1073741824}[o],C=()=>{const i={...t.value};i.uploadSize=V(p.value,v.value),u.value===0?i.max_save_seconds=7*86400:i.max_save_seconds=U(u.value,g.value),k({url:"admin/config/update",method:"patch",data:i}).then(o=>{o.code==200?f.showAlert("保存成功","success"):f.showAlert(o.message,"error")})};return S(),(i,o)=>(b(),c("div",z,[e("h2",{class:a(["text-2xl font-bold mb-6",[l(s)?"text-white":"text-gray-800"]])}," 系统设置 ",2),e("div",{class:a(["rounded-lg shadow-md p-6",[l(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[e("section",E,[e("h3",{class:a(["text-lg font-bold mb-4",[l(s)?"text-white":"text-gray-800"]])}," 基本设置 ",2),e("div",T,[e("div",W,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 网站名称 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[0]||(o[0]=r=>t.value.name=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.name]])]),e("div",K,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 网站描述 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[1]||(o[1]=r=>t.value.description=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.description]])]),e("div",N,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 管理员密码 ",2),e("div",I,[n(e("input",{type:"password",minlength:"6","onUpdate:modelValue":o[2]||(o[2]=r=>t.value.admin_token=r),placeholder:"留空则不修改密码",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.admin_token]]),e("div",{class:a(["absolute inset-y-0 right-0 flex items-center pr-3 text-sm text-gray-400",[l(s)?"text-gray-500":"text-gray-400"]])},o[33]||(o[33]=[e("span",{class:"text-xs"},"留空则不修改",-1)]),2)])]),e("div",R,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 关键词 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[3]||(o[3]=r=>t.value.keywords=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.keywords]])]),e("div",j,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 主题选择 ",2),n(e("select",{"onUpdate:modelValue":o[4]||(o[4]=r=>t.value.themesSelect=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border appearance-none bg-no-repeat bg-right focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none cursor-pointer",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]]),style:{"background-image":"url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M7%208l3%203%203-3%22%20stroke%3D%22%236B7280%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E')"}},[(b(!0),c(w,null,_(t.value.themesChoices,r=>(b(),c("option",{value:r.key,key:r.key},y(r.name)+" (by "+y(r.author)+" V"+y(r.version)+") ",9,G))),128))],2),[[x,t.value.themesSelect]])]),e("div",L,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Robots.txt ",2),n(e("textarea",{"onUpdate:modelValue":o[5]||(o[5]=r=>t.value.robotsText=r),rows:"3",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border resize-none focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.robotsText]])])]),e("div",$,[e("div",P,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 通知标题 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[6]||(o[6]=r=>t.value.notify_title=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.notify_title]])]),e("div",H,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 通知内容 ",2),n(e("textarea",{"onUpdate:modelValue":o[7]||(o[7]=r=>t.value.notify_content=r),rows:"3",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border resize-none focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.notify_content]])])]),e("div",q,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 存储设置 ",2),e("div",J,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 存储路径 ",2),n(e("input",{type:"text",placeholder:"留空则使用默认路径,可不填写","onUpdate:modelValue":o[8]||(o[8]=r=>t.value.storage_path=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.storage_path]])]),e("div",O,[e("div",Q,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 存储方式 ",2),n(e("select",{"onUpdate:modelValue":o[9]||(o[9]=r=>t.value.file_storage=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border appearance-none bg-no-repeat bg-right focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none cursor-pointer",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]]),style:{"background-image":"url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M7%208l3%203%203-3%22%20stroke%3D%22%236B7280%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E')"}},o[34]||(o[34]=[e("option",{value:"local"},"本地存储",-1),e("option",{value:"s3"},"S3 存储",-1),e("option",{value:"webdav"},"Webdav 存储",-1)]),2),[[x,t.value.file_storage]])]),t.value.file_storage==="local"?(b(),c("div",X,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 开启切片上传(实验性功能,还在开发中,目前仅本地存储可用,可能会出现未知问题) ",2),e("div",Y,[e("button",{type:"button",onClick:o[10]||(o[10]=r=>t.value.enableChunk=t.value.enableChunk===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.enableChunk===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.enableChunk===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.enableChunk===1?"translate-x-5":"translate-x-0",l(s)&&t.value.enableChunk!==1?"bg-gray-100":"bg-white"]])},null,2)],10,Z),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.enableChunk===1?"已开启":"已关闭"),3)])])):h("",!0),t.value.file_storage==="webdav"?(b(),c("div",ee,[e("div",oe,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav URL ",2),n(e("input",{type:"text",placeholder:"请输入 Webdav URL","onUpdate:modelValue":o[11]||(o[11]=r=>t.value.webdav_url=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_url]])]),e("div",re,[e("div",te,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav Username ",2),n(e("input",{type:"text",placeholder:"请输入 Webdav Username","onUpdate:modelValue":o[12]||(o[12]=r=>t.value.webdav_username=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_username]])]),e("div",ae,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav Password ",2),n(e("input",{type:"password",placeholder:"请输入 Webdav Password","onUpdate:modelValue":o[13]||(o[13]=r=>t.value.webdav_password=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_password]])])])])):h("",!0),t.value.file_storage==="s3"?(b(),c("div",se,[e("div",le,[e("div",ne,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 EndpointUrl ",2),n(e("input",{type:"text","onUpdate:modelValue":o[14]||(o[14]=r=>t.value.s3_endpoint_url=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_endpoint_url]])]),e("div",de,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 AccessKeyId ",2),n(e("input",{type:"text","onUpdate:modelValue":o[15]||(o[15]=r=>t.value.s3_access_key_id=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_access_key_id]])]),e("div",ie,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 SecretAccessKey ",2),n(e("input",{type:"password","onUpdate:modelValue":o[16]||(o[16]=r=>t.value.s3_secret_access_key=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_secret_access_key]])]),e("div",ue,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 BucketName ",2),n(e("input",{type:"text","onUpdate:modelValue":o[17]||(o[17]=r=>t.value.s3_bucket_name=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_bucket_name]])]),e("div",ge,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Region Name ",2),n(e("input",{type:"text","onUpdate:modelValue":o[18]||(o[18]=r=>t.value.s3_region_name=r),placeholder:"auto",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_region_name]])]),e("div",ce,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 CDN URL ",2),n(e("input",{type:"text","onUpdate:modelValue":o[19]||(o[19]=r=>t.value.s3_cdn_url=r),placeholder:"https://cdn.example.com",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_cdn_url]])]),e("div",ye,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Signature Version ",2),n(e("select",{"onUpdate:modelValue":o[20]||(o[20]=r=>t.value.s3_signature_version=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[35]||(o[35]=[e("option",{value:"s3v2"},"S3v2",-1),e("option",{value:"s3v4"},"S3v4",-1)]),2),[[x,t.value.s3_signature_version]])]),e("div",be,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Hostname ",2),n(e("input",{type:"text","onUpdate:modelValue":o[21]||(o[21]=r=>t.value.s3_hostname=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_hostname]])]),e("div",pe,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 启用代理 ",2),e("div",ve,[e("button",{type:"button",onClick:o[22]||(o[22]=r=>t.value.s3_proxy=t.value.s3_proxy===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.s3_proxy===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.s3_proxy===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.s3_proxy===1?"translate-x-5":"translate-x-0",l(s)&&t.value.s3_proxy!==1?"bg-gray-100":"bg-white"]])},null,2)],10,me),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.s3_proxy===1?"已开启":"已关闭"),3)])])])])):h("",!0)])]),e("div",xe,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 上传限制 ",2),e("div",he,[e("div",fe,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 每分钟上传限制 ",2),e("div",we,[n(e("input",{type:"number","onUpdate:modelValue":o[23]||(o[23]=r=>t.value.uploadMinute=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.uploadMinute]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"分钟",2)])]),e("div",_e,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 上传数量限制 ",2),e("div",ke,[n(e("input",{type:"number","onUpdate:modelValue":o[24]||(o[24]=r=>t.value.uploadCount=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.uploadCount]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"个文件",2)])]),e("div",Ue,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 文件大小限制 ",2),e("div",Se,[n(e("input",{type:"number","onUpdate:modelValue":o[25]||(o[25]=r=>p.value=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,p.value]]),n(e("select",{"onUpdate:modelValue":o[26]||(o[26]=r=>v.value=r),class:a(["rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[36]||(o[36]=[e("option",{value:"KB"},"KB",-1),e("option",{value:"MB"},"MB",-1),e("option",{value:"GB"},"GB",-1)]),2),[[x,v.value]])])]),e("div",Ve,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 过期方式 ",2),e("div",Ce,[(b(),c(w,null,_(["day","hour","minute","forever","count"],r=>e("label",{key:r,class:"relative inline-flex items-center group cursor-pointer"},[n(e("input",{type:"checkbox",value:r,"onUpdate:modelValue":o[27]||(o[27]=D=>t.value.expireStyle=D),class:"peer sr-only"},null,8,De),[[A,t.value.expireStyle]]),e("div",{class:a(["px-4 py-2 rounded-full border-2 transition-all duration-200 select-none",[t.value.expireStyle.includes(r)?(l(s),"bg-indigo-600 border-indigo-600 text-white"):l(s)?"bg-gray-700 border-gray-600 text-gray-300 hover:border-indigo-500":"bg-white border-gray-300 text-gray-700 hover:border-indigo-500"]])},y({day:"按天",hour:"按小时",minute:"按分钟",forever:"永久",count:"按次数"}[r]),3)])),64))])]),e("div",Be,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 最长保存时间 ",2),e("div",Me,[n(e("input",{type:"number","onUpdate:modelValue":o[28]||(o[28]=r=>u.value=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,u.value]]),n(e("select",{"onUpdate:modelValue":o[29]||(o[29]=r=>g.value=r),class:a(["rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[37]||(o[37]=[e("option",{value:"秒"},"秒",-1),e("option",{value:"分"},"分",-1),e("option",{value:"时"},"时",-1),e("option",{value:"天"},"天",-1)]),2),[[x,g.value]])])]),e("div",Fe,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 游客上传 ",2),e("div",Ae,[e("button",{type:"button",onClick:o[30]||(o[30]=r=>t.value.openUpload=t.value.openUpload===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.openUpload===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.openUpload===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.openUpload===1?"translate-x-5":"translate-x-0",l(s)&&t.value.openUpload!==1?"bg-gray-100":"bg-white"]])},null,2)],10,ze),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.openUpload===1?"已开启":"已关闭"),3)])])])]),e("div",Ee,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 错误限制 ",2),e("div",Te,[e("div",We,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 每分钟错误限制 ",2),e("div",Ke,[n(e("input",{type:"number","onUpdate:modelValue":o[31]||(o[31]=r=>t.value.errorMinute=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.errorMinute]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"分钟",2)])]),e("div",Ne,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 错误次数限制 ",2),e("div",Ie,[n(e("input",{type:"number","onUpdate:modelValue":o[32]||(o[32]=r=>t.value.errorCount=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.errorCount]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"次",2)])])])]),e("div",{class:"flex justify-end mt-8"},[e("button",{onClick:C,class:"px-4 py-2 bg-indigo-600 text-white rounded-md hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 transition-colors duration-200"}," 保存设置 ")])])],2)]))}});export{Ge as default}; diff --git a/themes/2025/assets/SystemSettingsView-DJ12QIQD.js b/themes/2025/assets/SystemSettingsView-DJ12QIQD.js new file mode 100644 index 000000000..e19da2128 --- /dev/null +++ b/themes/2025/assets/SystemSettingsView-DJ12QIQD.js @@ -0,0 +1 @@ +import{d as B,r as m,u as M,a as c,b as e,n as a,h as l,i as F,m as n,v as d,p as x,F as w,s as _,l as h,t as y,C as k,N as A,e as b}from"./index-C-4-823a.js";const z={class:"p-6 h-screen custom-scrollbar"},E={class:"space-y-4"},T={class:"grid grid-cols-1 gap-6"},W={class:"space-y-2"},K={class:"space-y-2"},N={class:"space-y-2"},I={class:"relative"},R={class:"space-y-2"},j={class:"space-y-2"},G=["value"],L={class:"space-y-2"},$={class:"grid grid-cols-1 gap-6 mt-8"},P={class:"space-y-2"},H={class:"space-y-2"},q={class:"space-y-4"},J={class:"space-y-2"},O={class:"space-y-4"},Q={class:"space-y-2"},X={key:0,class:"space-y-2"},Y={class:"flex items-center"},Z=["aria-checked"],ee={key:1,class:"space-y-4"},oe={class:"space-y-2"},re={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},te={class:"space-y-2"},ae={class:"space-y-2"},se={key:2,class:"space-y-4"},le={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},ne={class:"space-y-2"},de={class:"space-y-2"},ie={class:"space-y-2"},ue={class:"space-y-2"},ge={class:"space-y-2"},ce={class:"space-y-2"},ye={class:"space-y-2"},be={class:"space-y-2"},pe={class:"space-y-2"},ve={class:"flex items-center"},me=["aria-checked"],xe={class:"mt-8"},he={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},fe={class:"space-y-2"},we={class:"flex items-center space-x-2"},_e={class:"space-y-2"},ke={class:"flex items-center space-x-2"},Ue={class:"space-y-2"},Se={class:"flex items-center space-x-2"},Ve={class:"space-y-2"},Ce={class:"flex flex-wrap gap-3"},De=["value"],Be={class:"space-y-2"},Me={class:"flex items-center space-x-2"},Fe={class:"space-y-2"},Ae={class:"flex items-center"},ze=["aria-checked"],Ee={class:"mt-8"},Te={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},We={class:"space-y-2"},Ke={class:"flex items-center space-x-2"},Ne={class:"space-y-2"},Ie={class:"flex items-center space-x-2"},Ge=B({__name:"SystemSettingsView",setup(Re){const s=F("isDarkMode"),t=m({name:"",description:"",file_storage:"",webdav_url:"",webdav_username:"",webdav_password:"",themesChoices:[],expireStyle:[],admin_token:"",robotsText:"",keywords:"",notify_title:"",storage_path:"",notify_content:"",openUpload:1,uploadSize:1,enableChunk:0,uploadMinute:1,max_save_seconds:0,opacity:.9,s3_access_key_id:"",background:"",showAdminAddr:0,page_explain:"",s3_secret_access_key:"",aws_session_token:"",s3_signature_version:"",s3_region_name:"",s3_bucket_name:"",s3_endpoint_url:"",s3_hostname:"",s3_cdn_url:"",uploadCount:1,errorMinute:1,errorCount:1,s3_proxy:0,themesSelect:""}),p=m(1),v=m("MB"),u=m(1),g=m("天"),U=(i,o)=>i*{秒:1,分:60,时:3600,天:86400}[o],S=()=>{k({url:"admin/config/get",method:"get"}).then(i=>{t.value=i.detail;let o=t.value.uploadSize;o>=1024*1024*1024?(p.value=Math.round(o/(1024*1024*1024)),v.value="GB"):o>=1024*1024?(p.value=Math.round(o/(1024*1024)),v.value="MB"):(p.value=Math.round(o/1024),v.value="KB");let r=t.value.max_save_seconds;r===0?(u.value=7,g.value="天"):r%86400===0&&r>=86400?(u.value=r/86400,g.value="天"):r%3600===0&&r>=3600?(u.value=r/3600,g.value="时"):r%60===0&&r>=60?(u.value=r/60,g.value="分"):(u.value=r,g.value="秒")})},f=M(),V=(i,o)=>i*{KB:1024,MB:1048576,GB:1073741824}[o],C=()=>{const i={...t.value};i.uploadSize=V(p.value,v.value),u.value===0?i.max_save_seconds=7*86400:i.max_save_seconds=U(u.value,g.value),k({url:"admin/config/update",method:"patch",data:i}).then(o=>{o.code==200?f.showAlert("保存成功","success"):f.showAlert(o.message,"error")})};return S(),(i,o)=>(b(),c("div",z,[e("h2",{class:a(["text-2xl font-bold mb-6",[l(s)?"text-white":"text-gray-800"]])}," 系统设置 ",2),e("div",{class:a(["rounded-lg shadow-md p-6",[l(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[e("section",E,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 基本设置 ",2),e("div",T,[e("div",W,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 网站名称 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[0]||(o[0]=r=>t.value.name=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.name]])]),e("div",K,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 网站描述 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[1]||(o[1]=r=>t.value.description=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.description]])]),e("div",N,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 管理员密码 ",2),e("div",I,[n(e("input",{type:"password",minlength:"6","onUpdate:modelValue":o[2]||(o[2]=r=>t.value.admin_token=r),placeholder:"留空则不修改密码",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.admin_token]]),e("div",{class:a(["absolute inset-y-0 right-0 flex items-center pr-3 text-sm text-gray-400",[l(s)?"text-gray-500":"text-gray-400"]])},o[33]||(o[33]=[e("span",{class:"text-xs"},"留空则不修改",-1)]),2)])]),e("div",R,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 关键词 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[3]||(o[3]=r=>t.value.keywords=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.keywords]])]),e("div",j,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 主题选择 ",2),n(e("select",{"onUpdate:modelValue":o[4]||(o[4]=r=>t.value.themesSelect=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border appearance-none bg-no-repeat bg-right focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none cursor-pointer",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]]),style:{"background-image":"url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M7%208l3%203%203-3%22%20stroke%3D%22%236B7280%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E')"}},[(b(!0),c(w,null,_(t.value.themesChoices,r=>(b(),c("option",{value:r.key,key:r.key},y(r.name)+" (by "+y(r.author)+" V"+y(r.version)+") ",9,G))),128))],2),[[x,t.value.themesSelect]])]),e("div",L,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Robots.txt ",2),n(e("textarea",{"onUpdate:modelValue":o[5]||(o[5]=r=>t.value.robotsText=r),rows:"3",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border resize-none focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.robotsText]])])]),e("div",$,[e("div",P,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 通知标题 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[6]||(o[6]=r=>t.value.notify_title=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.notify_title]])]),e("div",H,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 通知内容 ",2),n(e("textarea",{"onUpdate:modelValue":o[7]||(o[7]=r=>t.value.notify_content=r),rows:"3",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border resize-none focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.notify_content]])])]),e("div",q,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 存储设置 ",2),e("div",J,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 存储路径 ",2),n(e("input",{type:"text",placeholder:"留空则使用默认路径,可不填写","onUpdate:modelValue":o[8]||(o[8]=r=>t.value.storage_path=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.storage_path]])]),e("div",O,[e("div",Q,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 存储方式 ",2),n(e("select",{"onUpdate:modelValue":o[9]||(o[9]=r=>t.value.file_storage=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border appearance-none bg-no-repeat bg-right focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none cursor-pointer",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]]),style:{"background-image":"url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M7%208l3%203%203-3%22%20stroke%3D%22%236B7280%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E')"}},o[34]||(o[34]=[e("option",{value:"local"},"本地存储",-1),e("option",{value:"s3"},"S3 存储",-1),e("option",{value:"webdav"},"Webdav 存储",-1)]),2),[[x,t.value.file_storage]])]),t.value.file_storage==="local"?(b(),c("div",X,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 开启切片上传(实验性功能,还在开发中,目前仅本地存储可用,可能会出现未知问题) ",2),e("div",Y,[e("button",{type:"button",onClick:o[10]||(o[10]=r=>t.value.enableChunk=t.value.enableChunk===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.enableChunk===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.enableChunk===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.enableChunk===1?"translate-x-5":"translate-x-0",l(s)&&t.value.enableChunk!==1?"bg-gray-100":"bg-white"]])},null,2)],10,Z),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.enableChunk===1?"已开启":"已关闭"),3)])])):h("",!0),t.value.file_storage==="webdav"?(b(),c("div",ee,[e("div",oe,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav URL ",2),n(e("input",{type:"text",placeholder:"请输入 Webdav URL","onUpdate:modelValue":o[11]||(o[11]=r=>t.value.webdav_url=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_url]])]),e("div",re,[e("div",te,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav Username ",2),n(e("input",{type:"text",placeholder:"请输入 Webdav Username","onUpdate:modelValue":o[12]||(o[12]=r=>t.value.webdav_username=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_username]])]),e("div",ae,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav Password ",2),n(e("input",{type:"password",placeholder:"请输入 Webdav Password","onUpdate:modelValue":o[13]||(o[13]=r=>t.value.webdav_password=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_password]])])])])):h("",!0),t.value.file_storage==="s3"?(b(),c("div",se,[e("div",le,[e("div",ne,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 EndpointUrl ",2),n(e("input",{type:"text","onUpdate:modelValue":o[14]||(o[14]=r=>t.value.s3_endpoint_url=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_endpoint_url]])]),e("div",de,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 AccessKeyId ",2),n(e("input",{type:"text","onUpdate:modelValue":o[15]||(o[15]=r=>t.value.s3_access_key_id=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_access_key_id]])]),e("div",ie,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 SecretAccessKey ",2),n(e("input",{type:"password","onUpdate:modelValue":o[16]||(o[16]=r=>t.value.s3_secret_access_key=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_secret_access_key]])]),e("div",ue,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 BucketName ",2),n(e("input",{type:"text","onUpdate:modelValue":o[17]||(o[17]=r=>t.value.s3_bucket_name=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_bucket_name]])]),e("div",ge,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Region Name ",2),n(e("input",{type:"text","onUpdate:modelValue":o[18]||(o[18]=r=>t.value.s3_region_name=r),placeholder:"auto",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_region_name]])]),e("div",ce,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 CDN URL ",2),n(e("input",{type:"text","onUpdate:modelValue":o[19]||(o[19]=r=>t.value.s3_cdn_url=r),placeholder:"https://cdn.example.com",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_cdn_url]])]),e("div",ye,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Signature Version ",2),n(e("select",{"onUpdate:modelValue":o[20]||(o[20]=r=>t.value.s3_signature_version=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[35]||(o[35]=[e("option",{value:"s3v2"},"S3v2",-1),e("option",{value:"s3v4"},"S3v4",-1)]),2),[[x,t.value.s3_signature_version]])]),e("div",be,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Hostname ",2),n(e("input",{type:"text","onUpdate:modelValue":o[21]||(o[21]=r=>t.value.s3_hostname=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_hostname]])]),e("div",pe,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 启用代理 ",2),e("div",ve,[e("button",{type:"button",onClick:o[22]||(o[22]=r=>t.value.s3_proxy=t.value.s3_proxy===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.s3_proxy===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.s3_proxy===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.s3_proxy===1?"translate-x-5":"translate-x-0",l(s)&&t.value.s3_proxy!==1?"bg-gray-100":"bg-white"]])},null,2)],10,me),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.s3_proxy===1?"已开启":"已关闭"),3)])])])])):h("",!0)])]),e("div",xe,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 上传限制 ",2),e("div",he,[e("div",fe,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 每分钟上传限制 ",2),e("div",we,[n(e("input",{type:"number","onUpdate:modelValue":o[23]||(o[23]=r=>t.value.uploadMinute=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.uploadMinute]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"分钟",2)])]),e("div",_e,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 上传数量限制 ",2),e("div",ke,[n(e("input",{type:"number","onUpdate:modelValue":o[24]||(o[24]=r=>t.value.uploadCount=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.uploadCount]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"个文件",2)])]),e("div",Ue,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 文件大小限制 ",2),e("div",Se,[n(e("input",{type:"number","onUpdate:modelValue":o[25]||(o[25]=r=>p.value=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,p.value]]),n(e("select",{"onUpdate:modelValue":o[26]||(o[26]=r=>v.value=r),class:a(["rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[36]||(o[36]=[e("option",{value:"KB"},"KB",-1),e("option",{value:"MB"},"MB",-1),e("option",{value:"GB"},"GB",-1)]),2),[[x,v.value]])])]),e("div",Ve,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 过期方式 ",2),e("div",Ce,[(b(),c(w,null,_(["day","hour","minute","forever","count"],r=>e("label",{key:r,class:"relative inline-flex items-center group cursor-pointer"},[n(e("input",{type:"checkbox",value:r,"onUpdate:modelValue":o[27]||(o[27]=D=>t.value.expireStyle=D),class:"peer sr-only"},null,8,De),[[A,t.value.expireStyle]]),e("div",{class:a(["px-4 py-2 rounded-full border-2 transition-all duration-200 select-none",[t.value.expireStyle.includes(r)?(l(s),"bg-indigo-600 border-indigo-600 text-white"):l(s)?"bg-gray-700 border-gray-600 text-gray-300 hover:border-indigo-500":"bg-white border-gray-300 text-gray-700 hover:border-indigo-500"]])},y({day:"按天",hour:"按小时",minute:"按分钟",forever:"永久",count:"按次数"}[r]),3)])),64))])]),e("div",Be,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 最长保存时间 ",2),e("div",Me,[n(e("input",{type:"number","onUpdate:modelValue":o[28]||(o[28]=r=>u.value=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,u.value]]),n(e("select",{"onUpdate:modelValue":o[29]||(o[29]=r=>g.value=r),class:a(["rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[37]||(o[37]=[e("option",{value:"秒"},"秒",-1),e("option",{value:"分"},"分",-1),e("option",{value:"时"},"时",-1),e("option",{value:"天"},"天",-1)]),2),[[x,g.value]])])]),e("div",Fe,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 游客上传 ",2),e("div",Ae,[e("button",{type:"button",onClick:o[30]||(o[30]=r=>t.value.openUpload=t.value.openUpload===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.openUpload===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.openUpload===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.openUpload===1?"translate-x-5":"translate-x-0",l(s)&&t.value.openUpload!==1?"bg-gray-100":"bg-white"]])},null,2)],10,ze),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.openUpload===1?"已开启":"已关闭"),3)])])])]),e("div",Ee,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 错误限制 ",2),e("div",Te,[e("div",We,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 每分钟错误限制 ",2),e("div",Ke,[n(e("input",{type:"number","onUpdate:modelValue":o[31]||(o[31]=r=>t.value.errorMinute=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.errorMinute]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"分钟",2)])]),e("div",Ne,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 错误次数限制 ",2),e("div",Ie,[n(e("input",{type:"number","onUpdate:modelValue":o[32]||(o[32]=r=>t.value.errorCount=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.errorCount]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"次",2)])])])]),e("div",{class:"flex justify-end mt-8"},[e("button",{onClick:C,class:"px-4 py-2 bg-indigo-600 text-white rounded-md hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 transition-colors duration-200"}," 保存设置 ")])])],2)]))}});export{Ge as default}; diff --git a/themes/2025/assets/box-Btnwq7DC.js b/themes/2025/assets/box-Btnwq7DC.js new file mode 100644 index 000000000..59fdad23c --- /dev/null +++ b/themes/2025/assets/box-Btnwq7DC.js @@ -0,0 +1,6 @@ +import{c as a}from"./index-C-4-823a.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const o=a("BoxIcon",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);export{o as B}; diff --git a/themes/2025/assets/box-Ty09a89y.js b/themes/2025/assets/box-Ty09a89y.js new file mode 100644 index 000000000..d6e2f5592 --- /dev/null +++ b/themes/2025/assets/box-Ty09a89y.js @@ -0,0 +1,6 @@ +import{c as a}from"./index-DKQ1YPO4.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const o=a("BoxIcon",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);export{o as B}; diff --git a/themes/2025/assets/clipboard-BhvW87y2.js b/themes/2025/assets/clipboard-BhvW87y2.js new file mode 100644 index 000000000..4b26c06d8 --- /dev/null +++ b/themes/2025/assets/clipboard-BhvW87y2.js @@ -0,0 +1,21 @@ +import{c as F,d as Q,G as R,r as _,H as $,o as Z,F as j,I as ee,J as Y,u as K}from"./index-DKQ1YPO4.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const se=F("ClipboardListIcon",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"M12 11h4",key:"1jrz19"}],["path",{d:"M12 16h4",key:"n85exb"}],["path",{d:"M8 11h.01",key:"1dfujw"}],["path",{d:"M8 16h.01",key:"18s6g9"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const le=F("EyeIcon",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const ue=F("ShieldCheckIcon",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/*! + * qrcode.vue v3.6.0 + * A Vue.js component to generate QRCode. Both support Vue 2 and Vue 3 + * © 2017-PRESENT @scopewu(https://github.com/scopewu) + * MIT License. + */var N=function(){return N=Object.assign||function(c){for(var u,l=1,f=arguments.length;la.MAX_VERSION)throw new RangeError("Version value out of range");if(n<-1||n>7)throw new RangeError("Mask value out of range");this.size=e*4+17;for(var i=[],s=0;s7)throw new RangeError("Invalid value");var h,g;for(h=r;;h++){var p=a.getNumDataCodewords(h,t)*8,w=d.getTotalBits(e,h);if(w<=p){g=w;break}if(h>=n)throw new RangeError("Data too long")}for(var C=0,M=[a.Ecc.MEDIUM,a.Ecc.QUARTILE,a.Ecc.HIGH];C>>3]|=k<<7-(L&7)}),new a(h,t,z,i)},a.prototype.getModule=function(e,t){return 0<=e&&e>>9)*1335;var i=(t<<10|r)^21522;f(i>>>15==0);for(var n=0;n<=5;n++)this.setFunctionModule(8,n,l(i,n));this.setFunctionModule(8,7,l(i,6)),this.setFunctionModule(8,8,l(i,7)),this.setFunctionModule(7,8,l(i,8));for(var n=9;n<15;n++)this.setFunctionModule(14-n,8,l(i,n));for(var n=0;n<8;n++)this.setFunctionModule(this.size-1-n,8,l(i,n));for(var n=8;n<15;n++)this.setFunctionModule(8,this.size-15+n,l(i,n));this.setFunctionModule(8,this.size-8,!0)},a.prototype.drawVersion=function(){if(!(this.version<7)){for(var e=this.version,t=0;t<12;t++)e=e<<1^(e>>>11)*7973;var r=this.version<<12|e;f(r>>>18==0);for(var t=0;t<18;t++){var n=l(r,t),i=this.size-11+t%3,s=Math.floor(t/3);this.setFunctionModule(i,s,n),this.setFunctionModule(s,i,n)}}},a.prototype.drawFinderPattern=function(e,t){for(var r=-4;r<=4;r++)for(var n=-4;n<=4;n++){var i=Math.max(Math.abs(n),Math.abs(r)),s=e+n,h=t+r;0<=s&&s=h)&&E.push(P[y])})},C=0;C=1;r-=2){r==6&&(r=5);for(var n=0;n>>3],7-(t&7)),t++)}}f(t==e.length*8)},a.prototype.applyMask=function(e){if(e<0||e>7)throw new RangeError("Mask value out of range");for(var t=0;t5&&e++):(this.finderPenaltyAddHistory(n,i),r||(e+=this.finderPenaltyCountPatterns(i)*a.PENALTY_N3),r=this.modules[t][s],n=1);e+=this.finderPenaltyTerminateAndCount(r,n,i)*a.PENALTY_N3}for(var s=0;s5&&e++):(this.finderPenaltyAddHistory(h,i),r||(e+=this.finderPenaltyCountPatterns(i)*a.PENALTY_N3),r=this.modules[t][s],h=1);e+=this.finderPenaltyTerminateAndCount(r,h,i)*a.PENALTY_N3}for(var t=0;ta.MAX_VERSION)throw new RangeError("Version number out of range");var t=(16*e+128)*e+64;if(e>=2){var r=Math.floor(e/7)+2;t-=(25*r-10)*r-55,e>=7&&(t-=36)}return f(208<=t&&t<=29648),t},a.getNumDataCodewords=function(e,t){return Math.floor(a.getNumRawDataModules(e)/8)-a.ECC_CODEWORDS_PER_BLOCK[t.ordinal][e]*a.NUM_ERROR_CORRECTION_BLOCKS[t.ordinal][e]},a.reedSolomonComputeDivisor=function(e){if(e<1||e>255)throw new RangeError("Degree out of range");for(var t=[],r=0;r>>8||t>>>8)throw new RangeError("Byte out of range");for(var r=0,n=7;n>=0;n--)r=r<<1^(r>>>7)*285,r^=(t>>>n&1)*e;return f(r>>>8==0),r},a.prototype.finderPenaltyCountPatterns=function(e){var t=e[1];f(t<=this.size*3);var r=t>0&&e[2]==t&&e[3]==t*3&&e[4]==t&&e[5]==t;return(r&&e[0]>=t*4&&e[6]>=t?1:0)+(r&&e[6]>=t*4&&e[0]>=t?1:0)},a.prototype.finderPenaltyTerminateAndCount=function(e,t,r){return e&&(this.finderPenaltyAddHistory(t,r),t=0),t+=this.size,this.finderPenaltyAddHistory(t,r),this.finderPenaltyCountPatterns(r)},a.prototype.finderPenaltyAddHistory=function(e,t){t[0]==0&&(e+=this.size),t.pop(),t.unshift(e)},a.MIN_VERSION=1,a.MAX_VERSION=40,a.PENALTY_N1=3,a.PENALTY_N2=3,a.PENALTY_N3=40,a.PENALTY_N4=10,a.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],a.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],a}();o.QrCode=c;function u(a,e,t){if(e<0||e>31||a>>>e)throw new RangeError("Value out of range");for(var r=e-1;r>=0;r--)t.push(a>>>r&1)}function l(a,e){return(a>>>e&1)!=0}function f(a){if(!a)throw new Error("Assertion error")}var d=function(){function a(e,t,r){if(this.mode=e,this.numChars=t,this.bitData=r,t<0)throw new RangeError("Invalid argument");this.bitData=r.slice()}return a.makeBytes=function(e){for(var t=[],r=0,n=e;r=1<=c.y+c.h?u:u.map(function(f,d){return d=c.x+c.w?f:!1})})}var G={value:{type:String,required:!0,default:""},size:{type:Number,default:100},level:{type:String,default:U,validator:function(o){return x(o)}},background:{type:String,default:"#fff"},foreground:{type:String,default:"#000"},margin:{type:Number,required:!1,default:0},imageSettings:{type:Object,required:!1,default:function(){return{}}},gradient:{type:Boolean,required:!1,default:!1},gradientType:{type:String,required:!1,default:"linear",validator:function(o){return["linear","radial"].indexOf(o)>-1}},gradientStartColor:{type:String,required:!1,default:"#000"},gradientEndColor:{type:String,required:!1,default:"#fff"}},re=N(N({},G),{renderAs:{type:String,required:!1,default:"canvas",validator:function(o){return["canvas","svg"].indexOf(o)>-1}}}),ae=Q({name:"QRCodeSvg",props:G,setup:function(o){var c=_(0),u=_(""),l,f=function(){var a=o.value,e=o.level,t=o.margin,r=t>>>0,n=x(e)?e:U,i=O.QrCode.encodeText(a,H[n]).getModules();if(c.value=i.length+r*2,o.imageSettings.src){var s=J(i,o.size,r,o.imageSettings);l={x:s.x+r,y:s.y+r,width:s.w,height:s.h},s.excavation&&(i=q(i,s.excavation))}u.value=W(i,r)},d=function(){if(!o.gradient)return null;var a=o.gradientType==="linear"?{x1:"0%",y1:"0%",x2:"100%",y2:"100%"}:{cx:"50%",cy:"50%",r:"50%",fx:"50%",fy:"50%"};return R(o.gradientType==="linear"?"linearGradient":"radialGradient",N({id:"qr-gradient"},a),[R("stop",{offset:"0%",style:{stopColor:o.gradientStartColor}}),R("stop",{offset:"100%",style:{stopColor:o.gradientEndColor}})])};return f(),$(f),function(){return R("svg",{width:o.size,height:o.size,"shape-rendering":"crispEdges",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(c.value," ").concat(c.value)},[R("defs",{},[d()]),R("rect",{width:"100%",height:"100%",fill:o.background}),R("path",{fill:o.gradient?"url(#qr-gradient)":o.foreground,d:u.value}),o.imageSettings.src&&R("image",N({href:o.imageSettings.src},l))])}}}),ne=Q({name:"QRCodeCanvas",props:G,setup:function(o,c){var u=_(null),l=_(null),f=function(){var a=o.value,e=o.level,t=o.size,r=o.margin,n=o.background,i=o.foreground,s=o.gradient,h=o.gradientType,g=o.gradientStartColor,p=o.gradientEndColor,w=r>>>0,C=x(e)?e:U,M=u.value;if(M){var m=M.getContext("2d");if(m){var v=O.QrCode.encodeText(a,H[C]).getModules(),E=v.length+w*2,S=l.value,y={x:0,y:0,width:0,height:0},P=o.imageSettings.src&&S!=null&&S.naturalWidth!==0&&S.naturalHeight!==0;if(P){var A=J(v,o.size,w,o.imageSettings);y={x:A.x+w,y:A.y+w,width:A.w,height:A.h},A.excavation&&(v=q(v,A.excavation))}var D=window.devicePixelRatio||1,T=t/E*D;if(M.height=M.width=t*D,m.scale(T,T),m.fillStyle=n,m.fillRect(0,0,E,E),s){var I=void 0;h==="linear"?I=m.createLinearGradient(0,0,E,E):I=m.createRadialGradient(E/2,E/2,0,E/2,E/2,E/2),I.addColorStop(0,g),I.addColorStop(1,p),m.fillStyle=I}else m.fillStyle=i;te?m.fill(new Path2D(W(v,w))):v.forEach(function(z,k){z.forEach(function(L,X){L&&m.fillRect(X+w,k+w,1,1)})}),P&&m.drawImage(S,y.x,y.y,y.width,y.height)}}};Z(f),$(f);var d=c.attrs.style;return function(){return R(j,[R("canvas",N(N({},c.attrs),{ref:u,style:N(N({},d),{width:"".concat(o.size,"px"),height:"".concat(o.size,"px")})})),o.imageSettings.src&&R("img",{ref:l,src:o.imageSettings.src,style:{display:"none"},onLoad:f})])}}}),ce=Q({name:"Qrcode",render:function(){var o=this.$props,c=o.renderAs,u=o.value,l=o.size,f=o.margin,d=o.level,a=o.background,e=o.foreground,t=o.imageSettings,r=o.gradient,n=o.gradientType,i=o.gradientStartColor,s=o.gradientEndColor;return R(c==="svg"?ae:ne,{value:u,size:l,margin:f,level:d,background:a,foreground:e,imageSettings:t,gradient:r,gradientType:n,gradientStartColor:i,gradientEndColor:s})},props:re});const fe=ee("fileData",()=>{const o=Y(JSON.parse(localStorage.getItem("receiveData")||"[]")||[]),c=Y(JSON.parse(localStorage.getItem("shareData")||"[]")||[]);function u(){localStorage.setItem("receiveData",JSON.stringify(o)),localStorage.setItem("shareData",JSON.stringify(c))}function l(e){o.unshift(e),u()}function f(e){c.unshift(e),u()}function d(e){o.splice(e,1),u()}function a(e){c.splice(e,1),u()}return{receiveData:o,shareData:c,save:u,addShareData:f,addReceiveData:l,deleteReceiveData:d,deleteShareData:a}});K();const V=async(o,c={})=>{const{successMsg:u="复制成功",errorMsg:l="复制失败,请手动复制",showMsg:f=!0}=c,d=K();try{if(navigator.clipboard&&navigator.clipboard.writeText)return await navigator.clipboard.writeText(o),f&&d.showAlert(u,"success"),!0;const a=document.createElement("textarea");a.value=o,a.style.position="fixed",a.style.opacity="0",document.body.appendChild(a),a.select();const e=document.execCommand("copy");if(document.body.removeChild(a),e)return f&&d.showAlert(u,"success"),!0;throw new Error("execCommand copy failed")}catch(a){return console.error("复制失败:",a),f&&d.showAlert(l,"error"),!1}},de=async o=>{const c=`${window.location.origin}/#/?code=${o}`;return V(c,{successMsg:"取件链接已复制到剪贴板",errorMsg:"复制失败,请手动复制取件链接"})},he=async o=>V(o,{successMsg:"取件码已复制到剪贴板",errorMsg:"复制失败,请手动复制取件码"}),oe=window.location.origin+"/",ve=(o,c)=>{const u=`wget ${oe}share/select?code=${o} -O "${c}"`;navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText(u).then(()=>{console.log("命令已复制到剪贴板!")}).catch(l=>{console.error("复制失败,使用回退方法:",l),B(u)}):(console.warn("Clipboard API 不可用,使用回退方法。"),B(u))};function B(o){const c=document.createElement("textarea");c.value=o,c.style.position="fixed",document.body.appendChild(c),c.focus(),c.select();try{const u=document.execCommand("copy");console.log("回退复制操作成功:",u)}catch(u){console.error("回退复制操作失败:",u)}document.body.removeChild(c)}navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText("要复制的文本"):B("要复制的文本");export{se as C,le as E,ce as Q,ue as S,ve as a,de as b,he as c,V as d,fe as u}; diff --git a/themes/2025/assets/clipboard-WGJncgVO.js b/themes/2025/assets/clipboard-WGJncgVO.js new file mode 100644 index 000000000..e0c572f4b --- /dev/null +++ b/themes/2025/assets/clipboard-WGJncgVO.js @@ -0,0 +1,21 @@ +import{c as F,d as Q,G as R,r as _,H as $,o as Z,F as j,I as ee,J as Y,u as K}from"./index-C-4-823a.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const se=F("ClipboardListIcon",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"M12 11h4",key:"1jrz19"}],["path",{d:"M12 16h4",key:"n85exb"}],["path",{d:"M8 11h.01",key:"1dfujw"}],["path",{d:"M8 16h.01",key:"18s6g9"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const le=F("EyeIcon",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const ue=F("ShieldCheckIcon",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/*! + * qrcode.vue v3.6.0 + * A Vue.js component to generate QRCode. Both support Vue 2 and Vue 3 + * © 2017-PRESENT @scopewu(https://github.com/scopewu) + * MIT License. + */var N=function(){return N=Object.assign||function(c){for(var u,l=1,f=arguments.length;la.MAX_VERSION)throw new RangeError("Version value out of range");if(n<-1||n>7)throw new RangeError("Mask value out of range");this.size=e*4+17;for(var i=[],s=0;s7)throw new RangeError("Invalid value");var h,g;for(h=r;;h++){var p=a.getNumDataCodewords(h,t)*8,w=d.getTotalBits(e,h);if(w<=p){g=w;break}if(h>=n)throw new RangeError("Data too long")}for(var C=0,M=[a.Ecc.MEDIUM,a.Ecc.QUARTILE,a.Ecc.HIGH];C>>3]|=k<<7-(L&7)}),new a(h,t,z,i)},a.prototype.getModule=function(e,t){return 0<=e&&e>>9)*1335;var i=(t<<10|r)^21522;f(i>>>15==0);for(var n=0;n<=5;n++)this.setFunctionModule(8,n,l(i,n));this.setFunctionModule(8,7,l(i,6)),this.setFunctionModule(8,8,l(i,7)),this.setFunctionModule(7,8,l(i,8));for(var n=9;n<15;n++)this.setFunctionModule(14-n,8,l(i,n));for(var n=0;n<8;n++)this.setFunctionModule(this.size-1-n,8,l(i,n));for(var n=8;n<15;n++)this.setFunctionModule(8,this.size-15+n,l(i,n));this.setFunctionModule(8,this.size-8,!0)},a.prototype.drawVersion=function(){if(!(this.version<7)){for(var e=this.version,t=0;t<12;t++)e=e<<1^(e>>>11)*7973;var r=this.version<<12|e;f(r>>>18==0);for(var t=0;t<18;t++){var n=l(r,t),i=this.size-11+t%3,s=Math.floor(t/3);this.setFunctionModule(i,s,n),this.setFunctionModule(s,i,n)}}},a.prototype.drawFinderPattern=function(e,t){for(var r=-4;r<=4;r++)for(var n=-4;n<=4;n++){var i=Math.max(Math.abs(n),Math.abs(r)),s=e+n,h=t+r;0<=s&&s=h)&&E.push(P[y])})},C=0;C=1;r-=2){r==6&&(r=5);for(var n=0;n>>3],7-(t&7)),t++)}}f(t==e.length*8)},a.prototype.applyMask=function(e){if(e<0||e>7)throw new RangeError("Mask value out of range");for(var t=0;t5&&e++):(this.finderPenaltyAddHistory(n,i),r||(e+=this.finderPenaltyCountPatterns(i)*a.PENALTY_N3),r=this.modules[t][s],n=1);e+=this.finderPenaltyTerminateAndCount(r,n,i)*a.PENALTY_N3}for(var s=0;s5&&e++):(this.finderPenaltyAddHistory(h,i),r||(e+=this.finderPenaltyCountPatterns(i)*a.PENALTY_N3),r=this.modules[t][s],h=1);e+=this.finderPenaltyTerminateAndCount(r,h,i)*a.PENALTY_N3}for(var t=0;ta.MAX_VERSION)throw new RangeError("Version number out of range");var t=(16*e+128)*e+64;if(e>=2){var r=Math.floor(e/7)+2;t-=(25*r-10)*r-55,e>=7&&(t-=36)}return f(208<=t&&t<=29648),t},a.getNumDataCodewords=function(e,t){return Math.floor(a.getNumRawDataModules(e)/8)-a.ECC_CODEWORDS_PER_BLOCK[t.ordinal][e]*a.NUM_ERROR_CORRECTION_BLOCKS[t.ordinal][e]},a.reedSolomonComputeDivisor=function(e){if(e<1||e>255)throw new RangeError("Degree out of range");for(var t=[],r=0;r>>8||t>>>8)throw new RangeError("Byte out of range");for(var r=0,n=7;n>=0;n--)r=r<<1^(r>>>7)*285,r^=(t>>>n&1)*e;return f(r>>>8==0),r},a.prototype.finderPenaltyCountPatterns=function(e){var t=e[1];f(t<=this.size*3);var r=t>0&&e[2]==t&&e[3]==t*3&&e[4]==t&&e[5]==t;return(r&&e[0]>=t*4&&e[6]>=t?1:0)+(r&&e[6]>=t*4&&e[0]>=t?1:0)},a.prototype.finderPenaltyTerminateAndCount=function(e,t,r){return e&&(this.finderPenaltyAddHistory(t,r),t=0),t+=this.size,this.finderPenaltyAddHistory(t,r),this.finderPenaltyCountPatterns(r)},a.prototype.finderPenaltyAddHistory=function(e,t){t[0]==0&&(e+=this.size),t.pop(),t.unshift(e)},a.MIN_VERSION=1,a.MAX_VERSION=40,a.PENALTY_N1=3,a.PENALTY_N2=3,a.PENALTY_N3=40,a.PENALTY_N4=10,a.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],a.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],a}();o.QrCode=c;function u(a,e,t){if(e<0||e>31||a>>>e)throw new RangeError("Value out of range");for(var r=e-1;r>=0;r--)t.push(a>>>r&1)}function l(a,e){return(a>>>e&1)!=0}function f(a){if(!a)throw new Error("Assertion error")}var d=function(){function a(e,t,r){if(this.mode=e,this.numChars=t,this.bitData=r,t<0)throw new RangeError("Invalid argument");this.bitData=r.slice()}return a.makeBytes=function(e){for(var t=[],r=0,n=e;r=1<=c.y+c.h?u:u.map(function(f,d){return d=c.x+c.w?f:!1})})}var G={value:{type:String,required:!0,default:""},size:{type:Number,default:100},level:{type:String,default:U,validator:function(o){return x(o)}},background:{type:String,default:"#fff"},foreground:{type:String,default:"#000"},margin:{type:Number,required:!1,default:0},imageSettings:{type:Object,required:!1,default:function(){return{}}},gradient:{type:Boolean,required:!1,default:!1},gradientType:{type:String,required:!1,default:"linear",validator:function(o){return["linear","radial"].indexOf(o)>-1}},gradientStartColor:{type:String,required:!1,default:"#000"},gradientEndColor:{type:String,required:!1,default:"#fff"}},re=N(N({},G),{renderAs:{type:String,required:!1,default:"canvas",validator:function(o){return["canvas","svg"].indexOf(o)>-1}}}),ae=Q({name:"QRCodeSvg",props:G,setup:function(o){var c=_(0),u=_(""),l,f=function(){var a=o.value,e=o.level,t=o.margin,r=t>>>0,n=x(e)?e:U,i=O.QrCode.encodeText(a,H[n]).getModules();if(c.value=i.length+r*2,o.imageSettings.src){var s=J(i,o.size,r,o.imageSettings);l={x:s.x+r,y:s.y+r,width:s.w,height:s.h},s.excavation&&(i=q(i,s.excavation))}u.value=W(i,r)},d=function(){if(!o.gradient)return null;var a=o.gradientType==="linear"?{x1:"0%",y1:"0%",x2:"100%",y2:"100%"}:{cx:"50%",cy:"50%",r:"50%",fx:"50%",fy:"50%"};return R(o.gradientType==="linear"?"linearGradient":"radialGradient",N({id:"qr-gradient"},a),[R("stop",{offset:"0%",style:{stopColor:o.gradientStartColor}}),R("stop",{offset:"100%",style:{stopColor:o.gradientEndColor}})])};return f(),$(f),function(){return R("svg",{width:o.size,height:o.size,"shape-rendering":"crispEdges",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(c.value," ").concat(c.value)},[R("defs",{},[d()]),R("rect",{width:"100%",height:"100%",fill:o.background}),R("path",{fill:o.gradient?"url(#qr-gradient)":o.foreground,d:u.value}),o.imageSettings.src&&R("image",N({href:o.imageSettings.src},l))])}}}),ne=Q({name:"QRCodeCanvas",props:G,setup:function(o,c){var u=_(null),l=_(null),f=function(){var a=o.value,e=o.level,t=o.size,r=o.margin,n=o.background,i=o.foreground,s=o.gradient,h=o.gradientType,g=o.gradientStartColor,p=o.gradientEndColor,w=r>>>0,C=x(e)?e:U,M=u.value;if(M){var m=M.getContext("2d");if(m){var v=O.QrCode.encodeText(a,H[C]).getModules(),E=v.length+w*2,S=l.value,y={x:0,y:0,width:0,height:0},P=o.imageSettings.src&&S!=null&&S.naturalWidth!==0&&S.naturalHeight!==0;if(P){var A=J(v,o.size,w,o.imageSettings);y={x:A.x+w,y:A.y+w,width:A.w,height:A.h},A.excavation&&(v=q(v,A.excavation))}var D=window.devicePixelRatio||1,T=t/E*D;if(M.height=M.width=t*D,m.scale(T,T),m.fillStyle=n,m.fillRect(0,0,E,E),s){var I=void 0;h==="linear"?I=m.createLinearGradient(0,0,E,E):I=m.createRadialGradient(E/2,E/2,0,E/2,E/2,E/2),I.addColorStop(0,g),I.addColorStop(1,p),m.fillStyle=I}else m.fillStyle=i;te?m.fill(new Path2D(W(v,w))):v.forEach(function(z,k){z.forEach(function(L,X){L&&m.fillRect(X+w,k+w,1,1)})}),P&&m.drawImage(S,y.x,y.y,y.width,y.height)}}};Z(f),$(f);var d=c.attrs.style;return function(){return R(j,[R("canvas",N(N({},c.attrs),{ref:u,style:N(N({},d),{width:"".concat(o.size,"px"),height:"".concat(o.size,"px")})})),o.imageSettings.src&&R("img",{ref:l,src:o.imageSettings.src,style:{display:"none"},onLoad:f})])}}}),ce=Q({name:"Qrcode",render:function(){var o=this.$props,c=o.renderAs,u=o.value,l=o.size,f=o.margin,d=o.level,a=o.background,e=o.foreground,t=o.imageSettings,r=o.gradient,n=o.gradientType,i=o.gradientStartColor,s=o.gradientEndColor;return R(c==="svg"?ae:ne,{value:u,size:l,margin:f,level:d,background:a,foreground:e,imageSettings:t,gradient:r,gradientType:n,gradientStartColor:i,gradientEndColor:s})},props:re});const fe=ee("fileData",()=>{const o=Y(JSON.parse(localStorage.getItem("receiveData")||"[]")||[]),c=Y(JSON.parse(localStorage.getItem("shareData")||"[]")||[]);function u(){localStorage.setItem("receiveData",JSON.stringify(o)),localStorage.setItem("shareData",JSON.stringify(c))}function l(e){o.unshift(e),u()}function f(e){c.unshift(e),u()}function d(e){o.splice(e,1),u()}function a(e){c.splice(e,1),u()}return{receiveData:o,shareData:c,save:u,addShareData:f,addReceiveData:l,deleteReceiveData:d,deleteShareData:a}});K();const V=async(o,c={})=>{const{successMsg:u="复制成功",errorMsg:l="复制失败,请手动复制",showMsg:f=!0}=c,d=K();try{if(navigator.clipboard&&navigator.clipboard.writeText)return await navigator.clipboard.writeText(o),f&&d.showAlert(u,"success"),!0;const a=document.createElement("textarea");a.value=o,a.style.position="fixed",a.style.opacity="0",document.body.appendChild(a),a.select();const e=document.execCommand("copy");if(document.body.removeChild(a),e)return f&&d.showAlert(u,"success"),!0;throw new Error("execCommand copy failed")}catch(a){return console.error("复制失败:",a),f&&d.showAlert(l,"error"),!1}},de=async o=>{const c=`${window.location.origin}/#/?code=${o}`;return V(c,{successMsg:"取件链接已复制到剪贴板",errorMsg:"复制失败,请手动复制取件链接"})},he=async o=>V(o,{successMsg:"取件码已复制到剪贴板",errorMsg:"复制失败,请手动复制取件码"}),oe=window.location.origin+"/",ve=(o,c)=>{const u=`wget ${oe}share/select?code=${o} -O "${c}"`;navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText(u).then(()=>{console.log("命令已复制到剪贴板!")}).catch(l=>{console.error("复制失败,使用回退方法:",l),B(u)}):(console.warn("Clipboard API 不可用,使用回退方法。"),B(u))};function B(o){const c=document.createElement("textarea");c.value=o,c.style.position="fixed",document.body.appendChild(c),c.focus(),c.select();try{const u=document.execCommand("copy");console.log("回退复制操作成功:",u)}catch(u){console.error("回退复制操作失败:",u)}document.body.removeChild(c)}navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText("要复制的文本"):B("要复制的文本");export{se as C,le as E,ce as Q,ue as S,ve as a,de as b,he as c,V as d,fe as u}; diff --git a/themes/2025/assets/file-D-r2HShG.js b/themes/2025/assets/file-D-r2HShG.js new file mode 100644 index 000000000..3fa9e0dfe --- /dev/null +++ b/themes/2025/assets/file-D-r2HShG.js @@ -0,0 +1,6 @@ +import{c as a}from"./index-C-4-823a.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const t=a("FileIcon",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}]]);export{t as F}; diff --git a/themes/2025/assets/file-D8mQlyUF.js b/themes/2025/assets/file-D8mQlyUF.js new file mode 100644 index 000000000..6b04f2e0e --- /dev/null +++ b/themes/2025/assets/file-D8mQlyUF.js @@ -0,0 +1,6 @@ +import{c as a}from"./index-DKQ1YPO4.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const t=a("FileIcon",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}]]);export{t as F}; diff --git a/themes/2025/assets/hard-drive-C37_tD5A.js b/themes/2025/assets/hard-drive-C37_tD5A.js new file mode 100644 index 000000000..a6c477934 --- /dev/null +++ b/themes/2025/assets/hard-drive-C37_tD5A.js @@ -0,0 +1,6 @@ +import{c as e}from"./index-DKQ1YPO4.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const a=e("HardDriveIcon",[["line",{x1:"22",x2:"2",y1:"12",y2:"12",key:"1y58io"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}],["line",{x1:"6",x2:"6.01",y1:"16",y2:"16",key:"sgf278"}],["line",{x1:"10",x2:"10.01",y1:"16",y2:"16",key:"1l4acy"}]]);export{a as H}; diff --git a/themes/2025/assets/hard-drive-X0PLCy-z.js b/themes/2025/assets/hard-drive-X0PLCy-z.js new file mode 100644 index 000000000..564cdd8c1 --- /dev/null +++ b/themes/2025/assets/hard-drive-X0PLCy-z.js @@ -0,0 +1,6 @@ +import{c as e}from"./index-C-4-823a.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const a=e("HardDriveIcon",[["line",{x1:"22",x2:"2",y1:"12",y2:"12",key:"1y58io"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}],["line",{x1:"6",x2:"6.01",y1:"16",y2:"16",key:"sgf278"}],["line",{x1:"10",x2:"10.01",y1:"16",y2:"16",key:"1l4acy"}]]);export{a as H}; diff --git a/themes/2025/assets/index-BILSbgLN.css b/themes/2025/assets/index-BILSbgLN.css new file mode 100644 index 000000000..8237f98f2 --- /dev/null +++ b/themes/2025/assets/index-BILSbgLN.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),0 3px rgb(var(--tw-prose-kbd-shadows) / 10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: 17 24 39;--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: 255 255 255;--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-invert{--tw-prose-body: var(--tw-prose-invert-body);--tw-prose-headings: var(--tw-prose-invert-headings);--tw-prose-lead: var(--tw-prose-invert-lead);--tw-prose-links: var(--tw-prose-invert-links);--tw-prose-bold: var(--tw-prose-invert-bold);--tw-prose-counters: var(--tw-prose-invert-counters);--tw-prose-bullets: var(--tw-prose-invert-bullets);--tw-prose-hr: var(--tw-prose-invert-hr);--tw-prose-quotes: var(--tw-prose-invert-quotes);--tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);--tw-prose-captions: var(--tw-prose-invert-captions);--tw-prose-kbd: var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);--tw-prose-code: var(--tw-prose-invert-code);--tw-prose-pre-code: var(--tw-prose-invert-pre-code);--tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);--tw-prose-th-borders: var(--tw-prose-invert-th-borders);--tw-prose-td-borders: var(--tw-prose-invert-td-borders)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.-inset-2{top:-.5rem;right:-.5rem;bottom:-.5rem;left:-.5rem}.inset-0{top:0;right:0;bottom:0;left:0}.inset-1{top:.25rem;right:.25rem;bottom:.25rem;left:.25rem}.inset-y-0{top:0;bottom:0}.-bottom-0\.5{bottom:-.125rem}.-top-2{top:-.5rem}.left-0{left:0}.left-2{left:.5rem}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-2{right:.5rem}.right-24{right:6rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-3{top:.75rem}.top-4{top:1rem}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-\[85vh\]{max-height:85vh}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-16{width:4rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[200px\]{max-width:200px}.max-w-\[250px\]{max-width:250px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.-space-y-px>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(-1px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(-1px * var(--tw-space-y-reverse))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.divide-gray-700>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity, 1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-gray-700\/50{border-color:#37415180}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.border-indigo-500{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.border-indigo-600{--tw-border-opacity: 1;border-color:rgb(79 70 229 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-opacity-20{--tw-border-opacity: .2}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/60{background-color:#0009}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-900{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.bg-blue-900\/20{background-color:#1e3a8a33}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.bg-gray-700\/50{background-color:#37415180}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-800\/50{background-color:#1f293780}.bg-gray-800\/95{background-color:#1f2937f2}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900\/50{background-color:#11182780}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-900{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.bg-green-900\/30{background-color:#14532d4d}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-50{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.bg-indigo-500\/10{background-color:#6366f11a}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-indigo-900{--tw-bg-opacity: 1;background-color:rgb(49 46 129 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-900{--tw-bg-opacity: 1;background-color:rgb(88 28 135 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-900\/20{background-color:#7f1d1d33}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/50{background-color:#ffffff80}.bg-white\/70{background-color:#ffffffb3}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-900\/30{background-color:#713f124d}.bg-opacity-10{--tw-bg-opacity: .1}.bg-opacity-20{--tw-bg-opacity: .2}.bg-opacity-25{--tw-bg-opacity: .25}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-70{--tw-bg-opacity: .7}.bg-opacity-90{--tw-bg-opacity: .9}.bg-opacity-95{--tw-bg-opacity: .95}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-50{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-600{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-50{--tw-gradient-from: #f9fafb var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-800\/50{--tw-gradient-from: rgb(31 41 55 / .5) var(--tw-gradient-from-position);--tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900{--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900\/90{--tw-gradient-from: rgb(17 24 39 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-500{--tw-gradient-from: #22c55e var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-300{--tw-gradient-from: #a5b4fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(165 180 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-500{--tw-gradient-from: #6366f1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-600{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from: #ec4899 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 72 153 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #ef4444 var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from: #eab308 var(--tw-gradient-from-position);--tw-gradient-to: rgb(234 179 8 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-indigo-50{--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #eef2ff var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-indigo-900{--tw-gradient-to: rgb(49 46 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #312e81 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-300{--tw-gradient-to: rgb(216 180 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #d8b4fe var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-500{--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #a855f7 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-black\/90{--tw-gradient-to: rgb(0 0 0 / .9) var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.to-gray-700\/50{--tw-gradient-to: rgb(55 65 81 / .5) var(--tw-gradient-to-position)}.to-gray-800{--tw-gradient-to: #1f2937 var(--tw-gradient-to-position)}.to-green-600{--tw-gradient-to: #16a34a var(--tw-gradient-to-position)}.to-indigo-500{--tw-gradient-to: #6366f1 var(--tw-gradient-to-position)}.to-pink-300{--tw-gradient-to: #f9a8d4 var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to: #a855f7 var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to: #dc2626 var(--tw-gradient-to-position)}.to-white{--tw-gradient-to: #fff var(--tw-gradient-to-position)}.to-yellow-600{--tw-gradient-to: #ca8a04 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-right{background-position:right}.bg-no-repeat{background-repeat:no-repeat}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-10{padding-right:2.5rem}.pr-3{padding-right:.75rem}.pr-32{padding-right:8rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-0\.5{padding-top:.125rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-6{line-height:1.5rem}.tracking-wider{letter-spacing:.05em}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity, 1))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-indigo-500\/25{--tw-shadow-color: rgb(99 102 241 / .25);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-red-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.blur-md{--tw-blur: blur(12px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-lg{--tw-backdrop-blur: blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[appearance\:textfield\]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}@font-face{font-family:DingTalk;src:url(/assets/DingTalk-CT5a5scH.ttf) format("truetype")}*{font-family:DingTalk,sans-serif!important}.hover\:rotate-180:hover{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:rotate-90:hover{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.hover\:border-gray-500:hover{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.hover\:border-indigo-500:hover{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.hover\:bg-black:hover{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-400:hover{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-900\/30:hover{background-color:#1e3a8a4d}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600\/50:hover{background-color:#4b556380}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700\/50:hover{background-color:#37415180}.hover\:bg-green-100:hover{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.hover\:bg-green-400:hover{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-100:hover{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-400:hover{--tw-bg-opacity: 1;background-color:rgb(129 140 248 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-700:hover{--tw-bg-opacity: 1;background-color:rgb(67 56 202 / var(--tw-bg-opacity, 1))}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover\:bg-red-400:hover{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.hover\:bg-red-900\/30:hover{background-color:#7f1d1d4d}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-opacity-10:hover{--tw-bg-opacity: .1}.hover\:bg-opacity-20:hover{--tw-bg-opacity: .2}.hover\:bg-opacity-50:hover{--tw-bg-opacity: .5}.hover\:from-cyan-600:hover{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-cyan-700:hover{--tw-gradient-from: #0e7490 var(--tw-gradient-from-position);--tw-gradient-to: rgb(14 116 144 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-indigo-500:hover{--tw-gradient-from: #6366f1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-indigo-600:hover{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:via-purple-600:hover{--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #9333ea var(--tw-gradient-via-position), var(--tw-gradient-to)}.hover\:to-indigo-600:hover{--tw-gradient-to: #4f46e5 var(--tw-gradient-to-position)}.hover\:to-pink-600:hover{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.hover\:to-purple-600:hover{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.hover\:to-purple-700:hover{--tw-gradient-to: #7e22ce var(--tw-gradient-to-position)}.hover\:text-gray-200:hover{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-indigo-300:hover{--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-cyan-500\/50:hover{--tw-shadow-color: rgb(6 182 212 / .5);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-indigo-500\/35:hover{--tw-shadow-color: rgb(99 102 241 / .35);--tw-shadow: var(--tw-shadow-colored)}.focus\:z-10:focus{z-index:10}.focus\:border-cyan-500:focus{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity, 1))}.focus\:border-indigo-500:focus{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-inset:focus{--tw-ring-inset: inset}.focus\:ring-cyan-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-500\/50:focus{--tw-ring-color: rgb(99 102 241 / .5)}.focus\:ring-indigo-500\/70:focus{--tw-ring-color: rgb(99 102 241 / .7)}.focus\:ring-purple-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.focus\:ring-opacity-50:focus{--tw-ring-opacity: .5}.focus\:ring-offset-0:focus{--tw-ring-offset-width: 0px}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.group:focus-within .group-focus-within\:bg-indigo-500\/30{background-color:#6366f14d}.group:focus-within .group-focus-within\:bg-indigo-500\/50{background-color:#6366f180}.group:focus-within .group-focus-within\:text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.group:focus-within .group-focus-within\:text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.group:focus-within .group-focus-within\:opacity-100{opacity:1}.group:hover .group-hover\:translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.group:hover .group-hover\:border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.group:hover .group-hover\:text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:opacity-20{opacity:.2}@media (min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mb-3{margin-bottom:.75rem}.sm\:mb-4{margin-bottom:1rem}.sm\:mb-6{margin-bottom:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:mr-2{margin-right:.5rem}.sm\:h-4{height:1rem}.sm\:h-5{height:1.25rem}.sm\:h-6{height:1.5rem}.sm\:h-\[160px\]{height:160px}.sm\:w-4{width:1rem}.sm\:w-5{width:1.25rem}.sm\:w-6{width:1.5rem}.sm\:w-\[160px\]{width:160px}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-sm{max-width:24rem}.sm\:max-w-xl{max-width:36rem}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-4{gap:1rem}.sm\:gap-6{gap:1.5rem}.sm\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.sm\:p-0{padding:0}.sm\:p-2{padding:.5rem}.sm\:p-3{padding:.75rem}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3{padding-top:.75rem;padding-bottom:.75rem}.sm\:py-4{padding-top:1rem;padding-bottom:1rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 768px){.md\:max-w-md{max-width:28rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:relative{position:relative}.lg\:hidden{display:none}.lg\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (prefers-color-scheme: dark){.dark\:hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}}.\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.alert-fade-enter-active[data-v-0ce78a4a],.alert-fade-leave-active[data-v-0ce78a4a]{transition:all .5s cubic-bezier(.68,-.55,.265,1.55)}.alert-fade-enter-from[data-v-0ce78a4a],.alert-fade-leave-to[data-v-0ce78a4a]{opacity:0;transform:translate(-50px) scale(.95)}.app-container{min-height:100vh;width:100%;transition:background-color .5s ease}.light{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #eef2ff var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: #fff var(--tw-gradient-to-position)}.dark{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(49 46 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #312e81 var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: #000 var(--tw-gradient-to-position)}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:9999}.loading-spinner{width:50px;height:50px;border:3px solid #fff;border-top:3px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}} diff --git a/themes/2025/assets/index-C-4-823a.js b/themes/2025/assets/index-C-4-823a.js new file mode 100644 index 000000000..4bf80c39a --- /dev/null +++ b/themes/2025/assets/index-C-4-823a.js @@ -0,0 +1,86 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/SendFileView-DJlusruR.js","assets/clipboard-WGJncgVO.js","assets/file-D-r2HShG.js","assets/trash-CAImX6bg.js","assets/SendFileView-DFaiiDlV.css","assets/RetrievewFileView-DzS7C4LK.js","assets/box-Btnwq7DC.js","assets/hard-drive-X0PLCy-z.js","assets/RetrievewFileView-BgLHFGkc.css","assets/AdminLayout-BSI80wlV.js","assets/AdminLayout-CZwJxNxp.css","assets/DashboardView-DHkW9fcL.js","assets/FileManageView-3VMR54FC.js","assets/FileManageView-CwWUDTzq.css","assets/LoginView-T1LQBbzg.js","assets/LoginView-zMyguVQQ.css"])))=>i.map(i=>d[i]); +(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const i of o.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&s(i)}).observe(document,{childList:!0,subtree:!0});function n(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(r){if(r.ep)return;r.ep=!0;const o=n(r);fetch(r.href,o)}})();/** +* @vue/shared v3.5.17 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Pr(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const ce={},Qt=[],rt=()=>{},Fc=()=>!1,_s=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Lr=e=>e.startsWith("onUpdate:"),ge=Object.assign,Nr=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Dc=Object.prototype.hasOwnProperty,se=(e,t)=>Dc.call(e,t),$=Array.isArray,Yt=e=>$n(e)==="[object Map]",cn=e=>$n(e)==="[object Set]",oo=e=>$n(e)==="[object Date]",K=e=>typeof e=="function",de=e=>typeof e=="string",ot=e=>typeof e=="symbol",oe=e=>e!==null&&typeof e=="object",xi=e=>(oe(e)||K(e))&&K(e.then)&&K(e.catch),Ri=Object.prototype.toString,$n=e=>Ri.call(e),jc=e=>$n(e).slice(8,-1),Ci=e=>$n(e)==="[object Object]",Ir=e=>de(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,bn=Pr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),ws=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Bc=/-(\w)/g,Ve=ws(e=>e.replace(Bc,(t,n)=>n?n.toUpperCase():"")),$c=/\B([A-Z])/g,Pt=ws(e=>e.replace($c,"-$1").toLowerCase()),vs=ws(e=>e.charAt(0).toUpperCase()+e.slice(1)),Vs=ws(e=>e?`on${vs(e)}`:""),Tt=(e,t)=>!Object.is(e,t),es=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},is=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Uc=e=>{const t=de(e)?Number(e):NaN;return isNaN(t)?e:t};let io;const Es=()=>io||(io=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Ss(e){if($(e)){const t={};for(let n=0;n{if(n){const s=n.split(Vc);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function an(e){let t="";if(de(e))t=e;else if($(e))for(let n=0;nUn(n,t))}const Ai=e=>!!(e&&e.__v_isRef===!0),Gc=e=>de(e)?e:e==null?"":$(e)||oe(e)&&(e.toString===Ri||!K(e.toString))?Ai(e)?Gc(e.value):JSON.stringify(e,Oi,2):String(e),Oi=(e,t)=>Ai(t)?Oi(e,t.value):Yt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],o)=>(n[qs(s,o)+" =>"]=r,n),{})}:cn(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>qs(n))}:ot(t)?qs(t):oe(t)&&!$(t)&&!Ci(t)?String(t):t,qs=(e,t="")=>{var n;return ot(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.5.17 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let _e;class Pi{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=_e,!t&&_e&&(this.index=(_e.scopes||(_e.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0&&--this._on===0&&(_e=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n0)return;if(wn){let t=wn;for(wn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;_n;){let t=_n;for(_n=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function Fi(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Di(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),Dr(s),Qc(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function ar(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ji(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ji(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===On)||(e.globalVersion=On,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!ar(e))))return;e.flags|=2;const t=e.dep,n=ue,s=Ke;ue=e,Ke=!0;try{Fi(e);const r=e.fn(e._value);(t.version===0||Tt(r,e._value))&&(e.flags|=128,e._value=r,t.version++)}catch(r){throw t.version++,r}finally{ue=n,Ke=s,Di(e),e.flags&=-3}}function Dr(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let o=n.computed.deps;o;o=o.nextDep)Dr(o,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Qc(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Ke=!0;const Bi=[];function pt(){Bi.push(Ke),Ke=!1}function mt(){const e=Bi.pop();Ke=e===void 0?!0:e}function lo(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ue;ue=void 0;try{t()}finally{ue=n}}}let On=0;class Yc{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class jr{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!ue||!Ke||ue===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ue)n=this.activeLink=new Yc(ue,this),ue.deps?(n.prevDep=ue.depsTail,ue.depsTail.nextDep=n,ue.depsTail=n):ue.deps=ue.depsTail=n,$i(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=ue.depsTail,n.nextDep=void 0,ue.depsTail.nextDep=n,ue.depsTail=n,ue.deps===n&&(ue.deps=s)}return n}trigger(t){this.version++,On++,this.notify(t)}notify(t){kr();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Fr()}}}function $i(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)$i(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const ls=new WeakMap,jt=Symbol(""),ur=Symbol(""),Pn=Symbol("");function we(e,t,n){if(Ke&&ue){let s=ls.get(e);s||ls.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new jr),r.map=s,r.key=n),r.track()}}function ut(e,t,n,s,r,o){const i=ls.get(e);if(!i){On++;return}const l=c=>{c&&c.trigger()};if(kr(),t==="clear")i.forEach(l);else{const c=$(e),u=c&&Ir(n);if(c&&n==="length"){const a=Number(s);i.forEach((f,p)=>{(p==="length"||p===Pn||!ot(p)&&p>=a)&&l(f)})}else switch((n!==void 0||i.has(void 0))&&l(i.get(n)),u&&l(i.get(Pn)),t){case"add":c?u&&l(i.get("length")):(l(i.get(jt)),Yt(e)&&l(i.get(ur)));break;case"delete":c||(l(i.get(jt)),Yt(e)&&l(i.get(ur)));break;case"set":Yt(e)&&l(i.get(jt));break}}Fr()}function Zc(e,t){const n=ls.get(e);return n&&n.get(t)}function zt(e){const t=Q(e);return t===e?t:(we(t,"iterate",Pn),He(e)?t:t.map(be))}function xs(e){return we(e=Q(e),"iterate",Pn),e}const ea={__proto__:null,[Symbol.iterator](){return Ws(this,Symbol.iterator,be)},concat(...e){return zt(this).concat(...e.map(t=>$(t)?zt(t):t))},entries(){return Ws(this,"entries",e=>(e[1]=be(e[1]),e))},every(e,t){return lt(this,"every",e,t,void 0,arguments)},filter(e,t){return lt(this,"filter",e,t,n=>n.map(be),arguments)},find(e,t){return lt(this,"find",e,t,be,arguments)},findIndex(e,t){return lt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return lt(this,"findLast",e,t,be,arguments)},findLastIndex(e,t){return lt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return lt(this,"forEach",e,t,void 0,arguments)},includes(...e){return zs(this,"includes",e)},indexOf(...e){return zs(this,"indexOf",e)},join(e){return zt(this).join(e)},lastIndexOf(...e){return zs(this,"lastIndexOf",e)},map(e,t){return lt(this,"map",e,t,void 0,arguments)},pop(){return hn(this,"pop")},push(...e){return hn(this,"push",e)},reduce(e,...t){return co(this,"reduce",e,t)},reduceRight(e,...t){return co(this,"reduceRight",e,t)},shift(){return hn(this,"shift")},some(e,t){return lt(this,"some",e,t,void 0,arguments)},splice(...e){return hn(this,"splice",e)},toReversed(){return zt(this).toReversed()},toSorted(e){return zt(this).toSorted(e)},toSpliced(...e){return zt(this).toSpliced(...e)},unshift(...e){return hn(this,"unshift",e)},values(){return Ws(this,"values",be)}};function Ws(e,t,n){const s=xs(e),r=s[t]();return s!==e&&!He(e)&&(r._next=r.next,r.next=()=>{const o=r._next();return o.value&&(o.value=n(o.value)),o}),r}const ta=Array.prototype;function lt(e,t,n,s,r,o){const i=xs(e),l=i!==e&&!He(e),c=i[t];if(c!==ta[t]){const f=c.apply(e,o);return l?be(f):f}let u=n;i!==e&&(l?u=function(f,p){return n.call(this,be(f),p,e)}:n.length>2&&(u=function(f,p){return n.call(this,f,p,e)}));const a=c.call(i,u,s);return l&&r?r(a):a}function co(e,t,n,s){const r=xs(e);let o=n;return r!==e&&(He(e)?n.length>3&&(o=function(i,l,c){return n.call(this,i,l,c,e)}):o=function(i,l,c){return n.call(this,i,be(l),c,e)}),r[t](o,...s)}function zs(e,t,n){const s=Q(e);we(s,"iterate",Pn);const r=s[t](...n);return(r===-1||r===!1)&&Ur(n[0])?(n[0]=Q(n[0]),s[t](...n)):r}function hn(e,t,n=[]){pt(),kr();const s=Q(e)[t].apply(e,n);return Fr(),mt(),s}const na=Pr("__proto__,__v_isRef,__isVue"),Ui=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ot));function sa(e){ot(e)||(e=String(e));const t=Q(this);return we(t,"has",e),t.hasOwnProperty(e)}class Hi{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,o=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return o;if(n==="__v_raw")return s===(r?o?ha:Wi:o?Ki:qi).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const i=$(t);if(!r){let c;if(i&&(c=ea[n]))return c;if(n==="hasOwnProperty")return sa}const l=Reflect.get(t,n,fe(t)?t:s);return(ot(n)?Ui.has(n):na(n))||(r||we(t,"get",n),o)?l:fe(l)?i&&Ir(n)?l:l.value:oe(l)?r?Ji(l):Hn(l):l}}class Vi extends Hi{constructor(t=!1){super(!1,t)}set(t,n,s,r){let o=t[n];if(!this._isShallow){const c=At(o);if(!He(s)&&!At(s)&&(o=Q(o),s=Q(s)),!$(t)&&fe(o)&&!fe(s))return c?!1:(o.value=s,!0)}const i=$(t)&&Ir(n)?Number(n)e,Gn=e=>Reflect.getPrototypeOf(e);function ca(e,t,n){return function(...s){const r=this.__v_raw,o=Q(r),i=Yt(o),l=e==="entries"||e===Symbol.iterator&&i,c=e==="keys"&&i,u=r[e](...s),a=n?fr:t?cs:be;return!t&&we(o,"iterate",c?ur:jt),{next(){const{value:f,done:p}=u.next();return p?{value:f,done:p}:{value:l?[a(f[0]),a(f[1])]:a(f),done:p}},[Symbol.iterator](){return this}}}}function Xn(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function aa(e,t){const n={get(r){const o=this.__v_raw,i=Q(o),l=Q(r);e||(Tt(r,l)&&we(i,"get",r),we(i,"get",l));const{has:c}=Gn(i),u=t?fr:e?cs:be;if(c.call(i,r))return u(o.get(r));if(c.call(i,l))return u(o.get(l));o!==i&&o.get(r)},get size(){const r=this.__v_raw;return!e&&we(Q(r),"iterate",jt),Reflect.get(r,"size",r)},has(r){const o=this.__v_raw,i=Q(o),l=Q(r);return e||(Tt(r,l)&&we(i,"has",r),we(i,"has",l)),r===l?o.has(r):o.has(r)||o.has(l)},forEach(r,o){const i=this,l=i.__v_raw,c=Q(l),u=t?fr:e?cs:be;return!e&&we(c,"iterate",jt),l.forEach((a,f)=>r.call(o,u(a),u(f),i))}};return ge(n,e?{add:Xn("add"),set:Xn("set"),delete:Xn("delete"),clear:Xn("clear")}:{add(r){!t&&!He(r)&&!At(r)&&(r=Q(r));const o=Q(this);return Gn(o).has.call(o,r)||(o.add(r),ut(o,"add",r,r)),this},set(r,o){!t&&!He(o)&&!At(o)&&(o=Q(o));const i=Q(this),{has:l,get:c}=Gn(i);let u=l.call(i,r);u||(r=Q(r),u=l.call(i,r));const a=c.call(i,r);return i.set(r,o),u?Tt(o,a)&&ut(i,"set",r,o):ut(i,"add",r,o),this},delete(r){const o=Q(this),{has:i,get:l}=Gn(o);let c=i.call(o,r);c||(r=Q(r),c=i.call(o,r)),l&&l.call(o,r);const u=o.delete(r);return c&&ut(o,"delete",r,void 0),u},clear(){const r=Q(this),o=r.size!==0,i=r.clear();return o&&ut(r,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=ca(r,e,t)}),n}function Br(e,t){const n=aa(e,t);return(s,r,o)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(se(n,r)&&r in s?n:s,r,o)}const ua={get:Br(!1,!1)},fa={get:Br(!1,!0)},da={get:Br(!0,!1)};const qi=new WeakMap,Ki=new WeakMap,Wi=new WeakMap,ha=new WeakMap;function pa(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function ma(e){return e.__v_skip||!Object.isExtensible(e)?0:pa(jc(e))}function Hn(e){return At(e)?e:$r(e,!1,oa,ua,qi)}function zi(e){return $r(e,!1,la,fa,Ki)}function Ji(e){return $r(e,!0,ia,da,Wi)}function $r(e,t,n,s,r){if(!oe(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=ma(e);if(o===0)return e;const i=r.get(e);if(i)return i;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function dt(e){return At(e)?dt(e.__v_raw):!!(e&&e.__v_isReactive)}function At(e){return!!(e&&e.__v_isReadonly)}function He(e){return!!(e&&e.__v_isShallow)}function Ur(e){return e?!!e.__v_raw:!1}function Q(e){const t=e&&e.__v_raw;return t?Q(t):e}function Hr(e){return!se(e,"__v_skip")&&Object.isExtensible(e)&&cr(e,"__v_skip",!0),e}const be=e=>oe(e)?Hn(e):e,cs=e=>oe(e)?Ji(e):e;function fe(e){return e?e.__v_isRef===!0:!1}function en(e){return Gi(e,!1)}function ga(e){return Gi(e,!0)}function Gi(e,t){return fe(e)?e:new ya(e,t)}class ya{constructor(t,n){this.dep=new jr,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:Q(t),this._value=n?t:be(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||He(t)||At(t);t=s?t:Q(t),Tt(t,n)&&(this._rawValue=t,this._value=s?t:be(t),this.dep.trigger())}}function Pe(e){return fe(e)?e.value:e}const ba={get:(e,t,n)=>t==="__v_raw"?e:Pe(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return fe(r)&&!fe(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function Xi(e){return dt(e)?e:new Proxy(e,ba)}function _a(e){const t=$(e)?new Array(e.length):{};for(const n in e)t[n]=Qi(e,n);return t}class wa{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Zc(Q(this._object),this._key)}}class va{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Ea(e,t,n){return fe(e)?e:K(e)?new va(e):oe(e)&&arguments.length>1?Qi(e,t,n):en(e)}function Qi(e,t,n){const s=e[t];return fe(s)?s:new wa(e,t,n)}class Sa{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new jr(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=On-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&ue!==this)return ki(this,!0),!0}get value(){const t=this.dep.track();return ji(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function xa(e,t,n=!1){let s,r;return K(e)?s=e:(s=e.get,r=e.set),new Sa(s,r,n)}const Qn={},as=new WeakMap;let Mt;function Ra(e,t=!1,n=Mt){if(n){let s=as.get(n);s||as.set(n,s=[]),s.push(e)}}function Ca(e,t,n=ce){const{immediate:s,deep:r,once:o,scheduler:i,augmentJob:l,call:c}=n,u=L=>r?L:He(L)||r===!1||r===0?ft(L,1):ft(L);let a,f,p,m,y=!1,_=!1;if(fe(e)?(f=()=>e.value,y=He(e)):dt(e)?(f=()=>u(e),y=!0):$(e)?(_=!0,y=e.some(L=>dt(L)||He(L)),f=()=>e.map(L=>{if(fe(L))return L.value;if(dt(L))return u(L);if(K(L))return c?c(L,2):L()})):K(e)?t?f=c?()=>c(e,2):e:f=()=>{if(p){pt();try{p()}finally{mt()}}const L=Mt;Mt=a;try{return c?c(e,3,[m]):e(m)}finally{Mt=L}}:f=rt,t&&r){const L=f,j=r===!0?1/0:r;f=()=>ft(L(),j)}const x=Ni(),A=()=>{a.stop(),x&&x.active&&Nr(x.effects,a)};if(o&&t){const L=t;t=(...j)=>{L(...j),A()}}let C=_?new Array(e.length).fill(Qn):Qn;const P=L=>{if(!(!(a.flags&1)||!a.dirty&&!L))if(t){const j=a.run();if(r||y||(_?j.some((X,z)=>Tt(X,C[z])):Tt(j,C))){p&&p();const X=Mt;Mt=a;try{const z=[j,C===Qn?void 0:_&&C[0]===Qn?[]:C,m];C=j,c?c(t,3,z):t(...z)}finally{Mt=X}}}else a.run()};return l&&l(P),a=new Ii(f),a.scheduler=i?()=>i(P,!1):P,m=L=>Ra(L,!1,a),p=a.onStop=()=>{const L=as.get(a);if(L){if(c)c(L,4);else for(const j of L)j();as.delete(a)}},t?s?P(!0):C=a.run():i?i(P.bind(null,!0),!0):a.run(),A.pause=a.pause.bind(a),A.resume=a.resume.bind(a),A.stop=A,A}function ft(e,t=1/0,n){if(t<=0||!oe(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,fe(e))ft(e.value,t,n);else if($(e))for(let s=0;s{ft(s,t,n)});else if(Ci(e)){for(const s in e)ft(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&ft(e[s],t,n)}return e}/** +* @vue/runtime-core v3.5.17 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function Vn(e,t,n,s){try{return s?e(...s):e()}catch(r){Rs(r,t,n)}}function We(e,t,n,s){if(K(e)){const r=Vn(e,t,n,s);return r&&xi(r)&&r.catch(o=>{Rs(o,t,n)}),r}if($(e)){const r=[];for(let o=0;o>>1,r=xe[s],o=Ln(r);o=Ln(n)?xe.push(e):xe.splice(Aa(t),0,e),e.flags|=1,Zi()}}function Zi(){us||(us=Yi.then(tl))}function Oa(e){$(e)?Zt.push(...e):Et&&e.id===-1?Et.splice(Gt+1,0,e):e.flags&1||(Zt.push(e),e.flags|=1),Zi()}function ao(e,t,n=nt+1){for(;nLn(n)-Ln(s));if(Zt.length=0,Et){Et.push(...t);return}for(Et=t,Gt=0;Gte.id==null?e.flags&2?-1:1/0:e.id;function tl(e){try{for(nt=0;nt{s._d&&vo(-1);const o=fs(t);let i;try{i=e(...r)}finally{fs(o),s._d&&vo(1)}return i};return s._n=!0,s._c=!0,s._d=!0,s}function Fp(e,t){if(Ce===null)return e;const n=Ns(Ce),s=e.dirs||(e.dirs=[]);for(let r=0;re.__isTeleport,St=Symbol("_leaveCb"),Yn=Symbol("_enterCb");function rl(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Os(()=>{e.isMounted=!0}),dl(()=>{e.isUnmounting=!0}),e}const $e=[Function,Array],ol={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:$e,onEnter:$e,onAfterEnter:$e,onEnterCancelled:$e,onBeforeLeave:$e,onLeave:$e,onAfterLeave:$e,onLeaveCancelled:$e,onBeforeAppear:$e,onAppear:$e,onAfterAppear:$e,onAppearCancelled:$e},il=e=>{const t=e.subTree;return t.component?il(t.component):t},La={name:"BaseTransition",props:ol,setup(e,{slots:t}){const n=kl(),s=rl();return()=>{const r=t.default&&qr(t.default(),!0);if(!r||!r.length)return;const o=ll(r),i=Q(e),{mode:l}=i;if(s.isLeaving)return Js(o);const c=uo(o);if(!c)return Js(o);let u=Nn(c,i,s,n,f=>u=f);c.type!==Re&&Ht(c,u);let a=n.subTree&&uo(n.subTree);if(a&&a.type!==Re&&!Ft(c,a)&&il(n).type!==Re){let f=Nn(a,i,s,n);if(Ht(a,f),l==="out-in"&&c.type!==Re)return s.isLeaving=!0,f.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete f.afterLeave,a=void 0},Js(o);l==="in-out"&&c.type!==Re?f.delayLeave=(p,m,y)=>{const _=cl(s,a);_[String(a.key)]=a,p[St]=()=>{m(),p[St]=void 0,delete u.delayedLeave,a=void 0},u.delayedLeave=()=>{y(),delete u.delayedLeave,a=void 0}}:a=void 0}else a&&(a=void 0);return o}}};function ll(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==Re){t=n;break}}return t}const Na=La;function cl(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function Nn(e,t,n,s,r){const{appear:o,mode:i,persisted:l=!1,onBeforeEnter:c,onEnter:u,onAfterEnter:a,onEnterCancelled:f,onBeforeLeave:p,onLeave:m,onAfterLeave:y,onLeaveCancelled:_,onBeforeAppear:x,onAppear:A,onAfterAppear:C,onAppearCancelled:P}=t,L=String(e.key),j=cl(n,e),X=(I,W)=>{I&&We(I,s,9,W)},z=(I,W)=>{const ee=W[1];X(I,W),$(I)?I.every(F=>F.length<=1)&&ee():I.length<=1&&ee()},V={mode:i,persisted:l,beforeEnter(I){let W=c;if(!n.isMounted)if(o)W=x||c;else return;I[St]&&I[St](!0);const ee=j[L];ee&&Ft(e,ee)&&ee.el[St]&&ee.el[St](),X(W,[I])},enter(I){let W=u,ee=a,F=f;if(!n.isMounted)if(o)W=A||u,ee=C||a,F=P||f;else return;let Y=!1;const pe=I[Yn]=Ee=>{Y||(Y=!0,Ee?X(F,[I]):X(ee,[I]),V.delayedLeave&&V.delayedLeave(),I[Yn]=void 0)};W?z(W,[I,pe]):pe()},leave(I,W){const ee=String(e.key);if(I[Yn]&&I[Yn](!0),n.isUnmounting)return W();X(p,[I]);let F=!1;const Y=I[St]=pe=>{F||(F=!0,W(),pe?X(_,[I]):X(y,[I]),I[St]=void 0,j[ee]===e&&delete j[ee])};j[ee]=e,m?z(m,[I,Y]):Y()},clone(I){const W=Nn(I,t,n,s,r);return r&&r(W),W}};return V}function Js(e){if(Ts(e))return e=Ot(e),e.children=null,e}function uo(e){if(!Ts(e))return sl(e.type)&&e.children?ll(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&K(n.default))return n.default()}}function Ht(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Ht(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function qr(e,t=!1,n){let s=[],r=0;for(let o=0;o1)for(let o=0;ovn(y,t&&($(t)?t[_]:t),n,s,r));return}if(En(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&vn(e,t,n,s.component.subTree);return}const o=s.shapeFlag&4?Ns(s.component):s.el,i=r?null:o,{i:l,r:c}=e,u=t&&t.r,a=l.refs===ce?l.refs={}:l.refs,f=l.setupState,p=Q(f),m=f===ce?()=>!1:y=>se(p,y);if(u!=null&&u!==c&&(de(u)?(a[u]=null,m(u)&&(f[u]=null)):fe(u)&&(u.value=null)),K(c))Vn(c,l,12,[i,a]);else{const y=de(c),_=fe(c);if(y||_){const x=()=>{if(e.f){const A=y?m(c)?f[c]:a[c]:c.value;r?$(A)&&Nr(A,o):$(A)?A.includes(o)||A.push(o):y?(a[c]=[o],m(c)&&(f[c]=a[c])):(c.value=[o],e.k&&(a[e.k]=c.value))}else y?(a[c]=i,m(c)&&(f[c]=i)):_&&(c.value=i,e.k&&(a[e.k]=i))};i?(x.id=-1,ke(x,n)):x()}}}Es().requestIdleCallback;Es().cancelIdleCallback;const En=e=>!!e.type.__asyncLoader,Ts=e=>e.type.__isKeepAlive;function Ia(e,t){ul(e,"a",t)}function Ma(e,t){ul(e,"da",t)}function ul(e,t,n=ye){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(As(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Ts(r.parent.vnode)&&ka(s,t,n,r),r=r.parent}}function ka(e,t,n,s){const r=As(t,e,s,!0);Kr(()=>{Nr(s[t],r)},n)}function As(e,t,n=ye,s=!1){if(n){const r=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...i)=>{pt();const l=Kn(n),c=We(t,n,e,i);return l(),mt(),c});return s?r.unshift(o):r.push(o),o}}const gt=e=>(t,n=ye)=>{(!kn||e==="sp")&&As(e,(...s)=>t(...s),n)},Fa=gt("bm"),Os=gt("m"),Da=gt("bu"),fl=gt("u"),dl=gt("bum"),Kr=gt("um"),ja=gt("sp"),Ba=gt("rtg"),$a=gt("rtc");function Ua(e,t=ye){As("ec",e,t)}const hl="components";function Dp(e,t){return gl(hl,e,!0,t)||e}const pl=Symbol.for("v-ndc");function ml(e){return de(e)?gl(hl,e,!1)||e:e||pl}function gl(e,t,n=!0,s=!1){const r=Ce||ye;if(r){const o=r.type;{const l=Nu(o,!1);if(l&&(l===t||l===Ve(t)||l===vs(Ve(t))))return o}const i=fo(r[e]||o[e],t)||fo(r.appContext[e],t);return!i&&s?o:i}}function fo(e,t){return e&&(e[t]||e[Ve(t)]||e[vs(Ve(t))])}function Ha(e,t,n,s){let r;const o=n,i=$(e);if(i||de(e)){const l=i&&dt(e);let c=!1,u=!1;l&&(c=!He(e),u=At(e),e=xs(e)),r=new Array(e.length);for(let a=0,f=e.length;at(l,c,void 0,o));else{const l=Object.keys(e);r=new Array(l.length);for(let c=0,u=l.length;ce?Fl(e)?Ns(e):dr(e.parent):null,Sn=ge(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>dr(e.parent),$root:e=>dr(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>bl(e),$forceUpdate:e=>e.f||(e.f=()=>{Vr(e.update)}),$nextTick:e=>e.n||(e.n=Cs.bind(e.proxy)),$watch:e=>fu.bind(e)}),Gs=(e,t)=>e!==ce&&!e.__isScriptSetup&&se(e,t),Va={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:o,accessCache:i,type:l,appContext:c}=e;let u;if(t[0]!=="$"){const m=i[t];if(m!==void 0)switch(m){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return o[t]}else{if(Gs(s,t))return i[t]=1,s[t];if(r!==ce&&se(r,t))return i[t]=2,r[t];if((u=e.propsOptions[0])&&se(u,t))return i[t]=3,o[t];if(n!==ce&&se(n,t))return i[t]=4,n[t];hr&&(i[t]=0)}}const a=Sn[t];let f,p;if(a)return t==="$attrs"&&we(e.attrs,"get",""),a(e);if((f=l.__cssModules)&&(f=f[t]))return f;if(n!==ce&&se(n,t))return i[t]=4,n[t];if(p=c.config.globalProperties,se(p,t))return p[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:o}=e;return Gs(r,t)?(r[t]=n,!0):s!==ce&&se(s,t)?(s[t]=n,!0):se(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,propsOptions:o}},i){let l;return!!n[i]||e!==ce&&se(e,i)||Gs(t,i)||(l=o[0])&&se(l,i)||se(s,i)||se(Sn,i)||se(r.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:se(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function ho(e){return $(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let hr=!0;function qa(e){const t=bl(e),n=e.proxy,s=e.ctx;hr=!1,t.beforeCreate&&po(t.beforeCreate,e,"bc");const{data:r,computed:o,methods:i,watch:l,provide:c,inject:u,created:a,beforeMount:f,mounted:p,beforeUpdate:m,updated:y,activated:_,deactivated:x,beforeDestroy:A,beforeUnmount:C,destroyed:P,unmounted:L,render:j,renderTracked:X,renderTriggered:z,errorCaptured:V,serverPrefetch:I,expose:W,inheritAttrs:ee,components:F,directives:Y,filters:pe}=t;if(u&&Ka(u,s,null),i)for(const G in i){const te=i[G];K(te)&&(s[G]=te.bind(n))}if(r){const G=r.call(n,n);oe(G)&&(e.data=Hn(G))}if(hr=!0,o)for(const G in o){const te=o[G],it=K(te)?te.bind(n,n):K(te.get)?te.get.bind(n,n):rt,yt=!K(te)&&K(te.set)?te.set.bind(n):rt,Ge=De({get:it,set:yt});Object.defineProperty(s,G,{enumerable:!0,configurable:!0,get:()=>Ge.value,set:Te=>Ge.value=Te})}if(l)for(const G in l)yl(l[G],s,n,G);if(c){const G=K(c)?c.call(n):c;Reflect.ownKeys(G).forEach(te=>{$t(te,G[te])})}a&&po(a,e,"c");function ie(G,te){$(te)?te.forEach(it=>G(it.bind(n))):te&&G(te.bind(n))}if(ie(Fa,f),ie(Os,p),ie(Da,m),ie(fl,y),ie(Ia,_),ie(Ma,x),ie(Ua,V),ie($a,X),ie(Ba,z),ie(dl,C),ie(Kr,L),ie(ja,I),$(W))if(W.length){const G=e.exposed||(e.exposed={});W.forEach(te=>{Object.defineProperty(G,te,{get:()=>n[te],set:it=>n[te]=it})})}else e.exposed||(e.exposed={});j&&e.render===rt&&(e.render=j),ee!=null&&(e.inheritAttrs=ee),F&&(e.components=F),Y&&(e.directives=Y),I&&al(e)}function Ka(e,t,n=rt){$(e)&&(e=pr(e));for(const s in e){const r=e[s];let o;oe(r)?"default"in r?o=Le(r.from||s,r.default,!0):o=Le(r.from||s):o=Le(r),fe(o)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>o.value,set:i=>o.value=i}):t[s]=o}}function po(e,t,n){We($(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function yl(e,t,n,s){let r=s.includes(".")?Pl(n,s):()=>n[s];if(de(e)){const o=t[e];K(o)&&xn(r,o)}else if(K(e))xn(r,e.bind(n));else if(oe(e))if($(e))e.forEach(o=>yl(o,t,n,s));else{const o=K(e.handler)?e.handler.bind(n):t[e.handler];K(o)&&xn(r,o,e)}}function bl(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:o,config:{optionMergeStrategies:i}}=e.appContext,l=o.get(t);let c;return l?c=l:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(u=>hs(c,u,i,!0)),hs(c,t,i)),oe(t)&&o.set(t,c),c}function hs(e,t,n,s=!1){const{mixins:r,extends:o}=t;o&&hs(e,o,n,!0),r&&r.forEach(i=>hs(e,i,n,!0));for(const i in t)if(!(s&&i==="expose")){const l=Wa[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const Wa={data:mo,props:go,emits:go,methods:yn,computed:yn,beforeCreate:Se,created:Se,beforeMount:Se,mounted:Se,beforeUpdate:Se,updated:Se,beforeDestroy:Se,beforeUnmount:Se,destroyed:Se,unmounted:Se,activated:Se,deactivated:Se,errorCaptured:Se,serverPrefetch:Se,components:yn,directives:yn,watch:Ja,provide:mo,inject:za};function mo(e,t){return t?e?function(){return ge(K(e)?e.call(this,this):e,K(t)?t.call(this,this):t)}:t:e}function za(e,t){return yn(pr(e),pr(t))}function pr(e){if($(e)){const t={};for(let n=0;n1)return n&&K(t)?t.call(s&&s.proxy):t}}function Qa(){return!!(ye||Ce||Bt)}const wl={},vl=()=>Object.create(wl),El=e=>Object.getPrototypeOf(e)===wl;function Ya(e,t,n,s=!1){const r={},o=vl();e.propsDefaults=Object.create(null),Sl(e,t,r,o);for(const i in e.propsOptions[0])i in r||(r[i]=void 0);n?e.props=s?r:zi(r):e.type.props?e.props=r:e.props=o,e.attrs=o}function Za(e,t,n,s){const{props:r,attrs:o,vnode:{patchFlag:i}}=e,l=Q(r),[c]=e.propsOptions;let u=!1;if((s||i>0)&&!(i&16)){if(i&8){const a=e.vnode.dynamicProps;for(let f=0;f{c=!0;const[p,m]=xl(f,t,!0);ge(i,p),m&&l.push(...m)};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}if(!o&&!c)return oe(e)&&s.set(e,Qt),Qt;if($(o))for(let a=0;ae[0]==="_"||e==="$stable",zr=e=>$(e)?e.map(st):[st(e)],tu=(e,t,n)=>{if(t._n)return t;const s=ds((...r)=>zr(t(...r)),n);return s._c=!1,s},Rl=(e,t,n)=>{const s=e._ctx;for(const r in e){if(Wr(r))continue;const o=e[r];if(K(o))t[r]=tu(r,o,s);else if(o!=null){const i=zr(o);t[r]=()=>i}}},Cl=(e,t)=>{const n=zr(t);e.slots.default=()=>n},Tl=(e,t,n)=>{for(const s in t)(n||!Wr(s))&&(e[s]=t[s])},nu=(e,t,n)=>{const s=e.slots=vl();if(e.vnode.shapeFlag&32){const r=t.__;r&&cr(s,"__",r,!0);const o=t._;o?(Tl(s,t,n),n&&cr(s,"_",o,!0)):Rl(t,s)}else t&&Cl(e,t)},su=(e,t,n)=>{const{vnode:s,slots:r}=e;let o=!0,i=ce;if(s.shapeFlag&32){const l=t._;l?n&&l===1?o=!1:Tl(r,t,n):(o=!t.$stable,Rl(t,r)),i=t}else t&&(Cl(e,t),i={default:1});if(o)for(const l in r)!Wr(l)&&i[l]==null&&delete r[l]},ke=bu;function ru(e){return ou(e)}function ou(e,t){const n=Es();n.__VUE__=!0;const{insert:s,remove:r,patchProp:o,createElement:i,createText:l,createComment:c,setText:u,setElementText:a,parentNode:f,nextSibling:p,setScopeId:m=rt,insertStaticContent:y}=e,_=(d,h,g,w=null,S=null,E=null,N=void 0,O=null,T=!!h.dynamicChildren)=>{if(d===h)return;d&&!Ft(d,h)&&(w=v(d),Te(d,S,E,!0),d=null),h.patchFlag===-2&&(T=!1,h.dynamicChildren=null);const{type:R,ref:H,shapeFlag:k}=h;switch(R){case Ls:x(d,h,g,w);break;case Re:A(d,h,g,w);break;case Qs:d==null&&C(h,g,w,N);break;case Ue:F(d,h,g,w,S,E,N,O,T);break;default:k&1?j(d,h,g,w,S,E,N,O,T):k&6?Y(d,h,g,w,S,E,N,O,T):(k&64||k&128)&&R.process(d,h,g,w,S,E,N,O,T,B)}H!=null&&S?vn(H,d&&d.ref,E,h||d,!h):H==null&&d&&d.ref!=null&&vn(d.ref,null,E,d,!0)},x=(d,h,g,w)=>{if(d==null)s(h.el=l(h.children),g,w);else{const S=h.el=d.el;h.children!==d.children&&u(S,h.children)}},A=(d,h,g,w)=>{d==null?s(h.el=c(h.children||""),g,w):h.el=d.el},C=(d,h,g,w)=>{[d.el,d.anchor]=y(d.children,h,g,w,d.el,d.anchor)},P=({el:d,anchor:h},g,w)=>{let S;for(;d&&d!==h;)S=p(d),s(d,g,w),d=S;s(h,g,w)},L=({el:d,anchor:h})=>{let g;for(;d&&d!==h;)g=p(d),r(d),d=g;r(h)},j=(d,h,g,w,S,E,N,O,T)=>{h.type==="svg"?N="svg":h.type==="math"&&(N="mathml"),d==null?X(h,g,w,S,E,N,O,T):I(d,h,S,E,N,O,T)},X=(d,h,g,w,S,E,N,O)=>{let T,R;const{props:H,shapeFlag:k,transition:U,dirs:q}=d;if(T=d.el=i(d.type,E,H&&H.is,H),k&8?a(T,d.children):k&16&&V(d.children,T,null,w,S,Xs(d,E),N,O),q&&Lt(d,null,w,"created"),z(T,d,d.scopeId,N,w),H){for(const ae in H)ae!=="value"&&!bn(ae)&&o(T,ae,null,H[ae],E,w);"value"in H&&o(T,"value",null,H.value,E),(R=H.onVnodeBeforeMount)&&Ze(R,w,d)}q&&Lt(d,null,w,"beforeMount");const Z=iu(S,U);Z&&U.beforeEnter(T),s(T,h,g),((R=H&&H.onVnodeMounted)||Z||q)&&ke(()=>{R&&Ze(R,w,d),Z&&U.enter(T),q&&Lt(d,null,w,"mounted")},S)},z=(d,h,g,w,S)=>{if(g&&m(d,g),w)for(let E=0;E{for(let R=T;R{const O=h.el=d.el;let{patchFlag:T,dynamicChildren:R,dirs:H}=h;T|=d.patchFlag&16;const k=d.props||ce,U=h.props||ce;let q;if(g&&Nt(g,!1),(q=U.onVnodeBeforeUpdate)&&Ze(q,g,h,d),H&&Lt(h,d,g,"beforeUpdate"),g&&Nt(g,!0),(k.innerHTML&&U.innerHTML==null||k.textContent&&U.textContent==null)&&a(O,""),R?W(d.dynamicChildren,R,O,g,w,Xs(h,S),E):N||te(d,h,O,null,g,w,Xs(h,S),E,!1),T>0){if(T&16)ee(O,k,U,g,S);else if(T&2&&k.class!==U.class&&o(O,"class",null,U.class,S),T&4&&o(O,"style",k.style,U.style,S),T&8){const Z=h.dynamicProps;for(let ae=0;ae{q&&Ze(q,g,h,d),H&&Lt(h,d,g,"updated")},w)},W=(d,h,g,w,S,E,N)=>{for(let O=0;O{if(h!==g){if(h!==ce)for(const E in h)!bn(E)&&!(E in g)&&o(d,E,h[E],null,S,w);for(const E in g){if(bn(E))continue;const N=g[E],O=h[E];N!==O&&E!=="value"&&o(d,E,O,N,S,w)}"value"in g&&o(d,"value",h.value,g.value,S)}},F=(d,h,g,w,S,E,N,O,T)=>{const R=h.el=d?d.el:l(""),H=h.anchor=d?d.anchor:l("");let{patchFlag:k,dynamicChildren:U,slotScopeIds:q}=h;q&&(O=O?O.concat(q):q),d==null?(s(R,g,w),s(H,g,w),V(h.children||[],g,H,S,E,N,O,T)):k>0&&k&64&&U&&d.dynamicChildren?(W(d.dynamicChildren,U,g,S,E,N,O),(h.key!=null||S&&h===S.subTree)&&Al(d,h,!0)):te(d,h,g,H,S,E,N,O,T)},Y=(d,h,g,w,S,E,N,O,T)=>{h.slotScopeIds=O,d==null?h.shapeFlag&512?S.ctx.activate(h,g,w,N,T):pe(h,g,w,S,E,N,T):Ee(d,h,T)},pe=(d,h,g,w,S,E,N)=>{const O=d.component=Tu(d,w,S);if(Ts(d)&&(O.ctx.renderer=B),Au(O,!1,N),O.asyncDep){if(S&&S.registerDep(O,ie,N),!d.el){const T=O.subTree=me(Re);A(null,T,h,g)}}else ie(O,d,h,g,S,E,N)},Ee=(d,h,g)=>{const w=h.component=d.component;if(gu(d,h,g))if(w.asyncDep&&!w.asyncResolved){G(w,h,g);return}else w.next=h,w.update();else h.el=d.el,w.vnode=h},ie=(d,h,g,w,S,E,N)=>{const O=()=>{if(d.isMounted){let{next:k,bu:U,u:q,parent:Z,vnode:ae}=d;{const Qe=Ol(d);if(Qe){k&&(k.el=ae.el,G(d,k,N)),Qe.asyncDep.then(()=>{d.isUnmounted||O()});return}}let re=k,Ae;Nt(d,!1),k?(k.el=ae.el,G(d,k,N)):k=ae,U&&es(U),(Ae=k.props&&k.props.onVnodeBeforeUpdate)&&Ze(Ae,Z,k,ae),Nt(d,!0);const Oe=_o(d),Xe=d.subTree;d.subTree=Oe,_(Xe,Oe,f(Xe.el),v(Xe),d,S,E),k.el=Oe.el,re===null&&yu(d,Oe.el),q&&ke(q,S),(Ae=k.props&&k.props.onVnodeUpdated)&&ke(()=>Ze(Ae,Z,k,ae),S)}else{let k;const{el:U,props:q}=h,{bm:Z,m:ae,parent:re,root:Ae,type:Oe}=d,Xe=En(h);Nt(d,!1),Z&&es(Z),!Xe&&(k=q&&q.onVnodeBeforeMount)&&Ze(k,re,h),Nt(d,!0);{Ae.ce&&Ae.ce._def.shadowRoot!==!1&&Ae.ce._injectChildStyle(Oe);const Qe=d.subTree=_o(d);_(null,Qe,g,w,d,S,E),h.el=Qe.el}if(ae&&ke(ae,S),!Xe&&(k=q&&q.onVnodeMounted)){const Qe=h;ke(()=>Ze(k,re,Qe),S)}(h.shapeFlag&256||re&&En(re.vnode)&&re.vnode.shapeFlag&256)&&d.a&&ke(d.a,S),d.isMounted=!0,h=g=w=null}};d.scope.on();const T=d.effect=new Ii(O);d.scope.off();const R=d.update=T.run.bind(T),H=d.job=T.runIfDirty.bind(T);H.i=d,H.id=d.uid,T.scheduler=()=>Vr(H),Nt(d,!0),R()},G=(d,h,g)=>{h.component=d;const w=d.vnode.props;d.vnode=h,d.next=null,Za(d,h.props,w,g),su(d,h.children,g),pt(),ao(d),mt()},te=(d,h,g,w,S,E,N,O,T=!1)=>{const R=d&&d.children,H=d?d.shapeFlag:0,k=h.children,{patchFlag:U,shapeFlag:q}=h;if(U>0){if(U&128){yt(R,k,g,w,S,E,N,O,T);return}else if(U&256){it(R,k,g,w,S,E,N,O,T);return}}q&8?(H&16&&Be(R,S,E),k!==R&&a(g,k)):H&16?q&16?yt(R,k,g,w,S,E,N,O,T):Be(R,S,E,!0):(H&8&&a(g,""),q&16&&V(k,g,w,S,E,N,O,T))},it=(d,h,g,w,S,E,N,O,T)=>{d=d||Qt,h=h||Qt;const R=d.length,H=h.length,k=Math.min(R,H);let U;for(U=0;UH?Be(d,S,E,!0,!1,k):V(h,g,w,S,E,N,O,T,k)},yt=(d,h,g,w,S,E,N,O,T)=>{let R=0;const H=h.length;let k=d.length-1,U=H-1;for(;R<=k&&R<=U;){const q=d[R],Z=h[R]=T?xt(h[R]):st(h[R]);if(Ft(q,Z))_(q,Z,g,null,S,E,N,O,T);else break;R++}for(;R<=k&&R<=U;){const q=d[k],Z=h[U]=T?xt(h[U]):st(h[U]);if(Ft(q,Z))_(q,Z,g,null,S,E,N,O,T);else break;k--,U--}if(R>k){if(R<=U){const q=U+1,Z=qU)for(;R<=k;)Te(d[R],S,E,!0),R++;else{const q=R,Z=R,ae=new Map;for(R=Z;R<=U;R++){const Me=h[R]=T?xt(h[R]):st(h[R]);Me.key!=null&&ae.set(Me.key,R)}let re,Ae=0;const Oe=U-Z+1;let Xe=!1,Qe=0;const dn=new Array(Oe);for(R=0;R=Oe){Te(Me,S,E,!0);continue}let Ye;if(Me.key!=null)Ye=ae.get(Me.key);else for(re=Z;re<=U;re++)if(dn[re-Z]===0&&Ft(Me,h[re])){Ye=re;break}Ye===void 0?Te(Me,S,E,!0):(dn[Ye-Z]=R+1,Ye>=Qe?Qe=Ye:Xe=!0,_(Me,h[Ye],g,null,S,E,N,O,T),Ae++)}const so=Xe?lu(dn):Qt;for(re=so.length-1,R=Oe-1;R>=0;R--){const Me=Z+R,Ye=h[Me],ro=Me+1{const{el:E,type:N,transition:O,children:T,shapeFlag:R}=d;if(R&6){Ge(d.component.subTree,h,g,w);return}if(R&128){d.suspense.move(h,g,w);return}if(R&64){N.move(d,h,g,B);return}if(N===Ue){s(E,h,g);for(let k=0;kO.enter(E),S);else{const{leave:k,delayLeave:U,afterLeave:q}=O,Z=()=>{d.ctx.isUnmounted?r(E):s(E,h,g)},ae=()=>{k(E,()=>{Z(),q&&q()})};U?U(E,Z,ae):ae()}else s(E,h,g)},Te=(d,h,g,w=!1,S=!1)=>{const{type:E,props:N,ref:O,children:T,dynamicChildren:R,shapeFlag:H,patchFlag:k,dirs:U,cacheIndex:q}=d;if(k===-2&&(S=!1),O!=null&&(pt(),vn(O,null,g,d,!0),mt()),q!=null&&(h.renderCache[q]=void 0),H&256){h.ctx.deactivate(d);return}const Z=H&1&&U,ae=!En(d);let re;if(ae&&(re=N&&N.onVnodeBeforeUnmount)&&Ze(re,h,d),H&6)Jn(d.component,g,w);else{if(H&128){d.suspense.unmount(g,w);return}Z&&Lt(d,null,h,"beforeUnmount"),H&64?d.type.remove(d,h,g,B,w):R&&!R.hasOnce&&(E!==Ue||k>0&&k&64)?Be(R,h,g,!1,!0):(E===Ue&&k&384||!S&&H&16)&&Be(T,h,g),w&&Kt(d)}(ae&&(re=N&&N.onVnodeUnmounted)||Z)&&ke(()=>{re&&Ze(re,h,d),Z&&Lt(d,null,h,"unmounted")},g)},Kt=d=>{const{type:h,el:g,anchor:w,transition:S}=d;if(h===Ue){Wt(g,w);return}if(h===Qs){L(d);return}const E=()=>{r(g),S&&!S.persisted&&S.afterLeave&&S.afterLeave()};if(d.shapeFlag&1&&S&&!S.persisted){const{leave:N,delayLeave:O}=S,T=()=>N(g,E);O?O(d.el,E,T):T()}else E()},Wt=(d,h)=>{let g;for(;d!==h;)g=p(d),r(d),d=g;r(h)},Jn=(d,h,g)=>{const{bum:w,scope:S,job:E,subTree:N,um:O,m:T,a:R,parent:H,slots:{__:k}}=d;bo(T),bo(R),w&&es(w),H&&$(k)&&k.forEach(U=>{H.renderCache[U]=void 0}),S.stop(),E&&(E.flags|=8,Te(N,d,h,g)),O&&ke(O,h),ke(()=>{d.isUnmounted=!0},h),h&&h.pendingBranch&&!h.isUnmounted&&d.asyncDep&&!d.asyncResolved&&d.suspenseId===h.pendingId&&(h.deps--,h.deps===0&&h.resolve())},Be=(d,h,g,w=!1,S=!1,E=0)=>{for(let N=E;N{if(d.shapeFlag&6)return v(d.component.subTree);if(d.shapeFlag&128)return d.suspense.next();const h=p(d.anchor||d.el),g=h&&h[Pa];return g?p(g):h};let D=!1;const M=(d,h,g)=>{d==null?h._vnode&&Te(h._vnode,null,null,!0):_(h._vnode||null,d,h,null,null,null,g),h._vnode=d,D||(D=!0,ao(),el(),D=!1)},B={p:_,um:Te,m:Ge,r:Kt,mt:pe,mc:V,pc:te,pbc:W,n:v,o:e};return{render:M,hydrate:void 0,createApp:Xa(M)}}function Xs({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Nt({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function iu(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Al(e,t,n=!1){const s=e.children,r=t.children;if($(s)&&$(r))for(let o=0;o>1,e[n[l]]0&&(t[s]=n[o-1]),n[o]=s)}}for(o=n.length,i=n[o-1];o-- >0;)n[o]=i,i=t[i];return n}function Ol(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Ol(t)}function bo(e){if(e)for(let t=0;tLe(cu);function uu(e,t){return Jr(e,null,t)}function xn(e,t,n){return Jr(e,t,n)}function Jr(e,t,n=ce){const{immediate:s,deep:r,flush:o,once:i}=n,l=ge({},n),c=t&&s||!t&&o!=="post";let u;if(kn){if(o==="sync"){const m=au();u=m.__watcherHandles||(m.__watcherHandles=[])}else if(!c){const m=()=>{};return m.stop=rt,m.resume=rt,m.pause=rt,m}}const a=ye;l.call=(m,y,_)=>We(m,a,y,_);let f=!1;o==="post"?l.scheduler=m=>{ke(m,a&&a.suspense)}:o!=="sync"&&(f=!0,l.scheduler=(m,y)=>{y?m():Vr(m)}),l.augmentJob=m=>{t&&(m.flags|=4),f&&(m.flags|=2,a&&(m.id=a.uid,m.i=a))};const p=Ca(e,t,l);return kn&&(u?u.push(p):c&&p()),p}function fu(e,t,n){const s=this.proxy,r=de(e)?e.includes(".")?Pl(s,e):()=>s[e]:e.bind(s,s);let o;K(t)?o=t:(o=t.handler,n=t);const i=Kn(this),l=Jr(r,o.bind(s),n);return i(),l}function Pl(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;rt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ve(t)}Modifiers`]||e[`${Pt(t)}Modifiers`];function hu(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||ce;let r=n;const o=t.startsWith("update:"),i=o&&du(s,t.slice(7));i&&(i.trim&&(r=n.map(a=>de(a)?a.trim():a)),i.number&&(r=n.map(is)));let l,c=s[l=Vs(t)]||s[l=Vs(Ve(t))];!c&&o&&(c=s[l=Vs(Pt(t))]),c&&We(c,e,6,r);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,We(u,e,6,r)}}function Ll(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const o=e.emits;let i={},l=!1;if(!K(e)){const c=u=>{const a=Ll(u,t,!0);a&&(l=!0,ge(i,a))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!o&&!l?(oe(e)&&s.set(e,null),null):($(o)?o.forEach(c=>i[c]=null):ge(i,o),oe(e)&&s.set(e,i),i)}function Ps(e,t){return!e||!_s(t)?!1:(t=t.slice(2).replace(/Once$/,""),se(e,t[0].toLowerCase()+t.slice(1))||se(e,Pt(t))||se(e,t))}function _o(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[o],slots:i,attrs:l,emit:c,render:u,renderCache:a,props:f,data:p,setupState:m,ctx:y,inheritAttrs:_}=e,x=fs(e);let A,C;try{if(n.shapeFlag&4){const L=r||s,j=L;A=st(u.call(j,L,a,f,m,p,y)),C=l}else{const L=t;A=st(L.length>1?L(f,{attrs:l,slots:i,emit:c}):L(f,null)),C=t.props?l:pu(l)}}catch(L){Rn.length=0,Rs(L,e,1),A=me(Re)}let P=A;if(C&&_!==!1){const L=Object.keys(C),{shapeFlag:j}=P;L.length&&j&7&&(o&&L.some(Lr)&&(C=mu(C,o)),P=Ot(P,C,!1,!0))}return n.dirs&&(P=Ot(P,null,!1,!0),P.dirs=P.dirs?P.dirs.concat(n.dirs):n.dirs),n.transition&&Ht(P,n.transition),A=P,fs(x),A}const pu=e=>{let t;for(const n in e)(n==="class"||n==="style"||_s(n))&&((t||(t={}))[n]=e[n]);return t},mu=(e,t)=>{const n={};for(const s in e)(!Lr(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function gu(e,t,n){const{props:s,children:r,component:o}=e,{props:i,children:l,patchFlag:c}=t,u=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?wo(s,i,u):!!i;if(c&8){const a=t.dynamicProps;for(let f=0;fe.__isSuspense;function bu(e,t){t&&t.pendingBranch?$(e)?t.effects.push(...e):t.effects.push(e):Oa(e)}const Ue=Symbol.for("v-fgt"),Ls=Symbol.for("v-txt"),Re=Symbol.for("v-cmt"),Qs=Symbol.for("v-stc"),Rn=[];let je=null;function qe(e=!1){Rn.push(je=e?null:[])}function _u(){Rn.pop(),je=Rn[Rn.length-1]||null}let In=1;function vo(e,t=!1){In+=e,e<0&&je&&t&&(je.hasOnce=!0)}function Il(e){return e.dynamicChildren=In>0?je||Qt:null,_u(),In>0&&je&&je.push(e),e}function Mn(e,t,n,s,r,o){return Il(Fe(e,t,n,s,r,o,!0))}function tn(e,t,n,s,r){return Il(me(e,t,n,s,r,!0))}function ps(e){return e?e.__v_isVNode===!0:!1}function Ft(e,t){return e.type===t.type&&e.key===t.key}const Ml=({key:e})=>e??null,ts=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?de(e)||fe(e)||K(e)?{i:Ce,r:e,k:t,f:!!n}:e:null);function Fe(e,t=null,n=null,s=0,r=null,o=e===Ue?0:1,i=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Ml(t),ref:t&&ts(t),scopeId:nl,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Ce};return l?(Gr(c,n),o&128&&e.normalize(c)):n&&(c.shapeFlag|=de(n)?8:16),In>0&&!i&&je&&(c.patchFlag>0||o&6)&&c.patchFlag!==32&&je.push(c),c}const me=wu;function wu(e,t=null,n=null,s=0,r=null,o=!1){if((!e||e===pl)&&(e=Re),ps(e)){const l=Ot(e,t,!0);return n&&Gr(l,n),In>0&&!o&&je&&(l.shapeFlag&6?je[je.indexOf(e)]=l:je.push(l)),l.patchFlag=-2,l}if(Iu(e)&&(e=e.__vccOpts),t){t=vu(t);let{class:l,style:c}=t;l&&!de(l)&&(t.class=an(l)),oe(c)&&(Ur(c)&&!$(c)&&(c=ge({},c)),t.style=Ss(c))}const i=de(e)?1:Nl(e)?128:sl(e)?64:oe(e)?4:K(e)?2:0;return Fe(e,t,n,s,r,i,o,!0)}function vu(e){return e?Ur(e)||El(e)?ge({},e):e:null}function Ot(e,t,n=!1,s=!1){const{props:r,ref:o,patchFlag:i,children:l,transition:c}=e,u=t?xu(r||{},t):r,a={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&Ml(u),ref:t&&t.ref?n&&o?$(o)?o.concat(ts(t)):[o,ts(t)]:ts(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ue?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ot(e.ssContent),ssFallback:e.ssFallback&&Ot(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&s&&Ht(a,c.clone(a)),a}function Eu(e=" ",t=0){return me(Ls,null,e,t)}function Su(e="",t=!1){return t?(qe(),tn(Re,null,e)):me(Re,null,e)}function st(e){return e==null||typeof e=="boolean"?me(Re):$(e)?me(Ue,null,e.slice()):ps(e)?xt(e):me(Ls,null,String(e))}function xt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ot(e)}function Gr(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if($(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),Gr(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!El(t)?t._ctx=Ce:r===3&&Ce&&(Ce.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else K(t)?(t={default:t,_ctx:Ce},n=32):(t=String(t),s&64?(n=16,t=[Eu(t)]):n=8);e.children=t,e.shapeFlag|=n}function xu(...e){const t={};for(let n=0;nye||Ce;let ms,gr;{const e=Es(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),o=>{r.length>1?r.forEach(i=>i(o)):r[0](o)}};ms=t("__VUE_INSTANCE_SETTERS__",n=>ye=n),gr=t("__VUE_SSR_SETTERS__",n=>kn=n)}const Kn=e=>{const t=ye;return ms(e),e.scope.on(),()=>{e.scope.off(),ms(t)}},Eo=()=>{ye&&ye.scope.off(),ms(null)};function Fl(e){return e.vnode.shapeFlag&4}let kn=!1;function Au(e,t=!1,n=!1){t&&gr(t);const{props:s,children:r}=e.vnode,o=Fl(e);Ya(e,s,o,t),nu(e,r,n||t);const i=o?Ou(e,t):void 0;return t&&gr(!1),i}function Ou(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Va);const{setup:s}=n;if(s){pt();const r=e.setupContext=s.length>1?Lu(e):null,o=Kn(e),i=Vn(s,e,0,[e.props,r]),l=xi(i);if(mt(),o(),(l||e.sp)&&!En(e)&&al(e),l){if(i.then(Eo,Eo),t)return i.then(c=>{So(e,c)}).catch(c=>{Rs(c,e,0)});e.asyncDep=i}else So(e,i)}else Dl(e)}function So(e,t,n){K(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:oe(t)&&(e.setupState=Xi(t)),Dl(e)}function Dl(e,t,n){const s=e.type;e.render||(e.render=s.render||rt);{const r=Kn(e);pt();try{qa(e)}finally{mt(),r()}}}const Pu={get(e,t){return we(e,"get",""),e[t]}};function Lu(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Pu),slots:e.slots,emit:e.emit,expose:t}}function Ns(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Xi(Hr(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Sn)return Sn[n](e)},has(t,n){return n in t||n in Sn}})):e.proxy}function Nu(e,t=!0){return K(e)?e.displayName||e.name:e.name||t&&e.__name}function Iu(e){return K(e)&&"__vccOpts"in e}const De=(e,t)=>xa(e,t,kn);function nn(e,t,n){const s=arguments.length;return s===2?oe(t)&&!$(t)?ps(t)?me(e,null,[t]):me(e,t):me(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&ps(n)&&(n=[n]),me(e,t,n))}const Mu="3.5.17";/** +* @vue/runtime-dom v3.5.17 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let yr;const xo=typeof window<"u"&&window.trustedTypes;if(xo)try{yr=xo.createPolicy("vue",{createHTML:e=>e})}catch{}const jl=yr?e=>yr.createHTML(e):e=>e,ku="http://www.w3.org/2000/svg",Fu="http://www.w3.org/1998/Math/MathML",at=typeof document<"u"?document:null,Ro=at&&at.createElement("template"),Du={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?at.createElementNS(ku,e):t==="mathml"?at.createElementNS(Fu,e):n?at.createElement(e,{is:n}):at.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>at.createTextNode(e),createComment:e=>at.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>at.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,o){const i=n?n.previousSibling:t.lastChild;if(r&&(r===o||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===o||!(r=r.nextSibling)););else{Ro.innerHTML=jl(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const l=Ro.content;if(s==="svg"||s==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},bt="transition",pn="animation",sn=Symbol("_vtc"),Bl={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},$l=ge({},ol,Bl),ju=e=>(e.displayName="Transition",e.props=$l,e),Bu=ju((e,{slots:t})=>nn(Na,Ul(e),t)),It=(e,t=[])=>{$(e)?e.forEach(n=>n(...t)):e&&e(...t)},Co=e=>e?$(e)?e.some(t=>t.length>1):e.length>1:!1;function Ul(e){const t={};for(const F in e)F in Bl||(t[F]=e[F]);if(e.css===!1)return t;const{name:n="v",type:s,duration:r,enterFromClass:o=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=o,appearActiveClass:u=i,appearToClass:a=l,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:m=`${n}-leave-to`}=e,y=$u(r),_=y&&y[0],x=y&&y[1],{onBeforeEnter:A,onEnter:C,onEnterCancelled:P,onLeave:L,onLeaveCancelled:j,onBeforeAppear:X=A,onAppear:z=C,onAppearCancelled:V=P}=t,I=(F,Y,pe,Ee)=>{F._enterCancelled=Ee,wt(F,Y?a:l),wt(F,Y?u:i),pe&&pe()},W=(F,Y)=>{F._isLeaving=!1,wt(F,f),wt(F,m),wt(F,p),Y&&Y()},ee=F=>(Y,pe)=>{const Ee=F?z:C,ie=()=>I(Y,F,pe);It(Ee,[Y,ie]),To(()=>{wt(Y,F?c:o),tt(Y,F?a:l),Co(Ee)||Ao(Y,s,_,ie)})};return ge(t,{onBeforeEnter(F){It(A,[F]),tt(F,o),tt(F,i)},onBeforeAppear(F){It(X,[F]),tt(F,c),tt(F,u)},onEnter:ee(!1),onAppear:ee(!0),onLeave(F,Y){F._isLeaving=!0;const pe=()=>W(F,Y);tt(F,f),F._enterCancelled?(tt(F,p),br()):(br(),tt(F,p)),To(()=>{F._isLeaving&&(wt(F,f),tt(F,m),Co(L)||Ao(F,s,x,pe))}),It(L,[F,pe])},onEnterCancelled(F){I(F,!1,void 0,!0),It(P,[F])},onAppearCancelled(F){I(F,!0,void 0,!0),It(V,[F])},onLeaveCancelled(F){W(F),It(j,[F])}})}function $u(e){if(e==null)return null;if(oe(e))return[Ys(e.enter),Ys(e.leave)];{const t=Ys(e);return[t,t]}}function Ys(e){return Uc(e)}function tt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[sn]||(e[sn]=new Set)).add(t)}function wt(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[sn];n&&(n.delete(t),n.size||(e[sn]=void 0))}function To(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Uu=0;function Ao(e,t,n,s){const r=e._endId=++Uu,o=()=>{r===e._endId&&s()};if(n!=null)return setTimeout(o,n);const{type:i,timeout:l,propCount:c}=Hl(e,t);if(!i)return s();const u=i+"end";let a=0;const f=()=>{e.removeEventListener(u,p),o()},p=m=>{m.target===e&&++a>=c&&f()};setTimeout(()=>{a(n[y]||"").split(", "),r=s(`${bt}Delay`),o=s(`${bt}Duration`),i=Oo(r,o),l=s(`${pn}Delay`),c=s(`${pn}Duration`),u=Oo(l,c);let a=null,f=0,p=0;t===bt?i>0&&(a=bt,f=i,p=o.length):t===pn?u>0&&(a=pn,f=u,p=c.length):(f=Math.max(i,u),a=f>0?i>u?bt:pn:null,p=a?a===bt?o.length:c.length:0);const m=a===bt&&/\b(transform|all)(,|$)/.test(s(`${bt}Property`).toString());return{type:a,timeout:f,propCount:p,hasTransform:m}}function Oo(e,t){for(;e.lengthPo(n)+Po(e[s])))}function Po(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function br(){return document.body.offsetHeight}function Hu(e,t,n){const s=e[sn];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Lo=Symbol("_vod"),Vu=Symbol("_vsh"),qu=Symbol(""),Ku=/(^|;)\s*display\s*:/;function Wu(e,t,n){const s=e.style,r=de(n);let o=!1;if(n&&!r){if(t)if(de(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&ns(s,l,"")}else for(const i in t)n[i]==null&&ns(s,i,"");for(const i in n)i==="display"&&(o=!0),ns(s,i,n[i])}else if(r){if(t!==n){const i=s[qu];i&&(n+=";"+i),s.cssText=n,o=Ku.test(n)}}else t&&e.removeAttribute("style");Lo in e&&(e[Lo]=o?s.display:"",e[Vu]&&(s.display="none"))}const No=/\s*!important$/;function ns(e,t,n){if($(n))n.forEach(s=>ns(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=zu(e,t);No.test(n)?e.setProperty(Pt(s),n.replace(No,""),"important"):e[s]=n}}const Io=["Webkit","Moz","ms"],Zs={};function zu(e,t){const n=Zs[t];if(n)return n;let s=Ve(t);if(s!=="filter"&&s in e)return Zs[t]=s;s=vs(s);for(let r=0;rer||(Qu.then(()=>er=0),er=Date.now());function Zu(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;We(ef(s,n.value),t,5,[s])};return n.value=e,n.attached=Yu(),n}function ef(e,t){if($(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>r=>!r._stopped&&s&&s(r))}else return t}const Bo=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,tf=(e,t,n,s,r,o)=>{const i=r==="svg";t==="class"?Hu(e,s,i):t==="style"?Wu(e,n,s):_s(t)?Lr(t)||Gu(e,t,n,s,o):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):nf(e,t,s,i))?(Fo(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&ko(e,t,s,i,o,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!de(s))?Fo(e,Ve(t),s,o,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),ko(e,t,s,i))};function nf(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Bo(t)&&K(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Bo(t)&&de(n)?!1:t in e}const Vl=new WeakMap,ql=new WeakMap,gs=Symbol("_moveCb"),$o=Symbol("_enterCb"),sf=e=>(delete e.props.mode,e),rf=sf({name:"TransitionGroup",props:ge({},$l,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=kl(),s=rl();let r,o;return fl(()=>{if(!r.length)return;const i=e.moveClass||`${e.name||"v"}-move`;if(!uf(r[0].el,n.vnode.el,i)){r=[];return}r.forEach(lf),r.forEach(cf);const l=r.filter(af);br(),l.forEach(c=>{const u=c.el,a=u.style;tt(u,i),a.transform=a.webkitTransform=a.transitionDuration="";const f=u[gs]=p=>{p&&p.target!==u||(!p||/transform$/.test(p.propertyName))&&(u.removeEventListener("transitionend",f),u[gs]=null,wt(u,i))};u.addEventListener("transitionend",f)}),r=[]}),()=>{const i=Q(e),l=Ul(i);let c=i.tag||Ue;if(r=[],o)for(let u=0;u{l.split(/\s+/).forEach(c=>c&&s.classList.remove(c))}),n.split(/\s+/).forEach(l=>l&&s.classList.add(l)),s.style.display="none";const o=t.nodeType===1?t:t.parentNode;o.appendChild(s);const{hasTransform:i}=Hl(s);return o.removeChild(s),i}const rn=e=>{const t=e.props["onUpdate:modelValue"]||!1;return $(t)?n=>es(t,n):t};function ff(e){e.target.composing=!0}function Uo(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const ht=Symbol("_assign"),jp={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e[ht]=rn(r);const o=s||r.props&&r.props.type==="number";Ct(e,t?"change":"input",i=>{if(i.target.composing)return;let l=e.value;n&&(l=l.trim()),o&&(l=is(l)),e[ht](l)}),n&&Ct(e,"change",()=>{e.value=e.value.trim()}),t||(Ct(e,"compositionstart",ff),Ct(e,"compositionend",Uo),Ct(e,"change",Uo))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:o}},i){if(e[ht]=rn(i),e.composing)return;const l=(o||e.type==="number")&&!/^0\d/.test(e.value)?is(e.value):e.value,c=t??"";l!==c&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===c)||(e.value=c))}},Bp={deep:!0,created(e,t,n){e[ht]=rn(n),Ct(e,"change",()=>{const s=e._modelValue,r=Fn(e),o=e.checked,i=e[ht];if($(s)){const l=Mr(s,r),c=l!==-1;if(o&&!c)i(s.concat(r));else if(!o&&c){const u=[...s];u.splice(l,1),i(u)}}else if(cn(s)){const l=new Set(s);o?l.add(r):l.delete(r),i(l)}else i(Kl(e,o))})},mounted:Ho,beforeUpdate(e,t,n){e[ht]=rn(n),Ho(e,t,n)}};function Ho(e,{value:t,oldValue:n},s){e._modelValue=t;let r;if($(t))r=Mr(t,s.props.value)>-1;else if(cn(t))r=t.has(s.props.value);else{if(t===n)return;r=Un(t,Kl(e,!0))}e.checked!==r&&(e.checked=r)}const $p={deep:!0,created(e,{value:t,modifiers:{number:n}},s){const r=cn(t);Ct(e,"change",()=>{const o=Array.prototype.filter.call(e.options,i=>i.selected).map(i=>n?is(Fn(i)):Fn(i));e[ht](e.multiple?r?new Set(o):o:o[0]),e._assigning=!0,Cs(()=>{e._assigning=!1})}),e[ht]=rn(s)},mounted(e,{value:t}){Vo(e,t)},beforeUpdate(e,t,n){e[ht]=rn(n)},updated(e,{value:t}){e._assigning||Vo(e,t)}};function Vo(e,t){const n=e.multiple,s=$(t);if(!(n&&!s&&!cn(t))){for(let r=0,o=e.options.length;rString(u)===String(l)):i.selected=Mr(t,l)>-1}else i.selected=t.has(l);else if(Un(Fn(i),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Fn(e){return"_value"in e?e._value:e.value}function Kl(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const df=["ctrl","shift","alt","meta"],hf={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>df.some(n=>e[`${n}Key`]&&!t.includes(n))},Up=(e,t)=>{const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(r,...o)=>{for(let i=0;i{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=r=>{if(!("key"in r))return;const o=Pt(r.key);if(t.some(i=>i===o||pf[i]===o))return e(r)})},mf=ge({patchProp:tf},Du);let qo;function gf(){return qo||(qo=ru(mf))}const yf=(...e)=>{const t=gf().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=_f(s);if(!r)return;const o=t._component;!K(o)&&!o.render&&!o.template&&(o.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const i=n(r,!1,bf(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),i},t};function bf(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function _f(e){return de(e)?document.querySelector(e):e}/*! + * pinia v2.3.1 + * (c) 2025 Eduardo San Martin Morote + * @license MIT + */let Wl;const Is=e=>Wl=e,zl=Symbol();function _r(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var Cn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(Cn||(Cn={}));function wf(){const e=Li(!0),t=e.run(()=>en({}));let n=[],s=[];const r=Hr({install(o){Is(r),r._a=o,o.provide(zl,r),o.config.globalProperties.$pinia=r,s.forEach(i=>n.push(i)),s=[]},use(o){return this._a?n.push(o):s.push(o),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return r}const Jl=()=>{};function Ko(e,t,n,s=Jl){e.push(t);const r=()=>{const o=e.indexOf(t);o>-1&&(e.splice(o,1),s())};return!n&&Ni()&&Xc(r),r}function Jt(e,...t){e.slice().forEach(n=>{n(...t)})}const vf=e=>e(),Wo=Symbol(),tr=Symbol();function wr(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,s)=>e.set(s,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const s=t[n],r=e[n];_r(r)&&_r(s)&&e.hasOwnProperty(n)&&!fe(s)&&!dt(s)?e[n]=wr(r,s):e[n]=s}return e}const Ef=Symbol();function Sf(e){return!_r(e)||!e.hasOwnProperty(Ef)}const{assign:vt}=Object;function xf(e){return!!(fe(e)&&e.effect)}function Rf(e,t,n,s){const{state:r,actions:o,getters:i}=t,l=n.state.value[e];let c;function u(){l||(n.state.value[e]=r?r():{});const a=_a(n.state.value[e]);return vt(a,o,Object.keys(i||{}).reduce((f,p)=>(f[p]=Hr(De(()=>{Is(n);const m=n._s.get(e);return i[p].call(m,m)})),f),{}))}return c=Gl(e,u,t,n,s,!0),c}function Gl(e,t,n={},s,r,o){let i;const l=vt({actions:{}},n),c={deep:!0};let u,a,f=[],p=[],m;const y=s.state.value[e];!o&&!y&&(s.state.value[e]={}),en({});let _;function x(V){let I;u=a=!1,typeof V=="function"?(V(s.state.value[e]),I={type:Cn.patchFunction,storeId:e,events:m}):(wr(s.state.value[e],V),I={type:Cn.patchObject,payload:V,storeId:e,events:m});const W=_=Symbol();Cs().then(()=>{_===W&&(u=!0)}),a=!0,Jt(f,I,s.state.value[e])}const A=o?function(){const{state:I}=n,W=I?I():{};this.$patch(ee=>{vt(ee,W)})}:Jl;function C(){i.stop(),f=[],p=[],s._s.delete(e)}const P=(V,I="")=>{if(Wo in V)return V[tr]=I,V;const W=function(){Is(s);const ee=Array.from(arguments),F=[],Y=[];function pe(G){F.push(G)}function Ee(G){Y.push(G)}Jt(p,{args:ee,name:W[tr],store:j,after:pe,onError:Ee});let ie;try{ie=V.apply(this&&this.$id===e?this:j,ee)}catch(G){throw Jt(Y,G),G}return ie instanceof Promise?ie.then(G=>(Jt(F,G),G)).catch(G=>(Jt(Y,G),Promise.reject(G))):(Jt(F,ie),ie)};return W[Wo]=!0,W[tr]=I,W},L={_p:s,$id:e,$onAction:Ko.bind(null,p),$patch:x,$reset:A,$subscribe(V,I={}){const W=Ko(f,V,I.detached,()=>ee()),ee=i.run(()=>xn(()=>s.state.value[e],F=>{(I.flush==="sync"?a:u)&&V({storeId:e,type:Cn.direct,events:m},F)},vt({},c,I)));return W},$dispose:C},j=Hn(L);s._s.set(e,j);const z=(s._a&&s._a.runWithContext||vf)(()=>s._e.run(()=>(i=Li()).run(()=>t({action:P}))));for(const V in z){const I=z[V];if(fe(I)&&!xf(I)||dt(I))o||(y&&Sf(I)&&(fe(I)?I.value=y[V]:wr(I,y[V])),s.state.value[e][V]=I);else if(typeof I=="function"){const W=P(I,V);z[V]=W,l.actions[V]=I}}return vt(j,z),vt(Q(j),z),Object.defineProperty(j,"$state",{get:()=>s.state.value[e],set:V=>{x(I=>{vt(I,V)})}}),s._p.forEach(V=>{vt(j,i.run(()=>V({store:j,app:s._a,pinia:s,options:l})))}),y&&o&&n.hydrate&&n.hydrate(j.$state,y),u=!0,a=!0,j}/*! #__NO_SIDE_EFFECTS__ */function Cf(e,t,n){let s,r;const o=typeof t=="function";typeof e=="string"?(s=e,r=o?n:t):(r=e,s=e.id);function i(l,c){const u=Qa();return l=l||(u?Le(zl,null):null),l&&Is(l),l=Wl,l._s.has(s)||(o?Gl(s,t,r,l):Rf(s,r,l)),l._s.get(s)}return i.$id=s,i}function Tf(e){{const t=Q(e),n={};for(const s in t){const r=t[s];r.effect?n[s]=De({get:()=>e[s],set(o){e[s]=o}}):(fe(r)||dt(r))&&(n[s]=Ea(e,s))}return n}}/*! + * vue-router v4.5.1 + * (c) 2025 Eduardo San Martin Morote + * @license MIT + */const Xt=typeof document<"u";function Xl(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function Af(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&Xl(e.default)}const ne=Object.assign;function nr(e,t){const n={};for(const s in t){const r=t[s];n[s]=ze(r)?r.map(e):e(r)}return n}const Tn=()=>{},ze=Array.isArray,Ql=/#/g,Of=/&/g,Pf=/\//g,Lf=/=/g,Nf=/\?/g,Yl=/\+/g,If=/%5B/g,Mf=/%5D/g,Zl=/%5E/g,kf=/%60/g,ec=/%7B/g,Ff=/%7C/g,tc=/%7D/g,Df=/%20/g;function Xr(e){return encodeURI(""+e).replace(Ff,"|").replace(If,"[").replace(Mf,"]")}function jf(e){return Xr(e).replace(ec,"{").replace(tc,"}").replace(Zl,"^")}function vr(e){return Xr(e).replace(Yl,"%2B").replace(Df,"+").replace(Ql,"%23").replace(Of,"%26").replace(kf,"`").replace(ec,"{").replace(tc,"}").replace(Zl,"^")}function Bf(e){return vr(e).replace(Lf,"%3D")}function $f(e){return Xr(e).replace(Ql,"%23").replace(Nf,"%3F")}function Uf(e){return e==null?"":$f(e).replace(Pf,"%2F")}function Dn(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const Hf=/\/$/,Vf=e=>e.replace(Hf,"");function sr(e,t,n="/"){let s,r={},o="",i="";const l=t.indexOf("#");let c=t.indexOf("?");return l=0&&(c=-1),c>-1&&(s=t.slice(0,c),o=t.slice(c+1,l>-1?l:t.length),r=e(o)),l>-1&&(s=s||t.slice(0,l),i=t.slice(l,t.length)),s=zf(s??t,n),{fullPath:s+(o&&"?")+o+i,path:s,query:r,hash:Dn(i)}}function qf(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function zo(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function Kf(e,t,n){const s=t.matched.length-1,r=n.matched.length-1;return s>-1&&s===r&&on(t.matched[s],n.matched[r])&&nc(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function on(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function nc(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!Wf(e[n],t[n]))return!1;return!0}function Wf(e,t){return ze(e)?Jo(e,t):ze(t)?Jo(t,e):e===t}function Jo(e,t){return ze(t)?e.length===t.length&&e.every((n,s)=>n===t[s]):e.length===1&&e[0]===t}function zf(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),s=e.split("/"),r=s[s.length-1];(r===".."||r===".")&&s.push("");let o=n.length-1,i,l;for(i=0;i1&&o--;else break;return n.slice(0,o).join("/")+"/"+s.slice(i).join("/")}const _t={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var jn;(function(e){e.pop="pop",e.push="push"})(jn||(jn={}));var An;(function(e){e.back="back",e.forward="forward",e.unknown=""})(An||(An={}));function Jf(e){if(!e)if(Xt){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),Vf(e)}const Gf=/^[^#]+#/;function Xf(e,t){return e.replace(Gf,"#")+t}function Qf(e,t){const n=document.documentElement.getBoundingClientRect(),s=e.getBoundingClientRect();return{behavior:t.behavior,left:s.left-n.left-(t.left||0),top:s.top-n.top-(t.top||0)}}const Ms=()=>({left:window.scrollX,top:window.scrollY});function Yf(e){let t;if("el"in e){const n=e.el,s=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=Qf(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Go(e,t){return(history.state?history.state.position-t:-1)+e}const Er=new Map;function Zf(e,t){Er.set(e,t)}function ed(e){const t=Er.get(e);return Er.delete(e),t}let td=()=>location.protocol+"//"+location.host;function sc(e,t){const{pathname:n,search:s,hash:r}=t,o=e.indexOf("#");if(o>-1){let l=r.includes(e.slice(o))?e.slice(o).length:1,c=r.slice(l);return c[0]!=="/"&&(c="/"+c),zo(c,"")}return zo(n,e)+s+r}function nd(e,t,n,s){let r=[],o=[],i=null;const l=({state:p})=>{const m=sc(e,location),y=n.value,_=t.value;let x=0;if(p){if(n.value=m,t.value=p,i&&i===y){i=null;return}x=_?p.position-_.position:0}else s(m);r.forEach(A=>{A(n.value,y,{delta:x,type:jn.pop,direction:x?x>0?An.forward:An.back:An.unknown})})};function c(){i=n.value}function u(p){r.push(p);const m=()=>{const y=r.indexOf(p);y>-1&&r.splice(y,1)};return o.push(m),m}function a(){const{history:p}=window;p.state&&p.replaceState(ne({},p.state,{scroll:Ms()}),"")}function f(){for(const p of o)p();o=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",a)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",a,{passive:!0}),{pauseListeners:c,listen:u,destroy:f}}function Xo(e,t,n,s=!1,r=!1){return{back:e,current:t,forward:n,replaced:s,position:window.history.length,scroll:r?Ms():null}}function sd(e){const{history:t,location:n}=window,s={value:sc(e,n)},r={value:t.state};r.value||o(s.value,{back:null,current:s.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function o(c,u,a){const f=e.indexOf("#"),p=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+c:td()+e+c;try{t[a?"replaceState":"pushState"](u,"",p),r.value=u}catch(m){console.error(m),n[a?"replace":"assign"](p)}}function i(c,u){const a=ne({},t.state,Xo(r.value.back,c,r.value.forward,!0),u,{position:r.value.position});o(c,a,!0),s.value=c}function l(c,u){const a=ne({},r.value,t.state,{forward:c,scroll:Ms()});o(a.current,a,!0);const f=ne({},Xo(s.value,c,null),{position:a.position+1},u);o(c,f,!1),s.value=c}return{location:s,state:r,push:l,replace:i}}function rd(e){e=Jf(e);const t=sd(e),n=nd(e,t.state,t.location,t.replace);function s(o,i=!0){i||n.pauseListeners(),history.go(o)}const r=ne({location:"",base:e,go:s,createHref:Xf.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function od(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),rd(e)}function id(e){return typeof e=="string"||e&&typeof e=="object"}function rc(e){return typeof e=="string"||typeof e=="symbol"}const oc=Symbol("");var Qo;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(Qo||(Qo={}));function ln(e,t){return ne(new Error,{type:e,[oc]:!0},t)}function ct(e,t){return e instanceof Error&&oc in e&&(t==null||!!(e.type&t))}const Yo="[^/]+?",ld={sensitive:!1,strict:!1,start:!0,end:!0},cd=/[.+*?^${}()[\]/\\]/g;function ad(e,t){const n=ne({},ld,t),s=[];let r=n.start?"^":"";const o=[];for(const u of e){const a=u.length?[]:[90];n.strict&&!u.length&&(r+="/");for(let f=0;ft.length?t.length===1&&t[0]===80?1:-1:0}function ic(e,t){let n=0;const s=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const fd={type:0,value:""},dd=/[a-zA-Z0-9_]/;function hd(e){if(!e)return[[]];if(e==="/")return[[fd]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(m){throw new Error(`ERR (${n})/"${u}": ${m}`)}let n=0,s=n;const r=[];let o;function i(){o&&r.push(o),o=[]}let l=0,c,u="",a="";function f(){u&&(n===0?o.push({type:0,value:u}):n===1||n===2||n===3?(o.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:u,regexp:a,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),u="")}function p(){u+=c}for(;l{i(P)}:Tn}function i(f){if(rc(f)){const p=s.get(f);p&&(s.delete(f),n.splice(n.indexOf(p),1),p.children.forEach(i),p.alias.forEach(i))}else{const p=n.indexOf(f);p>-1&&(n.splice(p,1),f.record.name&&s.delete(f.record.name),f.children.forEach(i),f.alias.forEach(i))}}function l(){return n}function c(f){const p=bd(f,n);n.splice(p,0,f),f.record.name&&!ni(f)&&s.set(f.record.name,f)}function u(f,p){let m,y={},_,x;if("name"in f&&f.name){if(m=s.get(f.name),!m)throw ln(1,{location:f});x=m.record.name,y=ne(ei(p.params,m.keys.filter(P=>!P.optional).concat(m.parent?m.parent.keys.filter(P=>P.optional):[]).map(P=>P.name)),f.params&&ei(f.params,m.keys.map(P=>P.name))),_=m.stringify(y)}else if(f.path!=null)_=f.path,m=n.find(P=>P.re.test(_)),m&&(y=m.parse(_),x=m.record.name);else{if(m=p.name?s.get(p.name):n.find(P=>P.re.test(p.path)),!m)throw ln(1,{location:f,currentLocation:p});x=m.record.name,y=ne({},p.params,f.params),_=m.stringify(y)}const A=[];let C=m;for(;C;)A.unshift(C.record),C=C.parent;return{name:x,path:_,params:y,matched:A,meta:yd(A)}}e.forEach(f=>o(f));function a(){n.length=0,s.clear()}return{addRoute:o,resolve:u,removeRoute:i,clearRoutes:a,getRoutes:l,getRecordMatcher:r}}function ei(e,t){const n={};for(const s of t)s in e&&(n[s]=e[s]);return n}function ti(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:gd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function gd(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const s in e.components)t[s]=typeof n=="object"?n[s]:n;return t}function ni(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function yd(e){return e.reduce((t,n)=>ne(t,n.meta),{})}function si(e,t){const n={};for(const s in e)n[s]=s in t?t[s]:e[s];return n}function bd(e,t){let n=0,s=t.length;for(;n!==s;){const o=n+s>>1;ic(e,t[o])<0?s=o:n=o+1}const r=_d(e);return r&&(s=t.lastIndexOf(r,s-1)),s}function _d(e){let t=e;for(;t=t.parent;)if(lc(t)&&ic(e,t)===0)return t}function lc({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function wd(e){const t={};if(e===""||e==="?")return t;const s=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ro&&vr(o)):[s&&vr(s)]).forEach(o=>{o!==void 0&&(t+=(t.length?"&":"")+n,o!=null&&(t+="="+o))})}return t}function vd(e){const t={};for(const n in e){const s=e[n];s!==void 0&&(t[n]=ze(s)?s.map(r=>r==null?null:""+r):s==null?s:""+s)}return t}const Ed=Symbol(""),oi=Symbol(""),ks=Symbol(""),Qr=Symbol(""),Sr=Symbol("");function mn(){let e=[];function t(s){return e.push(s),()=>{const r=e.indexOf(s);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Rt(e,t,n,s,r,o=i=>i()){const i=s&&(s.enterCallbacks[r]=s.enterCallbacks[r]||[]);return()=>new Promise((l,c)=>{const u=p=>{p===!1?c(ln(4,{from:n,to:t})):p instanceof Error?c(p):id(p)?c(ln(2,{from:t,to:p})):(i&&s.enterCallbacks[r]===i&&typeof p=="function"&&i.push(p),l())},a=o(()=>e.call(s&&s.instances[r],t,n,u));let f=Promise.resolve(a);e.length<3&&(f=f.then(u)),f.catch(p=>c(p))})}function rr(e,t,n,s,r=o=>o()){const o=[];for(const i of e)for(const l in i.components){let c=i.components[l];if(!(t!=="beforeRouteEnter"&&!i.instances[l]))if(Xl(c)){const a=(c.__vccOpts||c)[t];a&&o.push(Rt(a,n,s,i,l,r))}else{let u=c();o.push(()=>u.then(a=>{if(!a)throw new Error(`Couldn't resolve component "${l}" at "${i.path}"`);const f=Af(a)?a.default:a;i.mods[l]=a,i.components[l]=f;const m=(f.__vccOpts||f)[t];return m&&Rt(m,n,s,i,l,r)()}))}}return o}function ii(e){const t=Le(ks),n=Le(Qr),s=De(()=>{const c=Pe(e.to);return t.resolve(c)}),r=De(()=>{const{matched:c}=s.value,{length:u}=c,a=c[u-1],f=n.matched;if(!a||!f.length)return-1;const p=f.findIndex(on.bind(null,a));if(p>-1)return p;const m=li(c[u-2]);return u>1&&li(a)===m&&f[f.length-1].path!==m?f.findIndex(on.bind(null,c[u-2])):p}),o=De(()=>r.value>-1&&Td(n.params,s.value.params)),i=De(()=>r.value>-1&&r.value===n.matched.length-1&&nc(n.params,s.value.params));function l(c={}){if(Cd(c)){const u=t[Pe(e.replace)?"replace":"push"](Pe(e.to)).catch(Tn);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>u),u}return Promise.resolve()}return{route:s,href:De(()=>s.value.href),isActive:o,isExactActive:i,navigate:l}}function Sd(e){return e.length===1?e[0]:e}const xd=qn({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:ii,setup(e,{slots:t}){const n=Hn(ii(e)),{options:s}=Le(ks),r=De(()=>({[ci(e.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[ci(e.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const o=t.default&&Sd(t.default(n));return e.custom?o:nn("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},o)}}}),Rd=xd;function Cd(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Td(e,t){for(const n in t){const s=t[n],r=e[n];if(typeof s=="string"){if(s!==r)return!1}else if(!ze(r)||r.length!==s.length||s.some((o,i)=>o!==r[i]))return!1}return!0}function li(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const ci=(e,t,n)=>e??t??n,Ad=qn({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const s=Le(Sr),r=De(()=>e.route||s.value),o=Le(oi,0),i=De(()=>{let u=Pe(o);const{matched:a}=r.value;let f;for(;(f=a[u])&&!f.components;)u++;return u}),l=De(()=>r.value.matched[i.value]);$t(oi,De(()=>i.value+1)),$t(Ed,l),$t(Sr,r);const c=en();return xn(()=>[c.value,l.value,e.name],([u,a,f],[p,m,y])=>{a&&(a.instances[f]=u,m&&m!==a&&u&&u===p&&(a.leaveGuards.size||(a.leaveGuards=m.leaveGuards),a.updateGuards.size||(a.updateGuards=m.updateGuards))),u&&a&&(!m||!on(a,m)||!p)&&(a.enterCallbacks[f]||[]).forEach(_=>_(u))},{flush:"post"}),()=>{const u=r.value,a=e.name,f=l.value,p=f&&f.components[a];if(!p)return ai(n.default,{Component:p,route:u});const m=f.props[a],y=m?m===!0?u.params:typeof m=="function"?m(u):m:null,x=nn(p,ne({},y,t,{onVnodeUnmounted:A=>{A.component.isUnmounted&&(f.instances[a]=null)},ref:c}));return ai(n.default,{Component:x,route:u})||x}}});function ai(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const cc=Ad;function Od(e){const t=md(e.routes,e),n=e.parseQuery||wd,s=e.stringifyQuery||ri,r=e.history,o=mn(),i=mn(),l=mn(),c=ga(_t);let u=_t;Xt&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const a=nr.bind(null,v=>""+v),f=nr.bind(null,Uf),p=nr.bind(null,Dn);function m(v,D){let M,B;return rc(v)?(M=t.getRecordMatcher(v),B=D):B=v,t.addRoute(B,M)}function y(v){const D=t.getRecordMatcher(v);D&&t.removeRoute(D)}function _(){return t.getRoutes().map(v=>v.record)}function x(v){return!!t.getRecordMatcher(v)}function A(v,D){if(D=ne({},D||c.value),typeof v=="string"){const g=sr(n,v,D.path),w=t.resolve({path:g.path},D),S=r.createHref(g.fullPath);return ne(g,w,{params:p(w.params),hash:Dn(g.hash),redirectedFrom:void 0,href:S})}let M;if(v.path!=null)M=ne({},v,{path:sr(n,v.path,D.path).path});else{const g=ne({},v.params);for(const w in g)g[w]==null&&delete g[w];M=ne({},v,{params:f(g)}),D.params=f(D.params)}const B=t.resolve(M,D),le=v.hash||"";B.params=a(p(B.params));const d=qf(s,ne({},v,{hash:jf(le),path:B.path})),h=r.createHref(d);return ne({fullPath:d,hash:le,query:s===ri?vd(v.query):v.query||{}},B,{redirectedFrom:void 0,href:h})}function C(v){return typeof v=="string"?sr(n,v,c.value.path):ne({},v)}function P(v,D){if(u!==v)return ln(8,{from:D,to:v})}function L(v){return z(v)}function j(v){return L(ne(C(v),{replace:!0}))}function X(v){const D=v.matched[v.matched.length-1];if(D&&D.redirect){const{redirect:M}=D;let B=typeof M=="function"?M(v):M;return typeof B=="string"&&(B=B.includes("?")||B.includes("#")?B=C(B):{path:B},B.params={}),ne({query:v.query,hash:v.hash,params:B.path!=null?{}:v.params},B)}}function z(v,D){const M=u=A(v),B=c.value,le=v.state,d=v.force,h=v.replace===!0,g=X(M);if(g)return z(ne(C(g),{state:typeof g=="object"?ne({},le,g.state):le,force:d,replace:h}),D||M);const w=M;w.redirectedFrom=D;let S;return!d&&Kf(s,B,M)&&(S=ln(16,{to:w,from:B}),Ge(B,B,!0,!1)),(S?Promise.resolve(S):W(w,B)).catch(E=>ct(E)?ct(E,2)?E:yt(E):te(E,w,B)).then(E=>{if(E){if(ct(E,2))return z(ne({replace:h},C(E.to),{state:typeof E.to=="object"?ne({},le,E.to.state):le,force:d}),D||w)}else E=F(w,B,!0,h,le);return ee(w,B,E),E})}function V(v,D){const M=P(v,D);return M?Promise.reject(M):Promise.resolve()}function I(v){const D=Wt.values().next().value;return D&&typeof D.runWithContext=="function"?D.runWithContext(v):v()}function W(v,D){let M;const[B,le,d]=Pd(v,D);M=rr(B.reverse(),"beforeRouteLeave",v,D);for(const g of B)g.leaveGuards.forEach(w=>{M.push(Rt(w,v,D))});const h=V.bind(null,v,D);return M.push(h),Be(M).then(()=>{M=[];for(const g of o.list())M.push(Rt(g,v,D));return M.push(h),Be(M)}).then(()=>{M=rr(le,"beforeRouteUpdate",v,D);for(const g of le)g.updateGuards.forEach(w=>{M.push(Rt(w,v,D))});return M.push(h),Be(M)}).then(()=>{M=[];for(const g of d)if(g.beforeEnter)if(ze(g.beforeEnter))for(const w of g.beforeEnter)M.push(Rt(w,v,D));else M.push(Rt(g.beforeEnter,v,D));return M.push(h),Be(M)}).then(()=>(v.matched.forEach(g=>g.enterCallbacks={}),M=rr(d,"beforeRouteEnter",v,D,I),M.push(h),Be(M))).then(()=>{M=[];for(const g of i.list())M.push(Rt(g,v,D));return M.push(h),Be(M)}).catch(g=>ct(g,8)?g:Promise.reject(g))}function ee(v,D,M){l.list().forEach(B=>I(()=>B(v,D,M)))}function F(v,D,M,B,le){const d=P(v,D);if(d)return d;const h=D===_t,g=Xt?history.state:{};M&&(B||h?r.replace(v.fullPath,ne({scroll:h&&g&&g.scroll},le)):r.push(v.fullPath,le)),c.value=v,Ge(v,D,M,h),yt()}let Y;function pe(){Y||(Y=r.listen((v,D,M)=>{if(!Jn.listening)return;const B=A(v),le=X(B);if(le){z(ne(le,{replace:!0,force:!0}),B).catch(Tn);return}u=B;const d=c.value;Xt&&Zf(Go(d.fullPath,M.delta),Ms()),W(B,d).catch(h=>ct(h,12)?h:ct(h,2)?(z(ne(C(h.to),{force:!0}),B).then(g=>{ct(g,20)&&!M.delta&&M.type===jn.pop&&r.go(-1,!1)}).catch(Tn),Promise.reject()):(M.delta&&r.go(-M.delta,!1),te(h,B,d))).then(h=>{h=h||F(B,d,!1),h&&(M.delta&&!ct(h,8)?r.go(-M.delta,!1):M.type===jn.pop&&ct(h,20)&&r.go(-1,!1)),ee(B,d,h)}).catch(Tn)}))}let Ee=mn(),ie=mn(),G;function te(v,D,M){yt(v);const B=ie.list();return B.length?B.forEach(le=>le(v,D,M)):console.error(v),Promise.reject(v)}function it(){return G&&c.value!==_t?Promise.resolve():new Promise((v,D)=>{Ee.add([v,D])})}function yt(v){return G||(G=!v,pe(),Ee.list().forEach(([D,M])=>v?M(v):D()),Ee.reset()),v}function Ge(v,D,M,B){const{scrollBehavior:le}=e;if(!Xt||!le)return Promise.resolve();const d=!M&&ed(Go(v.fullPath,0))||(B||!M)&&history.state&&history.state.scroll||null;return Cs().then(()=>le(v,D,d)).then(h=>h&&Yf(h)).catch(h=>te(h,v,D))}const Te=v=>r.go(v);let Kt;const Wt=new Set,Jn={currentRoute:c,listening:!0,addRoute:m,removeRoute:y,clearRoutes:t.clearRoutes,hasRoute:x,getRoutes:_,resolve:A,options:e,push:L,replace:j,go:Te,back:()=>Te(-1),forward:()=>Te(1),beforeEach:o.add,beforeResolve:i.add,afterEach:l.add,onError:ie.add,isReady:it,install(v){const D=this;v.component("RouterLink",Rd),v.component("RouterView",cc),v.config.globalProperties.$router=D,Object.defineProperty(v.config.globalProperties,"$route",{enumerable:!0,get:()=>Pe(c)}),Xt&&!Kt&&c.value===_t&&(Kt=!0,L(r.location).catch(le=>{}));const M={};for(const le in _t)Object.defineProperty(M,le,{get:()=>c.value[le],enumerable:!0});v.provide(ks,D),v.provide(Qr,zi(M)),v.provide(Sr,c);const B=v.unmount;Wt.add(v),v.unmount=function(){Wt.delete(v),Wt.size<1&&(u=_t,Y&&Y(),Y=null,c.value=_t,Kt=!1,G=!1),B()}}};function Be(v){return v.reduce((D,M)=>D.then(()=>I(M)),Promise.resolve())}return Jn}function Pd(e,t){const n=[],s=[],r=[],o=Math.max(t.matched.length,e.matched.length);for(let i=0;ion(u,l))?s.push(l):n.push(l));const c=e.matched[i];c&&(t.matched.find(u=>on(u,c))||r.push(c))}return[n,s,r]}function Ld(){return Le(ks)}function Vp(e){return Le(Qr)}/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Nd=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */var Zn={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"};/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Id=({size:e,strokeWidth:t=2,absoluteStrokeWidth:n,color:s,iconNode:r,name:o,class:i,...l},{slots:c})=>nn("svg",{...Zn,width:e||Zn.width,height:e||Zn.height,stroke:s||Zn.stroke,"stroke-width":n?Number(t)*24/Number(e):t,class:["lucide",`lucide-${Nd(o??"icon")}`],...l},[...r.map(u=>nn(...u)),...c.default?[c.default()]:[]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const qt=(e,t)=>(n,{slots:s})=>nn(Id,{...n,iconNode:t,name:e},s);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Md=qt("CircleAlertIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const kd=qt("CircleCheckBigIcon",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Fd=qt("InfoIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Dd=qt("MoonIcon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const jd=qt("SunIcon",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Bd=qt("TriangleAlertIcon",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const $d=qt("XIcon",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),Ud=qn({__name:"ThemeToggle",setup(e){const t=Le("isDarkMode"),n=Le("setColorMode"),s=()=>{n(!t.value)};return(r,o)=>(qe(),Mn("button",{onClick:s,class:an(["fixed top-4 right-4 z-10 p-2 rounded-full transition-all duration-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 transform hover:rotate-180",Pe(t)?"bg-gray-800 text-yellow-300":"bg-white text-gray-800"])},[Pe(t)?(qe(),tn(Pe(Dd),{key:1,class:"w-6 h-6"})):(qe(),tn(Pe(jd),{key:0,class:"w-6 h-6"}))],2))}});function ac(e,t){return function(){return e.apply(t,arguments)}}const{toString:Hd}=Object.prototype,{getPrototypeOf:Yr}=Object,{iterator:Fs,toStringTag:uc}=Symbol,Ds=(e=>t=>{const n=Hd.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Je=e=>(e=e.toLowerCase(),t=>Ds(t)===e),js=e=>t=>typeof t===e,{isArray:un}=Array,Bn=js("undefined");function Vd(e){return e!==null&&!Bn(e)&&e.constructor!==null&&!Bn(e.constructor)&&Ne(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const fc=Je("ArrayBuffer");function qd(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&fc(e.buffer),t}const Kd=js("string"),Ne=js("function"),dc=js("number"),Bs=e=>e!==null&&typeof e=="object",Wd=e=>e===!0||e===!1,ss=e=>{if(Ds(e)!=="object")return!1;const t=Yr(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(uc in e)&&!(Fs in e)},zd=Je("Date"),Jd=Je("File"),Gd=Je("Blob"),Xd=Je("FileList"),Qd=e=>Bs(e)&&Ne(e.pipe),Yd=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||Ne(e.append)&&((t=Ds(e))==="formdata"||t==="object"&&Ne(e.toString)&&e.toString()==="[object FormData]"))},Zd=Je("URLSearchParams"),[eh,th,nh,sh]=["ReadableStream","Request","Response","Headers"].map(Je),rh=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Wn(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let s,r;if(typeof e!="object"&&(e=[e]),un(e))for(s=0,r=e.length;s0;)if(r=n[s],t===r.toLowerCase())return r;return null}const Dt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,pc=e=>!Bn(e)&&e!==Dt;function xr(){const{caseless:e}=pc(this)&&this||{},t={},n=(s,r)=>{const o=e&&hc(t,r)||r;ss(t[o])&&ss(s)?t[o]=xr(t[o],s):ss(s)?t[o]=xr({},s):un(s)?t[o]=s.slice():t[o]=s};for(let s=0,r=arguments.length;s(Wn(t,(r,o)=>{n&&Ne(r)?e[o]=ac(r,n):e[o]=r},{allOwnKeys:s}),e),ih=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),lh=(e,t,n,s)=>{e.prototype=Object.create(t.prototype,s),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},ch=(e,t,n,s)=>{let r,o,i;const l={};if(t=t||{},e==null)return t;do{for(r=Object.getOwnPropertyNames(e),o=r.length;o-- >0;)i=r[o],(!s||s(i,e,t))&&!l[i]&&(t[i]=e[i],l[i]=!0);e=n!==!1&&Yr(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},ah=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const s=e.indexOf(t,n);return s!==-1&&s===n},uh=e=>{if(!e)return null;if(un(e))return e;let t=e.length;if(!dc(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},fh=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Yr(Uint8Array)),dh=(e,t)=>{const s=(e&&e[Fs]).call(e);let r;for(;(r=s.next())&&!r.done;){const o=r.value;t.call(e,o[0],o[1])}},hh=(e,t)=>{let n;const s=[];for(;(n=e.exec(t))!==null;)s.push(n);return s},ph=Je("HTMLFormElement"),mh=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,s,r){return s.toUpperCase()+r}),ui=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),gh=Je("RegExp"),mc=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),s={};Wn(n,(r,o)=>{let i;(i=t(r,o,e))!==!1&&(s[o]=i||r)}),Object.defineProperties(e,s)},yh=e=>{mc(e,(t,n)=>{if(Ne(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const s=e[n];if(Ne(s)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},bh=(e,t)=>{const n={},s=r=>{r.forEach(o=>{n[o]=!0})};return un(e)?s(e):s(String(e).split(t)),n},_h=()=>{},wh=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function vh(e){return!!(e&&Ne(e.append)&&e[uc]==="FormData"&&e[Fs])}const Eh=e=>{const t=new Array(10),n=(s,r)=>{if(Bs(s)){if(t.indexOf(s)>=0)return;if(!("toJSON"in s)){t[r]=s;const o=un(s)?[]:{};return Wn(s,(i,l)=>{const c=n(i,r+1);!Bn(c)&&(o[l]=c)}),t[r]=void 0,o}}return s};return n(e,0)},Sh=Je("AsyncFunction"),xh=e=>e&&(Bs(e)||Ne(e))&&Ne(e.then)&&Ne(e.catch),gc=((e,t)=>e?setImmediate:t?((n,s)=>(Dt.addEventListener("message",({source:r,data:o})=>{r===Dt&&o===n&&s.length&&s.shift()()},!1),r=>{s.push(r),Dt.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Ne(Dt.postMessage)),Rh=typeof queueMicrotask<"u"?queueMicrotask.bind(Dt):typeof process<"u"&&process.nextTick||gc,Ch=e=>e!=null&&Ne(e[Fs]),b={isArray:un,isArrayBuffer:fc,isBuffer:Vd,isFormData:Yd,isArrayBufferView:qd,isString:Kd,isNumber:dc,isBoolean:Wd,isObject:Bs,isPlainObject:ss,isReadableStream:eh,isRequest:th,isResponse:nh,isHeaders:sh,isUndefined:Bn,isDate:zd,isFile:Jd,isBlob:Gd,isRegExp:gh,isFunction:Ne,isStream:Qd,isURLSearchParams:Zd,isTypedArray:fh,isFileList:Xd,forEach:Wn,merge:xr,extend:oh,trim:rh,stripBOM:ih,inherits:lh,toFlatObject:ch,kindOf:Ds,kindOfTest:Je,endsWith:ah,toArray:uh,forEachEntry:dh,matchAll:hh,isHTMLForm:ph,hasOwnProperty:ui,hasOwnProp:ui,reduceDescriptors:mc,freezeMethods:yh,toObjectSet:bh,toCamelCase:mh,noop:_h,toFiniteNumber:wh,findKey:hc,global:Dt,isContextDefined:pc,isSpecCompliantForm:vh,toJSONObject:Eh,isAsyncFn:Sh,isThenable:xh,setImmediate:gc,asap:Rh,isIterable:Ch};function J(e,t,n,s,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),s&&(this.request=s),r&&(this.response=r,this.status=r.status?r.status:null)}b.inherits(J,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:b.toJSONObject(this.config),code:this.code,status:this.status}}});const yc=J.prototype,bc={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{bc[e]={value:e}});Object.defineProperties(J,bc);Object.defineProperty(yc,"isAxiosError",{value:!0});J.from=(e,t,n,s,r,o)=>{const i=Object.create(yc);return b.toFlatObject(e,i,function(c){return c!==Error.prototype},l=>l!=="isAxiosError"),J.call(i,e.message,t,n,s,r),i.cause=e,i.name=e.name,o&&Object.assign(i,o),i};const Th=null;function Rr(e){return b.isPlainObject(e)||b.isArray(e)}function _c(e){return b.endsWith(e,"[]")?e.slice(0,-2):e}function fi(e,t,n){return e?e.concat(t).map(function(r,o){return r=_c(r),!n&&o?"["+r+"]":r}).join(n?".":""):t}function Ah(e){return b.isArray(e)&&!e.some(Rr)}const Oh=b.toFlatObject(b,{},null,function(t){return/^is[A-Z]/.test(t)});function $s(e,t,n){if(!b.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=b.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(_,x){return!b.isUndefined(x[_])});const s=n.metaTokens,r=n.visitor||a,o=n.dots,i=n.indexes,c=(n.Blob||typeof Blob<"u"&&Blob)&&b.isSpecCompliantForm(t);if(!b.isFunction(r))throw new TypeError("visitor must be a function");function u(y){if(y===null)return"";if(b.isDate(y))return y.toISOString();if(b.isBoolean(y))return y.toString();if(!c&&b.isBlob(y))throw new J("Blob is not supported. Use a Buffer instead.");return b.isArrayBuffer(y)||b.isTypedArray(y)?c&&typeof Blob=="function"?new Blob([y]):Buffer.from(y):y}function a(y,_,x){let A=y;if(y&&!x&&typeof y=="object"){if(b.endsWith(_,"{}"))_=s?_:_.slice(0,-2),y=JSON.stringify(y);else if(b.isArray(y)&&Ah(y)||(b.isFileList(y)||b.endsWith(_,"[]"))&&(A=b.toArray(y)))return _=_c(_),A.forEach(function(P,L){!(b.isUndefined(P)||P===null)&&t.append(i===!0?fi([_],L,o):i===null?_:_+"[]",u(P))}),!1}return Rr(y)?!0:(t.append(fi(x,_,o),u(y)),!1)}const f=[],p=Object.assign(Oh,{defaultVisitor:a,convertValue:u,isVisitable:Rr});function m(y,_){if(!b.isUndefined(y)){if(f.indexOf(y)!==-1)throw Error("Circular reference detected in "+_.join("."));f.push(y),b.forEach(y,function(A,C){(!(b.isUndefined(A)||A===null)&&r.call(t,A,b.isString(C)?C.trim():C,_,p))===!0&&m(A,_?_.concat(C):[C])}),f.pop()}}if(!b.isObject(e))throw new TypeError("data must be an object");return m(e),t}function di(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(s){return t[s]})}function Zr(e,t){this._pairs=[],e&&$s(e,this,t)}const wc=Zr.prototype;wc.append=function(t,n){this._pairs.push([t,n])};wc.toString=function(t){const n=t?function(s){return t.call(this,s,di)}:di;return this._pairs.map(function(r){return n(r[0])+"="+n(r[1])},"").join("&")};function Ph(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function vc(e,t,n){if(!t)return e;const s=n&&n.encode||Ph;b.isFunction(n)&&(n={serialize:n});const r=n&&n.serialize;let o;if(r?o=r(t,n):o=b.isURLSearchParams(t)?t.toString():new Zr(t,n).toString(s),o){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class hi{constructor(){this.handlers=[]}use(t,n,s){return this.handlers.push({fulfilled:t,rejected:n,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){b.forEach(this.handlers,function(s){s!==null&&t(s)})}}const Ec={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Lh=typeof URLSearchParams<"u"?URLSearchParams:Zr,Nh=typeof FormData<"u"?FormData:null,Ih=typeof Blob<"u"?Blob:null,Mh={isBrowser:!0,classes:{URLSearchParams:Lh,FormData:Nh,Blob:Ih},protocols:["http","https","file","blob","url","data"]},eo=typeof window<"u"&&typeof document<"u",Cr=typeof navigator=="object"&&navigator||void 0,kh=eo&&(!Cr||["ReactNative","NativeScript","NS"].indexOf(Cr.product)<0),Fh=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Dh=eo&&window.location.href||"http://localhost",jh=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:eo,hasStandardBrowserEnv:kh,hasStandardBrowserWebWorkerEnv:Fh,navigator:Cr,origin:Dh},Symbol.toStringTag,{value:"Module"})),ve={...jh,...Mh};function Bh(e,t){return $s(e,new ve.classes.URLSearchParams,Object.assign({visitor:function(n,s,r,o){return ve.isNode&&b.isBuffer(n)?(this.append(s,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function $h(e){return b.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Uh(e){const t={},n=Object.keys(e);let s;const r=n.length;let o;for(s=0;s=n.length;return i=!i&&b.isArray(r)?r.length:i,c?(b.hasOwnProp(r,i)?r[i]=[r[i],s]:r[i]=s,!l):((!r[i]||!b.isObject(r[i]))&&(r[i]=[]),t(n,s,r[i],o)&&b.isArray(r[i])&&(r[i]=Uh(r[i])),!l)}if(b.isFormData(e)&&b.isFunction(e.entries)){const n={};return b.forEachEntry(e,(s,r)=>{t($h(s),r,n,0)}),n}return null}function Hh(e,t,n){if(b.isString(e))try{return(t||JSON.parse)(e),b.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(n||JSON.stringify)(e)}const zn={transitional:Ec,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const s=n.getContentType()||"",r=s.indexOf("application/json")>-1,o=b.isObject(t);if(o&&b.isHTMLForm(t)&&(t=new FormData(t)),b.isFormData(t))return r?JSON.stringify(Sc(t)):t;if(b.isArrayBuffer(t)||b.isBuffer(t)||b.isStream(t)||b.isFile(t)||b.isBlob(t)||b.isReadableStream(t))return t;if(b.isArrayBufferView(t))return t.buffer;if(b.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(o){if(s.indexOf("application/x-www-form-urlencoded")>-1)return Bh(t,this.formSerializer).toString();if((l=b.isFileList(t))||s.indexOf("multipart/form-data")>-1){const c=this.env&&this.env.FormData;return $s(l?{"files[]":t}:t,c&&new c,this.formSerializer)}}return o||r?(n.setContentType("application/json",!1),Hh(t)):t}],transformResponse:[function(t){const n=this.transitional||zn.transitional,s=n&&n.forcedJSONParsing,r=this.responseType==="json";if(b.isResponse(t)||b.isReadableStream(t))return t;if(t&&b.isString(t)&&(s&&!this.responseType||r)){const i=!(n&&n.silentJSONParsing)&&r;try{return JSON.parse(t)}catch(l){if(i)throw l.name==="SyntaxError"?J.from(l,J.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ve.classes.FormData,Blob:ve.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};b.forEach(["delete","get","head","post","put","patch"],e=>{zn.headers[e]={}});const Vh=b.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),qh=e=>{const t={};let n,s,r;return e&&e.split(` +`).forEach(function(i){r=i.indexOf(":"),n=i.substring(0,r).trim().toLowerCase(),s=i.substring(r+1).trim(),!(!n||t[n]&&Vh[n])&&(n==="set-cookie"?t[n]?t[n].push(s):t[n]=[s]:t[n]=t[n]?t[n]+", "+s:s)}),t},pi=Symbol("internals");function gn(e){return e&&String(e).trim().toLowerCase()}function rs(e){return e===!1||e==null?e:b.isArray(e)?e.map(rs):String(e)}function Kh(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=n.exec(e);)t[s[1]]=s[2];return t}const Wh=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function or(e,t,n,s,r){if(b.isFunction(s))return s.call(this,t,n);if(r&&(t=n),!!b.isString(t)){if(b.isString(s))return t.indexOf(s)!==-1;if(b.isRegExp(s))return s.test(t)}}function zh(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,s)=>n.toUpperCase()+s)}function Jh(e,t){const n=b.toCamelCase(" "+t);["get","set","has"].forEach(s=>{Object.defineProperty(e,s+n,{value:function(r,o,i){return this[s].call(this,t,r,o,i)},configurable:!0})})}let Ie=class{constructor(t){t&&this.set(t)}set(t,n,s){const r=this;function o(l,c,u){const a=gn(c);if(!a)throw new Error("header name must be a non-empty string");const f=b.findKey(r,a);(!f||r[f]===void 0||u===!0||u===void 0&&r[f]!==!1)&&(r[f||c]=rs(l))}const i=(l,c)=>b.forEach(l,(u,a)=>o(u,a,c));if(b.isPlainObject(t)||t instanceof this.constructor)i(t,n);else if(b.isString(t)&&(t=t.trim())&&!Wh(t))i(qh(t),n);else if(b.isObject(t)&&b.isIterable(t)){let l={},c,u;for(const a of t){if(!b.isArray(a))throw TypeError("Object iterator must return a key-value pair");l[u=a[0]]=(c=l[u])?b.isArray(c)?[...c,a[1]]:[c,a[1]]:a[1]}i(l,n)}else t!=null&&o(n,t,s);return this}get(t,n){if(t=gn(t),t){const s=b.findKey(this,t);if(s){const r=this[s];if(!n)return r;if(n===!0)return Kh(r);if(b.isFunction(n))return n.call(this,r,s);if(b.isRegExp(n))return n.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=gn(t),t){const s=b.findKey(this,t);return!!(s&&this[s]!==void 0&&(!n||or(this,this[s],s,n)))}return!1}delete(t,n){const s=this;let r=!1;function o(i){if(i=gn(i),i){const l=b.findKey(s,i);l&&(!n||or(s,s[l],l,n))&&(delete s[l],r=!0)}}return b.isArray(t)?t.forEach(o):o(t),r}clear(t){const n=Object.keys(this);let s=n.length,r=!1;for(;s--;){const o=n[s];(!t||or(this,this[o],o,t,!0))&&(delete this[o],r=!0)}return r}normalize(t){const n=this,s={};return b.forEach(this,(r,o)=>{const i=b.findKey(s,o);if(i){n[i]=rs(r),delete n[o];return}const l=t?zh(o):String(o).trim();l!==o&&delete n[o],n[l]=rs(r),s[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return b.forEach(this,(s,r)=>{s!=null&&s!==!1&&(n[r]=t&&b.isArray(s)?s.join(", "):s)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(` +`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const s=new this(t);return n.forEach(r=>s.set(r)),s}static accessor(t){const s=(this[pi]=this[pi]={accessors:{}}).accessors,r=this.prototype;function o(i){const l=gn(i);s[l]||(Jh(r,i),s[l]=!0)}return b.isArray(t)?t.forEach(o):o(t),this}};Ie.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);b.reduceDescriptors(Ie.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(s){this[n]=s}}});b.freezeMethods(Ie);function ir(e,t){const n=this||zn,s=t||n,r=Ie.from(s.headers);let o=s.data;return b.forEach(e,function(l){o=l.call(n,o,r.normalize(),t?t.status:void 0)}),r.normalize(),o}function xc(e){return!!(e&&e.__CANCEL__)}function fn(e,t,n){J.call(this,e??"canceled",J.ERR_CANCELED,t,n),this.name="CanceledError"}b.inherits(fn,J,{__CANCEL__:!0});function Rc(e,t,n){const s=n.config.validateStatus;!n.status||!s||s(n.status)?e(n):t(new J("Request failed with status code "+n.status,[J.ERR_BAD_REQUEST,J.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function Gh(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Xh(e,t){e=e||10;const n=new Array(e),s=new Array(e);let r=0,o=0,i;return t=t!==void 0?t:1e3,function(c){const u=Date.now(),a=s[o];i||(i=u),n[r]=c,s[r]=u;let f=o,p=0;for(;f!==r;)p+=n[f++],f=f%e;if(r=(r+1)%e,r===o&&(o=(o+1)%e),u-i{n=a,r=null,o&&(clearTimeout(o),o=null),e.apply(null,u)};return[(...u)=>{const a=Date.now(),f=a-n;f>=s?i(u,a):(r=u,o||(o=setTimeout(()=>{o=null,i(r)},s-f)))},()=>r&&i(r)]}const ys=(e,t,n=3)=>{let s=0;const r=Xh(50,250);return Qh(o=>{const i=o.loaded,l=o.lengthComputable?o.total:void 0,c=i-s,u=r(c),a=i<=l;s=i;const f={loaded:i,total:l,progress:l?i/l:void 0,bytes:c,rate:u||void 0,estimated:u&&l&&a?(l-i)/u:void 0,event:o,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(f)},n)},mi=(e,t)=>{const n=e!=null;return[s=>t[0]({lengthComputable:n,total:e,loaded:s}),t[1]]},gi=e=>(...t)=>b.asap(()=>e(...t)),Yh=ve.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ve.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ve.origin),ve.navigator&&/(msie|trident)/i.test(ve.navigator.userAgent)):()=>!0,Zh=ve.hasStandardBrowserEnv?{write(e,t,n,s,r,o){const i=[e+"="+encodeURIComponent(t)];b.isNumber(n)&&i.push("expires="+new Date(n).toGMTString()),b.isString(s)&&i.push("path="+s),b.isString(r)&&i.push("domain="+r),o===!0&&i.push("secure"),document.cookie=i.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function ep(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function tp(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Cc(e,t,n){let s=!ep(t);return e&&(s||n==!1)?tp(e,t):t}const yi=e=>e instanceof Ie?{...e}:e;function Vt(e,t){t=t||{};const n={};function s(u,a,f,p){return b.isPlainObject(u)&&b.isPlainObject(a)?b.merge.call({caseless:p},u,a):b.isPlainObject(a)?b.merge({},a):b.isArray(a)?a.slice():a}function r(u,a,f,p){if(b.isUndefined(a)){if(!b.isUndefined(u))return s(void 0,u,f,p)}else return s(u,a,f,p)}function o(u,a){if(!b.isUndefined(a))return s(void 0,a)}function i(u,a){if(b.isUndefined(a)){if(!b.isUndefined(u))return s(void 0,u)}else return s(void 0,a)}function l(u,a,f){if(f in t)return s(u,a);if(f in e)return s(void 0,u)}const c={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:l,headers:(u,a,f)=>r(yi(u),yi(a),f,!0)};return b.forEach(Object.keys(Object.assign({},e,t)),function(a){const f=c[a]||r,p=f(e[a],t[a],a);b.isUndefined(p)&&f!==l||(n[a]=p)}),n}const Tc=e=>{const t=Vt({},e);let{data:n,withXSRFToken:s,xsrfHeaderName:r,xsrfCookieName:o,headers:i,auth:l}=t;t.headers=i=Ie.from(i),t.url=vc(Cc(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&i.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let c;if(b.isFormData(n)){if(ve.hasStandardBrowserEnv||ve.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if((c=i.getContentType())!==!1){const[u,...a]=c?c.split(";").map(f=>f.trim()).filter(Boolean):[];i.setContentType([u||"multipart/form-data",...a].join("; "))}}if(ve.hasStandardBrowserEnv&&(s&&b.isFunction(s)&&(s=s(t)),s||s!==!1&&Yh(t.url))){const u=r&&o&&Zh.read(o);u&&i.set(r,u)}return t},np=typeof XMLHttpRequest<"u",sp=np&&function(e){return new Promise(function(n,s){const r=Tc(e);let o=r.data;const i=Ie.from(r.headers).normalize();let{responseType:l,onUploadProgress:c,onDownloadProgress:u}=r,a,f,p,m,y;function _(){m&&m(),y&&y(),r.cancelToken&&r.cancelToken.unsubscribe(a),r.signal&&r.signal.removeEventListener("abort",a)}let x=new XMLHttpRequest;x.open(r.method.toUpperCase(),r.url,!0),x.timeout=r.timeout;function A(){if(!x)return;const P=Ie.from("getAllResponseHeaders"in x&&x.getAllResponseHeaders()),j={data:!l||l==="text"||l==="json"?x.responseText:x.response,status:x.status,statusText:x.statusText,headers:P,config:e,request:x};Rc(function(z){n(z),_()},function(z){s(z),_()},j),x=null}"onloadend"in x?x.onloadend=A:x.onreadystatechange=function(){!x||x.readyState!==4||x.status===0&&!(x.responseURL&&x.responseURL.indexOf("file:")===0)||setTimeout(A)},x.onabort=function(){x&&(s(new J("Request aborted",J.ECONNABORTED,e,x)),x=null)},x.onerror=function(){s(new J("Network Error",J.ERR_NETWORK,e,x)),x=null},x.ontimeout=function(){let L=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const j=r.transitional||Ec;r.timeoutErrorMessage&&(L=r.timeoutErrorMessage),s(new J(L,j.clarifyTimeoutError?J.ETIMEDOUT:J.ECONNABORTED,e,x)),x=null},o===void 0&&i.setContentType(null),"setRequestHeader"in x&&b.forEach(i.toJSON(),function(L,j){x.setRequestHeader(j,L)}),b.isUndefined(r.withCredentials)||(x.withCredentials=!!r.withCredentials),l&&l!=="json"&&(x.responseType=r.responseType),u&&([p,y]=ys(u,!0),x.addEventListener("progress",p)),c&&x.upload&&([f,m]=ys(c),x.upload.addEventListener("progress",f),x.upload.addEventListener("loadend",m)),(r.cancelToken||r.signal)&&(a=P=>{x&&(s(!P||P.type?new fn(null,e,x):P),x.abort(),x=null)},r.cancelToken&&r.cancelToken.subscribe(a),r.signal&&(r.signal.aborted?a():r.signal.addEventListener("abort",a)));const C=Gh(r.url);if(C&&ve.protocols.indexOf(C)===-1){s(new J("Unsupported protocol "+C+":",J.ERR_BAD_REQUEST,e));return}x.send(o||null)})},rp=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let s=new AbortController,r;const o=function(u){if(!r){r=!0,l();const a=u instanceof Error?u:this.reason;s.abort(a instanceof J?a:new fn(a instanceof Error?a.message:a))}};let i=t&&setTimeout(()=>{i=null,o(new J(`timeout ${t} of ms exceeded`,J.ETIMEDOUT))},t);const l=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach(u=>{u.unsubscribe?u.unsubscribe(o):u.removeEventListener("abort",o)}),e=null)};e.forEach(u=>u.addEventListener("abort",o));const{signal:c}=s;return c.unsubscribe=()=>b.asap(l),c}},op=function*(e,t){let n=e.byteLength;if(n{const r=ip(e,t);let o=0,i,l=c=>{i||(i=!0,s&&s(c))};return new ReadableStream({async pull(c){try{const{done:u,value:a}=await r.next();if(u){l(),c.close();return}let f=a.byteLength;if(n){let p=o+=f;n(p)}c.enqueue(new Uint8Array(a))}catch(u){throw l(u),u}},cancel(c){return l(c),r.return()}},{highWaterMark:2})},Us=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",Ac=Us&&typeof ReadableStream=="function",cp=Us&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),Oc=(e,...t)=>{try{return!!e(...t)}catch{return!1}},ap=Ac&&Oc(()=>{let e=!1;const t=new Request(ve.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),_i=64*1024,Tr=Ac&&Oc(()=>b.isReadableStream(new Response("").body)),bs={stream:Tr&&(e=>e.body)};Us&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!bs[t]&&(bs[t]=b.isFunction(e[t])?n=>n[t]():(n,s)=>{throw new J(`Response type '${t}' is not supported`,J.ERR_NOT_SUPPORT,s)})})})(new Response);const up=async e=>{if(e==null)return 0;if(b.isBlob(e))return e.size;if(b.isSpecCompliantForm(e))return(await new Request(ve.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(b.isArrayBufferView(e)||b.isArrayBuffer(e))return e.byteLength;if(b.isURLSearchParams(e)&&(e=e+""),b.isString(e))return(await cp(e)).byteLength},fp=async(e,t)=>{const n=b.toFiniteNumber(e.getContentLength());return n??up(t)},dp=Us&&(async e=>{let{url:t,method:n,data:s,signal:r,cancelToken:o,timeout:i,onDownloadProgress:l,onUploadProgress:c,responseType:u,headers:a,withCredentials:f="same-origin",fetchOptions:p}=Tc(e);u=u?(u+"").toLowerCase():"text";let m=rp([r,o&&o.toAbortSignal()],i),y;const _=m&&m.unsubscribe&&(()=>{m.unsubscribe()});let x;try{if(c&&ap&&n!=="get"&&n!=="head"&&(x=await fp(a,s))!==0){let j=new Request(t,{method:"POST",body:s,duplex:"half"}),X;if(b.isFormData(s)&&(X=j.headers.get("content-type"))&&a.setContentType(X),j.body){const[z,V]=mi(x,ys(gi(c)));s=bi(j.body,_i,z,V)}}b.isString(f)||(f=f?"include":"omit");const A="credentials"in Request.prototype;y=new Request(t,{...p,signal:m,method:n.toUpperCase(),headers:a.normalize().toJSON(),body:s,duplex:"half",credentials:A?f:void 0});let C=await fetch(y,p);const P=Tr&&(u==="stream"||u==="response");if(Tr&&(l||P&&_)){const j={};["status","statusText","headers"].forEach(I=>{j[I]=C[I]});const X=b.toFiniteNumber(C.headers.get("content-length")),[z,V]=l&&mi(X,ys(gi(l),!0))||[];C=new Response(bi(C.body,_i,z,()=>{V&&V(),_&&_()}),j)}u=u||"text";let L=await bs[b.findKey(bs,u)||"text"](C,e);return!P&&_&&_(),await new Promise((j,X)=>{Rc(j,X,{data:L,headers:Ie.from(C.headers),status:C.status,statusText:C.statusText,config:e,request:y})})}catch(A){throw _&&_(),A&&A.name==="TypeError"&&/Load failed|fetch/i.test(A.message)?Object.assign(new J("Network Error",J.ERR_NETWORK,e,y),{cause:A.cause||A}):J.from(A,A&&A.code,e,y)}}),Ar={http:Th,xhr:sp,fetch:dp};b.forEach(Ar,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const wi=e=>`- ${e}`,hp=e=>b.isFunction(e)||e===null||e===!1,Pc={getAdapter:e=>{e=b.isArray(e)?e:[e];const{length:t}=e;let n,s;const r={};for(let o=0;o`adapter ${l} `+(c===!1?"is not supported by the environment":"is not available in the build"));let i=t?o.length>1?`since : +`+o.map(wi).join(` +`):" "+wi(o[0]):"as no adapter specified";throw new J("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return s},adapters:Ar};function lr(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new fn(null,e)}function vi(e){return lr(e),e.headers=Ie.from(e.headers),e.data=ir.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Pc.getAdapter(e.adapter||zn.adapter)(e).then(function(s){return lr(e),s.data=ir.call(e,e.transformResponse,s),s.headers=Ie.from(s.headers),s},function(s){return xc(s)||(lr(e),s&&s.response&&(s.response.data=ir.call(e,e.transformResponse,s.response),s.response.headers=Ie.from(s.response.headers))),Promise.reject(s)})}const Lc="1.10.0",Hs={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Hs[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});const Ei={};Hs.transitional=function(t,n,s){function r(o,i){return"[Axios v"+Lc+"] Transitional option '"+o+"'"+i+(s?". "+s:"")}return(o,i,l)=>{if(t===!1)throw new J(r(i," has been removed"+(n?" in "+n:"")),J.ERR_DEPRECATED);return n&&!Ei[i]&&(Ei[i]=!0,console.warn(r(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,i,l):!0}};Hs.spelling=function(t){return(n,s)=>(console.warn(`${s} is likely a misspelling of ${t}`),!0)};function pp(e,t,n){if(typeof e!="object")throw new J("options must be an object",J.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let r=s.length;for(;r-- >0;){const o=s[r],i=t[o];if(i){const l=e[o],c=l===void 0||i(l,o,e);if(c!==!0)throw new J("option "+o+" must be "+c,J.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new J("Unknown option "+o,J.ERR_BAD_OPTION)}}const os={assertOptions:pp,validators:Hs},et=os.validators;let Ut=class{constructor(t){this.defaults=t||{},this.interceptors={request:new hi,response:new hi}}async request(t,n){try{return await this._request(t,n)}catch(s){if(s instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const o=r.stack?r.stack.replace(/^.+\n/,""):"";try{s.stack?o&&!String(s.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(s.stack+=` +`+o):s.stack=o}catch{}}throw s}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Vt(this.defaults,n);const{transitional:s,paramsSerializer:r,headers:o}=n;s!==void 0&&os.assertOptions(s,{silentJSONParsing:et.transitional(et.boolean),forcedJSONParsing:et.transitional(et.boolean),clarifyTimeoutError:et.transitional(et.boolean)},!1),r!=null&&(b.isFunction(r)?n.paramsSerializer={serialize:r}:os.assertOptions(r,{encode:et.function,serialize:et.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),os.assertOptions(n,{baseUrl:et.spelling("baseURL"),withXsrfToken:et.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&b.merge(o.common,o[n.method]);o&&b.forEach(["delete","get","head","post","put","patch","common"],y=>{delete o[y]}),n.headers=Ie.concat(i,o);const l=[];let c=!0;this.interceptors.request.forEach(function(_){typeof _.runWhen=="function"&&_.runWhen(n)===!1||(c=c&&_.synchronous,l.unshift(_.fulfilled,_.rejected))});const u=[];this.interceptors.response.forEach(function(_){u.push(_.fulfilled,_.rejected)});let a,f=0,p;if(!c){const y=[vi.bind(this),void 0];for(y.unshift.apply(y,l),y.push.apply(y,u),p=y.length,a=Promise.resolve(n);f{if(!s._listeners)return;let o=s._listeners.length;for(;o-- >0;)s._listeners[o](r);s._listeners=null}),this.promise.then=r=>{let o;const i=new Promise(l=>{s.subscribe(l),o=l}).then(r);return i.cancel=function(){s.unsubscribe(o)},i},t(function(o,i,l){s.reason||(s.reason=new fn(o,i,l),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=s=>{t.abort(s)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Nc(function(r){t=r}),cancel:t}}};function gp(e){return function(n){return e.apply(null,n)}}function yp(e){return b.isObject(e)&&e.isAxiosError===!0}const Or={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Or).forEach(([e,t])=>{Or[t]=e});function Ic(e){const t=new Ut(e),n=ac(Ut.prototype.request,t);return b.extend(n,Ut.prototype,t,{allOwnKeys:!0}),b.extend(n,t,null,{allOwnKeys:!0}),n.create=function(r){return Ic(Vt(e,r))},n}const he=Ic(zn);he.Axios=Ut;he.CanceledError=fn;he.CancelToken=mp;he.isCancel=xc;he.VERSION=Lc;he.toFormData=$s;he.AxiosError=J;he.Cancel=he.CanceledError;he.all=function(t){return Promise.all(t)};he.spread=gp;he.isAxiosError=yp;he.mergeConfig=Vt;he.AxiosHeaders=Ie;he.formToJSON=e=>Sc(b.isHTMLForm(e)?new FormData(e):e);he.getAdapter=Pc.getAdapter;he.HttpStatusCode=Or;he.default=he;const{Axios:Wp,AxiosError:zp,CanceledError:Jp,isCancel:Gp,CancelToken:Xp,VERSION:Qp,all:Yp,Cancel:Zp,isAxiosError:em,spread:tm,toFormData:nm,AxiosHeaders:sm,HttpStatusCode:rm,formToJSON:om,getAdapter:im,mergeConfig:lm}=he,bp="",Mc=bp,to=he.create({baseURL:Mc,timeout:1e15,headers:{"Content-Type":"application/json"}});to.interceptors.request.use(e=>{const t=localStorage.getItem("token");return t&&(e.headers.Authorization=`Bearer ${t}`),e.url&&!e.url.startsWith("http")&&(e.url=`${Mc}/${e.url.replace(/^\//,"")}`),e},e=>Promise.reject(e));to.interceptors.response.use(e=>e.data,e=>{if(e.response)switch(e.response.status){case 401:console.error("未授权,请重新登录"),localStorage.clear(),window.location.href="/#/login";break;case 403:console.error("禁止访问");break;case 404:console.error("请求的资源不存在");break;default:console.error("发生错误:",e.response.data)}else e.request?console.error("未收到响应:",e.request):console.error("请求配置错误:",e.message);return Promise.reject(e)});const kc=Cf("alert",{state:()=>({alerts:[]}),actions:{showAlert(e,t="info",n=5e3){const s=Date.now(),r=Date.now();this.alerts.push({id:s,message:e,type:t,progress:100,duration:n,startTime:r}),setTimeout(()=>this.removeAlert(s),n)},removeAlert(e){const t=this.alerts.findIndex(n=>n.id===e);t>-1&&this.alerts.splice(t,1)},updateAlertProgress(e){const t=this.alerts.find(n=>n.id===e);if(t){const s=100-(Date.now()-t.startTime)/t.duration*100;t.progress=Math.max(0,s),t.progress<=0&&this.removeAlert(e)}}}}),_p={class:"p-4"},wp={class:"flex items-start"},vp={class:"flex-shrink-0"},Ep={class:"ml-3 flex-1 pt-0.5"},Sp=["innerHTML"],xp={class:"ml-4 flex-shrink-0 flex"},Rp=["onClick"],Cp={class:"h-1 bg-white bg-opacity-25"},Tp=qn({__name:"AlertComponent",setup(e){const t=kc(),{alerts:n}=Tf(t),{removeAlert:s,updateAlertProgress:r}=t,o={success:"from-green-500 to-green-600",error:"from-red-500 to-red-600",warning:"from-yellow-500 to-yellow-600",info:"from-blue-500 to-blue-600"},i={success:kd,error:Bd,warning:Md,info:Fd};let l;return Os(()=>{l=setInterval(()=>{n.value.forEach(c=>{r(c.id)})},100)}),Kr(()=>{clearInterval(l)}),(c,u)=>(qe(),tn(of,{name:"alert-fade",tag:"div",class:"fixed top-4 left-4 z-50 w-full sm:max-w-sm md:max-w-md space-y-4 px-4 sm:px-0"},{default:ds(()=>[(qe(!0),Mn(Ue,null,Ha(Pe(n),a=>(qe(),Mn("div",{key:a.id,class:an(["w-full rounded-lg shadow-xl overflow-hidden","bg-gradient-to-r",o[a.type]])},[Fe("div",_p,[Fe("div",wp,[Fe("div",vp,[(qe(),tn(ml(i[a.type]),{class:"h-6 w-6 text-white"}))]),Fe("div",Ep,[Fe("p",{class:"text-sm font-medium text-white",innerHTML:a.message},null,8,Sp)]),Fe("div",xp,[Fe("button",{onClick:f=>Pe(s)(a.id),class:"inline-flex text-white hover:text-gray-200 focus:outline-none transition-colors duration-200"},[u[0]||(u[0]=Fe("span",{class:"sr-only"},"关闭",-1)),me(Pe($d),{class:"h-5 w-5"})],8,Rp)])])]),Fe("div",Cp,[Fe("div",{class:"h-full bg-white transition-all duration-100 ease-out",style:Ss({width:`${a.progress}%`})},null,4)])],2))),128))]),_:1}))}}),Ap=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Op=Ap(Tp,[["__scopeId","data-v-0ce78a4a"]]),Pp={key:0,class:"loading-overlay"},Lp=qn({__name:"App",setup(e){const t=en(!1),n=en(!1),s=Ld(),r=kc(),o=()=>window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches,i=()=>{const c=localStorage.getItem("colorMode");return c?c==="dark":null},l=c=>{t.value=c,localStorage.setItem("colorMode",c?"dark":"light")};return Os(()=>{const c=i();l(c!==null?c:o()),to.post("/",{}).then(u=>{u.code===200&&(localStorage.setItem("config",JSON.stringify(u.detail)),u.detail.notify_title&&u.detail.notify_content&&localStorage.getItem("notify")!==u.detail.notify_title+u.detail.notify_content&&(localStorage.setItem("notify",u.detail.notify_title+u.detail.notify_content),r.showAlert(u.detail.notify_title+": "+u.detail.notify_content,"success")))})}),uu(()=>{document.documentElement.classList.toggle("dark",t.value)}),s.beforeEach((c,u,a)=>{n.value=!0,a()}),s.afterEach(()=>{setTimeout(()=>{n.value=!1},200)}),$t("isDarkMode",t),$t("setColorMode",l),$t("isLoading",n),(c,u)=>(qe(),Mn("div",{class:an(["app-container",t.value?"dark":"light"])},[me(Ud,{modelValue:t.value,"onUpdate:modelValue":u[0]||(u[0]=a=>t.value=a)},null,8,["modelValue"]),n.value?(qe(),Mn("div",Pp,u[1]||(u[1]=[Fe("div",{class:"loading-spinner"},null,-1)]))):Su("",!0),me(Pe(cc),null,{default:ds(({Component:a})=>[me(Bu,{name:"fade",mode:"out-in"},{default:ds(()=>[(qe(),tn(ml(a),{key:c.$route.fullPath}))]),_:2},1024)]),_:1}),me(Op)],2))}}),Np="modulepreload",Ip=function(e){return"/"+e},Si={},kt=function(t,n,s){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),l=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));r=Promise.allSettled(n.map(c=>{if(c=Ip(c),c in Si)return;Si[c]=!0;const u=c.endsWith(".css"),a=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${a}`))return;const f=document.createElement("link");if(f.rel=u?"stylesheet":Np,u||(f.as="script"),f.crossOrigin="",f.href=c,l&&f.setAttribute("nonce",l),document.head.appendChild(f),u)return new Promise((p,m)=>{f.addEventListener("load",p),f.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${c}`)))})}))}function o(i){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=i,window.dispatchEvent(l),!l.defaultPrevented)throw i}return r.then(i=>{for(const l of i||[])l.status==="rejected"&&o(l.reason);return t().catch(o)})},Mp=()=>kt(()=>import("./SendFileView-DJlusruR.js"),__vite__mapDeps([0,1,2,3,4])),kp=Od({history:od("/"),routes:[{path:"/",name:"Retrieve",component:()=>kt(()=>import("./RetrievewFileView-DzS7C4LK.js"),__vite__mapDeps([5,1,6,2,7,3,8]))},{path:"/send",name:"Send",component:Mp},{path:"/admin",name:"Manage",component:()=>kt(()=>import("./AdminLayout-BSI80wlV.js"),__vite__mapDeps([9,6,10])),redirect:"/admin/dashboard",children:[{path:"/admin/dashboard",name:"Dashboard",component:()=>kt(()=>import("./DashboardView-DHkW9fcL.js"),__vite__mapDeps([11,2,7]))},{path:"/admin/files",name:"FileManage",component:()=>kt(()=>import("./FileManageView-3VMR54FC.js"),__vite__mapDeps([12,2,3,13]))},{path:"/admin/settings",name:"Settings",component:()=>kt(()=>import("./SystemSettingsView-DJ12QIQD.js"),[])}]},{path:"/login",name:"Login",component:()=>kt(()=>import("./LoginView-T1LQBbzg.js"),__vite__mapDeps([14,6,15]))}]}),no=yf(Lp);no.use(wf());no.use(kp);no.mount("#app");export{tn as A,Ld as B,to as C,Tf as D,Vp as E,Ue as F,nn as G,fl as H,Cf as I,Hn as J,Kr as K,ml as L,Hp as M,Bp as N,Bu as T,$d as X,Ap as _,Mn as a,Fe as b,qt as c,qn as d,qe as e,De as f,me as g,Pe as h,Le as i,Up as j,ds as k,Su as l,Fp as m,an as n,Os as o,$p as p,Ss as q,en as r,Ha as s,Gc as t,kc as u,jp as v,xn as w,Eu as x,Dp as y,of as z}; diff --git a/themes/2025/assets/index-DKQ1YPO4.js b/themes/2025/assets/index-DKQ1YPO4.js new file mode 100644 index 000000000..4af6dfe0f --- /dev/null +++ b/themes/2025/assets/index-DKQ1YPO4.js @@ -0,0 +1,86 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/SendFileView-DsSIurce.js","assets/clipboard-BhvW87y2.js","assets/file-D8mQlyUF.js","assets/trash-FNvP9-P8.js","assets/SendFileView-DFaiiDlV.css","assets/RetrievewFileView-DyKPLNPu.js","assets/box-Ty09a89y.js","assets/hard-drive-C37_tD5A.js","assets/RetrievewFileView-BgLHFGkc.css","assets/AdminLayout-DlX3CUuP.js","assets/AdminLayout-CZwJxNxp.css","assets/DashboardView-CykWLsDF.js","assets/FileManageView-BLdG4lo7.js","assets/FileManageView-CwWUDTzq.css","assets/LoginView-DXxv6UDD.js","assets/LoginView-zMyguVQQ.css"])))=>i.map(i=>d[i]); +(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const i of o.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&s(i)}).observe(document,{childList:!0,subtree:!0});function n(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(r){if(r.ep)return;r.ep=!0;const o=n(r);fetch(r.href,o)}})();/** +* @vue/shared v3.5.17 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Pr(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const ce={},Qt=[],rt=()=>{},Fc=()=>!1,_s=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Lr=e=>e.startsWith("onUpdate:"),ge=Object.assign,Nr=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Dc=Object.prototype.hasOwnProperty,se=(e,t)=>Dc.call(e,t),$=Array.isArray,Yt=e=>$n(e)==="[object Map]",cn=e=>$n(e)==="[object Set]",oo=e=>$n(e)==="[object Date]",K=e=>typeof e=="function",de=e=>typeof e=="string",ot=e=>typeof e=="symbol",oe=e=>e!==null&&typeof e=="object",xi=e=>(oe(e)||K(e))&&K(e.then)&&K(e.catch),Ri=Object.prototype.toString,$n=e=>Ri.call(e),jc=e=>$n(e).slice(8,-1),Ci=e=>$n(e)==="[object Object]",Ir=e=>de(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,bn=Pr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),ws=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Bc=/-(\w)/g,Ve=ws(e=>e.replace(Bc,(t,n)=>n?n.toUpperCase():"")),$c=/\B([A-Z])/g,Pt=ws(e=>e.replace($c,"-$1").toLowerCase()),vs=ws(e=>e.charAt(0).toUpperCase()+e.slice(1)),Vs=ws(e=>e?`on${vs(e)}`:""),Tt=(e,t)=>!Object.is(e,t),es=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},is=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Uc=e=>{const t=de(e)?Number(e):NaN;return isNaN(t)?e:t};let io;const Es=()=>io||(io=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Ss(e){if($(e)){const t={};for(let n=0;n{if(n){const s=n.split(Vc);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function an(e){let t="";if(de(e))t=e;else if($(e))for(let n=0;nUn(n,t))}const Ai=e=>!!(e&&e.__v_isRef===!0),Gc=e=>de(e)?e:e==null?"":$(e)||oe(e)&&(e.toString===Ri||!K(e.toString))?Ai(e)?Gc(e.value):JSON.stringify(e,Oi,2):String(e),Oi=(e,t)=>Ai(t)?Oi(e,t.value):Yt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],o)=>(n[qs(s,o)+" =>"]=r,n),{})}:cn(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>qs(n))}:ot(t)?qs(t):oe(t)&&!$(t)&&!Ci(t)?String(t):t,qs=(e,t="")=>{var n;return ot(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.5.17 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let _e;class Pi{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=_e,!t&&_e&&(this.index=(_e.scopes||(_e.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0&&--this._on===0&&(_e=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n0)return;if(wn){let t=wn;for(wn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;_n;){let t=_n;for(_n=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function Fi(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Di(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),Dr(s),Qc(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function ar(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ji(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ji(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===On)||(e.globalVersion=On,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!ar(e))))return;e.flags|=2;const t=e.dep,n=ue,s=Ke;ue=e,Ke=!0;try{Fi(e);const r=e.fn(e._value);(t.version===0||Tt(r,e._value))&&(e.flags|=128,e._value=r,t.version++)}catch(r){throw t.version++,r}finally{ue=n,Ke=s,Di(e),e.flags&=-3}}function Dr(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let o=n.computed.deps;o;o=o.nextDep)Dr(o,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Qc(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Ke=!0;const Bi=[];function pt(){Bi.push(Ke),Ke=!1}function mt(){const e=Bi.pop();Ke=e===void 0?!0:e}function lo(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ue;ue=void 0;try{t()}finally{ue=n}}}let On=0;class Yc{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class jr{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!ue||!Ke||ue===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ue)n=this.activeLink=new Yc(ue,this),ue.deps?(n.prevDep=ue.depsTail,ue.depsTail.nextDep=n,ue.depsTail=n):ue.deps=ue.depsTail=n,$i(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=ue.depsTail,n.nextDep=void 0,ue.depsTail.nextDep=n,ue.depsTail=n,ue.deps===n&&(ue.deps=s)}return n}trigger(t){this.version++,On++,this.notify(t)}notify(t){kr();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Fr()}}}function $i(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)$i(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const ls=new WeakMap,jt=Symbol(""),ur=Symbol(""),Pn=Symbol("");function we(e,t,n){if(Ke&&ue){let s=ls.get(e);s||ls.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new jr),r.map=s,r.key=n),r.track()}}function ut(e,t,n,s,r,o){const i=ls.get(e);if(!i){On++;return}const l=c=>{c&&c.trigger()};if(kr(),t==="clear")i.forEach(l);else{const c=$(e),u=c&&Ir(n);if(c&&n==="length"){const a=Number(s);i.forEach((f,p)=>{(p==="length"||p===Pn||!ot(p)&&p>=a)&&l(f)})}else switch((n!==void 0||i.has(void 0))&&l(i.get(n)),u&&l(i.get(Pn)),t){case"add":c?u&&l(i.get("length")):(l(i.get(jt)),Yt(e)&&l(i.get(ur)));break;case"delete":c||(l(i.get(jt)),Yt(e)&&l(i.get(ur)));break;case"set":Yt(e)&&l(i.get(jt));break}}Fr()}function Zc(e,t){const n=ls.get(e);return n&&n.get(t)}function zt(e){const t=Q(e);return t===e?t:(we(t,"iterate",Pn),He(e)?t:t.map(be))}function xs(e){return we(e=Q(e),"iterate",Pn),e}const ea={__proto__:null,[Symbol.iterator](){return Ws(this,Symbol.iterator,be)},concat(...e){return zt(this).concat(...e.map(t=>$(t)?zt(t):t))},entries(){return Ws(this,"entries",e=>(e[1]=be(e[1]),e))},every(e,t){return lt(this,"every",e,t,void 0,arguments)},filter(e,t){return lt(this,"filter",e,t,n=>n.map(be),arguments)},find(e,t){return lt(this,"find",e,t,be,arguments)},findIndex(e,t){return lt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return lt(this,"findLast",e,t,be,arguments)},findLastIndex(e,t){return lt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return lt(this,"forEach",e,t,void 0,arguments)},includes(...e){return zs(this,"includes",e)},indexOf(...e){return zs(this,"indexOf",e)},join(e){return zt(this).join(e)},lastIndexOf(...e){return zs(this,"lastIndexOf",e)},map(e,t){return lt(this,"map",e,t,void 0,arguments)},pop(){return hn(this,"pop")},push(...e){return hn(this,"push",e)},reduce(e,...t){return co(this,"reduce",e,t)},reduceRight(e,...t){return co(this,"reduceRight",e,t)},shift(){return hn(this,"shift")},some(e,t){return lt(this,"some",e,t,void 0,arguments)},splice(...e){return hn(this,"splice",e)},toReversed(){return zt(this).toReversed()},toSorted(e){return zt(this).toSorted(e)},toSpliced(...e){return zt(this).toSpliced(...e)},unshift(...e){return hn(this,"unshift",e)},values(){return Ws(this,"values",be)}};function Ws(e,t,n){const s=xs(e),r=s[t]();return s!==e&&!He(e)&&(r._next=r.next,r.next=()=>{const o=r._next();return o.value&&(o.value=n(o.value)),o}),r}const ta=Array.prototype;function lt(e,t,n,s,r,o){const i=xs(e),l=i!==e&&!He(e),c=i[t];if(c!==ta[t]){const f=c.apply(e,o);return l?be(f):f}let u=n;i!==e&&(l?u=function(f,p){return n.call(this,be(f),p,e)}:n.length>2&&(u=function(f,p){return n.call(this,f,p,e)}));const a=c.call(i,u,s);return l&&r?r(a):a}function co(e,t,n,s){const r=xs(e);let o=n;return r!==e&&(He(e)?n.length>3&&(o=function(i,l,c){return n.call(this,i,l,c,e)}):o=function(i,l,c){return n.call(this,i,be(l),c,e)}),r[t](o,...s)}function zs(e,t,n){const s=Q(e);we(s,"iterate",Pn);const r=s[t](...n);return(r===-1||r===!1)&&Ur(n[0])?(n[0]=Q(n[0]),s[t](...n)):r}function hn(e,t,n=[]){pt(),kr();const s=Q(e)[t].apply(e,n);return Fr(),mt(),s}const na=Pr("__proto__,__v_isRef,__isVue"),Ui=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ot));function sa(e){ot(e)||(e=String(e));const t=Q(this);return we(t,"has",e),t.hasOwnProperty(e)}class Hi{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,o=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return o;if(n==="__v_raw")return s===(r?o?ha:Wi:o?Ki:qi).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const i=$(t);if(!r){let c;if(i&&(c=ea[n]))return c;if(n==="hasOwnProperty")return sa}const l=Reflect.get(t,n,fe(t)?t:s);return(ot(n)?Ui.has(n):na(n))||(r||we(t,"get",n),o)?l:fe(l)?i&&Ir(n)?l:l.value:oe(l)?r?Ji(l):Hn(l):l}}class Vi extends Hi{constructor(t=!1){super(!1,t)}set(t,n,s,r){let o=t[n];if(!this._isShallow){const c=At(o);if(!He(s)&&!At(s)&&(o=Q(o),s=Q(s)),!$(t)&&fe(o)&&!fe(s))return c?!1:(o.value=s,!0)}const i=$(t)&&Ir(n)?Number(n)e,Gn=e=>Reflect.getPrototypeOf(e);function ca(e,t,n){return function(...s){const r=this.__v_raw,o=Q(r),i=Yt(o),l=e==="entries"||e===Symbol.iterator&&i,c=e==="keys"&&i,u=r[e](...s),a=n?fr:t?cs:be;return!t&&we(o,"iterate",c?ur:jt),{next(){const{value:f,done:p}=u.next();return p?{value:f,done:p}:{value:l?[a(f[0]),a(f[1])]:a(f),done:p}},[Symbol.iterator](){return this}}}}function Xn(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function aa(e,t){const n={get(r){const o=this.__v_raw,i=Q(o),l=Q(r);e||(Tt(r,l)&&we(i,"get",r),we(i,"get",l));const{has:c}=Gn(i),u=t?fr:e?cs:be;if(c.call(i,r))return u(o.get(r));if(c.call(i,l))return u(o.get(l));o!==i&&o.get(r)},get size(){const r=this.__v_raw;return!e&&we(Q(r),"iterate",jt),Reflect.get(r,"size",r)},has(r){const o=this.__v_raw,i=Q(o),l=Q(r);return e||(Tt(r,l)&&we(i,"has",r),we(i,"has",l)),r===l?o.has(r):o.has(r)||o.has(l)},forEach(r,o){const i=this,l=i.__v_raw,c=Q(l),u=t?fr:e?cs:be;return!e&&we(c,"iterate",jt),l.forEach((a,f)=>r.call(o,u(a),u(f),i))}};return ge(n,e?{add:Xn("add"),set:Xn("set"),delete:Xn("delete"),clear:Xn("clear")}:{add(r){!t&&!He(r)&&!At(r)&&(r=Q(r));const o=Q(this);return Gn(o).has.call(o,r)||(o.add(r),ut(o,"add",r,r)),this},set(r,o){!t&&!He(o)&&!At(o)&&(o=Q(o));const i=Q(this),{has:l,get:c}=Gn(i);let u=l.call(i,r);u||(r=Q(r),u=l.call(i,r));const a=c.call(i,r);return i.set(r,o),u?Tt(o,a)&&ut(i,"set",r,o):ut(i,"add",r,o),this},delete(r){const o=Q(this),{has:i,get:l}=Gn(o);let c=i.call(o,r);c||(r=Q(r),c=i.call(o,r)),l&&l.call(o,r);const u=o.delete(r);return c&&ut(o,"delete",r,void 0),u},clear(){const r=Q(this),o=r.size!==0,i=r.clear();return o&&ut(r,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=ca(r,e,t)}),n}function Br(e,t){const n=aa(e,t);return(s,r,o)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(se(n,r)&&r in s?n:s,r,o)}const ua={get:Br(!1,!1)},fa={get:Br(!1,!0)},da={get:Br(!0,!1)};const qi=new WeakMap,Ki=new WeakMap,Wi=new WeakMap,ha=new WeakMap;function pa(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function ma(e){return e.__v_skip||!Object.isExtensible(e)?0:pa(jc(e))}function Hn(e){return At(e)?e:$r(e,!1,oa,ua,qi)}function zi(e){return $r(e,!1,la,fa,Ki)}function Ji(e){return $r(e,!0,ia,da,Wi)}function $r(e,t,n,s,r){if(!oe(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=ma(e);if(o===0)return e;const i=r.get(e);if(i)return i;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function dt(e){return At(e)?dt(e.__v_raw):!!(e&&e.__v_isReactive)}function At(e){return!!(e&&e.__v_isReadonly)}function He(e){return!!(e&&e.__v_isShallow)}function Ur(e){return e?!!e.__v_raw:!1}function Q(e){const t=e&&e.__v_raw;return t?Q(t):e}function Hr(e){return!se(e,"__v_skip")&&Object.isExtensible(e)&&cr(e,"__v_skip",!0),e}const be=e=>oe(e)?Hn(e):e,cs=e=>oe(e)?Ji(e):e;function fe(e){return e?e.__v_isRef===!0:!1}function en(e){return Gi(e,!1)}function ga(e){return Gi(e,!0)}function Gi(e,t){return fe(e)?e:new ya(e,t)}class ya{constructor(t,n){this.dep=new jr,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:Q(t),this._value=n?t:be(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||He(t)||At(t);t=s?t:Q(t),Tt(t,n)&&(this._rawValue=t,this._value=s?t:be(t),this.dep.trigger())}}function Pe(e){return fe(e)?e.value:e}const ba={get:(e,t,n)=>t==="__v_raw"?e:Pe(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return fe(r)&&!fe(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function Xi(e){return dt(e)?e:new Proxy(e,ba)}function _a(e){const t=$(e)?new Array(e.length):{};for(const n in e)t[n]=Qi(e,n);return t}class wa{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Zc(Q(this._object),this._key)}}class va{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Ea(e,t,n){return fe(e)?e:K(e)?new va(e):oe(e)&&arguments.length>1?Qi(e,t,n):en(e)}function Qi(e,t,n){const s=e[t];return fe(s)?s:new wa(e,t,n)}class Sa{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new jr(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=On-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&ue!==this)return ki(this,!0),!0}get value(){const t=this.dep.track();return ji(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function xa(e,t,n=!1){let s,r;return K(e)?s=e:(s=e.get,r=e.set),new Sa(s,r,n)}const Qn={},as=new WeakMap;let Mt;function Ra(e,t=!1,n=Mt){if(n){let s=as.get(n);s||as.set(n,s=[]),s.push(e)}}function Ca(e,t,n=ce){const{immediate:s,deep:r,once:o,scheduler:i,augmentJob:l,call:c}=n,u=L=>r?L:He(L)||r===!1||r===0?ft(L,1):ft(L);let a,f,p,m,y=!1,_=!1;if(fe(e)?(f=()=>e.value,y=He(e)):dt(e)?(f=()=>u(e),y=!0):$(e)?(_=!0,y=e.some(L=>dt(L)||He(L)),f=()=>e.map(L=>{if(fe(L))return L.value;if(dt(L))return u(L);if(K(L))return c?c(L,2):L()})):K(e)?t?f=c?()=>c(e,2):e:f=()=>{if(p){pt();try{p()}finally{mt()}}const L=Mt;Mt=a;try{return c?c(e,3,[m]):e(m)}finally{Mt=L}}:f=rt,t&&r){const L=f,j=r===!0?1/0:r;f=()=>ft(L(),j)}const x=Ni(),A=()=>{a.stop(),x&&x.active&&Nr(x.effects,a)};if(o&&t){const L=t;t=(...j)=>{L(...j),A()}}let C=_?new Array(e.length).fill(Qn):Qn;const P=L=>{if(!(!(a.flags&1)||!a.dirty&&!L))if(t){const j=a.run();if(r||y||(_?j.some((X,z)=>Tt(X,C[z])):Tt(j,C))){p&&p();const X=Mt;Mt=a;try{const z=[j,C===Qn?void 0:_&&C[0]===Qn?[]:C,m];C=j,c?c(t,3,z):t(...z)}finally{Mt=X}}}else a.run()};return l&&l(P),a=new Ii(f),a.scheduler=i?()=>i(P,!1):P,m=L=>Ra(L,!1,a),p=a.onStop=()=>{const L=as.get(a);if(L){if(c)c(L,4);else for(const j of L)j();as.delete(a)}},t?s?P(!0):C=a.run():i?i(P.bind(null,!0),!0):a.run(),A.pause=a.pause.bind(a),A.resume=a.resume.bind(a),A.stop=A,A}function ft(e,t=1/0,n){if(t<=0||!oe(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,fe(e))ft(e.value,t,n);else if($(e))for(let s=0;s{ft(s,t,n)});else if(Ci(e)){for(const s in e)ft(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&ft(e[s],t,n)}return e}/** +* @vue/runtime-core v3.5.17 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function Vn(e,t,n,s){try{return s?e(...s):e()}catch(r){Rs(r,t,n)}}function We(e,t,n,s){if(K(e)){const r=Vn(e,t,n,s);return r&&xi(r)&&r.catch(o=>{Rs(o,t,n)}),r}if($(e)){const r=[];for(let o=0;o>>1,r=xe[s],o=Ln(r);o=Ln(n)?xe.push(e):xe.splice(Aa(t),0,e),e.flags|=1,Zi()}}function Zi(){us||(us=Yi.then(tl))}function Oa(e){$(e)?Zt.push(...e):Et&&e.id===-1?Et.splice(Gt+1,0,e):e.flags&1||(Zt.push(e),e.flags|=1),Zi()}function ao(e,t,n=nt+1){for(;nLn(n)-Ln(s));if(Zt.length=0,Et){Et.push(...t);return}for(Et=t,Gt=0;Gte.id==null?e.flags&2?-1:1/0:e.id;function tl(e){try{for(nt=0;nt{s._d&&vo(-1);const o=fs(t);let i;try{i=e(...r)}finally{fs(o),s._d&&vo(1)}return i};return s._n=!0,s._c=!0,s._d=!0,s}function Fp(e,t){if(Ce===null)return e;const n=Ns(Ce),s=e.dirs||(e.dirs=[]);for(let r=0;re.__isTeleport,St=Symbol("_leaveCb"),Yn=Symbol("_enterCb");function rl(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Os(()=>{e.isMounted=!0}),dl(()=>{e.isUnmounting=!0}),e}const $e=[Function,Array],ol={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:$e,onEnter:$e,onAfterEnter:$e,onEnterCancelled:$e,onBeforeLeave:$e,onLeave:$e,onAfterLeave:$e,onLeaveCancelled:$e,onBeforeAppear:$e,onAppear:$e,onAfterAppear:$e,onAppearCancelled:$e},il=e=>{const t=e.subTree;return t.component?il(t.component):t},La={name:"BaseTransition",props:ol,setup(e,{slots:t}){const n=kl(),s=rl();return()=>{const r=t.default&&qr(t.default(),!0);if(!r||!r.length)return;const o=ll(r),i=Q(e),{mode:l}=i;if(s.isLeaving)return Js(o);const c=uo(o);if(!c)return Js(o);let u=Nn(c,i,s,n,f=>u=f);c.type!==Re&&Ht(c,u);let a=n.subTree&&uo(n.subTree);if(a&&a.type!==Re&&!Ft(c,a)&&il(n).type!==Re){let f=Nn(a,i,s,n);if(Ht(a,f),l==="out-in"&&c.type!==Re)return s.isLeaving=!0,f.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete f.afterLeave,a=void 0},Js(o);l==="in-out"&&c.type!==Re?f.delayLeave=(p,m,y)=>{const _=cl(s,a);_[String(a.key)]=a,p[St]=()=>{m(),p[St]=void 0,delete u.delayedLeave,a=void 0},u.delayedLeave=()=>{y(),delete u.delayedLeave,a=void 0}}:a=void 0}else a&&(a=void 0);return o}}};function ll(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==Re){t=n;break}}return t}const Na=La;function cl(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function Nn(e,t,n,s,r){const{appear:o,mode:i,persisted:l=!1,onBeforeEnter:c,onEnter:u,onAfterEnter:a,onEnterCancelled:f,onBeforeLeave:p,onLeave:m,onAfterLeave:y,onLeaveCancelled:_,onBeforeAppear:x,onAppear:A,onAfterAppear:C,onAppearCancelled:P}=t,L=String(e.key),j=cl(n,e),X=(I,W)=>{I&&We(I,s,9,W)},z=(I,W)=>{const ee=W[1];X(I,W),$(I)?I.every(F=>F.length<=1)&&ee():I.length<=1&&ee()},V={mode:i,persisted:l,beforeEnter(I){let W=c;if(!n.isMounted)if(o)W=x||c;else return;I[St]&&I[St](!0);const ee=j[L];ee&&Ft(e,ee)&&ee.el[St]&&ee.el[St](),X(W,[I])},enter(I){let W=u,ee=a,F=f;if(!n.isMounted)if(o)W=A||u,ee=C||a,F=P||f;else return;let Y=!1;const pe=I[Yn]=Ee=>{Y||(Y=!0,Ee?X(F,[I]):X(ee,[I]),V.delayedLeave&&V.delayedLeave(),I[Yn]=void 0)};W?z(W,[I,pe]):pe()},leave(I,W){const ee=String(e.key);if(I[Yn]&&I[Yn](!0),n.isUnmounting)return W();X(p,[I]);let F=!1;const Y=I[St]=pe=>{F||(F=!0,W(),pe?X(_,[I]):X(y,[I]),I[St]=void 0,j[ee]===e&&delete j[ee])};j[ee]=e,m?z(m,[I,Y]):Y()},clone(I){const W=Nn(I,t,n,s,r);return r&&r(W),W}};return V}function Js(e){if(Ts(e))return e=Ot(e),e.children=null,e}function uo(e){if(!Ts(e))return sl(e.type)&&e.children?ll(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&K(n.default))return n.default()}}function Ht(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Ht(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function qr(e,t=!1,n){let s=[],r=0;for(let o=0;o1)for(let o=0;ovn(y,t&&($(t)?t[_]:t),n,s,r));return}if(En(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&vn(e,t,n,s.component.subTree);return}const o=s.shapeFlag&4?Ns(s.component):s.el,i=r?null:o,{i:l,r:c}=e,u=t&&t.r,a=l.refs===ce?l.refs={}:l.refs,f=l.setupState,p=Q(f),m=f===ce?()=>!1:y=>se(p,y);if(u!=null&&u!==c&&(de(u)?(a[u]=null,m(u)&&(f[u]=null)):fe(u)&&(u.value=null)),K(c))Vn(c,l,12,[i,a]);else{const y=de(c),_=fe(c);if(y||_){const x=()=>{if(e.f){const A=y?m(c)?f[c]:a[c]:c.value;r?$(A)&&Nr(A,o):$(A)?A.includes(o)||A.push(o):y?(a[c]=[o],m(c)&&(f[c]=a[c])):(c.value=[o],e.k&&(a[e.k]=c.value))}else y?(a[c]=i,m(c)&&(f[c]=i)):_&&(c.value=i,e.k&&(a[e.k]=i))};i?(x.id=-1,ke(x,n)):x()}}}Es().requestIdleCallback;Es().cancelIdleCallback;const En=e=>!!e.type.__asyncLoader,Ts=e=>e.type.__isKeepAlive;function Ia(e,t){ul(e,"a",t)}function Ma(e,t){ul(e,"da",t)}function ul(e,t,n=ye){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(As(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Ts(r.parent.vnode)&&ka(s,t,n,r),r=r.parent}}function ka(e,t,n,s){const r=As(t,e,s,!0);Kr(()=>{Nr(s[t],r)},n)}function As(e,t,n=ye,s=!1){if(n){const r=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...i)=>{pt();const l=Kn(n),c=We(t,n,e,i);return l(),mt(),c});return s?r.unshift(o):r.push(o),o}}const gt=e=>(t,n=ye)=>{(!kn||e==="sp")&&As(e,(...s)=>t(...s),n)},Fa=gt("bm"),Os=gt("m"),Da=gt("bu"),fl=gt("u"),dl=gt("bum"),Kr=gt("um"),ja=gt("sp"),Ba=gt("rtg"),$a=gt("rtc");function Ua(e,t=ye){As("ec",e,t)}const hl="components";function Dp(e,t){return gl(hl,e,!0,t)||e}const pl=Symbol.for("v-ndc");function ml(e){return de(e)?gl(hl,e,!1)||e:e||pl}function gl(e,t,n=!0,s=!1){const r=Ce||ye;if(r){const o=r.type;{const l=Nu(o,!1);if(l&&(l===t||l===Ve(t)||l===vs(Ve(t))))return o}const i=fo(r[e]||o[e],t)||fo(r.appContext[e],t);return!i&&s?o:i}}function fo(e,t){return e&&(e[t]||e[Ve(t)]||e[vs(Ve(t))])}function Ha(e,t,n,s){let r;const o=n,i=$(e);if(i||de(e)){const l=i&&dt(e);let c=!1,u=!1;l&&(c=!He(e),u=At(e),e=xs(e)),r=new Array(e.length);for(let a=0,f=e.length;at(l,c,void 0,o));else{const l=Object.keys(e);r=new Array(l.length);for(let c=0,u=l.length;ce?Fl(e)?Ns(e):dr(e.parent):null,Sn=ge(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>dr(e.parent),$root:e=>dr(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>bl(e),$forceUpdate:e=>e.f||(e.f=()=>{Vr(e.update)}),$nextTick:e=>e.n||(e.n=Cs.bind(e.proxy)),$watch:e=>fu.bind(e)}),Gs=(e,t)=>e!==ce&&!e.__isScriptSetup&&se(e,t),Va={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:o,accessCache:i,type:l,appContext:c}=e;let u;if(t[0]!=="$"){const m=i[t];if(m!==void 0)switch(m){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return o[t]}else{if(Gs(s,t))return i[t]=1,s[t];if(r!==ce&&se(r,t))return i[t]=2,r[t];if((u=e.propsOptions[0])&&se(u,t))return i[t]=3,o[t];if(n!==ce&&se(n,t))return i[t]=4,n[t];hr&&(i[t]=0)}}const a=Sn[t];let f,p;if(a)return t==="$attrs"&&we(e.attrs,"get",""),a(e);if((f=l.__cssModules)&&(f=f[t]))return f;if(n!==ce&&se(n,t))return i[t]=4,n[t];if(p=c.config.globalProperties,se(p,t))return p[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:o}=e;return Gs(r,t)?(r[t]=n,!0):s!==ce&&se(s,t)?(s[t]=n,!0):se(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,propsOptions:o}},i){let l;return!!n[i]||e!==ce&&se(e,i)||Gs(t,i)||(l=o[0])&&se(l,i)||se(s,i)||se(Sn,i)||se(r.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:se(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function ho(e){return $(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let hr=!0;function qa(e){const t=bl(e),n=e.proxy,s=e.ctx;hr=!1,t.beforeCreate&&po(t.beforeCreate,e,"bc");const{data:r,computed:o,methods:i,watch:l,provide:c,inject:u,created:a,beforeMount:f,mounted:p,beforeUpdate:m,updated:y,activated:_,deactivated:x,beforeDestroy:A,beforeUnmount:C,destroyed:P,unmounted:L,render:j,renderTracked:X,renderTriggered:z,errorCaptured:V,serverPrefetch:I,expose:W,inheritAttrs:ee,components:F,directives:Y,filters:pe}=t;if(u&&Ka(u,s,null),i)for(const G in i){const te=i[G];K(te)&&(s[G]=te.bind(n))}if(r){const G=r.call(n,n);oe(G)&&(e.data=Hn(G))}if(hr=!0,o)for(const G in o){const te=o[G],it=K(te)?te.bind(n,n):K(te.get)?te.get.bind(n,n):rt,yt=!K(te)&&K(te.set)?te.set.bind(n):rt,Ge=De({get:it,set:yt});Object.defineProperty(s,G,{enumerable:!0,configurable:!0,get:()=>Ge.value,set:Te=>Ge.value=Te})}if(l)for(const G in l)yl(l[G],s,n,G);if(c){const G=K(c)?c.call(n):c;Reflect.ownKeys(G).forEach(te=>{$t(te,G[te])})}a&&po(a,e,"c");function ie(G,te){$(te)?te.forEach(it=>G(it.bind(n))):te&&G(te.bind(n))}if(ie(Fa,f),ie(Os,p),ie(Da,m),ie(fl,y),ie(Ia,_),ie(Ma,x),ie(Ua,V),ie($a,X),ie(Ba,z),ie(dl,C),ie(Kr,L),ie(ja,I),$(W))if(W.length){const G=e.exposed||(e.exposed={});W.forEach(te=>{Object.defineProperty(G,te,{get:()=>n[te],set:it=>n[te]=it})})}else e.exposed||(e.exposed={});j&&e.render===rt&&(e.render=j),ee!=null&&(e.inheritAttrs=ee),F&&(e.components=F),Y&&(e.directives=Y),I&&al(e)}function Ka(e,t,n=rt){$(e)&&(e=pr(e));for(const s in e){const r=e[s];let o;oe(r)?"default"in r?o=Le(r.from||s,r.default,!0):o=Le(r.from||s):o=Le(r),fe(o)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>o.value,set:i=>o.value=i}):t[s]=o}}function po(e,t,n){We($(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function yl(e,t,n,s){let r=s.includes(".")?Pl(n,s):()=>n[s];if(de(e)){const o=t[e];K(o)&&xn(r,o)}else if(K(e))xn(r,e.bind(n));else if(oe(e))if($(e))e.forEach(o=>yl(o,t,n,s));else{const o=K(e.handler)?e.handler.bind(n):t[e.handler];K(o)&&xn(r,o,e)}}function bl(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:o,config:{optionMergeStrategies:i}}=e.appContext,l=o.get(t);let c;return l?c=l:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(u=>hs(c,u,i,!0)),hs(c,t,i)),oe(t)&&o.set(t,c),c}function hs(e,t,n,s=!1){const{mixins:r,extends:o}=t;o&&hs(e,o,n,!0),r&&r.forEach(i=>hs(e,i,n,!0));for(const i in t)if(!(s&&i==="expose")){const l=Wa[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const Wa={data:mo,props:go,emits:go,methods:yn,computed:yn,beforeCreate:Se,created:Se,beforeMount:Se,mounted:Se,beforeUpdate:Se,updated:Se,beforeDestroy:Se,beforeUnmount:Se,destroyed:Se,unmounted:Se,activated:Se,deactivated:Se,errorCaptured:Se,serverPrefetch:Se,components:yn,directives:yn,watch:Ja,provide:mo,inject:za};function mo(e,t){return t?e?function(){return ge(K(e)?e.call(this,this):e,K(t)?t.call(this,this):t)}:t:e}function za(e,t){return yn(pr(e),pr(t))}function pr(e){if($(e)){const t={};for(let n=0;n1)return n&&K(t)?t.call(s&&s.proxy):t}}function Qa(){return!!(ye||Ce||Bt)}const wl={},vl=()=>Object.create(wl),El=e=>Object.getPrototypeOf(e)===wl;function Ya(e,t,n,s=!1){const r={},o=vl();e.propsDefaults=Object.create(null),Sl(e,t,r,o);for(const i in e.propsOptions[0])i in r||(r[i]=void 0);n?e.props=s?r:zi(r):e.type.props?e.props=r:e.props=o,e.attrs=o}function Za(e,t,n,s){const{props:r,attrs:o,vnode:{patchFlag:i}}=e,l=Q(r),[c]=e.propsOptions;let u=!1;if((s||i>0)&&!(i&16)){if(i&8){const a=e.vnode.dynamicProps;for(let f=0;f{c=!0;const[p,m]=xl(f,t,!0);ge(i,p),m&&l.push(...m)};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}if(!o&&!c)return oe(e)&&s.set(e,Qt),Qt;if($(o))for(let a=0;ae[0]==="_"||e==="$stable",zr=e=>$(e)?e.map(st):[st(e)],tu=(e,t,n)=>{if(t._n)return t;const s=ds((...r)=>zr(t(...r)),n);return s._c=!1,s},Rl=(e,t,n)=>{const s=e._ctx;for(const r in e){if(Wr(r))continue;const o=e[r];if(K(o))t[r]=tu(r,o,s);else if(o!=null){const i=zr(o);t[r]=()=>i}}},Cl=(e,t)=>{const n=zr(t);e.slots.default=()=>n},Tl=(e,t,n)=>{for(const s in t)(n||!Wr(s))&&(e[s]=t[s])},nu=(e,t,n)=>{const s=e.slots=vl();if(e.vnode.shapeFlag&32){const r=t.__;r&&cr(s,"__",r,!0);const o=t._;o?(Tl(s,t,n),n&&cr(s,"_",o,!0)):Rl(t,s)}else t&&Cl(e,t)},su=(e,t,n)=>{const{vnode:s,slots:r}=e;let o=!0,i=ce;if(s.shapeFlag&32){const l=t._;l?n&&l===1?o=!1:Tl(r,t,n):(o=!t.$stable,Rl(t,r)),i=t}else t&&(Cl(e,t),i={default:1});if(o)for(const l in r)!Wr(l)&&i[l]==null&&delete r[l]},ke=bu;function ru(e){return ou(e)}function ou(e,t){const n=Es();n.__VUE__=!0;const{insert:s,remove:r,patchProp:o,createElement:i,createText:l,createComment:c,setText:u,setElementText:a,parentNode:f,nextSibling:p,setScopeId:m=rt,insertStaticContent:y}=e,_=(d,h,g,w=null,S=null,E=null,N=void 0,O=null,T=!!h.dynamicChildren)=>{if(d===h)return;d&&!Ft(d,h)&&(w=v(d),Te(d,S,E,!0),d=null),h.patchFlag===-2&&(T=!1,h.dynamicChildren=null);const{type:R,ref:H,shapeFlag:k}=h;switch(R){case Ls:x(d,h,g,w);break;case Re:A(d,h,g,w);break;case Qs:d==null&&C(h,g,w,N);break;case Ue:F(d,h,g,w,S,E,N,O,T);break;default:k&1?j(d,h,g,w,S,E,N,O,T):k&6?Y(d,h,g,w,S,E,N,O,T):(k&64||k&128)&&R.process(d,h,g,w,S,E,N,O,T,B)}H!=null&&S?vn(H,d&&d.ref,E,h||d,!h):H==null&&d&&d.ref!=null&&vn(d.ref,null,E,d,!0)},x=(d,h,g,w)=>{if(d==null)s(h.el=l(h.children),g,w);else{const S=h.el=d.el;h.children!==d.children&&u(S,h.children)}},A=(d,h,g,w)=>{d==null?s(h.el=c(h.children||""),g,w):h.el=d.el},C=(d,h,g,w)=>{[d.el,d.anchor]=y(d.children,h,g,w,d.el,d.anchor)},P=({el:d,anchor:h},g,w)=>{let S;for(;d&&d!==h;)S=p(d),s(d,g,w),d=S;s(h,g,w)},L=({el:d,anchor:h})=>{let g;for(;d&&d!==h;)g=p(d),r(d),d=g;r(h)},j=(d,h,g,w,S,E,N,O,T)=>{h.type==="svg"?N="svg":h.type==="math"&&(N="mathml"),d==null?X(h,g,w,S,E,N,O,T):I(d,h,S,E,N,O,T)},X=(d,h,g,w,S,E,N,O)=>{let T,R;const{props:H,shapeFlag:k,transition:U,dirs:q}=d;if(T=d.el=i(d.type,E,H&&H.is,H),k&8?a(T,d.children):k&16&&V(d.children,T,null,w,S,Xs(d,E),N,O),q&&Lt(d,null,w,"created"),z(T,d,d.scopeId,N,w),H){for(const ae in H)ae!=="value"&&!bn(ae)&&o(T,ae,null,H[ae],E,w);"value"in H&&o(T,"value",null,H.value,E),(R=H.onVnodeBeforeMount)&&Ze(R,w,d)}q&&Lt(d,null,w,"beforeMount");const Z=iu(S,U);Z&&U.beforeEnter(T),s(T,h,g),((R=H&&H.onVnodeMounted)||Z||q)&&ke(()=>{R&&Ze(R,w,d),Z&&U.enter(T),q&&Lt(d,null,w,"mounted")},S)},z=(d,h,g,w,S)=>{if(g&&m(d,g),w)for(let E=0;E{for(let R=T;R{const O=h.el=d.el;let{patchFlag:T,dynamicChildren:R,dirs:H}=h;T|=d.patchFlag&16;const k=d.props||ce,U=h.props||ce;let q;if(g&&Nt(g,!1),(q=U.onVnodeBeforeUpdate)&&Ze(q,g,h,d),H&&Lt(h,d,g,"beforeUpdate"),g&&Nt(g,!0),(k.innerHTML&&U.innerHTML==null||k.textContent&&U.textContent==null)&&a(O,""),R?W(d.dynamicChildren,R,O,g,w,Xs(h,S),E):N||te(d,h,O,null,g,w,Xs(h,S),E,!1),T>0){if(T&16)ee(O,k,U,g,S);else if(T&2&&k.class!==U.class&&o(O,"class",null,U.class,S),T&4&&o(O,"style",k.style,U.style,S),T&8){const Z=h.dynamicProps;for(let ae=0;ae{q&&Ze(q,g,h,d),H&&Lt(h,d,g,"updated")},w)},W=(d,h,g,w,S,E,N)=>{for(let O=0;O{if(h!==g){if(h!==ce)for(const E in h)!bn(E)&&!(E in g)&&o(d,E,h[E],null,S,w);for(const E in g){if(bn(E))continue;const N=g[E],O=h[E];N!==O&&E!=="value"&&o(d,E,O,N,S,w)}"value"in g&&o(d,"value",h.value,g.value,S)}},F=(d,h,g,w,S,E,N,O,T)=>{const R=h.el=d?d.el:l(""),H=h.anchor=d?d.anchor:l("");let{patchFlag:k,dynamicChildren:U,slotScopeIds:q}=h;q&&(O=O?O.concat(q):q),d==null?(s(R,g,w),s(H,g,w),V(h.children||[],g,H,S,E,N,O,T)):k>0&&k&64&&U&&d.dynamicChildren?(W(d.dynamicChildren,U,g,S,E,N,O),(h.key!=null||S&&h===S.subTree)&&Al(d,h,!0)):te(d,h,g,H,S,E,N,O,T)},Y=(d,h,g,w,S,E,N,O,T)=>{h.slotScopeIds=O,d==null?h.shapeFlag&512?S.ctx.activate(h,g,w,N,T):pe(h,g,w,S,E,N,T):Ee(d,h,T)},pe=(d,h,g,w,S,E,N)=>{const O=d.component=Tu(d,w,S);if(Ts(d)&&(O.ctx.renderer=B),Au(O,!1,N),O.asyncDep){if(S&&S.registerDep(O,ie,N),!d.el){const T=O.subTree=me(Re);A(null,T,h,g)}}else ie(O,d,h,g,S,E,N)},Ee=(d,h,g)=>{const w=h.component=d.component;if(gu(d,h,g))if(w.asyncDep&&!w.asyncResolved){G(w,h,g);return}else w.next=h,w.update();else h.el=d.el,w.vnode=h},ie=(d,h,g,w,S,E,N)=>{const O=()=>{if(d.isMounted){let{next:k,bu:U,u:q,parent:Z,vnode:ae}=d;{const Qe=Ol(d);if(Qe){k&&(k.el=ae.el,G(d,k,N)),Qe.asyncDep.then(()=>{d.isUnmounted||O()});return}}let re=k,Ae;Nt(d,!1),k?(k.el=ae.el,G(d,k,N)):k=ae,U&&es(U),(Ae=k.props&&k.props.onVnodeBeforeUpdate)&&Ze(Ae,Z,k,ae),Nt(d,!0);const Oe=_o(d),Xe=d.subTree;d.subTree=Oe,_(Xe,Oe,f(Xe.el),v(Xe),d,S,E),k.el=Oe.el,re===null&&yu(d,Oe.el),q&&ke(q,S),(Ae=k.props&&k.props.onVnodeUpdated)&&ke(()=>Ze(Ae,Z,k,ae),S)}else{let k;const{el:U,props:q}=h,{bm:Z,m:ae,parent:re,root:Ae,type:Oe}=d,Xe=En(h);Nt(d,!1),Z&&es(Z),!Xe&&(k=q&&q.onVnodeBeforeMount)&&Ze(k,re,h),Nt(d,!0);{Ae.ce&&Ae.ce._def.shadowRoot!==!1&&Ae.ce._injectChildStyle(Oe);const Qe=d.subTree=_o(d);_(null,Qe,g,w,d,S,E),h.el=Qe.el}if(ae&&ke(ae,S),!Xe&&(k=q&&q.onVnodeMounted)){const Qe=h;ke(()=>Ze(k,re,Qe),S)}(h.shapeFlag&256||re&&En(re.vnode)&&re.vnode.shapeFlag&256)&&d.a&&ke(d.a,S),d.isMounted=!0,h=g=w=null}};d.scope.on();const T=d.effect=new Ii(O);d.scope.off();const R=d.update=T.run.bind(T),H=d.job=T.runIfDirty.bind(T);H.i=d,H.id=d.uid,T.scheduler=()=>Vr(H),Nt(d,!0),R()},G=(d,h,g)=>{h.component=d;const w=d.vnode.props;d.vnode=h,d.next=null,Za(d,h.props,w,g),su(d,h.children,g),pt(),ao(d),mt()},te=(d,h,g,w,S,E,N,O,T=!1)=>{const R=d&&d.children,H=d?d.shapeFlag:0,k=h.children,{patchFlag:U,shapeFlag:q}=h;if(U>0){if(U&128){yt(R,k,g,w,S,E,N,O,T);return}else if(U&256){it(R,k,g,w,S,E,N,O,T);return}}q&8?(H&16&&Be(R,S,E),k!==R&&a(g,k)):H&16?q&16?yt(R,k,g,w,S,E,N,O,T):Be(R,S,E,!0):(H&8&&a(g,""),q&16&&V(k,g,w,S,E,N,O,T))},it=(d,h,g,w,S,E,N,O,T)=>{d=d||Qt,h=h||Qt;const R=d.length,H=h.length,k=Math.min(R,H);let U;for(U=0;UH?Be(d,S,E,!0,!1,k):V(h,g,w,S,E,N,O,T,k)},yt=(d,h,g,w,S,E,N,O,T)=>{let R=0;const H=h.length;let k=d.length-1,U=H-1;for(;R<=k&&R<=U;){const q=d[R],Z=h[R]=T?xt(h[R]):st(h[R]);if(Ft(q,Z))_(q,Z,g,null,S,E,N,O,T);else break;R++}for(;R<=k&&R<=U;){const q=d[k],Z=h[U]=T?xt(h[U]):st(h[U]);if(Ft(q,Z))_(q,Z,g,null,S,E,N,O,T);else break;k--,U--}if(R>k){if(R<=U){const q=U+1,Z=qU)for(;R<=k;)Te(d[R],S,E,!0),R++;else{const q=R,Z=R,ae=new Map;for(R=Z;R<=U;R++){const Me=h[R]=T?xt(h[R]):st(h[R]);Me.key!=null&&ae.set(Me.key,R)}let re,Ae=0;const Oe=U-Z+1;let Xe=!1,Qe=0;const dn=new Array(Oe);for(R=0;R=Oe){Te(Me,S,E,!0);continue}let Ye;if(Me.key!=null)Ye=ae.get(Me.key);else for(re=Z;re<=U;re++)if(dn[re-Z]===0&&Ft(Me,h[re])){Ye=re;break}Ye===void 0?Te(Me,S,E,!0):(dn[Ye-Z]=R+1,Ye>=Qe?Qe=Ye:Xe=!0,_(Me,h[Ye],g,null,S,E,N,O,T),Ae++)}const so=Xe?lu(dn):Qt;for(re=so.length-1,R=Oe-1;R>=0;R--){const Me=Z+R,Ye=h[Me],ro=Me+1{const{el:E,type:N,transition:O,children:T,shapeFlag:R}=d;if(R&6){Ge(d.component.subTree,h,g,w);return}if(R&128){d.suspense.move(h,g,w);return}if(R&64){N.move(d,h,g,B);return}if(N===Ue){s(E,h,g);for(let k=0;kO.enter(E),S);else{const{leave:k,delayLeave:U,afterLeave:q}=O,Z=()=>{d.ctx.isUnmounted?r(E):s(E,h,g)},ae=()=>{k(E,()=>{Z(),q&&q()})};U?U(E,Z,ae):ae()}else s(E,h,g)},Te=(d,h,g,w=!1,S=!1)=>{const{type:E,props:N,ref:O,children:T,dynamicChildren:R,shapeFlag:H,patchFlag:k,dirs:U,cacheIndex:q}=d;if(k===-2&&(S=!1),O!=null&&(pt(),vn(O,null,g,d,!0),mt()),q!=null&&(h.renderCache[q]=void 0),H&256){h.ctx.deactivate(d);return}const Z=H&1&&U,ae=!En(d);let re;if(ae&&(re=N&&N.onVnodeBeforeUnmount)&&Ze(re,h,d),H&6)Jn(d.component,g,w);else{if(H&128){d.suspense.unmount(g,w);return}Z&&Lt(d,null,h,"beforeUnmount"),H&64?d.type.remove(d,h,g,B,w):R&&!R.hasOnce&&(E!==Ue||k>0&&k&64)?Be(R,h,g,!1,!0):(E===Ue&&k&384||!S&&H&16)&&Be(T,h,g),w&&Kt(d)}(ae&&(re=N&&N.onVnodeUnmounted)||Z)&&ke(()=>{re&&Ze(re,h,d),Z&&Lt(d,null,h,"unmounted")},g)},Kt=d=>{const{type:h,el:g,anchor:w,transition:S}=d;if(h===Ue){Wt(g,w);return}if(h===Qs){L(d);return}const E=()=>{r(g),S&&!S.persisted&&S.afterLeave&&S.afterLeave()};if(d.shapeFlag&1&&S&&!S.persisted){const{leave:N,delayLeave:O}=S,T=()=>N(g,E);O?O(d.el,E,T):T()}else E()},Wt=(d,h)=>{let g;for(;d!==h;)g=p(d),r(d),d=g;r(h)},Jn=(d,h,g)=>{const{bum:w,scope:S,job:E,subTree:N,um:O,m:T,a:R,parent:H,slots:{__:k}}=d;bo(T),bo(R),w&&es(w),H&&$(k)&&k.forEach(U=>{H.renderCache[U]=void 0}),S.stop(),E&&(E.flags|=8,Te(N,d,h,g)),O&&ke(O,h),ke(()=>{d.isUnmounted=!0},h),h&&h.pendingBranch&&!h.isUnmounted&&d.asyncDep&&!d.asyncResolved&&d.suspenseId===h.pendingId&&(h.deps--,h.deps===0&&h.resolve())},Be=(d,h,g,w=!1,S=!1,E=0)=>{for(let N=E;N{if(d.shapeFlag&6)return v(d.component.subTree);if(d.shapeFlag&128)return d.suspense.next();const h=p(d.anchor||d.el),g=h&&h[Pa];return g?p(g):h};let D=!1;const M=(d,h,g)=>{d==null?h._vnode&&Te(h._vnode,null,null,!0):_(h._vnode||null,d,h,null,null,null,g),h._vnode=d,D||(D=!0,ao(),el(),D=!1)},B={p:_,um:Te,m:Ge,r:Kt,mt:pe,mc:V,pc:te,pbc:W,n:v,o:e};return{render:M,hydrate:void 0,createApp:Xa(M)}}function Xs({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Nt({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function iu(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Al(e,t,n=!1){const s=e.children,r=t.children;if($(s)&&$(r))for(let o=0;o>1,e[n[l]]0&&(t[s]=n[o-1]),n[o]=s)}}for(o=n.length,i=n[o-1];o-- >0;)n[o]=i,i=t[i];return n}function Ol(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Ol(t)}function bo(e){if(e)for(let t=0;tLe(cu);function uu(e,t){return Jr(e,null,t)}function xn(e,t,n){return Jr(e,t,n)}function Jr(e,t,n=ce){const{immediate:s,deep:r,flush:o,once:i}=n,l=ge({},n),c=t&&s||!t&&o!=="post";let u;if(kn){if(o==="sync"){const m=au();u=m.__watcherHandles||(m.__watcherHandles=[])}else if(!c){const m=()=>{};return m.stop=rt,m.resume=rt,m.pause=rt,m}}const a=ye;l.call=(m,y,_)=>We(m,a,y,_);let f=!1;o==="post"?l.scheduler=m=>{ke(m,a&&a.suspense)}:o!=="sync"&&(f=!0,l.scheduler=(m,y)=>{y?m():Vr(m)}),l.augmentJob=m=>{t&&(m.flags|=4),f&&(m.flags|=2,a&&(m.id=a.uid,m.i=a))};const p=Ca(e,t,l);return kn&&(u?u.push(p):c&&p()),p}function fu(e,t,n){const s=this.proxy,r=de(e)?e.includes(".")?Pl(s,e):()=>s[e]:e.bind(s,s);let o;K(t)?o=t:(o=t.handler,n=t);const i=Kn(this),l=Jr(r,o.bind(s),n);return i(),l}function Pl(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;rt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ve(t)}Modifiers`]||e[`${Pt(t)}Modifiers`];function hu(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||ce;let r=n;const o=t.startsWith("update:"),i=o&&du(s,t.slice(7));i&&(i.trim&&(r=n.map(a=>de(a)?a.trim():a)),i.number&&(r=n.map(is)));let l,c=s[l=Vs(t)]||s[l=Vs(Ve(t))];!c&&o&&(c=s[l=Vs(Pt(t))]),c&&We(c,e,6,r);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,We(u,e,6,r)}}function Ll(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const o=e.emits;let i={},l=!1;if(!K(e)){const c=u=>{const a=Ll(u,t,!0);a&&(l=!0,ge(i,a))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!o&&!l?(oe(e)&&s.set(e,null),null):($(o)?o.forEach(c=>i[c]=null):ge(i,o),oe(e)&&s.set(e,i),i)}function Ps(e,t){return!e||!_s(t)?!1:(t=t.slice(2).replace(/Once$/,""),se(e,t[0].toLowerCase()+t.slice(1))||se(e,Pt(t))||se(e,t))}function _o(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[o],slots:i,attrs:l,emit:c,render:u,renderCache:a,props:f,data:p,setupState:m,ctx:y,inheritAttrs:_}=e,x=fs(e);let A,C;try{if(n.shapeFlag&4){const L=r||s,j=L;A=st(u.call(j,L,a,f,m,p,y)),C=l}else{const L=t;A=st(L.length>1?L(f,{attrs:l,slots:i,emit:c}):L(f,null)),C=t.props?l:pu(l)}}catch(L){Rn.length=0,Rs(L,e,1),A=me(Re)}let P=A;if(C&&_!==!1){const L=Object.keys(C),{shapeFlag:j}=P;L.length&&j&7&&(o&&L.some(Lr)&&(C=mu(C,o)),P=Ot(P,C,!1,!0))}return n.dirs&&(P=Ot(P,null,!1,!0),P.dirs=P.dirs?P.dirs.concat(n.dirs):n.dirs),n.transition&&Ht(P,n.transition),A=P,fs(x),A}const pu=e=>{let t;for(const n in e)(n==="class"||n==="style"||_s(n))&&((t||(t={}))[n]=e[n]);return t},mu=(e,t)=>{const n={};for(const s in e)(!Lr(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function gu(e,t,n){const{props:s,children:r,component:o}=e,{props:i,children:l,patchFlag:c}=t,u=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?wo(s,i,u):!!i;if(c&8){const a=t.dynamicProps;for(let f=0;fe.__isSuspense;function bu(e,t){t&&t.pendingBranch?$(e)?t.effects.push(...e):t.effects.push(e):Oa(e)}const Ue=Symbol.for("v-fgt"),Ls=Symbol.for("v-txt"),Re=Symbol.for("v-cmt"),Qs=Symbol.for("v-stc"),Rn=[];let je=null;function qe(e=!1){Rn.push(je=e?null:[])}function _u(){Rn.pop(),je=Rn[Rn.length-1]||null}let In=1;function vo(e,t=!1){In+=e,e<0&&je&&t&&(je.hasOnce=!0)}function Il(e){return e.dynamicChildren=In>0?je||Qt:null,_u(),In>0&&je&&je.push(e),e}function Mn(e,t,n,s,r,o){return Il(Fe(e,t,n,s,r,o,!0))}function tn(e,t,n,s,r){return Il(me(e,t,n,s,r,!0))}function ps(e){return e?e.__v_isVNode===!0:!1}function Ft(e,t){return e.type===t.type&&e.key===t.key}const Ml=({key:e})=>e??null,ts=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?de(e)||fe(e)||K(e)?{i:Ce,r:e,k:t,f:!!n}:e:null);function Fe(e,t=null,n=null,s=0,r=null,o=e===Ue?0:1,i=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Ml(t),ref:t&&ts(t),scopeId:nl,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Ce};return l?(Gr(c,n),o&128&&e.normalize(c)):n&&(c.shapeFlag|=de(n)?8:16),In>0&&!i&&je&&(c.patchFlag>0||o&6)&&c.patchFlag!==32&&je.push(c),c}const me=wu;function wu(e,t=null,n=null,s=0,r=null,o=!1){if((!e||e===pl)&&(e=Re),ps(e)){const l=Ot(e,t,!0);return n&&Gr(l,n),In>0&&!o&&je&&(l.shapeFlag&6?je[je.indexOf(e)]=l:je.push(l)),l.patchFlag=-2,l}if(Iu(e)&&(e=e.__vccOpts),t){t=vu(t);let{class:l,style:c}=t;l&&!de(l)&&(t.class=an(l)),oe(c)&&(Ur(c)&&!$(c)&&(c=ge({},c)),t.style=Ss(c))}const i=de(e)?1:Nl(e)?128:sl(e)?64:oe(e)?4:K(e)?2:0;return Fe(e,t,n,s,r,i,o,!0)}function vu(e){return e?Ur(e)||El(e)?ge({},e):e:null}function Ot(e,t,n=!1,s=!1){const{props:r,ref:o,patchFlag:i,children:l,transition:c}=e,u=t?xu(r||{},t):r,a={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&Ml(u),ref:t&&t.ref?n&&o?$(o)?o.concat(ts(t)):[o,ts(t)]:ts(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ue?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ot(e.ssContent),ssFallback:e.ssFallback&&Ot(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&s&&Ht(a,c.clone(a)),a}function Eu(e=" ",t=0){return me(Ls,null,e,t)}function Su(e="",t=!1){return t?(qe(),tn(Re,null,e)):me(Re,null,e)}function st(e){return e==null||typeof e=="boolean"?me(Re):$(e)?me(Ue,null,e.slice()):ps(e)?xt(e):me(Ls,null,String(e))}function xt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ot(e)}function Gr(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if($(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),Gr(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!El(t)?t._ctx=Ce:r===3&&Ce&&(Ce.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else K(t)?(t={default:t,_ctx:Ce},n=32):(t=String(t),s&64?(n=16,t=[Eu(t)]):n=8);e.children=t,e.shapeFlag|=n}function xu(...e){const t={};for(let n=0;nye||Ce;let ms,gr;{const e=Es(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),o=>{r.length>1?r.forEach(i=>i(o)):r[0](o)}};ms=t("__VUE_INSTANCE_SETTERS__",n=>ye=n),gr=t("__VUE_SSR_SETTERS__",n=>kn=n)}const Kn=e=>{const t=ye;return ms(e),e.scope.on(),()=>{e.scope.off(),ms(t)}},Eo=()=>{ye&&ye.scope.off(),ms(null)};function Fl(e){return e.vnode.shapeFlag&4}let kn=!1;function Au(e,t=!1,n=!1){t&&gr(t);const{props:s,children:r}=e.vnode,o=Fl(e);Ya(e,s,o,t),nu(e,r,n||t);const i=o?Ou(e,t):void 0;return t&&gr(!1),i}function Ou(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Va);const{setup:s}=n;if(s){pt();const r=e.setupContext=s.length>1?Lu(e):null,o=Kn(e),i=Vn(s,e,0,[e.props,r]),l=xi(i);if(mt(),o(),(l||e.sp)&&!En(e)&&al(e),l){if(i.then(Eo,Eo),t)return i.then(c=>{So(e,c)}).catch(c=>{Rs(c,e,0)});e.asyncDep=i}else So(e,i)}else Dl(e)}function So(e,t,n){K(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:oe(t)&&(e.setupState=Xi(t)),Dl(e)}function Dl(e,t,n){const s=e.type;e.render||(e.render=s.render||rt);{const r=Kn(e);pt();try{qa(e)}finally{mt(),r()}}}const Pu={get(e,t){return we(e,"get",""),e[t]}};function Lu(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Pu),slots:e.slots,emit:e.emit,expose:t}}function Ns(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Xi(Hr(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Sn)return Sn[n](e)},has(t,n){return n in t||n in Sn}})):e.proxy}function Nu(e,t=!0){return K(e)?e.displayName||e.name:e.name||t&&e.__name}function Iu(e){return K(e)&&"__vccOpts"in e}const De=(e,t)=>xa(e,t,kn);function nn(e,t,n){const s=arguments.length;return s===2?oe(t)&&!$(t)?ps(t)?me(e,null,[t]):me(e,t):me(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&ps(n)&&(n=[n]),me(e,t,n))}const Mu="3.5.17";/** +* @vue/runtime-dom v3.5.17 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let yr;const xo=typeof window<"u"&&window.trustedTypes;if(xo)try{yr=xo.createPolicy("vue",{createHTML:e=>e})}catch{}const jl=yr?e=>yr.createHTML(e):e=>e,ku="http://www.w3.org/2000/svg",Fu="http://www.w3.org/1998/Math/MathML",at=typeof document<"u"?document:null,Ro=at&&at.createElement("template"),Du={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?at.createElementNS(ku,e):t==="mathml"?at.createElementNS(Fu,e):n?at.createElement(e,{is:n}):at.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>at.createTextNode(e),createComment:e=>at.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>at.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,o){const i=n?n.previousSibling:t.lastChild;if(r&&(r===o||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===o||!(r=r.nextSibling)););else{Ro.innerHTML=jl(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const l=Ro.content;if(s==="svg"||s==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},bt="transition",pn="animation",sn=Symbol("_vtc"),Bl={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},$l=ge({},ol,Bl),ju=e=>(e.displayName="Transition",e.props=$l,e),Bu=ju((e,{slots:t})=>nn(Na,Ul(e),t)),It=(e,t=[])=>{$(e)?e.forEach(n=>n(...t)):e&&e(...t)},Co=e=>e?$(e)?e.some(t=>t.length>1):e.length>1:!1;function Ul(e){const t={};for(const F in e)F in Bl||(t[F]=e[F]);if(e.css===!1)return t;const{name:n="v",type:s,duration:r,enterFromClass:o=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=o,appearActiveClass:u=i,appearToClass:a=l,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:m=`${n}-leave-to`}=e,y=$u(r),_=y&&y[0],x=y&&y[1],{onBeforeEnter:A,onEnter:C,onEnterCancelled:P,onLeave:L,onLeaveCancelled:j,onBeforeAppear:X=A,onAppear:z=C,onAppearCancelled:V=P}=t,I=(F,Y,pe,Ee)=>{F._enterCancelled=Ee,wt(F,Y?a:l),wt(F,Y?u:i),pe&&pe()},W=(F,Y)=>{F._isLeaving=!1,wt(F,f),wt(F,m),wt(F,p),Y&&Y()},ee=F=>(Y,pe)=>{const Ee=F?z:C,ie=()=>I(Y,F,pe);It(Ee,[Y,ie]),To(()=>{wt(Y,F?c:o),tt(Y,F?a:l),Co(Ee)||Ao(Y,s,_,ie)})};return ge(t,{onBeforeEnter(F){It(A,[F]),tt(F,o),tt(F,i)},onBeforeAppear(F){It(X,[F]),tt(F,c),tt(F,u)},onEnter:ee(!1),onAppear:ee(!0),onLeave(F,Y){F._isLeaving=!0;const pe=()=>W(F,Y);tt(F,f),F._enterCancelled?(tt(F,p),br()):(br(),tt(F,p)),To(()=>{F._isLeaving&&(wt(F,f),tt(F,m),Co(L)||Ao(F,s,x,pe))}),It(L,[F,pe])},onEnterCancelled(F){I(F,!1,void 0,!0),It(P,[F])},onAppearCancelled(F){I(F,!0,void 0,!0),It(V,[F])},onLeaveCancelled(F){W(F),It(j,[F])}})}function $u(e){if(e==null)return null;if(oe(e))return[Ys(e.enter),Ys(e.leave)];{const t=Ys(e);return[t,t]}}function Ys(e){return Uc(e)}function tt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[sn]||(e[sn]=new Set)).add(t)}function wt(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[sn];n&&(n.delete(t),n.size||(e[sn]=void 0))}function To(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Uu=0;function Ao(e,t,n,s){const r=e._endId=++Uu,o=()=>{r===e._endId&&s()};if(n!=null)return setTimeout(o,n);const{type:i,timeout:l,propCount:c}=Hl(e,t);if(!i)return s();const u=i+"end";let a=0;const f=()=>{e.removeEventListener(u,p),o()},p=m=>{m.target===e&&++a>=c&&f()};setTimeout(()=>{a(n[y]||"").split(", "),r=s(`${bt}Delay`),o=s(`${bt}Duration`),i=Oo(r,o),l=s(`${pn}Delay`),c=s(`${pn}Duration`),u=Oo(l,c);let a=null,f=0,p=0;t===bt?i>0&&(a=bt,f=i,p=o.length):t===pn?u>0&&(a=pn,f=u,p=c.length):(f=Math.max(i,u),a=f>0?i>u?bt:pn:null,p=a?a===bt?o.length:c.length:0);const m=a===bt&&/\b(transform|all)(,|$)/.test(s(`${bt}Property`).toString());return{type:a,timeout:f,propCount:p,hasTransform:m}}function Oo(e,t){for(;e.lengthPo(n)+Po(e[s])))}function Po(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function br(){return document.body.offsetHeight}function Hu(e,t,n){const s=e[sn];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Lo=Symbol("_vod"),Vu=Symbol("_vsh"),qu=Symbol(""),Ku=/(^|;)\s*display\s*:/;function Wu(e,t,n){const s=e.style,r=de(n);let o=!1;if(n&&!r){if(t)if(de(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&ns(s,l,"")}else for(const i in t)n[i]==null&&ns(s,i,"");for(const i in n)i==="display"&&(o=!0),ns(s,i,n[i])}else if(r){if(t!==n){const i=s[qu];i&&(n+=";"+i),s.cssText=n,o=Ku.test(n)}}else t&&e.removeAttribute("style");Lo in e&&(e[Lo]=o?s.display:"",e[Vu]&&(s.display="none"))}const No=/\s*!important$/;function ns(e,t,n){if($(n))n.forEach(s=>ns(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=zu(e,t);No.test(n)?e.setProperty(Pt(s),n.replace(No,""),"important"):e[s]=n}}const Io=["Webkit","Moz","ms"],Zs={};function zu(e,t){const n=Zs[t];if(n)return n;let s=Ve(t);if(s!=="filter"&&s in e)return Zs[t]=s;s=vs(s);for(let r=0;rer||(Qu.then(()=>er=0),er=Date.now());function Zu(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;We(ef(s,n.value),t,5,[s])};return n.value=e,n.attached=Yu(),n}function ef(e,t){if($(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>r=>!r._stopped&&s&&s(r))}else return t}const Bo=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,tf=(e,t,n,s,r,o)=>{const i=r==="svg";t==="class"?Hu(e,s,i):t==="style"?Wu(e,n,s):_s(t)?Lr(t)||Gu(e,t,n,s,o):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):nf(e,t,s,i))?(Fo(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&ko(e,t,s,i,o,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!de(s))?Fo(e,Ve(t),s,o,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),ko(e,t,s,i))};function nf(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Bo(t)&&K(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Bo(t)&&de(n)?!1:t in e}const Vl=new WeakMap,ql=new WeakMap,gs=Symbol("_moveCb"),$o=Symbol("_enterCb"),sf=e=>(delete e.props.mode,e),rf=sf({name:"TransitionGroup",props:ge({},$l,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=kl(),s=rl();let r,o;return fl(()=>{if(!r.length)return;const i=e.moveClass||`${e.name||"v"}-move`;if(!uf(r[0].el,n.vnode.el,i)){r=[];return}r.forEach(lf),r.forEach(cf);const l=r.filter(af);br(),l.forEach(c=>{const u=c.el,a=u.style;tt(u,i),a.transform=a.webkitTransform=a.transitionDuration="";const f=u[gs]=p=>{p&&p.target!==u||(!p||/transform$/.test(p.propertyName))&&(u.removeEventListener("transitionend",f),u[gs]=null,wt(u,i))};u.addEventListener("transitionend",f)}),r=[]}),()=>{const i=Q(e),l=Ul(i);let c=i.tag||Ue;if(r=[],o)for(let u=0;u{l.split(/\s+/).forEach(c=>c&&s.classList.remove(c))}),n.split(/\s+/).forEach(l=>l&&s.classList.add(l)),s.style.display="none";const o=t.nodeType===1?t:t.parentNode;o.appendChild(s);const{hasTransform:i}=Hl(s);return o.removeChild(s),i}const rn=e=>{const t=e.props["onUpdate:modelValue"]||!1;return $(t)?n=>es(t,n):t};function ff(e){e.target.composing=!0}function Uo(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const ht=Symbol("_assign"),jp={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e[ht]=rn(r);const o=s||r.props&&r.props.type==="number";Ct(e,t?"change":"input",i=>{if(i.target.composing)return;let l=e.value;n&&(l=l.trim()),o&&(l=is(l)),e[ht](l)}),n&&Ct(e,"change",()=>{e.value=e.value.trim()}),t||(Ct(e,"compositionstart",ff),Ct(e,"compositionend",Uo),Ct(e,"change",Uo))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:o}},i){if(e[ht]=rn(i),e.composing)return;const l=(o||e.type==="number")&&!/^0\d/.test(e.value)?is(e.value):e.value,c=t??"";l!==c&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===c)||(e.value=c))}},Bp={deep:!0,created(e,t,n){e[ht]=rn(n),Ct(e,"change",()=>{const s=e._modelValue,r=Fn(e),o=e.checked,i=e[ht];if($(s)){const l=Mr(s,r),c=l!==-1;if(o&&!c)i(s.concat(r));else if(!o&&c){const u=[...s];u.splice(l,1),i(u)}}else if(cn(s)){const l=new Set(s);o?l.add(r):l.delete(r),i(l)}else i(Kl(e,o))})},mounted:Ho,beforeUpdate(e,t,n){e[ht]=rn(n),Ho(e,t,n)}};function Ho(e,{value:t,oldValue:n},s){e._modelValue=t;let r;if($(t))r=Mr(t,s.props.value)>-1;else if(cn(t))r=t.has(s.props.value);else{if(t===n)return;r=Un(t,Kl(e,!0))}e.checked!==r&&(e.checked=r)}const $p={deep:!0,created(e,{value:t,modifiers:{number:n}},s){const r=cn(t);Ct(e,"change",()=>{const o=Array.prototype.filter.call(e.options,i=>i.selected).map(i=>n?is(Fn(i)):Fn(i));e[ht](e.multiple?r?new Set(o):o:o[0]),e._assigning=!0,Cs(()=>{e._assigning=!1})}),e[ht]=rn(s)},mounted(e,{value:t}){Vo(e,t)},beforeUpdate(e,t,n){e[ht]=rn(n)},updated(e,{value:t}){e._assigning||Vo(e,t)}};function Vo(e,t){const n=e.multiple,s=$(t);if(!(n&&!s&&!cn(t))){for(let r=0,o=e.options.length;rString(u)===String(l)):i.selected=Mr(t,l)>-1}else i.selected=t.has(l);else if(Un(Fn(i),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Fn(e){return"_value"in e?e._value:e.value}function Kl(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const df=["ctrl","shift","alt","meta"],hf={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>df.some(n=>e[`${n}Key`]&&!t.includes(n))},Up=(e,t)=>{const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(r,...o)=>{for(let i=0;i{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=r=>{if(!("key"in r))return;const o=Pt(r.key);if(t.some(i=>i===o||pf[i]===o))return e(r)})},mf=ge({patchProp:tf},Du);let qo;function gf(){return qo||(qo=ru(mf))}const yf=(...e)=>{const t=gf().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=_f(s);if(!r)return;const o=t._component;!K(o)&&!o.render&&!o.template&&(o.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const i=n(r,!1,bf(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),i},t};function bf(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function _f(e){return de(e)?document.querySelector(e):e}/*! + * pinia v2.3.1 + * (c) 2025 Eduardo San Martin Morote + * @license MIT + */let Wl;const Is=e=>Wl=e,zl=Symbol();function _r(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var Cn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(Cn||(Cn={}));function wf(){const e=Li(!0),t=e.run(()=>en({}));let n=[],s=[];const r=Hr({install(o){Is(r),r._a=o,o.provide(zl,r),o.config.globalProperties.$pinia=r,s.forEach(i=>n.push(i)),s=[]},use(o){return this._a?n.push(o):s.push(o),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return r}const Jl=()=>{};function Ko(e,t,n,s=Jl){e.push(t);const r=()=>{const o=e.indexOf(t);o>-1&&(e.splice(o,1),s())};return!n&&Ni()&&Xc(r),r}function Jt(e,...t){e.slice().forEach(n=>{n(...t)})}const vf=e=>e(),Wo=Symbol(),tr=Symbol();function wr(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,s)=>e.set(s,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const s=t[n],r=e[n];_r(r)&&_r(s)&&e.hasOwnProperty(n)&&!fe(s)&&!dt(s)?e[n]=wr(r,s):e[n]=s}return e}const Ef=Symbol();function Sf(e){return!_r(e)||!e.hasOwnProperty(Ef)}const{assign:vt}=Object;function xf(e){return!!(fe(e)&&e.effect)}function Rf(e,t,n,s){const{state:r,actions:o,getters:i}=t,l=n.state.value[e];let c;function u(){l||(n.state.value[e]=r?r():{});const a=_a(n.state.value[e]);return vt(a,o,Object.keys(i||{}).reduce((f,p)=>(f[p]=Hr(De(()=>{Is(n);const m=n._s.get(e);return i[p].call(m,m)})),f),{}))}return c=Gl(e,u,t,n,s,!0),c}function Gl(e,t,n={},s,r,o){let i;const l=vt({actions:{}},n),c={deep:!0};let u,a,f=[],p=[],m;const y=s.state.value[e];!o&&!y&&(s.state.value[e]={}),en({});let _;function x(V){let I;u=a=!1,typeof V=="function"?(V(s.state.value[e]),I={type:Cn.patchFunction,storeId:e,events:m}):(wr(s.state.value[e],V),I={type:Cn.patchObject,payload:V,storeId:e,events:m});const W=_=Symbol();Cs().then(()=>{_===W&&(u=!0)}),a=!0,Jt(f,I,s.state.value[e])}const A=o?function(){const{state:I}=n,W=I?I():{};this.$patch(ee=>{vt(ee,W)})}:Jl;function C(){i.stop(),f=[],p=[],s._s.delete(e)}const P=(V,I="")=>{if(Wo in V)return V[tr]=I,V;const W=function(){Is(s);const ee=Array.from(arguments),F=[],Y=[];function pe(G){F.push(G)}function Ee(G){Y.push(G)}Jt(p,{args:ee,name:W[tr],store:j,after:pe,onError:Ee});let ie;try{ie=V.apply(this&&this.$id===e?this:j,ee)}catch(G){throw Jt(Y,G),G}return ie instanceof Promise?ie.then(G=>(Jt(F,G),G)).catch(G=>(Jt(Y,G),Promise.reject(G))):(Jt(F,ie),ie)};return W[Wo]=!0,W[tr]=I,W},L={_p:s,$id:e,$onAction:Ko.bind(null,p),$patch:x,$reset:A,$subscribe(V,I={}){const W=Ko(f,V,I.detached,()=>ee()),ee=i.run(()=>xn(()=>s.state.value[e],F=>{(I.flush==="sync"?a:u)&&V({storeId:e,type:Cn.direct,events:m},F)},vt({},c,I)));return W},$dispose:C},j=Hn(L);s._s.set(e,j);const z=(s._a&&s._a.runWithContext||vf)(()=>s._e.run(()=>(i=Li()).run(()=>t({action:P}))));for(const V in z){const I=z[V];if(fe(I)&&!xf(I)||dt(I))o||(y&&Sf(I)&&(fe(I)?I.value=y[V]:wr(I,y[V])),s.state.value[e][V]=I);else if(typeof I=="function"){const W=P(I,V);z[V]=W,l.actions[V]=I}}return vt(j,z),vt(Q(j),z),Object.defineProperty(j,"$state",{get:()=>s.state.value[e],set:V=>{x(I=>{vt(I,V)})}}),s._p.forEach(V=>{vt(j,i.run(()=>V({store:j,app:s._a,pinia:s,options:l})))}),y&&o&&n.hydrate&&n.hydrate(j.$state,y),u=!0,a=!0,j}/*! #__NO_SIDE_EFFECTS__ */function Cf(e,t,n){let s,r;const o=typeof t=="function";typeof e=="string"?(s=e,r=o?n:t):(r=e,s=e.id);function i(l,c){const u=Qa();return l=l||(u?Le(zl,null):null),l&&Is(l),l=Wl,l._s.has(s)||(o?Gl(s,t,r,l):Rf(s,r,l)),l._s.get(s)}return i.$id=s,i}function Tf(e){{const t=Q(e),n={};for(const s in t){const r=t[s];r.effect?n[s]=De({get:()=>e[s],set(o){e[s]=o}}):(fe(r)||dt(r))&&(n[s]=Ea(e,s))}return n}}/*! + * vue-router v4.5.1 + * (c) 2025 Eduardo San Martin Morote + * @license MIT + */const Xt=typeof document<"u";function Xl(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function Af(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&Xl(e.default)}const ne=Object.assign;function nr(e,t){const n={};for(const s in t){const r=t[s];n[s]=ze(r)?r.map(e):e(r)}return n}const Tn=()=>{},ze=Array.isArray,Ql=/#/g,Of=/&/g,Pf=/\//g,Lf=/=/g,Nf=/\?/g,Yl=/\+/g,If=/%5B/g,Mf=/%5D/g,Zl=/%5E/g,kf=/%60/g,ec=/%7B/g,Ff=/%7C/g,tc=/%7D/g,Df=/%20/g;function Xr(e){return encodeURI(""+e).replace(Ff,"|").replace(If,"[").replace(Mf,"]")}function jf(e){return Xr(e).replace(ec,"{").replace(tc,"}").replace(Zl,"^")}function vr(e){return Xr(e).replace(Yl,"%2B").replace(Df,"+").replace(Ql,"%23").replace(Of,"%26").replace(kf,"`").replace(ec,"{").replace(tc,"}").replace(Zl,"^")}function Bf(e){return vr(e).replace(Lf,"%3D")}function $f(e){return Xr(e).replace(Ql,"%23").replace(Nf,"%3F")}function Uf(e){return e==null?"":$f(e).replace(Pf,"%2F")}function Dn(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const Hf=/\/$/,Vf=e=>e.replace(Hf,"");function sr(e,t,n="/"){let s,r={},o="",i="";const l=t.indexOf("#");let c=t.indexOf("?");return l=0&&(c=-1),c>-1&&(s=t.slice(0,c),o=t.slice(c+1,l>-1?l:t.length),r=e(o)),l>-1&&(s=s||t.slice(0,l),i=t.slice(l,t.length)),s=zf(s??t,n),{fullPath:s+(o&&"?")+o+i,path:s,query:r,hash:Dn(i)}}function qf(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function zo(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function Kf(e,t,n){const s=t.matched.length-1,r=n.matched.length-1;return s>-1&&s===r&&on(t.matched[s],n.matched[r])&&nc(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function on(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function nc(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!Wf(e[n],t[n]))return!1;return!0}function Wf(e,t){return ze(e)?Jo(e,t):ze(t)?Jo(t,e):e===t}function Jo(e,t){return ze(t)?e.length===t.length&&e.every((n,s)=>n===t[s]):e.length===1&&e[0]===t}function zf(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),s=e.split("/"),r=s[s.length-1];(r===".."||r===".")&&s.push("");let o=n.length-1,i,l;for(i=0;i1&&o--;else break;return n.slice(0,o).join("/")+"/"+s.slice(i).join("/")}const _t={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var jn;(function(e){e.pop="pop",e.push="push"})(jn||(jn={}));var An;(function(e){e.back="back",e.forward="forward",e.unknown=""})(An||(An={}));function Jf(e){if(!e)if(Xt){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),Vf(e)}const Gf=/^[^#]+#/;function Xf(e,t){return e.replace(Gf,"#")+t}function Qf(e,t){const n=document.documentElement.getBoundingClientRect(),s=e.getBoundingClientRect();return{behavior:t.behavior,left:s.left-n.left-(t.left||0),top:s.top-n.top-(t.top||0)}}const Ms=()=>({left:window.scrollX,top:window.scrollY});function Yf(e){let t;if("el"in e){const n=e.el,s=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=Qf(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Go(e,t){return(history.state?history.state.position-t:-1)+e}const Er=new Map;function Zf(e,t){Er.set(e,t)}function ed(e){const t=Er.get(e);return Er.delete(e),t}let td=()=>location.protocol+"//"+location.host;function sc(e,t){const{pathname:n,search:s,hash:r}=t,o=e.indexOf("#");if(o>-1){let l=r.includes(e.slice(o))?e.slice(o).length:1,c=r.slice(l);return c[0]!=="/"&&(c="/"+c),zo(c,"")}return zo(n,e)+s+r}function nd(e,t,n,s){let r=[],o=[],i=null;const l=({state:p})=>{const m=sc(e,location),y=n.value,_=t.value;let x=0;if(p){if(n.value=m,t.value=p,i&&i===y){i=null;return}x=_?p.position-_.position:0}else s(m);r.forEach(A=>{A(n.value,y,{delta:x,type:jn.pop,direction:x?x>0?An.forward:An.back:An.unknown})})};function c(){i=n.value}function u(p){r.push(p);const m=()=>{const y=r.indexOf(p);y>-1&&r.splice(y,1)};return o.push(m),m}function a(){const{history:p}=window;p.state&&p.replaceState(ne({},p.state,{scroll:Ms()}),"")}function f(){for(const p of o)p();o=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",a)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",a,{passive:!0}),{pauseListeners:c,listen:u,destroy:f}}function Xo(e,t,n,s=!1,r=!1){return{back:e,current:t,forward:n,replaced:s,position:window.history.length,scroll:r?Ms():null}}function sd(e){const{history:t,location:n}=window,s={value:sc(e,n)},r={value:t.state};r.value||o(s.value,{back:null,current:s.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function o(c,u,a){const f=e.indexOf("#"),p=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+c:td()+e+c;try{t[a?"replaceState":"pushState"](u,"",p),r.value=u}catch(m){console.error(m),n[a?"replace":"assign"](p)}}function i(c,u){const a=ne({},t.state,Xo(r.value.back,c,r.value.forward,!0),u,{position:r.value.position});o(c,a,!0),s.value=c}function l(c,u){const a=ne({},r.value,t.state,{forward:c,scroll:Ms()});o(a.current,a,!0);const f=ne({},Xo(s.value,c,null),{position:a.position+1},u);o(c,f,!1),s.value=c}return{location:s,state:r,push:l,replace:i}}function rd(e){e=Jf(e);const t=sd(e),n=nd(e,t.state,t.location,t.replace);function s(o,i=!0){i||n.pauseListeners(),history.go(o)}const r=ne({location:"",base:e,go:s,createHref:Xf.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function od(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),rd(e)}function id(e){return typeof e=="string"||e&&typeof e=="object"}function rc(e){return typeof e=="string"||typeof e=="symbol"}const oc=Symbol("");var Qo;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(Qo||(Qo={}));function ln(e,t){return ne(new Error,{type:e,[oc]:!0},t)}function ct(e,t){return e instanceof Error&&oc in e&&(t==null||!!(e.type&t))}const Yo="[^/]+?",ld={sensitive:!1,strict:!1,start:!0,end:!0},cd=/[.+*?^${}()[\]/\\]/g;function ad(e,t){const n=ne({},ld,t),s=[];let r=n.start?"^":"";const o=[];for(const u of e){const a=u.length?[]:[90];n.strict&&!u.length&&(r+="/");for(let f=0;ft.length?t.length===1&&t[0]===80?1:-1:0}function ic(e,t){let n=0;const s=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const fd={type:0,value:""},dd=/[a-zA-Z0-9_]/;function hd(e){if(!e)return[[]];if(e==="/")return[[fd]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(m){throw new Error(`ERR (${n})/"${u}": ${m}`)}let n=0,s=n;const r=[];let o;function i(){o&&r.push(o),o=[]}let l=0,c,u="",a="";function f(){u&&(n===0?o.push({type:0,value:u}):n===1||n===2||n===3?(o.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:u,regexp:a,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),u="")}function p(){u+=c}for(;l{i(P)}:Tn}function i(f){if(rc(f)){const p=s.get(f);p&&(s.delete(f),n.splice(n.indexOf(p),1),p.children.forEach(i),p.alias.forEach(i))}else{const p=n.indexOf(f);p>-1&&(n.splice(p,1),f.record.name&&s.delete(f.record.name),f.children.forEach(i),f.alias.forEach(i))}}function l(){return n}function c(f){const p=bd(f,n);n.splice(p,0,f),f.record.name&&!ni(f)&&s.set(f.record.name,f)}function u(f,p){let m,y={},_,x;if("name"in f&&f.name){if(m=s.get(f.name),!m)throw ln(1,{location:f});x=m.record.name,y=ne(ei(p.params,m.keys.filter(P=>!P.optional).concat(m.parent?m.parent.keys.filter(P=>P.optional):[]).map(P=>P.name)),f.params&&ei(f.params,m.keys.map(P=>P.name))),_=m.stringify(y)}else if(f.path!=null)_=f.path,m=n.find(P=>P.re.test(_)),m&&(y=m.parse(_),x=m.record.name);else{if(m=p.name?s.get(p.name):n.find(P=>P.re.test(p.path)),!m)throw ln(1,{location:f,currentLocation:p});x=m.record.name,y=ne({},p.params,f.params),_=m.stringify(y)}const A=[];let C=m;for(;C;)A.unshift(C.record),C=C.parent;return{name:x,path:_,params:y,matched:A,meta:yd(A)}}e.forEach(f=>o(f));function a(){n.length=0,s.clear()}return{addRoute:o,resolve:u,removeRoute:i,clearRoutes:a,getRoutes:l,getRecordMatcher:r}}function ei(e,t){const n={};for(const s of t)s in e&&(n[s]=e[s]);return n}function ti(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:gd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function gd(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const s in e.components)t[s]=typeof n=="object"?n[s]:n;return t}function ni(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function yd(e){return e.reduce((t,n)=>ne(t,n.meta),{})}function si(e,t){const n={};for(const s in e)n[s]=s in t?t[s]:e[s];return n}function bd(e,t){let n=0,s=t.length;for(;n!==s;){const o=n+s>>1;ic(e,t[o])<0?s=o:n=o+1}const r=_d(e);return r&&(s=t.lastIndexOf(r,s-1)),s}function _d(e){let t=e;for(;t=t.parent;)if(lc(t)&&ic(e,t)===0)return t}function lc({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function wd(e){const t={};if(e===""||e==="?")return t;const s=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ro&&vr(o)):[s&&vr(s)]).forEach(o=>{o!==void 0&&(t+=(t.length?"&":"")+n,o!=null&&(t+="="+o))})}return t}function vd(e){const t={};for(const n in e){const s=e[n];s!==void 0&&(t[n]=ze(s)?s.map(r=>r==null?null:""+r):s==null?s:""+s)}return t}const Ed=Symbol(""),oi=Symbol(""),ks=Symbol(""),Qr=Symbol(""),Sr=Symbol("");function mn(){let e=[];function t(s){return e.push(s),()=>{const r=e.indexOf(s);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Rt(e,t,n,s,r,o=i=>i()){const i=s&&(s.enterCallbacks[r]=s.enterCallbacks[r]||[]);return()=>new Promise((l,c)=>{const u=p=>{p===!1?c(ln(4,{from:n,to:t})):p instanceof Error?c(p):id(p)?c(ln(2,{from:t,to:p})):(i&&s.enterCallbacks[r]===i&&typeof p=="function"&&i.push(p),l())},a=o(()=>e.call(s&&s.instances[r],t,n,u));let f=Promise.resolve(a);e.length<3&&(f=f.then(u)),f.catch(p=>c(p))})}function rr(e,t,n,s,r=o=>o()){const o=[];for(const i of e)for(const l in i.components){let c=i.components[l];if(!(t!=="beforeRouteEnter"&&!i.instances[l]))if(Xl(c)){const a=(c.__vccOpts||c)[t];a&&o.push(Rt(a,n,s,i,l,r))}else{let u=c();o.push(()=>u.then(a=>{if(!a)throw new Error(`Couldn't resolve component "${l}" at "${i.path}"`);const f=Af(a)?a.default:a;i.mods[l]=a,i.components[l]=f;const m=(f.__vccOpts||f)[t];return m&&Rt(m,n,s,i,l,r)()}))}}return o}function ii(e){const t=Le(ks),n=Le(Qr),s=De(()=>{const c=Pe(e.to);return t.resolve(c)}),r=De(()=>{const{matched:c}=s.value,{length:u}=c,a=c[u-1],f=n.matched;if(!a||!f.length)return-1;const p=f.findIndex(on.bind(null,a));if(p>-1)return p;const m=li(c[u-2]);return u>1&&li(a)===m&&f[f.length-1].path!==m?f.findIndex(on.bind(null,c[u-2])):p}),o=De(()=>r.value>-1&&Td(n.params,s.value.params)),i=De(()=>r.value>-1&&r.value===n.matched.length-1&&nc(n.params,s.value.params));function l(c={}){if(Cd(c)){const u=t[Pe(e.replace)?"replace":"push"](Pe(e.to)).catch(Tn);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>u),u}return Promise.resolve()}return{route:s,href:De(()=>s.value.href),isActive:o,isExactActive:i,navigate:l}}function Sd(e){return e.length===1?e[0]:e}const xd=qn({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:ii,setup(e,{slots:t}){const n=Hn(ii(e)),{options:s}=Le(ks),r=De(()=>({[ci(e.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[ci(e.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const o=t.default&&Sd(t.default(n));return e.custom?o:nn("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},o)}}}),Rd=xd;function Cd(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Td(e,t){for(const n in t){const s=t[n],r=e[n];if(typeof s=="string"){if(s!==r)return!1}else if(!ze(r)||r.length!==s.length||s.some((o,i)=>o!==r[i]))return!1}return!0}function li(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const ci=(e,t,n)=>e??t??n,Ad=qn({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const s=Le(Sr),r=De(()=>e.route||s.value),o=Le(oi,0),i=De(()=>{let u=Pe(o);const{matched:a}=r.value;let f;for(;(f=a[u])&&!f.components;)u++;return u}),l=De(()=>r.value.matched[i.value]);$t(oi,De(()=>i.value+1)),$t(Ed,l),$t(Sr,r);const c=en();return xn(()=>[c.value,l.value,e.name],([u,a,f],[p,m,y])=>{a&&(a.instances[f]=u,m&&m!==a&&u&&u===p&&(a.leaveGuards.size||(a.leaveGuards=m.leaveGuards),a.updateGuards.size||(a.updateGuards=m.updateGuards))),u&&a&&(!m||!on(a,m)||!p)&&(a.enterCallbacks[f]||[]).forEach(_=>_(u))},{flush:"post"}),()=>{const u=r.value,a=e.name,f=l.value,p=f&&f.components[a];if(!p)return ai(n.default,{Component:p,route:u});const m=f.props[a],y=m?m===!0?u.params:typeof m=="function"?m(u):m:null,x=nn(p,ne({},y,t,{onVnodeUnmounted:A=>{A.component.isUnmounted&&(f.instances[a]=null)},ref:c}));return ai(n.default,{Component:x,route:u})||x}}});function ai(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const cc=Ad;function Od(e){const t=md(e.routes,e),n=e.parseQuery||wd,s=e.stringifyQuery||ri,r=e.history,o=mn(),i=mn(),l=mn(),c=ga(_t);let u=_t;Xt&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const a=nr.bind(null,v=>""+v),f=nr.bind(null,Uf),p=nr.bind(null,Dn);function m(v,D){let M,B;return rc(v)?(M=t.getRecordMatcher(v),B=D):B=v,t.addRoute(B,M)}function y(v){const D=t.getRecordMatcher(v);D&&t.removeRoute(D)}function _(){return t.getRoutes().map(v=>v.record)}function x(v){return!!t.getRecordMatcher(v)}function A(v,D){if(D=ne({},D||c.value),typeof v=="string"){const g=sr(n,v,D.path),w=t.resolve({path:g.path},D),S=r.createHref(g.fullPath);return ne(g,w,{params:p(w.params),hash:Dn(g.hash),redirectedFrom:void 0,href:S})}let M;if(v.path!=null)M=ne({},v,{path:sr(n,v.path,D.path).path});else{const g=ne({},v.params);for(const w in g)g[w]==null&&delete g[w];M=ne({},v,{params:f(g)}),D.params=f(D.params)}const B=t.resolve(M,D),le=v.hash||"";B.params=a(p(B.params));const d=qf(s,ne({},v,{hash:jf(le),path:B.path})),h=r.createHref(d);return ne({fullPath:d,hash:le,query:s===ri?vd(v.query):v.query||{}},B,{redirectedFrom:void 0,href:h})}function C(v){return typeof v=="string"?sr(n,v,c.value.path):ne({},v)}function P(v,D){if(u!==v)return ln(8,{from:D,to:v})}function L(v){return z(v)}function j(v){return L(ne(C(v),{replace:!0}))}function X(v){const D=v.matched[v.matched.length-1];if(D&&D.redirect){const{redirect:M}=D;let B=typeof M=="function"?M(v):M;return typeof B=="string"&&(B=B.includes("?")||B.includes("#")?B=C(B):{path:B},B.params={}),ne({query:v.query,hash:v.hash,params:B.path!=null?{}:v.params},B)}}function z(v,D){const M=u=A(v),B=c.value,le=v.state,d=v.force,h=v.replace===!0,g=X(M);if(g)return z(ne(C(g),{state:typeof g=="object"?ne({},le,g.state):le,force:d,replace:h}),D||M);const w=M;w.redirectedFrom=D;let S;return!d&&Kf(s,B,M)&&(S=ln(16,{to:w,from:B}),Ge(B,B,!0,!1)),(S?Promise.resolve(S):W(w,B)).catch(E=>ct(E)?ct(E,2)?E:yt(E):te(E,w,B)).then(E=>{if(E){if(ct(E,2))return z(ne({replace:h},C(E.to),{state:typeof E.to=="object"?ne({},le,E.to.state):le,force:d}),D||w)}else E=F(w,B,!0,h,le);return ee(w,B,E),E})}function V(v,D){const M=P(v,D);return M?Promise.reject(M):Promise.resolve()}function I(v){const D=Wt.values().next().value;return D&&typeof D.runWithContext=="function"?D.runWithContext(v):v()}function W(v,D){let M;const[B,le,d]=Pd(v,D);M=rr(B.reverse(),"beforeRouteLeave",v,D);for(const g of B)g.leaveGuards.forEach(w=>{M.push(Rt(w,v,D))});const h=V.bind(null,v,D);return M.push(h),Be(M).then(()=>{M=[];for(const g of o.list())M.push(Rt(g,v,D));return M.push(h),Be(M)}).then(()=>{M=rr(le,"beforeRouteUpdate",v,D);for(const g of le)g.updateGuards.forEach(w=>{M.push(Rt(w,v,D))});return M.push(h),Be(M)}).then(()=>{M=[];for(const g of d)if(g.beforeEnter)if(ze(g.beforeEnter))for(const w of g.beforeEnter)M.push(Rt(w,v,D));else M.push(Rt(g.beforeEnter,v,D));return M.push(h),Be(M)}).then(()=>(v.matched.forEach(g=>g.enterCallbacks={}),M=rr(d,"beforeRouteEnter",v,D,I),M.push(h),Be(M))).then(()=>{M=[];for(const g of i.list())M.push(Rt(g,v,D));return M.push(h),Be(M)}).catch(g=>ct(g,8)?g:Promise.reject(g))}function ee(v,D,M){l.list().forEach(B=>I(()=>B(v,D,M)))}function F(v,D,M,B,le){const d=P(v,D);if(d)return d;const h=D===_t,g=Xt?history.state:{};M&&(B||h?r.replace(v.fullPath,ne({scroll:h&&g&&g.scroll},le)):r.push(v.fullPath,le)),c.value=v,Ge(v,D,M,h),yt()}let Y;function pe(){Y||(Y=r.listen((v,D,M)=>{if(!Jn.listening)return;const B=A(v),le=X(B);if(le){z(ne(le,{replace:!0,force:!0}),B).catch(Tn);return}u=B;const d=c.value;Xt&&Zf(Go(d.fullPath,M.delta),Ms()),W(B,d).catch(h=>ct(h,12)?h:ct(h,2)?(z(ne(C(h.to),{force:!0}),B).then(g=>{ct(g,20)&&!M.delta&&M.type===jn.pop&&r.go(-1,!1)}).catch(Tn),Promise.reject()):(M.delta&&r.go(-M.delta,!1),te(h,B,d))).then(h=>{h=h||F(B,d,!1),h&&(M.delta&&!ct(h,8)?r.go(-M.delta,!1):M.type===jn.pop&&ct(h,20)&&r.go(-1,!1)),ee(B,d,h)}).catch(Tn)}))}let Ee=mn(),ie=mn(),G;function te(v,D,M){yt(v);const B=ie.list();return B.length?B.forEach(le=>le(v,D,M)):console.error(v),Promise.reject(v)}function it(){return G&&c.value!==_t?Promise.resolve():new Promise((v,D)=>{Ee.add([v,D])})}function yt(v){return G||(G=!v,pe(),Ee.list().forEach(([D,M])=>v?M(v):D()),Ee.reset()),v}function Ge(v,D,M,B){const{scrollBehavior:le}=e;if(!Xt||!le)return Promise.resolve();const d=!M&&ed(Go(v.fullPath,0))||(B||!M)&&history.state&&history.state.scroll||null;return Cs().then(()=>le(v,D,d)).then(h=>h&&Yf(h)).catch(h=>te(h,v,D))}const Te=v=>r.go(v);let Kt;const Wt=new Set,Jn={currentRoute:c,listening:!0,addRoute:m,removeRoute:y,clearRoutes:t.clearRoutes,hasRoute:x,getRoutes:_,resolve:A,options:e,push:L,replace:j,go:Te,back:()=>Te(-1),forward:()=>Te(1),beforeEach:o.add,beforeResolve:i.add,afterEach:l.add,onError:ie.add,isReady:it,install(v){const D=this;v.component("RouterLink",Rd),v.component("RouterView",cc),v.config.globalProperties.$router=D,Object.defineProperty(v.config.globalProperties,"$route",{enumerable:!0,get:()=>Pe(c)}),Xt&&!Kt&&c.value===_t&&(Kt=!0,L(r.location).catch(le=>{}));const M={};for(const le in _t)Object.defineProperty(M,le,{get:()=>c.value[le],enumerable:!0});v.provide(ks,D),v.provide(Qr,zi(M)),v.provide(Sr,c);const B=v.unmount;Wt.add(v),v.unmount=function(){Wt.delete(v),Wt.size<1&&(u=_t,Y&&Y(),Y=null,c.value=_t,Kt=!1,G=!1),B()}}};function Be(v){return v.reduce((D,M)=>D.then(()=>I(M)),Promise.resolve())}return Jn}function Pd(e,t){const n=[],s=[],r=[],o=Math.max(t.matched.length,e.matched.length);for(let i=0;ion(u,l))?s.push(l):n.push(l));const c=e.matched[i];c&&(t.matched.find(u=>on(u,c))||r.push(c))}return[n,s,r]}function Ld(){return Le(ks)}function Vp(e){return Le(Qr)}/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Nd=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */var Zn={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"};/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Id=({size:e,strokeWidth:t=2,absoluteStrokeWidth:n,color:s,iconNode:r,name:o,class:i,...l},{slots:c})=>nn("svg",{...Zn,width:e||Zn.width,height:e||Zn.height,stroke:s||Zn.stroke,"stroke-width":n?Number(t)*24/Number(e):t,class:["lucide",`lucide-${Nd(o??"icon")}`],...l},[...r.map(u=>nn(...u)),...c.default?[c.default()]:[]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const qt=(e,t)=>(n,{slots:s})=>nn(Id,{...n,iconNode:t,name:e},s);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Md=qt("CircleAlertIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const kd=qt("CircleCheckBigIcon",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Fd=qt("InfoIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Dd=qt("MoonIcon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const jd=qt("SunIcon",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Bd=qt("TriangleAlertIcon",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const $d=qt("XIcon",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),Ud=qn({__name:"ThemeToggle",setup(e){const t=Le("isDarkMode"),n=Le("setColorMode"),s=()=>{n(!t.value)};return(r,o)=>(qe(),Mn("button",{onClick:s,class:an(["fixed top-4 right-4 z-10 p-2 rounded-full transition-all duration-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 transform hover:rotate-180",Pe(t)?"bg-gray-800 text-yellow-300":"bg-white text-gray-800"])},[Pe(t)?(qe(),tn(Pe(Dd),{key:1,class:"w-6 h-6"})):(qe(),tn(Pe(jd),{key:0,class:"w-6 h-6"}))],2))}});function ac(e,t){return function(){return e.apply(t,arguments)}}const{toString:Hd}=Object.prototype,{getPrototypeOf:Yr}=Object,{iterator:Fs,toStringTag:uc}=Symbol,Ds=(e=>t=>{const n=Hd.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Je=e=>(e=e.toLowerCase(),t=>Ds(t)===e),js=e=>t=>typeof t===e,{isArray:un}=Array,Bn=js("undefined");function Vd(e){return e!==null&&!Bn(e)&&e.constructor!==null&&!Bn(e.constructor)&&Ne(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const fc=Je("ArrayBuffer");function qd(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&fc(e.buffer),t}const Kd=js("string"),Ne=js("function"),dc=js("number"),Bs=e=>e!==null&&typeof e=="object",Wd=e=>e===!0||e===!1,ss=e=>{if(Ds(e)!=="object")return!1;const t=Yr(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(uc in e)&&!(Fs in e)},zd=Je("Date"),Jd=Je("File"),Gd=Je("Blob"),Xd=Je("FileList"),Qd=e=>Bs(e)&&Ne(e.pipe),Yd=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||Ne(e.append)&&((t=Ds(e))==="formdata"||t==="object"&&Ne(e.toString)&&e.toString()==="[object FormData]"))},Zd=Je("URLSearchParams"),[eh,th,nh,sh]=["ReadableStream","Request","Response","Headers"].map(Je),rh=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Wn(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let s,r;if(typeof e!="object"&&(e=[e]),un(e))for(s=0,r=e.length;s0;)if(r=n[s],t===r.toLowerCase())return r;return null}const Dt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,pc=e=>!Bn(e)&&e!==Dt;function xr(){const{caseless:e}=pc(this)&&this||{},t={},n=(s,r)=>{const o=e&&hc(t,r)||r;ss(t[o])&&ss(s)?t[o]=xr(t[o],s):ss(s)?t[o]=xr({},s):un(s)?t[o]=s.slice():t[o]=s};for(let s=0,r=arguments.length;s(Wn(t,(r,o)=>{n&&Ne(r)?e[o]=ac(r,n):e[o]=r},{allOwnKeys:s}),e),ih=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),lh=(e,t,n,s)=>{e.prototype=Object.create(t.prototype,s),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},ch=(e,t,n,s)=>{let r,o,i;const l={};if(t=t||{},e==null)return t;do{for(r=Object.getOwnPropertyNames(e),o=r.length;o-- >0;)i=r[o],(!s||s(i,e,t))&&!l[i]&&(t[i]=e[i],l[i]=!0);e=n!==!1&&Yr(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},ah=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const s=e.indexOf(t,n);return s!==-1&&s===n},uh=e=>{if(!e)return null;if(un(e))return e;let t=e.length;if(!dc(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},fh=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Yr(Uint8Array)),dh=(e,t)=>{const s=(e&&e[Fs]).call(e);let r;for(;(r=s.next())&&!r.done;){const o=r.value;t.call(e,o[0],o[1])}},hh=(e,t)=>{let n;const s=[];for(;(n=e.exec(t))!==null;)s.push(n);return s},ph=Je("HTMLFormElement"),mh=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,s,r){return s.toUpperCase()+r}),ui=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),gh=Je("RegExp"),mc=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),s={};Wn(n,(r,o)=>{let i;(i=t(r,o,e))!==!1&&(s[o]=i||r)}),Object.defineProperties(e,s)},yh=e=>{mc(e,(t,n)=>{if(Ne(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const s=e[n];if(Ne(s)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},bh=(e,t)=>{const n={},s=r=>{r.forEach(o=>{n[o]=!0})};return un(e)?s(e):s(String(e).split(t)),n},_h=()=>{},wh=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function vh(e){return!!(e&&Ne(e.append)&&e[uc]==="FormData"&&e[Fs])}const Eh=e=>{const t=new Array(10),n=(s,r)=>{if(Bs(s)){if(t.indexOf(s)>=0)return;if(!("toJSON"in s)){t[r]=s;const o=un(s)?[]:{};return Wn(s,(i,l)=>{const c=n(i,r+1);!Bn(c)&&(o[l]=c)}),t[r]=void 0,o}}return s};return n(e,0)},Sh=Je("AsyncFunction"),xh=e=>e&&(Bs(e)||Ne(e))&&Ne(e.then)&&Ne(e.catch),gc=((e,t)=>e?setImmediate:t?((n,s)=>(Dt.addEventListener("message",({source:r,data:o})=>{r===Dt&&o===n&&s.length&&s.shift()()},!1),r=>{s.push(r),Dt.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Ne(Dt.postMessage)),Rh=typeof queueMicrotask<"u"?queueMicrotask.bind(Dt):typeof process<"u"&&process.nextTick||gc,Ch=e=>e!=null&&Ne(e[Fs]),b={isArray:un,isArrayBuffer:fc,isBuffer:Vd,isFormData:Yd,isArrayBufferView:qd,isString:Kd,isNumber:dc,isBoolean:Wd,isObject:Bs,isPlainObject:ss,isReadableStream:eh,isRequest:th,isResponse:nh,isHeaders:sh,isUndefined:Bn,isDate:zd,isFile:Jd,isBlob:Gd,isRegExp:gh,isFunction:Ne,isStream:Qd,isURLSearchParams:Zd,isTypedArray:fh,isFileList:Xd,forEach:Wn,merge:xr,extend:oh,trim:rh,stripBOM:ih,inherits:lh,toFlatObject:ch,kindOf:Ds,kindOfTest:Je,endsWith:ah,toArray:uh,forEachEntry:dh,matchAll:hh,isHTMLForm:ph,hasOwnProperty:ui,hasOwnProp:ui,reduceDescriptors:mc,freezeMethods:yh,toObjectSet:bh,toCamelCase:mh,noop:_h,toFiniteNumber:wh,findKey:hc,global:Dt,isContextDefined:pc,isSpecCompliantForm:vh,toJSONObject:Eh,isAsyncFn:Sh,isThenable:xh,setImmediate:gc,asap:Rh,isIterable:Ch};function J(e,t,n,s,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),s&&(this.request=s),r&&(this.response=r,this.status=r.status?r.status:null)}b.inherits(J,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:b.toJSONObject(this.config),code:this.code,status:this.status}}});const yc=J.prototype,bc={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{bc[e]={value:e}});Object.defineProperties(J,bc);Object.defineProperty(yc,"isAxiosError",{value:!0});J.from=(e,t,n,s,r,o)=>{const i=Object.create(yc);return b.toFlatObject(e,i,function(c){return c!==Error.prototype},l=>l!=="isAxiosError"),J.call(i,e.message,t,n,s,r),i.cause=e,i.name=e.name,o&&Object.assign(i,o),i};const Th=null;function Rr(e){return b.isPlainObject(e)||b.isArray(e)}function _c(e){return b.endsWith(e,"[]")?e.slice(0,-2):e}function fi(e,t,n){return e?e.concat(t).map(function(r,o){return r=_c(r),!n&&o?"["+r+"]":r}).join(n?".":""):t}function Ah(e){return b.isArray(e)&&!e.some(Rr)}const Oh=b.toFlatObject(b,{},null,function(t){return/^is[A-Z]/.test(t)});function $s(e,t,n){if(!b.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=b.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(_,x){return!b.isUndefined(x[_])});const s=n.metaTokens,r=n.visitor||a,o=n.dots,i=n.indexes,c=(n.Blob||typeof Blob<"u"&&Blob)&&b.isSpecCompliantForm(t);if(!b.isFunction(r))throw new TypeError("visitor must be a function");function u(y){if(y===null)return"";if(b.isDate(y))return y.toISOString();if(b.isBoolean(y))return y.toString();if(!c&&b.isBlob(y))throw new J("Blob is not supported. Use a Buffer instead.");return b.isArrayBuffer(y)||b.isTypedArray(y)?c&&typeof Blob=="function"?new Blob([y]):Buffer.from(y):y}function a(y,_,x){let A=y;if(y&&!x&&typeof y=="object"){if(b.endsWith(_,"{}"))_=s?_:_.slice(0,-2),y=JSON.stringify(y);else if(b.isArray(y)&&Ah(y)||(b.isFileList(y)||b.endsWith(_,"[]"))&&(A=b.toArray(y)))return _=_c(_),A.forEach(function(P,L){!(b.isUndefined(P)||P===null)&&t.append(i===!0?fi([_],L,o):i===null?_:_+"[]",u(P))}),!1}return Rr(y)?!0:(t.append(fi(x,_,o),u(y)),!1)}const f=[],p=Object.assign(Oh,{defaultVisitor:a,convertValue:u,isVisitable:Rr});function m(y,_){if(!b.isUndefined(y)){if(f.indexOf(y)!==-1)throw Error("Circular reference detected in "+_.join("."));f.push(y),b.forEach(y,function(A,C){(!(b.isUndefined(A)||A===null)&&r.call(t,A,b.isString(C)?C.trim():C,_,p))===!0&&m(A,_?_.concat(C):[C])}),f.pop()}}if(!b.isObject(e))throw new TypeError("data must be an object");return m(e),t}function di(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(s){return t[s]})}function Zr(e,t){this._pairs=[],e&&$s(e,this,t)}const wc=Zr.prototype;wc.append=function(t,n){this._pairs.push([t,n])};wc.toString=function(t){const n=t?function(s){return t.call(this,s,di)}:di;return this._pairs.map(function(r){return n(r[0])+"="+n(r[1])},"").join("&")};function Ph(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function vc(e,t,n){if(!t)return e;const s=n&&n.encode||Ph;b.isFunction(n)&&(n={serialize:n});const r=n&&n.serialize;let o;if(r?o=r(t,n):o=b.isURLSearchParams(t)?t.toString():new Zr(t,n).toString(s),o){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class hi{constructor(){this.handlers=[]}use(t,n,s){return this.handlers.push({fulfilled:t,rejected:n,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){b.forEach(this.handlers,function(s){s!==null&&t(s)})}}const Ec={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Lh=typeof URLSearchParams<"u"?URLSearchParams:Zr,Nh=typeof FormData<"u"?FormData:null,Ih=typeof Blob<"u"?Blob:null,Mh={isBrowser:!0,classes:{URLSearchParams:Lh,FormData:Nh,Blob:Ih},protocols:["http","https","file","blob","url","data"]},eo=typeof window<"u"&&typeof document<"u",Cr=typeof navigator=="object"&&navigator||void 0,kh=eo&&(!Cr||["ReactNative","NativeScript","NS"].indexOf(Cr.product)<0),Fh=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Dh=eo&&window.location.href||"http://localhost",jh=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:eo,hasStandardBrowserEnv:kh,hasStandardBrowserWebWorkerEnv:Fh,navigator:Cr,origin:Dh},Symbol.toStringTag,{value:"Module"})),ve={...jh,...Mh};function Bh(e,t){return $s(e,new ve.classes.URLSearchParams,Object.assign({visitor:function(n,s,r,o){return ve.isNode&&b.isBuffer(n)?(this.append(s,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function $h(e){return b.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Uh(e){const t={},n=Object.keys(e);let s;const r=n.length;let o;for(s=0;s=n.length;return i=!i&&b.isArray(r)?r.length:i,c?(b.hasOwnProp(r,i)?r[i]=[r[i],s]:r[i]=s,!l):((!r[i]||!b.isObject(r[i]))&&(r[i]=[]),t(n,s,r[i],o)&&b.isArray(r[i])&&(r[i]=Uh(r[i])),!l)}if(b.isFormData(e)&&b.isFunction(e.entries)){const n={};return b.forEachEntry(e,(s,r)=>{t($h(s),r,n,0)}),n}return null}function Hh(e,t,n){if(b.isString(e))try{return(t||JSON.parse)(e),b.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(n||JSON.stringify)(e)}const zn={transitional:Ec,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const s=n.getContentType()||"",r=s.indexOf("application/json")>-1,o=b.isObject(t);if(o&&b.isHTMLForm(t)&&(t=new FormData(t)),b.isFormData(t))return r?JSON.stringify(Sc(t)):t;if(b.isArrayBuffer(t)||b.isBuffer(t)||b.isStream(t)||b.isFile(t)||b.isBlob(t)||b.isReadableStream(t))return t;if(b.isArrayBufferView(t))return t.buffer;if(b.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(o){if(s.indexOf("application/x-www-form-urlencoded")>-1)return Bh(t,this.formSerializer).toString();if((l=b.isFileList(t))||s.indexOf("multipart/form-data")>-1){const c=this.env&&this.env.FormData;return $s(l?{"files[]":t}:t,c&&new c,this.formSerializer)}}return o||r?(n.setContentType("application/json",!1),Hh(t)):t}],transformResponse:[function(t){const n=this.transitional||zn.transitional,s=n&&n.forcedJSONParsing,r=this.responseType==="json";if(b.isResponse(t)||b.isReadableStream(t))return t;if(t&&b.isString(t)&&(s&&!this.responseType||r)){const i=!(n&&n.silentJSONParsing)&&r;try{return JSON.parse(t)}catch(l){if(i)throw l.name==="SyntaxError"?J.from(l,J.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ve.classes.FormData,Blob:ve.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};b.forEach(["delete","get","head","post","put","patch"],e=>{zn.headers[e]={}});const Vh=b.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),qh=e=>{const t={};let n,s,r;return e&&e.split(` +`).forEach(function(i){r=i.indexOf(":"),n=i.substring(0,r).trim().toLowerCase(),s=i.substring(r+1).trim(),!(!n||t[n]&&Vh[n])&&(n==="set-cookie"?t[n]?t[n].push(s):t[n]=[s]:t[n]=t[n]?t[n]+", "+s:s)}),t},pi=Symbol("internals");function gn(e){return e&&String(e).trim().toLowerCase()}function rs(e){return e===!1||e==null?e:b.isArray(e)?e.map(rs):String(e)}function Kh(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=n.exec(e);)t[s[1]]=s[2];return t}const Wh=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function or(e,t,n,s,r){if(b.isFunction(s))return s.call(this,t,n);if(r&&(t=n),!!b.isString(t)){if(b.isString(s))return t.indexOf(s)!==-1;if(b.isRegExp(s))return s.test(t)}}function zh(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,s)=>n.toUpperCase()+s)}function Jh(e,t){const n=b.toCamelCase(" "+t);["get","set","has"].forEach(s=>{Object.defineProperty(e,s+n,{value:function(r,o,i){return this[s].call(this,t,r,o,i)},configurable:!0})})}let Ie=class{constructor(t){t&&this.set(t)}set(t,n,s){const r=this;function o(l,c,u){const a=gn(c);if(!a)throw new Error("header name must be a non-empty string");const f=b.findKey(r,a);(!f||r[f]===void 0||u===!0||u===void 0&&r[f]!==!1)&&(r[f||c]=rs(l))}const i=(l,c)=>b.forEach(l,(u,a)=>o(u,a,c));if(b.isPlainObject(t)||t instanceof this.constructor)i(t,n);else if(b.isString(t)&&(t=t.trim())&&!Wh(t))i(qh(t),n);else if(b.isObject(t)&&b.isIterable(t)){let l={},c,u;for(const a of t){if(!b.isArray(a))throw TypeError("Object iterator must return a key-value pair");l[u=a[0]]=(c=l[u])?b.isArray(c)?[...c,a[1]]:[c,a[1]]:a[1]}i(l,n)}else t!=null&&o(n,t,s);return this}get(t,n){if(t=gn(t),t){const s=b.findKey(this,t);if(s){const r=this[s];if(!n)return r;if(n===!0)return Kh(r);if(b.isFunction(n))return n.call(this,r,s);if(b.isRegExp(n))return n.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=gn(t),t){const s=b.findKey(this,t);return!!(s&&this[s]!==void 0&&(!n||or(this,this[s],s,n)))}return!1}delete(t,n){const s=this;let r=!1;function o(i){if(i=gn(i),i){const l=b.findKey(s,i);l&&(!n||or(s,s[l],l,n))&&(delete s[l],r=!0)}}return b.isArray(t)?t.forEach(o):o(t),r}clear(t){const n=Object.keys(this);let s=n.length,r=!1;for(;s--;){const o=n[s];(!t||or(this,this[o],o,t,!0))&&(delete this[o],r=!0)}return r}normalize(t){const n=this,s={};return b.forEach(this,(r,o)=>{const i=b.findKey(s,o);if(i){n[i]=rs(r),delete n[o];return}const l=t?zh(o):String(o).trim();l!==o&&delete n[o],n[l]=rs(r),s[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return b.forEach(this,(s,r)=>{s!=null&&s!==!1&&(n[r]=t&&b.isArray(s)?s.join(", "):s)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(` +`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const s=new this(t);return n.forEach(r=>s.set(r)),s}static accessor(t){const s=(this[pi]=this[pi]={accessors:{}}).accessors,r=this.prototype;function o(i){const l=gn(i);s[l]||(Jh(r,i),s[l]=!0)}return b.isArray(t)?t.forEach(o):o(t),this}};Ie.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);b.reduceDescriptors(Ie.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(s){this[n]=s}}});b.freezeMethods(Ie);function ir(e,t){const n=this||zn,s=t||n,r=Ie.from(s.headers);let o=s.data;return b.forEach(e,function(l){o=l.call(n,o,r.normalize(),t?t.status:void 0)}),r.normalize(),o}function xc(e){return!!(e&&e.__CANCEL__)}function fn(e,t,n){J.call(this,e??"canceled",J.ERR_CANCELED,t,n),this.name="CanceledError"}b.inherits(fn,J,{__CANCEL__:!0});function Rc(e,t,n){const s=n.config.validateStatus;!n.status||!s||s(n.status)?e(n):t(new J("Request failed with status code "+n.status,[J.ERR_BAD_REQUEST,J.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function Gh(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Xh(e,t){e=e||10;const n=new Array(e),s=new Array(e);let r=0,o=0,i;return t=t!==void 0?t:1e3,function(c){const u=Date.now(),a=s[o];i||(i=u),n[r]=c,s[r]=u;let f=o,p=0;for(;f!==r;)p+=n[f++],f=f%e;if(r=(r+1)%e,r===o&&(o=(o+1)%e),u-i{n=a,r=null,o&&(clearTimeout(o),o=null),e.apply(null,u)};return[(...u)=>{const a=Date.now(),f=a-n;f>=s?i(u,a):(r=u,o||(o=setTimeout(()=>{o=null,i(r)},s-f)))},()=>r&&i(r)]}const ys=(e,t,n=3)=>{let s=0;const r=Xh(50,250);return Qh(o=>{const i=o.loaded,l=o.lengthComputable?o.total:void 0,c=i-s,u=r(c),a=i<=l;s=i;const f={loaded:i,total:l,progress:l?i/l:void 0,bytes:c,rate:u||void 0,estimated:u&&l&&a?(l-i)/u:void 0,event:o,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(f)},n)},mi=(e,t)=>{const n=e!=null;return[s=>t[0]({lengthComputable:n,total:e,loaded:s}),t[1]]},gi=e=>(...t)=>b.asap(()=>e(...t)),Yh=ve.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ve.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ve.origin),ve.navigator&&/(msie|trident)/i.test(ve.navigator.userAgent)):()=>!0,Zh=ve.hasStandardBrowserEnv?{write(e,t,n,s,r,o){const i=[e+"="+encodeURIComponent(t)];b.isNumber(n)&&i.push("expires="+new Date(n).toGMTString()),b.isString(s)&&i.push("path="+s),b.isString(r)&&i.push("domain="+r),o===!0&&i.push("secure"),document.cookie=i.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function ep(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function tp(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Cc(e,t,n){let s=!ep(t);return e&&(s||n==!1)?tp(e,t):t}const yi=e=>e instanceof Ie?{...e}:e;function Vt(e,t){t=t||{};const n={};function s(u,a,f,p){return b.isPlainObject(u)&&b.isPlainObject(a)?b.merge.call({caseless:p},u,a):b.isPlainObject(a)?b.merge({},a):b.isArray(a)?a.slice():a}function r(u,a,f,p){if(b.isUndefined(a)){if(!b.isUndefined(u))return s(void 0,u,f,p)}else return s(u,a,f,p)}function o(u,a){if(!b.isUndefined(a))return s(void 0,a)}function i(u,a){if(b.isUndefined(a)){if(!b.isUndefined(u))return s(void 0,u)}else return s(void 0,a)}function l(u,a,f){if(f in t)return s(u,a);if(f in e)return s(void 0,u)}const c={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:l,headers:(u,a,f)=>r(yi(u),yi(a),f,!0)};return b.forEach(Object.keys(Object.assign({},e,t)),function(a){const f=c[a]||r,p=f(e[a],t[a],a);b.isUndefined(p)&&f!==l||(n[a]=p)}),n}const Tc=e=>{const t=Vt({},e);let{data:n,withXSRFToken:s,xsrfHeaderName:r,xsrfCookieName:o,headers:i,auth:l}=t;t.headers=i=Ie.from(i),t.url=vc(Cc(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&i.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let c;if(b.isFormData(n)){if(ve.hasStandardBrowserEnv||ve.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if((c=i.getContentType())!==!1){const[u,...a]=c?c.split(";").map(f=>f.trim()).filter(Boolean):[];i.setContentType([u||"multipart/form-data",...a].join("; "))}}if(ve.hasStandardBrowserEnv&&(s&&b.isFunction(s)&&(s=s(t)),s||s!==!1&&Yh(t.url))){const u=r&&o&&Zh.read(o);u&&i.set(r,u)}return t},np=typeof XMLHttpRequest<"u",sp=np&&function(e){return new Promise(function(n,s){const r=Tc(e);let o=r.data;const i=Ie.from(r.headers).normalize();let{responseType:l,onUploadProgress:c,onDownloadProgress:u}=r,a,f,p,m,y;function _(){m&&m(),y&&y(),r.cancelToken&&r.cancelToken.unsubscribe(a),r.signal&&r.signal.removeEventListener("abort",a)}let x=new XMLHttpRequest;x.open(r.method.toUpperCase(),r.url,!0),x.timeout=r.timeout;function A(){if(!x)return;const P=Ie.from("getAllResponseHeaders"in x&&x.getAllResponseHeaders()),j={data:!l||l==="text"||l==="json"?x.responseText:x.response,status:x.status,statusText:x.statusText,headers:P,config:e,request:x};Rc(function(z){n(z),_()},function(z){s(z),_()},j),x=null}"onloadend"in x?x.onloadend=A:x.onreadystatechange=function(){!x||x.readyState!==4||x.status===0&&!(x.responseURL&&x.responseURL.indexOf("file:")===0)||setTimeout(A)},x.onabort=function(){x&&(s(new J("Request aborted",J.ECONNABORTED,e,x)),x=null)},x.onerror=function(){s(new J("Network Error",J.ERR_NETWORK,e,x)),x=null},x.ontimeout=function(){let L=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const j=r.transitional||Ec;r.timeoutErrorMessage&&(L=r.timeoutErrorMessage),s(new J(L,j.clarifyTimeoutError?J.ETIMEDOUT:J.ECONNABORTED,e,x)),x=null},o===void 0&&i.setContentType(null),"setRequestHeader"in x&&b.forEach(i.toJSON(),function(L,j){x.setRequestHeader(j,L)}),b.isUndefined(r.withCredentials)||(x.withCredentials=!!r.withCredentials),l&&l!=="json"&&(x.responseType=r.responseType),u&&([p,y]=ys(u,!0),x.addEventListener("progress",p)),c&&x.upload&&([f,m]=ys(c),x.upload.addEventListener("progress",f),x.upload.addEventListener("loadend",m)),(r.cancelToken||r.signal)&&(a=P=>{x&&(s(!P||P.type?new fn(null,e,x):P),x.abort(),x=null)},r.cancelToken&&r.cancelToken.subscribe(a),r.signal&&(r.signal.aborted?a():r.signal.addEventListener("abort",a)));const C=Gh(r.url);if(C&&ve.protocols.indexOf(C)===-1){s(new J("Unsupported protocol "+C+":",J.ERR_BAD_REQUEST,e));return}x.send(o||null)})},rp=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let s=new AbortController,r;const o=function(u){if(!r){r=!0,l();const a=u instanceof Error?u:this.reason;s.abort(a instanceof J?a:new fn(a instanceof Error?a.message:a))}};let i=t&&setTimeout(()=>{i=null,o(new J(`timeout ${t} of ms exceeded`,J.ETIMEDOUT))},t);const l=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach(u=>{u.unsubscribe?u.unsubscribe(o):u.removeEventListener("abort",o)}),e=null)};e.forEach(u=>u.addEventListener("abort",o));const{signal:c}=s;return c.unsubscribe=()=>b.asap(l),c}},op=function*(e,t){let n=e.byteLength;if(n{const r=ip(e,t);let o=0,i,l=c=>{i||(i=!0,s&&s(c))};return new ReadableStream({async pull(c){try{const{done:u,value:a}=await r.next();if(u){l(),c.close();return}let f=a.byteLength;if(n){let p=o+=f;n(p)}c.enqueue(new Uint8Array(a))}catch(u){throw l(u),u}},cancel(c){return l(c),r.return()}},{highWaterMark:2})},Us=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",Ac=Us&&typeof ReadableStream=="function",cp=Us&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),Oc=(e,...t)=>{try{return!!e(...t)}catch{return!1}},ap=Ac&&Oc(()=>{let e=!1;const t=new Request(ve.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),_i=64*1024,Tr=Ac&&Oc(()=>b.isReadableStream(new Response("").body)),bs={stream:Tr&&(e=>e.body)};Us&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!bs[t]&&(bs[t]=b.isFunction(e[t])?n=>n[t]():(n,s)=>{throw new J(`Response type '${t}' is not supported`,J.ERR_NOT_SUPPORT,s)})})})(new Response);const up=async e=>{if(e==null)return 0;if(b.isBlob(e))return e.size;if(b.isSpecCompliantForm(e))return(await new Request(ve.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(b.isArrayBufferView(e)||b.isArrayBuffer(e))return e.byteLength;if(b.isURLSearchParams(e)&&(e=e+""),b.isString(e))return(await cp(e)).byteLength},fp=async(e,t)=>{const n=b.toFiniteNumber(e.getContentLength());return n??up(t)},dp=Us&&(async e=>{let{url:t,method:n,data:s,signal:r,cancelToken:o,timeout:i,onDownloadProgress:l,onUploadProgress:c,responseType:u,headers:a,withCredentials:f="same-origin",fetchOptions:p}=Tc(e);u=u?(u+"").toLowerCase():"text";let m=rp([r,o&&o.toAbortSignal()],i),y;const _=m&&m.unsubscribe&&(()=>{m.unsubscribe()});let x;try{if(c&&ap&&n!=="get"&&n!=="head"&&(x=await fp(a,s))!==0){let j=new Request(t,{method:"POST",body:s,duplex:"half"}),X;if(b.isFormData(s)&&(X=j.headers.get("content-type"))&&a.setContentType(X),j.body){const[z,V]=mi(x,ys(gi(c)));s=bi(j.body,_i,z,V)}}b.isString(f)||(f=f?"include":"omit");const A="credentials"in Request.prototype;y=new Request(t,{...p,signal:m,method:n.toUpperCase(),headers:a.normalize().toJSON(),body:s,duplex:"half",credentials:A?f:void 0});let C=await fetch(y,p);const P=Tr&&(u==="stream"||u==="response");if(Tr&&(l||P&&_)){const j={};["status","statusText","headers"].forEach(I=>{j[I]=C[I]});const X=b.toFiniteNumber(C.headers.get("content-length")),[z,V]=l&&mi(X,ys(gi(l),!0))||[];C=new Response(bi(C.body,_i,z,()=>{V&&V(),_&&_()}),j)}u=u||"text";let L=await bs[b.findKey(bs,u)||"text"](C,e);return!P&&_&&_(),await new Promise((j,X)=>{Rc(j,X,{data:L,headers:Ie.from(C.headers),status:C.status,statusText:C.statusText,config:e,request:y})})}catch(A){throw _&&_(),A&&A.name==="TypeError"&&/Load failed|fetch/i.test(A.message)?Object.assign(new J("Network Error",J.ERR_NETWORK,e,y),{cause:A.cause||A}):J.from(A,A&&A.code,e,y)}}),Ar={http:Th,xhr:sp,fetch:dp};b.forEach(Ar,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const wi=e=>`- ${e}`,hp=e=>b.isFunction(e)||e===null||e===!1,Pc={getAdapter:e=>{e=b.isArray(e)?e:[e];const{length:t}=e;let n,s;const r={};for(let o=0;o`adapter ${l} `+(c===!1?"is not supported by the environment":"is not available in the build"));let i=t?o.length>1?`since : +`+o.map(wi).join(` +`):" "+wi(o[0]):"as no adapter specified";throw new J("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return s},adapters:Ar};function lr(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new fn(null,e)}function vi(e){return lr(e),e.headers=Ie.from(e.headers),e.data=ir.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Pc.getAdapter(e.adapter||zn.adapter)(e).then(function(s){return lr(e),s.data=ir.call(e,e.transformResponse,s),s.headers=Ie.from(s.headers),s},function(s){return xc(s)||(lr(e),s&&s.response&&(s.response.data=ir.call(e,e.transformResponse,s.response),s.response.headers=Ie.from(s.response.headers))),Promise.reject(s)})}const Lc="1.10.0",Hs={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Hs[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});const Ei={};Hs.transitional=function(t,n,s){function r(o,i){return"[Axios v"+Lc+"] Transitional option '"+o+"'"+i+(s?". "+s:"")}return(o,i,l)=>{if(t===!1)throw new J(r(i," has been removed"+(n?" in "+n:"")),J.ERR_DEPRECATED);return n&&!Ei[i]&&(Ei[i]=!0,console.warn(r(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,i,l):!0}};Hs.spelling=function(t){return(n,s)=>(console.warn(`${s} is likely a misspelling of ${t}`),!0)};function pp(e,t,n){if(typeof e!="object")throw new J("options must be an object",J.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let r=s.length;for(;r-- >0;){const o=s[r],i=t[o];if(i){const l=e[o],c=l===void 0||i(l,o,e);if(c!==!0)throw new J("option "+o+" must be "+c,J.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new J("Unknown option "+o,J.ERR_BAD_OPTION)}}const os={assertOptions:pp,validators:Hs},et=os.validators;let Ut=class{constructor(t){this.defaults=t||{},this.interceptors={request:new hi,response:new hi}}async request(t,n){try{return await this._request(t,n)}catch(s){if(s instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const o=r.stack?r.stack.replace(/^.+\n/,""):"";try{s.stack?o&&!String(s.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(s.stack+=` +`+o):s.stack=o}catch{}}throw s}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Vt(this.defaults,n);const{transitional:s,paramsSerializer:r,headers:o}=n;s!==void 0&&os.assertOptions(s,{silentJSONParsing:et.transitional(et.boolean),forcedJSONParsing:et.transitional(et.boolean),clarifyTimeoutError:et.transitional(et.boolean)},!1),r!=null&&(b.isFunction(r)?n.paramsSerializer={serialize:r}:os.assertOptions(r,{encode:et.function,serialize:et.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),os.assertOptions(n,{baseUrl:et.spelling("baseURL"),withXsrfToken:et.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&b.merge(o.common,o[n.method]);o&&b.forEach(["delete","get","head","post","put","patch","common"],y=>{delete o[y]}),n.headers=Ie.concat(i,o);const l=[];let c=!0;this.interceptors.request.forEach(function(_){typeof _.runWhen=="function"&&_.runWhen(n)===!1||(c=c&&_.synchronous,l.unshift(_.fulfilled,_.rejected))});const u=[];this.interceptors.response.forEach(function(_){u.push(_.fulfilled,_.rejected)});let a,f=0,p;if(!c){const y=[vi.bind(this),void 0];for(y.unshift.apply(y,l),y.push.apply(y,u),p=y.length,a=Promise.resolve(n);f{if(!s._listeners)return;let o=s._listeners.length;for(;o-- >0;)s._listeners[o](r);s._listeners=null}),this.promise.then=r=>{let o;const i=new Promise(l=>{s.subscribe(l),o=l}).then(r);return i.cancel=function(){s.unsubscribe(o)},i},t(function(o,i,l){s.reason||(s.reason=new fn(o,i,l),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=s=>{t.abort(s)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Nc(function(r){t=r}),cancel:t}}};function gp(e){return function(n){return e.apply(null,n)}}function yp(e){return b.isObject(e)&&e.isAxiosError===!0}const Or={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Or).forEach(([e,t])=>{Or[t]=e});function Ic(e){const t=new Ut(e),n=ac(Ut.prototype.request,t);return b.extend(n,Ut.prototype,t,{allOwnKeys:!0}),b.extend(n,t,null,{allOwnKeys:!0}),n.create=function(r){return Ic(Vt(e,r))},n}const he=Ic(zn);he.Axios=Ut;he.CanceledError=fn;he.CancelToken=mp;he.isCancel=xc;he.VERSION=Lc;he.toFormData=$s;he.AxiosError=J;he.Cancel=he.CanceledError;he.all=function(t){return Promise.all(t)};he.spread=gp;he.isAxiosError=yp;he.mergeConfig=Vt;he.AxiosHeaders=Ie;he.formToJSON=e=>Sc(b.isHTMLForm(e)?new FormData(e):e);he.getAdapter=Pc.getAdapter;he.HttpStatusCode=Or;he.default=he;const{Axios:Wp,AxiosError:zp,CanceledError:Jp,isCancel:Gp,CancelToken:Xp,VERSION:Qp,all:Yp,Cancel:Zp,isAxiosError:em,spread:tm,toFormData:nm,AxiosHeaders:sm,HttpStatusCode:rm,formToJSON:om,getAdapter:im,mergeConfig:lm}=he,bp="",Mc=bp,to=he.create({baseURL:Mc,timeout:1e15,headers:{"Content-Type":"application/json"}});to.interceptors.request.use(e=>{const t=localStorage.getItem("token");return t&&(e.headers.Authorization=`Bearer ${t}`),e.url&&!e.url.startsWith("http")&&(e.url=`${Mc}/${e.url.replace(/^\//,"")}`),e},e=>Promise.reject(e));to.interceptors.response.use(e=>e.data,e=>{if(e.response)switch(e.response.status){case 401:console.error("未授权,请重新登录"),localStorage.clear(),window.location.href="/#/login";break;case 403:console.error("禁止访问");break;case 404:console.error("请求的资源不存在");break;default:console.error("发生错误:",e.response.data)}else e.request?console.error("未收到响应:",e.request):console.error("请求配置错误:",e.message);return Promise.reject(e)});const kc=Cf("alert",{state:()=>({alerts:[]}),actions:{showAlert(e,t="info",n=5e3){const s=Date.now(),r=Date.now();this.alerts.push({id:s,message:e,type:t,progress:100,duration:n,startTime:r}),setTimeout(()=>this.removeAlert(s),n)},removeAlert(e){const t=this.alerts.findIndex(n=>n.id===e);t>-1&&this.alerts.splice(t,1)},updateAlertProgress(e){const t=this.alerts.find(n=>n.id===e);if(t){const s=100-(Date.now()-t.startTime)/t.duration*100;t.progress=Math.max(0,s),t.progress<=0&&this.removeAlert(e)}}}}),_p={class:"p-4"},wp={class:"flex items-start"},vp={class:"flex-shrink-0"},Ep={class:"ml-3 flex-1 pt-0.5"},Sp=["innerHTML"],xp={class:"ml-4 flex-shrink-0 flex"},Rp=["onClick"],Cp={class:"h-1 bg-white bg-opacity-25"},Tp=qn({__name:"AlertComponent",setup(e){const t=kc(),{alerts:n}=Tf(t),{removeAlert:s,updateAlertProgress:r}=t,o={success:"from-green-500 to-green-600",error:"from-red-500 to-red-600",warning:"from-yellow-500 to-yellow-600",info:"from-blue-500 to-blue-600"},i={success:kd,error:Bd,warning:Md,info:Fd};let l;return Os(()=>{l=setInterval(()=>{n.value.forEach(c=>{r(c.id)})},100)}),Kr(()=>{clearInterval(l)}),(c,u)=>(qe(),tn(of,{name:"alert-fade",tag:"div",class:"fixed top-4 left-4 z-50 w-full sm:max-w-sm md:max-w-md space-y-4 px-4 sm:px-0"},{default:ds(()=>[(qe(!0),Mn(Ue,null,Ha(Pe(n),a=>(qe(),Mn("div",{key:a.id,class:an(["w-full rounded-lg shadow-xl overflow-hidden","bg-gradient-to-r",o[a.type]])},[Fe("div",_p,[Fe("div",wp,[Fe("div",vp,[(qe(),tn(ml(i[a.type]),{class:"h-6 w-6 text-white"}))]),Fe("div",Ep,[Fe("p",{class:"text-sm font-medium text-white",innerHTML:a.message},null,8,Sp)]),Fe("div",xp,[Fe("button",{onClick:f=>Pe(s)(a.id),class:"inline-flex text-white hover:text-gray-200 focus:outline-none transition-colors duration-200"},[u[0]||(u[0]=Fe("span",{class:"sr-only"},"关闭",-1)),me(Pe($d),{class:"h-5 w-5"})],8,Rp)])])]),Fe("div",Cp,[Fe("div",{class:"h-full bg-white transition-all duration-100 ease-out",style:Ss({width:`${a.progress}%`})},null,4)])],2))),128))]),_:1}))}}),Ap=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Op=Ap(Tp,[["__scopeId","data-v-0ce78a4a"]]),Pp={key:0,class:"loading-overlay"},Lp=qn({__name:"App",setup(e){const t=en(!1),n=en(!1),s=Ld(),r=kc(),o=()=>window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches,i=()=>{const c=localStorage.getItem("colorMode");return c?c==="dark":null},l=c=>{t.value=c,localStorage.setItem("colorMode",c?"dark":"light")};return Os(()=>{const c=i();l(c!==null?c:o()),to.post("/",{}).then(u=>{u.code===200&&(localStorage.setItem("config",JSON.stringify(u.detail)),u.detail.notify_title&&u.detail.notify_content&&localStorage.getItem("notify")!==u.detail.notify_title+u.detail.notify_content&&(localStorage.setItem("notify",u.detail.notify_title+u.detail.notify_content),r.showAlert(u.detail.notify_title+": "+u.detail.notify_content,"success")))})}),uu(()=>{document.documentElement.classList.toggle("dark",t.value)}),s.beforeEach((c,u,a)=>{n.value=!0,a()}),s.afterEach(()=>{setTimeout(()=>{n.value=!1},200)}),$t("isDarkMode",t),$t("setColorMode",l),$t("isLoading",n),(c,u)=>(qe(),Mn("div",{class:an(["app-container",t.value?"dark":"light"])},[me(Ud,{modelValue:t.value,"onUpdate:modelValue":u[0]||(u[0]=a=>t.value=a)},null,8,["modelValue"]),n.value?(qe(),Mn("div",Pp,u[1]||(u[1]=[Fe("div",{class:"loading-spinner"},null,-1)]))):Su("",!0),me(Pe(cc),null,{default:ds(({Component:a})=>[me(Bu,{name:"fade",mode:"out-in"},{default:ds(()=>[(qe(),tn(ml(a),{key:c.$route.fullPath}))]),_:2},1024)]),_:1}),me(Op)],2))}}),Np="modulepreload",Ip=function(e){return"/"+e},Si={},kt=function(t,n,s){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),l=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));r=Promise.allSettled(n.map(c=>{if(c=Ip(c),c in Si)return;Si[c]=!0;const u=c.endsWith(".css"),a=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${a}`))return;const f=document.createElement("link");if(f.rel=u?"stylesheet":Np,u||(f.as="script"),f.crossOrigin="",f.href=c,l&&f.setAttribute("nonce",l),document.head.appendChild(f),u)return new Promise((p,m)=>{f.addEventListener("load",p),f.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${c}`)))})}))}function o(i){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=i,window.dispatchEvent(l),!l.defaultPrevented)throw i}return r.then(i=>{for(const l of i||[])l.status==="rejected"&&o(l.reason);return t().catch(o)})},Mp=()=>kt(()=>import("./SendFileView-DsSIurce.js"),__vite__mapDeps([0,1,2,3,4])),kp=Od({history:od("/"),routes:[{path:"/",name:"Retrieve",component:()=>kt(()=>import("./RetrievewFileView-DyKPLNPu.js"),__vite__mapDeps([5,1,6,2,7,3,8]))},{path:"/send",name:"Send",component:Mp},{path:"/admin",name:"Manage",component:()=>kt(()=>import("./AdminLayout-DlX3CUuP.js"),__vite__mapDeps([9,6,10])),redirect:"/admin/dashboard",children:[{path:"/admin/dashboard",name:"Dashboard",component:()=>kt(()=>import("./DashboardView-CykWLsDF.js"),__vite__mapDeps([11,2,7]))},{path:"/admin/files",name:"FileManage",component:()=>kt(()=>import("./FileManageView-BLdG4lo7.js"),__vite__mapDeps([12,2,3,13]))},{path:"/admin/settings",name:"Settings",component:()=>kt(()=>import("./SystemSettingsView-BvNjuhLF.js"),[])}]},{path:"/login",name:"Login",component:()=>kt(()=>import("./LoginView-DXxv6UDD.js"),__vite__mapDeps([14,6,15]))}]}),no=yf(Lp);no.use(wf());no.use(kp);no.mount("#app");export{tn as A,Ld as B,to as C,Tf as D,Vp as E,Ue as F,nn as G,fl as H,Cf as I,Hn as J,Kr as K,ml as L,Hp as M,Bp as N,Bu as T,$d as X,Ap as _,Mn as a,Fe as b,qt as c,qn as d,qe as e,De as f,me as g,Pe as h,Le as i,Up as j,ds as k,Su as l,Fp as m,an as n,Os as o,$p as p,Ss as q,en as r,Ha as s,Gc as t,kc as u,jp as v,xn as w,Eu as x,Dp as y,of as z}; diff --git a/themes/2025/assets/index-DpAQhrHl.css b/themes/2025/assets/index-DpAQhrHl.css new file mode 100644 index 000000000..b173dca45 --- /dev/null +++ b/themes/2025/assets/index-DpAQhrHl.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),0 3px rgb(var(--tw-prose-kbd-shadows) / 10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: 17 24 39;--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: 255 255 255;--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-invert{--tw-prose-body: var(--tw-prose-invert-body);--tw-prose-headings: var(--tw-prose-invert-headings);--tw-prose-lead: var(--tw-prose-invert-lead);--tw-prose-links: var(--tw-prose-invert-links);--tw-prose-bold: var(--tw-prose-invert-bold);--tw-prose-counters: var(--tw-prose-invert-counters);--tw-prose-bullets: var(--tw-prose-invert-bullets);--tw-prose-hr: var(--tw-prose-invert-hr);--tw-prose-quotes: var(--tw-prose-invert-quotes);--tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);--tw-prose-captions: var(--tw-prose-invert-captions);--tw-prose-kbd: var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);--tw-prose-code: var(--tw-prose-invert-code);--tw-prose-pre-code: var(--tw-prose-invert-pre-code);--tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);--tw-prose-th-borders: var(--tw-prose-invert-th-borders);--tw-prose-td-borders: var(--tw-prose-invert-td-borders)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.-inset-2{top:-.5rem;right:-.5rem;bottom:-.5rem;left:-.5rem}.inset-0{top:0;right:0;bottom:0;left:0}.inset-1{top:.25rem;right:.25rem;bottom:.25rem;left:.25rem}.inset-y-0{top:0;bottom:0}.-bottom-0\.5{bottom:-.125rem}.-top-2{top:-.5rem}.left-0{left:0}.left-2{left:.5rem}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-2{right:.5rem}.right-24{right:6rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-3{top:.75rem}.top-4{top:1rem}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-\[85vh\]{max-height:85vh}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-16{width:4rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[200px\]{max-width:200px}.max-w-\[250px\]{max-width:250px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.-space-y-px>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(-1px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(-1px * var(--tw-space-y-reverse))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.divide-gray-700>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity, 1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-gray-700\/50{border-color:#37415180}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.border-indigo-500{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.border-indigo-600{--tw-border-opacity: 1;border-color:rgb(79 70 229 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-opacity-20{--tw-border-opacity: .2}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/60{background-color:#0009}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-900{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.bg-blue-900\/20{background-color:#1e3a8a33}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.bg-gray-700\/50{background-color:#37415180}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-800\/50{background-color:#1f293780}.bg-gray-800\/95{background-color:#1f2937f2}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900\/50{background-color:#11182780}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-900{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.bg-green-900\/30{background-color:#14532d4d}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-50{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.bg-indigo-500\/10{background-color:#6366f11a}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-indigo-900{--tw-bg-opacity: 1;background-color:rgb(49 46 129 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-900{--tw-bg-opacity: 1;background-color:rgb(88 28 135 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-900\/20{background-color:#7f1d1d33}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/50{background-color:#ffffff80}.bg-white\/70{background-color:#ffffffb3}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-900\/30{background-color:#713f124d}.bg-opacity-10{--tw-bg-opacity: .1}.bg-opacity-20{--tw-bg-opacity: .2}.bg-opacity-25{--tw-bg-opacity: .25}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-70{--tw-bg-opacity: .7}.bg-opacity-90{--tw-bg-opacity: .9}.bg-opacity-95{--tw-bg-opacity: .95}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-50{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-600{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-50{--tw-gradient-from: #f9fafb var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-800\/50{--tw-gradient-from: rgb(31 41 55 / .5) var(--tw-gradient-from-position);--tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900{--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900\/90{--tw-gradient-from: rgb(17 24 39 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-500{--tw-gradient-from: #22c55e var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-300{--tw-gradient-from: #a5b4fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(165 180 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-500{--tw-gradient-from: #6366f1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-600{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from: #ec4899 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 72 153 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #ef4444 var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from: #eab308 var(--tw-gradient-from-position);--tw-gradient-to: rgb(234 179 8 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-indigo-50{--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #eef2ff var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-indigo-900{--tw-gradient-to: rgb(49 46 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #312e81 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-300{--tw-gradient-to: rgb(216 180 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #d8b4fe var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-500{--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #a855f7 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-black\/90{--tw-gradient-to: rgb(0 0 0 / .9) var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.to-gray-700\/50{--tw-gradient-to: rgb(55 65 81 / .5) var(--tw-gradient-to-position)}.to-gray-800{--tw-gradient-to: #1f2937 var(--tw-gradient-to-position)}.to-green-600{--tw-gradient-to: #16a34a var(--tw-gradient-to-position)}.to-indigo-500{--tw-gradient-to: #6366f1 var(--tw-gradient-to-position)}.to-pink-300{--tw-gradient-to: #f9a8d4 var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to: #a855f7 var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to: #dc2626 var(--tw-gradient-to-position)}.to-white{--tw-gradient-to: #fff var(--tw-gradient-to-position)}.to-yellow-600{--tw-gradient-to: #ca8a04 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-right{background-position:right}.bg-no-repeat{background-repeat:no-repeat}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-10{padding-right:2.5rem}.pr-3{padding-right:.75rem}.pr-32{padding-right:8rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-0\.5{padding-top:.125rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-6{line-height:1.5rem}.tracking-wider{letter-spacing:.05em}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity, 1))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-indigo-500\/25{--tw-shadow-color: rgb(99 102 241 / .25);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-red-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.blur-md{--tw-blur: blur(12px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-lg{--tw-backdrop-blur: blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[appearance\:textfield\]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}@font-face{font-family:DingTalk;src:url(/assets/DingTalk-CT5a5scH.ttf) format("truetype")}*{font-family:DingTalk,sans-serif!important}.hover\:rotate-180:hover{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:rotate-90:hover{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.hover\:border-gray-500:hover{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.hover\:border-indigo-500:hover{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.hover\:bg-black:hover{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-400:hover{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-900\/30:hover{background-color:#1e3a8a4d}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600\/50:hover{background-color:#4b556380}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700\/50:hover{background-color:#37415180}.hover\:bg-green-100:hover{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.hover\:bg-green-400:hover{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-100:hover{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-400:hover{--tw-bg-opacity: 1;background-color:rgb(129 140 248 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-700:hover{--tw-bg-opacity: 1;background-color:rgb(67 56 202 / var(--tw-bg-opacity, 1))}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover\:bg-red-400:hover{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.hover\:bg-red-900\/30:hover{background-color:#7f1d1d4d}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-opacity-10:hover{--tw-bg-opacity: .1}.hover\:bg-opacity-20:hover{--tw-bg-opacity: .2}.hover\:bg-opacity-50:hover{--tw-bg-opacity: .5}.hover\:from-cyan-600:hover{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-cyan-700:hover{--tw-gradient-from: #0e7490 var(--tw-gradient-from-position);--tw-gradient-to: rgb(14 116 144 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-indigo-500:hover{--tw-gradient-from: #6366f1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-indigo-600:hover{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:via-purple-600:hover{--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #9333ea var(--tw-gradient-via-position), var(--tw-gradient-to)}.hover\:to-indigo-600:hover{--tw-gradient-to: #4f46e5 var(--tw-gradient-to-position)}.hover\:to-pink-600:hover{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.hover\:to-purple-600:hover{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.hover\:to-purple-700:hover{--tw-gradient-to: #7e22ce var(--tw-gradient-to-position)}.hover\:text-gray-200:hover{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-indigo-300:hover{--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-cyan-500\/50:hover{--tw-shadow-color: rgb(6 182 212 / .5);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-indigo-500\/35:hover{--tw-shadow-color: rgb(99 102 241 / .35);--tw-shadow: var(--tw-shadow-colored)}.focus\:z-10:focus{z-index:10}.focus\:border-cyan-500:focus{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity, 1))}.focus\:border-indigo-500:focus{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-inset:focus{--tw-ring-inset: inset}.focus\:ring-cyan-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-500\/50:focus{--tw-ring-color: rgb(99 102 241 / .5)}.focus\:ring-indigo-500\/70:focus{--tw-ring-color: rgb(99 102 241 / .7)}.focus\:ring-purple-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.focus\:ring-opacity-50:focus{--tw-ring-opacity: .5}.focus\:ring-offset-0:focus{--tw-ring-offset-width: 0px}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.group:focus-within .group-focus-within\:bg-indigo-500\/30{background-color:#6366f14d}.group:focus-within .group-focus-within\:bg-indigo-500\/50{background-color:#6366f180}.group:focus-within .group-focus-within\:text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.group:focus-within .group-focus-within\:text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.group:focus-within .group-focus-within\:opacity-100{opacity:1}.group:hover .group-hover\:translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.group:hover .group-hover\:border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.group:hover .group-hover\:text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:opacity-20{opacity:.2}@media (min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mb-3{margin-bottom:.75rem}.sm\:mb-4{margin-bottom:1rem}.sm\:mb-6{margin-bottom:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:mr-2{margin-right:.5rem}.sm\:h-4{height:1rem}.sm\:h-5{height:1.25rem}.sm\:h-6{height:1.5rem}.sm\:h-\[160px\]{height:160px}.sm\:w-4{width:1rem}.sm\:w-5{width:1.25rem}.sm\:w-6{width:1.5rem}.sm\:w-\[160px\]{width:160px}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-sm{max-width:24rem}.sm\:max-w-xl{max-width:36rem}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-4{gap:1rem}.sm\:gap-6{gap:1.5rem}.sm\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.sm\:p-0{padding:0}.sm\:p-2{padding:.5rem}.sm\:p-3{padding:.75rem}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3{padding-top:.75rem;padding-bottom:.75rem}.sm\:py-4{padding-top:1rem;padding-bottom:1rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 768px){.md\:max-w-md{max-width:28rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:relative{position:relative}.lg\:hidden{display:none}.lg\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (prefers-color-scheme: dark){.dark\:hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}}.\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.alert-fade-enter-active[data-v-0ce78a4a],.alert-fade-leave-active[data-v-0ce78a4a]{transition:all .5s cubic-bezier(.68,-.55,.265,1.55)}.alert-fade-enter-from[data-v-0ce78a4a],.alert-fade-leave-to[data-v-0ce78a4a]{opacity:0;transform:translate(-50px) scale(.95)}.app-container{min-height:100vh;width:100%;transition:background-color .5s ease}.light{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #eef2ff var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: #fff var(--tw-gradient-to-position)}.dark{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(49 46 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #312e81 var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: #000 var(--tw-gradient-to-position)}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999}.loading-spinner{width:50px;height:50px;border:3px solid #fff;border-top:3px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}} diff --git a/themes/2025/assets/logo_small.png b/themes/2025/assets/logo_small.png new file mode 100644 index 0000000000000000000000000000000000000000..04bf2572754dd67b12d42cecf20270b9fcc19ad0 GIT binary patch literal 93858 zcmZr%Wn2{B_r9}1$I>VWONvT^bS&K=At4PSDF_Nk?a-YfARw$kBjQ&SlvDvACd;gy|GxPb(z4zP`&w0+AnG|zVJ$jn6Gynj41AT1^08powC_sfgJ?X!j zdI10um>XN^oZjZfJqzuyyiUCXjlwC z&%KROuSeI$3P*byrr6!BPIAh>i%T)HNVT%h(R3}kVVn|nHM=CL=B9dFkU^4_Me3``p-VxuaDb#IjT zD98BfC0N8fH*vmiV3TFxkaN}Zfv<8*xN@S2WtxpqqRRD$-X^I!cDb1{$@*@EcV**l z+uYN#$}n_$An*I+nnk*uaZ;jEVs!j78=W|BB{;%OkQSp+o64wgy9UoMrzr5{nKgTF1+4^4L zopOzUr&|7xb^IQMm}LZ7Whw<%>H87vJPO?%bKITpsRfo>-zdsbNmUK5ylI_faihrl zRQT(KSG-H^E2L(srQNxbW#^vnZ<`fhljZ42ZJ&(`s)#hsF!Cu?yj|n$mUsI~ zhNnZ$Ez7J3(+pqxoLg5ia5tYMXs3mlraQRjJG$oGx|*eYtHRSM_oiJ=vSylz_rn;y zbO(g z2sg{RZJm9~I@`nbew0Canp&EjXHm3KhQ3d!k8M_xPI{PW=6$6!XO99ye}cb5j;7xu zE6)eXYH6WYauPH%%x)B0`;;VWqd_uHDbn&51X=muhs+-}Qb9 zHX3i8=W%mU`!oiUZd;gI0yF~~6$i~UmmF41R*1y(%~6qLC`6k3^kUV<_=xmECWB;r zEJotr$kR|eX=)BJ*$g6)B8*PTrbx3TB54}of8X~#UOxHeXt}ty+LUtQ9vbuex<~JG zo7&--^pTSOqjjI7nUS57Oe$ye#tv zKt3M~v^A{4CRb-v>ql`I%8f|sM}%bLkalJ^cR5V)yF50v>v6J$LP{P&XYoE&O3|g} z!bNW`-dMS&!ptsoM2sTx<;ttQ2iPiDaGiW@ebQ9@`_3of-_Yr9|G$G+9wu8#ccco! zvP(@Xzh7YlJWn^%4r;#C{C@V-3e&&lAzH`W~h z*N*d=dbZ@zDUa!o`l)wvgZU2`>?_44!d=FzN*9DLS^wwY&Hw@j592o7%5tbKPyEO5 zL;tO_ac?0SIMnvpA6`4lTv73=@TvXH5Q$z@(5xBvYxG^xHD-6Z;Pi<4&vm?MLrL;! zzZ)pQxULa?U@EmR{qY(d)`5D)^KN^O1t8wvELYFRki^<+0u4{p?vA0#e^SyLCBs&pAZK1HhMtcr$Ml z%U*xy!9Nngd+6tOob>XG)6BpN5^$5gv+=U@Pe0?6*%b5q^`$f( z;PBt@y_16YcoPn;#kU9h>&*Wo5TQ*+XAENjN3A-i@h>|!2ZX}UU*HGjlV_d|H_pXZ zfB1Ji=stEj@95SSSF)+;lQQ}izK^7ngd2^&hcRy=$O{{-S*#%NmTp{MK>mZ;lLW## zjS+BA---%WsHbRnWi=e6dd5u(GvB2$TffIUIpXYU`sFgbF?~ZdbPJ@c@E=6Cb#Wv> z;s)f+-C*Xj!=K*UTwmWUPoO%~$ItUo2SdI)Rsa6}ICTJ}iwwr(W=&sLpBiW&BUu{ED7i{6wk!9hYEr$je5U6_oR@ zSmHc%L|TS(T^PZqPhM4A_>pZ}Ne=O)fp7#dK?0d~YnNA7XOq93b(-u(VDl-yGa?%y z!?XAq1%3MHrCj#Q;6mSH(Y$K5_RGy@{sfZ0&=GmB{t=yjj_{p%Xl2lT6hB9YRFHW0 z?N`&;lfID)K2pfMM;Oj`WDX@~bd@$G-*v}O?d{p;6iYIZ2AFxjblrE>rGg28S6;gz zsNUAbSUJB+Zmvdj^TV`ZMqj;cPzmjGOG%qlF9G~gvg8><87-4|tOC8H4%d&FK>3V) zjcaIg<5F|6-VTPVKLZ#fHj}yl*%2>W=-;>cvL1*gfBv>ICE~9po@_{aF8A7GC{tfG{~)RwryfiKRt=u=EPc&oB1^Q)Lq~ zM=yGn(ud-t>ccL}u{{-$EbS0gB608ERFfomT^LyUuy7nrBG!ySvT>T*Wyxp_1(oBS zA91Bxh>a%`7vG1JHAqp-cPukD@j5JYSl>>d!G_L(X0DA4rP&pkQHdMibqL;iXts?U z#HrpT3g*kW+WYVQrx3zS9DWsoCIr%gdak+eSHYiER619j%J-xi>AeC-@hbGEb8bpm zjJkd^LIaQ|0;QBivldIq(*_{Cuq&w}MAddGYMSEsJ>7gXqN?VDv%V!-!2~S)TYFdh zm+sUP$wOYn5(Um#bD25#W8YQz=j1z3_K9t886re=4X8ySy_yG7ee#oEDf8{_n3Hzb z#0UN%qc4Ja-rp@F&KCMqWxMPFaqg@0$2lSA4)4F~RxMPv;~>Ks&C2@=UkD9-t}#@8^|T(i&XAL-SgSTtCn6I;9Y(A+1Jg6wa>lL+pYJl$c!;NTTi-fG9P9L=PjHj z+O3(rTkR4@^?~jiT|e&32IDfnTrN2Jgz7GXb zViL%~_2FSs+F+6L$j&@Z_94&dxa6K}36_ADBXd+pku*cxv(6wOLJG1|=C;+JYeY}% zJLQap)iR!}(p!MzajKd~evE<5sf zscM|~Yse)ryIPMI1zrM*8f#B*pDzz3BW{0IA0yNIqV-~^taaN- z!|JbxyjGy>EotA)0u=%6o5nQ8jmbbhlYr*>G9Jnkwocm z+CcwFVgW|oX@g(HcM1|@Bhh`NkgOW}@c`=LEJ6PtWy-u8BR zs^o6d;n_-92Lpg_G@$K_X6q`KANH8 zK1@Y=W&t0MXaSRxO3l?LR$q&Kf_)NPO6i*L)sT!viUn-#qaW%n@gEMR^K;qi&9*;b2k&0ps8{?e`dkt7MJ3tme`nk zGI^?JVbfx%=ySlK5H-I72G7Ul=`ad(BJTmc*>9YaSpj^nY>m=|<9 z5K0QY_2#zp+sTd*I)YFwe3c3J%?n`hrHn%|0B|!RoQ+j?+SB24OhpYZVgzI2dW?2pvYnxWF>b^5Q&)qVH*-&4HT86 zS)9t*ZAA``x1D7lgp8cVl>hMZ&HxJc8vyy0&VvEg0d*V{1TM`e<+5N4Ivj@O#kWWU zk&|by3EMZu+S8Gf>{Ae$z9MS*n*|nyK;#@<5|SyFm`=o3&%9y2pdp75%2?#E>a{pW zwc~Dsrm)yZ=0R?U83a}dI;3rjX~Z^o-W6c`wng)oi+;XNy%VG}fhpR430L6vZ+%BM z?n2hxrqT$ps%{!5Vc(Px;pDqJS>Hh5KF48_?$Gz=%?b+lY#-4hP_8k9r760u3uXgV z_%LBJXyda71Blpk#Zn=%&o@6Nv`X zG;nd}A}u1Gu_0}=meS4egQD30g3669(_FHh@=Zr={wKTIFNwy)bM!ce>(4gU#V-7A z=#vxQNfzpigtVigtR>|xZv!?wF(F+Rup@BHxPp!nwuWk=&Uy2Elqn5@sw-Zm#8}s?dqd)l+Hq5*G-#bTAkwQH-`IK|YJ2#yYt4Sj;y*ji zzrKV&E6fEt_-52%*#|1v8k%QDYn*|$wKZLu&mCo(nj2(e=_U$Pm4~fM){2*rq0#{7 zM+4V0QHfB`iJAU&+W3`c3tyP^0?A4)43d+;mqWfDvG9Sij}U7Kqr zoF`)Eh#vsT;jlG^tLmY1X~fq1{w3NY|JZeOLBORHA&vX*c^c{Ik+0OvuaKF?+SSl- zqN671FIN<@1IFj3eED;B zPp@mB7N~S~ci-A%A92MM9yXa!43&9+$Z=LB{#Lr%y_PfACR_Vms(X!2m9d3?EweD~3IQ(SpRi`(A%dG`dwpLPnR@fyTc3Zl}hn@otngLm|| zzXn%lM`U74dBqjhw|0CAxNuFr=b%C{msSX?a2%2Lettn!ZzAC9YyP_*QFJ%Yf)ML& zD>RWpyq+|?4ZI}J?33Qn3?h?nB>km4ok9C4>8-vmw*WsZ;|e?{R(T&1xlS|e_TUMJ zNMe_vXyO%EAI<-r9w>Wxyk~qqOkuu$yJ61BtnM`7bq9CJsjtT-;LkU2;H8bpf7_Xi zDB&j>8{Hk3k6QgH$j?Y8#)8hcK>@ZL7FjdsqMHovz7WFXuKL!xDdT}{au0(FLnAW>rk=X9HmT1xe+sX(@e+4b&^p&RtA301k^ll<|EGf=hJK~$yAr0S^C-_ zSooRY0TlSg24!u~*42baWd*l$OCw!P)|C`kMC#5*=FwnFp-d}Di+IP5LHC)^OP>q#Gv$S~sbKRr?~0ttB+cV=i2Q40f6wKgdT|L7$F;F`KbDIm!T$s; zLM^<-i3J0<%xfQ zN{vV4%?o5ZN=WT0bKQsc9i4#A2(Agt$byV-t7&2aU$m88+dM_0u+)jAd;x_+`RBg8 z#qYQEx)!5X&qQ&P?k!|U*jn_(X)(s-sGuOWYP=K+(Yxa^C(1S+asg!$YJG0o8m@~M z{%h@ExqI^a9yj?q1$a(v4d+lT1n+VA*%X)E-jPpWTE0V^Qh=9*3iocX2j0z>sF0W1 z+q)dtp%mHV#H;}uqoy56R8_nObTBefKYod7(Lj>?F6htRI(9GVZP^>hg>o1#eE;86 zyFK;b-#zrL0&Eq}IEotCT!!?b7&@YJXjR!59>FbMnBO?r57|@ZB(3`bPZu;uClzG0 z9e|!cphhb$-X2BfTX?Jkbw9bG*4ni9+j47v?)!IfH#yiK zd3cVFmxLUiX&@KBd7dGYXVjOdb%hDH_Bi@A^AIP5;{l3?q^xe{Q%bKAvh*%s7M{&& z$ra}RqE3B=oHZ}XL;Y@Ct(|1+9jqW9TS#4H6@OgW0368`7vLYu%TwC@I;YUgBfquq z#k!vqO8&$1c^XV!xh}s?W*eM-6#qD{6@&UX0>Z;&GD!*w`x)(gnkqg+pr}uj6cEx$ z)u2~*6=}x>mjG0*?P2lJ9E=4$x4bua6*!>CA2>dGS8SC0m zi#bEJWPBoB3yQ^1!#aT!AcT*)JjL6c%?>WmV0kV`BfJ(z$LMfgyblU#UCQWx z)7IA$yjR)ciXTzFxEs>>rtyK(XDtlD^Z{Zy@HVo!ne#f(M)^C zXk2S;%R=^63|pUHpnZRmt#?Ea-4N5Z(pd|V3;3=OemA>+_{yncyqg54ys6%NcNJ~V zP1;L6dd^dLd=R6-mEut?6K&>_6~fRWhZPI}ytC6a%e zLnh{4TbOinhr%A#F7Rfn<-cqi^MEEA+rAMXs7H=GT5$ZNsE5f)wmSo4&&PzxZo!pZ za(njTFPu0T0(_!rkPU?>?vo5IRM2fJuvysL&Ww@d1pM?k(wW=2OKd}wS6#Q&BR9bl z{AqT>7kcWUZFPV&(n}JgT?9e#pLchU#25#WB=_}W&B?cm3Tr0D#_o>4yIiz;WBIHF zMg^B8?Q8Dw*NQZ|aGjGo=NgiCQwNiFpFMKRsdw2Th zqw!Wh#)yl_5=Wy+UC|xEX5q~yXERJjiho3|wf&myF0en2`n*1;SYWBRjDnpMe;wZU zgRsvT;%V6kVw`@V@@GjVZ#8RMLgVvL&b5#oqJc&dQZPocS3FTOI+tX5CL7~&Js}am za-P26h{p7g?Fv`~>4}srt@q7oIE?F88ho*XD8FBS5iSUT%#{Gy)!^ybv%QZa?_(=9 z!z>}(5xM-jtjercZC=OS+Vc(it$+{+*$xT-=~9nc5Z9;?q@ZVvxCwnj5KE#}U3M-t zqBkzQz=zhpawE;7AF&z63M`|JbAFS?UHtKHv;e2mtE1H$V~F#s+&<3>$rw|5%PJt5 z3|!U%#3SGN?$0}CyqHolz3_u&|7FNdS8)*(vx0%@O#9 zIAe(I#en}_hCh~xvUxcP?tC><_tb>*oFLiCGSz<8eOxqmif)?&q(Grpi!gs(1%8|t z0FvagH`7zmZPM~RFXS>lC$4XwygfO;g_!5xEpu0&7lp#S*H&MyLA&%1vo=CggXv5= z5yV_@?OF$_a;BbUi*#nEbcsq3iSMxoA9p2L&A<;Un#6Mb#yEM3Tj}Z5D-UhHBDmf5 z8LLm$*GkW{Pyc*n71%l8vq`}(6E%e=r6iiIl5GUbKvf{K2Zbf#M9(fr?sj6)9|i7r zxq9Grkm<4c@n|b~ct9(zcl}s#+c7q#nn|DH=I9+<4+i)f=dO>KGph_b3-?QjYJ=N; zKiL2`kJ>c)X#L#YRpZ~}ow26FigwtT$atEPwt?q2bwTI>=znvC=^@B&$A0@JDd#=0 z!&G9gcOJORh=2p=7ar|N4k;_=zlXOgoOx9JKtdl2Pl00s8}uJHXai3z6j7kwVNQuV ztumuUJJoWE^&()DI@){xs`EVy+uDiDpFyVydDe$O^5`)Q(9EX}(LL{Ye@JAoTG5LQ z&UtlF@)B*J=l*1vJNg&tKc;@#gri1w;O}ArlptKt5qXjzKz-g(s9BO%aj=PIo-->J z1r#R^QD^bBo`;pTN{@4LYUe4;Q_lke__4GcFQ2lRi|un6GR5_N<>MnhaEU0tOyWUz zuKuMC&Gd6uH1FW`(m)XSjREE&@Vw_$Ae@q)H3 z8?FG^&&UFFr49azG0K6nC=uKO5MpC|&GFoGdT3scvV)HCVO6c^pTW}69A%r~!%ftD zMH;Y}SS-$E)GFT-)W{d&w7yIoS{cmOeGREd@z@-isBwab9@teLwe{n;M&xsLJK%A- zTKHV%0S`&(O6Dyb)LeT*h_M9=X5U_{c%{f1;`tw_4g8J5<^OJz%$2ypTFv)ksU;yW zUGpX*R(|8jjEuE7h&{7Q-_{stT}*1KK9Pa+pMB`#0CcFQV_g$&jVYHvABI~G)EsAx zFQ&P}W6p+S9@fwYy1YYa|io&E=B3_=Tzd-jI|bo%Wjc;4K7#L`g10i@jo=5MKj zpz7RoA&pY%`PL{JHh8_p8T4P$c9}E3!Mg;diGXAp%HOp1sj^$);MX%t92G1@TyuVf z1z6~Zb?gOU;B^$=waTOSZ=;4nKUYQW_u@*tVqe8E0v<~SV_zNy9eDoIE3rc2fW_H_ zK62OV3#XnB2AKUvkCV-rx5vgmkwyAk0wIN`JoD7rN(B~Ef8?GaFf{CdCMsK2 zEc=m^|uKo+^e(JCvny@DdRmG^mtIrVZ!?d{XeMV}g!r7i=HfyWRn8#HH zLe++}IYYm{P9B>5n74F*7AdIEf36$*ce&(88cGpueiKrta)jVq>?)Vi>-nJ&l>WIW39K+s zsG0va5GbUxh$3qIbw)#hnT~#ow?Jj9M+c`zj{*uzl< zkHHo8d#HF$#7o`gQj2}gT=K`k@Ci${4dvMQPheF? zend%lG$WJ^T8U!Vqr`uy*z*#v_(ANqnJ+vFuF^wq?{=Yg3(rb3h`G(_dltsO`bnh>i6RQc}%8~nY7W?Ts-{pfo$9CmMi zo4=Mi$q%!3L&txkoUaf0osNRR|Tz$oS@uLWxSABM6C!i<73owGGOsU7lnP zD5h<4mLFSEtek$-lPE;_ao&dyfm@ee0)n|nLh=JGei6gNZ(V+H2M)fMG(rph?V@lE zVSSYE{8KoGcR5Aa%ma2c4J030{ftF}Q4lzM)g>nk>fU8*B;PI)fkjeHe{o7s z2T2zi9yGy<@G-)igduJ_1s|2a8Sake&zZ=2mHsLIMwG74{a4{GwO|SLG$`R%5eQB@x;0KT0s2hk3e5Op%E=uuFeuQ-QF=MDeK| z|MSEBtWSUbX$twG9>2h|x5WRq4HYU+CdEDxdvS7tx~|SdiB5j&sQZDUNHwPCQ^M^v zV;uAQ-%!s+I6>B-DdNz&-;U_t0y|TI*J$4Y;#WKg7PmO4F zgN1>&!AtV>$B=j5L=QttPV{wCMJD5nU-gj(KN)Ce;qQ5s{5z6Uwu$QkkmrYYQ)F8UCP_(^cY}0B3Ie1Dwx^{W;7v zNJf+e!e}rOr24NDj?Y)7PpGxusqf&b!&3@^-ZkG}Zz+-yR@K1Pzxf3bGlJ8C7e!#ZE;P zd)hEEy0AF0g2H`bfRb0t2+UYl77RP&MTh;PaUL|Qvj4n>9y?n>EC0#qAj_28AIut4 zMqVRttj0fUL^QWH2QO;&UAM+{9NeyZ0Amv;?~Z&xKn8+Qn@xyz zUE2f<3@#!WfQo%?ew(|Ow6e0I;Bky^r7}i}o0w6W+S7kW5!FdQ!n{5jj2~UuN{Wer z@Jp4s`4Ax~@hgL9#X|h0chZCdXux?UQc-x*^pSzq6qi_mo0HT$Nqc50D+v9bG}VniASr764}L>S-5 zHWOKr@C$9C)SI$j%=*gPb74i69#+EO(f@R=P4$m?Jc%g*fo}Dm#it|lt(@6W8y zYveKBdKBm?B>~ZUP~WzFxSEGZN0Mb^e6Lx+!@anzju#pg>tzM6HF8AT7?Rs06R zKsx3VxdzoAc1|4liU3>YV;?^00cR11LELw<4m_nNiQWXPT}QzeaZBw@O>YiT$j5Ls zD*`SiBY!f1m6Z3Lv)H26PebF>DJZp`mnl8-$L;inu};Vxv@3@@_VH!PCvCo=?1=1n zUP5A4Ql_lNN4E?GD6l@I>4l(I)lGfV%?6Wcg*nDI>gI3+7gzW0`Xkh|p4=I2$jMLB zV59e0#mG;v@ktZ(&MZ>H?`MbEN@*A4GbMv>lm#&fAR2fDggS++gzXFG3Y<>ba({oI3DJww6%+>;iR z=rc1;QsEM1xfRhaCg*`Xk?N!?wzpi)$JCxu)!6^Akg`UN9$QZjGs%e$NQYCve1yY z9X}t8;s{1;KNZTM!QITi%zFLrnQ%xPdGet|zE@>qkdmx=_n6aI-3Zt+z!#u9h|-RU z6?OT87j4TtK;}pk60u;IAA5hx;xNLn&e;;aqX0O!w9r8HlvjFIv_!HCTt{AudYMgU zJn-~#HVy1~)JT>6bgP3$s)-T@O*!k%FZ8`CHsX^AMbw}>w`aTA@OvFaK;FFP-!`q$%D_4uYd*@jel1dq*mt*RPw{fqgq^xY9R?;c4fxT;M5fahL~YehRD%(fl_85dfLa;1Q_W+5D&s{UA-zU(l%_>d;aOA z{T;l}ll>URqr>pCB-!*u@9~ufNkQ5o4BY!`5rMS5jw+zMrF@diTH0by{+n+2y zx%FN8(MId0&wEZUUgWT`LIT_&zhw0T2V%H0OV*p4dSbSOy0nT!A@@8F{vTanA>oP8fMVdh# zqCo|>eNv$aJ|ZpB&Ve;uX5D;CN+1cjx4bkO(7KWA@Qx9&P3os44UOH#=f{xSurD-SbOy-eDrY1X~|LPuqD z=#M&?uzw1Q5WBmRj2^Ul=8JnM`cY_92;WWm8eLh>MGN{jPPK>wWmDB z*2J`gB!0rYVP|V!N}1l-!!vHp(IOiPgn*{#8t+6~+ls5c#42-P_YveY1*6>)MMx!^icJ zm$6Tas8}1%0^xxI4%u$kEcI>$6&xJ&8D)i>cYlhY{LXCiv!M7l&b982u2JA#e`OWL zA6r;AQWki5pr{l#JwO9Tw)3TxP=7gVT0ueQ-6Mw%?|(01blq3Q| zlj$(CvGni*YQDQOn~bBRh~;r!fZbV6R2yIcRp25ZR0BQzqrLS?`}yVNw|74O_*PE^ zR>20)O1F9kqJB9ejY{FW1;EprG{j0Js8!nQKiybsU&L zGd-sj*zh=D(_v#vu|)=6N11;CJuuTdoP*At;awEV1MrbH)nKr`?ZH**_Ie4LyCJ}V zlC$$!ZZCv;_;8GQ`i-KGlYWKGgvo=u*TNsw&py#>nG6r70u&7J_c;uB@&tepuzz>0EQaA4Vv2! zxF67`L!}6>`-IZxGCp4)!j>~P;0Ip!D1Ie|qPjLN ze@2??vLmq@j%M!P3l>q?P$7&ngdC8B0*FquoOxcPR?^N$GV=YY{M{EjKkpo?f1$8q z2l6?%M=_&XlR>~3_mlG#N(&|V!Y}RW(pA+VIjP~PsU=20aRntw0cc`qfUYZI9+4>F z|1PELE3kw;=|ODU*`e2x*ZtK7DVKV1F%YhGfRY9FJSDFQ&xBKxHiV>hi!U5b?c2>j{GEwkKvW5NRq*KRU$m1M53q~EbEJ~}{r%fC?tmjcCNhBC z5MNcdHWrPIzyj-b0e+#PmN0`=)aViE?uAUds4jqrHC?XPLAUg0E;)B8I2Qr8A;K#r<(=`eV@}lpGp`}(5b&=l0 zzweU2E-uIYS+urRP<=q4Z_N&@qNTdqieI&c6}Mf=+s zDU?VwFmeao&fHe?bs|zYn5l+2rRX~2IwdYckI1u0?ZNk2s^z%c{fbWSB#$g6JJ zvBVt{(gAIf-xpx(`u-<6B_+iRg<1w1+!!95z(rJJdX~-8%ID2$liGKQ zt?`2j=C(JXe@c#Zx|vb#z)K0CB1To??AbAFtXx4hyB^_o^0#R&Vtr^20i?IjfN<8K zEHaDq;VpNJ01^&|n?2CDa@X4wN>|le6+Zt7X4+_=l}EaK^#LXPSBx5p>|@JNYe3=H zjv)vV6U*$btBZ_?tV=Nl46L&yj@OiTtLsopgWOLk~| zLK3f1J2`&)s?ts>y_RJ9Q0cO)_OLn&!0a8Krht74aN!fhhK)3I&K8@^?7IVj!9^t% zJqFn3V~@mVv-C9DF$fn<7l@N32-#kZ$)9It8DuDJ@=*TEqb3{yWvhXWCBYOMbpTi- zU$@-W3G({fPbkn`-s5H0?4U z&kb~V0JRSY#GuSMC1n8juWR=9%(Sb!oHAle|0R@96#VV|2SOL{e;!qzT>b;$QlX)0 z3}}j6S*?3faK8A$&H;Y8V!8lB-ak+ep*s!4FA$CnTt=jWp%-QGNjWYE9NZ)H;w>0T zwFGo8?U62zglw&5F!GY57XiXB2U@uSGXbDeh6F_)UZ{1mzLH*T3^JLg?JU!@=YwaN zjp;@eog6b-Wi&ijbzQRLLP>hZ?p!A0O#E)FWe$WbkTeGRYOpaiYvVcr@$y$>!y z+|$RI`;`xI%TH3H&OT)Y>F!QLTXqM^mLD74KC!cv6}7co6~(}LKb#GF)yBcoMgV)| zZ88pvP@5};Tr=^0^dS8+-sW}x{Wm>(PfvEIBr5q3#B3W7$n0`jKX8Lp+S9PO@l~9L z8@yZsVdT25f3ebyDD@2pIH0=q=_CB&-H3=r#$I7R%W4k}`Hqk{R zDP5>QBnw^DXI-NqWAY%`#7@TfV)Wr`gcxf@0d7!d0BPxaAjRR)ZS1SQUma-fOVS*AqN&R0vzoc z0I#da@ZeMbx&4M5uRWjWznR9*zJ}w%ET-UE&zhg7ZvH3(-MHqunIKfVn9fM?z>a~v z@{|}8T3*#n@&uof<&SpES3TyWuKpI30uv|S6I+$R-eVm5dBmM^`QAhf#>0+Z#_8?J z`^IPpj%Eab^e!W{NaC3Vdys94J*0<*76u`gz>LKKuNI>RoXb8=dmD>AX}m1dun`4b zX2u>gEHQxm115uzB5sxW9O^Ji_?_i1S4agT$$(JlxQMT;K7^{GpL(XD5h_Sdi(kO> zWZ7mMc;%^+WF^rJhJiMBMHs0n{9NU)`-T5aoBQx z_bqqunfN6f5nwKNet5AumY47djp(!p`@ynOwzjT*mwEF!HQt&=vRVTmX5)}_fDOe7 zSP#Oafj$KYOv#cSni1!bC1U#j@s_St10R6hzRcia3Wy!azN5DY8_jBfI~qgi(Ne$Q zGkEc$gs~(Gl!r{{^T^&pxg2~^1|o-S2n+%n-JkFB%b#}jQCxTItGQnTXRM1|NC}XF zDhrrEHoiIofehTtSt64b_&5(Hr>0t3E{t90pU;&8ye`BqGc#+aJzmTnGdLBjd&>G2 zXuXp-!mLg7^#KeJNMd9I4u^n~63SfM&5v7}nNHn$V`*9$urshaUCT~}$BU_}B%aX0@5=65=ic+E7~J+Bo=|Ol{a^4B zF7yx0l`M^%w_NjfjM`e*7L`WVq5Eb>dMjBz`12k6i)qoqa5Oy}46=rjyjUp+ziOjg zV8b9I$yR;PpTw_{kqS%iUijAo=aA-^5zw^V=^wsDrHJJ5+C?yd(q3ZqfBFpZV^V#S z;HZuq0Gx>1X0K3#d6Xa1+M|2w-%i>a(+jc?Ghn8G(*nY`M;tza`c`~HzTMLjo;Qp> zc`^6vr8h_R(f41xo6nK(Xc0fb8Mx4%;+n_ox`mUj_fusY_}GSoMPCbT{#G!|UR0X^ z**;>m4V8tzRp=*GRf>IL+@1&4Lll%C%&o3_wv%>HmSwRhS8OX`s?5~rXt@jRN>U`< z5JeK9enH~7wPO!L14j@RBKeWeWB zg<_HLhp8cEI%_0SdBykV;kc7>@IsfKBv}UGqCZ9D_he(75_|&&Fwf_G^#wHnVK{t&XorGOL5)-VLl>nxC5z5^{eZL#F5x6+8iDqtKm>JlHFcL(Wdo5Z;5=wg=tGrSH%|dWzu^@Ff>>h71=n+}ZWH(RZy(=yDR}doLiyA42oIsQU z2tq`ZLXc)VozEvU+^Pgl7uIs#r9y!syR(4X6F6L^B;Na3P-!#NidADWS7+Iv1;#PF zc;k;vzY4v{q63ltv+9sSS8*JQ68wOcU;PWC4>6V>#&5kMEUyHObEqE;J9j)(p+*j= zJGLud>J>0=O^%h$!@&|6x(c1LqMFY7YOWU z1j*N&_}8KUabf9mm^+SD{Pj}9qa zH?VLeGW!yO;r%Oc&T?@-6iJBq0A(*f`ba)iJfTzI_|`2NLjOC+;Y;Eh`j({UhQ?3d z;Sgn19)8FVXY+*<9xUS)?haqLokuw0hMDesjQESF!Vp2WM8NmI{*thL>?0pSQ(0Ln z2hZKZ>P8ukPo;Tad2aw=EY}I)9ku+?WPJu!nzl>6u=d_RtB-oL%OE#*F1bSIeRA*euKwNT;N$;(5MT-UaO zHhn*rwgv94+A)#Nn;}5V|50@2;ZVJA7=O>qm>K(;J*KQBOCnnsDNFWbEew%0^p#!a z*rG@xTVzQQktK-~Lx~oWWRJ0h>}%GU-}zmazq#gk-{;)VeSe;3RAD)G(47z9(aJDM z`oPM_)$iB4gMsBL*`*r|QceOwSZ1{!0uDj%cCwEh2FKLvs_=4Do1CV1Yk0tKU zwcmDo_D9`Z^-POnfRH5C(+!b~Xoi73Zw5e>lrrB5cPK-|%Qee$*OtUQ-Mh@U^VL4k zoWx8H`FkW_oq^;q$L`N-=%Cj}`dTon6@D&j-}(Br^ES3`{riA<{syhuB0@4h<6%VL zbq6O@z_tu)DnyDBZd4v;2O$?|yUm_h9KlvNBN`pY?To5tCKwcm(geY*8Q%4Ldi-yF^xmft(Nj%?KS&=UF8S2fMzJ=su?*hFP(~w1Xx< z&>3yYt+k+nQT~hlQNqpPVq#p$qF>nhWbf7)%ba!k;+B^ZBT+7F_UNXhN0lbmWglK7u!1`H@CmE{iCmrYY5^B znBf*3G<$(5RC^SEQwR;aDS~dh=&vunPT&EX0L`Trf{!zF8=+^n%)Mpoqrc0`G>@J; z07l!JG8g6%P!OPT6a^BRx{-_n z8P&i-8UGGu7rk@#Uxj?tz3-$ibE;hC0czp5I}7-C4oGlz*8;-y;OLSDxFUyzli6~Z zLG9&^AfH3#wS=ld(WN) z=3-~nL2@K3ZUX{82ys_qPs`WFc|mu1r<*o9(#(#~Gt_F|> znF{(x8GC6<4a@2Cyo{3)&`Os^nH)%iA^&r;Dg65Sza)vVO+4|<89-cON)uW^uKN5R z$nOyzxTGeXG0)}fmSB(E4RM!wY}vu zD!AVH$ z{t7i%5$`o*;N#>CpZxyt*cCO}BZH#G#M>}~V@E1^ktuY>rJ;RoZ6c-S&uUVcP5#^M ze{HX{-_e`Qfa*PFQC3ha40COpm`wZ_J{>w={L7zyJl@lxbP{Yp{<9yeo}*Ztnnoh$ zZU;3;cO%lQ38K!cH2a=D3{r6C?p7cus6DI&>@TAriW!a&1>f$;ip8IDYh%9J&2>o% z6;{2ZWWbO-DFzj!doX6u@;O)JLuW*ItORb~u#tlVi#;D^sB@-}TzKE6@W%=qVY0wW z7R>o`i>E4_>v&1Nd9rcP%}3El>_utm^P9O}l5Rvx9=)R{gOWXn$x?WnvR5KoEriU>=Wr-2bL5Y$KrM1#7_(T4S6ZeFC$?tJn{rh86 zY(N;jz;O~ZQOTKLd+Y05|5%9c-~wYE=ZPiM8R`>!{WE!x*AEnS9yKl<&pG|9zIIma z5}F+&WeoBIJ~OR1yngg$!8N^A>ZOFJqU2xlYa(S#-hXs)W4B~Td&CdGSD35fFZgGrAoxd(SLifr8)9=eD*1i20F?8*@L2Vt0MuS9 zpUs+}BZ=u{FtC|pVST*+q~=t{m4y|};V~YNi{htq`Bd_Cvi9-fr_znB$~15PKHG(a z;SU{W?mPZ*BOXaZ0c?etty5ZNVegX!o%GJ&-l3e#XRm{AexM)Sao^mei_|-1ITiyY z;g1rvS8+%<6Wc*M+d~^0C3l_o{*tP{y2bqIXaRt=m*D2g$6}i`S2@kd}c_^ zD>Y)Y{(OLHw`5t_Fa6o_bWav34Oq}&PGo6!;ePmAk9W`gyyR46L8y)?Co(~z#TEs% zE*i&LYR3Q%)LkRIK>>lJB8hc#dvT6P*3LZ=eNXqK+JH0dtSn#3QigWcpy+?Ba2N{; zuwOi>aP==;jD4j+G4uwPBb_|HI41dse6bcgV2&F2K$GG%K$&9-IAK1_13W08Yy`a2 z3iegx{uK^jpUBCxMVXmTB=GG;V)(>xJUp|~GK~cZ5Le>Y3r`+~F{+!fUP(PGt22Ip zBp2~{DPlTsG<-<)ytKhHzN10RrEH};I)7+?7_?```V(6;!Ias1tI+JfH2r^h5tWad zoyQyX@3-!=HQWVTXFJgRKp3LXFJTH)0oQe;rIXjz*&-k8PyNW+TINN1Ey`(wJ`hW< z)*e_#0pXVIb9ytTa%Uv~;3#aa!_~`ReNM}u6ab0L3UV2gq>6`ht-i!Qmik;?+aI|; zc|VtNwhT5iD7jk8la6-fDA0v2DTs+VJX3yk`Z9)%rkLF}H%-~MUu<3j z&-*Qj$?RH=maja@FFauX`n96j%JVn*W*Xf|>YpVGrDrGqILvP#$inu8`)sgq?D~1& z&jgNg!h0q80SEUoM~=@MWPpKU743uVa&eF+4hWYJVOaI)W9BzmxyQoq<~8i;W;GbV z%n3tagLC3~>!X;&izQF*U-WWJ`W)3dMqnqb2e1@u()ocNcD9;u(1oAn(Ow+Wd=SLW zezBDIFJHP{7Wv@8S&ULYFqD*@qspJkm37(8$#@3x`=k=8y>H#)i6&fX;;3|2%Xl%(F^ zo8o5#z_l&+@9QxdKsY=^V-1eopqwnDjZsAna7@U#hanUd&j4-wSr)=CXxE795U*$0 z$DQ1O70V)}KNgehc|iN*Q4HmvOF+9F%L4e+r^(N+aZ2izDsi{w)R<(wS3M?M@xHOK zq$mc302Nia7eOT52;d1Ec!DVuWR6|=ER|21_}&?ue80U}Cm2u*+= z1!fk+A1{}iVm>!8kd7t-_}M(}BCr1m<$q#9x@aUve$O<|X$Xig)Xjf{Ny6Jn^jvx(LoEf&i9YUH|5-E8G|D zwC1!2xi;=+-TM8B)nB`JJmnB@WhCkWdpyhqe8s>y&Xt3?pOsBJZ(Z%JPV)eYkn@$g zgS#I;&XhxxmwZklD1bs=SY*8L9uv5B-^}UJe>b86gea%hHN@|NVldE5)|TavRAB66hVPA@nmA8=XL|7c zpjkI2SWX{PmANk``uHe(m_wQfwx_nGX0F^k7?}!rS!559n9vkbqy?rH3vh8iwp;`- z^>@Gte#&`bMD3Wz%x!JqJi%})yMnT~BSOgoZ*0nm%H}AT6K;9M0nFawi5x^GOoGwp z%h`vEFN#d@9lIQTbStwBbfJ}2xl6$Qs~_}a{gWFPc{n!5h7_bpBSXK0tX~KJqb{=V z<)8{atD$C7U-CU@?$$Ze4Lgy#y`YES-P)JrxtZKo3nQVg4$c()SZF8)lvzMIz1FM@ z3~1ahjq_6zq(K{4Cz4(TrR_|+9Y*6>45FYG=KlhYqAwl4t!9#u|5}_uR>yb$!N0aQ z@#<$gwYSJ6ANK88{9S`1+mf<~&)!~jNvE>EpYrBBNc(pTML?|}<&MNVyUV!*s)qBT-n)b0xlKP`vb89Ed6fkupdHm{wA}gra#1r48jCPE zlOhfbcmdH&;kmd}i7lEUcVwN17&%^tf-TxxuLk(y@7ZjUv119@0$clj$>y8it0l9> z=y~Tr7+9Il2L$zK2CLAyD5gW7e8j{ql)YG*<=&orpdP(he{yACJF*r9k}3!DVsV1Z zoD8n}Hm6wxUvG6iwenmf-z?grFE#3cSxZ<_4iyv%Ko)&l2kCkqYvg@7Kgs}nv2Yvq zqD@aNJkwlc3Ws7~=uQ1D4!$*PrW8M8ZG4B#@-)8S^O_NpH4NQv{g)>R_FWmlN1z{+ z@6dRz;`ayr?YJir^~v_pJ*#mw$DSu5Sj#LgVCMq1JeZB!56yPj7Y@O!+I(W$+Q)l; zv><60dN!34b_LAmiEG-*sJ4~Q$%peh8*Vr%j&dF_P)e);0Yw$-Ln9CB+J}#X6C4yS zo%IV~P@8`=*qMHHo0>rjZlwgxe%xBQ8*85ar%kmo$Eo3I9aU%wnz}Wj6jF!D9M9qhClJjYTOk z7Btd$DN6nu4LkU_faY06N6LKUFWWyQcL)H@LjWj}DFmM07KH`$X}oP9IyFG>70IlWL>KD1y)2>* zIDAIi{K!Tp!A(4(WCOON%NK}NnfO9QUUk{J0-_Aq@;(Zuc+;1I&(!8Q-g{aB@64Qf4+30q6ZnK69#{Rnl9KwGvjZC^mjyxjKW7@TI0=n+4e=6EkLFk9gxf1p>E3gspS?2(` z^GS~RmRIgR)^(^wsj*e1oJ18wMZ>qoOYP zl2LKrm?)WYzyVPMGiiQ*2VUt%5ToRhCJxvU)hhsMm_qic?g6}Vjlu6d(()q#G1Br? zi34YnTlDSYgg4Mghd9H4K284!_2Zph7mYQL?ig)Kjxc7q(6B9prBK8G7Ut1hd?!ZM zGk%(X_8H9SEOWK2I=tThZ7y!W59F5ZWhX?#qvt>T*O&qeo%XFSeRlpfU2(&&eR^VZ z3=FF*JorJ5$$$t9R1PZD@g*bWpq;$y*|q5H(QGyh1AjG86$juJ0AFVTiE?nY#4Mkk zwYq>1)Yc&{2j|R+8$%cMEv8&JBf(jE%Rr|-Lo<|9*ovJ!iDw)C6>@*Bwzoh zZFGi@=jqfvtG`6&`~t2ad4q3jKd;C?W8YdW%C2YaKpgS5_8(lA=GYgtP2@@c*UMTv_K*a2Ox*W`khY4z&gW*ozWoPG`9WPIG)vQ9W<8~3K&_J&z@86 zZl%4&BQk{xDzDezO?Q`3J}(*F#dW10xps_jSW_%U_=FoPz(DCIAAImkFCg!;uB&vH z<=?-|4<-)iVU0)FJyJw#vn4t$0X z#Y#0jolg}KmeU`Ft^$KcT0KR-K>DlioknsR2dMuqnC~cHRI=gPmFvX z(8`@Bb3rG>khJ>RF|aS+#DQ6m`SO_e*;3i+Nlpn5MlST3yGWs-`jG8duW%LhRfk<| zy`Ug(;LG=9`k>1Kwqm8c?%2I}B>mT`Ry`K<4mRn-xBO4b&3-#gLZf{D??1l+3IwxR zB3FxT;>pBV=jVs}?59EABGOa27zeffSBpW0roH&4QKmz-iMngt(x??WkB=F5lqJ`3^OwW_!zIuf&6xUhB&LxwA(sH z92L#1p7&(O$n+aVjm1SJ928F2@%cW2@L;KhUm1Z9{l0<}98Djt%qP$9T-g&1VOoKY z0eW5{zgQC|@M7f_M zQ8~dW%JUBu+|}VB4=?;OA0t#>sN&Os3wbsfFR&(svA9@@(^li6`j=iak z7+Ly%KU}La%Sd!bC0L+|e0T~_RX)OTf+KpbbTfFyCy)Cy33!}>1c15d-uhjT%eI}~ z4yd6zg@bAhX)*cX;h6w9>HRR&*@L<6&aptvE>83tr3)IM`Rb(VIU6DDMdQ z6buLWMNA0Be9BZq`Hz3q1O|ZU;NY^*vru~6Bsnnegtlz{FoecXBKy5$v$9fE43S=4 zKM6_u@F*D=WWS_CkeygVGXqTp4fMf@_yeIUr~)HoeHWh} zeYJPjQUs)s2f}`EMeJQC5VFL;&+Ysdz!xH{!@7RO*2X!?_Jh)-Z@sb4s;{sL^Mi8! z?y#-HM(t&Ru^mWQ)63MJ{8M|~(Jl8qjZ+j=)`ECJSQx?w zdKM+^t(u_s$ErB=588^hr)2?U_Ya^RrSKj{v9JJ-MEy~c{CQ5ILDPPWgCZ$^>pB)> zIgKK%;H2rj&O3L_H&q$O;EvhyA(YLM)E&P_C2#awNy_-+3U2o)*JSHb!N1G#UL;l% zwm*aLlB*{f3uIg^u06b9BxXpnaeSjbS97_Jc4CZnFAUr?09EwPvmogYpd7gO=URRB zXqVsraGM8dVOh#$9j%i-V9s-Z^~NCq+wgUybJpEfnnW>-UP=`OQ02+7 z^8CZ*eS0*;UK(qi@%_^LcTuHN#WmL)LCOl{~^8YN==QL7joNkrcn+zeZa>t$XcjIc$72;3+M%Z!_^ep9gGf^xpUev#JYb#9&=c=-7F_$UDoV~d3$ zz8CsQtjT!z*RxVXG|}v5u9abc-v^zs7zk{S;gL8<0bud%+c(2KEvk%BRB`|(h&=%j z&|st!h7Hi&T)DjJI_Y!)WA!HzMz7YGkzO4lMib?)VyZ58Ve2k=k9<5;=6=r_@vI6I zs@-i5nD1YfpraumBmPwVY8exG_JP=Bnu=r4;8pFS)iD(P6xiS?z`}UoFT_D*LJ-S) ztXbQyw7SEi@?^Vp0ab+shGbl}YG1rG;0Z^qUMhgl#J?%G!3Boa^+iSr&g0KoO)oRJ ziZRWKuWRU|_>+))h|51~sXow3;8e`RvjyLuCcXQDB&)xN0m=D$l|ueck-eS!t$Csz z2iJd>#nJ0c7={xuK-69N$N90dSf-5)r4u>Lv>+XE{eyY zoX$yd09Y8-|JSs5YkC%RC;^p7qLBh8cg(}zn!-3H_k;^D5%zz-<;sDEbpi9bXy5I} z8qCMnt&jiWs@=&wW*_YnR5ZOKrNY7yBfwHcB>cU}O%QQE_`SwoL;u8^2~;m+;%O!v zlp8>!xg-(lCP>m&Ue-HeDPP%Hv;ZN0d*hhRH1AsHgsXh+**OX`P_Qv^bNn;sAmk-P?sL2M zeBbZ)5dOhl1sc3HZUYpJ=0x8$x)WJhwlQ>c_s47~3l=y=3dn-@(~oV?L`MK(Gf1Ys zRTzLxv04xK|*(giF?0^YfAopW;@{XKiGC+z-incZ5(A5|V z?0ztKUgWItO93(+#R)ER^JR=$5yymbT-{u>e6=#0^dI6*xSEFTd zZ0}xAySYM-w5BIpY={0(98ur|hr;neNA>I&u%+e4_y+|711Ey&A1^IVw7&X7K1%di z=;^ljf<-ENxdUgs7r}LiMd=PuSQuR#qPOm71dB-i4&M6sH_JSIi}kz_hZIwPHwx<9 zy-5>21;*%t(2?vCZB#cJb|u2K%|Xns=e%HbK;0axMwG;S$gg}Gx5Rvhy8Rv_`CHk4 zL6sIG)Ivf7K><#+#j=53YNx$E(RLIeJ0tD`@au=ZR^KlO1iGY?ysS;{ynP0=eGa8u z>>dn_EujlQRZjMze3~IBxbMS7Zub*+?`&AiefL|>$+i*b8GiAYR@8}#-T?d|hpTKD zfKr`O%>V-F5hYP!uRX;*yu8x@hkaJ@+cJ=1UJ0Qh_dFbfFjdjW{% z{1&P3=a$aS|JZ>kbOHkZj2?_lXZkQs-1&BY5AzFUd9~zNVC-$vCikwS?84WW{L>aC z&PPB~kWn^7{L2GQzcxK1CU03oEdaLfMW9G97(51Q(cJ^`ve7L${F54qm#2TQ3BvZ03fXOzXc(r zTeom^On6Hss7~Pr*Fw5J=*euCC(qI708oRoaimx!P-_VAn<-R!oKXLL5w(uC+y~I9 zncpEhhSyJ1x&ds%s3*lE<%kE=S-&Cvt*K2KF(z37jvtH;t7*PhRknyds1@q?;B!k1P;Y61 z6E{0rqE_~W<1RT zrB|dmPqkX{TDg6@^p5eNU&P$aB6rwd+n4VoMF9hILi(FMuR)lB$;Ou1<+`xNg+hm3 zm&9gX3(DuT2n06*YmrP8!BcX(WgkD1`01BeiS7tIdnU63)5@P7@2loW80fnn@0H*u5j_~XeWE@!f0^M-t_gzix+m2af7InhUfEwrQV}z(zy2jJ> zi=D05tDqmOVCD3W`j1BsJ(F<0V3PDh^qFdDgdvj^`aKhfnEE+5U$%Cw^tE$}?1@*x z?g=SBMcXNLC53sTn}Qs(o&zZOo8JImg0FS(8vxE>3i{}uUh6is$p)x}jtbVIk>Qha zv)`}|2E-!N%71*ZKc`3lJb*np{R^Jh6U%Nr>v@4W_1`rFIPFrz!2wJJMhfV@LHaq) zu3azx@f7Xf0@`2&v)9F=YdMG1+uK4PBk@3(^A&NKUkWdjUWnSpvZp!Mux>G;H^86f?mdxPBW+sxjJ zb6&C!7sYb?Y}JF4?c>cBzz~J;NUd*S2jF% zya*^Dg><-BNn^Gqg}S3M_7#KGZ!sqnC5>t^)%*sE@TaCD&4zq%n=;sH=GYOP?AIQ# zvD30HWkA&>taD-tBxXCnUrsDF=i{gTv*dI>bSMj4B)igl4DiZncyESCIGUZNZwtva zO!Ry;yD*OoXoNU+r}uIhkL<4m$s-Q@%BQ$qu1oX$hkyT<-JK-C$48;ntj4zpA^0fW z`#v%XW5ZQwE)r|yoIRbcJQc2cke^T20Pu3#b2F%eF2pDGBA}z_d;L^s0}qCJg@l5; zsmN`;C;hqF#+<|7cpx8Js$Mi2v2J2^871C}`XFz7uk#Dr#fPAm^Kph%V>q3Y6-d^# zqfa@PI962TByG8m^Zonrv0%;c!u8z0+!hxPA1$NtZ@h|{DynJ{{&j_!g2=$e$Rcx1 zptXeMSu(WtmN9B3dNDdSG5mxX5KBVd6jL**epCsvM7MyNCTli-4)_DW!ZWNo`@d^1 zhO|VNZ-fNSFr2@GjtfRZJzKlIqAFim!RbPp{A)u*Q%6) z2=^0o+*sqv#NF5hqFbx%2hsc>_AwJf*nj`$A4{-8^r~RrlQ%9o3kMgP>j++4z3~20N+WN1%h?KhKa0PXS9NNb$W-boReZe2XU#ENy9<)m;`*k}$PYj*%VB+X zilxnqR@dd##{+~F_6Rtij~n@hq}HX}nY(V10KjJ%fD{T#P?MLgc)C=W*~=8SnIq2p z;_t;~u43Bb2&4@x=!Uv=vZH?R_;3uQ^3i-eA{@_uz1XhiJc?tF3^ISzJSvb70$9A) zejoBTCIF|4gY$k(ftI;mpO3MyIRq~|1Rt!g>ubwj#8U<-FWyY^(2qO@7c(3FP|++Y zASUmW`JdY=Wz1YwdvV|YHf`Ls`u^ozz9S0|)h4oopuIM4QJZ*<9$aK<7SW95 zF?7nO?=D<;PIT3mRFaEoO;m)3IkP0gEpkalz3Twp@<725I|!pL>PV#~&Ih?2`@=wC3@MAa z;lv}1d+PT>uIpRuoctLO_VMIdzbPKq(%!=__S)PpQKegc`lFwstB?SM3zb`RtW)_i zuP0Z!temHjNlsCo?1(TZ$IqepwS8YYe*}?x;1fT(UQbWb@Mm-8^`VWmrSOMCwGwrI z@i6@GfW`tpZ79dIOBq6#5U8OaEw?%ajsGL3vVY(q;gqbIr7tuxiToOuZO?07pA$uAa- z%qn;zJmaLmmKisyTA%-(PUEtrk|JwNx5(w>Y-fj7#@SRBDhDBj1bWLA zKb+!ulrcW6WNDfC7OC&-fEf^()u5%mo<~C?Mt3ROBX=KNv)E%sfp2gJ7U7sqAY1(4 z&vWZD2|FokF(0A` zK6r8oJ|phh&TaT5&-?ZE1wF$m#mhV>wdwdkUqA}&0Z(5>y%ZS|t9ASp^U*xPuIc!u zoh&nQK;SFVOg&CFlIzl~uRM9hGx^G2nk3^w?~3WRki}6FakvNbP}1da5Cy^F1#kTI zR@xra)Eu6FD8qQ$^5j3|OX;K-FnI9heLXJ|(0n3ARj7$l3$;0x8UEm|iF~=2qf8iD z+kphAc3&}6{=yNX6}o7AkLcC`eotFa931_MUJ*t41JZMp!RLEXJ!`9lLa_m@NEw@W zRPJ#c*0|b}C=#J?>Q!bckX$Ceq7hE-I~E;W{q=Mj)%A3oIDUI&Ic+l@j=o#*T`PR( z+ioFsQFILjCt;MZszY9NCoT^NDxD6J_0ySKE+~GlK=#}fe_>sKUjq@qpW=NAc0!=i z0vzyubj}o{MwyKijqnz(9J}WBVYisef(wH&-UIi*N{NVdz5!guZ5 ze{P?)bV{k*(bcij{yJC0b^)jQ`&h-+qoJfYne71|f!E4G4{00+Imbv+;2+TA05Euo z&O)Y|Ig#B50}KU5x|FsW%^cBCS;LCbLg#eZ>ixb67gdNvL7~CF($Wt?fB&AqT-;Kj^v8ik&MUjgSs_ zMJUyS$0;Y#V1Qwz9{Q>6(<-O)OOGMeVm76+;^o%`u4xc)uZ9h>MUboao6d=(v8G#t zgMUS&eG&^(sb!bCFbb$>Hpo>J_?{ThlBJvt4la9Nd^GsTP?JwyPrm=2?kXrqn8%zU z$Q!W}LO=?46|N$xU+*y(C8T81%`I<8qG)l*O;Ap+E5zWKUZ|@og}Q~w7RTjYlY)J; zc>wjE{3wDt+e-^2q>^-fpIjfkPG`MmbZmFI*YRNQGlOavvIVDR10>%N1yir({m)f; z?iySlqIIM-+@(da#7~_1($9COD8Ie(bB-H*^EYL?=1kvxW5US-`No>MGdjPVwo{X) z)3496Y;@6`Pg=$c06l$;+`~Qln`iNGv)N;vighiE0lh|=@TUGh-Ifrrk8Y=paB>&| zRrr1r6BP~JLISMr%XG#F18#p*r!*9*}^ZIH4f#0cm3 zqqa1g0=-S6%J$H+(k&T(+|9XoFnDzg3HTrF#-KI=-^g9}%>90&>;}WY=8V7C4*NR$ zF${cN|0sxEy^NwFdcpO`3I>Df{*UvK?W>u#y~@vbZB8k%#`xR_{naKhm_3HY!J`yF zGSQK`QQ#jL_2lP=>#H~B4tcOVv1}Q0QUH`SHQoYZ!A&E*h1Bjpx7>XSd-A3Cy}^LC zJ2;n$^Ea4*s9*2FEumn9*+3n_=dO6T2p&Zhh;OIX#1EZl^2w61IT*REw6SUjKxQZw zfz;tN%cr+I?-z+b|2xtx<5D9iXro+0H8xL1|G|P1N1xsLT06+-@^LTSY=PT7PIEoh z!3VT1(>3~$Y_!6w$V5GYA3Nn-c={Qk6)<+&L=(P>SYsz)44iUFBT@`-I?9dj3f5<#((d%n)-D7?RmUJ%NmnL5MwkHfTDOpNOf%4 zMF<4>j)vNXTK}$QIO|-+M!(@7#4?P=0Wnw;1OVYn-_a{~5qvfPxGqORltowy4{>wX zCKyxV61B?*S3A(m69OE{CRA3vTANMxNUp^_Pr_nudle4-ybQe~_c6@6T;7o8HP?}{hl z6_zlR^UQ_=8fd`&Nu0`#%gf*VqcTIBGlT8R)O-CQa}N_ky&(5X37c1Yna8LPuEDP zo;l&oGn?!&?GucU|N5bKXfjx7IyQ>G*|B_$VveL=HDCcUCfdubw8q`3EERvg&|sY? zFLWB;Yt8rXEV6@On2g}O1;;eP=XY<$mBbefWP}NB`61usB|?n<`VjFtORTxBbj`WX zL)R`pUv<|`1Vn4!zX(<)06uY06#+3pgrWreqni+#N%;u3|M=eHoZ#|slfk2b{5-n% zbcA~RcV|!lW+eW9qn7*My3@SU!}ny1|fB9{y~LJh-n zbl=ff!EA3TjI>*wW_ukX#{)*kI zOvWd4ej!_`2i_n9RcE7WRgQl>b?LV#oT_mlT7(_GKGuq+9w+eTClhwiXv(QmEX^>` zKX94IY!vDvclV>J@w&uovm__4a>P7rz_?s|! zUN&lC(JZsK*GG;JZe>yUwls75-O$~h-q)(=D=6X#OZ8W9|s$2vOs=GXGO5 z%Y%`6e(eTr!t-C_v#~?&5MV$7PNd8~N5lXc=wVjIsp={u508#nx)4Npl+|s041({_ zlyjWk(NDU4f6Ww=n)c;|j8WKop_p&)BE2#A$GxCiUk=un@=T*LxlO`ZA7fjsk{_}O zvwgV%i|)+`1FdMtXMc?mtXPG=;YPmwipH# zf_~;bQWTVCRQ+N_j5vQhMb=465#0Pw{|Ln;5rR5$#eHHTsO*QWZ)J{r@ zt?e}tz)k!EeLSDo!Qc})^~)o;%Ga6_X3VB3wm7y-)4mqfwe9&p1l)R7Yd7IDF^3$5$3^>Uf|~+NA@rhV8RX=8lm+Z!7&}P6ZSf z7J4@1h)lJEBOse7hQ9me$4$ZPeiXNuO{D!;;z!o`w8F8sOZ zaouwy!})6S)w&I-1<~LJq9W&WG-#qhRVt|vBJ%x8(laN6(6GZsotm5wH1e zfO>Hf8#ogfRHC{tK&U#GL1W4}oV;Xur0&3o1%7|Q8bXBuU2(R3PgYl2(=#}d4Xwlp z_4zpc>qVEby>g6jj*Vt~mJos}Jc6fX&>_x_jV{ z!HtG*kAYM?PzW|Vn)03;nzki(F8J6g-~8{2txrQ|glJboU*8LQ)7bRbk$!Y@Std;w zzHv2WbU@yTorEwXCjk)%U{Y29=3Dt7ZQ||iz1{=eh7J^p>u10A!vm7vShn22!C64b zfd;LZ&_v-PYY#J%zz@v$E_8})6btgy>Strz6@!8U0(dt zwSf60eZ=_i6+TNT63>5M^Z?DD4e>pyCtU8#EbaC^3)<_kw%bi(1Vv9*Cu_L&=mCJ@ z_zQrYqZBEK08uVSZMLICH2#ZS93%W-j!pM zy&r;KfMx+noMJc)5wmxut&A+VluQ^9+;FX;Qb0SLej+oaYsq2arQ6={Z{PS2*B{)P|19&_@3dnVw&twNzCMG3N@E=TX@EfD^5JwUYVEhFMN+97-u{Lv* z<-rt3LKwxY-@d*`#4x5w$T%>aOO;M;D7)1G2j((9T-A@J3D+X*p5Rr@b}_y zu++zMC2=9FY`?896ltreirx-)n$HO;SxBPizD9cy!<;s#Ni>P6Pc~f#Q1-H=CBM^U3n}Q z0B+u910Uun`>85uietlHsOroD;7|hwXNevm+uen_T85O>)xxoODMJOa7_gNDv&-#| zH9>Xi;v^TCIKO!*0o~@?OuvgGZ=l`Vr^#3{Y?~N`y%o58lp7YQ?|9@Kd(p_OzAG zoIVpO!Uju#WZ~75M0=hzUX2s!XDdMwk3|Ic|T z{b;x&`H&mkD3GV{yba`QLddce=Gh2 zZ}Zv8n7|##5)iMtxm`_w&SGE{w4~`~{u6#83Pvtz z3wJ1Vc|c{K{W5)Ti{~Ncbr!i7fK#Fc4q>1Nr*H>SpElVeBBCfFYIlB7R<{4uK~5;R zd5jO0Buc8r74+A4uXOKxu6gWsH7)I}QbFeQWe9xj55pmI3jp}q-hs%GF+@`E2GQC2 zzfX04)&E1e8WHntpLSkG!-on%RiQFRXG^V7$~A0qs`|jbNw4n`MA<*sqb(kZ2ON6Q z34nUVyYp_+yHE4Cf*IDv3v5@c1VH=FXBI#f6%C*Hg!qUh3%&|4K|vmQ#}Nj#DsKMF zg*9Fd3u~I&YHO-E2U=NHOEWSRiEfVpqAD~y=vUNK@J|95L?(^3iGYfQ?HmH7XBUlz zXQI)lnXbXh$5R~d$s$WwPXU;3TMq|f}7{Z@eeM& z38?yj%o;&eIBM+%C_w)0C`kwcs!+wVxX^)KFJ#rpJP!N~2j!Eu|Is<{D_>-mm+roj z@QGOdZ4$oq(8Lst`Uu-KYP+Cd(R~O$Ml5D`mgu~)Jzwd!6vBgJ($~Koss`O*P)kpj zxQVJ)2)yE$QHcZdAK1;pWE3HS-ZP$zI_DTlfi$}2+hf?b3!=(rF$bA>6B&jW!QsH# zbY5Q9j|tgWEs%oM4!;izgQ-b~lqr zPDVJO7?Ad6I6&ePpzx7?vHgDYx_$0Ib>Od0LctWqf>eUi+Ayc{zll^11r+Qmj%??q zav!C9YbK}iaUlO^vQJ>>gF0OgI~Nu8Eyq&s(b<?4*54Ar-8sfR(=2Yr^Rceq-Co&+*1T z^$?#622SA+g@P~v2B)SlBgtatUf#=UN;j$usSr0{SrNe`X*B%-$f8qFSidnOSc^?o z$GQDRI*H%49dETYvp-9W?xLWHs}lTb6(^PlsWX2o{XDlnS*tw%>u4>Qa+UEYW((m{nQjJf4 zuco*yLMbjTrQ){B|8;gj>$+eI?4Ji~E^!!mH=r{v^p4TH10HYSj|cypjsX6}F$5?C zsj{AYHBlPD(NODJHL-_wA3quIil?l3)AA#ZI?^a`y`?6#RVAmW2o=HEZT{<0W?xA< zCR`k_dDmb8&ks;waZE|2_vBqx)I-({Q7r!{@QIhuGolFws%JKrDgM=NT2XiH@Dww9 zUXbY`0wYmC1Vky#e)>O(&O4r}|BvJEbBBBFJu+{~%FIeKjx7|K*|+s2E!h?BF_Q)@ z8sdsbAu>zlQZ$qmr6{*)WM*XF-}(K`!=rQW>GS@)-|yG!`Kmh>yD;~#axjx>^0)uh zt7G^HvkbaI3x8y;khUmqw0jDZm)J{XpFWuu;(Oi-N8`HNMP<2f&BQ>5Y+RGXL;M0ZJ_J1dG2hV;$D#i{r%s=sc>VFLoI9G(Q42*PR z_X*7;J}f?JUrma;pKwsn)6;Aq^#Xguh=}3PpO|$XL^;K!=VVZirLaUfX66B2fpdOl z;xC@#15J?2x`AU}lKqMFPsQT{E8X42xwmbh<*C$2%l%N8YGF(A!8xf;5!tto8E((7 z_=-@cUK0aYFPO{5zYan^k^THG1+F;SaSNQ;+VpP8khKlTtb;D$Npf&924#&0+8)hI z%7Pz}_1-~%C6P{)I?vDq`|Ht8pK4?@n*z(veC7nNFczPC`~4)4pohA!cFGh`#nFR8 zf&|vo`91Ym_Cv{ywLDV>$cSDA$`ri{ikJkLh^w~BV$`bHoO^QB9+0Sz-6%R-pxyXn z9S9r4trK7nxxYprKmQ8J=BzuXR376v;nkRtg8@a98d(U)^ygyC>)dNdb z=S8FWc6DYTu%{O~m!3ZvtV!7LK|&T{Dnt44Yb~(}p$&0O#EzAXwq;*cWO=X9bU8nv zd7O~>LWYKUWuiJX-iFg1&SR1<9(G)_gN0232*z0C_Ymy)IA+6A*!ta<`^qr@eOn4m z1hly>eAM?a&2A553b{fS39I=)82$)~MC_f}0reWv{f=}8miH%$?D;q@ESdFB2$+8% z$&V@&c0wtO%CGRQc~eu6=rZ~EUk{yQ|M{u_WQJV*Nz_tF*qg4zhK zq6rq5fO%@q3`eNTazZWvn6fW7x62C zR4WfCW2zL(6z`kT-L4{9=*2Sn2d5VdI;=>wLB%K6--k<%g^VVh106#O&6Ak_FFL6A z^SUSjPNy4WJs?)Rcm&^!ut9!c;Xv9`T_UB=Rwg@w)(fxV4pbIE=5UG|&g!#8SbR+3 zBpT~ZT*{}KjKSR9DjNC;(0O91+Cq|+iok*2M_4@h#^Qv~n?K>_f3%qUB@Low<}1Z# z0p#R-C|Lg{0p=GIKwq!htz^$jVgud=E$Sfb+Xs;poI17hJNk_dbc#@c0h|G2Yx~yt zdJt-w%oL&mEG_-e?`r+^e!6Qjek-5#)%*dUDe(5ubEUoujx}QP2o{-K=?4s08=nO>?Vl>rfmkgYfp8n*(g_xD5e8K zrMxu6rEcuefLMX~(bgj<7k1mz`q};jahPh@43?2l`lRKdQp}DkoRR;||HsLU4PBv7 zAk}f0BGz4=uy{tVg$$i!>Hsl#S?6~V;m{Qd@Z}5Bewg3ZVg-DeG{4TMUaS3?ykPgP zoG|pf>CDrB^_IvMpwZoH6IUmG&0$I3aYQ&NhK4CB+iw z24>H}hTyu)?y3X{;zOggJMMb~)qbcwxGNd@=EtMWPlDe!e?C|LbrZfA%-ba+L{0m2 z2Hkkmv_Pu(^y_OM2`C>|9wUx2^-Ss_GO)Gs9xcZpxYY&~>EJ4A`YS+76vG6gh=i|- zqI6kKCKuF8fh)kDZY9BplDl`G>^*LB6A)~tkMJ-Vm3>FL;!D~wu=%@qG8ph=Kx zp#IzI=812|W0@8BU>G$a(8O;h^?ZD-WN{KQd4hp21SUV~A35YFb2PNbL`)1Wft)7+ zJ=JgnkzKp^0qT{EuHxx!wpuJBG96^eu$u(b7M9I@neOj3O7@UBpLg3_Ad2LAM6k9t zq~G5vXD#ENw^F1`=MWAZ5kOVeqG^kEf3!`M%q8(_3%O#aa3;`0__3>A55sY8z|}X_ z?85CZr3$Rb=QBfr>gv++XFB3hSt3noOHiBPBgGg#{QEDYu$cDO=R00EzJ{rzf?xND zQ-BO;p&GOq23C`vf>8-C1n{!WMLSy_<6^gtA%!hJg&*rjw=`dRQfPFA1Y*aaqQkpf zj1#)pYCZ%SNqpG2`E{g3U~IwW76+%22}?t14;LR525V3TM~)jpEBePDOcrLbw|JF@ zlJR3<46$BRNRkI;uH)0EPvtuzGln`I{SxQD{5`Z0Us=|F7IWWq(rlhmybxWjS~;le z15{CP71+uyUl;QEQurZTF$IPjPMR;4`KArn z@=~O8R}qM_`|;9=c+R`1<_Z(%6Cn*Uu*42JZoV5wRPcOI98yG{8uH6ZmK% zKr#_!^@w2~5AW#T;KVYx21Kx5d_Zz-=BNVG)!A8FO9%tD+NO?j)iZUkn?%4x7NKQ_ zFfPAd!*%d~x2X#)rwseThky}C9qn9dFxYy~3IF4=Q05sz{OSau&!Y~tOx(Fsfn4Fb z1|UdeCEb*o8fs19SBieo>xoQLu%Es&XY2CkR4!2X5jb_62wXF;5$p}3cly<4wJ$wh zgfwj&kr(`TBp+{e{K(4Ws0-iT{4tJ7q z3W`t>*Tn1cuK`Q%UZqX=U>5dd$fh#VZU-7jx}=&NwHfB35@fXkO&iv0hH$RnQw7xz zZrJQr{pldx+kvfS{2|k~QS){B$dwVaZ=#_d+Pg>~YsbUB8o)yXdWjfqBdnORj<70K zFZ(1qY!0=y66%&)@8%qJ25ntUDBtnfd|iLYx&5&ysM%|T^q^-N2| z2QLC_=||9#nS=RL^P`v3xuq6gzeMC$TSzjXv!j3hd}wy-sLFvB)? z`%z0t?1zGt7!i%$TCvWgQHfu(Nxb)tm#zNGBrg1TT}Y_o)b)=K z9q;cUyhU)T$e((XOjU|RnU881}>cxs)nT@|Qy~~xAtFX%tyUW=_dsNSJmy1Q_g6#w>@|Kp028OZ}Y}A83{(c!M z&m>|K6MeW~-tl_nlgejDA1;57uLCr1BS;eT1@Pzw3cMRN#Q7W-p8iKbeTfw&5YJ!2 zMK=VddkD9drs)HH0wwMz&ipgg2ctq>Q2DZ-bj8A*xJ66jxV$xrdup^J)J6yCZj`y{$aerbFf@lzoR z$sy>FuAIO!aiFO%nxHL$JU#HI=eloh_Rp*sn%UzvPNS>~s=Vr)ZzE``e= zMTcvpJy)vz8#Zg>lp|>2q7sFaVK)vBe$nVe!nKa+o~F{LW)ho8tlrvSdqlZ#=&g@k zAmg7+EXO+@G7Zpkdx#J=b@L#eYq1UwJbCLC!c{|>>{#+t2EfiP^eUg%n{apH? z(1V!RuS<9hY(wT|(5OM%ZodKW3v-|EV-6f+} zCMh^6;`oQab*_vDJ=~~52sS`wr38@xC1QHW=?w_R!LKiIJU)r)bb<>{<|-pk3nr!z z8kL4X+|1SwN-RT>D)MMOr(DLqyw<1jG%&e{EMF5o=Wd z!{v=3-2aI`zM@F`lc>mm*-R?*Nunh4r*iMbai)Wj9fhYcGfR2{l@52?xjMCq26M@cG7fKQyXl&9f zybgPa?A<6Bja)jz8aN-!{ojk$QmhZb-sJ}RJt{9BdwX3^MQ9!Y_I%B9>}fJ&CCP$) zCP2?oe&}=6EB?~3P8l^MWa7eFREXXA?K$qYBM-HY*f6w@4(D8x9>x;~EaIJhBG2@Y z1GCZ5;XEvA@S&;*;m)j_Q@+10&52E^O!3-70H3NPsp0s2@l7C0X<_SpL1dkQ{#LW; zRJ8UROM}opT#qIo%VG-AC%(w2I~>hOs3Ij1Fr_Hc!qhVdUR?TpU}s>%uSK~-FNX4- z2lB#=wFlF15zw8K)ZyzmWs;?UbjIM^^*)cvF!CnE%q`&{Z8{YK=48!ccaIPwEN+t) ze4RKlSyt~W2oo+`t#w+Eu-VN6{6`-otAJ2 z`>SRtpHv^2ayj9~+#iO($qQ$RLXO0;&*b1^AB`}MB$UiJ*6vKZv zJ;xK5NT_6lz{w1R8AKsLPF_}a$I<%Ltis_e9QpniZVXF8uy57TfN9x=US;ck-v8d7 zd{+AQd`4p$Ls}o`JW>v_LifJ%Ve&YlTA-YAK^t~+1L?|npTtjRd9DtdpKRiTsWEgH zzX_H_x3Z1s5D*Xtmw#`scbNNR9<5~f`-Xf?z4s<^RfWFx4F*&OR0u?7N_;>ik_PYw zcl-D?bG_ICT-LL`e9$A}_ax}os&~qkRR3b31=r6z5J7Id_p^1w%C)qC*~P~O{=X?s zEToz=>7A1+*79&2f<=nwaU!o)8U8HtIkGF_WK&YdgTTgT3QdE!=TLwHLOSkKVi=jk zmR6x)!OlQ)+VhcB<`$^-cGJp-Y%uF$r1i{jBTPqb1}R<@2k_!SPBmv$yfrtq4ui45 z2&4bfX@y*aeUEzwE_5&XzR!4IzBf+~stJiiR+;F^-k+0=@(`m)`x0T0p#Y`cr0Pvj zv8l)Gh+qxLzue89;AaLb>_}6g6zEP2ZjjrDC&u$`q_QL8U8;}wwjJEHO%27HFve0u zu~-sp`Nn>E-|_d;6?%MnOS3|8oQeM<>)6%TYj}3@J@&_F;DWw3Y9>(id4;m~#eT*X z8a&D9HZfWF|9eNZ_to%8Tu$}ZQd((Y*5Wl0z+Y^Q4=$WIS@Fzl%HS&D6=|jBUhU5d zs-~9Kz{D|>9(9MQowN|fF)uTJo!23mj=5|4o~u{q7_(h=S5|-6DS_H~L?;3?#{Ve@ zez8JYH2V{Nkl}0;QpyK!gr?I0r(C=ZY z8E2ISW*m3o{x5z|fuD5mk=-@azVhCe^}8Q(u|O*DQ)p(NgBbBO7j11be`XQk47=EZ zz&v|rJqr<$j}N;fjtL9#rW8C>dIgna5pTuBz`>FCd=bGG(MYE2XwKT8sz%~g9V^gK# zoZEr+@tj8jY4;le9d6KN6a7^(x!g$XBaeufwT#OfXT&9XD*~cIk8_<^n&vC>Ei!{H z!)HISdWZ`S1pL-JeH8Gi5p6r$iAaT*Gy1d>Ta~#Mza%vOR>Pz=bIk8)99XMHdr!*l zx#(S~_dDxVhxvZaxpIM>@C2dH{5MHu@xEVvG^%nQtK?-q4X%zc$29jNCkxqObT_cy z3`XR7jr8kPd*7JWu}Ch%4Fs^#2Kuh?yyiTvbNn0MaixW@7gofN$44c+_36vw2!e$u`Tfnd)UBqq*hG@wcQ;_FM>|f4>xA?xS=Up*L)UT08L}n_{*3Il+o= zcg?LE{bLv=d|=;(2)HiD;1_@1$JY_MP~zI$RJKIxX>#9DxqpY;F0Wx|fkq_Au7+j) zJ$nW%G#>wts*20)b@1GmUKajvGrYo_9!eiCLOP`*`-BF28ZY^d6oHj&uK6GXDft_HIS+ zc&L}k8qTkIKhCfV4&Y`^8(z3b1)N|m(? z)Rl_{2b041LH7)&NckG4d073(XNCkn)FW`|5i#?jEQAyTE=IY-1*%v5YWKbot;^(H z2tk3q4oBt^eJ`nKI80GQnFt&6Ts&qXBpx}FXgTM@i0BCvC|ZqHT$uxwLNe#2W&wvL z%JhP%kDTS>UZnx+w6nKuhEP3l>d_}*0qIz&rx3tyX_3%RzYcTfF3<2HV1;+OUwJ{g zx-ZDUMVYoOk^g0T(Qnh+YYEMU69oGA$}$Y?}k?=r^)o24$*`+}HPHvus)8A;sy%XbK$lCQ5~Y8GtN0@;&_;C|Of@ zI%3Bj|C#T0r~5r4!s_9J!N-mrGfE|<{MaYPtEvZ`f6c4c-gFnIs2X1EN;Tljxcye_ ziyWmB(!@|>yph@)RPhD>Voq^>1o%k3`!*>II3!tLCo6{=|3tw#OdYvP0z6k@@2Yyq zkB+=;vDciSS$@OI_&}(5PD`~|ZaF(1q;fa@|6@`gM#}--B4ZYW?>Vuvx6` zmVFy~ynWI`*l%tAp^|(5C3QJ``lOrIeNuM z!q*ekW9;m?(Wa$B`fN~1Hma8qVug2#LjyPTNyLU%0jj6GmO5DZSV!dBpbY$cNV|vU zfD)N3$*#!^xT|-upn5i?;lJ`TyY774&nvxd^T^Wl(B*&ecdkR-CT4#*dK85AC7CU3 z4r%svC;rjXb)9VI+4Wb$0%-S4l+<_DsPWcTESQuoPNLVMPo}L2Y^HuvdhX<5-m_$vbXVOCo>j)Yk zSnr+okhAEww8eo49fA2E*cqeU-7PYkJ|u7YvF*s_<9}Wj znZ?R0vtQ-P;|uhIqN2VW;ExGa3vU>Yo(UzUPG)V;Yf} zB!p(8&^#!IFHDyvw&`-zc{dzEo&pmuS|7+le}KXZpU)zg`GO4ObhlG26f5?`RT!^s zHg*hk2vKyxl(YZlRq>+Vtx*8yK!EkacRQT72TJU7OFd~h+NZN#Mqv51gIb0$G85>L zGHSja+e$x7bPz=EBZ6;!vFcL>T!ANk`mj7c?+?Bpt&Kwx!-&|Y5xVCN(%un(5(*sa zzJqil?DB9HNyA^}-nrFkGS`EWnD5`FU)u>N;0O_UwWW9Wk!3@LwC926URK!ataq)^ zE_daz`lEg7=<73^sK*6K_SfB*R(v8b1u;-c0&$Ba4h z&>Rxl71>(hM0ySJ?hB?NjGnVNwzPUI3CRSZ6g<>#=xO?1rZGMVs?K6BPHZ^c@(he* z`wm2RCfJzc+lAeXs6~;SD$`_$-t|YjxU}$|8!toJzj5`q*f4?(2%j4>@8IrvM=I># zj1GCV7I3{6gjWLixcH0B9gDWJ*cvxX54(SHAhGa8hlJ7ZFO0diLp`5t^i(w>R$shq zRhiuS(2j^jaALR!@JPpA<%X2lwjEt12}xSH|89DDx;`8y6>|b`*)OE+XsQ+iNg}!z z1D%>sU1gJhICl<58uJri#gKgWy`vG-i9UDUdg;={po_4uG&BA1!S|l$pAMPaOJK;^ zc8cN=R`tu)@E`D(cV#%RY$~l)_s6g@b9izjZurKzf2@vF$zl zDmCp7aYs#laXdb01w9|%+f)0lpNwA0$v0s=8nTP^+!XGtr%dVT#3gx-A8%%5$4)${F!zn~c9+PjZ1zEGsi>8ka&vQ&M(1K= zHh$0bXdA8Jq7Rui(YDHk;!p<9)_o0w@vmC_!QPjb>B^6KL(jb{Ss?o(EN@Eyv5FS@6=Dmjx9+YC@Ss`PGH?WeHkyO3i}+;9p||rY8DU73+2S% zuq%N`i}ADFt7GV%KndT1_iehzTDSicTk9|3dNt1>^=QL23B)0^MvZFxs&Exz_|(7Zpxe8Cw5gvsi$mr9f<5Um3ir6aqkAHit$j7jhRyHubqP*7 zD-!I1-BscY*ep&S1SKW6aLQvmSui*Y*T1jvA@xZXWN=i1U}|Q8BfrpIBFbpX?**TW z6siJEDIS4h=XUkSoZd=7Th)Dp!wKudm3K7d?zt^gQS!ha{ZP4&i|25p!xh5gsQ-R; z_z3@N)J1|afVTKIE@cWP37&lUHv}CYdwBqQO9}d5e=ZYUP;uJSmHgJ8xlLFCY zPXvoPo-dV#@EJ9jDDAoNIVf#mXRUC-_q}aF8RxMX|vxeDeCdP54bR@ty}BM2>@96!F*U z(Ad5y`88WgMfgy=yr|3I*WRy6e&}c^DKg8}_a5ujfEcd$*y8%r@#%KmaYE;Nbudmo z+0EIOtEpA!wlfy6^ZyAjw_CE_m?CvFd@ejjdD3P=#(MC+sJtssr8%!hnVS_FEGhsJ zkQ4+iil{PL;*n^P-=_TZ5>Ds!f_0E<*_Z(sMM#-$8E-ii8rkktVPCuFa`BJ5f%jJ9 z?71O10YQH?#uHfWz#PWK2g@gnhdClI?2<;(;UuNvEEiQY0mon!iX$uBU^<_79=k8w zd*h!9FP#8>(#TE@&U;I-oJlrc zdf#L;^9cG#jqc1t+s1Gras#g`=5T5L!}mc2Sxg=jxjVV1owLtzj75pe?J*c{aRQzN z?;5lvu0QRX!DWf{{CD$rGBcp_0xrHrSoBl=tj>~Z#>)ZKhEB2c~~guhJ_!5d#5xGa)j5UA`_P%M9msuwTACyQ4!E$=P`Cl zi04Zgskq+?rSka`MRlGv{L(Iyu>Y-45OjRu$A_^-Umnx|)NaVGw7Zp5{kOJd87Y`} z`%YbAn)40W4|k!y=>M9;&PG|RovbMLq=0E+nEQKmi4SD9EBk}I2CiX`+ZtlS(hMQ6 z%L`rYzLew%f6@3V;&=Bt1dFj#p8J+14AKa->ikmuNlt816 zUzeQp8Dq7Y`E>p%B7O^#Y<{-mSs@=^Ut^=V5-ShI^n%tFhZdgPK9O;3_k;E)Ost|h zE!`$VbF%de{n$tJYXjbL9~n@)bCcgXg;id@q_v_HLW%IdTDj3Qy4slY#_ZFyy0Pi< zZ>RAY!KMXALfTXi#I8nifS!FS@%FrzPEDrg>XP;QNC*zm4TtYX)C1GE(zKcA~58DD2 z=kPwD^9^m~(jDyFLnZYh@;yC;C6Sc(W}eLXy4C(;GQ$667jYLN9>s{yqgDYeep;|U za=zIwjFScQg5&bo6AcZ5!)rz6Z9orbXe=~II>`00MZ*p*{rIbKA>L}mN^H44U$5|o z%31m1GQyQJra?P?^HIM3l2BK}qRT%5?CmHxafYm%gt3II>z0 zzI(sr;ZKK`RupIlA$XP>jHe=^K0BsMzW5uTmqmo;n+Ki}UF1NOY?AE2>geq?|0BUQ z8q=A&5bg4_&78KjJ$2!j&B7m>GpzU!?($th_hC%pAx|+iUm~qR2)(b*9pD_cUEGESez@Umsg9$38Sb%8py6>h8#BCy&LPpq$~*SJn~ADMtn z>f#ja$lEwUt+@QzplH#~B97awf?`sq!pyG;Fr#BfNRNS@~?=57zg@OHRSWbuqn62%C6|88Sli}Zx_2N_5QPy%Y@7@gmu$+ zZVS00Ix0$Rf6$Irj(8FREBZ#5a+@3!ngDZ8on{KJj>K9Y&=v7{%1Yz&VVG|it>1Zt zy0SYti+!(aL+|mH&4)ZYC%%cTni0W^q=wr`oL~F?X*>bSYrnqT9kkuE=FiQRfr#(d zw{6*W_BlfcSW0k$A7PEmb^m^H?TY)3UUWtPih#;j-Ss}bUxSRr>%QPTvkJ0bt~fT_ zUBgo*!sqDgc6{>huP>VXf}xj6gX zE9-Iw({5#Miz8CorfG3fkR$qeNa6k3gKyW(vtJ^+FB0(lLz*p~3Eum4IqPer!M%jO znU8VWE;k6)HY`H~u9ITOz+V_w&kg$t0^(%_Cg`m!8g8z-wpB^E7d-=E#B4qYP_S0U zq6GgvPkJ$2ogub)Ja6Bi3b02QN-dw%rk{KpJP-yFI1Eb?=$JxA$5bC*|tMh)}v_W)WN<@^k(mOq#hdU6Hg4j zjqy6tas(H_@rNRPrUM#T5M?s#J%#tp%2G0e6gLM7Q{k`c0}I)5R^ zLlQ0L(Kp6hOqQ5SggkchaDjr)$w=3Oa#C#hHGTfwVsJo`rAanAaS34_%oD@w!B zNN;`Zd?|tV1qgW1J_;o43n5zIF8&XqD zX1?!zsrDBHY_S|-=P2&$mWI@Lz$=STH-5y%TN}9GsS(dDy>`5HHc>x?m?3aGPlbzs zT$9b2Fh7Cr_S+NSU37TSLSarEXsEdVS8(xgY;=6%rWk20>j(OkqEZB`f$$&>&q}&< zuSCRUC}hF6ejO*orPe{I0%KsPXZ?=kM7oIosZ(Vt63_OgPh2ps8TX~$Z#rGSC z8e-7NH{u4=V^JVN{2+;}^1)tDT)d!zmxTd+BNX#oO8U(?eu9g2d_5Oz#vfP`1?ukN z?u6z(-NWajt}s^?PElCf@P1bUC1C3^6Y=x3gP6GYsC~!lur1fg z^G`K*TrY8v&su%ae&gc0NC31?6er@xQE&sjDF|_D65-aamJ{AZWsRJCqKgD@9!5`W z_Q*OeI~2;>%-p5xzfmy^x+*+E+j~eF59#S$=Pp$_G{|aoDIadH3Hh|?kb1?)wBOx3kUMq1MVc+;h{8ZgYEgpVAKp=2uN8!xwJ-douY5qr_au)gFrbYE@IC z)z~q!x*Fd>K7oJIeH%7DP;=sr;;`%nz4HRw%2{N(ZUJBlEZr zZktE9PUs+Y54m*+=!!M2=^-ykQ0hK?=I!wpr*BtRt*UwbIgc7EJ*TTdYJPqM{Y0jc zSjTbL4M%2jV5aZ$DLs+5`f~#C;B_>V_7PCay*`WgioJeRWKQ1MNE)^oN;p1crDA`V zv#3cKD0px2G}WH6Y10SO8uwfLgzvLcr(L*XZYpxdH~f}>Fu5~Ac!JW=7v@i+JUk-Z zCGMT@NmHr`HT7Z4lrEo)OHe4H(CWx3eiT++a@Q=w*=^s5d+B+@X!v_G0^ImO)iVTQ zebPda#zaJRD*mcE4M$HhBH^dh zx8fq>1RGdrLf3|i(s&6tf3yxo>k3B9e)%M3U1|AqQ+`?GYv4lsxg5edNx03&%GV}w z0#_FFu3k1>)`N215eUYV@wZM(254$;zt(@3*hA0<+Sq|)@@AEtIT~!v9ffwVOt=# zWfuqgQTaG-@4O@lo1O0XlVF9g=d6w`aMNgzHo}qbKQj02w#E|PbmBMIb3|IsL&NeI zl4euo1{OYU*w2Hx*+TFRKtLIk2t#`ap&|5iT}_L&bDE9{&5xPPZAc#?wH{j^BhPNd zD14z&su3rRJS}_QpBPMwmmsWmBiLf#26Wo=U!Q|j14k_aVzt5SI3#aDG^;JxUjJc? zW$hSAmJ8Vkvm>y>(`Y)nx`|nIoAJ^+H+vt^x7`nJ&63O-FbbNzoaeM2cy)F{a7UC$ z8spWU@`qm8SJcBCd>qtj)?9F$jWdrHCjJ7aOaw1D4T!e3VJ$H^$=^9Y*#6g27?+8d zS3m-ya~%GzKXN`yxRZ(rno)T$!5#{DoX#G6_T9%^Qb-Or%XO2OB07!VT2=-W5Bvqk zU58G6y>#=KoPj4Xn!PTYh_A;w$$d&W7(UjiU23jA_<&0}uu7`TeAn`ymKAwZz@2>8 zR>%K+RPioqosdE*3~Qm(y}(BaPf=nMr4wCB&&)oN@w{w7X<2zx2a%hy&5CZL>$2mhZe z2m7~MJ5Ko=Ci4(M)d&}B(9htSAV93GnBOe?R7;&4b++#CmE3P6EtWS;V42!acZ3NO zUU6wudhF~^X|5mN7k62%${Z>(42}Y8O$I?H6d-1ya?WjFf{wH7bPC}fu*+2TlEKGd z>XC0IHAn6bEY%DT9$X>HipO;7(NlPtW#ObAM9uoG7q+=wvV{XK4HRGJW`P>eHV)5UDqLGkhYVopb=}`JY z(cpFx>m%OLrMkk7Gwam7On3CMj;*>SxD`7^5tmw?;XCJh$O5n*0 zj#%z-OgA!>Rc2q_P|!MJZbI8B9ZNSe`dxa(>S-l#v)<<%mGzER}CV(he;nU7h*-0Y8 zDU3*51KMUNqyPw97VZ>DSmdwz>+#s-nonZJcP$G){^0mcY3fGcmk%ty(DsqL+DNYc@YR;ND9ULSa@RCK4@-ciUtY)YeHB8bm!e5`=QW-z)WA9 zIi4R{tE<_Rd}a3Pc*L#Y;bn!}NnMc!Z;)`#`zT>82*0otRSY=W1fJ#kv zQ*o}>5I%c=am#PJ;>J!FVvZpVcR3@#P9(&!nD_53K1Ck>$BK8mzL=GK zJfqz1=jS?p_xY?KKJBEfsR+P}r-GnLNK;1bwtF{KYlj*VK?5T|U+uVVC=|Z9VdrA0xQ%$A->J9H@PZQ-{YzlDX-Sd~@x<&-Z6{fV>xb zR$GU8M94m`^!xQY!N>2Ey*t^|&re}}4*Ec(k^#>`Q7a`V3QjHM*Zg^~i+=Vpg9lQ4 zd7eb#hNTxP2Z&hmi?OTsJxkZtK30iMZ9IAN4u~z3IwyU^5A)#UdkMJtY^ZeT|8KMe zSJ!9O289W>4?UR=lLD!CZ3+JEO1&rkz00{`LaV9J=r~$;QfD>#RP1Q)8~DH!Kn0Zl z>LK-}3#P#Cd~$m7nEQ9b{X|H7K*Y9P+Yc2;8m<^9a>#u&{pipk8!}{M9^|LF;!zB6 zqmQKjq|e*TO->Sx<~DP;F{Hng0za`aJ3rZlzbck6{0^V;%i4LL>GJ=bBBC#&G6W=QqmMYzBuU!I)o{KKhR#W zUpX}9+bzK_UFAI~&5stfjXvkpi@Q&7F(p&6SeCd`8iy@F7qarozW?|kZJYWV&K;h^ z^Y=C#ijEfSdB=wj_k=&dIgvK7NbI1AasF&_0`!io3#@YueWm740UU9$~!LMp)&AEJj9$VD*_!W!db<<^4{HV;3T{`bme%+ zMIt!MLiX*S2aF6t=e#v|GOq&>Q$lF_hl%He@W8&c&c1ut#kHJNmAnp*ptG4um7#5} zlyOm8a~5EsW^~Ezry7#(^YA9!#xq3r-`V16=(T=$b<7-3$s@^XgV4W|(DTXRf#-1b zOee4-LFzlyyMI%x918JDLV5%@5~fa|K7D69ai6|2qS2@U3cI*t3@MsT>Y_VuomoZ3&$`_X>%z$azb`y~zjsL`@{l&q8XYoE zm}c+220QW0K^iwHK%3U~V? zZdD~8b{%57cWb8legaEs%2yH{EF`n+w6*;pirdqxeaF+n&w(em zX|9aqk0^);2_@M%5Lks&nvM|8u|Q*E$NF9x7}UBNIB@>MFXXJ4jY1zG{@Fy)FhcJa zr{Yg__)%?CO(;U;C~)bI2$H*rKqR8AoSmB$N23XZ(zBA+tPdX=I83q3c2$C-}WMOgE=@k@+0sq z=jF2;ufq>&uWtIawgbV|3t-zlJ(pVhy_h022z3y|h^1*jYxxAygrNBif~ccQ{(H;r z3Jcb^(AzRJH{ik!60q#8FuN7ab|Ns}I-T0SZ$!6^1Y+Z8BO-Y;|xAuZS@Gw^LkjJ+T4{(Onh z|JLJ1u5l5k7v6|~J8|)x%kvQUDul~Dvf7b~$9K4y3uR&M5@P>(w|-hu4-RvWjCPzH z+)#+epD!1K4zBQ)@;tm|upH=jIFNBZy)H)=cJsllB01=fZyXIHz!71e-iLeV&ddx^ z?7I-w#Fy$#Y`!^?_63a`bI#5?T4FnyS#19!)mp*LkST%LE~ccwM3`}?C%Wr{5$e}- zyL-g^Pzw6s={%2mj7;buS?Cg* z5c2N*tB?CxudR~F^L(_~?R;>QJc^)~fIXSU`4U9qdoHOhF!{FW;+}DJj}Y#nV{aIH zw)d;b5$>u$Zm5X8)XkNK)_8lE;Hxc^SPSs+5TRxB9=s(ACw1MC{4W?1NYR{Zcseip8H>#&71*Fx;4R zhd1Rdaq4-z_r{81<_&M_2Q>VkJ3!;zgy;hvmLbX@$CYQq2~?{o#sP&HLkMW9-^D;_ zsVDx1cg^(pzsP=lfEC~ ztYZR2d|dB0`ACG#wG&%08g!p~{;05HaaNU~s|B^^44~mSKZ6T?4!paO3KY>q?A=0A z;{cj02?L#EuBc253+35l;dxWq5l3PIKM%I|x!RG29YdBZCJeykwe$W*S6H8@i$G9> zPKh?%ySe+9uP%I4K`OTP9sBf)$UMJILzJTkz7ldgnicDFu!zB|`?1OMHZGqv|@(m!c?HB(h^qxPgGfG_v$ods13#!JXn z8E)9}xoo0n2(Jr$nP@*U`$PGn>?uWXo1ZwYjZMh(MC!R$|C2>A#5NA4d!JDXDH0$W zMn?BB#njHNhVd}c(`-dKie8re0~_`07f>Xx$MstTJ?*~YndpiNiz>d_Qhd2{ z|4Ko^{SAWLb({yf=3V1RUVbp6xhz$2?y7LB|+sFrSOyE8^mwU7`yA@y-e#FUl*{ zDHgJC{oQD4)9#(5O72a-#YCXnz;`10HRlRmj!9qU|;up6~tcBQ6dDyVzY5?qDX5c z5J)6Sfdm{Xb7Odze8`QEQ^pD;=ZE{a+)gvi9(W}x@TCG5hS|{5R2A{5Hb*JROngZOQj2Vh1aij!8koxxuNiSHF<)<|*uzh+ zY>D;RSzXtpNe zl%+Kjo)BM<$@K{hxwC2`nX6N~dGyt}!Zz>K6U~W(>x^HK=~M5;9>ws&LxJB z8$`I*e?&w*GCe>d;6zL2PI>M)I?Qkdn>B+ygM+Jf6unxkk0$QEhJX_jugz$;md`F- z?&GPA|KYG*f0-%D{apdmDBn*KK6il8OD;C~yNUf3ixWbzl*@hdyc4yTeEq*wGp!x~ zJWU;rwA!=v$kqE#HEV6^JWI_0J;9cd4OUzt9H(Jy)S27t0bUqPAP- z<^9FeHgjAoaC1mhRN7hlZBrJ0V`*JDmH=qnrwWjc-@0wcQ04GmxXT(K)krI0uOqIm zd+?C%eevvz7Uo)S%bT1lJAEC#F!}|mq zAK;6?d4_lvkc?hwBy3W7boG1cHiwX}C z3>FribEp!I7`}2ZraF)Q+HF{|;C1Dkw6d7+Mei+M3e^MiJDtw)If_hU_Ku?$>Pr^v z$IjE0g%()Avsnw=<#%LX2Nyp;8{1{yW?L!X(6R)fX8!d?bg%nyh5Mr4L2?;vhY=Lf z>WGww_EO$qXJ&~vV(U;Xp}A*z|(vuzmTnTi-?E$oBad%<{dQ<)YUk-o%3 z=7BlBRf;eDczCra-n#8%>qV5Ed*Kk8B>%+$|lKeh8jVbxV~nlS>>6g z>>GpnZsExGl2WzZkvs`ck)iMgVn2S3l=_E4X|V_8ne=SFmm~Nj{Hav}38{{)M8x=^e><*SQ$Ky^Q&Hz* z_B*M^4o+^wD};o5$Q?0UaBM%?>i?EaeC=%d94rbgMG~kg%;zirT9`6zKbs&~ry&Tm zXMQC_rXW``(RaHdXxMwzMtIxW^1r`V<)9)7uy63x=jL!(W1Z69@0(-mm+`eFO#ke&L?{a@5SX4{=EULUYr`hiqnglPa- zAi-YYNPk|I>J2CIj_fyQm)fR{UhJJ*yDl}qGx3IDZNQns!|S%avoaawuMY1H_V@qb zAhA;O*L?K1wxYv#-~EZM?YB5Vk*IYyyHuB^7k>t&VmTg%BmK<_Y>c-@3m8HmJ~V7# z5mz={RTm#$3cMp^Y;i6~RJ}er18EfYHjf8KxLIvdug706e*MsKojLe*%`yh#bYcVV ztL?b8K^clV!kEpZPt%_tb-!GhK5Y1!z`1qPWaHs~FWg`7Dh5@2j5atBC5Xej2zV$W zP-kSAjws)E-elCYL4B>*S3*it&_k=UJlYwIbGRKFZi-7#B^XU$X(mwWD4&2-`YtXt z{LED|Z>S{D+O3qk^Dm!Qo)*yH~?#vd>wpk5HaXvY{h7W&yT;O7MA)xov11f~fLo3DM#H*C+Z606N{ zi9c}x@TCtR)rB0>fx0q<-p(}yTfq?Y4OkZsnD0j%~krU!na@oY*|Dff$SEE*txMw zL(VoB-ICN9OxuldhNWb?E}K4<-LH+V(6?bmf+r(7OM>llWZ`KEA!DxxlIO?ULHAMXm33OpJpypw+sq^^Mt9(PGC11PB-_6*8S_= z{*xVw5=m%wiooV6f?o<~l=*l4(avXbRTUGcBz!5q)7-?QT=g0>iAq&|Rk6;BExOro zG7zW0Z$cW0+l9aR`OgO{@{S^M(AR!S9A&h9&xzg77kaU8K?am<`y3SHt+jmS7gRm1 z33v<&>=cC5mB#ThW4M#iBV!W;;83^JvB2(jOdfmlVJP&Jv`rfvHCawJ5pEF$XXdfQ z>tHO(UMY(4I7){WCd6!Fp8R{M8~o(muEA~$??-_`^Bu_eCq-OXS{W%aI8UVX$&H zfGa8Yo_R&x_=OK+zjD?fUSwhGZ!N>s+vfXK713eKu@Mb<=a7JZB!VEF+O~P?)-Cs? zb)wiIUO#JdwqFvcZoFV^m0e9|cI$7<$G^?4TifINTV6tj(Ah!&(lXu`U$3nh1v;1H zHj{v13%swFWuVPXAnI}igYH2h+&oCLLAo915hC-FFmEvDn$H!V9lp&84IR4W_8}WL zlz6D8E?6c@a)mwVa@^C@`c}wSead4L>8E_D1b1zii@OzUqR=B@58} z4!3WNGjb%z&!6JS?x1^~1UjN_E+$Hmy%%@&ohRddZzc2oY397}*;%6~4*Nnu8jJWF zv~0g~fV`Kko_QF1JZ8fwa$dP?XG&}m0tw-Etfh#!3B z5L`Dtv8?9Hr=*|6v`>-R2uHTS+8OVg&`uiVJ;NQZy?G{()n9lCEeH-1BRxO~Um z2sVmk8NL3<&|=4Rqx~Y-Q9Fhv!CXG=a#|a4@Mgkxd=>HmT^#9q zApS<6`r0Ci1H-r1HC^|6+kPzk;5S5TWr;C!|GwQw*rKQzV>H7bx=F;t0sR)2>}B_A z$6Tix7l^E7GZ2cc;>4KLR{hCYW1Tb^{ zgFH&((#IiG7Q-{Ra-ndtLF=*IU1dXPZ(f z*gMl}pd)Z3AcIxxAxWIki{Thk#U@w~BK( z5egP{bw2f)bq8aNlYS3J(Z7Dd@7+8N*`kS^J|-KFrHB&!u|_~u5PwTG}% z(m?+fFS_u0X8V<^bKOzde0@;6e87XziD|Mz6HRm_69z*%`}*kLbHDQ|w$(+y`s4q< zOn%S=f7eo2FoWC2tu=cTdgp+sjK(2EmByXM3pCq&RuP64>!RLe6gpO{5H~I%a7&q@ zm>#V03VU}do%>u68&_o|%Y%aT$sFeuZ@0IQq-3P7wFbqzEj2vce1EbgTslWHc)yHt zb%eG&B>xja!R`5$zN>5atg_MR=wM||$$Hq&SEw``v0jR(79LPd?NjPq(Izq#KN#lt zzf4>SRzz%9W(5WYMh+y^GBUcUy?51Ol64X>EfnS&hfANxweL3NPXU}kr-*A_hRpS2 z8avFf9<-_i=l|*zW8dDX)EyqUCUgl{ONq?%3!JvL-rjfC+iP8m#CrR0IfwJwo6Fu$ zDUZh-T3Ef+&A{;k5<$7d=Q zeER)%zes;UHk*X2!AimlR7Eg@7cW{_6IqUeQcMPZfEDgj;&3CW@y*}Z)ne|o-9Odd zp7>udQ5v_V;z!-hvM~PS_@XOP_2aJvolBS$c|gRwRUdwO|w^D+b?-v_J{C=#lsjhV*6mY2ZMj{*$W-3#jF=DIb8Qu zFOwibl0+`4+y6+IaC_N z5{MEjIK^`L|LrgBGP`}aDm8yS#$6!pmMB5 zkIF)v-VM_Ay7z{Ke!g(h6779N^u`Kw4snJA;DbD)T}psCc>N1TV19l3fkHJ=Jbk~`B= z+xN8ZDCOS)_5yTL-{oF?xB8eT*d>pg^N#cvyI$NHcE>Ek{O8v0caCSy`Q(c1C%tLH zK8P#kkdu4)V$u=`Rx0TUoq=206KZ6Y1S=?+lZv;VKKr*iMI5x2(^>Tk1rI)5xjJ!m z5xuH}XLZ;ye}83aVk+AZ?I!4#Rr}7Lk2Cvvx{KdO4C<`f9@Sv^B<4D>2Ob)$w8TO6 z;pOa40Cs<%?Mx?-oQ&zAoV6)#0>7t+uTk)`CY+UFlb2Cr&KzGTMoCVd>g$E!F3${5 zfn>080Qd|?qh@6+$Fz`;0adQ{16McNq^(0P6?BSV7rh{)> zCLy2wC;f$v;p&rGxc{Q(!fvR?voIr>oBLz1J;Qa zko_cneisiWB&)H|QXpSAQ zW$nD-_Gs@wRAtZ)(LVmGe&_Xg%Ia34w}1aBMKkrp-DV=O>u&Wsd?$R7?^;r~o;iZv zYdd*ooh(@U>>2Dw{=Oe9IvWZ2UX0O5WWmux7(=5ksDIY$am=j0eiBCXzT$eYLT6zr zUD4LRaI0U(qHQ0ik2j+tm#PBKo_U$#4vE+ObIw;8qHc)wk$|Jpo61oCs4h?`1-aRF zp0H-y`+?};-#yWXKGqzOd}|%VJR>A@Nn~WTPoalm+CFr~RiS_qNh3uFdb|(Uy?`;6 z7_A{whC1D_nX#oD0&`GG337KpszLKuW!wGxc~?=_Bn64k+R3TNEPNd1e#)yXPqr(X zZ4vX~-sSt!0s0%nn4;C4;#|q=3GaV@o>LaZ4&DT9%`ie(oY=T72K|jLJDBbdd&!6Y)GVMF`XS!%P zmb(1gDu#mwNqb4^0k)RFSHFR|Xm7cO)=x}|QiP4HvsI>|*6ZD-@ALWCf6{~Rza#hAJaOQ)h;137p42jxiwE!k>z2FZ1Y zdi9Em%3BCkAtZG#K@K#m@agq5IG%Epgn!=kAiA_bd+OGi#yP9!YAgnW8V)2q7!C(H zb}|7fwvLhwT-a7s&sy?+JXbq>y8Kb?2 zT~~SuSUnz=6apr$?fZGvsB+G9I(yVp5{`zyAmC(t?&Cp?TTlMz*~jx1F&vA+98K&R zF6ty+5?SNY<^6d30~eSS4oa4#>xdE@kK(DGxRC7ey;~tL$;+(NDU&2Q5u|`|8ZPtb zEafs_W84nwI{rr~(Ay^P;SHU;o$|ji?^3tx-b(faRiIU~zxkOWAt_=7Mk$HBVQ5#e z?E8T{k$-zl!>+&M`d=X+h9yBzYi*)b^$6=__?Y~s&WwDF0d$L%(q?JuT+)O+gC#mm!1 zL{+3jkVr;Jf?Ul}&uyq*1$r*3YNSTnYaAZMdoTVeoM+}srG;|-67GKODm>D(*nPlk zwWw6SBc8iAiyya}HQvn1-<3`y@JK{1ks+rQu*&uCwhf8bARM>@Ye={rtS8`dkCcW_ zkBY+2`HK(h<_`q&8~!Fi=OCUERN~&HT@@PObvQ1vSzslNvx&LlkM+^X%i~t@yP%DG zQhe)s!#kbfLpulU6Td0L$R`5lDFOZnP~mEwGk6Tn=9bT?eCt(LEv;c{ zoS6q1&nciwLRFWcGN^gu0m>YP)D}z?x~VP|8TX_qY)yPp#CwP5QkXuA+)73*CM<*= zel16VpCZZ>47CVr!~fOCx`7U?g<&gMX<$pa!O{V$lpE9BThL!|lb z+%c2*H;b192^v-yVo4h2Nz!i?q;=N2M+PemS*K) zti!v~qQu(%R}nub<|v%j>+H^ZzsGoK&&nl20b8VOjD zgr0fN`0it;d}LtoO%wr7w7~g&tLxHw3$@OyUe%Okt1e(`yMDdPdb@oW29|f)NnX;v z>(t<=lkQl?u(6}*EIT52+C)%LMWXS9kk^Ef%f1zF(oF2^`cx$EixO4q{d`nryRCwD zhJPEG*?xH6WJE{wWZ!oeDXHR5M}vx=PCaPI(c-w*@~U(bPcI2ctw^x^@+>mHf<*jx zy*@Uw6(4HAr?rum!4sa2lN9xw*D)(d4;L$*$}^Xc!Q71azyx}=E)sEJ442Ty(iPb> z#9+C^#YFk3AG=fDJ_{;rORuwf7u{*XuV}1e;2J?9xO@{DY+uFwe?RG7T)RsQ_Fgo{ zO<*uMi-h;QA~IJ^{t&s9D!~{~eL)nh$H!P3ukX@d>&tkTn90_oWeykc3Zjdd;Ar9? z$}soXIiD6S$WK}EjN()MVsh>0H+i5Z23H_U{UkAs6CL>F+Ggx%vnVQaj2Nv1DGE?D z_F|Q9o0xRg>cTBzD|L~^rS#T9z4iBPB5mnKM5ihlVwxnVx)Ar=P4efh{d`qTOiKi; z#()=$aV$CEk0}h`>fkzLnIA~6HJ^Gw66{VGVV3J8_q@tCB^7!l5%ph^?UWgDa0tss zeG22(9emCwcI?PUtr3h}uA>ZDV=m8#%zPrJX$k)LX3D(vtD;mJrk{ed2HfSac665W zsrMATVmD@g?Fi}-9;3TNFDDZ2B;ON4hSURo_43N%S0)2`mX6AukvQd0(e1Q4`L z7duVGheedDpGx6?cWS;qeZ*Z)OB75(r#lX;Ac@`x*cu-lcXq!9qce2M&Ue|ua6u#0 zP6eE_NXRDyK^GbNqE?(ApAC0LKCRmcX|I@(uHVZ>AoZ=>?jvJFuY1Xo1TZml8+2&lsE|Ju9ar0X)E`}&s96ap3 zNU3Z&^Qf1lyV)I|cyC(j>*qhLxdNWzmox=pwr3~IEH5SO+Qw`(oto(O*%=6S6fQb0 znJ+1zYQ5#P%6BQwQ+dviUkb)m5R7Yc(`PEtz2sot{ve!-U(-llKb!O_^0+DKsOfd0 z{!}~vg#&h5g3$_LMP#iJ;ydLV&;5tFokH`q$kDe6r{by@ES+CMaKvNgPfuHjK%Wpt z_A0h$?m>Z@+YVpf=Jn+hKXrDY>J4Pt;`-IN&)Z5`*Sl!a4$*J5ac{dt+TM~m2xbaz z#JSHlj7ZdcbMsOfd2<*LA&pG`8we!a&{dRPMa1p-p?mqu-=42qZ3^r8et8(P$?{W; z4A0RFjP;lk2hm@@teYXs#L;Vg|3f6kTlLV9nNeq8Zq!MW3~9rQQaF{-YM4B*-UM!o z+c11(V@b@{S-fNo#Ppz9F6>54Do`JWRsn1A5EFxqRtCbe>vRYqydWh`e>!G_Oa>F0 zD4IF$&Lu~muotEK3n*^npP~DDbHl^kCbo|Ksf${gHow?!j<&-}AKe<8Z2LTU>hEJe z8ZMGJn%M>*u!-}>^Dnv~NgH79oIAa2u?ai+Ih%;<5a5a}^Eem`G-GOu;xo;gIN7RD z1$LWE)yMoOY7cB%s&5erkN%6UVkL1DP5I78&DcK82_->7UL8$hp51p7=Jo3n+}p=9 zXy7B5MuZQ7EJCBc5RWV(81ML-$T$!s$V8o8hyb&a`lU>gnTZX0Efd0b6cft~Qda;2 z@5eS)Khb#plX(0QTw5~9y5%K>=8BIO)j@F-ZxWL&xL-SaO2}{$oOGlqxCs_>N0n35 z3N!^DBAv=RYXiQI6!8NjI+gzUv=SaE4w>mKC{Fo8PUY+0ZqF)dpYP!Q{R&rIOr2)p zUmfSh3**wlsg9ibF87^ZF?O5I@Z^)7iqoqa)2x2{u_9~3 z&D;ab_gDxytz3DNjfprS(TFIj{5CmwnNiE&ML6uS&xC-%+$QM!MSQntKEJd=jV2cm z)`c zPwFt59@kRX>+AU0^2~jzrRTUCH_~O*36_RaCk$5a%@(3fh?bY%?w}R4ULg))_2omi(HZNrCt4Bu2xhC%!g#^|v}3s@4D!*h>4=KU%GUdnec9?VVhJxFO0 z1Hm}?C8C^6jHxrq|;jN2f1tCw$ylE4D zEGR7iX@dngqMS&m3A)%rZXs|A2%rI;@dAtHOV9;*FKT(5Qq0kfhR^V-j|z>x!req> zU;NH(s89QBNO!7Nso$&$I50V%8#?X2Yd^Hdtl}f%VjaHhKS*UvePmwfqM;R#H~~(v zFifs8hiJ@csVR`*!h1SHhLe7uoT@;9?QYYCwwdWBnim}$UPRKl9x~YEu^XA}{mpJO zJA4JL2Bt@=1PONp>^Go0f<}y`kzq{c1;Q3!+Q5_Xg3^K|e;Y&S5|t7?V6E zgChWk`1PneM?(V-v<`h(2|0q8(3fS?XF6wGH@x_CWJ*77^LTJhdm!ml7=zW+O-bHK z;f(1p#NaRjz_Fg3kDZJW#}fgCop~Pu6w!>>TDk}5kVTkaiLp<|+sR;Q#8hWZCye&ioT4#Ui_}q~wH8QaZ zjV{>lPktBiVZbVFRotqBFul=Nn5j&N0VC!Nu!V6y&=kTQbh|N+bTfvAKz!y?QmM?@ z5DbPJ$fmr~*vv#l>9bOD?ry zjFIKB5CU*fkJ8Xs#}9m73S2J*r>45?lvN;+Gq||CFP`7E=Ak}tq;F`RRAP<+r!5cv zmvf`?H9M65%#54VaJRSW$|zog{IAV!_MXJ)^4`%{NQc22*F~C&}2`=qsibS!X!ebC7F|TJ@4c` z(IVfuZ!h84;lpa?`#u!nZYcGS zTt~(2okJn!o)pl28RI=7k#GP)EHKXdePT=z=K96{>TcC6I)7UMzlR79{RnrcztvmF zMNwy|zc%lX>g;?!6QLus{c2L!B=#|az>qn8eGRD1=h3E5Qt{nr=!tt~#)>koc@x>6 znVesgRrr2mSW~uy_w0&yvh^tKN~_)))IH79B0u zEiut$@?|1qH(Ywe;FXI&+A7HpB#1FZjoWbj9|AbKkRk*ioi+?`g^W*hSlgwE-~+)? z(I+7(DM=WwD0i93H4r$KEe&RoKrha(IJX*;4WW7^9*-o2df3J8Sq2;lNVO-yZBPas z3HaQj+ki3t7FdXd$RNdOlH{H}1CmKb7ztXj_18t12mvE=>6nE9(ZhkzOH(^{&h3v} z;4iaLU7N+(bN*1E=^+e%G3K~~ z(Me?ahZH@2d?S2XLXEH+>z&^i`e6FIb^0!l39$e`J+>G~8h!k@BiK!uySnapyNK}c5aS9rj(z0a3Y7LdI1>$ z-dd@B6PlP52lg7EUsr>`l1OFRAjYtUk8>_+!0jzqs?B*pV3o;1vbEV=AtyD6qCB~G zKKfO(Sk=ID8l9TvN#xK;dM%u)q7~ZE`iWeujWoT&1u!q}`Fv zGQXM0O?rwwl%cq;^!?cQi=h5@M(MM4q~hFtbkl@BWK>)O{>2v%V(skntL0%0NvD`f)5y3_9uDYLU`iIML`1B@G#w zfIhwUHU=(nfkmTcdkOSKDgM$EmTEO;8Dj>CpQf7!u9fEag7>XS`o5|3@HtA4oMi!(o z)pHuG_G#H-L86sIn$@2phi`wRive`5z45cC)X@{PJVhY%K8Cv!?OLPfE|QQBgK=xI z>T@3OrQw5wut?R}sRJ6z2zYT`>Ma4r*!gX8aI(W{ZazE zGh*=*P<>sL$@*)wq%XPhHbE<0f_ZNGGPhX)!;cdDA0wL8kG8f!*FNP;v0k{k3SVVSXea@5UN2q;fRA3LgZvkdzPnDT=(I zK5PI!sJx?et>F!o*#DS5AMX_f$&p}GNkO}L*79M&DveGFH8J)M%*jy%x5+)8N&{3f z<{CzOA3J>K48MW|Nv=bd< zDzos1;syt&Vk$#`=BLfp5Yj@vrN&w>*>|!!K^xH%Gsy4;d$+NU3Vd>p<>K_Sx~G>Z zcs3Ul-*a5;!O?A}c&P`Z7Aj;vX^y?QiNNX391yUZ2vR~va1@Ffe30AwY3tGGjq$Pm z7FOzawqozb7)L!=C=>1V#{JOwPeq-)Wyu?_^ZD76>J$7LZTHaDjq~OyK ziMj4Z{O-5_DgF9lKZ&uryPJqZZ_F?YzJJ`muJ23Ue=4x&*p*h@D4a+)z-1sNQxMXq zxMJbqq35e}V@7(W=zP7i#Iy`f^#GBh5Znv&#rWGGk|MryrP=GQlzr?drLeL9KaFlA+*$tX9c4g49XR~ELTM^c z=1?lqN=SE5tHj=r@Wqovj#I-EW6b{o^~}csPd#i6%)k2h=y~Hd+t3ejy-osI?5quv z>g?NHv#HyZ-~TOT3YtiJIj5bFFC@u}Z{Oo+T5Gj`&utMEJ(IL|?vCPnmhUh3NOAsk zqRftY*FIv~)!mFk8GdJk{Rtg5> z<2JYA#{j<;x+FFrG^E9cc@j6;gp*)B$z1=?dbm$IRp8(I;iW&3`;ODNs{9Be2q;l{C0df5& z_6*xiz^iD}n)q zGgxu>SB}2v6rW*}yCNYp3|a}C-d?FIxOk0I%qLafWw(_f#}%|LEHfCLe7|vf|HjQ2 zCxzKkN~e*WC}4^4p0oN9t;}MjEE8 zP00#rk5*{cO&uW+u2z_2@~TbOgS`f0_zd%E<+4S=Ss6H=vWWah}1hU6>2 z@ViG`dq$g+4zQ+Vpmy&{bpiv9`{8#TpFro%jcJ&XapLMncwa}UNyx>=J+v`rE)RG` z1kMqQJO3`9YK{+b=Ri3T>Fg2@dYg3uV0 zTp92y(MXkuixZIKHwKUYQJwa4u(j)&ayxiL!nPZx+Mc#zRp~Rq2mO~I304Ue#n(wA z)i^95RHdf9SppMtHejTcO5X%Ko3){FOsubxM$<2* zwe+v3$mDi>`65n%N1!5+@blW>&hffF9oX%9F1dWR=wNa2rA0|FI)f5TS%R=%K#u}b z*s#OP4Yr&gd1yl=F`s{wjk+a)n~Pl~gs8Gp;t(9xZ{A^>GIy@1wDgf`o0#)q@y%Tda=yBd~!)08~DZ!I_~JO+oi8DmXa)Gaq9jFeHAKYOE3 zJNM70yLTI|lQjxb&|;b#it4g{eDJAoT$__QI%{;v_~Ij8l{VOk0}O5XI7jeGtlNL# z{NYCsvz3S(7mIOo+1JU>rvyp}jBi6*YUA9u1qS*0Ue*xj?@|JiWNEr6oB!2)1SRss zuLt~L(rMp2+Slh3)^LVmdUe3>f3eVdV5@OQwF6S+j4B>HYIuB$Fzvzn?Syg!9?F5< zGSDzckjHh^^$itXf6`Rp-&x#*Jm*81td?GZ#=IUby9r&U4OiVGPN!&m6e`uTxHx&} zQy71td@U$5gu%*Mi2}h0vB4qX(Df^9B3Rs+3g>qNlR`CGF8&2V8Z%t2u3SGg{U-z1 z>dez*kj1));En(PSFe+09X@6F$$8n1#A?TeT*L zuNb4O*W_qWwzC9{-D}7p`M0~Que_f+_^IIO)6}>|>mL3$9tj_pe6MeYr8z~#c2~ap7(91C5S~O~ zyk_x2thBpvw7Ac5MnN#)i;I{ay0lp9Sr93>3A=rqk!waG3Wler7i%Gl-DB~^eF$|X z4V_I^`8mq#mW1pkELv-9hZDMg9^9M|v!0*W-pl`Zzt%_pFH!IX3TGJ}P6MtgLqiGE zbHv!3bBrflAWEILW^k@1sNSl6YFKe;w>Nz+fx#J~`ga(kWSx2;BE0TEUm){!{NEw^ z`V9O=V33)B1RR$ozyQjMyg*@gT-C$CP7FT7Zb{HS9BF%3rFQPdaooTNj5h)>lHVq* zPClk493soylC=b6R>4C9W}Ony`y%1F2w@31FHcp3A;duWhY##v*z*4q?j+N+iqwVj zYYkeRfr7urSm%~Q^%v)`pehlxnLeV(uO9TCU4r3l9AjicNqY}+udAhEtf;I_viR4w zfhYd0hm0{rzLzxXh7@i_av-C*FnrqdSb!ibeg8?Mq>omS8JTv9Z#dtbhXN89<)TJQ z^Rw<@YD1=`dke&BRx>;JJ`u3#GXS4&d0$lcR6GT)#*c;4AAfIBGPs9iZ~eMt)D)wtX*LUsC^zdz;Qev-rA zyv6X3>KOM+z34J1Z;s#eV*6_651B;n-u>9@C^Dc6>ng%f?V3Fu=>GsXjEm7o{!1+( zU>}@e-T*lXNHc@WJ>SRY=Cvp?_ghcy&<3p#sE!yrFTO{V*z~t2`Y;2l}RnvIgt%m&s*!Kim=Ed#XnP3mL zR;v)Te%-Vo2_-tN7eSS>tQH=-Ywe-3w+{%wDX#7aJbFlSp2W)dp`N0&5ZRka+okE#W~} zK+Uqi_$o`M+(i8$1W{hXIfw&cc9eks@Xar_$EG>#YuRs{d-1OTf*5{&NLGKXo^V(p z1xK@gKaA_NRSzKe%KgCina41BIXWoZ{5Amx3@pB!p1QPU3&o8ZP}{I;mn@#Ba^cg!D^n1XC7?YBY-w!w4GP!ms@sltF+7K4 z>yu0H3Jz_-0$MDw;`%p4CdHZv_Y&`n_c%HKb#zT6-`EJ|dnx#_vsePJU`IqWCajQH zOa_@)-=_TFzJz(c1;c7?N<+#=myUJ zZB5czM3%YE^GfBvt9H42CY~N(%fm#6KDqn`kuHpuXI0R_F`>LGb*}(B@+#bz#g;a2 zbj2^OntAFIS`fL`LoTB1QSXl^4+6g8naOpel$e!=S5osu>n05dtGu-<`c9stitc2E zQUI8W^J*7JERxBpRqth-Xc*wfkM|ee=lT+)fkA57!d6nkY4Osi9cb#GI-qSC8%5cV z{Qem2%o5-!`-y@F`W^D@#QR)vxc!xY zEAyWy$K14+4G#p4E%cE}Gl&d=76wBNS9V>ZBwxbDj`8SJPEf)*r4ESsBkNZY z<8R-yTA~jOeAy)GKcobSpOB3A62{g<*S-q^s|(oLw4ad77RY3X<5P6rR1 z4&_t}6bh@x;cit@7yEr@<$<{eick=ti}_9T7g111OWHI2En@tmo`_~!uoSpS|DUH} z7Y%&Br0T&c%X{GQt+KADS$@}IiUIQiTBD@P2dbO0=5hEIg)SIq&6>21R0K%D7W+ol@r#i?kaUDC+ms@CdQDG;{P@M{OxqY+0zL| zFZL#64HvQh4(YxYIU_>FPhyPZt51O&mFM^M`*#)dkeviP9|^!i3G9=F_|m#$ND%8Z3*x%OmtTxAi|d*t#Eu=FZ%M%A2&+(#F)MACKD`l` z6IFZcz-i)7;RkyDzk=r&@=iBsBHr91BCZ%Tcv{!XUVKIqRXfi`VUM3U@WKq~Ct)uk zC55~x)Zm2lFIaz0e!amd4=7r}t=TJ!M#ha&1P`%GgbsF+3c$~s*tQuenw;yme6%R5WW;kh2hma&2VyUtxCI>ad-$6z z+pVnD%DiCxTqbu(?0<*3gO=ylZ)v|jr=+Zp2}9s>363Vg_(GSVT)>QNsl6gk}=w-!cam%;iDED2k<2xs+vxF;ng1Dkn>6nO!Afi>1%arSOtfsstP6ba29 zd$F1w)xW2i$o)l+tgci*H$E2a5KOXeC?)>%u#dnB)xB6#cHNCK{e;one2*IbSs6_j zr!2R?wbvjQq==gEG2oc_)KtoMEBGWhF?bJkBA{5>0C6uNH0sJLl>qbdeXrD`m536y zNCQRe%(;pzJYzX3LUH&5VpoM3ajRxrJ4LVNdkC5@Mpfz7+&V%nS^|8 zVC(NP)(147_b(Fx}ML8uyB2Y3jM2~Ev> zpaed*d>j`a_GU=W2%_*D;wiiy)X0>srtVJGgOR6SC6@=|(gwijtkq^%pNTK3-Hdwe zLN0es%KQ-Fpe|`-l~t$&+&_=-!dv*cv%c9L#8?GTh4I})M&18n3Dm=O8RMtArNLvw z$gjiS??|t52+Pu+c5|2Pu}1`(u{FGe9Je;-q(pVslD#+ zOv5^IUsIUU^J%0zcz97Qt4r3h7-^IQJ%qotPZb!72)KFfMVPtzcTeY){4Hkn)US~s zGW?RUE^txR(XhQ2zvr+*$eft6vk>*?CWdO^JR8t&6p>=cOA$iiR1xYBa3f)hNSXWf zQTj!g+bxdT)huOP#GeU$^?*eC0c#N;w67srhV$-M@YYy7<9c9)Z}U13xrxzo+R@m@ z;`<)_%hBV%#dDwS9>Q6XsYW7%BiJ@^;70%7q_bHmYmR&+#1A6i&5CRt5e_UKu3e4Q z$XwVggl&1R-nt(Hj{YGjs2SKh(5kAqnU#+7aJ!R)x$7&Qp@F6j-ZM`=<*J^XE>XZ9 zJIw_j{Xm*K!Hanyk0xjtKjhAT?r_;Ad#A>Xk!r^4o9uSGnPBs)dOubRFO%Snf}V5` zqV`idi?tFsE{+xj^f{Igd|i#uJj7>uUQ)u=fZo}E*KY)wxMY-Fj-(4?-vv7kqnCz; zaSHC1Uk0EwiD_s3Z|r8V3vfaVjE+y*6*WHT=qO1HFWZX)Q+rCh00~&xG%|TW1k})w zRqSO7Shk&Qn|eB3$x`65V8A6l6b0@F3?KVYlIiVuEM?(qwFDFnBT%0uIJ~+;3>^EQ z^dat3-bPI!xs3=KEx3OlYkKVBX%t~8(2Mulm)UGV8krx~K@92*j6&Q~1k!fd#trnf zlAQTRz<;IxE@1GU_nMi8Z6A4Vl2Ug0T%j;<=UFjtx~m|1HJS1K)meMfvx6=9%a`(% zPw)#*gkSKu#bfCJBbW-C-^pIFL@Ffa<>A!@?eaY@k@JHT+Nm#HM1SAPp5hS!4WCf3O!ixZ~Ts$ykdIw^Jed!`1?`iY@!D5Tb0o2!j_6a?LuvD?2bl#hN2 zDJ6UnqL4Vnx5vM{6?9TvSu*SF_}Ith{6w0Z7~%+L%P-L2%ODUFgcYkB*QWCC+@YL% ze)BQHT!A%F!KORL6&>OiG&VHEzC1agPluTwUl5+f&yHH>J?{h3&cBce#0x#tcm0@| zYW{I3(jg(a2xorzT7qzYRw?tCsZZV`$2@w;VBM?Th{UG>$*=TVp>3{y6+&hA^ImU1 zRdX_?eQ!a1QL=5@?CjRYN_xY9+gNLPGMSftI{mcHbG`BLsSB*??y0nmjHsCKG@U(> z3l|FW>qatIzxf+IsREC%Eb7ENb%3A5^t+!tuCM{!C|FVy!Rk1mx{?8l3&>A7;kER~ z-1~tV>+5BCjwv1FCIf+Nci|iZxHZ{C;xV(Un`>C@XGP(wvgW_zR9{4I*Gg)RgGjFu zJZc?2FXR6A&2{mgSGj^AE&CPRD00TD^>0U_MBSIM6MH?30SoCQq6zr&LorCxcpXxH z#+^*P>6#E!*B&W?+kJFt*>bRjYJF7afCk@U=Q4B^C&J!7jXf%;yQnIjsd{->8JKIZ z;5aAF%LN?#wE#;TM>6}mcF#=9HTChWr{C{JjHZ5E()#<#m1PRBX&cc?<_1%gM(oG}-F%Xz;tcJ7z8C0#cA4==v)>A-yVCFMuc@Ic;DLn^A5X^0mE6`i_1_yc z=W&?!;I}aPk)p?t-K8y;U*AG_)+t%~s~}`zjS#xU?}J`|#_J#`7?XLOc}Rly3E{1B z2HNjX)%f)DNPa-^is22W%1|T+uc$-p#_jCrFwsCQPOTD4Qx<4MqvG66ueTZ6tdsx) zg$;us3VsByr;_n~-58mEQZ|=R)AIhxaJGLxVtC=-mwU6-=(mg$JaQq4W*zaj&4Pe) zjf=<1wi|^1!6kz-kep=3uy+1flKMA%{nGfx*l-e~G?+Iv5>Xb9Z-1i|fuQ&n1YItj zzwYaUY0oooNe$Qv9Gx}rq!}_qKvzkL=|05c3Ie3gUn0aJ#JZ`f$5?(>OTItIZ5pZ0CMv~7hR_-jHFawszq zt-T@y7M*4st#)Mp-@$!bJL87Chwotn?>sa}4$;FALVU26;;u5J}t;;*N@BH!|KhK7vPS`K0aFG@`o0(bkU7J-ToaOI??^?^nBx5q8TjOqcfS*g11txkT z@E`ahpPCk$wRk!=ulhXs=wVnM(3svqgqmtVdF&a&rsdyiy}yZ5BFjaX*rlnmz?r{8 z-GBdgc#Sf%U`gs5?7nb|Vw= zC@oOp2ONIA!+N>ueti+a<=?%nlVO-r239QglIDkSTOX2v#Cu=O%Lmkzxo3xOuK6F? zZebyqd46~yYKcsw&i^%%Tn*(zO;{dBzQ16&<0$_g4Nc>%|I|LaAH{ms986D5n+WLT z?!$*7+&KES@G_d#_QH-@$@Ee+dicR^#lM2EFgK!{IJ#rQ%)c{m+YmQzIAMM9Hy8JJ z`uFS03{f~D3mF`AO#!ulWX>atz}h8GVFz5%fsA#iNvMnMr?N3t#XVo&v4spvXeqxW zHhvcFW*r@B-j%UuBU5Bo0coLc&hWWxrfT;pne4p59?$gexHF@5F8SkT$v zEeL9mD2T-u$L&6g_@{2hR0jmyPEAG`a&)e5rYEZV+EHDXTS?63ygAR!g;1--(OO zBiHllzJ;5A5v=I-*o9*kHUhK~n{Aza*$kx$SD`dP``pz0In=R#;}BqewX{^4xPzW}4sll{7oIrfth}kW(xEzjkfw ztV6EC-8dyd_ExR+dkZ7!%YBai>*evzX6PF#4NiJ)-MHX^u@)V5=HwC z7+BC3871yt>~)PQUWV)$`1&^LuKiyg9b>mw7{jX-8dO{n!tS=cv_*XAvA35^<#ro% zC4A-gNsf68;tp$3pW&h|VgB=aK{PAt1Z!h_y}YAS#7Ct7apPSIf;7T}J3Pd?Ja_o- zB2CSzB##L?8k3TL%LtbHggAX)IbyfHK11`*`f`|(W3xiul10&p|SC)4neZ?2D>D7wQD3 z@Eaf+Doyi{&MlZsrEn7hPfm>DK3_i=u+fZOCzO%^uLgD@dKK1CUW|7jd}vtL>>E_P z^SI-5MuISA9;F;DSve6;0R^4hLUguVEyqTCpS(`g*4 zs;`+oEMNiSo#1#YUgiFR(yDtV^xe-R>5f-hPxw)$#zo*f4`E*Vf$)r$fGbVo%+)e_ z3RT)jxk=21PcBvKKI|u4cECH}ZI|Q{1>$SLS(q!m0grCn2}Q@(S=-wWOBOfsGY~x? zT>m1XY=`J^W$!*T)LON5+utUgV?kXT>K^6qnV(m;Kh@nZIergUg#CX^O+5M!Dl!33 zCx#5xcjnPKfF=li&`j%k#~@+74LB-ZBx^y%S~+wQY_pew-oLl@ZT;22zxO9u7+$FF z2Zjqg!(sKkm|~~Gy(JFMEY;*#AleBmprX| zniMtiPc`+fgKK3-*T+BV&leHsWsz`9C%pf+)4%4GM7f*65&ASJ{!gOZIND*(oSkF_ zg*{jOK!MSj7o64ka@qUpysmo-ePg@~%-pQh!J0mO!o{ra?X=U;;l8|YPx?k#l2{M~ z0^Ec3z@-z7@;;$s>wxr71saw%#3XS?-Q%`v;{JK4^*D2l?ZX6tH`~9S^bker9G1^Rq9pxoNEmV5uD8i)j9;_<;2&fYrr2 zd_PV58_gqkj})tA6@2oDYRZ}JHiQ{VU<~?lCL#VACs-diy3Vh~GbKI<{qHUKBhYx@ zK~ZuLVJ9(n^!!T=xbPc__K^f01qJ1s1A3Z^aIgaH5QbQj*;W}=_m4&Uim*Ay z2h4@VGli&P@o09fs_I&V2Af>l;%{!g`xi6xROcce7P>upo84CknumZ*!(5dTcb~5w z*zcEoYc0~mYa~!8kV~fd0pDEa}V+Vq8_3)fviFor#2?z-b zIMH9a?rha&gTg8Ub3F!z)xZ5=pL!uVNlAH-qj3<6ekZ5P8{KuiC=4`CcqHZp*bMgK zMTRZFq4MNW9fQ6nG1E%~bhew7VGT6YvEd`a93?&wFF(-A|5R5JSSZ|VmGt33t!&}J zsNwFNQbL$K;GAK!1gta+!GN?d@h@)br`ze>na3)m6c3y{WV5HWJeW0K3|N2i63aPV z(O6+q`Wo!-{oCOr%mfX`6-86JctFt(%*tMFqQ7Q|w|;|Qw-7{&a>i~9jZWulR0gt2 zw@5v8@BQALfMd)>%=vs%8J@5xd!My@&@DlYA@s#pa>1wrq0PLIe57)im2g&m9lYb@ zzE6BQa6dvAR95i)5v!9+J4Qeco2848AYWDAJ}0lpbGFbMu5fE*7{ci5rF4g(7R^$A zOw!1+VZ+a)T}@5j?*G{#wSyIi<*J;|f|dK{h@*m6`(pfJz8)=jsB_~lTJaSB zlOU(J0ksBmGS?Pue)w?9dZPppql3wpa-tez&YB8CdWF(EI;Q%X_=RyWRiE^SYA?z* zR|kSX90D)zoDSZZ)2&~aXx{ti4`>W74*halRfgPY%?xK zz1y6#ZSe4_6zHo`Ix;s^&7JdG-;cNncWOR`6!K`z=^Z1UZy(~WL3?2!R4u!GeBUz8 z@63!;Ul_>sX_oB5X40kyP!k-22mkKh+_8GQCL2 zVXLehVZsX^`%Uo5Y45$vw#7}_dWi9!vz{`zhEKb~FU)Nb)rWNixdj9VV!J?LCpLT- zGqr9~G-%EOc8l<#qhzWL@cxKnFHtSUrt3J($Nhaw%v5D%+Wh}o96B)nU~QFq-S$-lKvw~U@zyyD z0!GH)OjW%+cYaI9LYx-C4hNHmGMH%Sdg!S3$Y zefbot?hZ3Ykz-2xNB38Hx85S!+IAZ*n_q*D zuLE7uCLD~>!viMIK0lE-ap!~koLCa+fvSca!$N$WaNr4n$>WG}wICc8C_Odq01RaY z6_VW)+zu3WY*EBE2P$zJounDQt5{!oT45d&#kDD|8E(rp>e6b>-D6uxSmy9yp3j|F?0Iaj$|hPU#x`)v4R_;`*|) z-u$R@M_c1$u~9d}k7Be_jPrkFBxwLQcH+aGn}w3oz|mgv#1Rgua+`1CAsJh5P-=e< z|0rG)^(3P>jsYDUW`*XfV@aOpl1#SebY!^cy8nCr`0)v;b>HHt^0*&iRs--;3>D(e z2qt5#|D9Z#|GKBGt?iQ&qtWG7F7LTfIo~4ZIVNtGiJ;=qEXsuLH==&a;QRVVf;FPp z3^7G?IqeLfHPdkt-WhLJ(}1~Q91k1j>Je-V?BDx_cB<5I{^#GL_1`YLY750CIj?KS z&L*%Fz60zRE&u9DdZLT++#9MMeZ#g13Ot6uKOd<`_$wf(n^Y}(G<8CtrG**p+wxH85xLL2O!ES--9RPgA8 zB=_ix4?GY5>s=)eH1<4I4>wnP`0u&T?Pvi9Fb5o&X^Gsy3{+9QZPN6hAFcm?bmBYr zcDYO5v;vXsY8;3U?hB%k>lY=FD#Tx!ysI1?SIkOcA8%#X0bDsj26HNVrMfYS^?0K^ zfc-Do$?;~=V+^6U^|6MJ&SydP!IwcPIHm^XTx^A%bF(@J&)EjtIwiijoX}BZtrum( zh}9-&1SmUnIt%Pu$O@}@m3J{cC0Aj3yt z#NPs=pnQ?<-)=0H%cGC+dM8DK4*K6{O;9;W?2rtyKMcvX@ZF|C~I_VSguOB9BP&YccAX$}?L3 z7TEeKjuA_w($PW`65#+ltHn9P%eSqmcJ|(tV*>* z5#}wNLSo=7KK=9K`quo7XHFc1F=4yi!tjyAzOB|r!;+aO=#ltcE1TvX_{*jU4y=ti zvnW!gs-&!-;9Om#H%tw? zyr}R6TaEKfU&L0BaS>h`99#z)Gg$i&*EH?%LhVG^XTD;`KI~X&BW>q^wJ|0bGD97e zNf@aho@``Q8?v;P>c8+M$NTgzuWrdrWXuMgEd!h8`}~b_tci=oq#}F({CRfvz z1jWHm)(1E{DtIQh=AUxdp)wg8v*~bgRZ$F0C+_011X7G71Nq^qAK9L}Np0JMnmJo3 zYwzD{3Y_LHZqjd;>hczrXLBT?Z-Qm@mnlFMcm2vdlOA|4d z???p+#Vo@rqE4yHRgSR{P2~P}jBsohHOd`i{X48gqw1Y57gdrjJ8;O#;|KV#*FjwXoi^7IjYn_>tkh@DaR~Z}Q@nrf@W$KwCX{^7k__sLm-M4h|q&($}?XA22)8th&V7r+Rh{q}EHZr~@1 zaI7UD_3?g}mJ83`Z4;9+hHcHj{T%FRL*kqtg4{?*HzRQr(ytmf&QHC_yQL$uOf|5avtzPRjMH8T6~JL{9M4nVxUtdoDeIz% z=J3t59e8~CF0#HYCmyKkmm>oqP?e^LptTv5^lWd|InOJJ9Adl>MFkFH-BDEJwY@ow z0vpR!@oJN%Jys%0GE`BtG9HtzNzf|5TozeF<|qh^GD4STe&wJ2`Mmyx@|N=!^2b?# zN)$1$i$e&O9)tsYiQufhcz5WL?Vo+lo;G&97!K5kMl%p?A#xrDz@_N$VZ?kFf?@c| zC)#=vb)8*jA7Ov3`yNd+gox)}`vUE&q~TlX9M6EoFEVIteE!8-X`yQCGjDPV z>nlnffLNy9d*pfx@ZL|Cg7lo^61%u^M)otf|xt|XJv0D zd+&WoSPFxs<75tS71TK+PI>n5xIz;3so$o-JtXp6v6#;X`T>`o~Vo;^Z;F1rx z0#_WP>k~G?;FZ%;Rs~o5&YSMAJG5|r$GvhkBDn_B#XJ{f0L77n5@4(=p>niDRa&5; zy-a(%1+_NPf7B-yHQjQNKr#}d5%I8HlX=|QG4yHcx42#Ks?Z5TSxCBXPmM%9%Sp^~ zJm;YZB<1)8Z;C-J&H~Enm*urAygdH0?o{#S@;vq--*cYoM0zd#Y7BA{;EOI4X@w|L zvjw$zN*6*>vJ~PpE2eKrItp5Lz4D zqV_ImL^nb5sXHceI&=KaMIh5>k*t1q+AAa8*{5juNBH{rXvgh=z19Q`A_GC|>DATE zzinC+AQov-Zymh477}>j-k$|urc(0ClJ|>#Z?M=A65=5{`mx!WxxEe_Aw;zr&`=XkxzeZxt{Kfw` z$;(K{j(mI*nIk>MUk}Wa`5C|<+|kKl0RdVt)yO5Fwv%l1 z#b9xE1P^?rN&9Ej2MYEsSeO63adBbQfgcvGIjy4^V|=XaP!dW4qpRP#H>b^}Bv6wR z>WeEfk4+6`gwLD5tGrO`ykyTKAk&zp&t87YiVBpuk;0Oa2f5N(XOf9<@$BJ38-%wE zodmBRe{NqpPlBHtL?*be{rTUV??ynAG_nG}VX5(RXVNj5D7690%Zs|&Cw+b2_0#M5 z9#T91-9QK3x_3szh`AGI|88aord29D9Q!vE~uS^c9x z8$GbrbKiaP+3hsl z%KWn2D(X*``t}Sp79Ml)aDDd(U%1d!k$OxhAoA9A*NbNMtjHwp$|A&%;1l0SqL9$# z$m=X9C5*(#>h};ZXvZ>062fX&&fm@Gwmv7cjRI?VQCSmFFJ5#v`sIBJbjkad%(Pzn z;iG2SDOF%H_)3xx1JiqfqeX?<8wiq1DjMl8>^^lapDUKPbWca^?#AjA0}27V_pIPn z0}#-7it{T6o?8;)k~0Z%3wByh5n47&1(B*jyWS(1vKc#t|1Q?fFHStBM?D*4{VMq} zvhvB$A78WS+u3XI9Cc;z7d0dR3j61$be8j_Rdgy3vP2U5Zslhu?q5NH31j%1CCk4C zGIP7Pzg`yMVyP{<_WYx-Jb9ZCcvO^ZjWpaDgN2<$Dq$#v?N4HSC31c^;lS@no<~oNr{E?<4RlPM@%Dd&Hi7H)l4*qf z48eqgHm6=k)hGyMTVpBMdfcSqIK=*p0%t7R2^EqLTDc$V*LToKHiBSZw`V5CuU)OG zOdbYkWwVH27D0pP9Z14Ii%~6HQK>4(JAje-V6_@)+q6%T!c5(#*djg4{3UU0@rsZ+ z`57W|d39R02D7|p6VP7wznyX|R#*33T?bVPRl28-Bu-iR)C*=>M%9JSOUxYHa{t5* z1l`X4QI{u@^f`ic<%8ORi{~5o{TaxR!m?Z<#*(8!l~VKX4{|9ezv6*<-sdNTAv|iz zcr8fD7o_}wa$NhREL0IYPAQyI(uAC=^ADF|LG*|3gHB z;cf4FCVpzkR&9Bja}8rq5_;Ixj;Jc7JSGCm%S|)vqcRUb|u|Mt60` zZmU$UfTC=HMcbit!4lGBzozot)Y9zk5Oy&w^uR@(J@avb$KZ8jsF;F-@RoO8q{Lf^%+r60OUd_XzAyelG2+ zxb^Hzf-XODxfmEAR;5Pe`9mN7=Ig~?swZ*cUwtMr;*K(~o|G>CLVQQL_se&7yb@!# zA1j|c9A-s;9ERNK7Y7@`i4*!Od%p;(2R`SX?BJ2U!gUOFvm1kptbvf*(@k~Wi_X*_3`-WpW$Ig z-d16nv0{<$D<0$J#%n+XK4PK4rGM=N#J5niXk_5EXXf+cyiN>@37LpWFR^5Kb8LN1pwp8eN7Y85F z`}d_*6XoRPB{iZkP}@Ikd-1af5gbYkDPZV6^=o`_{QLfr?}sNd;#rj^moQ_nCmaGG zW&;y3qd&uiFa2v@SonTy@>|CJk}T&k2W$UEO(LZ8XB8A%iHu+)pb2qk)QP2} zN2c*fqHuXD3C}ID5WE^pJdl^aN9gGbD}$qcS;N&n9CmM&mptuHh+tMg>jMb2Sob7E(J^P{E>IkQfSy-e`$YTt;okRR z+_&OkVyGtezU&;u(%&`=D&Jtm1%hH+0PL?^+jy*azrTv-Cg#Gp*`GKBBFS)hLMdl8 z`y^2@0px1`ReUDC_pm?UaXTRRLXTg<8O`P7BZrvrc+UC2Gk+(r_oDs{LE(#nOi{sF zwyK;pc!?}S6^*AYL2fVM)uwl@IUe8Bp72KBJbB{&D7JMwRt)zCVK8fc|o)ne@4oj@eunAa8~EcPE}VL6TVd(C}{H|K!T zMOZty0xXdU8ZlZP&bdz^T>Y9wA4yD7sWBr1{%TBZzDHU~WpS}XDZljl3N^A<&dQ7b z$jHz|5&@Zz7aUcXq~92>&gRa@?9B^)eENESP=D!GhKCsZvsZjSaF-WgA7mj4 z1Ne0eizdlwk5@08p=k}~b;NUiESw)Hcpfqqhf#9F*DJo!-$om)?vy~C(5=!ZFI-^K z)X5^OUM7-ve@Li^F5;%G2*G$4@!Y;0E{RVNtHC(1h8+-6vYEY30Dr z_BMdmaltK4033A$d?nEjvMdt*FcoHU-(P=mU{(UCidwtW9{((R_ zzn%(;T92;l^441f?Gw5ox>CVpfQ;_yhl?P0naVGbp(8h z&?4B05sMy41O1g4#F5}!aU;P&NxI?m*nV^30Ul;Xow*qhv+{1wzGIZZ!KUyYd zgN)8!fAM0~ug!Y%m#`y_{b{uN@d*z7LGt3wm%Wq`rewA{b^5!v&s!& z&UD<$9;`QVE&5zPMr7Mbfq8PM7p-b_>AeFN2Z8BTjIc!+2l5flp!N%X#mHtgHL){i z&M*S6OF<+wrYs$Cc;=pNx`(F7;g6}z-)(>qF}=h*}1|$coe(dpV_0Ym=ju!4XpqD zn)6@?v)>08Vb-9Q6q*;T^Qf-c_EFd)-90cc$-uDEVf{JpEj?V;h64A1J2B^1RA4; z^>P$fx`tOQ@5P>Cs+S0!`Hbu?INR|0*6p`@T*LRgLJ*x@WPZJdHM{ZZxQCllTf zPIj2*MCmSrXn9mUr~-oay_Rabw;1Kk5{AXi<%_a6@qn09uy;mbJMS&hq_-`->Oy_$ zwK-mOdm!@?M?_1@+%r>%o5<)|5MyLuO=q{m6DRgQ%FkcdD02+Baf5giOF($gp0j1S zHxL4Y@s1@*0H+WrUC66EC|V-gbOYmd$V6ugR@JSGV~xGVm1J!)e3r1s zra?nW@2WoPjF+|sX|mB+>oA&2X)mbx=JBu@i@kb$Akwcxj)ID7_WvStQic!^$1|d1 z(cV+BS64HgT4#E%oDK^cuMFmeL}i?L30t0}j;-pMtL@t>k7W$=mSLtr?+v}b!Vc^- zc)3wz2~A0Hj0wNIEfk(0By0pj@Iv&|NN!J8&n1e?Esl#E6W{9W{X9hoK3o9WM3l+; zV(N$E_K&?kXm9oBa?ZQLsE9ba4g)ioW2{&i#%dfDzMfVLaQzeCtg5qRn}%Ddr07sa z+AR+P`*sg%8lPFtPO}=_tSxozuXMo0xc7x%bx>wyt<(A_ZQ22;^lSc$V{z+ z&%FB%{#sD`xkZemki)NbQqja<337|HhgF+*nNss&%3gI&b_hX0}Sb}i{4;QEi?-M;31Y_K7FX)yQV`_t)F+l(=?!dx3{eq)GKxSkK|p__bt z0@#nayQR{DY(%a_dU)$PpvfuZ0 ze_BYcd@ACbC)zh>CtsUls{T6KeTd*V`Oxcrsg=*y@6xhs8%o?PM~2M&z8%*2oVVKM z)ic?t>{0W*D=LQ;BDUX=Ty1K3J2t$s2(? z)w@=sJL}Bh$%^rvwXHjQ7l;^OEHZY2o&)Rl>Pcb8+j}f1NRi`5;d`VQ&7`K!boXya z%l@%t^K|X;vZu+rF!GwtQuRT3nEmb=XuF+J7UHW#I4N#R?i%bd0j|Z!R@#Q8IJ$ul zaKq+ZeNDi~Ci!_z--3M;QFWS69j(4aMq|`)H|O_Qp9Tc=WBthp`MBxqa3QgO^NtRV z?Rsi^z9bxF;TUqVr$`J!9F6hZ$f3P`A24hY^q)hXIb2yWYVxf)R9QJnKwl5*{J~*4 zq~W;~=%7yvSoio7t17!a>pqCu-1s#0ru8w3*`V*I-6|iJaN@^B$Nl*eEk|agkj1~f zUqYUr7$t%YY^cI<63y{IWNe4;d+}(*Rl2U5*(hDGdpT%1?b~-$&{&69$A}A6rg;!A zhcA^?v$k6ZbTS`WG>Be%s1hPIBbc)PaT}@ehLw281Gd!X-=ad@j?$(j79_H zu`KVp)wFanv$a6$UmUdLz59gPHUFD$ZxA~xn3|H!1bBzWT4^O>QJ;zc#uyV9T9#Oo zlRx~1Ojxc~gA<(HcVtTq;d1M$U4uY#LNtVKoQqQmP}l?xlz6Xa3h1QwzNYiuVq@wO zkT8QoU-1P$g1cGOA8#18tkr$Hb-U{8`XA0jlo=#~e`N-y0eJScczmV;C~lxv z2*ekEhP-$oX7n}JMoeMNCe#J{X6`?Dp-(aJ%E>^iMUGCj5djn5#{%Oi`k26f->Xkl0fhO=F^6*)pO$(!}dzkUAci}FQUjbX^={w zXuZsT^KU`#010TE3Q@#W4d+i#+q`)lXX>i6 zm*V^6F;5vWguP*m9+fnz`&OXd9s1?r?Bc0IJ#zPVtrhxNwXE)dn9wDGHAXM9Ca@)9 z`c<5eA3N~jg^e%7cR(rjz_wGL zvo)3~2e)OmetomnG$UBLOfdhw-bb7W(MXZbE2Y=OV;jUb+`K=G=G8x14qpcGoXt<- z35-WFz*P7*9rkU#{bI7iZ;v~ILx{haES|ezxUhO*u{+EnZb=+X8+Y6_G2?rUFq%v( zbm7zNzs|L2C`(~?%+3cY<*O9WEhh`_6M;PWO$3UJrm|y`YeqwGK52N#nSzEqg@48Snp^_q*XJ z2c4Mv*t6zFE>L~9!y_ES=QG~FD)>Ts_s#7Sh0ZI0ZCwUNIr7@emp7ve_LZ#BtZcp^ zd(ZXnot|nZ0w>hkaD~MK0Ya+2Ks%tu*eU!|mWJwyMqjsEa1(nN2>WZXz)zTS?}v#~ z3v1E0f8IT)-U5v1B@bb6*alWANYx%=PTjADL(_tH>VD;Ch6S`?y$0%vRo`D-)nJ!U z(8%zNr9u+&+w27h<2LLFAO9@zFqOg{hN5&G{HCxKMFl?Z1umYyt2#e7k^T?ovHBrM zJ2{}hR=2msVt0cCrp-OG6<4a|D?)Goj&LJu3nTep`6RN3buMA`p=041w?A{^0x5F; zDr}=1F|vJf;_Psr)ooG4azq#&tJ&e?eP2JmA-1iVv5=8?cANYScytq6#EhF&IaKbV z^-`E_g`&?l*0}er|m|tRMayShC?Tg0h7`+ zjgcVSHXfPX{A*l2my9}Nxqa^iLwx&;bJpW?XC2PA54_WZ?Q3D}HMrILP!8r}uxx7A zqsRuY<_9v4jPmm;L+kI!>_tMP;xSZh=|A9nb?TtdT3W#9x7hUc`W}lIr3|b39nOSO zOwFKxHM@UVn?dsA^lZlO=EX2Yw-xKsRE;j5Fl||~Cg>4w{e5_pK#hG&0R+}*kVu&k zfW-#O6n$A5JyY1IL59c2D1%Y*1dQ?2x+IJdjE8L)Ir9OF`|T|(|M6*@SGQ=WC}ASy z4^PJ!NGOdnZ+)P=;a8;KKyn6ev^g$rgfC#$i9S%#SY&Nou4;{^X#z(A+^rOFn8L?6 z*5s|?=_G`)>H9UH=o^AwR$iXp@1JYKS6c`~(KI=bwZb!mL>YOKmzI<+Ox#$uS95*l^q4Uu zT7Auo-*GUy5I)ThemWvM=(3f7Q2_UU!qh&DR2K1i%RoVay84;naS6wjRu_$|sZy7? zv%;THX?#Dx)uhDb{G6lgeDWFlP)~Pyg$O(lskYFE+*>`S!{hyxF1#uiuW_J706-Rh zok?hgpxyfWQe2E!?8nyxSUErjXOhaI=Nj0%;fgb3v(RFl8$(`J6W=8#|9A28*Bz*r zbavb)W%R=Dr^}hU#E>97sBBBs5%QY3e&&q!RmVDQDHL11TV(oS?}X|t!GT}))q3~E z7s3;clB&`bO(G)T`l8`*@wkAcaSaZ84a-C@VA3wndMB>b&gg4cV6NfNS{GvUUw#Jm z4dFK){VD<5CK$aBJNDu?cV@(Oj-=T}mQ+{Th%xlD5a?^JBntd|4}Lc`nf(5%Lcl8R zr@oAebz=tJ7Qu~PXpMi>7Z^j}S19u3w1 z|Npvo#xDC7VN|kZDYAwkB$a(%GLa~SP{=Zulw_AJWhsgB7K$P=gV3T(p(M*7dl>sV zGvE99o%5T&=G=47oICfvp3nPyJs;1<D9koOR!PP{|39@tv3tNT8_PnCIl@ks6}~^rhNXBF1pOyrhxwD7$xjZ} z5U*4RV-=^3b(k3NLZJFw@u2}hihA;ok%Hds?Zf`5ko9qX^Ect2K7nY9Unp%J@BV!yE+6 zKUyH3wc3sN>vR04EUF^yTqr~4$8*2U7wod-2LY+T>(bhTPfxY(n3cszwZVuy1Umi~ z`AfC{nc#vb+&=j6>Q1fWcYb(Y*8eb`^8x@DdKD_ADTXAH3Onp9D@KF24f6MCU)vw? z5Y^BT{ji?UIwl)QoI@3Wi=H(Xg@9FxugL|>fuV7Xx)d7*C*B9j@fV#Id(C~vV)h@? zYg`26R8M;6xyaKSOxMfVR2rEtGxn2z(EATaRLtE`$u?ojfs?>GKnSU-H9@krSMv6% z9orYAgT8B0RSuivDsL~H)C2C%(Z26Bzk=QiAm~j)^)ylQ&qkScn9CX;j%Z75uW&L# zDpy3i$IA_i&aIVY-`~6W(W)`Q^FDfO5wEd50@NN(M6DCpVv#&WOgc@JCaO-Md_?sp z`U&f39c*zQ!U+{!Jqom=hu1UihgIvxzM^MR0zkdB6yTE-N*)~fW-{VtaFtjY^}rxs z47*ZtC{K&uoE19tfK&c1X#J@Mcn$6XKiX#)C;2$#L|I%wZfDf?Z(md)kehlC2aq@C zP5{S8CWUEjtN*cLfI6|MXvpn7uTag53pX<4i1|xT6joR=6DCY}G4l*&ttzZpCFP?; zjPRKi%p>Q7@&Li|@NdlB%LHNaC`WkY!eFV(y;siYt1)Ik61Zdg2O`e5ZuHA2 zSMJyOc80h3;N1gpS97qzSU#nDU_UpoV7<$ZPU{M@1rQ$7HaA;|O#SI^5N_Zg3h0CG z*EF^iJxQ^XIuUfa@oC1V?bFtK!NH(xHjn~M`=u8Y@D8L!2b-V%Vs>Zzy$Z9Q9d@o6 z)Igf*z!m0`E5*~y1_ASdk8y;Oov$exk4U&spYsn`fcc6Nz`qUnxA6)8_ok!!y#t8# zcnBKWUcaRu7&dEv@#6eg2T)t#qb~S-HhI)++=A&r8rX6vnz|;*^v}+0+xWgZz3F<5 zJN+p`npck`24x(^X#S9pC2J`oo>{B_@$nvuVGrt+{P*xlU*gltAe~&N2VQ!5y8NCA+8=TrCxc zOZwlO^Sq};>%7Ym@B=O9pYS7_Xa&5`F%N(Y?56>`5a|SZ#ve+yWaWU zO(1=nImdh%+DuE`nMT*vJs;LGHnTmDmgX?IZK? zLW(fn6>S@jL%93Mf7(h}X~@l7=vwdMM*^D&U9h;m+gIU`8u*VN`HLt6zg5FuIwC<4 zp{rF6m5&xiKgG&iH>(#0jR{~s8^sp*5wJ)}Ol0K35Is^7LtHmRhp>drz-Kz@&r)_s z<}|Trx|Q_vMBqss6CL0fu%EBFwGqPq#A=zJK@Cop0dC`$78|NQaakGpE+VGWAnxhz z{&ZMc>%ZoTNo}^`5Bxx%8!Y*5M{Xa#NwTWck1vys))_81bB7BcTA|iJ?GHL>y>1v+ z5;Ie)iW(BIf`3FMKsodZOfM0oqQ=s5eoC1%Ch#ut#Qx?c=X)WzxIGx>N7yWOc|$C6 z*^@PS%3psN0I_F!(~=EIUCdc89^ljdFzzUXn}}Q{ZRbCnqcyHINmuHBo|(~I>D%0# zoUg9c1>_;a<|}ovjrf`WEcgjVD9`XYxvm2BrFucc60|+q=DXJiJwA*?*93#E#Aj-3 z;993uDf0te=gbb#hK=dEQ~U-Y5<<;a8QkEqy@UY)-2DXso{ejZ>=O(TnROyM;w7MP z8~k4JmBV(erKLoy#gJTguB#nm1kRr;sWCK3J!xmw4yxZ8s_sb#grRbNFr6s+yqTYT zzK9saN1D>RK{^BH*jwlta-nF?n(YY`CTdy;wZx|8>F)j-P}Ol)*EqsHM8X0=;2FsR zF0dhPZ)Z6WT}OyJ;rE2$R@d0bwFP=%!K_0%KLyn^UUdf)tByrWeXSzt*P#(~4KM zHYdYKQNDF(-zcdoHN@yK-(gQwh+~gQbD63=T)eYEeAlBsxc07av%*17C(2&HLWW#JJ2s*Y$8r0Gf~nz8p8uQTw5+1#>Qn0|b)bs*z{l@?S~; zbgw^l>@*BN>in~)zasf{ck87Z20Y)7KLRf1e#YRl7z2?*3AMGexbbo>J!kH#cjItB zce5;@k7&~ug)GfM^{*6(Cew77{C(RDkjV67cfmfDeQR7(N{g=@D+M|d#4wz|FWiZM za)YxFzi^si

    lIfNm_Oj^Q5Nk<>ZN_)Q0+zNRi*Zs5&jCyn(z#e!9?^m+jE=po7b&5f_J$|EWN_W6pA#!UM3r*xR@;K#6 z=_Bn1@(*cgsMdiqNTU=G5E5}`Y0Fhp_6s9k%c9u2{X+3;LzMqu(hb+fOmO3`H^UTG za^FK~SnahCK1k)2Lt-Bv{f&oodp6h?ab@>_WIC&RDI`K(?0j(MoaK(_Fs`Y9WiBpe zi6@Gswa6CSV=7<~-U)ar(Ruez`|Z7)#pmRp+V|g2gNu(Ku~{2Z?t1&}tG|$3__!9v z-EHk8tlhf;uiCVvofISd8X0hMdtRNzxcwGiYcAX38QNT>Q!0A>5tI&iEamp1-T`1O z3*J}TC2imyQ=<_AH8sfKr-xG96)t*GhtoDUgptW^=`udBNmpC(c|}XbH3=v8^*YAb z$wFoO7#4uXqjS$?9%~24wFIW3&aAbNKxuGrSj4Bi=RgfhyRZ(cO}@Et^w1RH~sqJR|k7>h(@mniIr3yA%5&&U(GNVnounj6xdjR_ zV!4pts>Ap`R_7x{@7)WF99WSY7PZzcEZ@Lq$1l0Z9+oluUo7zwU%&zhpBueXdUpQdIK^&d;#!miRdH7I_1sT1K_v7VbXmF_2fIJm5=+?^0>Sv3Y-@}*5 z;c77Zonhr1!JMl-Ux~KRE<5H74!mO)&!yHf5R?7SLzR=+yaN?Yf2Kd*-oXFPp0J5-G+pzNrVJjgwsiH+|KeAqc zC3N*9dafg5#G_CUtC|@wlo59R^5H&9#E+_=?!2_Wq_#1tr~I@7qniT^p9=wp<3$pV zH(Pf<(y2{n$$G6Snxe;nmqx{{w(~uesR1y1{M#3kJ_RC-UQfH8%@2lp$Tbe~UUrJ; zK{-9Q=Xd}2ho$F!&)&%AgyY50;YMF}WV7r!at-D1+Ep219a+2%QAdaw*sPdM%{8y{ z&tN>c+aAc%ClnJ6Zj(H`p}{8ByL)vwrqgw0k?|2Lo}wyQ!(4q*>-&RZoPpUrWru+e zKoy_`A-4KFbJU!<_)@#Y#OH)BD=m$jh^`3v-yI;vA-w#|4Da|vw~*u!L-MLD2?Ni{GO zqg+ARV>cV>Yl9kP02kqo58nHFN!}M{&GRYWw#S3TAy5|fO;x*Np2@x>oqe6y+6E#C zE2SEP-YT0=S<4vt|u|@G_pRul;lEHme%S{X60f+cp>nX8ky6-BVj@TgYE#E2d3{ zLw%@^r?}7-QKDgl7Y$&_N^Af`yLE!?+q+_?$VHX2`;oLk*iUfU41xA>?K`W2&=>)A zLa$Xe>zOrmh9dZ(lPHY*&SaU{lsS~05Y54xaeMk^P1McLFrE`&a1sP4nH$<=Ax~%E zF`WG^?{IDP1%PjHK^(akvnt3%cD_5wN3VOgCwP{tPD zit*zie}bHWcVT9Zs>}9d6)ZJ0#6k@UkI4FTPKb8f0#YO6j(+Tf~*F8ac^=@HAnds|sm6OtEbHO28-GQtu8h(CQ6evgN>+ zC{yE0-Qe(|V#y+?t1_^7)#=0xZ+YG`*3Ey+6+UG0<61J|Iwz&*LBRzZ3u3D`PVAo0 z@lO10dm?^ z-;r){%iXM%=G&ddxa>+t&Bm#rUv^Lr7viUx7rUTWKy)}oYnw0~e*=T<$we_jGDyaU zlLShBNT)G|t6G8Az>?>?|o6L|4#Nz(VO5^i+_Oi{VJiz(eDc8a|NwSV^G<_2r&-SaKacYH0=U z3)l#nw7%gaqzDW+*|y z!?1r7US3K*)e`tyzz~sbB-%~s_NeHS*P$W>S~aBibtHfFuv!~zZOzK zysjc5Oop8sjDXV|c;505%SUtFd|jk!vt0Fy?n=;vK|Q@>^{wo05-sn@*-Wq$(G`0PBgqtOT*|?!Pq@Hck$XlZ>>) zmkAnwA&IhY?sg`PY3js#b2h)%3_mIc>FN&-KBW{HgW)A& zAEZHE*svBzCe}w?zqz?9i7wUKTn)ibeE)ns7dQ#y*8}r|$I58E&aEmf7H4E3wvx?4 zu8ttupDW;tanI|5Ov0h9`CytWEBWz^FX$ULBSs4Z1t>{t32JO~_S$zwG`$5#^O$G- zNoMFy_hQ*W#_h5@v9i}4)N{xs_~;w#yj;Z-KB)X_&pRw-?wDRd|7VNcHsf#xE7boc zQXEg0dK{AtiH-Iem@!48xx(3tC*?rkV4v|nU3aC$zg(~8PKIY<_itr8&s{NwHYdP~ zK4+8HCq=5KBU-cn4ZpbN0jR7{ZygZ$bocR?VeXM7(V<&JSwuI_5pY+UHBWnbji#Mp za9HK64P8E-@*Dpa>-y3gK6XGDFU6>^S~+GZK&k!LLRR32k#M=`d;Y;Buy?=7iCnr5 zygsGhr=JWi%{GxX6f1p6b7TLD8KLvjYwG^qLCdB>wU!1o&7Xl%p@A}}QABx9|GPz< zMN1SLGKcMjk@4Ur&>HgCx;|a2z`5$HH8?)xm!p^=yLXq%>Y?>{El)D}F$-#nmKvau-LbfiHUeGBeJ>WtDn0k#nuVy^?>PvTd|ptE>oLI~@;nydk>;wB zfr{H66&Hb~8v6w`H>h^LIr@RxYlXxZBQaSqW&7&W)>iOzhccAAC%@47SJknmB;QOK zi3f_4Jkpr+s|B-v2m}K zPx9@$gxA>6d6I4&`4M=DOT&!Pc{{CP15+DtIY$I(3)-9;u^dHeLI90-fMIHAV>V;; zhR)vlRjkGMSaSjXuCzM`_)3XD!uaq7#!(_LwYp4+M3dVVu^{dQQ;TqC@HlaW92Q{Fo5e9p!kZen^LUczX)~$*K z@A0}loBWW*kDMC`@c^zIKj-(pQ10ja@~oA3__ah%4GDK9dGz0hxlAD522=KuwIS!j zK$WF;UP}g0-U?o{vE1d4pJ6w-u@YWPn~McQ%Q_f5Pf#S(e?5v(#7(}45>R&J=?}Js zQl|CdaJ!wu^zrgNCg(vKWO~lV#JF_~D9D+L+s4;Pq+v^0vhDt2&;4>AEr`Y7N|zur zcQQT8?paAv?bY2Yz6Drrv3?H%$@A`(U`BvJhkD?}{F*C)BB!Nj-8Z3$g<@hheCWRj zV87?a0ic<%Sswf3w=dJm<;Dl*5#^_=*Lvm1HoEhV4X=ObE;_!rVRbg>)y)M!_=-V9 ze87b+RRJ5d#m5`GK?lEtu#H@B5!uxcw*H+9>0yc$F$0@#C+CSRul%q1Y5Rx@94#bF z@=|LRT3j@Qj|-%qUXhn~gjY&<_$8%){dk6W_~*>qM=Y*QboX}OIDkd&*B&a--fewL zPl1cO5b-YLM)>13xmI3RsxZf?al|4v}1!LN1;Jw33&&JmpJPKw}Qh@=tQGSzk=M zD8Gx*7Og;)5_RY3P7ux8lb40t9~wQbkoH*>?yd6g^3EJr^yNui}| zl0-ZLn3b;&uCWzZ_-9)&`I);!?y0c;6%4gY*CR|V-D~ZDJ`TwLKE_&Yf7-SYL&%W* zFrLYi#R8slFTEm>JH8r{f4kfW9MjuR|CEhvX;T-l1icQ_WJMPwb)I+utyIbFKJ6M{ z@01)KU63vgURP*&rI{{CVRnyPx&B!a`8g4?wH7rt!twgK;qEr(xWup$PFEgmb|*r# z{)6DBtI7SBDJ_PGuTR=Z8~Gm^jTq;7KPDS1(DM?(`YGT9ZNr8yy&yew0_nAs9*xo=NHT|`bwz$8`P(aZ|pjzb}*@VZPbw11f$dQd! zPxqhbCLMX6)BLNgSDIW=?b?$*1gQEN{y1vee73UlBShS@28(b=06t~_8jkcbLP z5OIG+6-xhK;I^QbIGeuJ*tfE_2`CYuyw}_?kAOZ4u3z0@yjDV5TZ*9nJ4E2-*vo6P z!4G$I1p6CQZ=d9G8h8#X7rW`LK*&5`xyV&5-8*8jHnw|J!# zi6~&%xxn(6vRy10doP#S4!>pYzV4;jkUTVqh|)46W}lwrlipNyxI&6N**S6g{yj=q z=f*T0<1Sp$mV`}|lmJn}o5SCzarhPhpK;m6Y(B8W|@Tg(jw15JOGUCCkZ z1!-!2-JPf`!tg-FNW?Qm;s*P2nWvdmNq@Ty3H(}!9(iaQS8fEvZlMo6;I>a%^spjc zRu9J8=xld-6TgLOe0U{|NPJ(8QfN3_ev#Yy$V-W_uv7a>M@$!`sTV`vjqhEQdMRI~ z{=#^xarc$wZNaa1`WGdrZ)z_t;g|iW7vbaYk9^RJv82uM289f~Pn6&+DYrJouRjTI zurw80eOJH3R)1` z$;VlWJHV7XuTDh3jtI1>dR9uaOy030wbM*r=`DRUKMXcG2JSOSRhyfgGQ1wOZ=H>% zNsDbgE?eI7WQ|K^{FFoz0~)^P7$^|0dp6s(%5JLU51qyXhEvg~=Q47=+frt;C<&Sr z93usE;&SP0HUD_2^Ovlo%t{hC)^|bpeO>x!by^J(dHd;Aq?84d8WtIZhXDY%Y3AGw gtRnjD|9`6a4;T|J?=;CN{qM*rQ%jSV#)P>41G?|I#sB~S literal 0 HcmV?d00001 diff --git a/themes/2025/assets/trash-CAImX6bg.js b/themes/2025/assets/trash-CAImX6bg.js new file mode 100644 index 000000000..c6844aaf1 --- /dev/null +++ b/themes/2025/assets/trash-CAImX6bg.js @@ -0,0 +1,6 @@ +import{c}from"./index-C-4-823a.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const e=c("TrashIcon",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}]]);export{e as T}; diff --git a/themes/2025/assets/trash-FNvP9-P8.js b/themes/2025/assets/trash-FNvP9-P8.js new file mode 100644 index 000000000..8a058d9e7 --- /dev/null +++ b/themes/2025/assets/trash-FNvP9-P8.js @@ -0,0 +1,6 @@ +import{c}from"./index-DKQ1YPO4.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const e=c("TrashIcon",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}]]);export{e as T}; diff --git a/themes/2025/index.html b/themes/2025/index.html new file mode 100644 index 000000000..bc115280a --- /dev/null +++ b/themes/2025/index.html @@ -0,0 +1,22 @@ + + + + + + + + + + + + {{title}} + + + + +

    + + diff --git a/web/.env.development b/web/.env.development new file mode 100644 index 000000000..64513e2ec --- /dev/null +++ b/web/.env.development @@ -0,0 +1 @@ +VITE_API_BASE_URL_DEV=http://localhost:12345 \ No newline at end of file diff --git a/web/.env.production b/web/.env.production new file mode 100644 index 000000000..c9be971b7 --- /dev/null +++ b/web/.env.production @@ -0,0 +1 @@ +VITE_API_BASE_URL_PROD= \ No newline at end of file diff --git a/web/.eslintrc.cjs b/web/.eslintrc.cjs new file mode 100644 index 000000000..6f40582dd --- /dev/null +++ b/web/.eslintrc.cjs @@ -0,0 +1,15 @@ +/* eslint-env node */ +require('@rushstack/eslint-patch/modern-module-resolution') + +module.exports = { + root: true, + 'extends': [ + 'plugin:vue/vue3-essential', + 'eslint:recommended', + '@vue/eslint-config-typescript', + '@vue/eslint-config-prettier/skip-formatting' + ], + parserOptions: { + ecmaVersion: 'latest' + } +} diff --git a/web/.gitignore b/web/.gitignore new file mode 100644 index 000000000..8ee54e8d3 --- /dev/null +++ b/web/.gitignore @@ -0,0 +1,30 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +.DS_Store +dist +dist-ssr +coverage +*.local + +/cypress/videos/ +/cypress/screenshots/ + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? + +*.tsbuildinfo diff --git a/web/.prettierrc.json b/web/.prettierrc.json new file mode 100644 index 000000000..66e23359c --- /dev/null +++ b/web/.prettierrc.json @@ -0,0 +1,8 @@ +{ + "$schema": "https://json.schemastore.org/prettierrc", + "semi": false, + "tabWidth": 2, + "singleQuote": true, + "printWidth": 100, + "trailingComma": "none" +} \ No newline at end of file diff --git a/web/README.md b/web/README.md new file mode 100644 index 000000000..8ea06d425 --- /dev/null +++ b/web/README.md @@ -0,0 +1,39 @@ +# filecodeboxfronted + +This template should help get you started developing with Vue 3 in Vite. + +## Recommended IDE Setup + +[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur). + +## Type Support for `.vue` Imports in TS + +TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) to make the TypeScript language service aware of `.vue` types. + +## Customize configuration + +See [Vite Configuration Reference](https://vitejs.dev/config/). + +## Project Setup + +```sh +pnpm install +``` + +### Compile and Hot-Reload for Development + +```sh +pnpm dev +``` + +### Type-Check, Compile and Minify for Production + +```sh +pnpm build +``` + +### Lint with [ESLint](https://eslint.org/) + +```sh +pnpm lint +``` diff --git a/web/env.d.ts b/web/env.d.ts new file mode 100644 index 000000000..11f02fe2a --- /dev/null +++ b/web/env.d.ts @@ -0,0 +1 @@ +/// diff --git a/web/index.html b/web/index.html new file mode 100644 index 000000000..bb6a0115b --- /dev/null +++ b/web/index.html @@ -0,0 +1,21 @@ + + + + + + + + + + + + {{title}} + + +
    + + + diff --git a/web/openapi.json b/web/openapi.json new file mode 100644 index 000000000..0f8b1a26a --- /dev/null +++ b/web/openapi.json @@ -0,0 +1,1170 @@ +{ + "openapi": "3.1.0", + "info": { + "title": "FastAPI", + "version": "0.1.0" + }, + "paths": { + "/share/text/": { + "post": { + "tags": [ + "分享" + ], + "summary": "Share Text", + "operationId": "share_text_share_text__post", + "parameters": [ + { + "name": "authorization", + "in": "header", + "required": false, + "schema": { + "type": "string", + "title": "Authorization" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/x-www-form-urlencoded": { + "schema": { + "$ref": "#/components/schemas/Body_share_text_share_text__post" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/share/file/": { + "post": { + "tags": [ + "分享" + ], + "summary": "Share File", + "operationId": "share_file_share_file__post", + "parameters": [ + { + "name": "authorization", + "in": "header", + "required": false, + "schema": { + "type": "string", + "title": "Authorization" + } + } + ], + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "$ref": "#/components/schemas/Body_share_file_share_file__post" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/share/select/": { + "get": { + "tags": [ + "分享" + ], + "summary": "Get Code File", + "operationId": "get_code_file_share_select__get", + "parameters": [ + { + "name": "code", + "in": "query", + "required": true, + "schema": { + "type": "string", + "title": "Code" + } + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + }, + "post": { + "tags": [ + "分享" + ], + "summary": "Select File", + "operationId": "select_file_share_select__post", + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SelectFileModel" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/share/download": { + "get": { + "tags": [ + "分享" + ], + "summary": "Download File", + "operationId": "download_file_share_download_get", + "parameters": [ + { + "name": "key", + "in": "query", + "required": true, + "schema": { + "type": "string", + "title": "Key" + } + }, + { + "name": "code", + "in": "query", + "required": true, + "schema": { + "type": "string", + "title": "Code" + } + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/chunk/upload/init/": { + "post": { + "tags": [ + "切片" + ], + "summary": "Init Chunk Upload", + "operationId": "init_chunk_upload_chunk_upload_init__post", + "requestBody": { + "content": { + "application/x-www-form-urlencoded": { + "schema": { + "$ref": "#/components/schemas/Body_init_chunk_upload_chunk_upload_init__post" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/chunk/upload/chunk/{upload_id}/{chunk_index}": { + "post": { + "tags": [ + "切片" + ], + "summary": "Upload Chunk", + "operationId": "upload_chunk_chunk_upload_chunk__upload_id___chunk_index__post", + "parameters": [ + { + "name": "upload_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "title": "Upload Id" + } + }, + { + "name": "chunk_index", + "in": "path", + "required": true, + "schema": { + "type": "integer", + "title": "Chunk Index" + } + } + ], + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "$ref": "#/components/schemas/Body_upload_chunk_chunk_upload_chunk__upload_id___chunk_index__post" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/chunk/upload/complete/{upload_id}": { + "post": { + "tags": [ + "切片" + ], + "summary": "Complete Upload", + "operationId": "complete_upload_chunk_upload_complete__upload_id__post", + "parameters": [ + { + "name": "upload_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "title": "Upload Id" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/x-www-form-urlencoded": { + "schema": { + "$ref": "#/components/schemas/Body_complete_upload_chunk_upload_complete__upload_id__post" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/admin/login": { + "post": { + "tags": [ + "管理" + ], + "summary": "Login", + "operationId": "login_admin_login_post", + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/LoginData" + } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/admin/dashboard": { + "get": { + "tags": [ + "管理" + ], + "summary": "Dashboard", + "operationId": "dashboard_admin_dashboard_get", + "parameters": [ + { + "name": "authorization", + "in": "header", + "required": false, + "schema": { + "type": "string", + "title": "Authorization" + } + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/admin/file/delete": { + "delete": { + "tags": [ + "管理" + ], + "summary": "File Delete", + "operationId": "file_delete_admin_file_delete_delete", + "parameters": [ + { + "name": "authorization", + "in": "header", + "required": false, + "schema": { + "type": "string", + "title": "Authorization" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/IDData" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/admin/file/list": { + "get": { + "tags": [ + "管理" + ], + "summary": "File List", + "operationId": "file_list_admin_file_list_get", + "parameters": [ + { + "name": "page", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 1, + "title": "Page" + } + }, + { + "name": "size", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "default": 10, + "title": "Size" + } + }, + { + "name": "keyword", + "in": "query", + "required": false, + "schema": { + "type": "string", + "default": "", + "title": "Keyword" + } + }, + { + "name": "authorization", + "in": "header", + "required": false, + "schema": { + "type": "string", + "title": "Authorization" + } + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/admin/config/get": { + "get": { + "tags": [ + "管理" + ], + "summary": "Get Config", + "operationId": "get_config_admin_config_get_get", + "parameters": [ + { + "name": "authorization", + "in": "header", + "required": false, + "schema": { + "type": "string", + "title": "Authorization" + } + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/admin/config/update": { + "patch": { + "tags": [ + "管理" + ], + "summary": "Update Config", + "operationId": "update_config_admin_config_update_patch", + "parameters": [ + { + "name": "authorization", + "in": "header", + "required": false, + "schema": { + "type": "string", + "title": "Authorization" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "title": "Data" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/admin/file/download": { + "get": { + "tags": [ + "管理" + ], + "summary": "File Download", + "operationId": "file_download_admin_file_download_get", + "parameters": [ + { + "name": "id", + "in": "query", + "required": true, + "schema": { + "type": "integer", + "title": "Id" + } + }, + { + "name": "authorization", + "in": "header", + "required": false, + "schema": { + "type": "string", + "title": "Authorization" + } + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/admin/local/lists": { + "get": { + "tags": [ + "管理" + ], + "summary": "Get Local Lists", + "operationId": "get_local_lists_admin_local_lists_get", + "parameters": [ + { + "name": "authorization", + "in": "header", + "required": false, + "schema": { + "type": "string", + "title": "Authorization" + } + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/admin/local/delete": { + "delete": { + "tags": [ + "管理" + ], + "summary": "Delete Local File", + "operationId": "delete_local_file_admin_local_delete_delete", + "parameters": [ + { + "name": "authorization", + "in": "header", + "required": false, + "schema": { + "type": "string", + "title": "Authorization" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DeleteItem" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/admin/local/share": { + "post": { + "tags": [ + "管理" + ], + "summary": "Share Local File", + "operationId": "share_local_file_admin_local_share_post", + "parameters": [ + { + "name": "authorization", + "in": "header", + "required": false, + "schema": { + "type": "string", + "title": "Authorization" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ShareItem" + } + } + } + }, + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + } + }, + "/": { + "get": { + "summary": "Index", + "operationId": "index__get", + "parameters": [ + { + "name": "request", + "in": "query", + "required": false, + "schema": { + "title": "Request" + } + }, + { + "name": "exc", + "in": "query", + "required": false, + "schema": { + "title": "Exc" + } + } + ], + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + }, + "422": { + "description": "Validation Error", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/HTTPValidationError" + } + } + } + } + } + }, + "post": { + "summary": "Get Config", + "operationId": "get_config__post", + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + } + } + } + }, + "/robots.txt": { + "get": { + "summary": "Robots", + "operationId": "robots_robots_txt_get", + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": {} + } + } + } + } + } + } + }, + "components": { + "schemas": { + "Body_complete_upload_chunk_upload_complete__upload_id__post": { + "properties": { + "expire_value": { + "type": "integer", + "title": "Expire Value" + }, + "expire_style": { + "type": "string", + "title": "Expire Style" + } + }, + "type": "object", + "required": [ + "expire_value", + "expire_style" + ], + "title": "Body_complete_upload_chunk_upload_complete__upload_id__post" + }, + "Body_init_chunk_upload_chunk_upload_init__post": { + "properties": { + "file_name": { + "type": "string", + "title": "File Name" + }, + "file_size": { + "type": "integer", + "title": "File Size" + }, + "chunk_size": { + "type": "integer", + "title": "Chunk Size", + "default": 5242880 + }, + "file_hash": { + "type": "string", + "title": "File Hash" + } + }, + "type": "object", + "required": [ + "file_name", + "file_size", + "file_hash" + ], + "title": "Body_init_chunk_upload_chunk_upload_init__post" + }, + "Body_share_file_share_file__post": { + "properties": { + "expire_value": { + "type": "integer", + "exclusiveMinimum": 0.0, + "title": "Expire Value", + "default": 1 + }, + "expire_style": { + "type": "string", + "title": "Expire Style", + "default": "day" + }, + "file": { + "type": "string", + "format": "binary", + "title": "File" + } + }, + "type": "object", + "required": [ + "file" + ], + "title": "Body_share_file_share_file__post" + }, + "Body_share_text_share_text__post": { + "properties": { + "text": { + "type": "string", + "title": "Text" + }, + "expire_value": { + "type": "integer", + "exclusiveMinimum": 0.0, + "title": "Expire Value", + "default": 1 + }, + "expire_style": { + "type": "string", + "title": "Expire Style", + "default": "day" + } + }, + "type": "object", + "required": [ + "text" + ], + "title": "Body_share_text_share_text__post" + }, + "Body_upload_chunk_chunk_upload_chunk__upload_id___chunk_index__post": { + "properties": { + "chunk": { + "type": "string", + "format": "binary", + "title": "Chunk" + } + }, + "type": "object", + "required": [ + "chunk" + ], + "title": "Body_upload_chunk_chunk_upload_chunk__upload_id___chunk_index__post" + }, + "DeleteItem": { + "properties": { + "filename": { + "type": "string", + "title": "Filename" + } + }, + "type": "object", + "required": [ + "filename" + ], + "title": "DeleteItem" + }, + "HTTPValidationError": { + "properties": { + "detail": { + "items": { + "$ref": "#/components/schemas/ValidationError" + }, + "type": "array", + "title": "Detail" + } + }, + "type": "object", + "title": "HTTPValidationError" + }, + "IDData": { + "properties": { + "id": { + "type": "integer", + "title": "Id" + } + }, + "type": "object", + "required": [ + "id" + ], + "title": "IDData" + }, + "LoginData": { + "properties": { + "password": { + "type": "string", + "title": "Password" + } + }, + "type": "object", + "required": [ + "password" + ], + "title": "LoginData" + }, + "SelectFileModel": { + "properties": { + "code": { + "type": "string", + "title": "Code" + } + }, + "type": "object", + "required": [ + "code" + ], + "title": "SelectFileModel" + }, + "ShareItem": { + "properties": { + "expire_value": { + "type": "integer", + "title": "Expire Value" + }, + "expire_style": { + "type": "string", + "title": "Expire Style", + "default": "day" + }, + "filename": { + "type": "string", + "title": "Filename" + } + }, + "type": "object", + "required": [ + "expire_value", + "filename" + ], + "title": "ShareItem" + }, + "ValidationError": { + "properties": { + "loc": { + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] + }, + "type": "array", + "title": "Location" + }, + "msg": { + "type": "string", + "title": "Message" + }, + "type": { + "type": "string", + "title": "Error Type" + } + }, + "type": "object", + "required": [ + "loc", + "msg", + "type" + ], + "title": "ValidationError" + } + } + } +} diff --git a/web/package-lock.json b/web/package-lock.json new file mode 100644 index 000000000..8424b3e1e --- /dev/null +++ b/web/package-lock.json @@ -0,0 +1,6016 @@ +{ + "name": "filecodeboxfronted", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "filecodeboxfronted", + "version": "0.0.0", + "dependencies": { + "@tailwindcss/typography": "^0.5.15", + "axios": "^1.7.7", + "file-saver": "^2.0.5", + "lru-cache": "^11.0.1", + "lucide-vue-next": "^0.445.0", + "marked": "^14.1.2", + "pinia": "^2.2.2", + "qrcode.vue": "^3.4.1", + "spark-md5": "^3.0.2", + "vue": "^3.5.8", + "vue-router": "^4.4.5" + }, + "devDependencies": { + "@eslint/config-array": "^0.18.0", + "@eslint/object-schema": "^2.1.4", + "@rushstack/eslint-patch": "^1.10.4", + "@tsconfig/node20": "^20.1.4", + "@types/node": "^20.16.7", + "@types/spark-md5": "^3.0.4", + "@vitejs/plugin-vue": "^5.1.4", + "@vitejs/plugin-vue-jsx": "^4.0.1", + "@vue/eslint-config-prettier": "^9.0.0", + "@vue/eslint-config-typescript": "^13.0.0", + "@vue/tsconfig": "^0.5.1", + "autoprefixer": "^10.4.20", + "eslint": "^8.57.1", + "eslint-plugin-vue": "^9.28.0", + "glob": "^11.0.0", + "npm-run-all2": "^6.2.3", + "postcss": "^8.4.47", + "prettier": "^3.3.3", + "rimraf": "^6.0.1", + "tailwindcss": "^3.4.13", + "typescript": "~5.4.5", + "vite": "^5.4.7", + "vite-plugin-vue-devtools": "^7.4.6", + "vue-tsc": "^2.1.6" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@antfu/utils": { + "version": "0.7.10", + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-0.7.10.tgz", + "integrity": "sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", + "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.27.1", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.27.5.tgz", + "integrity": "sha512-KiRAp/VoJaWkkte84TvUd9qjdbZAdiqyvMxrGl1N6vzFogKmaLgoM3L1kgtLicp2HP5fBJS8JrZKLVIZGVJAVg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.27.4", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.27.4.tgz", + "integrity": "sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.3", + "@babel/helper-compilation-targets": "^7.27.2", + "@babel/helper-module-transforms": "^7.27.3", + "@babel/helpers": "^7.27.4", + "@babel/parser": "^7.27.4", + "@babel/template": "^7.27.2", + "@babel/traverse": "^7.27.4", + "@babel/types": "^7.27.3", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.5.tgz", + "integrity": "sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.27.5", + "@babel/types": "^7.27.3", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.27.3" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz", + "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.27.2", + "@babel/helper-validator-option": "^7.27.1", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.1.tgz", + "integrity": "sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/helper-replace-supers": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/traverse": "^7.27.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.27.1.tgz", + "integrity": "sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz", + "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz", + "integrity": "sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1", + "@babel/traverse": "^7.27.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz", + "integrity": "sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz", + "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz", + "integrity": "sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==", + "dev": true, + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.27.1", + "@babel/helper-optimise-call-expression": "^7.27.1", + "@babel/traverse": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz", + "integrity": "sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.27.1", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", + "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz", + "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", + "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.27.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.6.tgz", + "integrity": "sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==", + "dev": true, + "dependencies": { + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.27.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.5.tgz", + "integrity": "sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==", + "dependencies": { + "@babel/types": "^7.27.3" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-proposal-decorators": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.27.1.tgz", + "integrity": "sha512-DTxe4LBPrtFdsWzgpmbBKevg3e9PBy+dXRt19kSbucbZvL2uqtdqwwpluL1jfxYE0wIDTFp1nTy/q6gNLsxXrg==", + "dev": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/plugin-syntax-decorators": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-decorators": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.27.1.tgz", + "integrity": "sha512-YMq8Z87Lhl8EGkmb0MwYkt36QnxC+fzCgrl66ereamPlYToRpIk5nUjKUY3QKLWq8mwUB1BgbeXcTJhZOCDg5A==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz", + "integrity": "sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz", + "integrity": "sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.27.1.tgz", + "integrity": "sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.27.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.27.1.tgz", + "integrity": "sha512-Q5sT5+O4QUebHdbwKedFBEwRLb02zJ7r4A5Gg2hUoLuU3FjdMcyqcywqUrLCaDsFCxzokf7u9kuy7qz51YUuAg==", + "dev": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.27.1", + "@babel/helper-create-class-features-plugin": "^7.27.1", + "@babel/helper-plugin-utils": "^7.27.1", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", + "@babel/plugin-syntax-typescript": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.27.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz", + "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/parser": "^7.27.2", + "@babel/types": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.27.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.4.tgz", + "integrity": "sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.27.1", + "@babel/generator": "^7.27.3", + "@babel/parser": "^7.27.4", + "@babel/template": "^7.27.2", + "@babel/types": "^7.27.3", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.27.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.6.tgz", + "integrity": "sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz", + "integrity": "sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.18.0.tgz", + "integrity": "sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==", + "dev": true, + "dependencies": { + "@eslint/object-schema": "^2.1.4", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "dev": true + }, + "node_modules/@isaacs/balanced-match": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", + "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", + "dev": true, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/brace-expansion": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz", + "integrity": "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==", + "dev": true, + "dependencies": { + "@isaacs/balanced-match": "^4.0.1" + }, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@pkgr/core": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.7.tgz", + "integrity": "sha512-YLT9Zo3oNPJoBjBc4q8G2mjU4tqIbf5CEOORbUUr48dCD9q3umJ3IPlVqOqDakPfd2HuwccBaqlGhN4Gmr5OWg==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/pkgr" + } + }, + "node_modules/@polka/url": { + "version": "1.0.0-next.29", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.29.tgz", + "integrity": "sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==", + "dev": true + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-beta.19", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.19.tgz", + "integrity": "sha512-3FL3mnMbPu0muGOCaKAhhFEYmqv9eTfPSJRJmANrCwtgK8VuxpsZDGK+m0LYAGoyO8+0j5uRe4PeyPDK1yA/hA==", + "dev": true + }, + "node_modules/@rollup/pluginutils": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.2.0.tgz", + "integrity": "sha512-qWJ2ZTbmumwiLFomfzTyt5Kng4hwPi9rwCYN4SHb6eaRU1KNO4ccxINHr/VhH4GgPlt1XfSTLX2LBTme8ne4Zw==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils/node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.44.0.tgz", + "integrity": "sha512-xEiEE5oDW6tK4jXCAyliuntGR+amEMO7HLtdSshVuhFnKTYoeYMyXQK7pLouAJJj5KHdwdn87bfHAR2nSdNAUA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.44.0.tgz", + "integrity": "sha512-uNSk/TgvMbskcHxXYHzqwiyBlJ/lGcv8DaUfcnNwict8ba9GTTNxfn3/FAoFZYgkaXXAdrAA+SLyKplyi349Jw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.44.0.tgz", + "integrity": "sha512-VGF3wy0Eq1gcEIkSCr8Ke03CWT+Pm2yveKLaDvq51pPpZza3JX/ClxXOCmTYYq3us5MvEuNRTaeyFThCKRQhOA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.44.0.tgz", + "integrity": "sha512-fBkyrDhwquRvrTxSGH/qqt3/T0w5Rg0L7ZIDypvBPc1/gzjJle6acCpZ36blwuwcKD/u6oCE/sRWlUAcxLWQbQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.44.0.tgz", + "integrity": "sha512-u5AZzdQJYJXByB8giQ+r4VyfZP+walV+xHWdaFx/1VxsOn6eWJhK2Vl2eElvDJFKQBo/hcYIBg/jaKS8ZmKeNQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.44.0.tgz", + "integrity": "sha512-qC0kS48c/s3EtdArkimctY7h3nHicQeEUdjJzYVJYR3ct3kWSafmn6jkNCA8InbUdge6PVx6keqjk5lVGJf99g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.44.0.tgz", + "integrity": "sha512-x+e/Z9H0RAWckn4V2OZZl6EmV0L2diuX3QB0uM1r6BvhUIv6xBPL5mrAX2E3e8N8rEHVPwFfz/ETUbV4oW9+lQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.44.0.tgz", + "integrity": "sha512-1exwiBFf4PU/8HvI8s80icyCcnAIB86MCBdst51fwFmH5dyeoWVPVgmQPcKrMtBQ0W5pAs7jBCWuRXgEpRzSCg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.44.0.tgz", + "integrity": "sha512-ZTR2mxBHb4tK4wGf9b8SYg0Y6KQPjGpR4UWwTFdnmjB4qRtoATZ5dWn3KsDwGa5Z2ZBOE7K52L36J9LueKBdOQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.44.0.tgz", + "integrity": "sha512-GFWfAhVhWGd4r6UxmnKRTBwP1qmModHtd5gkraeW2G490BpFOZkFtem8yuX2NyafIP/mGpRJgTJ2PwohQkUY/Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.44.0.tgz", + "integrity": "sha512-xw+FTGcov/ejdusVOqKgMGW3c4+AgqrfvzWEVXcNP6zq2ue+lsYUgJ+5Rtn/OTJf7e2CbgTFvzLW2j0YAtj0Gg==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.44.0.tgz", + "integrity": "sha512-bKGibTr9IdF0zr21kMvkZT4K6NV+jjRnBoVMt2uNMG0BYWm3qOVmYnXKzx7UhwrviKnmK46IKMByMgvpdQlyJQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.44.0.tgz", + "integrity": "sha512-vV3cL48U5kDaKZtXrti12YRa7TyxgKAIDoYdqSIOMOFBXqFj2XbChHAtXquEn2+n78ciFgr4KIqEbydEGPxXgA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.44.0.tgz", + "integrity": "sha512-TDKO8KlHJuvTEdfw5YYFBjhFts2TR0VpZsnLLSYmB7AaohJhM8ctDSdDnUGq77hUh4m/djRafw+9zQpkOanE2Q==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.44.0.tgz", + "integrity": "sha512-8541GEyktXaw4lvnGp9m84KENcxInhAt6vPWJ9RodsB/iGjHoMB2Pp5MVBCiKIRxrxzJhGCxmNzdu+oDQ7kwRA==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.44.0.tgz", + "integrity": "sha512-iUVJc3c0o8l9Sa/qlDL2Z9UP92UZZW1+EmQ4xfjTc1akr0iUFZNfxrXJ/R1T90h/ILm9iXEY6+iPrmYB3pXKjw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.44.0.tgz", + "integrity": "sha512-PQUobbhLTQT5yz/SPg116VJBgz+XOtXt8D1ck+sfJJhuEsMj2jSej5yTdp8CvWBSceu+WW+ibVL6dm0ptG5fcA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.44.0.tgz", + "integrity": "sha512-M0CpcHf8TWn+4oTxJfh7LQuTuaYeXGbk0eageVjQCKzYLsajWS/lFC94qlRqOlyC2KvRT90ZrfXULYmukeIy7w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.44.0.tgz", + "integrity": "sha512-3XJ0NQtMAXTWFW8FqZKcw3gOQwBtVWP/u8TpHP3CRPXD7Pd6s8lLdH3sHWh8vqKCyyiI8xW5ltJScQmBU9j7WA==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.44.0.tgz", + "integrity": "sha512-Q2Mgwt+D8hd5FIPUuPDsvPR7Bguza6yTkJxspDGkZj7tBRn2y4KSWYuIXpftFSjBra76TbKerCV7rgFPQrn+wQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.11.0.tgz", + "integrity": "sha512-zxnHvoMQVqewTJr/W4pKjF0bMGiKJv1WX7bSrkl46Hg0QjESbzBROWK0Wg4RphzSOS5Jiy7eFimmM3UgMrMZbQ==", + "dev": true + }, + "node_modules/@sec-ant/readable-stream": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@sec-ant/readable-stream/-/readable-stream-0.4.1.tgz", + "integrity": "sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==", + "dev": true + }, + "node_modules/@sindresorhus/merge-streams": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz", + "integrity": "sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@tailwindcss/typography": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.16.tgz", + "integrity": "sha512-0wDLwCVF5V3x3b1SGXPCDcdsbDHMBe+lkFzBRaHeLvNi+nrrnZ1lA18u+OTWO8iSWU2GxUOCvlXtDuqftc1oiA==", + "dependencies": { + "lodash.castarray": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.merge": "^4.6.2", + "postcss-selector-parser": "6.0.10" + }, + "peerDependencies": { + "tailwindcss": ">=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1" + } + }, + "node_modules/@tsconfig/node20": { + "version": "20.1.6", + "resolved": "https://registry.npmjs.org/@tsconfig/node20/-/node20-20.1.6.tgz", + "integrity": "sha512-sz+Hqx9zwZDpZIV871WSbUzSqNIsXzghZydypnfgzPKLltVJfkINfUeTct31n/tTSa9ZE1ZOfKdRre1uHHquYQ==", + "dev": true + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true + }, + "node_modules/@types/node": { + "version": "20.19.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.1.tgz", + "integrity": "sha512-jJD50LtlD2dodAEO653i3YF04NWak6jN3ky+Ri3Em3mGR39/glWiboM/IePaRbgwSfqM1TpGXfAg8ohn/4dTgA==", + "dev": true, + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/spark-md5": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/spark-md5/-/spark-md5-3.0.5.tgz", + "integrity": "sha512-lWf05dnD42DLVKQJZrDHtWFidcLrHuip01CtnC2/S6AMhX4t9ZlEUj4iuRlAnts0PQk7KESOqKxeGE/b6sIPGg==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.18.0.tgz", + "integrity": "sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==", + "dev": true, + "dependencies": { + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/type-utils": "7.18.0", + "@typescript-eslint/utils": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", + "graphemer": "^1.4.0", + "ignore": "^5.3.1", + "natural-compare": "^1.4.0", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^7.0.0", + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.18.0.tgz", + "integrity": "sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz", + "integrity": "sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.18.0.tgz", + "integrity": "sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/utils": "7.18.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.18.0.tgz", + "integrity": "sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz", + "integrity": "sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.18.0.tgz", + "integrity": "sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz", + "integrity": "sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "7.18.0", + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "dev": true + }, + "node_modules/@vitejs/plugin-vue": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.2.4.tgz", + "integrity": "sha512-7Yx/SXSOcQq5HiiV3orevHUFn+pmMB4cgbEkDYgnkUWb0WfeQ/wa2yFv6D5ICiCQOVpjA7vYDXrC7AGO8yjDHA==", + "dev": true, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vitejs/plugin-vue-jsx": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue-jsx/-/plugin-vue-jsx-4.2.0.tgz", + "integrity": "sha512-DSTrmrdLp+0LDNF77fqrKfx7X0ErRbOcUAgJL/HbSesqQwoUvUQ4uYQqaex+rovqgGcoPqVk+AwUh3v9CuiYIw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.27.1", + "@babel/plugin-transform-typescript": "^7.27.1", + "@rolldown/pluginutils": "^1.0.0-beta.9", + "@vue/babel-plugin-jsx": "^1.4.0" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0", + "vue": "^3.0.0" + } + }, + "node_modules/@volar/language-core": { + "version": "2.4.15", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.15.tgz", + "integrity": "sha512-3VHw+QZU0ZG9IuQmzT68IyN4hZNd9GchGPhbD9+pa8CVv7rnoOZwo7T8weIbrRmihqy3ATpdfXFnqRrfPVK6CA==", + "dev": true, + "dependencies": { + "@volar/source-map": "2.4.15" + } + }, + "node_modules/@volar/source-map": { + "version": "2.4.15", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.15.tgz", + "integrity": "sha512-CPbMWlUN6hVZJYGcU/GSoHu4EnCHiLaXI9n8c9la6RaI9W5JHX+NqG+GSQcB0JdC2FIBLdZJwGsfKyBB71VlTg==", + "dev": true + }, + "node_modules/@volar/typescript": { + "version": "2.4.15", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.15.tgz", + "integrity": "sha512-2aZ8i0cqPGjXb4BhkMsPYDkkuc2ZQ6yOpqwAuNwUoncELqoy5fRgOQtLR9gB0g902iS0NAkvpIzs27geVyVdPg==", + "dev": true, + "dependencies": { + "@volar/language-core": "2.4.15", + "path-browserify": "^1.0.1", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@vue/babel-helper-vue-transform-on": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.4.0.tgz", + "integrity": "sha512-mCokbouEQ/ocRce/FpKCRItGo+013tHg7tixg3DUNS+6bmIchPt66012kBMm476vyEIJPafrvOf4E5OYj3shSw==", + "dev": true + }, + "node_modules/@vue/babel-plugin-jsx": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.4.0.tgz", + "integrity": "sha512-9zAHmwgMWlaN6qRKdrg1uKsBKHvnUU+Py+MOCTuYZBoZsopa90Di10QRjB+YPnVss0BZbG/H5XFwJY1fTxJWhA==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-plugin-utils": "^7.26.5", + "@babel/plugin-syntax-jsx": "^7.25.9", + "@babel/template": "^7.26.9", + "@babel/traverse": "^7.26.9", + "@babel/types": "^7.26.9", + "@vue/babel-helper-vue-transform-on": "1.4.0", + "@vue/babel-plugin-resolve-type": "1.4.0", + "@vue/shared": "^3.5.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + } + } + }, + "node_modules/@vue/babel-plugin-resolve-type": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@vue/babel-plugin-resolve-type/-/babel-plugin-resolve-type-1.4.0.tgz", + "integrity": "sha512-4xqDRRbQQEWHQyjlYSgZsWj44KfiF6D+ktCuXyZ8EnVDYV3pztmXJDf1HveAjUAXxAnR8daCQT51RneWWxtTyQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-plugin-utils": "^7.26.5", + "@babel/parser": "^7.26.9", + "@vue/compiler-sfc": "^3.5.13" + }, + "funding": { + "url": "https://github.com/sponsors/sxzz" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.17.tgz", + "integrity": "sha512-Xe+AittLbAyV0pabcN7cP7/BenRBNcteM4aSDCtRvGw0d9OL+HG1u/XHLY/kt1q4fyMeZYXyIYrsHuPSiDPosA==", + "dependencies": { + "@babel/parser": "^7.27.5", + "@vue/shared": "3.5.17", + "entities": "^4.5.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.17.tgz", + "integrity": "sha512-+2UgfLKoaNLhgfhV5Ihnk6wB4ljyW1/7wUIog2puUqajiC29Lp5R/IKDdkebh9jTbTogTbsgB+OY9cEWzG95JQ==", + "dependencies": { + "@vue/compiler-core": "3.5.17", + "@vue/shared": "3.5.17" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.17.tgz", + "integrity": "sha512-rQQxbRJMgTqwRugtjw0cnyQv9cP4/4BxWfTdRBkqsTfLOHWykLzbOc3C4GGzAmdMDxhzU/1Ija5bTjMVrddqww==", + "dependencies": { + "@babel/parser": "^7.27.5", + "@vue/compiler-core": "3.5.17", + "@vue/compiler-dom": "3.5.17", + "@vue/compiler-ssr": "3.5.17", + "@vue/shared": "3.5.17", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.17", + "postcss": "^8.5.6", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.17.tgz", + "integrity": "sha512-hkDbA0Q20ZzGgpj5uZjb9rBzQtIHLS78mMilwrlpWk2Ep37DYntUz0PonQ6kr113vfOEdM+zTBuJDaceNIW0tQ==", + "dependencies": { + "@vue/compiler-dom": "3.5.17", + "@vue/shared": "3.5.17" + } + }, + "node_modules/@vue/compiler-vue2": { + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz", + "integrity": "sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==", + "dev": true, + "dependencies": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "node_modules/@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==" + }, + "node_modules/@vue/devtools-core": { + "version": "7.7.7", + "resolved": "https://registry.npmjs.org/@vue/devtools-core/-/devtools-core-7.7.7.tgz", + "integrity": "sha512-9z9TLbfC+AjAi1PQyWX+OErjIaJmdFlbDHcD+cAMYKY6Bh5VlsAtCeGyRMrXwIlMEQPukvnWt3gZBLwTAIMKzQ==", + "dev": true, + "dependencies": { + "@vue/devtools-kit": "^7.7.7", + "@vue/devtools-shared": "^7.7.7", + "mitt": "^3.0.1", + "nanoid": "^5.1.0", + "pathe": "^2.0.3", + "vite-hot-client": "^2.0.4" + }, + "peerDependencies": { + "vue": "^3.0.0" + } + }, + "node_modules/@vue/devtools-core/node_modules/nanoid": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.5.tgz", + "integrity": "sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.js" + }, + "engines": { + "node": "^18 || >=20" + } + }, + "node_modules/@vue/devtools-kit": { + "version": "7.7.7", + "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.7.7.tgz", + "integrity": "sha512-wgoZtxcTta65cnZ1Q6MbAfePVFxfM+gq0saaeytoph7nEa7yMXoi6sCPy4ufO111B9msnw0VOWjPEFCXuAKRHA==", + "dev": true, + "dependencies": { + "@vue/devtools-shared": "^7.7.7", + "birpc": "^2.3.0", + "hookable": "^5.5.3", + "mitt": "^3.0.1", + "perfect-debounce": "^1.0.0", + "speakingurl": "^14.0.1", + "superjson": "^2.2.2" + } + }, + "node_modules/@vue/devtools-shared": { + "version": "7.7.7", + "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.7.tgz", + "integrity": "sha512-+udSj47aRl5aKb0memBvcUG9koarqnxNM5yjuREvqwK6T3ap4mn3Zqqc17QrBFTqSMjr3HK1cvStEZpMDpfdyw==", + "dev": true, + "dependencies": { + "rfdc": "^1.4.1" + } + }, + "node_modules/@vue/eslint-config-prettier": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@vue/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz", + "integrity": "sha512-z1ZIAAUS9pKzo/ANEfd2sO+v2IUalz7cM/cTLOZ7vRFOPk5/xuRKQteOu1DErFLAh/lYGXMVZ0IfYKlyInuDVg==", + "dev": true, + "dependencies": { + "eslint-config-prettier": "^9.0.0", + "eslint-plugin-prettier": "^5.0.0" + }, + "peerDependencies": { + "eslint": ">= 8.0.0", + "prettier": ">= 3.0.0" + } + }, + "node_modules/@vue/eslint-config-typescript": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-13.0.0.tgz", + "integrity": "sha512-MHh9SncG/sfqjVqjcuFLOLD6Ed4dRAis4HNt0dXASeAuLqIAx4YMB1/m2o4pUKK1vCt8fUvYG8KKX2Ot3BVZTg==", + "dev": true, + "dependencies": { + "@typescript-eslint/eslint-plugin": "^7.1.1", + "@typescript-eslint/parser": "^7.1.1", + "vue-eslint-parser": "^9.3.1" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "peerDependencies": { + "eslint": "^8.56.0", + "eslint-plugin-vue": "^9.0.0", + "typescript": ">=4.7.4" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/language-core": { + "version": "2.2.10", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-2.2.10.tgz", + "integrity": "sha512-+yNoYx6XIKuAO8Mqh1vGytu8jkFEOH5C8iOv3i8Z/65A7x9iAOXA97Q+PqZ3nlm2lxf5rOJuIGI/wDtx/riNYw==", + "dev": true, + "dependencies": { + "@volar/language-core": "~2.4.11", + "@vue/compiler-dom": "^3.5.0", + "@vue/compiler-vue2": "^2.7.16", + "@vue/shared": "^3.5.0", + "alien-signals": "^1.0.3", + "minimatch": "^9.0.3", + "muggle-string": "^0.4.1", + "path-browserify": "^1.0.1" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/language-core/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@vue/language-core/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.17.tgz", + "integrity": "sha512-l/rmw2STIscWi7SNJp708FK4Kofs97zc/5aEPQh4bOsReD/8ICuBcEmS7KGwDj5ODQLYWVN2lNibKJL1z5b+Lw==", + "dependencies": { + "@vue/shared": "3.5.17" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.17.tgz", + "integrity": "sha512-QQLXa20dHg1R0ri4bjKeGFKEkJA7MMBxrKo2G+gJikmumRS7PTD4BOU9FKrDQWMKowz7frJJGqBffYMgQYS96Q==", + "dependencies": { + "@vue/reactivity": "3.5.17", + "@vue/shared": "3.5.17" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.17.tgz", + "integrity": "sha512-8El0M60TcwZ1QMz4/os2MdlQECgGoVHPuLnQBU3m9h3gdNRW9xRmI8iLS4t/22OQlOE6aJvNNlBiCzPHur4H9g==", + "dependencies": { + "@vue/reactivity": "3.5.17", + "@vue/runtime-core": "3.5.17", + "@vue/shared": "3.5.17", + "csstype": "^3.1.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.17.tgz", + "integrity": "sha512-BOHhm8HalujY6lmC3DbqF6uXN/K00uWiEeF22LfEsm9Q93XeJ/plHTepGwf6tqFcF7GA5oGSSAAUock3VvzaCA==", + "dependencies": { + "@vue/compiler-ssr": "3.5.17", + "@vue/shared": "3.5.17" + }, + "peerDependencies": { + "vue": "3.5.17" + } + }, + "node_modules/@vue/shared": { + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.17.tgz", + "integrity": "sha512-CabR+UN630VnsJO/jHWYBC1YVXyMq94KKp6iF5MQgZJs5I8cmjw6oVMO1oDbtBkENSHSSn/UadWlW/OAgdmKrg==" + }, + "node_modules/@vue/tsconfig": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/@vue/tsconfig/-/tsconfig-0.5.1.tgz", + "integrity": "sha512-VcZK7MvpjuTPx2w6blwnwZAu5/LgBUtejFOi3pPGQFXQN5Ela03FUtd2Qtg4yWGGissVL0dr6Ro1LfOFh+PCuQ==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", + "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/alien-signals": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-1.0.13.tgz", + "integrity": "sha512-OGj9yyTnJEttvzhTUWuscOvtqxq5vrhF7vL9oS0xJ2mK0ItPYP1/y+vCFebfxoEyAz0++1AIwJ5CMr+Fk3nDmg==", + "dev": true + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/autoprefixer": { + "version": "10.4.21", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz", + "integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "browserslist": "^4.24.4", + "caniuse-lite": "^1.0.30001702", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.1.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/axios": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.10.0.tgz", + "integrity": "sha512-/1xYAC4MP/HEG+3duIhFr4ZQXR4sQXOIe+o6sdqzeykGLx6Upp/1p8MHqhINOvGeP7xyNHe7tsiJByc4SSVUxw==", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/birpc": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/birpc/-/birpc-2.4.0.tgz", + "integrity": "sha512-5IdNxTyhXHv2UlgnPHQ0h+5ypVmkrYHzL8QT+DwFZ//2N/oNV8Ch+BCRmTJ3x6/z9Axo/cXYBc9eprsUVK/Jsg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.25.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.0.tgz", + "integrity": "sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001718", + "electron-to-chromium": "^1.5.160", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.3" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bundle-name": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", + "integrity": "sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==", + "dev": true, + "dependencies": { + "run-applescript": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001724", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001724.tgz", + "integrity": "sha512-WqJo7p0TbHDOythNTqYujmaJTvtYRZrjpP8TCvH6Vb9CYJerJNKamKzIWOM4BkQatWj9H2lYulpdAQNBe7QhNA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/copy-anything": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz", + "integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==", + "dev": true, + "dependencies": { + "is-what": "^4.1.8" + }, + "engines": { + "node": ">=12.13" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" + }, + "node_modules/de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "dev": true + }, + "node_modules/debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/default-browser": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.2.1.tgz", + "integrity": "sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==", + "dev": true, + "dependencies": { + "bundle-name": "^4.1.0", + "default-browser-id": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/default-browser-id": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-5.0.0.tgz", + "integrity": "sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/define-lazy-prop": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", + "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==" + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==" + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.173", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.173.tgz", + "integrity": "sha512-2bFhXP2zqSfQHugjqJIDFVwa+qIxyNApenmXTp9EjaKtdPrES5Qcn9/aSFy/NaP2E+fWG/zxKu/LBvY36p5VNQ==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-stack-parser-es": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/error-stack-parser-es/-/error-stack-parser-es-0.1.5.tgz", + "integrity": "sha512-xHku1X40RO+fO8yJ8Wh2f2rZWVjqyhb1zgq1yZ8aZRQkv6OOKhKWRUaht3eSCUbAOBaKIgM+ykwFLE+QUxgGeg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", + "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.5.0.tgz", + "integrity": "sha512-8qsOYwkkGrahrgoUv76NZi23koqXOGiiEzXMrT8Q7VcYaUISR+5MorIUxfWqYXN0fN/31WbSrxCxFkVQ43wwrA==", + "dev": true, + "dependencies": { + "prettier-linter-helpers": "^1.0.0", + "synckit": "^0.11.7" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint-plugin-prettier" + }, + "peerDependencies": { + "@types/eslint": ">=8.0.0", + "eslint": ">=8.0.0", + "eslint-config-prettier": ">= 7.0.0 <10.0.0 || >=10.1.0", + "prettier": ">=3.0.0" + }, + "peerDependenciesMeta": { + "@types/eslint": { + "optional": true + }, + "eslint-config-prettier": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-vue": { + "version": "9.33.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.33.0.tgz", + "integrity": "sha512-174lJKuNsuDIlLpjeXc5E2Tss8P44uIimAfGD0b90k0NoirJqpG7stLuU9Vp/9ioTOrQdWVREc4mRd1BD+CvGw==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "globals": "^13.24.0", + "natural-compare": "^1.4.0", + "nth-check": "^2.1.1", + "postcss-selector-parser": "^6.0.15", + "semver": "^7.6.3", + "vue-eslint-parser": "^9.4.3", + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-vue/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-vue/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-plugin-vue/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/execa": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-9.6.0.tgz", + "integrity": "sha512-jpWzZ1ZhwUmeWRhS7Qv3mhpOhLfwI+uAX4e5fOcXqwMR7EcJ0pj2kV1CVzHVMX/LphnKWD3LObjZCoJ71lKpHw==", + "dev": true, + "dependencies": { + "@sindresorhus/merge-streams": "^4.0.0", + "cross-spawn": "^7.0.6", + "figures": "^6.1.0", + "get-stream": "^9.0.0", + "human-signals": "^8.0.1", + "is-plain-obj": "^4.1.0", + "is-stream": "^4.0.1", + "npm-run-path": "^6.0.0", + "pretty-ms": "^9.2.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^4.0.0", + "yoctocolors": "^2.1.1" + }, + "engines": { + "node": "^18.19.0 || >=20.5.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/figures": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-6.1.0.tgz", + "integrity": "sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==", + "dev": true, + "dependencies": { + "is-unicode-supported": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/file-saver": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz", + "integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==" + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flat-cache/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.3.tgz", + "integrity": "sha512-qsITQPfmvMOSAdeyZ+12I1c+CKSstAFAwu+97zrnWAbIr5u8wfsExUzCesVLC8NgHuRUqNN4Zy6UPWUTRGslcA==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fs-extra": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz", + "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-9.0.1.tgz", + "integrity": "sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==", + "dev": true, + "dependencies": { + "@sec-ant/readable-stream": "^0.4.1", + "is-stream": "^4.0.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.3.tgz", + "integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==", + "dev": true, + "dependencies": { + "foreground-child": "^3.3.1", + "jackspeak": "^4.1.1", + "minimatch": "^10.0.3", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz", + "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", + "dev": true, + "dependencies": { + "@isaacs/brace-expansion": "^5.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/hookable": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", + "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==", + "dev": true + }, + "node_modules/human-signals": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-8.0.1.tgz", + "integrity": "sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ==", + "dev": true, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "dev": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "dev": true, + "dependencies": { + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-4.0.1.tgz", + "integrity": "sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-unicode-supported": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz", + "integrity": "sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-what": { + "version": "4.1.16", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.16.tgz", + "integrity": "sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==", + "dev": true, + "engines": { + "node": ">=12.13" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/is-wsl": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz", + "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==", + "dev": true, + "dependencies": { + "is-inside-container": "^1.0.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/jackspeak": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.1.tgz", + "integrity": "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jiti": { + "version": "1.21.7", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", + "integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz", + "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kolorist": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", + "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", + "dev": true + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.castarray": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.castarray/-/lodash.castarray-4.4.0.tgz", + "integrity": "sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==" + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + }, + "node_modules/lru-cache": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz", + "integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/lucide-vue-next": { + "version": "0.445.0", + "resolved": "https://registry.npmjs.org/lucide-vue-next/-/lucide-vue-next-0.445.0.tgz", + "integrity": "sha512-+JWAiyLliw+hprRsxv+Og/Vba3VoCyPLK1GHyd/1nYrVH0bySlPDdobbv2DxhMfGe+3y3yOOk0aSCligFy3Vkg==", + "peerDependencies": { + "vue": ">=3.0.1" + } + }, + "node_modules/magic-string": { + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/marked": { + "version": "14.1.4", + "resolved": "https://registry.npmjs.org/marked/-/marked-14.1.4.tgz", + "integrity": "sha512-vkVZ8ONmUdPnjCKc5uTRvmkRbx4EAi2OkTOXmfTDhZz3OFqMNBM1oTTWwTr4HY4uAEojhzPf+Fy8F1DWa3Sndg==", + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "dev": true, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "dev": true + }, + "node_modules/mrmime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz", + "integrity": "sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/muggle-string": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.4.1.tgz", + "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", + "dev": true + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-normalize-package-bin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz", + "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-run-all2": { + "version": "6.2.6", + "resolved": "https://registry.npmjs.org/npm-run-all2/-/npm-run-all2-6.2.6.tgz", + "integrity": "sha512-tkyb4pc0Zb0oOswCb5tORPk9MvVL6gcDq1cMItQHmsbVk1skk7YF6cH+UU2GxeNLHMuk6wFEOSmEmJ2cnAK1jg==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.2.1", + "cross-spawn": "^7.0.3", + "memorystream": "^0.3.1", + "minimatch": "^9.0.0", + "pidtree": "^0.6.0", + "read-package-json-fast": "^3.0.2", + "shell-quote": "^1.7.3", + "which": "^3.0.1" + }, + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "npm-run-all2": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" + }, + "engines": { + "node": "^14.18.0 || ^16.13.0 || >=18.0.0", + "npm": ">= 8" + } + }, + "node_modules/npm-run-all2/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/npm-run-all2/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/npm-run-all2/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/npm-run-all2/node_modules/which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", + "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/npm-run-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-6.0.0.tgz", + "integrity": "sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0", + "unicorn-magic": "^0.3.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/open": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/open/-/open-10.1.2.tgz", + "integrity": "sha512-cxN6aIDPz6rm8hbebcP7vrQNhvRcveZoJU72Y7vskh4oIm+BZwBECnx5nTmrlres1Qapvx27Qo1Auukpf8PKXw==", + "dev": true, + "dependencies": { + "default-browser": "^5.2.1", + "define-lazy-prop": "^3.0.0", + "is-inside-container": "^1.0.0", + "is-wsl": "^3.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-ms": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-4.0.0.tgz", + "integrity": "sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-scurry": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "dev": true, + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", + "dev": true + }, + "node_modules/perfect-debounce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", + "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==", + "dev": true + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pidtree": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", + "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", + "dev": true, + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinia": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.3.1.tgz", + "integrity": "sha512-khUlZSwt9xXCaTbbxFYBKDc/bWAGWJjOgvxETwkTN7KRm66EeT1ZdZj6i2ceh9sP2Pzqsbc704r2yngBrxBVug==", + "dependencies": { + "@vue/devtools-api": "^6.6.3", + "vue-demi": "^0.14.10" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "typescript": ">=4.4.4", + "vue": "^2.7.0 || ^3.5.11" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "postcss-selector-parser": "^6.1.1" + }, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-nested/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", + "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.6.0.tgz", + "integrity": "sha512-ujSB9uXHJKzM/2GBuE0hBOUgC77CN3Bnpqa+g80bkv3T3A93wL/xlzDATHhnhkzifz/UE2SNOvmbTz5hSkDlHw==", + "dev": true, + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/pretty-ms": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.2.0.tgz", + "integrity": "sha512-4yf0QO/sllf/1zbZWYnvWw3NxCQwLXKzIj0G849LSufP15BXKM0rbD2Z3wVnkMfjdn/CB0Dpp444gYAACdsplg==", + "dev": true, + "dependencies": { + "parse-ms": "^4.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qrcode.vue": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/qrcode.vue/-/qrcode.vue-3.6.0.tgz", + "integrity": "sha512-vQcl2fyHYHMjDO1GguCldJxepq2izQjBkDEEu9NENgfVKP6mv/e2SU62WbqYHGwTgWXLhxZ1NCD1dAZKHQq1fg==", + "peerDependencies": { + "vue": "^3.0.0" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/read-package-json-fast": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz", + "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==", + "dev": true, + "dependencies": { + "json-parse-even-better-errors": "^3.0.0", + "npm-normalize-package-bin": "^3.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "dev": true + }, + "node_modules/rimraf": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.0.1.tgz", + "integrity": "sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==", + "dev": true, + "dependencies": { + "glob": "^11.0.0", + "package-json-from-dist": "^1.0.0" + }, + "bin": { + "rimraf": "dist/esm/bin.mjs" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rollup": { + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.44.0.tgz", + "integrity": "sha512-qHcdEzLCiktQIfwBq420pn2dP+30uzqYxv9ETm91wdt2R9AFcWfjNAmje4NWlnCIQ5RMTzVf0ZyisOKqHR6RwA==", + "dev": true, + "dependencies": { + "@types/estree": "1.0.8" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.44.0", + "@rollup/rollup-android-arm64": "4.44.0", + "@rollup/rollup-darwin-arm64": "4.44.0", + "@rollup/rollup-darwin-x64": "4.44.0", + "@rollup/rollup-freebsd-arm64": "4.44.0", + "@rollup/rollup-freebsd-x64": "4.44.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.44.0", + "@rollup/rollup-linux-arm-musleabihf": "4.44.0", + "@rollup/rollup-linux-arm64-gnu": "4.44.0", + "@rollup/rollup-linux-arm64-musl": "4.44.0", + "@rollup/rollup-linux-loongarch64-gnu": "4.44.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.44.0", + "@rollup/rollup-linux-riscv64-gnu": "4.44.0", + "@rollup/rollup-linux-riscv64-musl": "4.44.0", + "@rollup/rollup-linux-s390x-gnu": "4.44.0", + "@rollup/rollup-linux-x64-gnu": "4.44.0", + "@rollup/rollup-linux-x64-musl": "4.44.0", + "@rollup/rollup-win32-arm64-msvc": "4.44.0", + "@rollup/rollup-win32-ia32-msvc": "4.44.0", + "@rollup/rollup-win32-x64-msvc": "4.44.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-applescript": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz", + "integrity": "sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.3.tgz", + "integrity": "sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sirv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-3.0.1.tgz", + "integrity": "sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==", + "dev": true, + "dependencies": { + "@polka/url": "^1.0.0-next.24", + "mrmime": "^2.0.0", + "totalist": "^3.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/spark-md5": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/spark-md5/-/spark-md5-3.0.2.tgz", + "integrity": "sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==" + }, + "node_modules/speakingurl": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz", + "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-4.0.0.tgz", + "integrity": "sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/sucrase/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/sucrase/node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sucrase/node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/sucrase/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + }, + "node_modules/sucrase/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sucrase/node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/superjson": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.2.tgz", + "integrity": "sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==", + "dev": true, + "dependencies": { + "copy-anything": "^3.0.2" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/synckit": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.8.tgz", + "integrity": "sha512-+XZ+r1XGIJGeQk3VvXhT6xx/VpbHsRzsTkGgF6E5RX9TTXD0118l87puaEBZ566FhqblC6U0d4XnubznJDm30A==", + "dev": true, + "dependencies": { + "@pkgr/core": "^0.2.4" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/synckit" + } + }, + "node_modules/tailwindcss": { + "version": "3.4.17", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.17.tgz", + "integrity": "sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==", + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.6.0", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.2", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.21.6", + "lilconfig": "^3.1.3", + "micromatch": "^4.0.8", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.1.1", + "postcss": "^8.4.47", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.2", + "postcss-nested": "^6.2.0", + "postcss-selector-parser": "^6.1.2", + "resolve": "^1.22.8", + "sucrase": "^3.35.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tailwindcss/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/totalist": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz", + "integrity": "sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ts-api-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz", + "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==", + "dev": true, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.4.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz", + "integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==", + "devOptional": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true + }, + "node_modules/unicorn-magic": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz", + "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/vite": { + "version": "5.4.19", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.19.tgz", + "integrity": "sha512-qO3aKv3HoQC8QKiNSTuUM1l9o/XX3+c+VTgLHbJWHZGeTPVAg2XwazI9UWzoxjIJCGCV2zU60uqMzjeLZuULqA==", + "dev": true, + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-hot-client": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vite-hot-client/-/vite-hot-client-2.0.4.tgz", + "integrity": "sha512-W9LOGAyGMrbGArYJN4LBCdOC5+Zwh7dHvOHC0KmGKkJhsOzaKbpo/jEjpPKVHIW0/jBWj8RZG0NUxfgA8BxgAg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0" + } + }, + "node_modules/vite-plugin-inspect": { + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/vite-plugin-inspect/-/vite-plugin-inspect-0.8.9.tgz", + "integrity": "sha512-22/8qn+LYonzibb1VeFZmISdVao5kC22jmEKm24vfFE8siEn47EpVcCLYMv6iKOYMJfjSvSJfueOwcFCkUnV3A==", + "dev": true, + "dependencies": { + "@antfu/utils": "^0.7.10", + "@rollup/pluginutils": "^5.1.3", + "debug": "^4.3.7", + "error-stack-parser-es": "^0.1.5", + "fs-extra": "^11.2.0", + "open": "^10.1.0", + "perfect-debounce": "^1.0.0", + "picocolors": "^1.1.1", + "sirv": "^3.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "vite": "^3.1.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.1" + }, + "peerDependenciesMeta": { + "@nuxt/kit": { + "optional": true + } + } + }, + "node_modules/vite-plugin-vue-devtools": { + "version": "7.7.7", + "resolved": "https://registry.npmjs.org/vite-plugin-vue-devtools/-/vite-plugin-vue-devtools-7.7.7.tgz", + "integrity": "sha512-d0fIh3wRcgSlr4Vz7bAk4va1MkdqhQgj9ANE/rBhsAjOnRfTLs2ocjFMvSUOsv6SRRXU9G+VM7yMgqDb6yI4iQ==", + "dev": true, + "dependencies": { + "@vue/devtools-core": "^7.7.7", + "@vue/devtools-kit": "^7.7.7", + "@vue/devtools-shared": "^7.7.7", + "execa": "^9.5.2", + "sirv": "^3.0.1", + "vite-plugin-inspect": "0.8.9", + "vite-plugin-vue-inspector": "^5.3.1" + }, + "engines": { + "node": ">=v14.21.3" + }, + "peerDependencies": { + "vite": "^3.1.0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0" + } + }, + "node_modules/vite-plugin-vue-inspector": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/vite-plugin-vue-inspector/-/vite-plugin-vue-inspector-5.3.2.tgz", + "integrity": "sha512-YvEKooQcSiBTAs0DoYLfefNja9bLgkFM7NI2b07bE2SruuvX0MEa9cMaxjKVMkeCp5Nz9FRIdcN1rOdFVBeL6Q==", + "dev": true, + "dependencies": { + "@babel/core": "^7.23.0", + "@babel/plugin-proposal-decorators": "^7.23.0", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-transform-typescript": "^7.22.15", + "@vue/babel-plugin-jsx": "^1.1.5", + "@vue/compiler-dom": "^3.3.4", + "kolorist": "^1.8.0", + "magic-string": "^0.30.4" + }, + "peerDependencies": { + "vite": "^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0 || ^7.0.0-0" + } + }, + "node_modules/vscode-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.1.0.tgz", + "integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==", + "dev": true + }, + "node_modules/vue": { + "version": "3.5.17", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.17.tgz", + "integrity": "sha512-LbHV3xPN9BeljML+Xctq4lbz2lVHCR6DtbpTf5XIO6gugpXUN49j2QQPcMj086r9+AkJ0FfUT8xjulKKBkkr9g==", + "dependencies": { + "@vue/compiler-dom": "3.5.17", + "@vue/compiler-sfc": "3.5.17", + "@vue/runtime-dom": "3.5.17", + "@vue/server-renderer": "3.5.17", + "@vue/shared": "3.5.17" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, + "node_modules/vue-eslint-parser": { + "version": "9.4.3", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.4.3.tgz", + "integrity": "sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4", + "eslint-scope": "^7.1.1", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.1", + "esquery": "^1.4.0", + "lodash": "^4.17.21", + "semver": "^7.3.6" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/semver": { + "version": "7.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.2.tgz", + "integrity": "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/vue-router": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.5.1.tgz", + "integrity": "sha512-ogAF3P97NPm8fJsE4by9dwSYtDwXIY1nFY9T6DyQnGHd1E2Da94w9JIolpe42LJGIl0DwOHBi8TcRPlPGwbTtw==", + "dependencies": { + "@vue/devtools-api": "^6.6.4" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.2.0" + } + }, + "node_modules/vue-tsc": { + "version": "2.2.10", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-2.2.10.tgz", + "integrity": "sha512-jWZ1xSaNbabEV3whpIDMbjVSVawjAyW+x1n3JeGQo7S0uv2n9F/JMgWW90tGWNFRKya4YwKMZgCtr0vRAM7DeQ==", + "dev": true, + "dependencies": { + "@volar/typescript": "~2.4.11", + "@vue/language-core": "2.2.10" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": ">=5.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/xml-name-validator": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yaml": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.0.tgz", + "integrity": "sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==", + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14.6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/yoctocolors": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/yoctocolors/-/yoctocolors-2.1.1.tgz", + "integrity": "sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/web/package.json b/web/package.json new file mode 100644 index 000000000..9f4d4b562 --- /dev/null +++ b/web/package.json @@ -0,0 +1,54 @@ +{ + "name": "filecodeboxfronted", + "version": "0.0.0", + "private": true, + "type": "module", + "scripts": { + "dev": "vite", + "build": "run-p type-check \"build-only {@}\" --", + "preview": "vite preview", + "build-only": "vite build", + "type-check": "vue-tsc --build --force", + "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore", + "format": "prettier --write src/" + }, + "dependencies": { + "@tailwindcss/typography": "^0.5.15", + "axios": "^1.7.7", + "file-saver": "^2.0.5", + "lru-cache": "^11.0.1", + "lucide-vue-next": "^0.445.0", + "marked": "^14.1.2", + "pinia": "^2.2.2", + "qrcode.vue": "^3.4.1", + "spark-md5": "^3.0.2", + "vue": "^3.5.8", + "vue-router": "^4.4.5" + }, + "devDependencies": { + "@eslint/config-array": "^0.18.0", + "@eslint/object-schema": "^2.1.4", + "@rushstack/eslint-patch": "^1.10.4", + "@tsconfig/node20": "^20.1.4", + "@types/node": "^20.16.7", + "@types/spark-md5": "^3.0.4", + "@vitejs/plugin-vue": "^5.1.4", + "@vitejs/plugin-vue-jsx": "^4.0.1", + "@vue/eslint-config-prettier": "^9.0.0", + "@vue/eslint-config-typescript": "^13.0.0", + "@vue/tsconfig": "^0.5.1", + "autoprefixer": "^10.4.20", + "eslint": "^8.57.1", + "eslint-plugin-vue": "^9.28.0", + "glob": "^11.0.0", + "npm-run-all2": "^6.2.3", + "postcss": "^8.4.47", + "prettier": "^3.3.3", + "rimraf": "^6.0.1", + "tailwindcss": "^3.4.13", + "typescript": "~5.4.5", + "vite": "^5.4.7", + "vite-plugin-vue-devtools": "^7.4.6", + "vue-tsc": "^2.1.6" + } +} diff --git a/web/pnpm-lock.yaml b/web/pnpm-lock.yaml new file mode 100644 index 000000000..228e9c5f6 --- /dev/null +++ b/web/pnpm-lock.yaml @@ -0,0 +1,4071 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@tailwindcss/typography': + specifier: ^0.5.15 + version: 0.5.16(tailwindcss@3.4.17) + axios: + specifier: ^1.7.7 + version: 1.8.4 + file-saver: + specifier: ^2.0.5 + version: 2.0.5 + lru-cache: + specifier: ^11.0.1 + version: 11.1.0 + lucide-vue-next: + specifier: ^0.445.0 + version: 0.445.0(vue@3.5.13(typescript@5.4.5)) + marked: + specifier: ^14.1.2 + version: 14.1.4 + pinia: + specifier: ^2.2.2 + version: 2.3.1(typescript@5.4.5)(vue@3.5.13(typescript@5.4.5)) + qrcode.vue: + specifier: ^3.4.1 + version: 3.6.0(vue@3.5.13(typescript@5.4.5)) + spark-md5: + specifier: ^3.0.2 + version: 3.0.2 + vue: + specifier: ^3.5.8 + version: 3.5.13(typescript@5.4.5) + vue-router: + specifier: ^4.4.5 + version: 4.5.0(vue@3.5.13(typescript@5.4.5)) + devDependencies: + '@eslint/config-array': + specifier: ^0.18.0 + version: 0.18.0 + '@eslint/object-schema': + specifier: ^2.1.4 + version: 2.1.6 + '@rushstack/eslint-patch': + specifier: ^1.10.4 + version: 1.11.0 + '@tsconfig/node20': + specifier: ^20.1.4 + version: 20.1.5 + '@types/node': + specifier: ^20.16.7 + version: 20.17.30 + '@types/spark-md5': + specifier: ^3.0.4 + version: 3.0.5 + '@vitejs/plugin-vue': + specifier: ^5.1.4 + version: 5.2.3(vite@5.4.18(@types/node@20.17.30))(vue@3.5.13(typescript@5.4.5)) + '@vitejs/plugin-vue-jsx': + specifier: ^4.0.1 + version: 4.1.2(vite@5.4.18(@types/node@20.17.30))(vue@3.5.13(typescript@5.4.5)) + '@vue/eslint-config-prettier': + specifier: ^9.0.0 + version: 9.0.0(eslint@8.57.1)(prettier@3.5.3) + '@vue/eslint-config-typescript': + specifier: ^13.0.0 + version: 13.0.0(eslint-plugin-vue@9.33.0(eslint@8.57.1))(eslint@8.57.1)(typescript@5.4.5) + '@vue/tsconfig': + specifier: ^0.5.1 + version: 0.5.1 + autoprefixer: + specifier: ^10.4.20 + version: 10.4.21(postcss@8.5.3) + eslint: + specifier: ^8.57.1 + version: 8.57.1 + eslint-plugin-vue: + specifier: ^9.28.0 + version: 9.33.0(eslint@8.57.1) + glob: + specifier: ^11.0.0 + version: 11.0.1 + npm-run-all2: + specifier: ^6.2.3 + version: 6.2.6 + postcss: + specifier: ^8.4.47 + version: 8.5.3 + prettier: + specifier: ^3.3.3 + version: 3.5.3 + rimraf: + specifier: ^6.0.1 + version: 6.0.1 + tailwindcss: + specifier: ^3.4.13 + version: 3.4.17 + typescript: + specifier: ~5.4.5 + version: 5.4.5 + vite: + specifier: ^5.4.7 + version: 5.4.18(@types/node@20.17.30) + vite-plugin-vue-devtools: + specifier: ^7.4.6 + version: 7.7.5(rollup@4.40.0)(vite@5.4.18(@types/node@20.17.30))(vue@3.5.13(typescript@5.4.5)) + vue-tsc: + specifier: ^2.1.6 + version: 2.2.10(typescript@5.4.5) + +packages: + + '@alloc/quick-lru@5.2.0': + resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} + engines: {node: '>=10'} + + '@ampproject/remapping@2.3.0': + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + + '@antfu/utils@0.7.10': + resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} + + '@babel/code-frame@7.26.2': + resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.26.8': + resolution: {integrity: sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.26.10': + resolution: {integrity: sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.27.0': + resolution: {integrity: sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-annotate-as-pure@7.25.9': + resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==} + engines: {node: '>=6.9.0'} + + '@babel/helper-compilation-targets@7.27.0': + resolution: {integrity: sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-create-class-features-plugin@7.27.0': + resolution: {integrity: sha512-vSGCvMecvFCd/BdpGlhpXYNhhC4ccxyvQWpbGL4CWbvfEoLFWUZuSuf7s9Aw70flgQF+6vptvgK2IfOnKlRmBg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-member-expression-to-functions@7.25.9': + resolution: {integrity: sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.25.9': + resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.26.0': + resolution: {integrity: sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-optimise-call-expression@7.25.9': + resolution: {integrity: sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-plugin-utils@7.26.5': + resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-replace-supers@7.26.5': + resolution: {integrity: sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-skip-transparent-expression-wrappers@7.25.9': + resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.25.9': + resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.25.9': + resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.25.9': + resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==} + engines: {node: '>=6.9.0'} + + '@babel/helpers@7.27.0': + resolution: {integrity: sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.27.0': + resolution: {integrity: sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/plugin-proposal-decorators@7.25.9': + resolution: {integrity: sha512-smkNLL/O1ezy9Nhy4CNosc4Va+1wo5w4gzSZeLe6y6dM4mmHfYOCPolXQPHQxonZCF+ZyebxN9vqOolkYrSn5g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-decorators@7.25.9': + resolution: {integrity: sha512-ryzI0McXUPJnRCvMo4lumIKZUzhYUO/ScI+Mz4YVaTLt04DHNSjEUjKVvbzQjZFLuod/cYEc07mJWhzl6v4DPg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-import-attributes@7.26.0': + resolution: {integrity: sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-import-meta@7.10.4': + resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-jsx@7.25.9': + resolution: {integrity: sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-typescript@7.25.9': + resolution: {integrity: sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-typescript@7.27.0': + resolution: {integrity: sha512-fRGGjO2UEGPjvEcyAZXRXAS8AfdaQoq7HnxAbJoAoW10B9xOKesmmndJv+Sym2a+9FHWZ9KbyyLCe9s0Sn5jtg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/template@7.27.0': + resolution: {integrity: sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.27.0': + resolution: {integrity: sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.27.0': + resolution: {integrity: sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==} + engines: {node: '>=6.9.0'} + + '@esbuild/aix-ppc64@0.21.5': + resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.21.5': + resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.21.5': + resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.21.5': + resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.21.5': + resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.21.5': + resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.21.5': + resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.21.5': + resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.21.5': + resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.21.5': + resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.21.5': + resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.21.5': + resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.21.5': + resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.21.5': + resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.21.5': + resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.21.5': + resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.21.5': + resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-x64@0.21.5': + resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-x64@0.21.5': + resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + + '@esbuild/sunos-x64@0.21.5': + resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.21.5': + resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.21.5': + resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.21.5': + resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + + '@eslint-community/eslint-utils@4.6.1': + resolution: {integrity: sha512-KTsJMmobmbrFLe3LDh0PC2FXpcSYJt/MLjlkh/9LEnmKYLSYmT/0EW9JWANjeoemiuZrmogti0tW5Ch+qNUYDw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/regexpp@4.12.1': + resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/config-array@0.18.0': + resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/eslintrc@2.1.4': + resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + '@eslint/js@8.57.1': + resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + '@eslint/object-schema@2.1.6': + resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@humanwhocodes/config-array@0.13.0': + resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} + engines: {node: '>=10.10.0'} + deprecated: Use @eslint/config-array instead + + '@humanwhocodes/module-importer@1.0.1': + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + + '@humanwhocodes/object-schema@2.0.3': + resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} + deprecated: Use @eslint/object-schema instead + + '@isaacs/cliui@8.0.2': + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + + '@jridgewell/gen-mapping@0.3.8': + resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/set-array@1.2.1': + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.0': + resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + + '@jridgewell/trace-mapping@0.3.25': + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@pkgjs/parseargs@0.11.0': + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + + '@pkgr/core@0.2.4': + resolution: {integrity: sha512-ROFF39F6ZrnzSUEmQQZUar0Jt4xVoP9WnDRdWwF4NNcXs3xBTLgBUDoOwW141y1jP+S8nahIbdxbFC7IShw9Iw==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + + '@polka/url@1.0.0-next.29': + resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} + + '@rollup/pluginutils@5.1.4': + resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + + '@rollup/rollup-android-arm-eabi@4.40.0': + resolution: {integrity: sha512-+Fbls/diZ0RDerhE8kyC6hjADCXA1K4yVNlH0EYfd2XjyH0UGgzaQ8MlT0pCXAThfxv3QUAczHaL+qSv1E4/Cg==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.40.0': + resolution: {integrity: sha512-PPA6aEEsTPRz+/4xxAmaoWDqh67N7wFbgFUJGMnanCFs0TV99M0M8QhhaSCks+n6EbQoFvLQgYOGXxlMGQe/6w==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-darwin-arm64@4.40.0': + resolution: {integrity: sha512-GwYOcOakYHdfnjjKwqpTGgn5a6cUX7+Ra2HeNj/GdXvO2VJOOXCiYYlRFU4CubFM67EhbmzLOmACKEfvp3J1kQ==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.40.0': + resolution: {integrity: sha512-CoLEGJ+2eheqD9KBSxmma6ld01czS52Iw0e2qMZNpPDlf7Z9mj8xmMemxEucinev4LgHalDPczMyxzbq+Q+EtA==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-freebsd-arm64@4.40.0': + resolution: {integrity: sha512-r7yGiS4HN/kibvESzmrOB/PxKMhPTlz+FcGvoUIKYoTyGd5toHp48g1uZy1o1xQvybwwpqpe010JrcGG2s5nkg==} + cpu: [arm64] + os: [freebsd] + + '@rollup/rollup-freebsd-x64@4.40.0': + resolution: {integrity: sha512-mVDxzlf0oLzV3oZOr0SMJ0lSDd3xC4CmnWJ8Val8isp9jRGl5Dq//LLDSPFrasS7pSm6m5xAcKaw3sHXhBjoRw==} + cpu: [x64] + os: [freebsd] + + '@rollup/rollup-linux-arm-gnueabihf@4.40.0': + resolution: {integrity: sha512-y/qUMOpJxBMy8xCXD++jeu8t7kzjlOCkoxxajL58G62PJGBZVl/Gwpm7JK9+YvlB701rcQTzjUZ1JgUoPTnoQA==} + cpu: [arm] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-arm-musleabihf@4.40.0': + resolution: {integrity: sha512-GoCsPibtVdJFPv/BOIvBKO/XmwZLwaNWdyD8TKlXuqp0veo2sHE+A/vpMQ5iSArRUz/uaoj4h5S6Pn0+PdhRjg==} + cpu: [arm] + os: [linux] + libc: [musl] + + '@rollup/rollup-linux-arm64-gnu@4.40.0': + resolution: {integrity: sha512-L5ZLphTjjAD9leJzSLI7rr8fNqJMlGDKlazW2tX4IUF9P7R5TMQPElpH82Q7eNIDQnQlAyiNVfRPfP2vM5Avvg==} + cpu: [arm64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-arm64-musl@4.40.0': + resolution: {integrity: sha512-ATZvCRGCDtv1Y4gpDIXsS+wfFeFuLwVxyUBSLawjgXK2tRE6fnsQEkE4csQQYWlBlsFztRzCnBvWVfcae/1qxQ==} + cpu: [arm64] + os: [linux] + libc: [musl] + + '@rollup/rollup-linux-loongarch64-gnu@4.40.0': + resolution: {integrity: sha512-wG9e2XtIhd++QugU5MD9i7OnpaVb08ji3P1y/hNbxrQ3sYEelKJOq1UJ5dXczeo6Hj2rfDEL5GdtkMSVLa/AOg==} + cpu: [loong64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-powerpc64le-gnu@4.40.0': + resolution: {integrity: sha512-vgXfWmj0f3jAUvC7TZSU/m/cOE558ILWDzS7jBhiCAFpY2WEBn5jqgbqvmzlMjtp8KlLcBlXVD2mkTSEQE6Ixw==} + cpu: [ppc64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-riscv64-gnu@4.40.0': + resolution: {integrity: sha512-uJkYTugqtPZBS3Z136arevt/FsKTF/J9dEMTX/cwR7lsAW4bShzI2R0pJVw+hcBTWF4dxVckYh72Hk3/hWNKvA==} + cpu: [riscv64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-riscv64-musl@4.40.0': + resolution: {integrity: sha512-rKmSj6EXQRnhSkE22+WvrqOqRtk733x3p5sWpZilhmjnkHkpeCgWsFFo0dGnUGeA+OZjRl3+VYq+HyCOEuwcxQ==} + cpu: [riscv64] + os: [linux] + libc: [musl] + + '@rollup/rollup-linux-s390x-gnu@4.40.0': + resolution: {integrity: sha512-SpnYlAfKPOoVsQqmTFJ0usx0z84bzGOS9anAC0AZ3rdSo3snecihbhFTlJZ8XMwzqAcodjFU4+/SM311dqE5Sw==} + cpu: [s390x] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-x64-gnu@4.40.0': + resolution: {integrity: sha512-RcDGMtqF9EFN8i2RYN2W+64CdHruJ5rPqrlYw+cgM3uOVPSsnAQps7cpjXe9be/yDp8UC7VLoCoKC8J3Kn2FkQ==} + cpu: [x64] + os: [linux] + libc: [glibc] + + '@rollup/rollup-linux-x64-musl@4.40.0': + resolution: {integrity: sha512-HZvjpiUmSNx5zFgwtQAV1GaGazT2RWvqeDi0hV+AtC8unqqDSsaFjPxfsO6qPtKRRg25SisACWnJ37Yio8ttaw==} + cpu: [x64] + os: [linux] + libc: [musl] + + '@rollup/rollup-win32-arm64-msvc@4.40.0': + resolution: {integrity: sha512-UtZQQI5k/b8d7d3i9AZmA/t+Q4tk3hOC0tMOMSq2GlMYOfxbesxG4mJSeDp0EHs30N9bsfwUvs3zF4v/RzOeTQ==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.40.0': + resolution: {integrity: sha512-+m03kvI2f5syIqHXCZLPVYplP8pQch9JHyXKZ3AGMKlg8dCyr2PKHjwRLiW53LTrN/Nc3EqHOKxUxzoSPdKddA==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.40.0': + resolution: {integrity: sha512-lpPE1cLfP5oPzVjKMx10pgBmKELQnFJXHgvtHCtuJWOv8MxqdEIMNtgHgBFf7Ea2/7EuVwa9fodWUfXAlXZLZQ==} + cpu: [x64] + os: [win32] + + '@rushstack/eslint-patch@1.11.0': + resolution: {integrity: sha512-zxnHvoMQVqewTJr/W4pKjF0bMGiKJv1WX7bSrkl46Hg0QjESbzBROWK0Wg4RphzSOS5Jiy7eFimmM3UgMrMZbQ==} + + '@sec-ant/readable-stream@0.4.1': + resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==} + + '@sindresorhus/merge-streams@4.0.0': + resolution: {integrity: sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==} + engines: {node: '>=18'} + + '@tailwindcss/typography@0.5.16': + resolution: {integrity: sha512-0wDLwCVF5V3x3b1SGXPCDcdsbDHMBe+lkFzBRaHeLvNi+nrrnZ1lA18u+OTWO8iSWU2GxUOCvlXtDuqftc1oiA==} + peerDependencies: + tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1' + + '@tsconfig/node20@20.1.5': + resolution: {integrity: sha512-Vm8e3WxDTqMGPU4GATF9keQAIy1Drd7bPwlgzKJnZtoOsTm1tduUTbDjg0W5qERvGuxPI2h9RbMufH0YdfBylA==} + + '@types/estree@1.0.7': + resolution: {integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==} + + '@types/node@20.17.30': + resolution: {integrity: sha512-7zf4YyHA+jvBNfVrk2Gtvs6x7E8V+YDW05bNfG2XkWDJfYRXrTiP/DsB2zSYTaHX0bGIujTBQdMVAhb+j7mwpg==} + + '@types/spark-md5@3.0.5': + resolution: {integrity: sha512-lWf05dnD42DLVKQJZrDHtWFidcLrHuip01CtnC2/S6AMhX4t9ZlEUj4iuRlAnts0PQk7KESOqKxeGE/b6sIPGg==} + + '@typescript-eslint/eslint-plugin@7.18.0': + resolution: {integrity: sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + '@typescript-eslint/parser': ^7.0.0 + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/parser@7.18.0': + resolution: {integrity: sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/scope-manager@7.18.0': + resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} + engines: {node: ^18.18.0 || >=20.0.0} + + '@typescript-eslint/type-utils@7.18.0': + resolution: {integrity: sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/types@7.18.0': + resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} + engines: {node: ^18.18.0 || >=20.0.0} + + '@typescript-eslint/typescript-estree@7.18.0': + resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/utils@7.18.0': + resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + + '@typescript-eslint/visitor-keys@7.18.0': + resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} + engines: {node: ^18.18.0 || >=20.0.0} + + '@ungap/structured-clone@1.3.0': + resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} + + '@vitejs/plugin-vue-jsx@4.1.2': + resolution: {integrity: sha512-4Rk0GdE0QCdsIkuMmWeg11gmM4x8UmTnZR/LWPm7QJ7+BsK4tq08udrN0isrrWqz5heFy9HLV/7bOLgFS8hUjA==} + engines: {node: ^18.0.0 || >=20.0.0} + peerDependencies: + vite: ^5.0.0 || ^6.0.0 + vue: ^3.0.0 + + '@vitejs/plugin-vue@5.2.3': + resolution: {integrity: sha512-IYSLEQj4LgZZuoVpdSUCw3dIynTWQgPlaRP6iAvMle4My0HdYwr5g5wQAfwOeHQBmYwEkqF70nRpSilr6PoUDg==} + engines: {node: ^18.0.0 || >=20.0.0} + peerDependencies: + vite: ^5.0.0 || ^6.0.0 + vue: ^3.2.25 + + '@volar/language-core@2.4.12': + resolution: {integrity: sha512-RLrFdXEaQBWfSnYGVxvR2WrO6Bub0unkdHYIdC31HzIEqATIuuhRRzYu76iGPZ6OtA4Au1SnW0ZwIqPP217YhA==} + + '@volar/source-map@2.4.12': + resolution: {integrity: sha512-bUFIKvn2U0AWojOaqf63ER0N/iHIBYZPpNGogfLPQ68F5Eet6FnLlyho7BS0y2HJ1jFhSif7AcuTx1TqsCzRzw==} + + '@volar/typescript@2.4.12': + resolution: {integrity: sha512-HJB73OTJDgPc80K30wxi3if4fSsZZAOScbj2fcicMuOPoOkcf9NNAINb33o+DzhBdF9xTKC1gnPmIRDous5S0g==} + + '@vue/babel-helper-vue-transform-on@1.4.0': + resolution: {integrity: sha512-mCokbouEQ/ocRce/FpKCRItGo+013tHg7tixg3DUNS+6bmIchPt66012kBMm476vyEIJPafrvOf4E5OYj3shSw==} + + '@vue/babel-plugin-jsx@1.4.0': + resolution: {integrity: sha512-9zAHmwgMWlaN6qRKdrg1uKsBKHvnUU+Py+MOCTuYZBoZsopa90Di10QRjB+YPnVss0BZbG/H5XFwJY1fTxJWhA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + peerDependenciesMeta: + '@babel/core': + optional: true + + '@vue/babel-plugin-resolve-type@1.4.0': + resolution: {integrity: sha512-4xqDRRbQQEWHQyjlYSgZsWj44KfiF6D+ktCuXyZ8EnVDYV3pztmXJDf1HveAjUAXxAnR8daCQT51RneWWxtTyQ==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@vue/compiler-core@3.5.13': + resolution: {integrity: sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==} + + '@vue/compiler-dom@3.5.13': + resolution: {integrity: sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==} + + '@vue/compiler-sfc@3.5.13': + resolution: {integrity: sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==} + + '@vue/compiler-ssr@3.5.13': + resolution: {integrity: sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==} + + '@vue/compiler-vue2@2.7.16': + resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} + + '@vue/devtools-api@6.6.4': + resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==} + + '@vue/devtools-core@7.7.5': + resolution: {integrity: sha512-ElKr0NDor57gVaT+gMQ8kcVP4uFGqHcxuuQndW/rPwh6aHWvEcUL3sxL8cEk+e1Rdt28kS88erpsiIMO6hEENQ==} + peerDependencies: + vue: ^3.0.0 + + '@vue/devtools-kit@7.7.5': + resolution: {integrity: sha512-S9VAVJYVAe4RPx2JZb9ZTEi0lqTySz2CBeF0wHT5D3dkTLnT9yMMGegKNl4b2EIELwLSkcI9bl2qp0/jW+upqA==} + + '@vue/devtools-shared@7.7.5': + resolution: {integrity: sha512-QBjG72RfpM0DKtpns2RZOxBltO226kOAls9e4Lri6YxS2gWTgL0H+wj1R2K76lxxIeOrqo4+2Ty6RQnzv+WSTQ==} + + '@vue/eslint-config-prettier@9.0.0': + resolution: {integrity: sha512-z1ZIAAUS9pKzo/ANEfd2sO+v2IUalz7cM/cTLOZ7vRFOPk5/xuRKQteOu1DErFLAh/lYGXMVZ0IfYKlyInuDVg==} + peerDependencies: + eslint: '>= 8.0.0' + prettier: '>= 3.0.0' + + '@vue/eslint-config-typescript@13.0.0': + resolution: {integrity: sha512-MHh9SncG/sfqjVqjcuFLOLD6Ed4dRAis4HNt0dXASeAuLqIAx4YMB1/m2o4pUKK1vCt8fUvYG8KKX2Ot3BVZTg==} + engines: {node: ^18.18.0 || >=20.0.0} + peerDependencies: + eslint: ^8.56.0 + eslint-plugin-vue: ^9.0.0 + typescript: '>=4.7.4' + peerDependenciesMeta: + typescript: + optional: true + + '@vue/language-core@2.2.10': + resolution: {integrity: sha512-+yNoYx6XIKuAO8Mqh1vGytu8jkFEOH5C8iOv3i8Z/65A7x9iAOXA97Q+PqZ3nlm2lxf5rOJuIGI/wDtx/riNYw==} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@vue/reactivity@3.5.13': + resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==} + + '@vue/runtime-core@3.5.13': + resolution: {integrity: sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==} + + '@vue/runtime-dom@3.5.13': + resolution: {integrity: sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==} + + '@vue/server-renderer@3.5.13': + resolution: {integrity: sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==} + peerDependencies: + vue: 3.5.13 + + '@vue/shared@3.5.13': + resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==} + + '@vue/tsconfig@0.5.1': + resolution: {integrity: sha512-VcZK7MvpjuTPx2w6blwnwZAu5/LgBUtejFOi3pPGQFXQN5Ela03FUtd2Qtg4yWGGissVL0dr6Ro1LfOFh+PCuQ==} + + acorn-jsx@5.3.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn@8.14.1: + resolution: {integrity: sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==} + engines: {node: '>=0.4.0'} + hasBin: true + + ajv@6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + + alien-signals@1.0.13: + resolution: {integrity: sha512-OGj9yyTnJEttvzhTUWuscOvtqxq5vrhF7vL9oS0xJ2mK0ItPYP1/y+vCFebfxoEyAz0++1AIwJ5CMr+Fk3nDmg==} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-regex@6.1.0: + resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} + engines: {node: '>=12'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} + + any-promise@1.3.0: + resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + arg@5.0.2: + resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + + autoprefixer@10.4.21: + resolution: {integrity: sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==} + engines: {node: ^10 || ^12 || >=14} + hasBin: true + peerDependencies: + postcss: ^8.1.0 + + axios@1.8.4: + resolution: {integrity: sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} + + birpc@2.3.0: + resolution: {integrity: sha512-ijbtkn/F3Pvzb6jHypHRyve2QApOCZDR25D/VnkY2G/lBNcXCTsnsCxgY4k4PkVB7zfwzYbY3O9Lcqe3xufS5g==} + + boolbase@1.0.0: + resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} + + brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + + brace-expansion@2.0.2: + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + browserslist@4.24.4: + resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + bundle-name@4.1.0: + resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==} + engines: {node: '>=18'} + + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + camelcase-css@2.0.1: + resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} + engines: {node: '>= 6'} + + caniuse-lite@1.0.30001715: + resolution: {integrity: sha512-7ptkFGMm2OAOgvZpwgA4yjQ5SQbrNVGdRjzH0pBdy1Fasvcr+KAeECmbCAECzTuDuoX0FCY8KzUxjf9+9kfZEw==} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + + commander@4.1.1: + resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} + engines: {node: '>= 6'} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + copy-anything@3.0.5: + resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==} + engines: {node: '>=12.13'} + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + + csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + + de-indent@1.0.2: + resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} + + debug@4.4.0: + resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + default-browser-id@5.0.0: + resolution: {integrity: sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==} + engines: {node: '>=18'} + + default-browser@5.2.1: + resolution: {integrity: sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==} + engines: {node: '>=18'} + + define-lazy-prop@3.0.0: + resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==} + engines: {node: '>=12'} + + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + didyoumean@1.2.2: + resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + + dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + + dlv@1.1.3: + resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} + + doctrine@3.0.0: + resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} + engines: {node: '>=6.0.0'} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + + electron-to-chromium@1.5.140: + resolution: {integrity: sha512-o82Rj+ONp4Ip7Cl1r7lrqx/pXhbp/lh9DpKcMNscFJdh8ebyRofnc7Sh01B4jx403RI0oqTBvlZ7OBIZLMr2+Q==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + + error-stack-parser-es@0.1.5: + resolution: {integrity: sha512-xHku1X40RO+fO8yJ8Wh2f2rZWVjqyhb1zgq1yZ8aZRQkv6OOKhKWRUaht3eSCUbAOBaKIgM+ykwFLE+QUxgGeg==} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + + esbuild@0.21.5: + resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} + engines: {node: '>=12'} + hasBin: true + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + eslint-config-prettier@9.1.0: + resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + + eslint-plugin-prettier@5.2.6: + resolution: {integrity: sha512-mUcf7QG2Tjk7H055Jk0lGBjbgDnfrvqjhXh9t2xLMSCjZVcw9Rb1V6sVNXO0th3jgeO7zllWPTNRil3JW94TnQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + '@types/eslint': '>=8.0.0' + eslint: '>=8.0.0' + eslint-config-prettier: '>= 7.0.0 <10.0.0 || >=10.1.0' + prettier: '>=3.0.0' + peerDependenciesMeta: + '@types/eslint': + optional: true + eslint-config-prettier: + optional: true + + eslint-plugin-vue@9.33.0: + resolution: {integrity: sha512-174lJKuNsuDIlLpjeXc5E2Tss8P44uIimAfGD0b90k0NoirJqpG7stLuU9Vp/9ioTOrQdWVREc4mRd1BD+CvGw==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 + + eslint-scope@7.2.2: + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint@8.57.1: + resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. + hasBin: true + + espree@9.6.1: + resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} + engines: {node: '>=0.10'} + + esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + + estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + + estree-walker@2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + execa@9.5.2: + resolution: {integrity: sha512-EHlpxMCpHWSAh1dgS6bVeoLAXGnJNdR93aabr4QCGbzOM73o5XmRfM/e5FUqsw3aagP8S8XEWUWFAxnRBnAF0Q==} + engines: {node: ^18.19.0 || >=20.5.0} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-diff@1.3.0: + resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} + + fast-glob@3.3.3: + resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} + engines: {node: '>=8.6.0'} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fastq@1.19.1: + resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} + + figures@6.1.0: + resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==} + engines: {node: '>=18'} + + file-entry-cache@6.0.1: + resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} + engines: {node: ^10.12.0 || >=12.0.0} + + file-saver@2.0.5: + resolution: {integrity: sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat-cache@3.2.0: + resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} + engines: {node: ^10.12.0 || >=12.0.0} + + flatted@3.3.3: + resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} + + follow-redirects@1.15.9: + resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} + engines: {node: '>=4.0'} + peerDependencies: + debug: '*' + peerDependenciesMeta: + debug: + optional: true + + foreground-child@3.3.1: + resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} + engines: {node: '>=14'} + + form-data@4.0.2: + resolution: {integrity: sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==} + engines: {node: '>= 6'} + + fraction.js@4.3.7: + resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} + + fs-extra@11.3.0: + resolution: {integrity: sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==} + engines: {node: '>=14.14'} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + get-stream@9.0.1: + resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==} + engines: {node: '>=18'} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + + glob@10.4.5: + resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} + hasBin: true + + glob@11.0.1: + resolution: {integrity: sha512-zrQDm8XPnYEKawJScsnM0QzobJxlT/kHOOlRTio8IH/GrmxRE5fjllkzdaHclIuNjUQTJYH2xHNIGfdpJkDJUw==} + engines: {node: 20 || >=22} + hasBin: true + + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported + + globals@11.12.0: + resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} + engines: {node: '>=4'} + + globals@13.24.0: + resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} + engines: {node: '>=8'} + + globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} + + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + he@1.2.0: + resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} + hasBin: true + + hookable@5.5.3: + resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} + + human-signals@8.0.1: + resolution: {integrity: sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ==} + engines: {node: '>=18.18.0'} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + + is-docker@3.0.0: + resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + hasBin: true + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-inside-container@1.0.0: + resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} + engines: {node: '>=14.16'} + hasBin: true + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-path-inside@3.0.3: + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} + + is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + + is-stream@4.0.1: + resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==} + engines: {node: '>=18'} + + is-unicode-supported@2.1.0: + resolution: {integrity: sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==} + engines: {node: '>=18'} + + is-what@4.1.16: + resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==} + engines: {node: '>=12.13'} + + is-wsl@3.1.0: + resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} + engines: {node: '>=16'} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} + + jackspeak@4.1.0: + resolution: {integrity: sha512-9DDdhb5j6cpeitCbvLO7n7J4IxnbM6hoF6O1g4HQ5TfhvvKN8ywDM7668ZhMHRqVmxqhps/F6syWK2KcPxYlkw==} + engines: {node: 20 || >=22} + + jiti@1.21.7: + resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==} + hasBin: true + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-parse-even-better-errors@3.0.2: + resolution: {integrity: sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + + json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + + jsonfile@6.1.0: + resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + kolorist@1.8.0: + resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} + + levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + + lilconfig@3.1.3: + resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} + engines: {node: '>=14'} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash.castarray@4.4.0: + resolution: {integrity: sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==} + + lodash.isplainobject@4.0.6: + resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + + lru-cache@10.4.3: + resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + + lru-cache@11.1.0: + resolution: {integrity: sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==} + engines: {node: 20 || >=22} + + lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + + lucide-vue-next@0.445.0: + resolution: {integrity: sha512-+JWAiyLliw+hprRsxv+Og/Vba3VoCyPLK1GHyd/1nYrVH0bySlPDdobbv2DxhMfGe+3y3yOOk0aSCligFy3Vkg==} + peerDependencies: + vue: '>=3.0.1' + + magic-string@0.30.17: + resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} + + marked@14.1.4: + resolution: {integrity: sha512-vkVZ8ONmUdPnjCKc5uTRvmkRbx4EAi2OkTOXmfTDhZz3OFqMNBM1oTTWwTr4HY4uAEojhzPf+Fy8F1DWa3Sndg==} + engines: {node: '>= 18'} + hasBin: true + + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + memorystream@0.3.1: + resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} + engines: {node: '>= 0.10.0'} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + + minimatch@10.0.1: + resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==} + engines: {node: 20 || >=22} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} + + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + + mitt@3.0.1: + resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} + + mrmime@2.0.1: + resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==} + engines: {node: '>=10'} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + muggle-string@0.4.1: + resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} + + mz@2.7.0: + resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + nanoid@5.1.5: + resolution: {integrity: sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw==} + engines: {node: ^18 || >=20} + hasBin: true + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + node-releases@2.0.19: + resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + normalize-range@0.1.2: + resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} + engines: {node: '>=0.10.0'} + + npm-normalize-package-bin@3.0.1: + resolution: {integrity: sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + npm-run-all2@6.2.6: + resolution: {integrity: sha512-tkyb4pc0Zb0oOswCb5tORPk9MvVL6gcDq1cMItQHmsbVk1skk7YF6cH+UU2GxeNLHMuk6wFEOSmEmJ2cnAK1jg==} + engines: {node: ^14.18.0 || ^16.13.0 || >=18.0.0, npm: '>= 8'} + hasBin: true + + npm-run-path@6.0.0: + resolution: {integrity: sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==} + engines: {node: '>=18'} + + nth-check@2.1.1: + resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + object-hash@3.0.0: + resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} + engines: {node: '>= 6'} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + open@10.1.1: + resolution: {integrity: sha512-zy1wx4+P3PfhXSEPJNtZmJXfhkkIaxU1VauWIrDZw1O7uJRDRJtKr9n3Ic4NgbA16KyOxOXO2ng9gYwCdXuSXA==} + engines: {node: '>=18'} + + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + parse-ms@4.0.0: + resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==} + engines: {node: '>=18'} + + path-browserify@1.0.1: + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-key@4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} + + path-scurry@2.0.0: + resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==} + engines: {node: 20 || >=22} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + pathe@2.0.3: + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} + + perfect-debounce@1.0.0: + resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.2: + resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} + engines: {node: '>=12'} + + pidtree@0.6.0: + resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} + engines: {node: '>=0.10'} + hasBin: true + + pify@2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} + + pinia@2.3.1: + resolution: {integrity: sha512-khUlZSwt9xXCaTbbxFYBKDc/bWAGWJjOgvxETwkTN7KRm66EeT1ZdZj6i2ceh9sP2Pzqsbc704r2yngBrxBVug==} + peerDependencies: + typescript: '>=4.4.4' + vue: ^2.7.0 || ^3.5.11 + peerDependenciesMeta: + typescript: + optional: true + + pirates@4.0.7: + resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==} + engines: {node: '>= 6'} + + postcss-import@15.1.0: + resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} + engines: {node: '>=14.0.0'} + peerDependencies: + postcss: ^8.0.0 + + postcss-js@4.0.1: + resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} + engines: {node: ^12 || ^14 || >= 16} + peerDependencies: + postcss: ^8.4.21 + + postcss-load-config@4.0.2: + resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} + engines: {node: '>= 14'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + + postcss-nested@6.2.0: + resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.2.14 + + postcss-selector-parser@6.0.10: + resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} + engines: {node: '>=4'} + + postcss-selector-parser@6.1.2: + resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} + engines: {node: '>=4'} + + postcss-value-parser@4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + + postcss@8.5.3: + resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==} + engines: {node: ^10 || ^12 || >=14} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + prettier-linter-helpers@1.0.0: + resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} + engines: {node: '>=6.0.0'} + + prettier@3.5.3: + resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==} + engines: {node: '>=14'} + hasBin: true + + pretty-ms@9.2.0: + resolution: {integrity: sha512-4yf0QO/sllf/1zbZWYnvWw3NxCQwLXKzIj0G849LSufP15BXKM0rbD2Z3wVnkMfjdn/CB0Dpp444gYAACdsplg==} + engines: {node: '>=18'} + + proxy-from-env@1.1.0: + resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + qrcode.vue@3.6.0: + resolution: {integrity: sha512-vQcl2fyHYHMjDO1GguCldJxepq2izQjBkDEEu9NENgfVKP6mv/e2SU62WbqYHGwTgWXLhxZ1NCD1dAZKHQq1fg==} + peerDependencies: + vue: ^3.0.0 + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + read-cache@1.0.0: + resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} + + read-package-json-fast@3.0.2: + resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + resolve@1.22.10: + resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} + engines: {node: '>= 0.4'} + hasBin: true + + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rfdc@1.4.1: + resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} + + rimraf@3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true + + rimraf@6.0.1: + resolution: {integrity: sha512-9dkvaxAsk/xNXSJzMgFqqMCuFgt2+KsOFek3TMLfo8NCPfWpBmqwyNn5Y+NX56QUYfCtsyhF3ayiboEoUmJk/A==} + engines: {node: 20 || >=22} + hasBin: true + + rollup@4.40.0: + resolution: {integrity: sha512-Noe455xmA96nnqH5piFtLobsGbCij7Tu+tb3c1vYjNbTkfzGqXqQXG3wJaYXkRZuQ0vEYN4bhwg7QnIrqB5B+w==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + + run-applescript@7.0.0: + resolution: {integrity: sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==} + engines: {node: '>=18'} + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + semver@7.7.1: + resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} + engines: {node: '>=10'} + hasBin: true + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + shell-quote@1.8.2: + resolution: {integrity: sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==} + engines: {node: '>= 0.4'} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + sirv@3.0.1: + resolution: {integrity: sha512-FoqMu0NCGBLCcAkS1qA+XJIQTR6/JHfQXl+uGteNCQ76T91DMUjPa9xfmeqMY3z80nLSg9yQmNjK0Px6RWsH/A==} + engines: {node: '>=18'} + + slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + + source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + + spark-md5@3.0.2: + resolution: {integrity: sha512-wcFzz9cDfbuqe0FZzfi2or1sgyIrsDwmPwfZC4hiNidPdPINjeUwNfv5kldczoEAcjl9Y1L3SM7Uz2PUEQzxQw==} + + speakingurl@14.0.1: + resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==} + engines: {node: '>=0.10.0'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} + + strip-final-newline@4.0.0: + resolution: {integrity: sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==} + engines: {node: '>=18'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + sucrase@3.35.0: + resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true + + superjson@2.2.2: + resolution: {integrity: sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==} + engines: {node: '>=16'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + synckit@0.11.4: + resolution: {integrity: sha512-Q/XQKRaJiLiFIBNN+mndW7S/RHxvwzuZS6ZwmRzUBqJBv/5QIKCEwkBC8GBf8EQJKYnaFs0wOZbKTXBPj8L9oQ==} + engines: {node: ^14.18.0 || >=16.0.0} + + tailwindcss@3.4.17: + resolution: {integrity: sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==} + engines: {node: '>=14.0.0'} + hasBin: true + + text-table@0.2.0: + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + + thenify-all@1.6.0: + resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} + engines: {node: '>=0.8'} + + thenify@3.3.1: + resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + totalist@3.0.1: + resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} + engines: {node: '>=6'} + + ts-api-utils@1.4.3: + resolution: {integrity: sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==} + engines: {node: '>=16'} + peerDependencies: + typescript: '>=4.2.0' + + ts-interface-checker@0.1.13: + resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + + typescript@5.4.5: + resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} + engines: {node: '>=14.17'} + hasBin: true + + undici-types@6.19.8: + resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + + unicorn-magic@0.3.0: + resolution: {integrity: sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==} + engines: {node: '>=18'} + + universalify@2.0.1: + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} + + update-browserslist-db@1.1.3: + resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + vite-hot-client@2.0.4: + resolution: {integrity: sha512-W9LOGAyGMrbGArYJN4LBCdOC5+Zwh7dHvOHC0KmGKkJhsOzaKbpo/jEjpPKVHIW0/jBWj8RZG0NUxfgA8BxgAg==} + peerDependencies: + vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.0-0 + + vite-plugin-inspect@0.8.9: + resolution: {integrity: sha512-22/8qn+LYonzibb1VeFZmISdVao5kC22jmEKm24vfFE8siEn47EpVcCLYMv6iKOYMJfjSvSJfueOwcFCkUnV3A==} + engines: {node: '>=14'} + peerDependencies: + '@nuxt/kit': '*' + vite: ^3.1.0 || ^4.0.0 || ^5.0.0-0 || ^6.0.1 + peerDependenciesMeta: + '@nuxt/kit': + optional: true + + vite-plugin-vue-devtools@7.7.5: + resolution: {integrity: sha512-cSlQYI1E+8d0qubBg70suTBbXMFbTHLn7vLPYUPK9GjNNJ0nw+Yks0ZLOAp7/+PjmqSpN5fK1taor6HeAjKb1g==} + engines: {node: '>=v14.21.3'} + peerDependencies: + vite: ^3.1.0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0 + + vite-plugin-vue-inspector@5.3.1: + resolution: {integrity: sha512-cBk172kZKTdvGpJuzCCLg8lJ909wopwsu3Ve9FsL1XsnLBiRT9U3MePcqrgGHgCX2ZgkqZmAGR8taxw+TV6s7A==} + peerDependencies: + vite: ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 || ^6.0.0-0 + + vite@5.4.18: + resolution: {integrity: sha512-1oDcnEp3lVyHCuQ2YFelM4Alm2o91xNoMncRm1U7S+JdYfYOvbiGZ3/CxGttrOu2M/KcGz7cRC2DoNUA6urmMA==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + + vscode-uri@3.1.0: + resolution: {integrity: sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==} + + vue-demi@0.14.10: + resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==} + engines: {node: '>=12'} + hasBin: true + peerDependencies: + '@vue/composition-api': ^1.0.0-rc.1 + vue: ^3.0.0-0 || ^2.6.0 + peerDependenciesMeta: + '@vue/composition-api': + optional: true + + vue-eslint-parser@9.4.3: + resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==} + engines: {node: ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '>=6.0.0' + + vue-router@4.5.0: + resolution: {integrity: sha512-HDuk+PuH5monfNuY+ct49mNmkCRK4xJAV9Ts4z9UFc4rzdDnxQLyCMGGc8pKhZhHTVzfanpNwB/lwqevcBwI4w==} + peerDependencies: + vue: ^3.2.0 + + vue-tsc@2.2.10: + resolution: {integrity: sha512-jWZ1xSaNbabEV3whpIDMbjVSVawjAyW+x1n3JeGQo7S0uv2n9F/JMgWW90tGWNFRKya4YwKMZgCtr0vRAM7DeQ==} + hasBin: true + peerDependencies: + typescript: '>=5.0.0' + + vue@3.5.13: + resolution: {integrity: sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + which@3.0.1: + resolution: {integrity: sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + hasBin: true + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + xml-name-validator@4.0.0: + resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} + engines: {node: '>=12'} + + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + + yaml@2.7.1: + resolution: {integrity: sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==} + engines: {node: '>= 14'} + hasBin: true + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + yoctocolors@2.1.1: + resolution: {integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==} + engines: {node: '>=18'} + +snapshots: + + '@alloc/quick-lru@5.2.0': {} + + '@ampproject/remapping@2.3.0': + dependencies: + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + + '@antfu/utils@0.7.10': {} + + '@babel/code-frame@7.26.2': + dependencies: + '@babel/helper-validator-identifier': 7.25.9 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/compat-data@7.26.8': {} + + '@babel/core@7.26.10': + dependencies: + '@ampproject/remapping': 2.3.0 + '@babel/code-frame': 7.26.2 + '@babel/generator': 7.27.0 + '@babel/helper-compilation-targets': 7.27.0 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.10) + '@babel/helpers': 7.27.0 + '@babel/parser': 7.27.0 + '@babel/template': 7.27.0 + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 + convert-source-map: 2.0.0 + debug: 4.4.0 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/generator@7.27.0': + dependencies: + '@babel/parser': 7.27.0 + '@babel/types': 7.27.0 + '@jridgewell/gen-mapping': 0.3.8 + '@jridgewell/trace-mapping': 0.3.25 + jsesc: 3.1.0 + + '@babel/helper-annotate-as-pure@7.25.9': + dependencies: + '@babel/types': 7.27.0 + + '@babel/helper-compilation-targets@7.27.0': + dependencies: + '@babel/compat-data': 7.26.8 + '@babel/helper-validator-option': 7.25.9 + browserslist: 4.24.4 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-create-class-features-plugin@7.27.0(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-member-expression-to-functions': 7.25.9 + '@babel/helper-optimise-call-expression': 7.25.9 + '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.10) + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + '@babel/traverse': 7.27.0 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/helper-member-expression-to-functions@7.25.9': + dependencies: + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-imports@7.25.9': + dependencies: + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + '@babel/traverse': 7.27.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-optimise-call-expression@7.25.9': + dependencies: + '@babel/types': 7.27.0 + + '@babel/helper-plugin-utils@7.26.5': {} + + '@babel/helper-replace-supers@7.26.5(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-member-expression-to-functions': 7.25.9 + '@babel/helper-optimise-call-expression': 7.25.9 + '@babel/traverse': 7.27.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-skip-transparent-expression-wrappers@7.25.9': + dependencies: + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-string-parser@7.25.9': {} + + '@babel/helper-validator-identifier@7.25.9': {} + + '@babel/helper-validator-option@7.25.9': {} + + '@babel/helpers@7.27.0': + dependencies: + '@babel/template': 7.27.0 + '@babel/types': 7.27.0 + + '@babel/parser@7.27.0': + dependencies: + '@babel/types': 7.27.0 + + '@babel/plugin-proposal-decorators@7.25.9(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-create-class-features-plugin': 7.27.0(@babel/core@7.26.10) + '@babel/helper-plugin-utils': 7.26.5 + '@babel/plugin-syntax-decorators': 7.25.9(@babel/core@7.26.10) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-syntax-decorators@7.25.9(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-plugin-utils': 7.26.5 + + '@babel/plugin-syntax-import-attributes@7.26.0(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-plugin-utils': 7.26.5 + + '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-plugin-utils': 7.26.5 + + '@babel/plugin-syntax-jsx@7.25.9(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-plugin-utils': 7.26.5 + + '@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-plugin-utils': 7.26.5 + + '@babel/plugin-transform-typescript@7.27.0(@babel/core@7.26.10)': + dependencies: + '@babel/core': 7.26.10 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-create-class-features-plugin': 7.27.0(@babel/core@7.26.10) + '@babel/helper-plugin-utils': 7.26.5 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.10) + transitivePeerDependencies: + - supports-color + + '@babel/template@7.27.0': + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/parser': 7.27.0 + '@babel/types': 7.27.0 + + '@babel/traverse@7.27.0': + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/generator': 7.27.0 + '@babel/parser': 7.27.0 + '@babel/template': 7.27.0 + '@babel/types': 7.27.0 + debug: 4.4.0 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/types@7.27.0': + dependencies: + '@babel/helper-string-parser': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + + '@esbuild/aix-ppc64@0.21.5': + optional: true + + '@esbuild/android-arm64@0.21.5': + optional: true + + '@esbuild/android-arm@0.21.5': + optional: true + + '@esbuild/android-x64@0.21.5': + optional: true + + '@esbuild/darwin-arm64@0.21.5': + optional: true + + '@esbuild/darwin-x64@0.21.5': + optional: true + + '@esbuild/freebsd-arm64@0.21.5': + optional: true + + '@esbuild/freebsd-x64@0.21.5': + optional: true + + '@esbuild/linux-arm64@0.21.5': + optional: true + + '@esbuild/linux-arm@0.21.5': + optional: true + + '@esbuild/linux-ia32@0.21.5': + optional: true + + '@esbuild/linux-loong64@0.21.5': + optional: true + + '@esbuild/linux-mips64el@0.21.5': + optional: true + + '@esbuild/linux-ppc64@0.21.5': + optional: true + + '@esbuild/linux-riscv64@0.21.5': + optional: true + + '@esbuild/linux-s390x@0.21.5': + optional: true + + '@esbuild/linux-x64@0.21.5': + optional: true + + '@esbuild/netbsd-x64@0.21.5': + optional: true + + '@esbuild/openbsd-x64@0.21.5': + optional: true + + '@esbuild/sunos-x64@0.21.5': + optional: true + + '@esbuild/win32-arm64@0.21.5': + optional: true + + '@esbuild/win32-ia32@0.21.5': + optional: true + + '@esbuild/win32-x64@0.21.5': + optional: true + + '@eslint-community/eslint-utils@4.6.1(eslint@8.57.1)': + dependencies: + eslint: 8.57.1 + eslint-visitor-keys: 3.4.3 + + '@eslint-community/regexpp@4.12.1': {} + + '@eslint/config-array@0.18.0': + dependencies: + '@eslint/object-schema': 2.1.6 + debug: 4.4.0 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + '@eslint/eslintrc@2.1.4': + dependencies: + ajv: 6.12.6 + debug: 4.4.0 + espree: 9.6.1 + globals: 13.24.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + + '@eslint/js@8.57.1': {} + + '@eslint/object-schema@2.1.6': {} + + '@humanwhocodes/config-array@0.13.0': + dependencies: + '@humanwhocodes/object-schema': 2.0.3 + debug: 4.4.0 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + + '@humanwhocodes/module-importer@1.0.1': {} + + '@humanwhocodes/object-schema@2.0.3': {} + + '@isaacs/cliui@8.0.2': + dependencies: + string-width: 5.1.2 + string-width-cjs: string-width@4.2.3 + strip-ansi: 7.1.0 + strip-ansi-cjs: strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: wrap-ansi@7.0.0 + + '@jridgewell/gen-mapping@0.3.8': + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.25 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/set-array@1.2.1': {} + + '@jridgewell/sourcemap-codec@1.5.0': {} + + '@jridgewell/trace-mapping@0.3.25': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.19.1 + + '@pkgjs/parseargs@0.11.0': + optional: true + + '@pkgr/core@0.2.4': {} + + '@polka/url@1.0.0-next.29': {} + + '@rollup/pluginutils@5.1.4(rollup@4.40.0)': + dependencies: + '@types/estree': 1.0.7 + estree-walker: 2.0.2 + picomatch: 4.0.2 + optionalDependencies: + rollup: 4.40.0 + + '@rollup/rollup-android-arm-eabi@4.40.0': + optional: true + + '@rollup/rollup-android-arm64@4.40.0': + optional: true + + '@rollup/rollup-darwin-arm64@4.40.0': + optional: true + + '@rollup/rollup-darwin-x64@4.40.0': + optional: true + + '@rollup/rollup-freebsd-arm64@4.40.0': + optional: true + + '@rollup/rollup-freebsd-x64@4.40.0': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.40.0': + optional: true + + '@rollup/rollup-linux-arm-musleabihf@4.40.0': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.40.0': + optional: true + + '@rollup/rollup-linux-loongarch64-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-powerpc64le-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-riscv64-musl@4.40.0': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.40.0': + optional: true + + '@rollup/rollup-linux-x64-musl@4.40.0': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.40.0': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.40.0': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.40.0': + optional: true + + '@rushstack/eslint-patch@1.11.0': {} + + '@sec-ant/readable-stream@0.4.1': {} + + '@sindresorhus/merge-streams@4.0.0': {} + + '@tailwindcss/typography@0.5.16(tailwindcss@3.4.17)': + dependencies: + lodash.castarray: 4.4.0 + lodash.isplainobject: 4.0.6 + lodash.merge: 4.6.2 + postcss-selector-parser: 6.0.10 + tailwindcss: 3.4.17 + + '@tsconfig/node20@20.1.5': {} + + '@types/estree@1.0.7': {} + + '@types/node@20.17.30': + dependencies: + undici-types: 6.19.8 + + '@types/spark-md5@3.0.5': {} + + '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.4.5))(eslint@8.57.1)(typescript@5.4.5)': + dependencies: + '@eslint-community/regexpp': 4.12.1 + '@typescript-eslint/parser': 7.18.0(eslint@8.57.1)(typescript@5.4.5) + '@typescript-eslint/scope-manager': 7.18.0 + '@typescript-eslint/type-utils': 7.18.0(eslint@8.57.1)(typescript@5.4.5) + '@typescript-eslint/utils': 7.18.0(eslint@8.57.1)(typescript@5.4.5) + '@typescript-eslint/visitor-keys': 7.18.0 + eslint: 8.57.1 + graphemer: 1.4.0 + ignore: 5.3.2 + natural-compare: 1.4.0 + ts-api-utils: 1.4.3(typescript@5.4.5) + optionalDependencies: + typescript: 5.4.5 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.4.5)': + dependencies: + '@typescript-eslint/scope-manager': 7.18.0 + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.4.5) + '@typescript-eslint/visitor-keys': 7.18.0 + debug: 4.4.0 + eslint: 8.57.1 + optionalDependencies: + typescript: 5.4.5 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@7.18.0': + dependencies: + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/visitor-keys': 7.18.0 + + '@typescript-eslint/type-utils@7.18.0(eslint@8.57.1)(typescript@5.4.5)': + dependencies: + '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.4.5) + '@typescript-eslint/utils': 7.18.0(eslint@8.57.1)(typescript@5.4.5) + debug: 4.4.0 + eslint: 8.57.1 + ts-api-utils: 1.4.3(typescript@5.4.5) + optionalDependencies: + typescript: 5.4.5 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/types@7.18.0': {} + + '@typescript-eslint/typescript-estree@7.18.0(typescript@5.4.5)': + dependencies: + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/visitor-keys': 7.18.0 + debug: 4.4.0 + globby: 11.1.0 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.7.1 + ts-api-utils: 1.4.3(typescript@5.4.5) + optionalDependencies: + typescript: 5.4.5 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@7.18.0(eslint@8.57.1)(typescript@5.4.5)': + dependencies: + '@eslint-community/eslint-utils': 4.6.1(eslint@8.57.1) + '@typescript-eslint/scope-manager': 7.18.0 + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.4.5) + eslint: 8.57.1 + transitivePeerDependencies: + - supports-color + - typescript + + '@typescript-eslint/visitor-keys@7.18.0': + dependencies: + '@typescript-eslint/types': 7.18.0 + eslint-visitor-keys: 3.4.3 + + '@ungap/structured-clone@1.3.0': {} + + '@vitejs/plugin-vue-jsx@4.1.2(vite@5.4.18(@types/node@20.17.30))(vue@3.5.13(typescript@5.4.5))': + dependencies: + '@babel/core': 7.26.10 + '@babel/plugin-transform-typescript': 7.27.0(@babel/core@7.26.10) + '@vue/babel-plugin-jsx': 1.4.0(@babel/core@7.26.10) + vite: 5.4.18(@types/node@20.17.30) + vue: 3.5.13(typescript@5.4.5) + transitivePeerDependencies: + - supports-color + + '@vitejs/plugin-vue@5.2.3(vite@5.4.18(@types/node@20.17.30))(vue@3.5.13(typescript@5.4.5))': + dependencies: + vite: 5.4.18(@types/node@20.17.30) + vue: 3.5.13(typescript@5.4.5) + + '@volar/language-core@2.4.12': + dependencies: + '@volar/source-map': 2.4.12 + + '@volar/source-map@2.4.12': {} + + '@volar/typescript@2.4.12': + dependencies: + '@volar/language-core': 2.4.12 + path-browserify: 1.0.1 + vscode-uri: 3.1.0 + + '@vue/babel-helper-vue-transform-on@1.4.0': {} + + '@vue/babel-plugin-jsx@1.4.0(@babel/core@7.26.10)': + dependencies: + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.10) + '@babel/template': 7.27.0 + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 + '@vue/babel-helper-vue-transform-on': 1.4.0 + '@vue/babel-plugin-resolve-type': 1.4.0(@babel/core@7.26.10) + '@vue/shared': 3.5.13 + optionalDependencies: + '@babel/core': 7.26.10 + transitivePeerDependencies: + - supports-color + + '@vue/babel-plugin-resolve-type@1.4.0(@babel/core@7.26.10)': + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/core': 7.26.10 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-plugin-utils': 7.26.5 + '@babel/parser': 7.27.0 + '@vue/compiler-sfc': 3.5.13 + transitivePeerDependencies: + - supports-color + + '@vue/compiler-core@3.5.13': + dependencies: + '@babel/parser': 7.27.0 + '@vue/shared': 3.5.13 + entities: 4.5.0 + estree-walker: 2.0.2 + source-map-js: 1.2.1 + + '@vue/compiler-dom@3.5.13': + dependencies: + '@vue/compiler-core': 3.5.13 + '@vue/shared': 3.5.13 + + '@vue/compiler-sfc@3.5.13': + dependencies: + '@babel/parser': 7.27.0 + '@vue/compiler-core': 3.5.13 + '@vue/compiler-dom': 3.5.13 + '@vue/compiler-ssr': 3.5.13 + '@vue/shared': 3.5.13 + estree-walker: 2.0.2 + magic-string: 0.30.17 + postcss: 8.5.3 + source-map-js: 1.2.1 + + '@vue/compiler-ssr@3.5.13': + dependencies: + '@vue/compiler-dom': 3.5.13 + '@vue/shared': 3.5.13 + + '@vue/compiler-vue2@2.7.16': + dependencies: + de-indent: 1.0.2 + he: 1.2.0 + + '@vue/devtools-api@6.6.4': {} + + '@vue/devtools-core@7.7.5(vite@5.4.18(@types/node@20.17.30))(vue@3.5.13(typescript@5.4.5))': + dependencies: + '@vue/devtools-kit': 7.7.5 + '@vue/devtools-shared': 7.7.5 + mitt: 3.0.1 + nanoid: 5.1.5 + pathe: 2.0.3 + vite-hot-client: 2.0.4(vite@5.4.18(@types/node@20.17.30)) + vue: 3.5.13(typescript@5.4.5) + transitivePeerDependencies: + - vite + + '@vue/devtools-kit@7.7.5': + dependencies: + '@vue/devtools-shared': 7.7.5 + birpc: 2.3.0 + hookable: 5.5.3 + mitt: 3.0.1 + perfect-debounce: 1.0.0 + speakingurl: 14.0.1 + superjson: 2.2.2 + + '@vue/devtools-shared@7.7.5': + dependencies: + rfdc: 1.4.1 + + '@vue/eslint-config-prettier@9.0.0(eslint@8.57.1)(prettier@3.5.3)': + dependencies: + eslint: 8.57.1 + eslint-config-prettier: 9.1.0(eslint@8.57.1) + eslint-plugin-prettier: 5.2.6(eslint-config-prettier@9.1.0(eslint@8.57.1))(eslint@8.57.1)(prettier@3.5.3) + prettier: 3.5.3 + transitivePeerDependencies: + - '@types/eslint' + + '@vue/eslint-config-typescript@13.0.0(eslint-plugin-vue@9.33.0(eslint@8.57.1))(eslint@8.57.1)(typescript@5.4.5)': + dependencies: + '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.4.5))(eslint@8.57.1)(typescript@5.4.5) + '@typescript-eslint/parser': 7.18.0(eslint@8.57.1)(typescript@5.4.5) + eslint: 8.57.1 + eslint-plugin-vue: 9.33.0(eslint@8.57.1) + vue-eslint-parser: 9.4.3(eslint@8.57.1) + optionalDependencies: + typescript: 5.4.5 + transitivePeerDependencies: + - supports-color + + '@vue/language-core@2.2.10(typescript@5.4.5)': + dependencies: + '@volar/language-core': 2.4.12 + '@vue/compiler-dom': 3.5.13 + '@vue/compiler-vue2': 2.7.16 + '@vue/shared': 3.5.13 + alien-signals: 1.0.13 + minimatch: 9.0.5 + muggle-string: 0.4.1 + path-browserify: 1.0.1 + optionalDependencies: + typescript: 5.4.5 + + '@vue/reactivity@3.5.13': + dependencies: + '@vue/shared': 3.5.13 + + '@vue/runtime-core@3.5.13': + dependencies: + '@vue/reactivity': 3.5.13 + '@vue/shared': 3.5.13 + + '@vue/runtime-dom@3.5.13': + dependencies: + '@vue/reactivity': 3.5.13 + '@vue/runtime-core': 3.5.13 + '@vue/shared': 3.5.13 + csstype: 3.1.3 + + '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.4.5))': + dependencies: + '@vue/compiler-ssr': 3.5.13 + '@vue/shared': 3.5.13 + vue: 3.5.13(typescript@5.4.5) + + '@vue/shared@3.5.13': {} + + '@vue/tsconfig@0.5.1': {} + + acorn-jsx@5.3.2(acorn@8.14.1): + dependencies: + acorn: 8.14.1 + + acorn@8.14.1: {} + + ajv@6.12.6: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + alien-signals@1.0.13: {} + + ansi-regex@5.0.1: {} + + ansi-regex@6.1.0: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@6.2.1: {} + + any-promise@1.3.0: {} + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + arg@5.0.2: {} + + argparse@2.0.1: {} + + array-union@2.1.0: {} + + asynckit@0.4.0: {} + + autoprefixer@10.4.21(postcss@8.5.3): + dependencies: + browserslist: 4.24.4 + caniuse-lite: 1.0.30001715 + fraction.js: 4.3.7 + normalize-range: 0.1.2 + picocolors: 1.1.1 + postcss: 8.5.3 + postcss-value-parser: 4.2.0 + + axios@1.8.4: + dependencies: + follow-redirects: 1.15.9 + form-data: 4.0.2 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + + balanced-match@1.0.2: {} + + binary-extensions@2.3.0: {} + + birpc@2.3.0: {} + + boolbase@1.0.0: {} + + brace-expansion@1.1.11: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@2.0.2: + dependencies: + balanced-match: 1.0.2 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + browserslist@4.24.4: + dependencies: + caniuse-lite: 1.0.30001715 + electron-to-chromium: 1.5.140 + node-releases: 2.0.19 + update-browserslist-db: 1.1.3(browserslist@4.24.4) + + bundle-name@4.1.0: + dependencies: + run-applescript: 7.0.0 + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + callsites@3.1.0: {} + + camelcase-css@2.0.1: {} + + caniuse-lite@1.0.30001715: {} + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + chokidar@3.6.0: + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + combined-stream@1.0.8: + dependencies: + delayed-stream: 1.0.0 + + commander@4.1.1: {} + + concat-map@0.0.1: {} + + convert-source-map@2.0.0: {} + + copy-anything@3.0.5: + dependencies: + is-what: 4.1.16 + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + cssesc@3.0.0: {} + + csstype@3.1.3: {} + + de-indent@1.0.2: {} + + debug@4.4.0: + dependencies: + ms: 2.1.3 + + deep-is@0.1.4: {} + + default-browser-id@5.0.0: {} + + default-browser@5.2.1: + dependencies: + bundle-name: 4.1.0 + default-browser-id: 5.0.0 + + define-lazy-prop@3.0.0: {} + + delayed-stream@1.0.0: {} + + didyoumean@1.2.2: {} + + dir-glob@3.0.1: + dependencies: + path-type: 4.0.0 + + dlv@1.1.3: {} + + doctrine@3.0.0: + dependencies: + esutils: 2.0.3 + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + + eastasianwidth@0.2.0: {} + + electron-to-chromium@1.5.140: {} + + emoji-regex@8.0.0: {} + + emoji-regex@9.2.2: {} + + entities@4.5.0: {} + + error-stack-parser-es@0.1.5: {} + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + + es-set-tostringtag@2.1.0: + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + esbuild@0.21.5: + optionalDependencies: + '@esbuild/aix-ppc64': 0.21.5 + '@esbuild/android-arm': 0.21.5 + '@esbuild/android-arm64': 0.21.5 + '@esbuild/android-x64': 0.21.5 + '@esbuild/darwin-arm64': 0.21.5 + '@esbuild/darwin-x64': 0.21.5 + '@esbuild/freebsd-arm64': 0.21.5 + '@esbuild/freebsd-x64': 0.21.5 + '@esbuild/linux-arm': 0.21.5 + '@esbuild/linux-arm64': 0.21.5 + '@esbuild/linux-ia32': 0.21.5 + '@esbuild/linux-loong64': 0.21.5 + '@esbuild/linux-mips64el': 0.21.5 + '@esbuild/linux-ppc64': 0.21.5 + '@esbuild/linux-riscv64': 0.21.5 + '@esbuild/linux-s390x': 0.21.5 + '@esbuild/linux-x64': 0.21.5 + '@esbuild/netbsd-x64': 0.21.5 + '@esbuild/openbsd-x64': 0.21.5 + '@esbuild/sunos-x64': 0.21.5 + '@esbuild/win32-arm64': 0.21.5 + '@esbuild/win32-ia32': 0.21.5 + '@esbuild/win32-x64': 0.21.5 + + escalade@3.2.0: {} + + escape-string-regexp@4.0.0: {} + + eslint-config-prettier@9.1.0(eslint@8.57.1): + dependencies: + eslint: 8.57.1 + + eslint-plugin-prettier@5.2.6(eslint-config-prettier@9.1.0(eslint@8.57.1))(eslint@8.57.1)(prettier@3.5.3): + dependencies: + eslint: 8.57.1 + prettier: 3.5.3 + prettier-linter-helpers: 1.0.0 + synckit: 0.11.4 + optionalDependencies: + eslint-config-prettier: 9.1.0(eslint@8.57.1) + + eslint-plugin-vue@9.33.0(eslint@8.57.1): + dependencies: + '@eslint-community/eslint-utils': 4.6.1(eslint@8.57.1) + eslint: 8.57.1 + globals: 13.24.0 + natural-compare: 1.4.0 + nth-check: 2.1.1 + postcss-selector-parser: 6.1.2 + semver: 7.7.1 + vue-eslint-parser: 9.4.3(eslint@8.57.1) + xml-name-validator: 4.0.0 + transitivePeerDependencies: + - supports-color + + eslint-scope@7.2.2: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-visitor-keys@3.4.3: {} + + eslint@8.57.1: + dependencies: + '@eslint-community/eslint-utils': 4.6.1(eslint@8.57.1) + '@eslint-community/regexpp': 4.12.1 + '@eslint/eslintrc': 2.1.4 + '@eslint/js': 8.57.1 + '@humanwhocodes/config-array': 0.13.0 + '@humanwhocodes/module-importer': 1.0.1 + '@nodelib/fs.walk': 1.2.8 + '@ungap/structured-clone': 1.3.0 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.6 + debug: 4.4.0 + doctrine: 3.0.0 + escape-string-regexp: 4.0.0 + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + esquery: 1.6.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 6.0.1 + find-up: 5.0.0 + glob-parent: 6.0.2 + globals: 13.24.0 + graphemer: 1.4.0 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + is-path-inside: 3.0.3 + js-yaml: 4.1.0 + json-stable-stringify-without-jsonify: 1.0.1 + levn: 0.4.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.4 + strip-ansi: 6.0.1 + text-table: 0.2.0 + transitivePeerDependencies: + - supports-color + + espree@9.6.1: + dependencies: + acorn: 8.14.1 + acorn-jsx: 5.3.2(acorn@8.14.1) + eslint-visitor-keys: 3.4.3 + + esquery@1.6.0: + dependencies: + estraverse: 5.3.0 + + esrecurse@4.3.0: + dependencies: + estraverse: 5.3.0 + + estraverse@5.3.0: {} + + estree-walker@2.0.2: {} + + esutils@2.0.3: {} + + execa@9.5.2: + dependencies: + '@sindresorhus/merge-streams': 4.0.0 + cross-spawn: 7.0.6 + figures: 6.1.0 + get-stream: 9.0.1 + human-signals: 8.0.1 + is-plain-obj: 4.1.0 + is-stream: 4.0.1 + npm-run-path: 6.0.0 + pretty-ms: 9.2.0 + signal-exit: 4.1.0 + strip-final-newline: 4.0.0 + yoctocolors: 2.1.1 + + fast-deep-equal@3.1.3: {} + + fast-diff@1.3.0: {} + + fast-glob@3.3.3: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fastq@1.19.1: + dependencies: + reusify: 1.1.0 + + figures@6.1.0: + dependencies: + is-unicode-supported: 2.1.0 + + file-entry-cache@6.0.1: + dependencies: + flat-cache: 3.2.0 + + file-saver@2.0.5: {} + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat-cache@3.2.0: + dependencies: + flatted: 3.3.3 + keyv: 4.5.4 + rimraf: 3.0.2 + + flatted@3.3.3: {} + + follow-redirects@1.15.9: {} + + foreground-child@3.3.1: + dependencies: + cross-spawn: 7.0.6 + signal-exit: 4.1.0 + + form-data@4.0.2: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + es-set-tostringtag: 2.1.0 + mime-types: 2.1.35 + + fraction.js@4.3.7: {} + + fs-extra@11.3.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.1.0 + universalify: 2.0.1 + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + gensync@1.0.0-beta.2: {} + + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + + get-stream@9.0.1: + dependencies: + '@sec-ant/readable-stream': 0.4.1 + is-stream: 4.0.1 + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + glob@10.4.5: + dependencies: + foreground-child: 3.3.1 + jackspeak: 3.4.3 + minimatch: 9.0.5 + minipass: 7.1.2 + package-json-from-dist: 1.0.1 + path-scurry: 1.11.1 + + glob@11.0.1: + dependencies: + foreground-child: 3.3.1 + jackspeak: 4.1.0 + minimatch: 10.0.1 + minipass: 7.1.2 + package-json-from-dist: 1.0.1 + path-scurry: 2.0.0 + + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + + globals@11.12.0: {} + + globals@13.24.0: + dependencies: + type-fest: 0.20.2 + + globby@11.1.0: + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.3 + ignore: 5.3.2 + merge2: 1.4.1 + slash: 3.0.0 + + gopd@1.2.0: {} + + graceful-fs@4.2.11: {} + + graphemer@1.4.0: {} + + has-flag@4.0.0: {} + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + he@1.2.0: {} + + hookable@5.5.3: {} + + human-signals@8.0.1: {} + + ignore@5.3.2: {} + + import-fresh@3.3.1: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + imurmurhash@0.1.4: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + is-binary-path@2.1.0: + dependencies: + binary-extensions: 2.3.0 + + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + + is-docker@3.0.0: {} + + is-extglob@2.1.1: {} + + is-fullwidth-code-point@3.0.0: {} + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-inside-container@1.0.0: + dependencies: + is-docker: 3.0.0 + + is-number@7.0.0: {} + + is-path-inside@3.0.3: {} + + is-plain-obj@4.1.0: {} + + is-stream@4.0.1: {} + + is-unicode-supported@2.1.0: {} + + is-what@4.1.16: {} + + is-wsl@3.1.0: + dependencies: + is-inside-container: 1.0.0 + + isexe@2.0.0: {} + + jackspeak@3.4.3: + dependencies: + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + + jackspeak@4.1.0: + dependencies: + '@isaacs/cliui': 8.0.2 + + jiti@1.21.7: {} + + js-tokens@4.0.0: {} + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + jsesc@3.1.0: {} + + json-buffer@3.0.1: {} + + json-parse-even-better-errors@3.0.2: {} + + json-schema-traverse@0.4.1: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + json5@2.2.3: {} + + jsonfile@6.1.0: + dependencies: + universalify: 2.0.1 + optionalDependencies: + graceful-fs: 4.2.11 + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + kolorist@1.8.0: {} + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + lilconfig@3.1.3: {} + + lines-and-columns@1.2.4: {} + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash.castarray@4.4.0: {} + + lodash.isplainobject@4.0.6: {} + + lodash.merge@4.6.2: {} + + lodash@4.17.21: {} + + lru-cache@10.4.3: {} + + lru-cache@11.1.0: {} + + lru-cache@5.1.1: + dependencies: + yallist: 3.1.1 + + lucide-vue-next@0.445.0(vue@3.5.13(typescript@5.4.5)): + dependencies: + vue: 3.5.13(typescript@5.4.5) + + magic-string@0.30.17: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + + marked@14.1.4: {} + + math-intrinsics@1.1.0: {} + + memorystream@0.3.1: {} + + merge2@1.4.1: {} + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + mime-db@1.52.0: {} + + mime-types@2.1.35: + dependencies: + mime-db: 1.52.0 + + minimatch@10.0.1: + dependencies: + brace-expansion: 2.0.2 + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.11 + + minimatch@9.0.5: + dependencies: + brace-expansion: 2.0.2 + + minipass@7.1.2: {} + + mitt@3.0.1: {} + + mrmime@2.0.1: {} + + ms@2.1.3: {} + + muggle-string@0.4.1: {} + + mz@2.7.0: + dependencies: + any-promise: 1.3.0 + object-assign: 4.1.1 + thenify-all: 1.6.0 + + nanoid@3.3.11: {} + + nanoid@5.1.5: {} + + natural-compare@1.4.0: {} + + node-releases@2.0.19: {} + + normalize-path@3.0.0: {} + + normalize-range@0.1.2: {} + + npm-normalize-package-bin@3.0.1: {} + + npm-run-all2@6.2.6: + dependencies: + ansi-styles: 6.2.1 + cross-spawn: 7.0.6 + memorystream: 0.3.1 + minimatch: 9.0.5 + pidtree: 0.6.0 + read-package-json-fast: 3.0.2 + shell-quote: 1.8.2 + which: 3.0.1 + + npm-run-path@6.0.0: + dependencies: + path-key: 4.0.0 + unicorn-magic: 0.3.0 + + nth-check@2.1.1: + dependencies: + boolbase: 1.0.0 + + object-assign@4.1.1: {} + + object-hash@3.0.0: {} + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + open@10.1.1: + dependencies: + default-browser: 5.2.1 + define-lazy-prop: 3.0.0 + is-inside-container: 1.0.0 + is-wsl: 3.1.0 + + optionator@0.9.4: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + package-json-from-dist@1.0.1: {} + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-ms@4.0.0: {} + + path-browserify@1.0.1: {} + + path-exists@4.0.0: {} + + path-is-absolute@1.0.1: {} + + path-key@3.1.1: {} + + path-key@4.0.0: {} + + path-parse@1.0.7: {} + + path-scurry@1.11.1: + dependencies: + lru-cache: 10.4.3 + minipass: 7.1.2 + + path-scurry@2.0.0: + dependencies: + lru-cache: 11.1.0 + minipass: 7.1.2 + + path-type@4.0.0: {} + + pathe@2.0.3: {} + + perfect-debounce@1.0.0: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.2: {} + + pidtree@0.6.0: {} + + pify@2.3.0: {} + + pinia@2.3.1(typescript@5.4.5)(vue@3.5.13(typescript@5.4.5)): + dependencies: + '@vue/devtools-api': 6.6.4 + vue: 3.5.13(typescript@5.4.5) + vue-demi: 0.14.10(vue@3.5.13(typescript@5.4.5)) + optionalDependencies: + typescript: 5.4.5 + transitivePeerDependencies: + - '@vue/composition-api' + + pirates@4.0.7: {} + + postcss-import@15.1.0(postcss@8.5.3): + dependencies: + postcss: 8.5.3 + postcss-value-parser: 4.2.0 + read-cache: 1.0.0 + resolve: 1.22.10 + + postcss-js@4.0.1(postcss@8.5.3): + dependencies: + camelcase-css: 2.0.1 + postcss: 8.5.3 + + postcss-load-config@4.0.2(postcss@8.5.3): + dependencies: + lilconfig: 3.1.3 + yaml: 2.7.1 + optionalDependencies: + postcss: 8.5.3 + + postcss-nested@6.2.0(postcss@8.5.3): + dependencies: + postcss: 8.5.3 + postcss-selector-parser: 6.1.2 + + postcss-selector-parser@6.0.10: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss-selector-parser@6.1.2: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss-value-parser@4.2.0: {} + + postcss@8.5.3: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + prelude-ls@1.2.1: {} + + prettier-linter-helpers@1.0.0: + dependencies: + fast-diff: 1.3.0 + + prettier@3.5.3: {} + + pretty-ms@9.2.0: + dependencies: + parse-ms: 4.0.0 + + proxy-from-env@1.1.0: {} + + punycode@2.3.1: {} + + qrcode.vue@3.6.0(vue@3.5.13(typescript@5.4.5)): + dependencies: + vue: 3.5.13(typescript@5.4.5) + + queue-microtask@1.2.3: {} + + read-cache@1.0.0: + dependencies: + pify: 2.3.0 + + read-package-json-fast@3.0.2: + dependencies: + json-parse-even-better-errors: 3.0.2 + npm-normalize-package-bin: 3.0.1 + + readdirp@3.6.0: + dependencies: + picomatch: 2.3.1 + + resolve-from@4.0.0: {} + + resolve@1.22.10: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + reusify@1.1.0: {} + + rfdc@1.4.1: {} + + rimraf@3.0.2: + dependencies: + glob: 7.2.3 + + rimraf@6.0.1: + dependencies: + glob: 11.0.1 + package-json-from-dist: 1.0.1 + + rollup@4.40.0: + dependencies: + '@types/estree': 1.0.7 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.40.0 + '@rollup/rollup-android-arm64': 4.40.0 + '@rollup/rollup-darwin-arm64': 4.40.0 + '@rollup/rollup-darwin-x64': 4.40.0 + '@rollup/rollup-freebsd-arm64': 4.40.0 + '@rollup/rollup-freebsd-x64': 4.40.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.40.0 + '@rollup/rollup-linux-arm-musleabihf': 4.40.0 + '@rollup/rollup-linux-arm64-gnu': 4.40.0 + '@rollup/rollup-linux-arm64-musl': 4.40.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.40.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.40.0 + '@rollup/rollup-linux-riscv64-gnu': 4.40.0 + '@rollup/rollup-linux-riscv64-musl': 4.40.0 + '@rollup/rollup-linux-s390x-gnu': 4.40.0 + '@rollup/rollup-linux-x64-gnu': 4.40.0 + '@rollup/rollup-linux-x64-musl': 4.40.0 + '@rollup/rollup-win32-arm64-msvc': 4.40.0 + '@rollup/rollup-win32-ia32-msvc': 4.40.0 + '@rollup/rollup-win32-x64-msvc': 4.40.0 + fsevents: 2.3.3 + + run-applescript@7.0.0: {} + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + semver@6.3.1: {} + + semver@7.7.1: {} + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + shell-quote@1.8.2: {} + + signal-exit@4.1.0: {} + + sirv@3.0.1: + dependencies: + '@polka/url': 1.0.0-next.29 + mrmime: 2.0.1 + totalist: 3.0.1 + + slash@3.0.0: {} + + source-map-js@1.2.1: {} + + spark-md5@3.0.2: {} + + speakingurl@14.0.1: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string-width@5.1.2: + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.1.0 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-ansi@7.1.0: + dependencies: + ansi-regex: 6.1.0 + + strip-final-newline@4.0.0: {} + + strip-json-comments@3.1.1: {} + + sucrase@3.35.0: + dependencies: + '@jridgewell/gen-mapping': 0.3.8 + commander: 4.1.1 + glob: 10.4.5 + lines-and-columns: 1.2.4 + mz: 2.7.0 + pirates: 4.0.7 + ts-interface-checker: 0.1.13 + + superjson@2.2.2: + dependencies: + copy-anything: 3.0.5 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + synckit@0.11.4: + dependencies: + '@pkgr/core': 0.2.4 + tslib: 2.8.1 + + tailwindcss@3.4.17: + dependencies: + '@alloc/quick-lru': 5.2.0 + arg: 5.0.2 + chokidar: 3.6.0 + didyoumean: 1.2.2 + dlv: 1.1.3 + fast-glob: 3.3.3 + glob-parent: 6.0.2 + is-glob: 4.0.3 + jiti: 1.21.7 + lilconfig: 3.1.3 + micromatch: 4.0.8 + normalize-path: 3.0.0 + object-hash: 3.0.0 + picocolors: 1.1.1 + postcss: 8.5.3 + postcss-import: 15.1.0(postcss@8.5.3) + postcss-js: 4.0.1(postcss@8.5.3) + postcss-load-config: 4.0.2(postcss@8.5.3) + postcss-nested: 6.2.0(postcss@8.5.3) + postcss-selector-parser: 6.1.2 + resolve: 1.22.10 + sucrase: 3.35.0 + transitivePeerDependencies: + - ts-node + + text-table@0.2.0: {} + + thenify-all@1.6.0: + dependencies: + thenify: 3.3.1 + + thenify@3.3.1: + dependencies: + any-promise: 1.3.0 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + totalist@3.0.1: {} + + ts-api-utils@1.4.3(typescript@5.4.5): + dependencies: + typescript: 5.4.5 + + ts-interface-checker@0.1.13: {} + + tslib@2.8.1: {} + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + type-fest@0.20.2: {} + + typescript@5.4.5: {} + + undici-types@6.19.8: {} + + unicorn-magic@0.3.0: {} + + universalify@2.0.1: {} + + update-browserslist-db@1.1.3(browserslist@4.24.4): + dependencies: + browserslist: 4.24.4 + escalade: 3.2.0 + picocolors: 1.1.1 + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + util-deprecate@1.0.2: {} + + vite-hot-client@2.0.4(vite@5.4.18(@types/node@20.17.30)): + dependencies: + vite: 5.4.18(@types/node@20.17.30) + + vite-plugin-inspect@0.8.9(rollup@4.40.0)(vite@5.4.18(@types/node@20.17.30)): + dependencies: + '@antfu/utils': 0.7.10 + '@rollup/pluginutils': 5.1.4(rollup@4.40.0) + debug: 4.4.0 + error-stack-parser-es: 0.1.5 + fs-extra: 11.3.0 + open: 10.1.1 + perfect-debounce: 1.0.0 + picocolors: 1.1.1 + sirv: 3.0.1 + vite: 5.4.18(@types/node@20.17.30) + transitivePeerDependencies: + - rollup + - supports-color + + vite-plugin-vue-devtools@7.7.5(rollup@4.40.0)(vite@5.4.18(@types/node@20.17.30))(vue@3.5.13(typescript@5.4.5)): + dependencies: + '@vue/devtools-core': 7.7.5(vite@5.4.18(@types/node@20.17.30))(vue@3.5.13(typescript@5.4.5)) + '@vue/devtools-kit': 7.7.5 + '@vue/devtools-shared': 7.7.5 + execa: 9.5.2 + sirv: 3.0.1 + vite: 5.4.18(@types/node@20.17.30) + vite-plugin-inspect: 0.8.9(rollup@4.40.0)(vite@5.4.18(@types/node@20.17.30)) + vite-plugin-vue-inspector: 5.3.1(vite@5.4.18(@types/node@20.17.30)) + transitivePeerDependencies: + - '@nuxt/kit' + - rollup + - supports-color + - vue + + vite-plugin-vue-inspector@5.3.1(vite@5.4.18(@types/node@20.17.30)): + dependencies: + '@babel/core': 7.26.10 + '@babel/plugin-proposal-decorators': 7.25.9(@babel/core@7.26.10) + '@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.10) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.26.10) + '@babel/plugin-transform-typescript': 7.27.0(@babel/core@7.26.10) + '@vue/babel-plugin-jsx': 1.4.0(@babel/core@7.26.10) + '@vue/compiler-dom': 3.5.13 + kolorist: 1.8.0 + magic-string: 0.30.17 + vite: 5.4.18(@types/node@20.17.30) + transitivePeerDependencies: + - supports-color + + vite@5.4.18(@types/node@20.17.30): + dependencies: + esbuild: 0.21.5 + postcss: 8.5.3 + rollup: 4.40.0 + optionalDependencies: + '@types/node': 20.17.30 + fsevents: 2.3.3 + + vscode-uri@3.1.0: {} + + vue-demi@0.14.10(vue@3.5.13(typescript@5.4.5)): + dependencies: + vue: 3.5.13(typescript@5.4.5) + + vue-eslint-parser@9.4.3(eslint@8.57.1): + dependencies: + debug: 4.4.0 + eslint: 8.57.1 + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + esquery: 1.6.0 + lodash: 4.17.21 + semver: 7.7.1 + transitivePeerDependencies: + - supports-color + + vue-router@4.5.0(vue@3.5.13(typescript@5.4.5)): + dependencies: + '@vue/devtools-api': 6.6.4 + vue: 3.5.13(typescript@5.4.5) + + vue-tsc@2.2.10(typescript@5.4.5): + dependencies: + '@volar/typescript': 2.4.12 + '@vue/language-core': 2.2.10(typescript@5.4.5) + typescript: 5.4.5 + + vue@3.5.13(typescript@5.4.5): + dependencies: + '@vue/compiler-dom': 3.5.13 + '@vue/compiler-sfc': 3.5.13 + '@vue/runtime-dom': 3.5.13 + '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.4.5)) + '@vue/shared': 3.5.13 + optionalDependencies: + typescript: 5.4.5 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + which@3.0.1: + dependencies: + isexe: 2.0.0 + + word-wrap@1.2.5: {} + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrap-ansi@8.1.0: + dependencies: + ansi-styles: 6.2.1 + string-width: 5.1.2 + strip-ansi: 7.1.0 + + wrappy@1.0.2: {} + + xml-name-validator@4.0.0: {} + + yallist@3.1.1: {} + + yaml@2.7.1: {} + + yocto-queue@0.1.0: {} + + yoctocolors@2.1.1: {} diff --git a/web/postcss.config.js b/web/postcss.config.js new file mode 100644 index 000000000..2e7af2b7f --- /dev/null +++ b/web/postcss.config.js @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/web/public/assets/logo_small.png b/web/public/assets/logo_small.png new file mode 100644 index 0000000000000000000000000000000000000000..04bf2572754dd67b12d42cecf20270b9fcc19ad0 GIT binary patch literal 93858 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 + + + + + + diff --git a/web/src/components/common/BorderProgressBar.vue b/web/src/components/common/BorderProgressBar.vue new file mode 100644 index 000000000..a9ef269ae --- /dev/null +++ b/web/src/components/common/BorderProgressBar.vue @@ -0,0 +1,154 @@ + + + + + \ No newline at end of file diff --git a/web/src/components/common/ThemeToggle.vue b/web/src/components/common/ThemeToggle.vue new file mode 100644 index 000000000..68b9e4ffd --- /dev/null +++ b/web/src/components/common/ThemeToggle.vue @@ -0,0 +1,22 @@ + + + diff --git a/web/src/composables/useSystemConfig.ts b/web/src/composables/useSystemConfig.ts new file mode 100644 index 000000000..e69de29bb diff --git a/web/src/layout/AdminLayout/AdminLayout.vue b/web/src/layout/AdminLayout/AdminLayout.vue new file mode 100644 index 000000000..088b3f8ce --- /dev/null +++ b/web/src/layout/AdminLayout/AdminLayout.vue @@ -0,0 +1,257 @@ + + + + + diff --git a/web/src/main.ts b/web/src/main.ts new file mode 100644 index 000000000..170dfde79 --- /dev/null +++ b/web/src/main.ts @@ -0,0 +1,14 @@ +import './assets/style/main.css' + +import { createApp } from 'vue' +import { createPinia } from 'pinia' + +import App from './App.vue' +import router from './router' + +const app = createApp(App) + +app.use(createPinia()) +app.use(router) + +app.mount('#app') diff --git a/web/src/router/index.ts b/web/src/router/index.ts new file mode 100644 index 000000000..2891e0a99 --- /dev/null +++ b/web/src/router/index.ts @@ -0,0 +1,50 @@ +import { createRouter, createWebHashHistory } from 'vue-router' + +// 预加载 SendFileView 组件 +const SendFileView = () => import('../views/SendFileView.vue') +const router = createRouter({ + history: createWebHashHistory(import.meta.env.BASE_URL), + routes: [ + { + path: '/', + name: 'Retrieve', + component: () => import('@/views/RetrievewFileView.vue') + }, + { + path: '/send', + name: 'Send', + component: SendFileView + }, + { + path: '/admin', + name: 'Manage', + component: () => import('@/layout/AdminLayout/AdminLayout.vue'), + redirect: '/admin/dashboard', + children: [ + { + path: '/admin/dashboard', + name: 'Dashboard', + component: () => import('@/views/manage/DashboardView.vue') + }, + { + path: '/admin/files', + name: 'FileManage', + component: () => import('@/views/manage/FileManageView.vue') + }, + { + path: '/admin/settings', + name: 'Settings', + component: () => import('@/views/manage/SystemSettingsView.vue') + } + ] + }, + { + path: '/login', + name: 'Login', + component: () => import('@/views/manage/LoginView.vue') + } + ] +}) + + +export default router diff --git a/web/src/stores/adminStore.ts b/web/src/stores/adminStore.ts new file mode 100644 index 000000000..9986d22d4 --- /dev/null +++ b/web/src/stores/adminStore.ts @@ -0,0 +1,11 @@ +import { defineStore } from 'pinia' +import { ref } from 'vue' + +export const useAdminData = defineStore('adminData', () => { + const adminPassword = ref(localStorage.getItem('adminPassword') || '') + function updateAdminPwd(pwd: string) { + adminPassword.value = pwd + localStorage.setItem('token', pwd) + } + return { adminPassword, updateAdminPwd } +}) diff --git a/web/src/stores/alertStore.ts b/web/src/stores/alertStore.ts new file mode 100644 index 000000000..a25d10271 --- /dev/null +++ b/web/src/stores/alertStore.ts @@ -0,0 +1,45 @@ +import { defineStore } from 'pinia' + +interface Alert { + id: number + message: string + type: 'success' | 'error' | 'warning' | 'info' + progress: number + duration: number + startTime: number +} + +export const useAlertStore = defineStore('alert', { + state: () => ({ + alerts: [] as Alert[] + }), + actions: { + showAlert( + message: string, + type: 'success' | 'error' | 'warning' | 'info' = 'info', + duration = 5000 + ) { + const id = Date.now() + const startTime = Date.now() + this.alerts.push({ id, message, type, progress: 100, duration, startTime }) + setTimeout(() => this.removeAlert(id), duration) + }, + removeAlert(id: number) { + const index = this.alerts.findIndex((alert) => alert.id === id) + if (index > -1) { + this.alerts.splice(index, 1) + } + }, + updateAlertProgress(id: number) { + const alert = this.alerts.find((a) => a.id === id) + if (alert) { + const elapsedTime = Date.now() - alert.startTime + const progress = 100 - (elapsedTime / alert.duration) * 100 + alert.progress = Math.max(0, progress) + if (alert.progress <= 0) { + this.removeAlert(id) + } + } + } + } +}) diff --git a/web/src/stores/fileData.ts b/web/src/stores/fileData.ts new file mode 100644 index 000000000..dbeaa9f5d --- /dev/null +++ b/web/src/stores/fileData.ts @@ -0,0 +1,39 @@ +import { defineStore } from 'pinia' +import { reactive } from 'vue' + +export const useFileDataStore = defineStore('fileData', () => { + const receiveData = reactive(JSON.parse(localStorage.getItem('receiveData') || '[]') || []) // 接收的数据 + const shareData = reactive(JSON.parse(localStorage.getItem('shareData') || '[]') || []) // 接收的数据 + function save() { + localStorage.setItem('receiveData', JSON.stringify(receiveData)) + localStorage.setItem('shareData', JSON.stringify(shareData)) + } + function addReceiveData(data: any) { + receiveData.unshift(data) + save() + } + + function addShareData(data: any) { + shareData.unshift(data) + save() + } + + function deleteReceiveData(index: number) { + receiveData.splice(index, 1) + save() + } + + function deleteShareData(index: number) { + shareData.splice(index, 1) + save() + } + return { + receiveData, + shareData, + save, + addShareData, + addReceiveData, + deleteReceiveData, + deleteShareData + } +}) diff --git a/web/src/utils/api.ts b/web/src/utils/api.ts new file mode 100644 index 000000000..846925002 --- /dev/null +++ b/web/src/utils/api.ts @@ -0,0 +1,75 @@ +import axios from 'axios' + +// 从环境变量中获取 API 基础 URL +const baseURL = + import.meta.env.MODE === 'production' + ? import.meta.env.VITE_API_BASE_URL_PROD + : import.meta.env.VITE_API_BASE_URL_DEV + +// 确保 baseURL 是一个有效的字符串 +const sanitizedBaseURL = typeof baseURL === 'string' ? baseURL : '' + +// 创建 axios 实例 +const api = axios.create({ + baseURL: sanitizedBaseURL, + timeout: 1000000000000000, // 请求超时时间 + headers: { + 'Content-Type': 'application/json' + } +}) + +// 请求拦截器 +api.interceptors.request.use( + (config) => { + // 从 localStorage 获取 token + const token = localStorage.getItem('token') + if (token) { + config.headers['Authorization'] = `Bearer ${token}` + } + + // 确保 URL 是有效的 + if (config.url && !config.url.startsWith('http')) { + config.url = `${sanitizedBaseURL}/${config.url.replace(/^\//, '')}` + } + + return config + }, + (error) => { + return Promise.reject(error) + } +) +// 响应拦截器 +api.interceptors.response.use( + (response) => { + return response.data + }, + (error) => { + // 处理错误响应 + if (error.response) { + switch (error.response.status) { + case 401: + console.error('未授权,请重新登录') + localStorage.clear() + window.location.href = '/#/login' + break + case 403: + // 禁止访问 + console.error('禁止访问') + break + case 404: + // 未找到 + console.error('请求的资源不存在') + break + default: + console.error('发生错误:', error.response.data) + } + } else if (error.request) { + console.error('未收到响应:', error.request) + } else { + console.error('请求配置错误:', error.message) + } + return Promise.reject(error) + } +) + +export default api diff --git a/web/src/utils/clipboard.ts b/web/src/utils/clipboard.ts new file mode 100644 index 000000000..7c03a94bf --- /dev/null +++ b/web/src/utils/clipboard.ts @@ -0,0 +1,122 @@ +/** + * 剪贴板工具函数 + */ + +import { useAlertStore } from '@/stores/alertStore' +const alertStore = useAlertStore(); +interface CopyOptions { + successMsg?: string + errorMsg?: string + showMsg?: boolean +} + +/** + * 复制文本到剪贴板 + * @param text 要复制的文本 + * @param options 配置选项 + * @returns Promise 是否复制成功 + */ +export const copyToClipboard = async ( + text: string, + options: CopyOptions = {} +): Promise => { + const { successMsg = '复制成功', errorMsg = '复制失败,请手动复制', showMsg = true } = options + + const alertStore = useAlertStore() + + try { + // 优先使用 Clipboard API + if (navigator.clipboard && navigator.clipboard.writeText) { + await navigator.clipboard.writeText(text) + if (showMsg) alertStore.showAlert(successMsg, 'success') + return true + } + + // 后备方案:使用传统的复制方法 + const textarea = document.createElement('textarea') + textarea.value = text + textarea.style.position = 'fixed' + textarea.style.opacity = '0' + document.body.appendChild(textarea) + textarea.select() + const success = document.execCommand('copy') + document.body.removeChild(textarea) + + if (success) { + if (showMsg) alertStore.showAlert(successMsg, 'success') + return true + } else { + throw new Error('execCommand copy failed') + } + } catch (err) { + console.error('复制失败:', err) + if (showMsg) alertStore.showAlert(errorMsg, 'error') + return false + } +} + +/** + * 生成并复制取件链接 + * @param code 取件码 + * @returns Promise 是否复制成功 + */ +export const copyRetrieveLink = async (code: string): Promise => { + const link = `${window.location.origin}/#/?code=${code}` + return copyToClipboard(link, { + successMsg: '取件链接已复制到剪贴板', + errorMsg: '复制失败,请手动复制取件链接' + }) +} + +/** + * 复制取件码 + * @param code 取件码 + * @returns Promise 是否复制成功 + */ +export const copyRetrieveCode = async (code: string): Promise => { + return copyToClipboard(code, { + successMsg: '取件码已复制到剪贴板', + errorMsg: '复制失败,请手动复制取件码' + }) +} + +const baseUrl = window.location.origin + '/'; + +export const copyWgetCommand = (retrieveCode: string, fileName: string) => { + const command = `wget ${baseUrl}share/select?code=${retrieveCode} -O "${fileName}"`; + + if (navigator.clipboard && navigator.clipboard.writeText) { + navigator.clipboard.writeText(command) + .then(() => { + console.log("命令已复制到剪贴板!"); + }) + .catch((err) => { + console.error("复制失败,使用回退方法:", err); + fallbackCopyTextToClipboard(command); + }); + } else { + console.warn("Clipboard API 不可用,使用回退方法。"); + fallbackCopyTextToClipboard(command); + } +}; +function fallbackCopyTextToClipboard(text:string) { + const textArea = document.createElement("textarea"); + textArea.value = text; + textArea.style.position = "fixed"; // 避免滚动 + document.body.appendChild(textArea); + textArea.focus(); + textArea.select(); + try { + const successful = document.execCommand("copy"); + console.log("回退复制操作成功:", successful); + } catch (err) { + console.error("回退复制操作失败:", err); + } + document.body.removeChild(textArea); +} + +if (navigator.clipboard && navigator.clipboard.writeText) { + navigator.clipboard.writeText("要复制的文本"); +} else { + fallbackCopyTextToClipboard("要复制的文本"); +} \ No newline at end of file diff --git a/web/src/utils/convert.ts b/web/src/utils/convert.ts new file mode 100644 index 000000000..6853bd8a1 --- /dev/null +++ b/web/src/utils/convert.ts @@ -0,0 +1,10 @@ +// 存储单位转换 +export const getStorageUnit = (value: number) => { + if (value >= 1024 * 1024 * 1024) { + return Math.round(value / (1024 * 1024 * 1024)) + 'GB' + } else if (value >= 1024 * 1024) { + return Math.round(value / (1024 * 1024)) + 'MB' + } else { + return Math.round(value / 1024) + 'KB' + } +} diff --git a/web/src/views/RetrievewFileView.vue b/web/src/views/RetrievewFileView.vue new file mode 100644 index 000000000..319d932a8 --- /dev/null +++ b/web/src/views/RetrievewFileView.vue @@ -0,0 +1,623 @@ + + + + + diff --git a/web/src/views/SendFileView.vue b/web/src/views/SendFileView.vue new file mode 100644 index 000000000..43db14dc3 --- /dev/null +++ b/web/src/views/SendFileView.vue @@ -0,0 +1,919 @@ + + + + + diff --git a/web/src/views/manage/DashboardView.vue b/web/src/views/manage/DashboardView.vue new file mode 100644 index 000000000..9fbcc0edd --- /dev/null +++ b/web/src/views/manage/DashboardView.vue @@ -0,0 +1,198 @@ + + + diff --git a/web/src/views/manage/FileManageView.vue b/web/src/views/manage/FileManageView.vue new file mode 100644 index 000000000..e52570a4b --- /dev/null +++ b/web/src/views/manage/FileManageView.vue @@ -0,0 +1,639 @@ + + + + + diff --git a/web/src/views/manage/LoginView.vue b/web/src/views/manage/LoginView.vue new file mode 100644 index 000000000..9ad9268b6 --- /dev/null +++ b/web/src/views/manage/LoginView.vue @@ -0,0 +1,202 @@ + + + + + diff --git a/web/src/views/manage/SystemSettingsView.vue b/web/src/views/manage/SystemSettingsView.vue new file mode 100644 index 000000000..1fc721ab5 --- /dev/null +++ b/web/src/views/manage/SystemSettingsView.vue @@ -0,0 +1,756 @@ + + + + diff --git a/web/src/vite-env.d.ts b/web/src/vite-env.d.ts new file mode 100644 index 000000000..933bf66cc --- /dev/null +++ b/web/src/vite-env.d.ts @@ -0,0 +1,5 @@ +declare module '*.vue' { + import { ComponentOptions } from 'vue' + const componentOptions: ComponentOptions + export default componentOptions +} diff --git a/web/tailwind.config.js b/web/tailwind.config.js new file mode 100644 index 000000000..c02d47019 --- /dev/null +++ b/web/tailwind.config.js @@ -0,0 +1,12 @@ +import typography from '@tailwindcss/typography' + +/** @type {import('tailwindcss').Config} */ +export default { + content: ['./index.html', './src/**/*.{vue,js,ts,jsx,tsx}'], + theme: { + extend: {}, + }, + plugins: [ + typography, + ], +} \ No newline at end of file diff --git a/web/tsconfig.app.json b/web/tsconfig.app.json new file mode 100644 index 000000000..e14c754d3 --- /dev/null +++ b/web/tsconfig.app.json @@ -0,0 +1,14 @@ +{ + "extends": "@vue/tsconfig/tsconfig.dom.json", + "include": ["env.d.ts", "src/**/*", "src/**/*.vue"], + "exclude": ["src/**/__tests__/*"], + "compilerOptions": { + "composite": true, + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", + + "baseUrl": ".", + "paths": { + "@/*": ["./src/*"] + } + } +} diff --git a/web/tsconfig.json b/web/tsconfig.json new file mode 100644 index 000000000..38b270a4f --- /dev/null +++ b/web/tsconfig.json @@ -0,0 +1,19 @@ +{ + "files": [], + "references": [ + { + "path": "./tsconfig.node.json" + }, + { + "path": "./tsconfig.app.json" + } + ], + "compilerOptions": { + "baseUrl": "./", + "paths": { + "@/*": ["src/*"] + }, + "noImplicitAny": false, + "strict":false + } +} diff --git a/web/tsconfig.node.json b/web/tsconfig.node.json new file mode 100644 index 000000000..f09406303 --- /dev/null +++ b/web/tsconfig.node.json @@ -0,0 +1,19 @@ +{ + "extends": "@tsconfig/node20/tsconfig.json", + "include": [ + "vite.config.*", + "vitest.config.*", + "cypress.config.*", + "nightwatch.conf.*", + "playwright.config.*" + ], + "compilerOptions": { + "composite": true, + "noEmit": true, + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + + "module": "ESNext", + "moduleResolution": "Bundler", + "types": ["node"] + } +} diff --git a/web/vercel.json b/web/vercel.json new file mode 100644 index 000000000..afea4aed5 --- /dev/null +++ b/web/vercel.json @@ -0,0 +1,3 @@ +{ + "rewrites": [{ "source": "/:path*", "destination": "/index.html" }] +} diff --git a/web/vite.config.ts b/web/vite.config.ts new file mode 100644 index 000000000..b49814fef --- /dev/null +++ b/web/vite.config.ts @@ -0,0 +1,24 @@ +import { fileURLToPath, URL } from 'node:url' + +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' +import vueJsx from '@vitejs/plugin-vue-jsx' +import vueDevTools from 'vite-plugin-vue-devtools' +import tailwindcss from 'tailwindcss' +import autoprefixer from 'autoprefixer' +export default defineConfig({ + plugins: [vue(), vueJsx(), vueDevTools()], + resolve: { + alias: { + '@': fileURLToPath(new URL('./src', import.meta.url)) + } + }, + css: { + postcss: { + plugins: [tailwindcss, autoprefixer] + } + }, + build: { + outDir: '../themes/2025', + }, +}) From aeb916e8088e79c1bea55e5924289d132dd3a897 Mon Sep 17 00:00:00 2001 From: Robert Date: Thu, 26 Jun 2025 00:10:36 +0800 Subject: [PATCH 2/4] Update --- apps/base/utils.py | 23 ++++---- core/settings.py | 2 +- core/tasks.py | 4 +- web/src/layout/AdminLayout/AdminLayout.vue | 2 +- web/src/utils/clipboard.ts | 59 ++++++++++++--------- web/src/views/RetrievewFileView.vue | 14 ++--- web/src/views/SendFileView.vue | 53 ++++++++++-------- web/src/views/manage/DashboardView.vue | 8 +-- web/src/views/manage/LoginView.vue | 4 +- web/src/views/manage/SystemSettingsView.vue | 2 +- 10 files changed, 97 insertions(+), 74 deletions(-) diff --git a/apps/base/utils.py b/apps/base/utils.py index 60a918959..798a937a7 100644 --- a/apps/base/utils.py +++ b/apps/base/utils.py @@ -9,7 +9,12 @@ from apps.base.dependencies import IPRateLimit from apps.base.models import FileCodes from core.settings import settings -from core.utils import get_random_num, get_random_string, max_save_times_desc, sanitize_filename +from core.utils import ( + get_random_num, + get_random_string, + max_save_times_desc, + sanitize_filename, +) async def get_file_path_name(file: UploadFile) -> Tuple[str, str, str, str, str]: @@ -18,11 +23,9 @@ async def get_file_path_name(file: UploadFile) -> Tuple[str, str, str, str, str] storage_path = settings.storage_path.strip("/") # 移除开头和结尾的斜杠 file_uuid = uuid.uuid4().hex filename = await sanitize_filename(file.filename) + base_dir = storage_path if storage_path else "share/data" # 使用 UUID 作为子目录名 - base_path = f"share/data/{today.strftime('%Y/%m/%d')}/{file_uuid}" - - # 如果设置了存储路径,将其添加到基础路径中 - path = f"{storage_path}/{base_path}" if storage_path else base_path + path = f"{base_dir}/{today.strftime('%Y/%m/%d')}/{file_uuid}" prefix, suffix = os.path.splitext(filename) # 保持原始文件名 @@ -30,19 +33,21 @@ async def get_file_path_name(file: UploadFile) -> Tuple[str, str, str, str, str] return path, suffix, prefix, filename, save_path -async def get_chunk_file_path_name(file_name: str, upload_id: str) -> Tuple[str, str, str, str, str]: +async def get_chunk_file_path_name( + file_name: str, upload_id: str +) -> Tuple[str, str, str, str, str]: """获取切片文件的路径和文件名""" today = datetime.datetime.now() storage_path = settings.storage_path.strip("/") # 移除开头和结尾的斜杠 - base_path = f"share/data/{today.strftime('%Y/%m/%d')}/{upload_id}" - path = f"{storage_path}/{base_path}" if storage_path else base_path + base_dir = storage_path if storage_path else "share/data" + path = f"{base_dir}/{today.strftime('%Y/%m/%d')}/{upload_id}" prefix, suffix = os.path.splitext(file_name) save_path = f"{path}/{prefix}{suffix}" return path, suffix, prefix, file_name, save_path async def get_expire_info( - expire_value: int, expire_style: str + expire_value: int, expire_style: str ) -> Tuple[Optional[datetime.datetime], int, int, str]: """获取过期信息""" expired_count, used_count = -1, 0 diff --git a/core/settings.py b/core/settings.py index 3aec39a95..4c87613dd 100644 --- a/core/settings.py +++ b/core/settings.py @@ -12,7 +12,7 @@ DEFAULT_CONFIG = { "file_storage": "local", - "storage_path": "", + "storage_path": "share/data", "name": "Chewie Transfer", "description": "开箱即用的文件快传系统", "notify_title": "系统通知", diff --git a/core/tasks.py b/core/tasks.py index f3da5a635..b62709f78 100644 --- a/core/tasks.py +++ b/core/tasks.py @@ -21,7 +21,9 @@ async def delete_expire_files(): try: # 遍历 share目录下的所有文件夹,删除空的文件夹,并判断父目录是否为空,如果为空也删除 if settings.file_storage == "local": - for root, dirs, files in os.walk(f"{data_root}/share/data"): + storage_path = settings.storage_path.strip("/") + base_dir = storage_path if storage_path else "share/data" + for root, dirs, files in os.walk(f"{data_root}/{base_dir}"): if not dirs and not files: os.rmdir(root) await ip_limit["error"].remove_expired_ip() diff --git a/web/src/layout/AdminLayout/AdminLayout.vue b/web/src/layout/AdminLayout/AdminLayout.vue index 088b3f8ce..9eba94eed 100644 --- a/web/src/layout/AdminLayout/AdminLayout.vue +++ b/web/src/layout/AdminLayout/AdminLayout.vue @@ -53,7 +53,7 @@
    -
    @@ -69,7 +69,7 @@
    @@ -83,7 +83,7 @@

    - 取件记录 + 领粮记录

    + :class="[isDarkMode ? 'bg-gray-800 bg-opacity-50' : 'bg-gray-200 bg-opacity-50']">
    -
    -
    +
    +

    取件码

    - 点击复制wget命令 + {{ selectedRecord.type === 'file' ? "点击复制wget命令" : "点击复制文本内容" }}

    + :class="[isDarkMode ? 'bg-gray-800 bg-opacity-50' : 'bg-gray-200 bg-opacity-50']">
    @@ -402,7 +404,7 @@ import BorderProgressBar from '@/components/common/BorderProgressBar.vue' import QRCode from 'qrcode.vue' import { useFileDataStore } from '@/stores/fileData' import api from '@/utils/api' -import { copyRetrieveLink, copyRetrieveCode, copyWgetCommand } from '@/utils/clipboard' +import { copyRetrieveLink, copyRetrieveCode, copyWgetCommand, copyTextCommand } from '@/utils/clipboard' import { getStorageUnit } from '@/utils/convert' const config: any = JSON.parse(localStorage.getItem('config') || '{}') @@ -769,6 +771,7 @@ const handleSubmit = async () => { id: Date.now(), type: sendType.value, filename: fileName, + text: sendType.value === 'text' ? textContent.value : '', date: new Date().toISOString().split('T')[0], size: sendType.value === 'text' @@ -916,4 +919,8 @@ select option:hover { .dark select option:hover { background-color: rgb(99 102 241 / 0.2); } + +.shadow-sm { + box-shadow: none !important; +} diff --git a/web/src/views/manage/DashboardView.vue b/web/src/views/manage/DashboardView.vue index 9fbcc0edd..4ce6945c5 100644 --- a/web/src/views/manage/DashboardView.vue +++ b/web/src/views/manage/DashboardView.vue @@ -6,7 +6,7 @@
    -
    @@ -29,7 +29,7 @@

    -
    @@ -53,7 +53,7 @@

    -
    @@ -74,7 +74,7 @@

    -
    diff --git a/web/src/views/manage/LoginView.vue b/web/src/views/manage/LoginView.vue index 9ad9268b6..63a6d81dc 100644 --- a/web/src/views/manage/LoginView.vue +++ b/web/src/views/manage/LoginView.vue @@ -33,12 +33,12 @@
    -
    +
    +

    From 8e9549f52d0edfc39c764d908bf9470b964220be Mon Sep 17 00:00:00 2001 From: Robert Date: Thu, 26 Jun 2025 11:18:41 +0800 Subject: [PATCH 3/4] Update theme --- apps/admin/schemas.py | 1 + apps/admin/views.py | 3 + apps/base/views.py | 99 +++++++++++-------- core/settings.py | 2 +- ...ut-BSI80wlV.js => AdminLayout-CJLK8Deo.js} | 4 +- themes/2025/assets/AdminLayout-DlX3CUuP.js | 21 ---- ...-CykWLsDF.js => DashboardView-CS_fHNo8.js} | 4 +- themes/2025/assets/DashboardView-DHkW9fcL.js | 11 --- themes/2025/assets/FileManageView-3VMR54FC.js | 26 ----- themes/2025/assets/FileManageView-BLdG4lo7.js | 26 ----- themes/2025/assets/FileManageView-XLvHYGa1.js | 26 +++++ themes/2025/assets/LoginView-BksgElri.js | 1 + themes/2025/assets/LoginView-CgWlhClB.css | 1 + themes/2025/assets/LoginView-DXxv6UDD.js | 1 - themes/2025/assets/LoginView-T1LQBbzg.js | 1 - themes/2025/assets/LoginView-zMyguVQQ.css | 1 - .../assets/RetrievewFileView-BgLHFGkc.css | 1 - ...PLNPu.js => RetrievewFileView-Cwnagjpx.js} | 50 +++++----- .../assets/RetrievewFileView-DCUv-G63.css | 1 + .../2025/assets/RetrievewFileView-DzS7C4LK.js | 76 -------------- themes/2025/assets/SendFileView-9SD7mX5s.css | 1 + themes/2025/assets/SendFileView-DFaiiDlV.css | 1 - themes/2025/assets/SendFileView-DJlusruR.js | 31 ------ themes/2025/assets/SendFileView-DsSIurce.js | 31 ------ themes/2025/assets/SendFileView-VzXyxiyT.js | 26 +++++ ...uhLF.js => SystemSettingsView-D7a-G8Xk.js} | 2 +- .../assets/SystemSettingsView-DJ12QIQD.js | 1 - themes/2025/assets/box-Ty09a89y.js | 6 -- .../{box-Btnwq7DC.js => box-tSoVvdHE.js} | 2 +- ...oard-BhvW87y2.js => clipboard-ClFPPG_0.js} | 4 +- themes/2025/assets/clipboard-WGJncgVO.js | 21 ---- themes/2025/assets/file-D8mQlyUF.js | 6 -- .../{file-D-r2HShG.js => file-d22J40ax.js} | 2 +- ...ive-C37_tD5A.js => hard-drive-7q_tW7VM.js} | 2 +- themes/2025/assets/hard-drive-X0PLCy-z.js | 6 -- .../{index-C-4-823a.js => index-BAgz5Ib8.js} | 4 +- themes/2025/assets/index-BILSbgLN.css | 1 - themes/2025/assets/index-DKQ1YPO4.js | 86 ---------------- themes/2025/assets/index-DVPU5oGt.css | 1 + themes/2025/assets/index-DpAQhrHl.css | 1 - themes/2025/assets/trash-CAImX6bg.js | 6 -- themes/2025/assets/trash-FNvP9-P8.js | 6 -- themes/2025/assets/trash-R3aCwIiM.js | 11 +++ themes/2025/index.html | 4 +- web/src/utils/clipboard.ts | 16 +-- web/src/views/RetrievewFileView.vue | 41 ++++---- web/src/views/SendFileView.vue | 26 ++--- web/src/views/manage/FileManageView.vue | 56 +++++++++-- web/vite.config.ts | 3 +- 49 files changed, 268 insertions(+), 492 deletions(-) rename themes/2025/assets/{AdminLayout-BSI80wlV.js => AdminLayout-CJLK8Deo.js} (96%) delete mode 100644 themes/2025/assets/AdminLayout-DlX3CUuP.js rename themes/2025/assets/{DashboardView-CykWLsDF.js => DashboardView-CS_fHNo8.js} (92%) delete mode 100644 themes/2025/assets/DashboardView-DHkW9fcL.js delete mode 100644 themes/2025/assets/FileManageView-3VMR54FC.js delete mode 100644 themes/2025/assets/FileManageView-BLdG4lo7.js create mode 100644 themes/2025/assets/FileManageView-XLvHYGa1.js create mode 100644 themes/2025/assets/LoginView-BksgElri.js create mode 100644 themes/2025/assets/LoginView-CgWlhClB.css delete mode 100644 themes/2025/assets/LoginView-DXxv6UDD.js delete mode 100644 themes/2025/assets/LoginView-T1LQBbzg.js delete mode 100644 themes/2025/assets/LoginView-zMyguVQQ.css delete mode 100644 themes/2025/assets/RetrievewFileView-BgLHFGkc.css rename themes/2025/assets/{RetrievewFileView-DyKPLNPu.js => RetrievewFileView-Cwnagjpx.js} (57%) create mode 100644 themes/2025/assets/RetrievewFileView-DCUv-G63.css delete mode 100644 themes/2025/assets/RetrievewFileView-DzS7C4LK.js create mode 100644 themes/2025/assets/SendFileView-9SD7mX5s.css delete mode 100644 themes/2025/assets/SendFileView-DFaiiDlV.css delete mode 100644 themes/2025/assets/SendFileView-DJlusruR.js delete mode 100644 themes/2025/assets/SendFileView-DsSIurce.js create mode 100644 themes/2025/assets/SendFileView-VzXyxiyT.js rename themes/2025/assets/{SystemSettingsView-BvNjuhLF.js => SystemSettingsView-D7a-G8Xk.js} (99%) delete mode 100644 themes/2025/assets/SystemSettingsView-DJ12QIQD.js delete mode 100644 themes/2025/assets/box-Ty09a89y.js rename themes/2025/assets/{box-Btnwq7DC.js => box-tSoVvdHE.js} (90%) rename themes/2025/assets/{clipboard-BhvW87y2.js => clipboard-ClFPPG_0.js} (89%) delete mode 100644 themes/2025/assets/clipboard-WGJncgVO.js delete mode 100644 themes/2025/assets/file-D8mQlyUF.js rename themes/2025/assets/{file-D-r2HShG.js => file-d22J40ax.js} (88%) rename themes/2025/assets/{hard-drive-C37_tD5A.js => hard-drive-7q_tW7VM.js} (92%) delete mode 100644 themes/2025/assets/hard-drive-X0PLCy-z.js rename themes/2025/assets/{index-C-4-823a.js => index-BAgz5Ib8.js} (99%) delete mode 100644 themes/2025/assets/index-BILSbgLN.css delete mode 100644 themes/2025/assets/index-DKQ1YPO4.js create mode 100644 themes/2025/assets/index-DVPU5oGt.css delete mode 100644 themes/2025/assets/index-DpAQhrHl.css delete mode 100644 themes/2025/assets/trash-CAImX6bg.js delete mode 100644 themes/2025/assets/trash-FNvP9-P8.js create mode 100644 themes/2025/assets/trash-R3aCwIiM.js diff --git a/apps/admin/schemas.py b/apps/admin/schemas.py index 3dcb0c7a5..77636ab5c 100644 --- a/apps/admin/schemas.py +++ b/apps/admin/schemas.py @@ -26,5 +26,6 @@ class UpdateFileData(BaseModel): code: Optional[str] = None prefix: Optional[str] = None suffix: Optional[str] = None + text: Optional[str] = None expired_at: Optional[datetime.datetime] = None expired_count: Optional[int] = None diff --git a/apps/admin/views.py b/apps/admin/views.py index f5ed34c81..421685bf8 100644 --- a/apps/admin/views.py +++ b/apps/admin/views.py @@ -171,6 +171,9 @@ async def update_file( update_data["expired_at"] = data.expired_at if data.expired_count is not None and data.expired_count != file_code.expired_count: update_data["expired_count"] = data.expired_count + if data.text is not None and data.text != file_code.text: + update_data["text"] = data.text + await file_code.update_from_dict(update_data).save() return APIResponse(detail="更新成功") diff --git a/apps/base/views.py b/apps/base/views.py index 5d41eb3d0..b6bf3c136 100644 --- a/apps/base/views.py +++ b/apps/base/views.py @@ -7,7 +7,12 @@ from apps.admin.dependencies import share_required_login from apps.base.models import FileCodes, UploadChunk from apps.base.schemas import SelectFileModel, InitChunkUploadModel, CompleteUploadModel -from apps.base.utils import get_expire_info, get_file_path_name, ip_limit, get_chunk_file_path_name +from apps.base.utils import ( + get_expire_info, + get_file_path_name, + ip_limit, + get_chunk_file_path_name, +) from core.response import APIResponse from core.settings import settings from core.storage import storages, FileStorageInterface @@ -30,10 +35,10 @@ async def create_file_code(code, **kwargs): @share_api.post("/text/", dependencies=[Depends(share_required_login)]) async def share_text( - text: str = Form(...), - expire_value: int = Form(default=1, gt=0), - expire_style: str = Form(default="day"), - ip: str = Depends(ip_limit["upload"]), + text: str = Form(...), + expire_value: int = Form(default=1, gt=0), + expire_style: str = Form(default="day"), + ip: str = Depends(ip_limit["upload"]), ): text_size = len(text.encode("utf-8")) max_txt_size = 222 * 1024 @@ -58,10 +63,10 @@ async def share_text( @share_api.post("/file/", dependencies=[Depends(share_required_login)]) async def share_file( - expire_value: int = Form(default=1, gt=0), - expire_style: str = Form(default="day"), - file: UploadFile = File(...), - ip: str = Depends(ip_limit["upload"]), + expire_value: int = Form(default=1, gt=0), + expire_style: str = Form(default="day"), + file: UploadFile = File(...), + ip: str = Depends(ip_limit["upload"]), ): await validate_file_size(file, settings.uploadSize) @@ -134,6 +139,7 @@ async def select_file(data: SelectFileModel, ip: str = Depends(ip_limit["error"] "code": file_code.code, "name": file_code.prefix + file_code.suffix, "size": file_code.size, + "type": "text" if file_code.text else "file", "text": ( file_code.text if file_code.text is not None @@ -192,23 +198,27 @@ async def init_chunk_upload(data: InitChunkUploadModel): ) # 获取已上传的分片列表 uploaded_chunks = await UploadChunk.filter( - upload_id=upload_id, - completed=True - ).values_list('chunk_index', flat=True) - return APIResponse(detail={ - "existed": False, - "upload_id": upload_id, - "chunk_size": data.chunk_size, - "total_chunks": total_chunks, - "uploaded_chunks": uploaded_chunks - }) - - -@chunk_api.post("/upload/chunk/{upload_id}/{chunk_index}", dependencies=[Depends(share_required_login)]) + upload_id=upload_id, completed=True + ).values_list("chunk_index", flat=True) + return APIResponse( + detail={ + "existed": False, + "upload_id": upload_id, + "chunk_size": data.chunk_size, + "total_chunks": total_chunks, + "uploaded_chunks": uploaded_chunks, + } + ) + + +@chunk_api.post( + "/upload/chunk/{upload_id}/{chunk_index}", + dependencies=[Depends(share_required_login)], +) async def upload_chunk( - upload_id: str, - chunk_index: int, - chunk: UploadFile = File(...), + upload_id: str, + chunk_index: int, + chunk: UploadFile = File(...), ): # 获取上传会话信息 chunk_info = await UploadChunk.filter(upload_id=upload_id, chunk_index=-1).first() @@ -228,24 +238,30 @@ async def upload_chunk( upload_id=upload_id, chunk_index=chunk_index, defaults={ - 'chunk_hash': chunk_hash, - 'completed': True, - 'file_size': chunk_info.file_size, - 'total_chunks': chunk_info.total_chunks, - 'chunk_size': chunk_info.chunk_size, - 'file_name': chunk_info.file_name - } + "chunk_hash": chunk_hash, + "completed": True, + "file_size": chunk_info.file_size, + "total_chunks": chunk_info.total_chunks, + "chunk_size": chunk_info.chunk_size, + "file_name": chunk_info.file_name, + }, ) # 获取文件路径 - _, _, _, _, save_path = await get_chunk_file_path_name(chunk_info.file_name, upload_id) + _, _, _, _, save_path = await get_chunk_file_path_name( + chunk_info.file_name, upload_id + ) # 保存分片到存储 storage = storages[settings.file_storage]() await storage.save_chunk(upload_id, chunk_index, chunk_data, chunk_hash, save_path) return APIResponse(detail={"chunk_hash": chunk_hash}) -@chunk_api.post("/upload/complete/{upload_id}", dependencies=[Depends(share_required_login)]) -async def complete_upload(upload_id: str, data: CompleteUploadModel, ip: str = Depends(ip_limit["upload"])): +@chunk_api.post( + "/upload/complete/{upload_id}", dependencies=[Depends(share_required_login)] +) +async def complete_upload( + upload_id: str, data: CompleteUploadModel, ip: str = Depends(ip_limit["upload"]) +): # 获取上传基本信息 chunk_info = await UploadChunk.filter(upload_id=upload_id, chunk_index=-1).first() if not chunk_info: @@ -254,17 +270,20 @@ async def complete_upload(upload_id: str, data: CompleteUploadModel, ip: str = D storage = storages[settings.file_storage]() # 验证所有分片 completed_chunks = await UploadChunk.filter( - upload_id=upload_id, - completed=True + upload_id=upload_id, completed=True ).count() if completed_chunks != chunk_info.total_chunks: raise HTTPException(status.HTTP_400_BAD_REQUEST, detail="分片不完整") # 获取文件路径 - path, suffix, prefix, _, save_path = await get_chunk_file_path_name(chunk_info.file_name, upload_id) + path, suffix, prefix, _, save_path = await get_chunk_file_path_name( + chunk_info.file_name, upload_id + ) # 合并文件并计算哈希 await storage.merge_chunks(upload_id, chunk_info, save_path) # 创建文件记录 - expired_at, expired_count, used_count, code = await get_expire_info(data.expire_value, data.expire_style) + expired_at, expired_count, used_count, code = await get_expire_info( + data.expire_value, data.expire_style + ) await FileCodes.create( code=code, file_hash=chunk_info.chunk_hash, @@ -277,7 +296,7 @@ async def complete_upload(upload_id: str, data: CompleteUploadModel, ip: str = D file_path=path, uuid_file_name=f"{prefix}{suffix}", prefix=prefix, - suffix=suffix + suffix=suffix, ) # 清理临时文件 await storage.clean_chunks(upload_id, save_path) diff --git a/core/settings.py b/core/settings.py index 4c87613dd..9fcd346b7 100644 --- a/core/settings.py +++ b/core/settings.py @@ -14,7 +14,7 @@ "file_storage": "local", "storage_path": "share/data", "name": "Chewie Transfer", - "description": "开箱即用的文件快传系统", + "description": "属于Chewie的文件投喂小站", "notify_title": "系统通知", "notify_content": '欢迎使用Chewie Transfer,本网站构建自开源项目 Github ,欢迎Star和Fork。', "page_explain": "请勿上传或分享违法内容。根据《中华人民共和国网络安全法》、《中华人民共和国刑法》、《中华人民共和国治安管理处罚法》等相关规定。 传播或存储违法、违规内容,会受到相关处罚,严重者将承担刑事责任。本站坚决配合相关部门,确保网络内容的安全,和谐,打造绿色网络环境。", diff --git a/themes/2025/assets/AdminLayout-BSI80wlV.js b/themes/2025/assets/AdminLayout-CJLK8Deo.js similarity index 96% rename from themes/2025/assets/AdminLayout-BSI80wlV.js rename to themes/2025/assets/AdminLayout-CJLK8Deo.js index 76c0eca14..324615a39 100644 --- a/themes/2025/assets/AdminLayout-BSI80wlV.js +++ b/themes/2025/assets/AdminLayout-CJLK8Deo.js @@ -1,4 +1,4 @@ -import{c as i,d as k,r as h,o as u,K as v,a as x,b as t,n as o,h as e,i as w,g as n,X as _,F as M,s as C,y as L,B as z,A as B,x as D,L as F,t as I,e as d}from"./index-C-4-823a.js";import{B as j}from"./box-Btnwq7DC.js";/** +import{c as i,d as k,r as h,o as u,K as v,a as x,b as t,n as o,h as e,i as w,g as n,X as _,F as M,s as C,y as L,B as z,A as B,x as D,L as F,t as I,e as d}from"./index-BAgz5Ib8.js";import{B as j}from"./box-tSoVvdHE.js";/** * @license lucide-vue-next v0.445.0 - ISC * * This source code is licensed under the ISC license. @@ -18,4 +18,4 @@ import{c as i,d as k,r as h,o as u,K as v,a as x,b as t,n as o,h as e,i as w,g a * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const E=i("MenuIcon",[["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}],["line",{x1:"4",x2:"20",y1:"6",y2:"6",key:"1owob3"}],["line",{x1:"4",x2:"20",y1:"18",y2:"18",key:"yk5zj1"}]]),N={class:"flex items-center"},R={class:"rounded-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 p-1 animate-spin-slow"},Z={class:"flex-1 overflow-y-auto"},q={class:"p-4 space-y-2"},T=["onClick"],H={class:"flex-1 flex flex-col min-h-screen"},K={class:"flex items-center justify-between h-16 px-4"},G=k({__name:"AdminLayout",setup(O){const c=z(),a=w("isDarkMode"),m=[{id:"Dashboard",name:"仪表盘",icon:A,redirect:"/admin/dashboard"},{id:"FileManage",name:"文件管理",icon:V,redirect:"/admin/files"},{id:"Settings",name:"系统设置",icon:S,redirect:"/admin/settings"}],r=h(!0),y=()=>{r.value=!r.value},l=()=>{window.innerWidth>=1024?r.value=!0:r.value=!1};u(()=>{l(),window.addEventListener("resize",l)}),v(()=>{window.removeEventListener("resize",l)});const p=h({page:1,size:10,total:0}),b=async()=>{try{p.value.total=85}catch(g){console.error("加载文件列表失败:",g)}};return u(()=>{b()}),(g,U)=>{const f=L("router-view");return d(),x("div",{class:o(["min-h-screen flex flex-col lg:flex-row transition-colors duration-300",[e(a)?"bg-gray-900":"bg-gray-50"]])},[t("aside",{class:o(["fixed inset-y-0 left-0 z-50 w-64 transform transition-all duration-300 ease-in-out lg:relative lg:translate-x-0 border-r",[e(a)?"bg-gray-800 bg-opacity-90 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200",{"-translate-x-full":!r.value}]])},[t("div",{class:o(["flex items-center justify-between h-16 px-4 border-b",[e(a)?"border-gray-700":"border-gray-200"]])},[t("div",N,[t("div",R,[t("div",{class:o(["rounded-full p-1",[e(a)?"bg-gray-800":"bg-white"]])},[n(e(j),{class:o(["w-6 h-6",[e(a)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2)]),t("h1",{class:o(["ml-2 text-xl font-semibold",[e(a)?"text-white":"text-gray-800"]])}," Chewie Transfer ",2)]),t("button",{onClick:y,class:"lg:hidden"},[n(e(_),{class:o(["w-6 h-6",[e(a)?"text-gray-400":"text-gray-600"]])},null,8,["class"])])],2),t("nav",Z,[t("ul",q,[(d(),x(M,null,C(m,s=>t("li",{key:s.id,style:{cursor:"pointer"}},[t("a",{onClick:W=>e(c).push(s.redirect),class:o(["flex items-center p-2 rounded-lg transition-colors duration-200",[e(c).currentRoute.value.name===s.id?e(a)?"bg-indigo-900 text-indigo-400":"bg-indigo-100 text-indigo-600":e(a)?"text-gray-400 hover:bg-gray-700":"text-gray-600 hover:bg-gray-100"]])},[(d(),B(F(s.icon),{class:"w-5 h-5 mr-3"})),D(" "+I(s.name),1)],10,T)])),64))])])],2),t("div",H,[t("header",{class:o(["shadow-md border-b transition-colors duration-300",[e(a)?"bg-gray-800 border-gray-700":"bg-white border-gray-200"]])},[t("div",K,[t("button",{onClick:y,class:"lg:hidden"},[n(e(E),{class:o(["w-6 h-6",[e(a)?"text-gray-400":"text-gray-600"]])},null,8,["class"])])])],2),t("main",{class:o(["flex-1 p-6 transition-colors duration-300",[e(a)?"bg-gray-900":"bg-gray-50"]]),style:{padding:"0rem 0rem 1.5rem 0rem"}},[n(f)],2)])],2)}}});export{G as default}; + */const E=i("MenuIcon",[["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}],["line",{x1:"4",x2:"20",y1:"6",y2:"6",key:"1owob3"}],["line",{x1:"4",x2:"20",y1:"18",y2:"18",key:"yk5zj1"}]]),N={class:"flex items-center"},R={class:"rounded-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 p-1 animate-spin-slow"},Z={class:"flex-1 overflow-y-auto"},q={class:"p-4 space-y-2"},T=["onClick"],H={class:"flex-1 flex flex-col min-h-screen"},K={class:"flex items-center justify-between h-16 px-4"},G=k({__name:"AdminLayout",setup(O){const c=z(),a=w("isDarkMode"),m=[{id:"Dashboard",name:"仪表盘",icon:A,redirect:"/admin/dashboard"},{id:"FileManage",name:"文件管理",icon:V,redirect:"/admin/files"},{id:"Settings",name:"系统设置",icon:S,redirect:"/admin/settings"}],r=h(!0),y=()=>{r.value=!r.value},l=()=>{window.innerWidth>=1024?r.value=!0:r.value=!1};u(()=>{l(),window.addEventListener("resize",l)}),v(()=>{window.removeEventListener("resize",l)});const p=h({page:1,size:10,total:0}),b=async()=>{try{p.value.total=85}catch(g){console.error("加载文件列表失败:",g)}};return u(()=>{b()}),(g,U)=>{const f=L("router-view");return d(),x("div",{class:o(["min-h-screen flex flex-col lg:flex-row transition-colors duration-300",[e(a)?"bg-gray-900":"bg-gray-50"]])},[t("aside",{class:o(["fixed inset-y-0 left-0 z-50 w-64 transform transition-all duration-300 ease-in-out lg:relative lg:translate-x-0 border-r",[e(a)?"bg-gray-800 bg-opacity-90 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200",{"-translate-x-full":!r.value}]])},[t("div",{class:o(["flex items-center justify-between h-16 px-4 border-b",[e(a)?"border-gray-700":"border-gray-200"]])},[t("div",N,[t("div",R,[t("div",{class:o(["rounded-full p-1",[e(a)?"bg-gray-800":"bg-white"]])},[n(e(j),{class:o(["w-6 h-6",[e(a)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2)]),t("h1",{class:o(["ml-2 text-xl font-semibold",[e(a)?"text-white":"text-gray-800"]])}," Chewie Transfer ",2)]),t("button",{onClick:y,class:"lg:hidden"},[n(e(_),{class:o(["w-6 h-6",[e(a)?"text-gray-400":"text-gray-600"]])},null,8,["class"])])],2),t("nav",Z,[t("ul",q,[(d(),x(M,null,C(m,s=>t("li",{key:s.id,style:{cursor:"pointer"}},[t("a",{onClick:W=>e(c).push(s.redirect),class:o(["flex items-center p-2 rounded-lg transition-colors duration-200",[e(c).currentRoute.value.name===s.id?e(a)?"bg-indigo-900 text-indigo-400":"bg-indigo-100 text-indigo-600":e(a)?"text-gray-400 hover:bg-gray-700":"text-gray-600 hover:bg-gray-100"]])},[(d(),B(F(s.icon),{class:"w-5 h-5 mr-3"})),D(" "+I(s.name),1)],10,T)])),64))])])],2),t("div",H,[t("header",{class:o(["shadow-sm border-b transition-colors duration-300",[e(a)?"bg-gray-800 border-gray-700":"bg-white border-gray-200"]])},[t("div",K,[t("button",{onClick:y,class:"lg:hidden"},[n(e(E),{class:o(["w-6 h-6",[e(a)?"text-gray-400":"text-gray-600"]])},null,8,["class"])])])],2),t("main",{class:o(["flex-1 p-6 transition-colors duration-300",[e(a)?"bg-gray-900":"bg-gray-50"]]),style:{padding:"0rem 0rem 1.5rem 0rem"}},[n(f)],2)])],2)}}});export{G as default}; diff --git a/themes/2025/assets/AdminLayout-DlX3CUuP.js b/themes/2025/assets/AdminLayout-DlX3CUuP.js deleted file mode 100644 index 4dd4c9a3a..000000000 --- a/themes/2025/assets/AdminLayout-DlX3CUuP.js +++ /dev/null @@ -1,21 +0,0 @@ -import{c as i,d as k,r as h,o as u,K as v,a as x,b as t,n as o,h as e,i as w,g as n,X as _,F as M,s as C,y as L,B as z,A as B,x as D,L as F,t as I,e as d}from"./index-DKQ1YPO4.js";import{B as j}from"./box-Ty09a89y.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const S=i("CogIcon",[["path",{d:"M12 20a8 8 0 1 0 0-16 8 8 0 0 0 0 16Z",key:"sobvz5"}],["path",{d:"M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4Z",key:"11i496"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 22v-2",key:"1osdcq"}],["path",{d:"m17 20.66-1-1.73",key:"eq3orb"}],["path",{d:"M11 10.27 7 3.34",key:"16pf9h"}],["path",{d:"m20.66 17-1.73-1",key:"sg0v6f"}],["path",{d:"m3.34 7 1.73 1",key:"1ulond"}],["path",{d:"M14 12h8",key:"4f43i9"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"m20.66 7-1.73 1",key:"1ow05n"}],["path",{d:"m3.34 17 1.73-1",key:"nuk764"}],["path",{d:"m17 3.34-1 1.73",key:"2wel8s"}],["path",{d:"m11 13.73-4 6.93",key:"794ttg"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const V=i("FolderIcon",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const A=i("LayoutDashboardIcon",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const E=i("MenuIcon",[["line",{x1:"4",x2:"20",y1:"12",y2:"12",key:"1e0a9i"}],["line",{x1:"4",x2:"20",y1:"6",y2:"6",key:"1owob3"}],["line",{x1:"4",x2:"20",y1:"18",y2:"18",key:"yk5zj1"}]]),N={class:"flex items-center"},R={class:"rounded-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 p-1 animate-spin-slow"},Z={class:"flex-1 overflow-y-auto"},q={class:"p-4 space-y-2"},T=["onClick"],H={class:"flex-1 flex flex-col min-h-screen"},K={class:"flex items-center justify-between h-16 px-4"},G=k({__name:"AdminLayout",setup(O){const c=z(),a=w("isDarkMode"),m=[{id:"Dashboard",name:"仪表盘",icon:A,redirect:"/admin/dashboard"},{id:"FileManage",name:"文件管理",icon:V,redirect:"/admin/files"},{id:"Settings",name:"系统设置",icon:S,redirect:"/admin/settings"}],r=h(!0),y=()=>{r.value=!r.value},l=()=>{window.innerWidth>=1024?r.value=!0:r.value=!1};u(()=>{l(),window.addEventListener("resize",l)}),v(()=>{window.removeEventListener("resize",l)});const p=h({page:1,size:10,total:0}),b=async()=>{try{p.value.total=85}catch(g){console.error("加载文件列表失败:",g)}};return u(()=>{b()}),(g,U)=>{const f=L("router-view");return d(),x("div",{class:o(["min-h-screen flex flex-col lg:flex-row transition-colors duration-300",[e(a)?"bg-gray-900":"bg-gray-50"]])},[t("aside",{class:o(["fixed inset-y-0 left-0 z-50 w-64 transform transition-all duration-300 ease-in-out lg:relative lg:translate-x-0 border-r",[e(a)?"bg-gray-800 bg-opacity-90 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200",{"-translate-x-full":!r.value}]])},[t("div",{class:o(["flex items-center justify-between h-16 px-4 border-b",[e(a)?"border-gray-700":"border-gray-200"]])},[t("div",N,[t("div",R,[t("div",{class:o(["rounded-full p-1",[e(a)?"bg-gray-800":"bg-white"]])},[n(e(j),{class:o(["w-6 h-6",[e(a)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2)]),t("h1",{class:o(["ml-2 text-xl font-semibold",[e(a)?"text-white":"text-gray-800"]])}," Chewie Transfer ",2)]),t("button",{onClick:y,class:"lg:hidden"},[n(e(_),{class:o(["w-6 h-6",[e(a)?"text-gray-400":"text-gray-600"]])},null,8,["class"])])],2),t("nav",Z,[t("ul",q,[(d(),x(M,null,C(m,s=>t("li",{key:s.id,style:{cursor:"pointer"}},[t("a",{onClick:W=>e(c).push(s.redirect),class:o(["flex items-center p-2 rounded-lg transition-colors duration-200",[e(c).currentRoute.value.name===s.id?e(a)?"bg-indigo-900 text-indigo-400":"bg-indigo-100 text-indigo-600":e(a)?"text-gray-400 hover:bg-gray-700":"text-gray-600 hover:bg-gray-100"]])},[(d(),B(F(s.icon),{class:"w-5 h-5 mr-3"})),D(" "+I(s.name),1)],10,T)])),64))])])],2),t("div",H,[t("header",{class:o(["shadow-md border-b transition-colors duration-300",[e(a)?"bg-gray-800 border-gray-700":"bg-white border-gray-200"]])},[t("div",K,[t("button",{onClick:y,class:"lg:hidden"},[n(e(E),{class:o(["w-6 h-6",[e(a)?"text-gray-400":"text-gray-600"]])},null,8,["class"])])])],2),t("main",{class:o(["flex-1 p-6 transition-colors duration-300",[e(a)?"bg-gray-900":"bg-gray-50"]]),style:{padding:"0rem 0rem 1.5rem 0rem"}},[n(f)],2)])],2)}}});export{G as default}; diff --git a/themes/2025/assets/DashboardView-CykWLsDF.js b/themes/2025/assets/DashboardView-CS_fHNo8.js similarity index 92% rename from themes/2025/assets/DashboardView-CykWLsDF.js rename to themes/2025/assets/DashboardView-CS_fHNo8.js index 55c52a1b4..4ee9cb7e0 100644 --- a/themes/2025/assets/DashboardView-CykWLsDF.js +++ b/themes/2025/assets/DashboardView-CS_fHNo8.js @@ -1,4 +1,4 @@ -import{c as y,d as m,J as b,o as h,a as f,b as t,n as a,h as e,i as v,t as n,g,x as w,C as _,e as C}from"./index-DKQ1YPO4.js";import{F}from"./file-D8mQlyUF.js";import{H as k}from"./hard-drive-C37_tD5A.js";/** +import{c as y,d as m,J as b,o as h,a as f,b as t,n as a,h as e,i as v,t as n,g,x as w,C as _,e as C}from"./index-BAgz5Ib8.js";import{F}from"./file-d22J40ax.js";import{H as k}from"./hard-drive-7q_tW7VM.js";/** * @license lucide-vue-next v0.445.0 - ISC * * This source code is licensed under the ISC license. @@ -8,4 +8,4 @@ import{c as y,d as m,J as b,o as h,a as f,b as t,n as a,h as e,i as v,t as n,g,x * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const z=y("UsersIcon",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]),D={class:"p-6 h-screen custom-scrollbar"},M={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8"},S={class:"flex items-center justify-between"},B={class:"flex items-center justify-between"},$={class:"flex items-center justify-between"},j={class:"flex items-center justify-between"},H={class:"text-sm mt-1"},N=m({__name:"DashboardView",setup(I){const s=v("isDarkMode"),o=b({totalFiles:0,storageUsed:0,yesterdayCount:0,todayCount:0,yesterdaySize:0,todaySize:0,sysUptime:0}),u=l=>{const i=new Date().getTime()-l,d=Math.floor(i/(24*60*60*1e3)),c=Math.floor(i%(24*60*60*1e3)/(60*60*1e3));return`${d}天${c}小时`},x=l=>{const r=parseInt(l)/1024,i=r/1024,d=i/1024,c=d/1024;return c>1?`${c.toFixed(2)}TB`:d>1?`${d.toFixed(2)}GB`:i>1?`${i.toFixed(2)}MB`:r>1?`${r.toFixed(2)}KB`:`${l}B`},p=async()=>{const l=await _.get("admin/dashboard");o.totalFiles=l.detail.totalFiles,o.storageUsed=x(l.detail.storageUsed),o.yesterdaySize=x(l.detail.yesterdaySize),o.todaySize=x(l.detail.todaySize),o.yesterdayCount=l.detail.yesterdayCount,o.todayCount=l.detail.todayCount,o.sysUptime=u(l.detail.sysUptime)};return h(()=>{p()}),(l,r)=>(C(),f("div",D,[t("h2",{class:a(["text-2xl font-bold mb-6",[e(s)?"text-white":"text-gray-800"]])}," 仪表盘 ",2),t("div",M,[t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",S,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 总文件数 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])},n(o.totalFiles),3)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-indigo-900":"bg-indigo-100"]])},[g(e(F),{class:a(["w-6 h-6",[e(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-green-400":"text-green-600"]])},[t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"昨天:",2),t("span",null,n(o.yesterdayCount),1),t("span",{class:a(["ml-2",[e(s)?"text-gray-400":"text-gray-600"]])},"今天:",2),t("span",null,n(o.todayCount),1)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",B,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 存储空间 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])},n(o.storageUsed),3)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-purple-900":"bg-purple-100"]])},[g(e(k),{class:a(["w-6 h-6",[e(s)?"text-purple-400":"text-purple-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-green-400":"text-green-600"]])},[t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"昨天:",2),t("span",null,n(o.yesterdaySize),1),t("span",{class:a(["ml-2",[e(s)?"text-gray-400":"text-gray-600"]])},"今天:",2),t("span",null,n(o.todaySize),1)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",$,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 活跃用户 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])}," 25 ",2)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-green-900":"bg-green-100"]])},[g(e(z),{class:a(["w-6 h-6",[e(s)?"text-green-400":"text-green-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-red-400":"text-red-600"]])},[r[0]||(r[0]=t("span",null,"↓ 5% ",-1)),t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"较上周",2)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",j,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 系统状态 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])}," 正常 ",2)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-blue-900":"bg-blue-100"]])},[g(e(U),{class:a(["w-6 h-6",[e(s)?"text-blue-400":"text-blue-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-gray-400":"text-gray-600"]])}," 服务器运行时间: "+n(o.sysUptime),3)],2)]),t("div",{class:a(["mt-auto text-center py-4",[e(s)?"text-gray-400":"text-gray-600"]])},[r[2]||(r[2]=t("p",{class:"text-sm"}," 版本 v2.0.3 更新时间:2025-03-03 ",-1)),t("p",H,[w(" © "+n(new Date().getFullYear())+" ",1),r[1]||(r[1]=t("a",{href:"https://github.com/vastsa/FileCodeBox"},"FileCodeBox",-1))])],2)]))}});export{N as default}; + */const z=y("UsersIcon",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]),D={class:"p-6 h-screen custom-scrollbar"},M={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8"},S={class:"flex items-center justify-between"},B={class:"flex items-center justify-between"},$={class:"flex items-center justify-between"},j={class:"flex items-center justify-between"},H={class:"text-sm mt-1"},N=m({__name:"DashboardView",setup(I){const s=v("isDarkMode"),o=b({totalFiles:0,storageUsed:0,yesterdayCount:0,todayCount:0,yesterdaySize:0,todaySize:0,sysUptime:0}),u=l=>{const i=new Date().getTime()-l,d=Math.floor(i/(24*60*60*1e3)),c=Math.floor(i%(24*60*60*1e3)/(60*60*1e3));return`${d}天${c}小时`},x=l=>{const r=parseInt(l)/1024,i=r/1024,d=i/1024,c=d/1024;return c>1?`${c.toFixed(2)}TB`:d>1?`${d.toFixed(2)}GB`:i>1?`${i.toFixed(2)}MB`:r>1?`${r.toFixed(2)}KB`:`${l}B`},p=async()=>{const l=await _.get("admin/dashboard");o.totalFiles=l.detail.totalFiles,o.storageUsed=x(l.detail.storageUsed),o.yesterdaySize=x(l.detail.yesterdaySize),o.todaySize=x(l.detail.todaySize),o.yesterdayCount=l.detail.yesterdayCount,o.todayCount=l.detail.todayCount,o.sysUptime=u(l.detail.sysUptime)};return h(()=>{p()}),(l,r)=>(C(),f("div",D,[t("h2",{class:a(["text-2xl font-bold mb-6",[e(s)?"text-white":"text-gray-800"]])}," 仪表盘 ",2),t("div",M,[t("div",{class:a(["p-6 rounded-lg shadow-sm transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",S,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 总文件数 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])},n(o.totalFiles),3)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-indigo-900":"bg-indigo-100"]])},[g(e(F),{class:a(["w-6 h-6",[e(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-green-400":"text-green-600"]])},[t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"昨天:",2),t("span",null,n(o.yesterdayCount),1),t("span",{class:a(["ml-2",[e(s)?"text-gray-400":"text-gray-600"]])},"今天:",2),t("span",null,n(o.todayCount),1)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-sm transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",B,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 存储空间 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])},n(o.storageUsed),3)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-purple-900":"bg-purple-100"]])},[g(e(k),{class:a(["w-6 h-6",[e(s)?"text-purple-400":"text-purple-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-green-400":"text-green-600"]])},[t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"昨天:",2),t("span",null,n(o.yesterdaySize),1),t("span",{class:a(["ml-2",[e(s)?"text-gray-400":"text-gray-600"]])},"今天:",2),t("span",null,n(o.todaySize),1)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-sm transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",$,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 活跃用户 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])}," 25 ",2)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-green-900":"bg-green-100"]])},[g(e(z),{class:a(["w-6 h-6",[e(s)?"text-green-400":"text-green-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-red-400":"text-red-600"]])},[r[0]||(r[0]=t("span",null,"↓ 5% ",-1)),t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"较上周",2)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-sm transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",j,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 系统状态 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])}," 正常 ",2)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-blue-900":"bg-blue-100"]])},[g(e(U),{class:a(["w-6 h-6",[e(s)?"text-blue-400":"text-blue-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-gray-400":"text-gray-600"]])}," 服务器运行时间: "+n(o.sysUptime),3)],2)]),t("div",{class:a(["mt-auto text-center py-4",[e(s)?"text-gray-400":"text-gray-600"]])},[r[2]||(r[2]=t("p",{class:"text-sm"}," 版本 v2.0.3 更新时间:2025-03-03 ",-1)),t("p",H,[w(" © "+n(new Date().getFullYear())+" ",1),r[1]||(r[1]=t("a",{href:"https://github.com/vastsa/FileCodeBox"},"FileCodeBox",-1))])],2)]))}});export{N as default}; diff --git a/themes/2025/assets/DashboardView-DHkW9fcL.js b/themes/2025/assets/DashboardView-DHkW9fcL.js deleted file mode 100644 index b8bbb3a2e..000000000 --- a/themes/2025/assets/DashboardView-DHkW9fcL.js +++ /dev/null @@ -1,11 +0,0 @@ -import{c as y,d as m,J as b,o as h,a as f,b as t,n as a,h as e,i as v,t as n,g,x as w,C as _,e as C}from"./index-C-4-823a.js";import{F}from"./file-D-r2HShG.js";import{H as k}from"./hard-drive-X0PLCy-z.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const U=y("ActivityIcon",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const z=y("UsersIcon",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]),D={class:"p-6 h-screen custom-scrollbar"},M={class:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8"},S={class:"flex items-center justify-between"},B={class:"flex items-center justify-between"},$={class:"flex items-center justify-between"},j={class:"flex items-center justify-between"},H={class:"text-sm mt-1"},N=m({__name:"DashboardView",setup(I){const s=v("isDarkMode"),o=b({totalFiles:0,storageUsed:0,yesterdayCount:0,todayCount:0,yesterdaySize:0,todaySize:0,sysUptime:0}),u=l=>{const i=new Date().getTime()-l,d=Math.floor(i/(24*60*60*1e3)),c=Math.floor(i%(24*60*60*1e3)/(60*60*1e3));return`${d}天${c}小时`},x=l=>{const r=parseInt(l)/1024,i=r/1024,d=i/1024,c=d/1024;return c>1?`${c.toFixed(2)}TB`:d>1?`${d.toFixed(2)}GB`:i>1?`${i.toFixed(2)}MB`:r>1?`${r.toFixed(2)}KB`:`${l}B`},p=async()=>{const l=await _.get("admin/dashboard");o.totalFiles=l.detail.totalFiles,o.storageUsed=x(l.detail.storageUsed),o.yesterdaySize=x(l.detail.yesterdaySize),o.todaySize=x(l.detail.todaySize),o.yesterdayCount=l.detail.yesterdayCount,o.todayCount=l.detail.todayCount,o.sysUptime=u(l.detail.sysUptime)};return h(()=>{p()}),(l,r)=>(C(),f("div",D,[t("h2",{class:a(["text-2xl font-bold mb-6",[e(s)?"text-white":"text-gray-800"]])}," 仪表盘 ",2),t("div",M,[t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",S,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 总文件数 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])},n(o.totalFiles),3)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-indigo-900":"bg-indigo-100"]])},[g(e(F),{class:a(["w-6 h-6",[e(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-green-400":"text-green-600"]])},[t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"昨天:",2),t("span",null,n(o.yesterdayCount),1),t("span",{class:a(["ml-2",[e(s)?"text-gray-400":"text-gray-600"]])},"今天:",2),t("span",null,n(o.todayCount),1)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",B,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 存储空间 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])},n(o.storageUsed),3)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-purple-900":"bg-purple-100"]])},[g(e(k),{class:a(["w-6 h-6",[e(s)?"text-purple-400":"text-purple-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-green-400":"text-green-600"]])},[t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"昨天:",2),t("span",null,n(o.yesterdaySize),1),t("span",{class:a(["ml-2",[e(s)?"text-gray-400":"text-gray-600"]])},"今天:",2),t("span",null,n(o.todaySize),1)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",$,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 活跃用户 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])}," 25 ",2)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-green-900":"bg-green-100"]])},[g(e(z),{class:a(["w-6 h-6",[e(s)?"text-green-400":"text-green-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-red-400":"text-red-600"]])},[r[0]||(r[0]=t("span",null,"↓ 5% ",-1)),t("span",{class:a([e(s)?"text-gray-400":"text-gray-600"])},"较上周",2)],2)],2),t("div",{class:a(["p-6 rounded-lg shadow-md transition-colors duration-300",[e(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",j,[t("div",null,[t("p",{class:a(["text-sm",[e(s)?"text-gray-400":"text-gray-600"]])}," 系统状态 ",2),t("h3",{class:a(["text-2xl font-bold mt-1",[e(s)?"text-white":"text-gray-800"]])}," 正常 ",2)]),t("div",{class:a(["p-3 rounded-full",[e(s)?"bg-blue-900":"bg-blue-100"]])},[g(e(U),{class:a(["w-6 h-6",[e(s)?"text-blue-400":"text-blue-600"]])},null,8,["class"])],2)]),t("p",{class:a(["text-sm mt-2",[e(s)?"text-gray-400":"text-gray-600"]])}," 服务器运行时间: "+n(o.sysUptime),3)],2)]),t("div",{class:a(["mt-auto text-center py-4",[e(s)?"text-gray-400":"text-gray-600"]])},[r[2]||(r[2]=t("p",{class:"text-sm"}," 版本 v2.0.3 更新时间:2025-03-03 ",-1)),t("p",H,[w(" © "+n(new Date().getFullYear())+" ",1),r[1]||(r[1]=t("a",{href:"https://github.com/vastsa/FileCodeBox"},"FileCodeBox",-1))])],2)]))}});export{N as default}; diff --git a/themes/2025/assets/FileManageView-3VMR54FC.js b/themes/2025/assets/FileManageView-3VMR54FC.js deleted file mode 100644 index df04f51e6..000000000 --- a/themes/2025/assets/FileManageView-3VMR54FC.js +++ /dev/null @@ -1,26 +0,0 @@ -import{c as v,d as R,r as C,u as Y,f as U,a as u,b as t,l as G,n as i,h as e,i as J,m as x,g as l,v as y,M as N,x as M,F as S,s as $,t as g,C as j,e as p}from"./index-C-4-823a.js";import{F as O}from"./file-D-r2HShG.js";import{T as Q}from"./trash-CAImX6bg.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const h=v("CheckIcon",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const W=v("ChevronLeftIcon",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const X=v("ChevronRightIcon",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const I=v("PencilIcon",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const L=v("SearchIcon",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]),Z={class:"p-6 h-screen custom-scrollbar"},tt={class:"mb-8"},et={class:"flex flex-1 gap-4 w-full sm:w-auto"},ot={class:"relative flex-1"},st={class:"overflow-x-auto"},it={class:"px-6 py-4 whitespace-nowrap"},at={class:"flex items-center"},rt={class:"px-6 py-4"},nt={class:"flex items-center group relative"},lt=["title"],dt={class:"absolute left-0 -top-2 -translate-y-full opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none"},gt={class:"bg-gray-900 text-white text-sm rounded px-2 py-1 max-w-xs break-all"},ct={class:"px-6 py-4 whitespace-nowrap"},ut={class:"px-6 py-4"},pt={class:"group relative"},xt={class:"absolute left-0 -top-2 -translate-y-full opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none z-10"},yt={class:"bg-gray-900 text-white text-sm rounded px-2 py-1 max-w-xs break-all"},ht={class:"px-6 py-4 whitespace-nowrap"},bt={class:"px-6 py-4 whitespace-nowrap text-right text-sm font-medium"},ft={class:"flex items-center space-x-2"},mt=["onClick"],vt=["onClick"],wt={class:"flex items-center space-x-2"},_t=["disabled"],kt={class:"flex items-center space-x-1"},Ct=["onClick"],Mt=["disabled"],St={key:0,class:"fixed inset-0 z-50","aria-labelledby":"modal-title",role:"dialog","aria-modal":"true"},zt={class:"fixed inset-0 z-10 overflow-y-auto"},Vt={class:"flex min-h-full items-center justify-center p-4 text-center sm:p-0"},$t={class:"flex items-center justify-between"},jt={class:"flex items-center space-x-3"},Ft={class:"px-6 py-5"},Dt={class:"grid gap-6"},Ut={class:"space-y-2 group"},It={class:"relative rounded-lg shadow-sm"},Lt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Tt={class:"space-y-2 group"},Bt={class:"relative rounded-lg shadow-sm"},Pt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Et={class:"space-y-2 group"},qt={class:"relative rounded-lg shadow-sm"},At={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Ht={class:"space-y-2 group"},Kt={class:"relative rounded-lg shadow-sm"},Rt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Yt={class:"space-y-2 group"},Gt={class:"relative rounded-lg shadow-sm"},Jt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Xt=R({__name:"FileManageView",setup(Nt){function T(r){const s=new Date(r),a=s.getFullYear(),c=(s.getMonth()+1).toString().padStart(2,"0"),_=s.getDate().toString().padStart(2,"0"),k=s.getHours().toString().padStart(2,"0"),m=s.getMinutes().toString().padStart(2,"0"),K=s.getSeconds().toString().padStart(2,"0");return`${a}-${c}-${_} ${k}:${m}:${K}`}const o=J("isDarkMode"),F=C([]),B=Y(),P=["取件码","名称","大小","描述","过期时间","操作"],n=C({page:1,size:10,total:0,keyword:""}),z=C(!1),d=C({id:null,code:"",prefix:"",suffix:"",expired_at:"",expired_count:null}),E=r=>{d.value={id:r.id,code:r.code,prefix:r.prefix,suffix:r.suffix,expired_at:r.expired_at?r.expired_at.slice(0,16):"",expired_count:r.expired_count},z.value=!0},w=()=>{z.value=!1,d.value={id:null,code:"",prefix:"",suffix:"",expired_at:"",expired_count:null}},q=async()=>{try{await j({url:"admin/file/update",method:"patch",data:d.value}),await b(),w()}catch(r){B.showAlert(r.response.data.detail,"error")}},A=async r=>{try{await j({url:"admin/file/delete",method:"delete",data:{id:r}}),await b()}catch(s){console.error("删除失败:",s)}},b=async()=>{try{const r=await j({url:"/admin/file/list",method:"get",params:n.value});F.value=r.detail.data,n.value.total=r.detail.total}catch(r){console.error("加载文件列表失败:",r)}},V=async r=>{r<1||r>f.value||(n.value.page=r,await b())};b();const f=U(()=>Math.ceil(n.value.total/n.value.size)),H=U(()=>{const r=n.value.page,s=f.value,a=2;let c=[];c.push(1);let _=Math.max(2,r-a),k=Math.min(s-1,r+a);_>2&&c.push("...");for(let m=_;m<=k;m++)c.push(m);return k1&&c.push(s),c}),D=async()=>{n.value.page=1,await b()};return(r,s)=>(p(),u("div",Z,[t("div",tt,[t("h2",{class:i(["text-2xl font-bold mb-4",[e(o)?"text-white":"text-gray-800"]])}," 文件管理 ",2)]),t("div",{class:i(["mb-6 flex flex-col sm:flex-row gap-4 items-start sm:items-center justify-between bg-opacity-70 p-4 rounded-lg shadow-sm",[e(o)?"bg-gray-800":"bg-white"]])},[t("div",et,[t("div",ot,[x(t("input",{type:"text","onUpdate:modelValue":s[0]||(s[0]=a=>n.value.keyword=a),onKeyup:N(D,["enter"]),class:i([e(o)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400":"bg-white border-gray-300 text-gray-900 placeholder-gray-400","w-full pl-10 pr-4 py-2.5 rounded-lg border focus:ring-2 focus:ring-indigo-500 focus:border-transparent"]),placeholder:"搜索文件名称、描述..."},null,34),[[y,n.value.keyword]]),l(e(L),{class:i(["absolute left-3 top-3 w-5 h-5",[e(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"])]),t("button",{onClick:D,class:"px-4 py-2.5 rounded-lg inline-flex items-center transition-all duration-200 bg-indigo-600 hover:bg-indigo-700 text-white shadow-sm"},[l(e(L),{class:"w-5 h-5 mr-2"}),s[8]||(s[8]=M(" 搜索 "))])])],2),t("div",{class:i(["rounded-lg shadow-sm overflow-hidden transition-all duration-300",[e(o)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",{class:i(["px-6 py-4 border-b",[e(o)?"border-gray-700":"border-gray-200"]])},[t("h3",{class:i(["text-lg font-medium",[e(o)?"text-white":"text-gray-800"]])}," 所有文件 ",2)],2),t("div",st,[t("table",{class:i(["min-w-full divide-y",[e(o)?"divide-gray-700":"divide-gray-200"]])},[t("thead",{class:i([e(o)?"bg-gray-900/50":"bg-gray-50"])},[t("tr",null,[(p(),u(S,null,$(P,a=>t("th",{key:a,class:i(["px-6 py-3.5 text-left text-xs font-medium uppercase tracking-wider",[e(o)?"text-gray-400":"text-gray-500"]])},g(a),3)),64))])],2),t("tbody",{class:i([e(o)?"bg-gray-800/50 divide-y divide-gray-700":"bg-white divide-y divide-gray-200"])},[(p(!0),u(S,null,$(F.value,a=>(p(),u("tr",{key:a.id,class:i(["hover:bg-opacity-50 transition-colors duration-200",[e(o)?"hover:bg-gray-700":"hover:bg-gray-50"]])},[t("td",it,[t("div",at,[t("span",{class:i(["font-medium select-all",[e(o)?"text-white":"text-gray-900"]])},g(a.code),3)])]),t("td",rt,[t("div",nt,[l(e(O),{class:i(["w-5 h-5 mr-2 flex-shrink-0",[e(o)?"text-indigo-400":"text-indigo-500"]])},null,8,["class"]),t("span",{class:i(["font-medium truncate max-w-[200px]",[e(o)?"text-white":"text-gray-900"]]),title:a.prefix},g(a.prefix),11,lt),t("div",dt,[t("div",gt,g(a.prefix),1)])])]),t("td",ct,[t("span",{class:i(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium",[e(o)?"bg-gray-700 text-gray-300":"bg-gray-100 text-gray-800"]])},g(Math.round(a.size/1024/1024*100)/100)+"MB ",3)]),t("td",ut,[t("div",pt,[t("span",{class:i(["block truncate max-w-[250px]",[e(o)?"text-gray-400":"text-gray-500"]])},g(a.text),3),t("div",xt,[t("div",yt,g(a.text),1)])])]),t("td",ht,[t("span",{class:i(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium",[a.expired_at?e(o)?"bg-yellow-900/30 text-yellow-400":"bg-yellow-100 text-yellow-800":e(o)?"bg-green-900/30 text-green-400":"bg-green-100 text-green-800"]])},g(a.expired_at?T(a.expired_at):"永久"),3)]),t("td",bt,[t("div",ft,[t("button",{onClick:c=>E(a),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?"bg-blue-900/20 text-blue-400 hover:bg-blue-900/30":"bg-blue-50 text-blue-600 hover:bg-blue-100"]])},[l(e(I),{class:"w-4 h-4 mr-1.5"}),s[9]||(s[9]=M(" 编辑 "))],10,mt),t("button",{onClick:c=>A(a.id),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?"bg-red-900/20 text-red-400 hover:bg-red-900/30":"bg-red-50 text-red-600 hover:bg-red-100"]])},[l(e(Q),{class:"w-4 h-4 mr-1.5"}),s[10]||(s[10]=M(" 删除 "))],10,vt)])])],2))),128))],2)],2)]),t("div",{class:i(["mt-4 flex items-center justify-between px-6 py-4 border-t",[e(o)?"border-gray-700":"border-gray-200"]])},[t("div",{class:i(["flex items-center text-sm",[e(o)?"text-gray-400":"text-gray-500"]])}," 显示第 "+g((n.value.page-1)*n.value.size+1)+" 到 "+g(Math.min(n.value.page*n.value.size,n.value.total))+" 条,共 "+g(n.value.total)+" 条 ",3),t("div",wt,[t("button",{onClick:s[1]||(s[1]=a=>V(n.value.page-1)),disabled:n.value.page===1,class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?n.value.page===1?"bg-gray-800 text-gray-600 cursor-not-allowed":"bg-gray-800 text-gray-300 hover:bg-gray-700":n.value.page===1?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},[l(e(W),{class:"w-4 h-4"}),s[11]||(s[11]=t("span",{class:"pagination-button"},"上一页",-1))],10,_t),t("div",kt,[(p(!0),u(S,null,$(H.value,a=>(p(),u(S,{key:a},[a!=="..."?(p(),u("button",{key:0,onClick:c=>V(a),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[n.value.page===a?"bg-indigo-600 text-white":e(o)?"bg-gray-800 text-gray-300 hover:bg-gray-700":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},g(a),11,Ct)):(p(),u("span",{key:1,class:i(["px-2",[e(o)?"text-gray-400":"text-gray-500"]])}," ... ",2))],64))),128))]),t("button",{onClick:s[2]||(s[2]=a=>V(n.value.page+1)),disabled:n.value.page>=f.value,class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?n.value.page>=f.value?"bg-gray-800 text-gray-600 cursor-not-allowed":"bg-gray-800 text-gray-300 hover:bg-gray-700":n.value.page>=f.value?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},[s[12]||(s[12]=t("span",{class:"pagination-button"},"上一页",-1)),l(e(X),{class:"w-4 h-4"})],10,Mt)])],2)],2),z.value?(p(),u("div",St,[t("div",{class:"fixed inset-0 bg-gradient-to-br from-gray-900/90 to-black/90 backdrop-blur-sm transition-opacity duration-300",onClick:w}),t("div",zt,[t("div",Vt,[t("div",{class:i(["relative transform overflow-hidden rounded-2xl text-left shadow-2xl transition-all sm:my-8 sm:w-full sm:max-w-xl animate-modal-scale",[e(o)?"bg-gray-800/95 backdrop-blur-md":"bg-white"]])},[t("div",{class:i(["relative px-6 pt-6 pb-4",[e(o)?"bg-gradient-to-r from-gray-800/50 to-gray-700/50":"bg-gradient-to-r from-gray-50 to-white"]])},[t("div",$t,[t("div",jt,[t("div",{class:i(["p-2 rounded-lg",[e(o)?"bg-indigo-500/10":"bg-indigo-50"]])},[l(e(I),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2),t("h3",{class:i(["text-xl font-semibold leading-6",[e(o)?"text-white":"text-gray-900"]])}," 编辑文件信息 ",2)]),t("button",{onClick:w,class:i(["rounded-lg p-2 transition-all duration-200 hover:rotate-90",[e(o)?"text-gray-400 hover:text-white hover:bg-white/10":"text-gray-500 hover:text-gray-700 hover:bg-gray-100"]])},s[13]||(s[13]=[t("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)]),2)])],2),t("div",Ft,[t("div",Dt,[t("div",Ut,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[14]||(s[14]=t("span",null,"取件码",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",It,[x(t("input",{type:"text","onUpdate:modelValue":s[3]||(s[3]=a=>d.value.code=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入取件码"},null,2),[[y,d.value.code]]),t("div",Lt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Tt,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[15]||(s[15]=t("span",null,"文件名称",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Bt,[x(t("input",{type:"text","onUpdate:modelValue":s[4]||(s[4]=a=>d.value.prefix=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入文件名称"},null,2),[[y,d.value.prefix]]),t("div",Pt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Et,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[16]||(s[16]=t("span",null,"文件后缀",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",qt,[x(t("input",{type:"text","onUpdate:modelValue":s[5]||(s[5]=a=>d.value.suffix=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入文件后缀"},null,2),[[y,d.value.suffix]]),t("div",At,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Ht,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[17]||(s[17]=t("span",null,"过期时间",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Kt,[x(t("input",{type:"datetime-local","onUpdate:modelValue":s[6]||(s[6]=a=>d.value.expired_at=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]])},null,2),[[y,d.value.expired_at]]),t("div",Rt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Yt,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[18]||(s[18]=t("span",null,"下载次数限制",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Gt,[x(t("input",{type:"number","onUpdate:modelValue":s[7]||(s[7]=a=>d.value.expired_count=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入下载次数限制"},null,2),[[y,d.value.expired_count]]),t("div",Jt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])])])]),t("div",{class:i(["flex items-center justify-end gap-3 px-6 py-4 border-t bg-gradient-to-b",[e(o)?"border-gray-700/50 from-gray-800/50 to-gray-800":"border-gray-200 from-gray-50 to-white"]])},[t("button",{onClick:w,class:i(["inline-flex items-center justify-center rounded-lg px-4 py-2.5 text-sm font-medium transition-all duration-200",[e(o)?"bg-gray-700/50 text-gray-300 hover:bg-gray-600/50 hover:text-white":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])}," 取消 ",2),t("button",{onClick:q,class:"inline-flex items-center justify-center rounded-lg px-4 py-2.5 text-sm font-medium transition-all duration-200 bg-gradient-to-r from-indigo-600 to-indigo-500 hover:from-indigo-500 hover:to-indigo-600 text-white shadow-lg shadow-indigo-500/25 hover:shadow-indigo-500/35"},[l(e(h),{class:"w-4 h-4 mr-2"}),s[19]||(s[19]=M(" 保存更改 "))])],2)],2)])])])):G("",!0)]))}});export{Xt as default}; diff --git a/themes/2025/assets/FileManageView-BLdG4lo7.js b/themes/2025/assets/FileManageView-BLdG4lo7.js deleted file mode 100644 index 3da2c1e10..000000000 --- a/themes/2025/assets/FileManageView-BLdG4lo7.js +++ /dev/null @@ -1,26 +0,0 @@ -import{c as v,d as R,r as C,u as Y,f as U,a as u,b as t,l as G,n as i,h as e,i as J,m as x,g as l,v as y,M as N,x as M,F as S,s as $,t as g,C as j,e as p}from"./index-DKQ1YPO4.js";import{F as O}from"./file-D8mQlyUF.js";import{T as Q}from"./trash-FNvP9-P8.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const h=v("CheckIcon",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const W=v("ChevronLeftIcon",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const X=v("ChevronRightIcon",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const I=v("PencilIcon",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const L=v("SearchIcon",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]),Z={class:"p-6 h-screen custom-scrollbar"},tt={class:"mb-8"},et={class:"flex flex-1 gap-4 w-full sm:w-auto"},ot={class:"relative flex-1"},st={class:"overflow-x-auto"},it={class:"px-6 py-4 whitespace-nowrap"},at={class:"flex items-center"},rt={class:"px-6 py-4"},nt={class:"flex items-center group relative"},lt=["title"],dt={class:"absolute left-0 -top-2 -translate-y-full opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none"},gt={class:"bg-gray-900 text-white text-sm rounded px-2 py-1 max-w-xs break-all"},ct={class:"px-6 py-4 whitespace-nowrap"},ut={class:"px-6 py-4"},pt={class:"group relative"},xt={class:"absolute left-0 -top-2 -translate-y-full opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none z-10"},yt={class:"bg-gray-900 text-white text-sm rounded px-2 py-1 max-w-xs break-all"},ht={class:"px-6 py-4 whitespace-nowrap"},bt={class:"px-6 py-4 whitespace-nowrap text-right text-sm font-medium"},ft={class:"flex items-center space-x-2"},mt=["onClick"],vt=["onClick"],wt={class:"flex items-center space-x-2"},_t=["disabled"],kt={class:"flex items-center space-x-1"},Ct=["onClick"],Mt=["disabled"],St={key:0,class:"fixed inset-0 z-50","aria-labelledby":"modal-title",role:"dialog","aria-modal":"true"},zt={class:"fixed inset-0 z-10 overflow-y-auto"},Vt={class:"flex min-h-full items-center justify-center p-4 text-center sm:p-0"},$t={class:"flex items-center justify-between"},jt={class:"flex items-center space-x-3"},Ft={class:"px-6 py-5"},Dt={class:"grid gap-6"},Ut={class:"space-y-2 group"},It={class:"relative rounded-lg shadow-sm"},Lt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Tt={class:"space-y-2 group"},Bt={class:"relative rounded-lg shadow-sm"},Pt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Et={class:"space-y-2 group"},qt={class:"relative rounded-lg shadow-sm"},At={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Ht={class:"space-y-2 group"},Kt={class:"relative rounded-lg shadow-sm"},Rt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Yt={class:"space-y-2 group"},Gt={class:"relative rounded-lg shadow-sm"},Jt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Xt=R({__name:"FileManageView",setup(Nt){function T(r){const s=new Date(r),a=s.getFullYear(),c=(s.getMonth()+1).toString().padStart(2,"0"),_=s.getDate().toString().padStart(2,"0"),k=s.getHours().toString().padStart(2,"0"),m=s.getMinutes().toString().padStart(2,"0"),K=s.getSeconds().toString().padStart(2,"0");return`${a}-${c}-${_} ${k}:${m}:${K}`}const o=J("isDarkMode"),F=C([]),B=Y(),P=["取件码","名称","大小","描述","过期时间","操作"],n=C({page:1,size:10,total:0,keyword:""}),z=C(!1),d=C({id:null,code:"",prefix:"",suffix:"",expired_at:"",expired_count:null}),E=r=>{d.value={id:r.id,code:r.code,prefix:r.prefix,suffix:r.suffix,expired_at:r.expired_at?r.expired_at.slice(0,16):"",expired_count:r.expired_count},z.value=!0},w=()=>{z.value=!1,d.value={id:null,code:"",prefix:"",suffix:"",expired_at:"",expired_count:null}},q=async()=>{try{await j({url:"admin/file/update",method:"patch",data:d.value}),await b(),w()}catch(r){B.showAlert(r.response.data.detail,"error")}},A=async r=>{try{await j({url:"admin/file/delete",method:"delete",data:{id:r}}),await b()}catch(s){console.error("删除失败:",s)}},b=async()=>{try{const r=await j({url:"/admin/file/list",method:"get",params:n.value});F.value=r.detail.data,n.value.total=r.detail.total}catch(r){console.error("加载文件列表失败:",r)}},V=async r=>{r<1||r>f.value||(n.value.page=r,await b())};b();const f=U(()=>Math.ceil(n.value.total/n.value.size)),H=U(()=>{const r=n.value.page,s=f.value,a=2;let c=[];c.push(1);let _=Math.max(2,r-a),k=Math.min(s-1,r+a);_>2&&c.push("...");for(let m=_;m<=k;m++)c.push(m);return k1&&c.push(s),c}),D=async()=>{n.value.page=1,await b()};return(r,s)=>(p(),u("div",Z,[t("div",tt,[t("h2",{class:i(["text-2xl font-bold mb-4",[e(o)?"text-white":"text-gray-800"]])}," 文件管理 ",2)]),t("div",{class:i(["mb-6 flex flex-col sm:flex-row gap-4 items-start sm:items-center justify-between bg-opacity-70 p-4 rounded-lg shadow-sm",[e(o)?"bg-gray-800":"bg-white"]])},[t("div",et,[t("div",ot,[x(t("input",{type:"text","onUpdate:modelValue":s[0]||(s[0]=a=>n.value.keyword=a),onKeyup:N(D,["enter"]),class:i([e(o)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400":"bg-white border-gray-300 text-gray-900 placeholder-gray-400","w-full pl-10 pr-4 py-2.5 rounded-lg border focus:ring-2 focus:ring-indigo-500 focus:border-transparent"]),placeholder:"搜索文件名称、描述..."},null,34),[[y,n.value.keyword]]),l(e(L),{class:i(["absolute left-3 top-3 w-5 h-5",[e(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"])]),t("button",{onClick:D,class:"px-4 py-2.5 rounded-lg inline-flex items-center transition-all duration-200 bg-indigo-600 hover:bg-indigo-700 text-white shadow-sm"},[l(e(L),{class:"w-5 h-5 mr-2"}),s[8]||(s[8]=M(" 搜索 "))])])],2),t("div",{class:i(["rounded-lg shadow-sm overflow-hidden transition-all duration-300",[e(o)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",{class:i(["px-6 py-4 border-b",[e(o)?"border-gray-700":"border-gray-200"]])},[t("h3",{class:i(["text-lg font-medium",[e(o)?"text-white":"text-gray-800"]])}," 所有文件 ",2)],2),t("div",st,[t("table",{class:i(["min-w-full divide-y",[e(o)?"divide-gray-700":"divide-gray-200"]])},[t("thead",{class:i([e(o)?"bg-gray-900/50":"bg-gray-50"])},[t("tr",null,[(p(),u(S,null,$(P,a=>t("th",{key:a,class:i(["px-6 py-3.5 text-left text-xs font-medium uppercase tracking-wider",[e(o)?"text-gray-400":"text-gray-500"]])},g(a),3)),64))])],2),t("tbody",{class:i([e(o)?"bg-gray-800/50 divide-y divide-gray-700":"bg-white divide-y divide-gray-200"])},[(p(!0),u(S,null,$(F.value,a=>(p(),u("tr",{key:a.id,class:i(["hover:bg-opacity-50 transition-colors duration-200",[e(o)?"hover:bg-gray-700":"hover:bg-gray-50"]])},[t("td",it,[t("div",at,[t("span",{class:i(["font-medium select-all",[e(o)?"text-white":"text-gray-900"]])},g(a.code),3)])]),t("td",rt,[t("div",nt,[l(e(O),{class:i(["w-5 h-5 mr-2 flex-shrink-0",[e(o)?"text-indigo-400":"text-indigo-500"]])},null,8,["class"]),t("span",{class:i(["font-medium truncate max-w-[200px]",[e(o)?"text-white":"text-gray-900"]]),title:a.prefix},g(a.prefix),11,lt),t("div",dt,[t("div",gt,g(a.prefix),1)])])]),t("td",ct,[t("span",{class:i(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium",[e(o)?"bg-gray-700 text-gray-300":"bg-gray-100 text-gray-800"]])},g(Math.round(a.size/1024/1024*100)/100)+"MB ",3)]),t("td",ut,[t("div",pt,[t("span",{class:i(["block truncate max-w-[250px]",[e(o)?"text-gray-400":"text-gray-500"]])},g(a.text),3),t("div",xt,[t("div",yt,g(a.text),1)])])]),t("td",ht,[t("span",{class:i(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium",[a.expired_at?e(o)?"bg-yellow-900/30 text-yellow-400":"bg-yellow-100 text-yellow-800":e(o)?"bg-green-900/30 text-green-400":"bg-green-100 text-green-800"]])},g(a.expired_at?T(a.expired_at):"永久"),3)]),t("td",bt,[t("div",ft,[t("button",{onClick:c=>E(a),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?"bg-blue-900/20 text-blue-400 hover:bg-blue-900/30":"bg-blue-50 text-blue-600 hover:bg-blue-100"]])},[l(e(I),{class:"w-4 h-4 mr-1.5"}),s[9]||(s[9]=M(" 编辑 "))],10,mt),t("button",{onClick:c=>A(a.id),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?"bg-red-900/20 text-red-400 hover:bg-red-900/30":"bg-red-50 text-red-600 hover:bg-red-100"]])},[l(e(Q),{class:"w-4 h-4 mr-1.5"}),s[10]||(s[10]=M(" 删除 "))],10,vt)])])],2))),128))],2)],2)]),t("div",{class:i(["mt-4 flex items-center justify-between px-6 py-4 border-t",[e(o)?"border-gray-700":"border-gray-200"]])},[t("div",{class:i(["flex items-center text-sm",[e(o)?"text-gray-400":"text-gray-500"]])}," 显示第 "+g((n.value.page-1)*n.value.size+1)+" 到 "+g(Math.min(n.value.page*n.value.size,n.value.total))+" 条,共 "+g(n.value.total)+" 条 ",3),t("div",wt,[t("button",{onClick:s[1]||(s[1]=a=>V(n.value.page-1)),disabled:n.value.page===1,class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?n.value.page===1?"bg-gray-800 text-gray-600 cursor-not-allowed":"bg-gray-800 text-gray-300 hover:bg-gray-700":n.value.page===1?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},[l(e(W),{class:"w-4 h-4"}),s[11]||(s[11]=t("span",{class:"pagination-button"},"上一页",-1))],10,_t),t("div",kt,[(p(!0),u(S,null,$(H.value,a=>(p(),u(S,{key:a},[a!=="..."?(p(),u("button",{key:0,onClick:c=>V(a),class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[n.value.page===a?"bg-indigo-600 text-white":e(o)?"bg-gray-800 text-gray-300 hover:bg-gray-700":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},g(a),11,Ct)):(p(),u("span",{key:1,class:i(["px-2",[e(o)?"text-gray-400":"text-gray-500"]])}," ... ",2))],64))),128))]),t("button",{onClick:s[2]||(s[2]=a=>V(n.value.page+1)),disabled:n.value.page>=f.value,class:i(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?n.value.page>=f.value?"bg-gray-800 text-gray-600 cursor-not-allowed":"bg-gray-800 text-gray-300 hover:bg-gray-700":n.value.page>=f.value?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},[s[12]||(s[12]=t("span",{class:"pagination-button"},"上一页",-1)),l(e(X),{class:"w-4 h-4"})],10,Mt)])],2)],2),z.value?(p(),u("div",St,[t("div",{class:"fixed inset-0 bg-gradient-to-br from-gray-900/90 to-black/90 backdrop-blur-sm transition-opacity duration-300",onClick:w}),t("div",zt,[t("div",Vt,[t("div",{class:i(["relative transform overflow-hidden rounded-2xl text-left shadow-2xl transition-all sm:my-8 sm:w-full sm:max-w-xl animate-modal-scale",[e(o)?"bg-gray-800/95 backdrop-blur-md":"bg-white"]])},[t("div",{class:i(["relative px-6 pt-6 pb-4",[e(o)?"bg-gradient-to-r from-gray-800/50 to-gray-700/50":"bg-gradient-to-r from-gray-50 to-white"]])},[t("div",$t,[t("div",jt,[t("div",{class:i(["p-2 rounded-lg",[e(o)?"bg-indigo-500/10":"bg-indigo-50"]])},[l(e(I),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2),t("h3",{class:i(["text-xl font-semibold leading-6",[e(o)?"text-white":"text-gray-900"]])}," 编辑文件信息 ",2)]),t("button",{onClick:w,class:i(["rounded-lg p-2 transition-all duration-200 hover:rotate-90",[e(o)?"text-gray-400 hover:text-white hover:bg-white/10":"text-gray-500 hover:text-gray-700 hover:bg-gray-100"]])},s[13]||(s[13]=[t("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)]),2)])],2),t("div",Ft,[t("div",Dt,[t("div",Ut,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[14]||(s[14]=t("span",null,"取件码",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",It,[x(t("input",{type:"text","onUpdate:modelValue":s[3]||(s[3]=a=>d.value.code=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入取件码"},null,2),[[y,d.value.code]]),t("div",Lt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Tt,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[15]||(s[15]=t("span",null,"文件名称",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Bt,[x(t("input",{type:"text","onUpdate:modelValue":s[4]||(s[4]=a=>d.value.prefix=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入文件名称"},null,2),[[y,d.value.prefix]]),t("div",Pt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Et,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[16]||(s[16]=t("span",null,"文件后缀",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",qt,[x(t("input",{type:"text","onUpdate:modelValue":s[5]||(s[5]=a=>d.value.suffix=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入文件后缀"},null,2),[[y,d.value.suffix]]),t("div",At,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Ht,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[17]||(s[17]=t("span",null,"过期时间",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Kt,[x(t("input",{type:"datetime-local","onUpdate:modelValue":s[6]||(s[6]=a=>d.value.expired_at=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]])},null,2),[[y,d.value.expired_at]]),t("div",Rt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Yt,[t("label",{class:i(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[s[18]||(s[18]=t("span",null,"下载次数限制",-1)),t("div",{class:i(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Gt,[x(t("input",{type:"number","onUpdate:modelValue":s[7]||(s[7]=a=>d.value.expired_count=a),class:i(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入下载次数限制"},null,2),[[y,d.value.expired_count]]),t("div",Jt,[l(e(h),{class:i(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])])])]),t("div",{class:i(["flex items-center justify-end gap-3 px-6 py-4 border-t bg-gradient-to-b",[e(o)?"border-gray-700/50 from-gray-800/50 to-gray-800":"border-gray-200 from-gray-50 to-white"]])},[t("button",{onClick:w,class:i(["inline-flex items-center justify-center rounded-lg px-4 py-2.5 text-sm font-medium transition-all duration-200",[e(o)?"bg-gray-700/50 text-gray-300 hover:bg-gray-600/50 hover:text-white":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])}," 取消 ",2),t("button",{onClick:q,class:"inline-flex items-center justify-center rounded-lg px-4 py-2.5 text-sm font-medium transition-all duration-200 bg-gradient-to-r from-indigo-600 to-indigo-500 hover:from-indigo-500 hover:to-indigo-600 text-white shadow-lg shadow-indigo-500/25 hover:shadow-indigo-500/35"},[l(e(h),{class:"w-4 h-4 mr-2"}),s[19]||(s[19]=M(" 保存更改 "))])],2)],2)])])])):G("",!0)]))}});export{Xt as default}; diff --git a/themes/2025/assets/FileManageView-XLvHYGa1.js b/themes/2025/assets/FileManageView-XLvHYGa1.js new file mode 100644 index 000000000..e81e0e5ab --- /dev/null +++ b/themes/2025/assets/FileManageView-XLvHYGa1.js @@ -0,0 +1,26 @@ +import{c as w,d as J,r as M,u as N,f as B,a as u,b as t,l as b,n as s,h as e,i as O,m as x,g as d,v as y,M as Q,x as S,F as V,s as j,t as g,C as F,e as c,A as I}from"./index-BAgz5Ib8.js";import{F as W}from"./file-d22J40ax.js";import{T as X,a as Z}from"./trash-R3aCwIiM.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const h=w("CheckIcon",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const tt=w("ChevronLeftIcon",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const et=w("ChevronRightIcon",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const L=w("PencilIcon",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const P=w("SearchIcon",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]),ot={class:"p-6 h-screen custom-scrollbar"},st={class:"mb-8"},it={class:"flex flex-1 gap-4 w-full sm:w-auto"},at={class:"relative flex-1"},rt={class:"overflow-x-auto"},nt={class:"px-6 py-4 whitespace-nowrap"},lt={class:"flex items-center"},dt={class:"px-6 py-4"},gt={class:"flex items-center group relative"},ct=["title"],ut={class:"absolute left-0 -top-2 -translate-y-full opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none"},pt={class:"bg-gray-900 text-white text-sm rounded px-2 py-1 max-w-xs break-all"},xt={class:"px-6 py-4 whitespace-nowrap"},yt={class:"px-6 py-4 whitespace-nowrap"},ht={class:"px-6 py-4"},bt={class:"group relative"},ft={class:"absolute left-0 -top-2 -translate-y-full opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none z-10"},mt={class:"bg-gray-900 text-white text-sm rounded px-2 py-1 max-w-xs break-all"},vt={class:"px-6 py-4 whitespace-nowrap"},wt={class:"px-6 py-4 whitespace-nowrap text-right text-sm font-medium"},_t={class:"flex items-center space-x-2"},kt=["onClick"],Ct=["onClick"],Mt={class:"flex items-center space-x-2"},St=["disabled"],Vt={class:"flex items-center space-x-1"},zt=["onClick"],$t=["disabled"],jt={key:0,class:"fixed inset-0 z-50","aria-labelledby":"modal-title",role:"dialog","aria-modal":"true"},Ft={class:"fixed inset-0 z-10 overflow-y-auto"},Ut={class:"flex min-h-full items-center justify-center p-4 text-center sm:p-0"},Dt={class:"flex items-center justify-between"},Tt={class:"flex items-center space-x-3"},Bt={class:"px-6 py-5"},It={class:"grid gap-6"},Lt={class:"space-y-2 group"},Pt={class:"relative rounded-lg shadow-sm"},Et={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},qt={key:0,class:"space-y-2 group"},At={class:"relative rounded-lg shadow-sm"},Ht={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Kt={key:1,class:"space-y-2 group"},Rt={class:"relative rounded-lg shadow-sm"},Yt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Gt={key:2,class:"space-y-2 group"},Jt={class:"relative rounded-lg shadow-sm"},Nt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Ot={class:"space-y-2 group"},Qt={class:"relative rounded-lg shadow-sm"},Wt={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},Xt={class:"space-y-2 group"},Zt={class:"relative rounded-lg shadow-sm"},te={class:"absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none transition-opacity duration-200 opacity-0 group-focus-within:opacity-100"},ae=J({__name:"FileManageView",setup(ee){function E(r){const i=new Date(r),a=i.getFullYear(),p=(i.getMonth()+1).toString().padStart(2,"0"),k=i.getDate().toString().padStart(2,"0"),C=i.getHours().toString().padStart(2,"0"),v=i.getMinutes().toString().padStart(2,"0"),G=i.getSeconds().toString().padStart(2,"0");return`${a}-${p}-${k} ${C}:${v}:${G}`}const o=O("isDarkMode"),U=M([]),q=N(),A=["粮票号","名称","大小","使用次数","描述","过期时间","操作"],n=M({page:1,size:10,total:0,keyword:""}),z=M(!1),l=M({id:null,code:"",prefix:"",suffix:"",text:null,expired_at:"",expired_count:null}),H=r=>{l.value={id:r.id,code:r.code,prefix:r.prefix,suffix:r.suffix,text:r.text,expired_at:r.expired_at?r.expired_at.slice(0,16):"",expired_count:r.expired_count},z.value=!0},_=()=>{z.value=!1,l.value={id:null,code:"",prefix:"",suffix:"",text:null,expired_at:"",expired_count:null}},K=async()=>{try{await F({url:"admin/file/update",method:"patch",data:l.value}),await f(),_()}catch(r){q.showAlert(r.response.data.detail,"error")}},R=async r=>{try{await F({url:"admin/file/delete",method:"delete",data:{id:r}}),await f()}catch(i){console.error("删除失败:",i)}},f=async()=>{try{const r=await F({url:"/admin/file/list",method:"get",params:n.value});U.value=r.detail.data,n.value.total=r.detail.total}catch(r){console.error("加载文件列表失败:",r)}},D=r=>r.text==null,$=async r=>{r<1||r>m.value||(n.value.page=r,await f())};f();const m=B(()=>Math.ceil(n.value.total/n.value.size)),Y=B(()=>{const r=n.value.page,i=m.value,a=2;let p=[];p.push(1);let k=Math.max(2,r-a),C=Math.min(i-1,r+a);k>2&&p.push("...");for(let v=k;v<=C;v++)p.push(v);return C1&&p.push(i),p}),T=async()=>{n.value.page=1,await f()};return(r,i)=>(c(),u("div",ot,[t("div",st,[t("h2",{class:s(["text-2xl font-bold mb-4",[e(o)?"text-white":"text-gray-800"]])}," 文件管理 ",2)]),t("div",{class:s(["mb-6 flex flex-col sm:flex-row gap-4 items-start sm:items-center justify-between bg-opacity-70 p-4 rounded-lg shadow-sm",[e(o)?"bg-gray-800":"bg-white"]])},[t("div",it,[t("div",at,[x(t("input",{type:"text","onUpdate:modelValue":i[0]||(i[0]=a=>n.value.keyword=a),onKeyup:Q(T,["enter"]),class:s([e(o)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400":"bg-white border-gray-300 text-gray-900 placeholder-gray-400","w-full pl-10 pr-4 py-2.5 rounded-lg border focus:ring-2 focus:ring-indigo-500 focus:border-transparent"]),placeholder:"搜索文件名称、描述..."},null,34),[[y,n.value.keyword]]),d(e(P),{class:s(["absolute left-3 top-3 w-5 h-5",[e(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"])]),t("button",{onClick:T,class:"px-4 py-2.5 rounded-lg inline-flex items-center transition-all duration-200 bg-indigo-600 hover:bg-indigo-700 text-white shadow-sm"},[d(e(P),{class:"w-5 h-5 mr-2"}),i[9]||(i[9]=S(" 搜索 "))])])],2),t("div",{class:s(["rounded-lg shadow-sm overflow-hidden transition-all duration-300",[e(o)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[t("div",{class:s(["px-6 py-4 border-b",[e(o)?"border-gray-700":"border-gray-200"]])},[t("h3",{class:s(["text-lg font-medium",[e(o)?"text-white":"text-gray-800"]])}," 所有文件 ",2)],2),t("div",rt,[t("table",{class:s(["min-w-full divide-y",[e(o)?"divide-gray-700":"divide-gray-200"]])},[t("thead",{class:s([e(o)?"bg-gray-900/50":"bg-gray-50"])},[t("tr",null,[(c(),u(V,null,j(A,a=>t("th",{key:a,class:s(["px-6 py-3.5 text-left text-xs font-medium uppercase tracking-wider",[e(o)?"text-gray-400":"text-gray-500"]])},g(a),3)),64))])],2),t("tbody",{class:s([e(o)?"bg-gray-800/50 divide-y divide-gray-700":"bg-white divide-y divide-gray-200"])},[(c(!0),u(V,null,j(U.value,a=>(c(),u("tr",{key:a.id,class:s(["hover:bg-opacity-50 transition-colors duration-200",[e(o)?"hover:bg-gray-700":"hover:bg-gray-50"]])},[t("td",nt,[t("div",lt,[t("span",{class:s(["font-medium select-all",[e(o)?"text-white":"text-gray-900"]])},g(a.code),3)])]),t("td",dt,[t("div",gt,[D(a)?(c(),I(e(W),{key:0,class:s(["w-5 h-5 mr-2 flex-shrink-0",[e(o)?"text-indigo-400":"text-indigo-500"]])},null,8,["class"])):b("",!0),D(a)?b("",!0):(c(),I(e(X),{key:1,class:s(["w-5 h-5 mr-2 flex-shrink-0",[e(o)?"text-indigo-400":"text-indigo-500"]])},null,8,["class"])),t("span",{class:s(["font-medium truncate max-w-[200px]",[e(o)?"text-white":"text-gray-900"]]),title:a.prefix},g(a.prefix),11,ct),t("div",ut,[t("div",pt,g(a.prefix),1)])])]),t("td",xt,[t("span",{class:s(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium",[e(o)?"bg-gray-700 text-gray-300":"bg-gray-100 text-gray-800"]])},g(Math.round(a.size/1024/1024*100)/100)+"MB ",3)]),t("td",yt,[t("span",{class:s(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium",[e(o)?"bg-gray-700 text-gray-300":"bg-gray-100 text-gray-800"]])},g(a.used_count)+"次 ",3)]),t("td",ht,[t("div",bt,[t("span",{class:s(["block truncate max-w-[250px]",[e(o)?"text-gray-400":"text-gray-500"]])},g(a.text),3),t("div",ft,[t("div",mt,g(a.text),1)])])]),t("td",vt,[t("span",{class:s(["inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium",[a.expired_at?e(o)?"bg-yellow-900/30 text-yellow-400":"bg-yellow-100 text-yellow-800":e(o)?"bg-green-900/30 text-green-400":"bg-green-100 text-green-800"]])},g(a.expired_at?E(a.expired_at):"永久"),3)]),t("td",wt,[t("div",_t,[t("button",{onClick:p=>H(a),class:s(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?"bg-blue-900/20 text-blue-400 hover:bg-blue-900/30":"bg-blue-50 text-blue-600 hover:bg-blue-100"]])},[d(e(L),{class:"w-4 h-4 mr-1.5"}),i[10]||(i[10]=S(" 编辑 "))],10,kt),t("button",{onClick:p=>R(a.id),class:s(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?"bg-red-900/20 text-red-400 hover:bg-red-900/30":"bg-red-50 text-red-600 hover:bg-red-100"]])},[d(e(Z),{class:"w-4 h-4 mr-1.5"}),i[11]||(i[11]=S(" 删除 "))],10,Ct)])])],2))),128))],2)],2)]),t("div",{class:s(["mt-4 flex items-center justify-between px-6 py-4 border-t",[e(o)?"border-gray-700":"border-gray-200"]])},[t("div",{class:s(["flex items-center text-sm",[e(o)?"text-gray-400":"text-gray-500"]])}," 显示第 "+g((n.value.page-1)*n.value.size+1)+" 到 "+g(Math.min(n.value.page*n.value.size,n.value.total))+" 条,共 "+g(n.value.total)+" 条 ",3),t("div",Mt,[t("button",{onClick:i[1]||(i[1]=a=>$(n.value.page-1)),disabled:n.value.page===1,class:s(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?n.value.page===1?"bg-gray-800 text-gray-600 cursor-not-allowed":"bg-gray-800 text-gray-300 hover:bg-gray-700":n.value.page===1?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},[d(e(tt),{class:"w-4 h-4"}),i[12]||(i[12]=t("span",{class:"pagination-button"},"上一页",-1))],10,St),t("div",Vt,[(c(!0),u(V,null,j(Y.value,a=>(c(),u(V,{key:a},[a!=="..."?(c(),u("button",{key:0,onClick:p=>$(a),class:s(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[n.value.page===a?"bg-indigo-600 text-white":e(o)?"bg-gray-800 text-gray-300 hover:bg-gray-700":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},g(a),11,zt)):(c(),u("span",{key:1,class:s(["px-2",[e(o)?"text-gray-400":"text-gray-500"]])}," ... ",2))],64))),128))]),t("button",{onClick:i[2]||(i[2]=a=>$(n.value.page+1)),disabled:n.value.page>=m.value,class:s(["inline-flex items-center px-3 py-1.5 rounded-md transition-colors duration-200",[e(o)?n.value.page>=m.value?"bg-gray-800 text-gray-600 cursor-not-allowed":"bg-gray-800 text-gray-300 hover:bg-gray-700":n.value.page>=m.value?"bg-gray-100 text-gray-400 cursor-not-allowed":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])},[i[13]||(i[13]=t("span",{class:"pagination-button"},"上一页",-1)),d(e(et),{class:"w-4 h-4"})],10,$t)])],2)],2),z.value?(c(),u("div",jt,[t("div",{class:"fixed inset-0 bg-gradient-to-br from-gray-900/90 to-black/90 backdrop-blur-sm transition-opacity duration-300",onClick:_}),t("div",Ft,[t("div",Ut,[t("div",{class:s(["relative transform overflow-hidden rounded-2xl text-left shadow-2xl transition-all sm:my-8 sm:w-full sm:max-w-xl animate-modal-scale",[e(o)?"bg-gray-800/95 backdrop-blur-md":"bg-white"]])},[t("div",{class:s(["relative px-6 pt-6 pb-4",[e(o)?"bg-gradient-to-r from-gray-800/50 to-gray-700/50":"bg-gradient-to-r from-gray-50 to-white"]])},[t("div",Dt,[t("div",Tt,[t("div",{class:s(["p-2 rounded-lg",[e(o)?"bg-indigo-500/10":"bg-indigo-50"]])},[d(e(L),{class:s(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])],2),t("h3",{class:s(["text-xl font-semibold leading-6",[e(o)?"text-white":"text-gray-900"]])},g(l.value.text==null?"编辑文件信息":"编辑文信息"),3)]),t("button",{onClick:_,class:s(["rounded-lg p-2 transition-all duration-200 hover:rotate-90",[e(o)?"text-gray-400 hover:text-white hover:bg-white/10":"text-gray-500 hover:text-gray-700 hover:bg-gray-100"]])},i[14]||(i[14]=[t("svg",{class:"h-5 w-5",fill:"none",viewBox:"0 0 24 24","stroke-width":"2",stroke:"currentColor"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)]),2)])],2),t("div",Bt,[t("div",It,[t("div",Lt,[t("label",{class:s(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[i[15]||(i[15]=t("span",null,"粮票号",-1)),t("div",{class:s(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Pt,[x(t("input",{type:"text","onUpdate:modelValue":i[3]||(i[3]=a=>l.value.code=a),class:s(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入粮票号"},null,2),[[y,l.value.code]]),t("div",Et,[d(e(h),{class:s(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),l.value.text==null?(c(),u("div",qt,[t("label",{class:s(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[i[16]||(i[16]=t("span",null,"文件名称",-1)),t("div",{class:s(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",At,[x(t("input",{type:"text","onUpdate:modelValue":i[4]||(i[4]=a=>l.value.prefix=a),class:s(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入文件名称"},null,2),[[y,l.value.prefix]]),t("div",Ht,[d(e(h),{class:s(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])])):b("",!0),l.value.text==null?(c(),u("div",Kt,[t("label",{class:s(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[i[17]||(i[17]=t("span",null,"文件后缀",-1)),t("div",{class:s(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Rt,[x(t("input",{type:"text","onUpdate:modelValue":i[5]||(i[5]=a=>l.value.suffix=a),class:s(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入文件后缀"},null,2),[[y,l.value.suffix]]),t("div",Yt,[d(e(h),{class:s(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])])):b("",!0),l.value.text!=null?(c(),u("div",Gt,[t("label",{class:s(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[i[18]||(i[18]=t("span",null,"文本内容",-1)),t("div",{class:s(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Jt,[x(t("textarea",{rows:"4","onUpdate:modelValue":i[6]||(i[6]=a=>l.value.text=a),class:s(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入文本内容"},null,2),[[y,l.value.text]]),t("div",Nt,[d(e(h),{class:s(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])])):b("",!0),t("div",Ot,[t("label",{class:s(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[i[19]||(i[19]=t("span",null,"过期时间",-1)),t("div",{class:s(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Qt,[x(t("input",{type:"datetime-local","onUpdate:modelValue":i[7]||(i[7]=a=>l.value.expired_at=a),class:s(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]])},null,2),[[y,l.value.expired_at]]),t("div",Wt,[d(e(h),{class:s(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])]),t("div",Xt,[t("label",{class:s(["text-sm font-medium flex items-center space-x-2 transition-colors duration-200",[e(o)?"text-gray-300 group-focus-within:text-indigo-400":"text-gray-700 group-focus-within:text-indigo-600"]])},[i[20]||(i[20]=t("span",null,"下载次数限制",-1)),t("div",{class:s(["h-px flex-1 transition-colors duration-200",[e(o)?"bg-gray-700 group-focus-within:bg-indigo-500/50":"bg-gray-200 group-focus-within:bg-indigo-500/30"]])},null,2)],2),t("div",Zt,[x(t("input",{type:"number","onUpdate:modelValue":i[8]||(i[8]=a=>l.value.expired_count=a),class:s(["block w-full rounded-lg border-0 py-2.5 pl-4 pr-10 transition-all duration-200 focus:ring-2 focus:ring-inset sm:text-sm",[e(o)?"bg-gray-700/50 text-white placeholder-gray-400 focus:ring-indigo-500/50":"bg-gray-50 text-gray-900 placeholder-gray-400 focus:ring-indigo-500"]]),placeholder:"输入下载次数限制"},null,2),[[y,l.value.expired_count]]),t("div",te,[d(e(h),{class:s(["w-5 h-5",[e(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])])])])])]),t("div",{class:s(["flex items-center justify-end gap-3 px-6 py-4 border-t bg-gradient-to-b",[e(o)?"border-gray-700/50 from-gray-800/50 to-gray-800":"border-gray-200 from-gray-50 to-white"]])},[t("button",{onClick:_,class:s(["inline-flex items-center justify-center rounded-lg px-4 py-2.5 text-sm font-medium transition-all duration-200",[e(o)?"bg-gray-700/50 text-gray-300 hover:bg-gray-600/50 hover:text-white":"bg-gray-100 text-gray-700 hover:bg-gray-200"]])}," 取消 ",2),t("button",{onClick:K,class:"inline-flex items-center justify-center rounded-lg px-4 py-2.5 text-sm font-medium transition-all duration-200 bg-gradient-to-r from-indigo-600 to-indigo-500 hover:from-indigo-500 hover:to-indigo-600 text-white shadow-lg shadow-indigo-500/25 hover:shadow-indigo-500/35"},[d(e(h),{class:"w-4 h-4 mr-2"}),i[21]||(i[21]=S(" 保存更改 "))])],2)],2)])])])):b("",!0)]))}});export{ae as default}; diff --git a/themes/2025/assets/LoginView-BksgElri.js b/themes/2025/assets/LoginView-BksgElri.js new file mode 100644 index 000000000..2efecd042 --- /dev/null +++ b/themes/2025/assets/LoginView-BksgElri.js @@ -0,0 +1 @@ +import{I as y,r as u,d as b,u as v,a as w,b as e,n as l,h as o,i as x,g as h,j as k,m as S,v as A,x as V,t as B,B as D,e as j,C as P,_}from"./index-BAgz5Ib8.js";import{B as I}from"./box-tSoVvdHE.js";const M=y("adminData",()=>{const d=u(localStorage.getItem("adminPassword")||"");function n(a){d.value=a,localStorage.setItem("token",a)}return{adminPassword:d,updateAdminPwd:n}}),z={class:"mx-auto h-16 w-16 relative"},C={class:"rounded-md shadow-sm -space-y-px",style:{"margin-bottom":"20px"}},L=["disabled"],N=b({__name:"LoginView",setup(d){const n=v(),a=u(""),i=u(!1),s=x("isDarkMode"),c=M(),p=()=>{let r=!0;return a.value?a.value.length<6&&(n.showAlert("密码长度至少为6位","error"),r=!1):(n.showAlert("无效的密码","error"),r=!1),r},m=D(),f=async()=>{if(p()){P.post("/admin/login",{password:a.value}).then(r=>{c.updateAdminPwd(r.detail.token),m.push("/admin")}).catch(r=>{n.showAlert(r.response.data.detail,"error")}),i.value=!0;try{await new Promise(r=>setTimeout(r,2e3))}catch{}finally{i.value=!1}}};return(r,t)=>(j(),w("div",{class:l(["min-h-screen flex items-center justify-center py-12 px-4 sm:px-6 lg:px-8 transition-colors duration-200 relative overflow-hidden",o(s)?"bg-gray-900":"bg-gray-50"])},[t[6]||(t[6]=e("div",{class:"absolute inset-0 z-0"},[e("div",{class:"cyber-grid"}),e("div",{class:"floating-particles"})],-1)),e("div",{class:l(["max-w-md w-full space-y-8 backdrop-blur-lg bg-opacity-20 p-8 rounded-xl border border-opacity-20",[o(s)?"bg-gray-800 border-gray-600":"bg-white/70 border-gray-200"]])},[e("div",null,[e("div",z,[t[1]||(t[1]=e("div",{class:"absolute inset-0 bg-gradient-to-r from-cyan-500 via-purple-500 to-pink-500 rounded-full animate-spin-slow"},null,-1)),t[2]||(t[2]=e("div",{class:"absolute -inset-2 bg-gradient-to-r from-cyan-500 via-purple-500 to-pink-500 rounded-full opacity-50 blur-md animate-pulse"},null,-1)),e("div",{class:l(["absolute inset-1 rounded-full flex items-center justify-center",o(s)?"bg-gray-800":"bg-white"])},[h(o(I),{class:l(["h-8 w-8",o(s)?"text-cyan-400":"text-cyan-600"])},null,8,["class"])],2)]),e("h2",{class:l(["mt-6 text-center text-3xl font-extrabold",o(s)?"text-white":"text-gray-900"])}," 登录 ",2)]),e("form",{class:"mt-8",onSubmit:k(f,["prevent"])},[t[5]||(t[5]=e("input",{type:"hidden",name:"remember",value:"true"},null,-1)),e("div",C,[e("div",null,[t[3]||(t[3]=e("label",{for:"password",class:"sr-only"},"密码",-1)),S(e("input",{id:"password",name:"password",type:"password",autocomplete:"current-password",required:"","onUpdate:modelValue":t[0]||(t[0]=g=>a.value=g),class:l(["appearance-none rounded-md relative block w-full px-4 py-3 border transition-all duration-200 placeholder-gray-500 focus:outline-none focus:ring-2 focus:ring-cyan-500 focus:border-cyan-500 focus:z-10 sm:text-sm backdrop-blur-sm",o(s)?"bg-gray-800/50 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"bg-white/50 border-gray-300 text-gray-900 hover:border-gray-400"]),placeholder:"密码"},null,2),[[A,a.value]])])]),e("div",null,[e("button",{type:"submit",class:l(["group relative w-full flex justify-center py-3 px-4 border border-transparent text-sm font-medium rounded-md text-white transition-all duration-300 transform hover:scale-[1.02] focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-cyan-500 shadow-lg hover:shadow-cyan-500/50",o(s)?"bg-gradient-to-r from-cyan-500 to-purple-500 hover:from-cyan-600 hover:to-purple-600":"bg-gradient-to-r from-cyan-600 to-purple-600 hover:from-cyan-700 hover:to-purple-700",i.value?"opacity-75 cursor-not-allowed":""]),disabled:i.value},[t[4]||(t[4]=e("span",{class:"absolute left-0 inset-y-0 flex items-center pl-3"},null,-1)),V(" "+B(i.value?"登录中...":"登录"),1)],10,L)])],32)],2)],2))}}),E=_(N,[["__scopeId","data-v-176454c1"]]);export{E as default}; diff --git a/themes/2025/assets/LoginView-CgWlhClB.css b/themes/2025/assets/LoginView-CgWlhClB.css new file mode 100644 index 000000000..07a2fbbc6 --- /dev/null +++ b/themes/2025/assets/LoginView-CgWlhClB.css @@ -0,0 +1 @@ +@keyframes spin-176454c1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin-slow[data-v-176454c1]{animation:spin-176454c1 8s linear infinite}.fade-enter-active[data-v-176454c1],.fade-leave-active[data-v-176454c1]{transition:opacity .3s ease}.fade-enter-from[data-v-176454c1],.fade-leave-to[data-v-176454c1]{opacity:0}input[data-v-176454c1]:focus{box-shadow:0 0 15px #6366f14d}button[data-v-176454c1]:active:not(:disabled){transform:scale(.98)}.cyber-grid[data-v-176454c1]{background-image:linear-gradient(transparent 95%,#6366f11a 50%),linear-gradient(90deg,transparent 95%,rgba(99,102,241,.1) 50%);background-size:30px 30px;width:100%;height:100%;position:absolute;opacity:.5}.floating-particles[data-v-176454c1]{position:absolute;width:100%;height:100%;background:radial-gradient(circle at center,transparent 0%,transparent 100%);filter:url(#gooey)}.floating-particles[data-v-176454c1]:before,.floating-particles[data-v-176454c1]:after{content:"";position:absolute;width:100%;height:100%;background-image:radial-gradient(circle at center,rgba(99,102,241,.1) 0%,transparent 50%);animation:float-176454c1 20s infinite linear}.floating-particles[data-v-176454c1]:after{animation-delay:-10s;opacity:.5}@keyframes float-176454c1{0%{transform:translate(0) scale(1)}50%{transform:translate(50px,50px) scale(1.5)}to{transform:translate(0) scale(1)}}button[data-v-176454c1]:hover:not(:disabled){box-shadow:0 0 25px #6366f180}.fade-enter-active[data-v-176454c1],.fade-leave-active[data-v-176454c1]{transition:all .5s cubic-bezier(.4,0,.2,1)} diff --git a/themes/2025/assets/LoginView-DXxv6UDD.js b/themes/2025/assets/LoginView-DXxv6UDD.js deleted file mode 100644 index 6aa54ee22..000000000 --- a/themes/2025/assets/LoginView-DXxv6UDD.js +++ /dev/null @@ -1 +0,0 @@ -import{I as y,r as u,d as b,u as v,a as w,b as e,n as l,h as o,i as x,g as h,j as k,m as S,v as A,x as V,t as B,B as D,e as j,C as P,_}from"./index-DKQ1YPO4.js";import{B as I}from"./box-Ty09a89y.js";const M=y("adminData",()=>{const d=u(localStorage.getItem("adminPassword")||"");function n(a){d.value=a,localStorage.setItem("token",a)}return{adminPassword:d,updateAdminPwd:n}}),z={class:"mx-auto h-16 w-16 relative"},C={class:"rounded-md shadow-sm -space-y-px"},L=["disabled"],N=b({__name:"LoginView",setup(d){const n=v(),a=u(""),i=u(!1),s=x("isDarkMode"),c=M(),p=()=>{let r=!0;return a.value?a.value.length<6&&(n.showAlert("密码长度至少为6位","error"),r=!1):(n.showAlert("无效的密码","error"),r=!1),r},m=D(),f=async()=>{if(p()){P.post("/admin/login",{password:a.value}).then(r=>{c.updateAdminPwd(r.detail.token),m.push("/admin")}).catch(r=>{n.showAlert(r.response.data.detail,"error")}),i.value=!0;try{await new Promise(r=>setTimeout(r,2e3))}catch{}finally{i.value=!1}}};return(r,t)=>(j(),w("div",{class:l(["min-h-screen flex items-center justify-center py-12 px-4 sm:px-6 lg:px-8 transition-colors duration-200 relative overflow-hidden",o(s)?"bg-gray-900":"bg-gray-50"])},[t[6]||(t[6]=e("div",{class:"absolute inset-0 z-0"},[e("div",{class:"cyber-grid"}),e("div",{class:"floating-particles"})],-1)),e("div",{class:l(["max-w-md w-full space-y-8 backdrop-blur-lg bg-opacity-20 p-8 rounded-xl border border-opacity-20",[o(s)?"bg-gray-800 border-gray-600":"bg-white/70 border-gray-200"]])},[e("div",null,[e("div",z,[t[1]||(t[1]=e("div",{class:"absolute inset-0 bg-gradient-to-r from-cyan-500 via-purple-500 to-pink-500 rounded-full animate-spin-slow"},null,-1)),t[2]||(t[2]=e("div",{class:"absolute -inset-2 bg-gradient-to-r from-cyan-500 via-purple-500 to-pink-500 rounded-full opacity-50 blur-md animate-pulse"},null,-1)),e("div",{class:l(["absolute inset-1 rounded-full flex items-center justify-center",o(s)?"bg-gray-800":"bg-white"])},[h(o(I),{class:l(["h-8 w-8",o(s)?"text-cyan-400":"text-cyan-600"])},null,8,["class"])],2)]),e("h2",{class:l(["mt-6 text-center text-3xl font-extrabold",o(s)?"text-white":"text-gray-900"])}," 登录 ",2)]),e("form",{class:"mt-8",onSubmit:k(f,["prevent"])},[t[5]||(t[5]=e("input",{type:"hidden",name:"remember",value:"true"},null,-1)),e("div",C,[e("div",null,[t[3]||(t[3]=e("label",{for:"password",class:"sr-only"},"密码",-1)),S(e("input",{id:"password",name:"password",type:"password",autocomplete:"current-password",required:"","onUpdate:modelValue":t[0]||(t[0]=g=>a.value=g),class:l(["appearance-none rounded-t-md relative block w-full px-4 py-3 border transition-all duration-200 placeholder-gray-500 focus:outline-none focus:ring-2 focus:ring-cyan-500 focus:border-cyan-500 focus:z-10 sm:text-sm backdrop-blur-sm",o(s)?"bg-gray-800/50 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"bg-white/50 border-gray-300 text-gray-900 hover:border-gray-400"]),placeholder:"密码"},null,2),[[A,a.value]])])]),e("div",null,[e("button",{type:"submit",class:l(["group relative w-full flex justify-center py-3 px-4 border border-transparent text-sm font-medium rounded-md text-white transition-all duration-300 transform hover:scale-[1.02] focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-cyan-500 shadow-lg hover:shadow-cyan-500/50",o(s)?"bg-gradient-to-r from-cyan-500 to-purple-500 hover:from-cyan-600 hover:to-purple-600":"bg-gradient-to-r from-cyan-600 to-purple-600 hover:from-cyan-700 hover:to-purple-700",i.value?"opacity-75 cursor-not-allowed":""]),disabled:i.value},[t[4]||(t[4]=e("span",{class:"absolute left-0 inset-y-0 flex items-center pl-3"},null,-1)),V(" "+B(i.value?"登录中...":"登录"),1)],10,L)])],32)],2)],2))}}),E=_(N,[["__scopeId","data-v-44028ffe"]]);export{E as default}; diff --git a/themes/2025/assets/LoginView-T1LQBbzg.js b/themes/2025/assets/LoginView-T1LQBbzg.js deleted file mode 100644 index 1b12db46e..000000000 --- a/themes/2025/assets/LoginView-T1LQBbzg.js +++ /dev/null @@ -1 +0,0 @@ -import{I as y,r as u,d as b,u as v,a as w,b as e,n as l,h as o,i as x,g as h,j as k,m as S,v as A,x as V,t as B,B as D,e as j,C as P,_}from"./index-C-4-823a.js";import{B as I}from"./box-Btnwq7DC.js";const M=y("adminData",()=>{const d=u(localStorage.getItem("adminPassword")||"");function n(a){d.value=a,localStorage.setItem("token",a)}return{adminPassword:d,updateAdminPwd:n}}),z={class:"mx-auto h-16 w-16 relative"},C={class:"rounded-md shadow-sm -space-y-px"},L=["disabled"],N=b({__name:"LoginView",setup(d){const n=v(),a=u(""),i=u(!1),s=x("isDarkMode"),c=M(),p=()=>{let r=!0;return a.value?a.value.length<6&&(n.showAlert("密码长度至少为6位","error"),r=!1):(n.showAlert("无效的密码","error"),r=!1),r},m=D(),f=async()=>{if(p()){P.post("/admin/login",{password:a.value}).then(r=>{c.updateAdminPwd(r.detail.token),m.push("/admin")}).catch(r=>{n.showAlert(r.response.data.detail,"error")}),i.value=!0;try{await new Promise(r=>setTimeout(r,2e3))}catch{}finally{i.value=!1}}};return(r,t)=>(j(),w("div",{class:l(["min-h-screen flex items-center justify-center py-12 px-4 sm:px-6 lg:px-8 transition-colors duration-200 relative overflow-hidden",o(s)?"bg-gray-900":"bg-gray-50"])},[t[6]||(t[6]=e("div",{class:"absolute inset-0 z-0"},[e("div",{class:"cyber-grid"}),e("div",{class:"floating-particles"})],-1)),e("div",{class:l(["max-w-md w-full space-y-8 backdrop-blur-lg bg-opacity-20 p-8 rounded-xl border border-opacity-20",[o(s)?"bg-gray-800 border-gray-600":"bg-white/70 border-gray-200"]])},[e("div",null,[e("div",z,[t[1]||(t[1]=e("div",{class:"absolute inset-0 bg-gradient-to-r from-cyan-500 via-purple-500 to-pink-500 rounded-full animate-spin-slow"},null,-1)),t[2]||(t[2]=e("div",{class:"absolute -inset-2 bg-gradient-to-r from-cyan-500 via-purple-500 to-pink-500 rounded-full opacity-50 blur-md animate-pulse"},null,-1)),e("div",{class:l(["absolute inset-1 rounded-full flex items-center justify-center",o(s)?"bg-gray-800":"bg-white"])},[h(o(I),{class:l(["h-8 w-8",o(s)?"text-cyan-400":"text-cyan-600"])},null,8,["class"])],2)]),e("h2",{class:l(["mt-6 text-center text-3xl font-extrabold",o(s)?"text-white":"text-gray-900"])}," 登录 ",2)]),e("form",{class:"mt-8",onSubmit:k(f,["prevent"])},[t[5]||(t[5]=e("input",{type:"hidden",name:"remember",value:"true"},null,-1)),e("div",C,[e("div",null,[t[3]||(t[3]=e("label",{for:"password",class:"sr-only"},"密码",-1)),S(e("input",{id:"password",name:"password",type:"password",autocomplete:"current-password",required:"","onUpdate:modelValue":t[0]||(t[0]=g=>a.value=g),class:l(["appearance-none rounded-t-md relative block w-full px-4 py-3 border transition-all duration-200 placeholder-gray-500 focus:outline-none focus:ring-2 focus:ring-cyan-500 focus:border-cyan-500 focus:z-10 sm:text-sm backdrop-blur-sm",o(s)?"bg-gray-800/50 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"bg-white/50 border-gray-300 text-gray-900 hover:border-gray-400"]),placeholder:"密码"},null,2),[[A,a.value]])])]),e("div",null,[e("button",{type:"submit",class:l(["group relative w-full flex justify-center py-3 px-4 border border-transparent text-sm font-medium rounded-md text-white transition-all duration-300 transform hover:scale-[1.02] focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-cyan-500 shadow-lg hover:shadow-cyan-500/50",o(s)?"bg-gradient-to-r from-cyan-500 to-purple-500 hover:from-cyan-600 hover:to-purple-600":"bg-gradient-to-r from-cyan-600 to-purple-600 hover:from-cyan-700 hover:to-purple-700",i.value?"opacity-75 cursor-not-allowed":""]),disabled:i.value},[t[4]||(t[4]=e("span",{class:"absolute left-0 inset-y-0 flex items-center pl-3"},null,-1)),V(" "+B(i.value?"登录中...":"登录"),1)],10,L)])],32)],2)],2))}}),E=_(N,[["__scopeId","data-v-44028ffe"]]);export{E as default}; diff --git a/themes/2025/assets/LoginView-zMyguVQQ.css b/themes/2025/assets/LoginView-zMyguVQQ.css deleted file mode 100644 index 018cd5990..000000000 --- a/themes/2025/assets/LoginView-zMyguVQQ.css +++ /dev/null @@ -1 +0,0 @@ -@keyframes spin-44028ffe{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin-slow[data-v-44028ffe]{animation:spin-44028ffe 8s linear infinite}.fade-enter-active[data-v-44028ffe],.fade-leave-active[data-v-44028ffe]{transition:opacity .3s ease}.fade-enter-from[data-v-44028ffe],.fade-leave-to[data-v-44028ffe]{opacity:0}input[data-v-44028ffe]:focus{box-shadow:0 0 15px #6366f14d}button[data-v-44028ffe]:active:not(:disabled){transform:scale(.98)}.cyber-grid[data-v-44028ffe]{background-image:linear-gradient(transparent 95%,#6366f11a 50%),linear-gradient(90deg,transparent 95%,rgba(99,102,241,.1) 50%);background-size:30px 30px;width:100%;height:100%;position:absolute;opacity:.5}.floating-particles[data-v-44028ffe]{position:absolute;width:100%;height:100%;background:radial-gradient(circle at center,transparent 0%,transparent 100%);filter:url(#gooey)}.floating-particles[data-v-44028ffe]:before,.floating-particles[data-v-44028ffe]:after{content:"";position:absolute;width:100%;height:100%;background-image:radial-gradient(circle at center,rgba(99,102,241,.1) 0%,transparent 50%);animation:float-44028ffe 20s infinite linear}.floating-particles[data-v-44028ffe]:after{animation-delay:-10s;opacity:.5}@keyframes float-44028ffe{0%{transform:translate(0) scale(1)}50%{transform:translate(50px,50px) scale(1.5)}to{transform:translate(0) scale(1)}}button[data-v-44028ffe]:hover:not(:disabled){box-shadow:0 0 25px #6366f180}.fade-enter-active[data-v-44028ffe],.fade-leave-active[data-v-44028ffe]{transition:all .5s cubic-bezier(.4,0,.2,1)} diff --git a/themes/2025/assets/RetrievewFileView-BgLHFGkc.css b/themes/2025/assets/RetrievewFileView-BgLHFGkc.css deleted file mode 100644 index d180fe6a2..000000000 --- a/themes/2025/assets/RetrievewFileView-BgLHFGkc.css +++ /dev/null @@ -1 +0,0 @@ -@keyframes blob-3129e8a3{0%,to{transform:translate(0) scale(1)}25%{transform:translate(20px,-50px) scale(1.1)}50%{transform:translate(-20px,20px) scale(.9)}75%{transform:translate(50px,50px) scale(1.05)}}.animate-blob-1[data-v-3129e8a3]{animation:blob-3129e8a3 25s infinite}.animate-blob-2[data-v-3129e8a3]{animation:blob-3129e8a3 30s infinite}.animate-blob-3[data-v-3129e8a3]{animation:blob-3129e8a3 35s infinite}.animate-blob-4[data-v-3129e8a3]{animation:blob-3129e8a3 40s infinite}.animate-spin-slow[data-v-3129e8a3]{animation:spin-3129e8a3 8s linear infinite}@keyframes spin-3129e8a3{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-enter-active[data-v-3129e8a3],.fade-leave-active[data-v-3129e8a3]{transition:opacity .3s ease}.fade-enter-from[data-v-3129e8a3],.fade-leave-to[data-v-3129e8a3]{opacity:0}.list-enter-active[data-v-3129e8a3],.list-leave-active[data-v-3129e8a3]{transition:all .5s ease}.list-enter-from[data-v-3129e8a3],.list-leave-to[data-v-3129e8a3]{opacity:0;transform:translate(30px)}.drawer-enter-active[data-v-3129e8a3],.drawer-leave-active[data-v-3129e8a3]{transition:transform .3s ease}.drawer-enter-from[data-v-3129e8a3],.drawer-leave-to[data-v-3129e8a3]{transform:translate(100%)}.w-97-100[data-v-3129e8a3]{width:97%}[data-v-3129e8a3] .prose{text-align:left}[data-v-3129e8a3] .prose h1,[data-v-3129e8a3] .prose h2,[data-v-3129e8a3] .prose h3,[data-v-3129e8a3] .prose h4,[data-v-3129e8a3] .prose h5,[data-v-3129e8a3] .prose h6{color:#4f46e5}@media (prefers-color-scheme: dark){[data-v-3129e8a3] .prose h1,[data-v-3129e8a3] .prose h2,[data-v-3129e8a3] .prose h3,[data-v-3129e8a3] .prose h4,[data-v-3129e8a3] .prose h5,[data-v-3129e8a3] .prose h6{color:#818cf8}}@media (min-width: 640px){.sm\:w-120[data-v-3129e8a3]{width:30rem}}.custom-scrollbar[data-v-3129e8a3]{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.3) transparent}.custom-scrollbar[data-v-3129e8a3]::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar[data-v-3129e8a3]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar[data-v-3129e8a3]::-webkit-scrollbar-thumb{background-color:#9ca3af4d;border-radius:3px;-webkit-transition:background-color .3s;transition:background-color .3s}.custom-scrollbar[data-v-3129e8a3]::-webkit-scrollbar-thumb:hover{background-color:#9ca3af80}[data-v-3129e8a3] [class*=dark] .custom-scrollbar{scrollbar-color:rgba(75,85,99,.3) transparent}[data-v-3129e8a3] [class*=dark] .custom-scrollbar::-webkit-scrollbar-thumb{background-color:#4b55634d}[data-v-3129e8a3] [class*=dark] .custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:#4b556380} diff --git a/themes/2025/assets/RetrievewFileView-DyKPLNPu.js b/themes/2025/assets/RetrievewFileView-Cwnagjpx.js similarity index 57% rename from themes/2025/assets/RetrievewFileView-DyKPLNPu.js rename to themes/2025/assets/RetrievewFileView-Cwnagjpx.js index d3bf26cfc..4f203f21c 100644 --- a/themes/2025/assets/RetrievewFileView-DyKPLNPu.js +++ b/themes/2025/assets/RetrievewFileView-Cwnagjpx.js @@ -1,49 +1,49 @@ -var Ue=Object.defineProperty;var Fe=(d,e,t)=>e in d?Ue(d,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):d[e]=t;var v=(d,e,t)=>Fe(d,typeof e!="symbol"?e+"":e,t);import{c as re,_ as Ze,u as Oe,D as Qe,r as q,o as He,E as Ne,w as Ve,f as We,a as L,b as h,g as _,n as b,h as f,i as Ge,t as j,j as Xe,m as Ke,l as ee,v as Je,k as O,x as P,y as Ye,X as ke,z as et,F as tt,s as nt,T as ae,B as st,e as M,C as it}from"./index-DKQ1YPO4.js";import{u as rt,S as ot,C as lt,Q as at,d as ct,E as ut}from"./clipboard-BhvW87y2.js";import{B as ht}from"./box-Ty09a89y.js";import{F as be}from"./file-D8mQlyUF.js";import{H as pt}from"./hard-drive-C37_tD5A.js";import{T as dt}from"./trash-FNvP9-P8.js";/** +var Fe=Object.defineProperty;var Ze=(d,e,t)=>e in d?Fe(d,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):d[e]=t;var v=(d,e,t)=>Ze(d,typeof e!="symbol"?e+"":e,t);import{c as re,_ as Oe,u as Qe,D as He,r as q,o as Ne,E as Ve,w as We,f as Ge,a as L,b as h,g as $,n as b,h as f,i as Xe,t as B,j as Ke,m as Je,l as P,v as Ye,k as Q,x as U,y as et,X as ke,z as tt,F as nt,s as st,T as ae,B as it,e as S,A as be,C as rt}from"./index-BAgz5Ib8.js";import{u as ot,S as lt,C as at,Q as ct,e as ut,E as ht}from"./clipboard-ClFPPG_0.js";import{B as pt}from"./box-tSoVvdHE.js";import{F as we}from"./file-d22J40ax.js";import{H as dt}from"./hard-drive-7q_tW7VM.js";import{T as ft,a as gt}from"./trash-R3aCwIiM.js";/** * @license lucide-vue-next v0.445.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const ft=re("ArrowRightIcon",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);/** + */const xt=re("ArrowRightIcon",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);/** * @license lucide-vue-next v0.445.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const gt=re("CalendarIcon",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);/** + */const kt=re("CalendarIcon",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);/** * @license lucide-vue-next v0.445.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const xt=re("CopyIcon",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/** + */const bt=re("CopyIcon",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/** * @license lucide-vue-next v0.445.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const we=re("DownloadIcon",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]);var Q=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Te={exports:{}};(function(d,e){(function(t,n){n()})(Q,function(){function t(c,l){return typeof l>"u"?l={autoBom:!1}:typeof l!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),l={autoBom:!l}),l.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(c.type)?new Blob(["\uFEFF",c],{type:c.type}):c}function n(c,l,u){var p=new XMLHttpRequest;p.open("GET",c),p.responseType="blob",p.onload=function(){a(p.response,l,u)},p.onerror=function(){console.error("could not download file")},p.send()}function s(c){var l=new XMLHttpRequest;l.open("HEAD",c,!1);try{l.send()}catch{}return 200<=l.status&&299>=l.status}function i(c){try{c.dispatchEvent(new MouseEvent("click"))}catch{var l=document.createEvent("MouseEvents");l.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),c.dispatchEvent(l)}}var r=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof Q=="object"&&Q.global===Q?Q:void 0,o=r.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),a=r.saveAs||(typeof window!="object"||window!==r?function(){}:"download"in HTMLAnchorElement.prototype&&!o?function(c,l,u){var p=r.URL||r.webkitURL,k=document.createElement("a");l=l||c.name||"download",k.download=l,k.rel="noopener",typeof c=="string"?(k.href=c,k.origin===location.origin?i(k):s(k.href)?n(c,l,u):i(k,k.target="_blank")):(k.href=p.createObjectURL(c),setTimeout(function(){p.revokeObjectURL(k.href)},4e4),setTimeout(function(){i(k)},0))}:"msSaveOrOpenBlob"in navigator?function(c,l,u){if(l=l||c.name||"download",typeof c!="string")navigator.msSaveOrOpenBlob(t(c,u),l);else if(s(c))n(c,l,u);else{var p=document.createElement("a");p.href=c,p.target="_blank",setTimeout(function(){i(p)})}}:function(c,l,u,p){if(p=p||open("","_blank"),p&&(p.document.title=p.document.body.innerText="downloading..."),typeof c=="string")return n(c,l,u);var k=c.type==="application/octet-stream",w=/constructor/i.test(r.HTMLElement)||r.safari,T=/CriOS\/[\d]+/.test(navigator.userAgent);if((T||k&&w||o)&&typeof FileReader<"u"){var R=new FileReader;R.onloadend=function(){var E=R.result;E=T?E:E.replace(/^data:[^;]*;/,"data:attachment/file;"),p?p.location.href=E:location=E,p=null},R.readAsDataURL(c)}else{var B=r.URL||r.webkitURL,I=B.createObjectURL(c);p?p.location=I:location.href=I,p=null,setTimeout(function(){B.revokeObjectURL(I)},4e4)}});r.saveAs=a.saveAs=a,d.exports=a})})(Te);var kt=Te.exports;function ue(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let F=ue();function Re(d){F=d}const ze=/[&<>"']/,bt=new RegExp(ze.source,"g"),Se=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,wt=new RegExp(Se.source,"g"),mt={"&":"&","<":"<",">":">",'"':""","'":"'"},me=d=>mt[d];function z(d,e){if(e){if(ze.test(d))return d.replace(bt,me)}else if(Se.test(d))return d.replace(wt,me);return d}const yt=/(^|[^\[])\^/g;function y(d,e){let t=typeof d=="string"?d:d.source;e=e||"";const n={replace:(s,i)=>{let r=typeof i=="string"?i:i.source;return r=r.replace(yt,"$1"),t=t.replace(s,r),n},getRegex:()=>new RegExp(t,e)};return n}function ye(d){try{d=encodeURI(d).replace(/%25/g,"%")}catch{return null}return d}const V={exec:()=>null};function ve(d,e){const t=d.replace(/\|/g,(i,r,o)=>{let a=!1,c=r;for(;--c>=0&&o[c]==="\\";)a=!a;return a?"|":" |"}),n=t.split(/ \|/);let s=0;if(n[0].trim()||n.shift(),n.length>0&&!n[n.length-1].trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length"u"?l={autoBom:!1}:typeof l!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),l={autoBom:!l}),l.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(c.type)?new Blob(["\uFEFF",c],{type:c.type}):c}function n(c,l,u){var p=new XMLHttpRequest;p.open("GET",c),p.responseType="blob",p.onload=function(){a(p.response,l,u)},p.onerror=function(){console.error("could not download file")},p.send()}function s(c){var l=new XMLHttpRequest;l.open("HEAD",c,!1);try{l.send()}catch{}return 200<=l.status&&299>=l.status}function i(c){try{c.dispatchEvent(new MouseEvent("click"))}catch{var l=document.createEvent("MouseEvents");l.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),c.dispatchEvent(l)}}var r=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof H=="object"&&H.global===H?H:void 0,o=r.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),a=r.saveAs||(typeof window!="object"||window!==r?function(){}:"download"in HTMLAnchorElement.prototype&&!o?function(c,l,u){var p=r.URL||r.webkitURL,x=document.createElement("a");l=l||c.name||"download",x.download=l,x.rel="noopener",typeof c=="string"?(x.href=c,x.origin===location.origin?i(x):s(x.href)?n(c,l,u):i(x,x.target="_blank")):(x.href=p.createObjectURL(c),setTimeout(function(){p.revokeObjectURL(x.href)},4e4),setTimeout(function(){i(x)},0))}:"msSaveOrOpenBlob"in navigator?function(c,l,u){if(l=l||c.name||"download",typeof c!="string")navigator.msSaveOrOpenBlob(t(c,u),l);else if(s(c))n(c,l,u);else{var p=document.createElement("a");p.href=c,p.target="_blank",setTimeout(function(){i(p)})}}:function(c,l,u,p){if(p=p||open("","_blank"),p&&(p.document.title=p.document.body.innerText="downloading..."),typeof c=="string")return n(c,l,u);var x=c.type==="application/octet-stream",w=/constructor/i.test(r.HTMLElement)||r.safari,T=/CriOS\/[\d]+/.test(navigator.userAgent);if((T||x&&w||o)&&typeof FileReader<"u"){var R=new FileReader;R.onloadend=function(){var C=R.result;C=T?C:C.replace(/^data:[^;]*;/,"data:attachment/file;"),p?p.location.href=C:location=C,p=null},R.readAsDataURL(c)}else{var j=r.URL||r.webkitURL,M=j.createObjectURL(c);p?p.location=M:location.href=M,p=null,setTimeout(function(){j.revokeObjectURL(M)},4e4)}});r.saveAs=a.saveAs=a,d.exports=a})})(Re);var wt=Re.exports;function ue(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let Z=ue();function ze(d){Z=d}const Se=/[&<>"']/,mt=new RegExp(Se.source,"g"),Ae=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,yt=new RegExp(Ae.source,"g"),vt={"&":"&","<":"<",">":">",'"':""","'":"'"},ye=d=>vt[d];function z(d,e){if(e){if(Se.test(d))return d.replace(mt,ye)}else if(Ae.test(d))return d.replace(yt,ye);return d}const _t=/(^|[^\[])\^/g;function y(d,e){let t=typeof d=="string"?d:d.source;e=e||"";const n={replace:(s,i)=>{let r=typeof i=="string"?i:i.source;return r=r.replace(_t,"$1"),t=t.replace(s,r),n},getRegex:()=>new RegExp(t,e)};return n}function ve(d){try{d=encodeURI(d).replace(/%25/g,"%")}catch{return null}return d}const W={exec:()=>null};function _e(d,e){const t=d.replace(/\|/g,(i,r,o)=>{let a=!1,c=r;for(;--c>=0&&o[c]==="\\";)a=!a;return a?"|":" |"}),n=t.split(/ \|/);let s=0;if(n[0].trim()||n.shift(),n.length>0&&!n[n.length-1].trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length{const i=s.match(/^\s+/);if(i===null)return s;const[r]=i;return r.length>=n.length?s.slice(n.length):s}).join(` -`)}class ne{constructor(e){v(this,"options");v(this,"rules");v(this,"lexer");this.options=e||F}space(e){const t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){const t=this.rules.block.code.exec(e);if(t){const n=t[0].replace(/^(?: {1,4}| {0,3}\t)/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:H(n,` -`)}}}fences(e){const t=this.rules.block.fences.exec(e);if(t){const n=t[0],s=_t(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:s}}}heading(e){const t=this.rules.block.heading.exec(e);if(t){let n=t[2].trim();if(/#$/.test(n)){const s=H(n,"#");(this.options.pedantic||!s||/ $/.test(s))&&(n=s.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){const t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:H(t[0],` -`)}}blockquote(e){const t=this.rules.block.blockquote.exec(e);if(t){let n=H(t[0],` +`)}class ne{constructor(e){v(this,"options");v(this,"rules");v(this,"lexer");this.options=e||Z}space(e){const t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){const t=this.rules.block.code.exec(e);if(t){const n=t[0].replace(/^(?: {1,4}| {0,3}\t)/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:N(n,` +`)}}}fences(e){const t=this.rules.block.fences.exec(e);if(t){const n=t[0],s=Tt(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:s}}}heading(e){const t=this.rules.block.heading.exec(e);if(t){let n=t[2].trim();if(/#$/.test(n)){const s=N(n,"#");(this.options.pedantic||!s||/ $/.test(s))&&(n=s.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){const t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:N(t[0],` +`)}}blockquote(e){const t=this.rules.block.blockquote.exec(e);if(t){let n=N(t[0],` `).split(` `),s="",i="";const r=[];for(;n.length>0;){let o=!1;const a=[];let c;for(c=0;c/.test(n[c]))a.push(n[c]),o=!0;else if(!o)a.push(n[c]);else break;n=n.slice(c);const l=a.join(` `),u=l.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` $1`).replace(/^ {0,3}>[ \t]?/gm,"");s=s?`${s} ${l}`:l,i=i?`${i} -${u}`:u;const p=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(u,r,!0),this.lexer.state.top=p,n.length===0)break;const k=r[r.length-1];if((k==null?void 0:k.type)==="code")break;if((k==null?void 0:k.type)==="blockquote"){const w=k,T=w.raw+` +${u}`:u;const p=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(u,r,!0),this.lexer.state.top=p,n.length===0)break;const x=r[r.length-1];if((x==null?void 0:x.type)==="code")break;if((x==null?void 0:x.type)==="blockquote"){const w=x,T=w.raw+` `+n.join(` -`),R=this.blockquote(T);r[r.length-1]=R,s=s.substring(0,s.length-w.raw.length)+R.raw,i=i.substring(0,i.length-w.text.length)+R.text;break}else if((k==null?void 0:k.type)==="list"){const w=k,T=w.raw+` +`),R=this.blockquote(T);r[r.length-1]=R,s=s.substring(0,s.length-w.raw.length)+R.raw,i=i.substring(0,i.length-w.text.length)+R.text;break}else if((x==null?void 0:x.type)==="list"){const w=x,T=w.raw+` `+n.join(` -`),R=this.list(T);r[r.length-1]=R,s=s.substring(0,s.length-k.raw.length)+R.raw,i=i.substring(0,i.length-w.raw.length)+R.raw,n=T.substring(r[r.length-1].raw.length).split(` +`),R=this.list(T);r[r.length-1]=R,s=s.substring(0,s.length-x.raw.length)+R.raw,i=i.substring(0,i.length-w.raw.length)+R.raw,n=T.substring(r[r.length-1].raw.length).split(` `);continue}}return{type:"blockquote",raw:s,tokens:r,text:i}}}list(e){let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim();const s=n.length>1,i={type:"list",raw:"",ordered:s,start:s?+n.slice(0,-1):"",loose:!1,items:[]};n=s?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=s?n:"[*+-]");const r=new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`);let o=!1;for(;e;){let a=!1,c="",l="";if(!(t=r.exec(e))||this.rules.block.hr.test(e))break;c=t[0],e=e.substring(c.length);let u=t[2].split(` -`,1)[0].replace(/^\t+/,B=>" ".repeat(3*B.length)),p=e.split(` -`,1)[0],k=!u.trim(),w=0;if(this.options.pedantic?(w=2,l=u.trimStart()):k?w=t[1].length+1:(w=t[2].search(/[^ ]/),w=w>4?1:w,l=u.slice(w),w+=t[1].length),k&&/^[ \t]*$/.test(p)&&(c+=p+` -`,e=e.substring(p.length+1),a=!0),!a){const B=new RegExp(`^ {0,${Math.min(3,w-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),I=new RegExp(`^ {0,${Math.min(3,w-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),E=new RegExp(`^ {0,${Math.min(3,w-1)}}(?:\`\`\`|~~~)`),K=new RegExp(`^ {0,${Math.min(3,w-1)}}#`),le=new RegExp(`^ {0,${Math.min(3,w-1)}}<(?:[a-z].*>|!--)`,"i");for(;e;){const Z=e.split(` -`,1)[0];let D;if(p=Z,this.options.pedantic?(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," "),D=p):D=p.replace(/\t/g," "),E.test(p)||K.test(p)||le.test(p)||B.test(p)||I.test(p))break;if(D.search(/[^ ]/)>=w||!p.trim())l+=` -`+D.slice(w);else{if(k||u.replace(/\t/g," ").search(/[^ ]/)>=4||E.test(u)||K.test(u)||I.test(u))break;l+=` -`+p}!k&&!p.trim()&&(k=!0),c+=Z+` -`,e=e.substring(Z.length+1),u=D.slice(w)}}i.loose||(o?i.loose=!0:/\n[ \t]*\n[ \t]*$/.test(c)&&(o=!0));let T=null,R;this.options.gfm&&(T=/^\[[ xX]\] /.exec(l),T&&(R=T[0]!=="[ ] ",l=l.replace(/^\[[ xX]\] +/,""))),i.items.push({type:"list_item",raw:c,task:!!T,checked:R,loose:!1,text:l,tokens:[]}),i.raw+=c}i.items[i.items.length-1].raw=i.items[i.items.length-1].raw.trimEnd(),i.items[i.items.length-1].text=i.items[i.items.length-1].text.trimEnd(),i.raw=i.raw.trimEnd();for(let a=0;au.type==="space"),l=c.length>0&&c.some(u=>/\n.*\n/.test(u.raw));i.loose=l}if(i.loose)for(let a=0;a$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:n,raw:t[0],href:s,title:i}}}table(e){const t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;const n=ve(t[1]),s=t[2].replace(/^\||\| *$/g,"").split("|"),i=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` -`):[],r={type:"table",raw:t[0],header:[],align:[],rows:[]};if(n.length===s.length){for(const o of s)/^ *-+: *$/.test(o)?r.align.push("right"):/^ *:-+: *$/.test(o)?r.align.push("center"):/^ *:-+ *$/.test(o)?r.align.push("left"):r.align.push(null);for(let o=0;o({text:a,tokens:this.lexer.inline(a),header:!1,align:r.align[c]})));return r}}lheading(e){const t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[2].charAt(0)==="="?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){const t=this.rules.block.paragraph.exec(e);if(t){const n=t[1].charAt(t[1].length-1)===` -`?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:n,tokens:this.lexer.inline(n)}}}text(e){const t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){const t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:z(t[1])}}tag(e){const t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){const t=this.rules.inline.link.exec(e);if(t){const n=t[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;const r=H(n.slice(0,-1),"\\");if((n.length-r.length)%2===0)return}else{const r=vt(t[2],"()");if(r>-1){const a=(t[0].indexOf("!")===0?5:4)+t[1].length+r;t[2]=t[2].substring(0,r),t[0]=t[0].substring(0,a).trim(),t[3]=""}}let s=t[2],i="";if(this.options.pedantic){const r=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(s);r&&(s=r[1],i=r[3])}else i=t[3]?t[3].slice(1,-1):"";return s=s.trim(),/^$/.test(n)?s=s.slice(1):s=s.slice(1,-1)),_e(t,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){const s=(n[2]||n[1]).replace(/\s+/g," "),i=t[s.toLowerCase()];if(!i){const r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return _e(n,i,n[0],this.lexer)}}emStrong(e,t,n=""){let s=this.rules.inline.emStrongLDelim.exec(e);if(!s||s[3]&&n.match(/[\p{L}\p{N}]/u))return;if(!(s[1]||s[2]||"")||!n||this.rules.inline.punctuation.exec(n)){const r=[...s[0]].length-1;let o,a,c=r,l=0;const u=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(u.lastIndex=0,t=t.slice(-1*e.length+r);(s=u.exec(t))!=null;){if(o=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!o)continue;if(a=[...o].length,s[3]||s[4]){c+=a;continue}else if((s[5]||s[6])&&r%3&&!((r+a)%3)){l+=a;continue}if(c-=a,c>0)continue;a=Math.min(a,a+c+l);const p=[...s[0]][0].length,k=e.slice(0,r+s.index+p+a);if(Math.min(r,a)%2){const T=k.slice(1,-1);return{type:"em",raw:k,text:T,tokens:this.lexer.inlineTokens(T)}}const w=k.slice(2,-2);return{type:"strong",raw:k,text:w,tokens:this.lexer.inlineTokens(w)}}}}codespan(e){const t=this.rules.inline.code.exec(e);if(t){let n=t[2].replace(/\n/g," ");const s=/[^ ]/.test(n),i=/^ /.test(n)&&/ $/.test(n);return s&&i&&(n=n.substring(1,n.length-1)),n=z(n,!0),{type:"codespan",raw:t[0],text:n}}}br(e){const t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){const t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){const t=this.rules.inline.autolink.exec(e);if(t){let n,s;return t[2]==="@"?(n=z(t[1]),s="mailto:"+n):(n=z(t[1]),s=n),{type:"link",raw:t[0],text:n,href:s,tokens:[{type:"text",raw:n,text:n}]}}}url(e){var n;let t;if(t=this.rules.inline.url.exec(e)){let s,i;if(t[2]==="@")s=z(t[0]),i="mailto:"+s;else{let r;do r=t[0],t[0]=((n=this.rules.inline._backpedal.exec(t[0]))==null?void 0:n[0])??"";while(r!==t[0]);s=z(t[0]),t[1]==="www."?i="http://"+t[0]:i=t[0]}return{type:"link",raw:t[0],text:s,href:i,tokens:[{type:"text",raw:s,text:s}]}}}inlineText(e){const t=this.rules.inline.text.exec(e);if(t){let n;return this.lexer.state.inRawBlock?n=t[0]:n=z(t[0]),{type:"text",raw:t[0],text:n}}}}const $t=/^(?:[ \t]*(?:\n|$))+/,Tt=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Rt=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,G=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,zt=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Ae=/(?:[*+-]|\d{1,9}[.)])/,Ee=y(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Ae).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),he=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,St=/^[^\n]+/,pe=/(?!\s*\])(?:\\.|[^\[\]\\])+/,At=y(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",pe).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Et=y(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Ae).getRegex(),oe="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",de=/|$))/,Ct=y("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",de).replace("tag",oe).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Ce=y(he).replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex(),It=y(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Ce).getRegex(),fe={blockquote:It,code:Tt,def:At,fences:Rt,heading:zt,hr:G,html:Ct,lheading:Ee,list:Et,newline:$t,paragraph:Ce,table:V,text:St},$e=y("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex(),Lt={...fe,table:$e,paragraph:y(he).replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",$e).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex()},Mt={...fe,html:y(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",de).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:V,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:y(he).replace("hr",G).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",Ee).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Ie=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Bt=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Le=/^( {2,}|\\)\n(?!\s*$)/,jt=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,Pt=y(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,X).getRegex(),Ut=y("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,X).getRegex(),Ft=y("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,X).getRegex(),Zt=y(/\\([punct])/,"gu").replace(/punct/g,X).getRegex(),Ot=y(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Qt=y(de).replace("(?:-->|$)","-->").getRegex(),Ht=y("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Qt).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),se=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Nt=y(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",se).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Me=y(/^!?\[(label)\]\[(ref)\]/).replace("label",se).replace("ref",pe).getRegex(),Be=y(/^!?\[(ref)\](?:\[\])?/).replace("ref",pe).getRegex(),Vt=y("reflink|nolink(?!\\()","g").replace("reflink",Me).replace("nolink",Be).getRegex(),ge={_backpedal:V,anyPunctuation:Zt,autolink:Ot,blockSkip:qt,br:Le,code:Bt,del:V,emStrongLDelim:Pt,emStrongRDelimAst:Ut,emStrongRDelimUnd:Ft,escape:Ie,link:Nt,nolink:Be,punctuation:Dt,reflink:Me,reflinkSearch:Vt,tag:Ht,text:jt,url:V},Wt={...ge,link:y(/^!?\[(label)\]\((.*?)\)/).replace("label",se).getRegex(),reflink:y(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",se).getRegex()},ce={...ge,escape:y(Ie).replace("])","~|])").getRegex(),url:y(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\" ".repeat(3*j.length)),p=e.split(` +`,1)[0],x=!u.trim(),w=0;if(this.options.pedantic?(w=2,l=u.trimStart()):x?w=t[1].length+1:(w=t[2].search(/[^ ]/),w=w>4?1:w,l=u.slice(w),w+=t[1].length),x&&/^[ \t]*$/.test(p)&&(c+=p+` +`,e=e.substring(p.length+1),a=!0),!a){const j=new RegExp(`^ {0,${Math.min(3,w-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),M=new RegExp(`^ {0,${Math.min(3,w-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),C=new RegExp(`^ {0,${Math.min(3,w-1)}}(?:\`\`\`|~~~)`),J=new RegExp(`^ {0,${Math.min(3,w-1)}}#`),le=new RegExp(`^ {0,${Math.min(3,w-1)}}<(?:[a-z].*>|!--)`,"i");for(;e;){const O=e.split(` +`,1)[0];let D;if(p=O,this.options.pedantic?(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," "),D=p):D=p.replace(/\t/g," "),C.test(p)||J.test(p)||le.test(p)||j.test(p)||M.test(p))break;if(D.search(/[^ ]/)>=w||!p.trim())l+=` +`+D.slice(w);else{if(x||u.replace(/\t/g," ").search(/[^ ]/)>=4||C.test(u)||J.test(u)||M.test(u))break;l+=` +`+p}!x&&!p.trim()&&(x=!0),c+=O+` +`,e=e.substring(O.length+1),u=D.slice(w)}}i.loose||(o?i.loose=!0:/\n[ \t]*\n[ \t]*$/.test(c)&&(o=!0));let T=null,R;this.options.gfm&&(T=/^\[[ xX]\] /.exec(l),T&&(R=T[0]!=="[ ] ",l=l.replace(/^\[[ xX]\] +/,""))),i.items.push({type:"list_item",raw:c,task:!!T,checked:R,loose:!1,text:l,tokens:[]}),i.raw+=c}i.items[i.items.length-1].raw=i.items[i.items.length-1].raw.trimEnd(),i.items[i.items.length-1].text=i.items[i.items.length-1].text.trimEnd(),i.raw=i.raw.trimEnd();for(let a=0;au.type==="space"),l=c.length>0&&c.some(u=>/\n.*\n/.test(u.raw));i.loose=l}if(i.loose)for(let a=0;a$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:n,raw:t[0],href:s,title:i}}}table(e){const t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;const n=_e(t[1]),s=t[2].replace(/^\||\| *$/g,"").split("|"),i=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` +`):[],r={type:"table",raw:t[0],header:[],align:[],rows:[]};if(n.length===s.length){for(const o of s)/^ *-+: *$/.test(o)?r.align.push("right"):/^ *:-+: *$/.test(o)?r.align.push("center"):/^ *:-+ *$/.test(o)?r.align.push("left"):r.align.push(null);for(let o=0;o({text:a,tokens:this.lexer.inline(a),header:!1,align:r.align[c]})));return r}}lheading(e){const t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[2].charAt(0)==="="?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){const t=this.rules.block.paragraph.exec(e);if(t){const n=t[1].charAt(t[1].length-1)===` +`?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:n,tokens:this.lexer.inline(n)}}}text(e){const t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){const t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:z(t[1])}}tag(e){const t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^/i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){const t=this.rules.inline.link.exec(e);if(t){const n=t[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;const r=N(n.slice(0,-1),"\\");if((n.length-r.length)%2===0)return}else{const r=$t(t[2],"()");if(r>-1){const a=(t[0].indexOf("!")===0?5:4)+t[1].length+r;t[2]=t[2].substring(0,r),t[0]=t[0].substring(0,a).trim(),t[3]=""}}let s=t[2],i="";if(this.options.pedantic){const r=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(s);r&&(s=r[1],i=r[3])}else i=t[3]?t[3].slice(1,-1):"";return s=s.trim(),/^$/.test(n)?s=s.slice(1):s=s.slice(1,-1)),$e(t,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){const s=(n[2]||n[1]).replace(/\s+/g," "),i=t[s.toLowerCase()];if(!i){const r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return $e(n,i,n[0],this.lexer)}}emStrong(e,t,n=""){let s=this.rules.inline.emStrongLDelim.exec(e);if(!s||s[3]&&n.match(/[\p{L}\p{N}]/u))return;if(!(s[1]||s[2]||"")||!n||this.rules.inline.punctuation.exec(n)){const r=[...s[0]].length-1;let o,a,c=r,l=0;const u=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(u.lastIndex=0,t=t.slice(-1*e.length+r);(s=u.exec(t))!=null;){if(o=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!o)continue;if(a=[...o].length,s[3]||s[4]){c+=a;continue}else if((s[5]||s[6])&&r%3&&!((r+a)%3)){l+=a;continue}if(c-=a,c>0)continue;a=Math.min(a,a+c+l);const p=[...s[0]][0].length,x=e.slice(0,r+s.index+p+a);if(Math.min(r,a)%2){const T=x.slice(1,-1);return{type:"em",raw:x,text:T,tokens:this.lexer.inlineTokens(T)}}const w=x.slice(2,-2);return{type:"strong",raw:x,text:w,tokens:this.lexer.inlineTokens(w)}}}}codespan(e){const t=this.rules.inline.code.exec(e);if(t){let n=t[2].replace(/\n/g," ");const s=/[^ ]/.test(n),i=/^ /.test(n)&&/ $/.test(n);return s&&i&&(n=n.substring(1,n.length-1)),n=z(n,!0),{type:"codespan",raw:t[0],text:n}}}br(e){const t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){const t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){const t=this.rules.inline.autolink.exec(e);if(t){let n,s;return t[2]==="@"?(n=z(t[1]),s="mailto:"+n):(n=z(t[1]),s=n),{type:"link",raw:t[0],text:n,href:s,tokens:[{type:"text",raw:n,text:n}]}}}url(e){var n;let t;if(t=this.rules.inline.url.exec(e)){let s,i;if(t[2]==="@")s=z(t[0]),i="mailto:"+s;else{let r;do r=t[0],t[0]=((n=this.rules.inline._backpedal.exec(t[0]))==null?void 0:n[0])??"";while(r!==t[0]);s=z(t[0]),t[1]==="www."?i="http://"+t[0]:i=t[0]}return{type:"link",raw:t[0],text:s,href:i,tokens:[{type:"text",raw:s,text:s}]}}}inlineText(e){const t=this.rules.inline.text.exec(e);if(t){let n;return this.lexer.state.inRawBlock?n=t[0]:n=z(t[0]),{type:"text",raw:t[0],text:n}}}}const Rt=/^(?:[ \t]*(?:\n|$))+/,zt=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,St=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,X=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,At=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Ee=/(?:[*+-]|\d{1,9}[.)])/,Ce=y(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Ee).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),he=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Et=/^[^\n]+/,pe=/(?!\s*\])(?:\\.|[^\[\]\\])+/,Ct=y(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",pe).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),It=y(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Ee).getRegex(),oe="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",de=/|$))/,Lt=y("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",de).replace("tag",oe).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Ie=y(he).replace("hr",X).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex(),Mt=y(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Ie).getRegex(),fe={blockquote:Mt,code:zt,def:Ct,fences:St,heading:At,hr:X,html:Lt,lheading:Ce,list:It,newline:Rt,paragraph:Ie,table:W,text:Et},Te=y("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",X).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex(),Bt={...fe,table:Te,paragraph:y(he).replace("hr",X).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Te).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex()},jt={...fe,html:y(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",de).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:W,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:y(he).replace("hr",X).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",Ce).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Le=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Dt=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Me=/^( {2,}|\\)\n(?!\s*$)/,qt=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,Ft=y(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,K).getRegex(),Zt=y("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,K).getRegex(),Ot=y("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,K).getRegex(),Qt=y(/\\([punct])/,"gu").replace(/punct/g,K).getRegex(),Ht=y(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Nt=y(de).replace("(?:-->|$)","-->").getRegex(),Vt=y("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Nt).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),se=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Wt=y(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",se).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Be=y(/^!?\[(label)\]\[(ref)\]/).replace("label",se).replace("ref",pe).getRegex(),je=y(/^!?\[(ref)\](?:\[\])?/).replace("ref",pe).getRegex(),Gt=y("reflink|nolink(?!\\()","g").replace("reflink",Be).replace("nolink",je).getRegex(),ge={_backpedal:W,anyPunctuation:Qt,autolink:Ht,blockSkip:Ut,br:Me,code:Dt,del:W,emStrongLDelim:Ft,emStrongRDelimAst:Zt,emStrongRDelimUnd:Ot,escape:Le,link:Wt,nolink:je,punctuation:Pt,reflink:Be,reflinkSearch:Gt,tag:Vt,text:qt,url:W},Xt={...ge,link:y(/^!?\[(label)\]\((.*?)\)/).replace("label",se).getRegex(),reflink:y(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",se).getRegex()},ce={...ge,escape:y(Le).replace("])","~|])").getRegex(),url:y(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\(s=o.call({lexer:this},e,t))?(e=e.substring(s.raw.length),t.push(s),!0):!1))){if(s=this.tokenizer.space(e)){e=e.substring(s.raw.length),s.raw.length===1&&t.length>0?t[t.length-1].raw+=` `:t.push(s);continue}if(s=this.tokenizer.code(e)){e=e.substring(s.raw.length),i=t[t.length-1],i&&(i.type==="paragraph"||i.type==="text")?(i.raw+=` `+s.raw,i.text+=` @@ -53,7 +53,7 @@ ${u}`:u;const p=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.block `+s.raw,i.text+=` `+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s),n=r.length!==e.length,e=e.substring(s.raw.length);continue}if(s=this.tokenizer.text(e)){e=e.substring(s.raw.length),i=t[t.length-1],i&&i.type==="text"?(i.raw+=` `+s.raw,i.text+=` -`+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s);continue}if(e){const o="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw new Error(o)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n,s,i,r=e,o,a,c;if(this.tokens.links){const l=Object.keys(this.tokens.links);if(l.length>0)for(;(o=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null;)l.includes(o[0].slice(o[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(o=this.tokenizer.rules.inline.blockSkip.exec(r))!=null;)r=r.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(o=this.tokenizer.rules.inline.anyPunctuation.exec(r))!=null;)r=r.slice(0,o.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(a||(c=""),a=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(l=>(n=l.call({lexer:this},e,t))?(e=e.substring(n.raw.length),t.push(n),!0):!1))){if(n=this.tokenizer.escape(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.tag(e)){e=e.substring(n.raw.length),s=t[t.length-1],s&&n.type==="text"&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(n=this.tokenizer.link(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(n.raw.length),s=t[t.length-1],s&&n.type==="text"&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(n=this.tokenizer.emStrong(e,r,c)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.codespan(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.br(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.del(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.autolink(e)){e=e.substring(n.raw.length),t.push(n);continue}if(!this.state.inLink&&(n=this.tokenizer.url(e))){e=e.substring(n.raw.length),t.push(n);continue}if(i=e,this.options.extensions&&this.options.extensions.startInline){let l=1/0;const u=e.slice(1);let p;this.options.extensions.startInline.forEach(k=>{p=k.call({lexer:this},u),typeof p=="number"&&p>=0&&(l=Math.min(l,p))}),l<1/0&&l>=0&&(i=e.substring(0,l+1))}if(n=this.tokenizer.inlineText(i)){e=e.substring(n.raw.length),n.raw.slice(-1)!=="_"&&(c=n.raw.slice(-1)),a=!0,s=t[t.length-1],s&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(e){const l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return t}}class ie{constructor(e){v(this,"options");v(this,"parser");this.options=e||F}space(e){return""}code({text:e,lang:t,escaped:n}){var r;const s=(r=(t||"").match(/^\S*/))==null?void 0:r[0],i=e.replace(/\n$/,"")+` +`+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s);continue}if(e){const o="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw new Error(o)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n,s,i,r=e,o,a,c;if(this.tokens.links){const l=Object.keys(this.tokens.links);if(l.length>0)for(;(o=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null;)l.includes(o[0].slice(o[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(o=this.tokenizer.rules.inline.blockSkip.exec(r))!=null;)r=r.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(o=this.tokenizer.rules.inline.anyPunctuation.exec(r))!=null;)r=r.slice(0,o.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(a||(c=""),a=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(l=>(n=l.call({lexer:this},e,t))?(e=e.substring(n.raw.length),t.push(n),!0):!1))){if(n=this.tokenizer.escape(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.tag(e)){e=e.substring(n.raw.length),s=t[t.length-1],s&&n.type==="text"&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(n=this.tokenizer.link(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(n.raw.length),s=t[t.length-1],s&&n.type==="text"&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(n=this.tokenizer.emStrong(e,r,c)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.codespan(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.br(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.del(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.autolink(e)){e=e.substring(n.raw.length),t.push(n);continue}if(!this.state.inLink&&(n=this.tokenizer.url(e))){e=e.substring(n.raw.length),t.push(n);continue}if(i=e,this.options.extensions&&this.options.extensions.startInline){let l=1/0;const u=e.slice(1);let p;this.options.extensions.startInline.forEach(x=>{p=x.call({lexer:this},u),typeof p=="number"&&p>=0&&(l=Math.min(l,p))}),l<1/0&&l>=0&&(i=e.substring(0,l+1))}if(n=this.tokenizer.inlineText(i)){e=e.substring(n.raw.length),n.raw.slice(-1)!=="_"&&(c=n.raw.slice(-1)),a=!0,s=t[t.length-1],s&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(e){const l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return t}}class ie{constructor(e){v(this,"options");v(this,"parser");this.options=e||Z}space(e){return""}code({text:e,lang:t,escaped:n}){var r;const s=(r=(t||"").match(/^\S*/))==null?void 0:r[0],i=e.replace(/\n$/,"")+` `;return s?'
    '+(n?i:z(i,!0))+`
    `:"
    "+(n?i:z(i,!0))+`
    `}blockquote({tokens:e}){return`
    @@ -71,6 +71,6 @@ ${this.parser.parse(e)}
    `}tablerow({text:e}){return` ${e} `}tablecell(e){const t=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+` -`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${e}`}br(e){return"
    "}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:n}){const s=this.parser.parseInline(n),i=ye(e);if(i===null)return s;e=i;let r='
    ",r}image({href:e,title:t,text:n}){const s=ye(e);if(s===null)return n;e=s;let i=`${n}{const c=o[a].flat(1/0);n=n.concat(this.walkTokens(c,t))}):o.tokens&&(n=n.concat(this.walkTokens(o.tokens,t)))}}return n}use(...e){const t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(n=>{const s={...n};if(s.async=this.defaults.async||s.async||!1,n.extensions&&(n.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){const r=t.renderers[i.name];r?t.renderers[i.name]=function(...o){let a=i.renderer.apply(this,o);return a===!1&&(a=r.apply(this,o)),a}:t.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const r=t[i.level];r?r.unshift(i.tokenizer):t[i.level]=[i.tokenizer],i.start&&(i.level==="block"?t.startBlock?t.startBlock.push(i.start):t.startBlock=[i.start]:i.level==="inline"&&(t.startInline?t.startInline.push(i.start):t.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(t.childTokens[i.name]=i.childTokens)}),s.extensions=t),n.renderer){const i=this.defaults.renderer||new ie(this.defaults);for(const r in n.renderer){if(!(r in i))throw new Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;const o=r,a=n.renderer[o],c=i[o];i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u||""}}s.renderer=i}if(n.tokenizer){const i=this.defaults.tokenizer||new ne(this.defaults);for(const r in n.tokenizer){if(!(r in i))throw new Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;const o=r,a=n.tokenizer[o],c=i[o];i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u}}s.tokenizer=i}if(n.hooks){const i=this.defaults.hooks||new W;for(const r in n.hooks){if(!(r in i))throw new Error(`hook '${r}' does not exist`);if(["options","block"].includes(r))continue;const o=r,a=n.hooks[o],c=i[o];W.passThroughHooks.has(r)?i[o]=l=>{if(this.defaults.async)return Promise.resolve(a.call(i,l)).then(p=>c.call(i,p));const u=a.call(i,l);return c.call(i,u)}:i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u}}s.hooks=i}if(n.walkTokens){const i=this.defaults.walkTokens,r=n.walkTokens;s.walkTokens=function(o){let a=[];return a.push(r.call(this,o)),i&&(a=a.concat(i.call(this,o))),a}}this.defaults={...this.defaults,...s}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return S.lex(e,t??this.defaults)}parser(e,t){return A.parse(e,t??this.defaults)}parseMarkdown(e){return(n,s)=>{const i={...s},r={...this.defaults,...i},o=this.onError(!!r.silent,!!r.async);if(this.defaults.async===!0&&i.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof n>"u"||n===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof n!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));r.hooks&&(r.hooks.options=r,r.hooks.block=e);const a=r.hooks?r.hooks.provideLexer():e?S.lex:S.lexInline,c=r.hooks?r.hooks.provideParser():e?A.parse:A.parseInline;if(r.async)return Promise.resolve(r.hooks?r.hooks.preprocess(n):n).then(l=>a(l,r)).then(l=>r.hooks?r.hooks.processAllTokens(l):l).then(l=>r.walkTokens?Promise.all(this.walkTokens(l,r.walkTokens)).then(()=>l):l).then(l=>c(l,r)).then(l=>r.hooks?r.hooks.postprocess(l):l).catch(o);try{r.hooks&&(n=r.hooks.preprocess(n));let l=a(n,r);r.hooks&&(l=r.hooks.processAllTokens(l)),r.walkTokens&&this.walkTokens(l,r.walkTokens);let u=c(l,r);return r.hooks&&(u=r.hooks.postprocess(u)),u}catch(l){return o(l)}}}onError(e,t){return n=>{if(n.message+=` -Please report this to https://github.com/markedjs/marked.`,e){const s="

    An error occurred:

    "+z(n.message+"",!0)+"
    ";return t?Promise.resolve(s):s}if(t)return Promise.reject(n);throw n}}}const U=new Xt;function m(d,e){return U.parse(d,e)}m.options=m.setOptions=function(d){return U.setOptions(d),m.defaults=U.defaults,Re(m.defaults),m};m.getDefaults=ue;m.defaults=F;m.use=function(...d){return U.use(...d),m.defaults=U.defaults,Re(m.defaults),m};m.walkTokens=function(d,e){return U.walkTokens(d,e)};m.parseInline=U.parseInline;m.Parser=A;m.parser=A.parse;m.Renderer=ie;m.TextRenderer=xe;m.Lexer=S;m.lexer=S.lex;m.Tokenizer=ne;m.Hooks=W;m.parse=m;m.options;m.setOptions;m.use;m.walkTokens;m.parseInline;A.parse;S.lex;const Kt={class:"min-h-screen flex items-center justify-center p-4 overflow-hidden transition-colors duration-300"},Jt={class:"w-full max-w-md relative z-10"},Yt={class:"p-8"},en={class:"flex justify-center mb-8"},tn={class:"rounded-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 p-1 animate-spin-slow"},nn={class:"rounded-full bg-gray-900 p-2"},sn={class:"mb-6 relative"},rn={class:"relative"},on=["readonly"],ln={key:0,class:"absolute inset-y-0 right-0 flex items-center pr-3"},an=["disabled"],cn={class:"flex items-center justify-center relative z-10"},un={class:"mt-6 text-center"},hn={class:"flex-grow overflow-y-auto p-6"},pn={class:"flex-shrink-0 mr-4"},dn={class:"flex-grow min-w-0 mr-4"},fn={class:"flex-shrink-0 flex space-x-2"},gn=["onClick"],xn=["onClick"],kn=["onClick"],bn={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},wn={class:"space-y-4"},mn={class:"flex items-center"},yn={class:"flex items-center"},vn={class:"flex items-center"},_n={class:"flex items-center"},$n={key:0,class:"ml-2"},Tn={key:1},Rn=["href"],zn={class:"mt-6 flex flex-col items-center"},Sn={class:"bg-white p-2 rounded-lg shadow-md"},An={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},En={class:"flex justify-between items-center mb-4 flex-shrink-0"},Cn={class:"flex items-center gap-3"},In={class:"flex-1 overflow-y-auto custom-scrollbar"},Ln=["innerHTML"],Mn={__name:"RetrievewFileView",setup(d){const e=Oe(),t=window.location.origin,n=st(),s=Ge("isDarkMode"),i=rt(),{receiveData:r}=Qe(i),o=q(""),a=q({readonly:!1,loading:!1}),c=q(!1),l=q(""),u=q(null),p=q(!1),k=Ne(),w=r,T=JSON.parse(localStorage.getItem("config")||"{}");He(()=>{const g=k.query.code;g&&(o.value=g)}),Ve(o,g=>{g.length===5&&I()});const R=g=>g.downloadUrl.startsWith("http")?g.downloadUrl:`${t}${g.downloadUrl}`,B=async()=>{u.value&&u.value.content&&await ct(u.value.content,{successMsg:"内容已复制到剪贴板",errorMsg:"复制失败,请重试"})},I=async()=>{if(o.value.length!==5){e.showAlert("请输入5位取件码","error");return}a.value.readonly=!0,a.value.loading=!0;try{const g=await it.post("/share/select/",{code:o.value});if(g.code===200)if(g.detail){const x=g.detail.text.startsWith("/share/download")||g.detail.name!=="Text",C={id:Date.now(),code:g.detail.code,filename:g.detail.name,size:E(g.detail.size),downloadUrl:x?g.detail.text:null,content:x?null:g.detail.text,date:new Date().toLocaleString()};let $=!0;i.receiveData.forEach(Y=>{if(Y.code===C.code){$=!1;return}}),$&&i.addReceiveData(C),x?u.value=C:(u.value=C,J.value=!0),e.showAlert("文件获取成功","success")}else e.showAlert("无效的取件码","error");else e.showAlert(g.detail||"获取文件失败","error")}catch(g){console.error("取件失败:",g),e.showAlert("取件失败,请稍后重试","error")}finally{a.value.readonly=!1,a.value.loading=!1,o.value=""}},E=g=>{if(g===0)return"0 Bytes";const x=1024,C=["Bytes","KB","MB","GB","TB"],$=Math.floor(Math.log(g)/Math.log(x));return parseFloat((g/Math.pow(x,$)).toFixed(2))+" "+C[$]},K=g=>{u.value=g},le=g=>{const x=w.value.findIndex(C=>C.id===g);x!==-1&&i.deleteReceiveData(x)},Z=()=>{p.value=!p.value},D=()=>{n.push("/send")},je=g=>g.downloadUrl?`${t}${g.downloadUrl}`:`${t}?code=${g.code}`,De=g=>{if(console.log(g),g.downloadUrl)window.open(`${g.downloadUrl.startsWith("http")?"":t}${g.downloadUrl}`,"_blank");else if(g.content){const x=new Blob([g.content],{type:"text/plain;charset=utf-8"});kt.saveAs(x,`${g.filename}.txt`)}},J=q(!1),qe=We(()=>u.value&&u.value.content?m(u.value.content):""),Pe=()=>{J.value=!0};return(g,x)=>{const C=Ye("router-link");return M(),L("div",Kt,[h("div",Jt,[h("div",{class:b(["rounded-3xl shadow-2xl overflow-hidden border transform transition-all duration-300",[f(s)?"bg-gray-800 bg-opacity-50 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200"]])},[h("div",Yt,[h("div",en,[h("div",tn,[h("div",nn,[_(f(ht),{class:"w-8 h-8 text-white"})])])]),h("h2",{onClick:D,class:b(["text-3xl cursor-pointer font-extrabold text-center mb-6",[f(s)?"text-transparent bg-clip-text bg-gradient-to-r from-indigo-300 via-purple-300 to-pink-300":"text-indigo-600"]])},j(f(T).name),3),h("form",{onSubmit:Xe(I,["prevent"])},[h("div",sn,[h("label",{for:"code",class:b(["block text-sm font-medium mb-2",[f(s)?"text-gray-300":"text-gray-800"]])},"取件码",2),h("div",rn,[Ke(h("input",{id:"code","onUpdate:modelValue":x[0]||(x[0]=$=>o.value=$),type:"text",class:b(["w-full px-4 py-3 rounded-lg placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-indigo-500 transition duration-300 pr-10",[f(s)?"bg-gray-700 bg-opacity-50":"bg-gray-100",{"ring-2 ring-red-500":l.value},f(s)?"text-gray-300":"text-gray-800"]]),placeholder:"请输入5位取件码",required:"",readonly:a.value.readonly,maxlength:"5",onFocus:x[1]||(x[1]=$=>c.value=!0),onBlur:x[2]||(x[2]=$=>c.value=!1)},null,42,on),[[Je,o.value]]),a.value.loading?(M(),L("div",ln,x[5]||(x[5]=[h("span",{class:"animate-spin rounded-full h-5 w-5 border-b-2 border-indigo-500"},null,-1)]))):ee("",!0)]),h("div",{class:b(["absolute -bottom-0.5 left-2 h-0.5 bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 transition-all duration-300 ease-in-out",{"w-97-100":c.value,"w-0":!c.value}])},null,2)]),h("button",{type:"submit",class:"w-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 text-white font-bold py-3 px-4 rounded-lg hover:from-indigo-600 hover:via-purple-600 hover:to-pink-600 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition duration-300 transform hover:scale-105 hover:shadow-lg relative overflow-hidden group",disabled:a.value.loading},[h("span",cn,[h("span",null,j(a.value.loading?"处理中...":"提取文件"),1),_(f(ft),{class:"w-5 h-5 ml-2 transition-transform duration-300 transform group-hover:translate-x-1"})]),x[6]||(x[6]=h("span",{class:"absolute top-0 left-0 w-full h-full bg-gradient-to-r from-pink-500 via-purple-500 to-indigo-500 opacity-0 group-hover:opacity-100 transition-opacity duration-300"},null,-1))],8,an)],32),h("div",un,[_(C,{to:"/send",class:"text-indigo-400 hover:text-indigo-300 transition duration-300"},{default:O(()=>x[7]||(x[7]=[P(" 需要发送文件?点击这里 ")])),_:1,__:[7]})])]),h("div",{class:b(["px-8 py-4 bg-opacity-50 flex justify-between items-center",[f(s)?"bg-gray-800":"bg-gray-100"]])},[h("span",{class:b(["text-sm flex items-center",[f(s)?"text-gray-300":"text-gray-800"]])},[_(f(ot),{class:"w-4 h-4 mr-1 text-green-400"}),x[8]||(x[8]=P(" 安全加密 "))],2),h("button",{onClick:Z,class:b(["text-sm hover:text-indigo-300 transition duration-300 flex items-center",[f(s)?"text-indigo-400":"text-indigo-600"]])},[x[9]||(x[9]=P(" 取件记录 ")),_(f(lt),{class:"w-4 h-4 ml-1"})],2)],2)],2)]),_(ae,{name:"drawer"},{default:O(()=>[p.value?(M(),L("div",{key:0,class:b(["fixed inset-y-0 right-0 w-full sm:w-120 bg-opacity-70 backdrop-filter backdrop-blur-xl shadow-2xl z-50 overflow-hidden flex flex-col",[f(s)?"bg-gray-900":"bg-white"]])},[h("div",{class:b(["flex justify-between items-center p-6 border-b",[f(s)?"border-gray-700":"border-gray-200"]])},[h("h3",{class:b(["text-2xl font-bold",[f(s)?"text-white":"text-gray-800"]])}," 取件记录 ",2),h("button",{onClick:Z,class:b(["hover:text-white transition duration-300",[f(s)?"text-gray-400":"text-gray-800"]])},[_(f(ke),{class:"w-6 h-6"})],2)],2),h("div",hn,[_(et,{name:"list",tag:"div",class:"space-y-4"},{default:O(()=>[(M(!0),L(tt,null,nt(f(w),$=>(M(),L("div",{key:$.id,class:b(["bg-opacity-50 rounded-lg p-4 flex items-center shadow-md hover:shadow-lg transition duration-300 transform hover:scale-102",[f(s)?"bg-gray-800 hover:bg-gray-700":"bg-gray-100 hover:bg-white"]])},[h("div",pn,[_(f(be),{class:b(["w-10 h-10",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])]),h("div",dn,[h("p",{class:b(["font-medium text-lg truncate",[f(s)?"text-white":"text-gray-800"]])},j($.filename),3),h("p",{class:b(["text-sm truncate",[f(s)?"text-gray-400":"text-gray-600"]])},j($.date)+" · "+j($.size),3)]),h("div",fn,[h("button",{onClick:Y=>K($),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-indigo-400 text-indigo-400":"hover:bg-indigo-100 text-indigo-600"]])},[_(f(ut),{class:"w-5 h-5"})],10,gn),h("button",{onClick:Y=>De($),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-green-400 text-green-400":"hover:bg-green-100 text-green-600"]])},[_(f(we),{class:"w-5 h-5"})],10,xn),h("button",{onClick:Y=>le($.id),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-red-400 text-red-400":"hover:bg-red-100 text-red-600"]])},[_(f(dt),{class:"w-5 h-5"})],10,kn)])],2))),128))]),_:1})])],2)):ee("",!0)]),_:1}),_(ae,{name:"fade"},{default:O(()=>[u.value?(M(),L("div",bn,[h("div",{class:b(["p-8 rounded-2xl max-w-md w-full mx-4 shadow-2xl transform transition-all duration-300 ease-out backdrop-filter backdrop-blur-lg overflow-hidden",[f(s)?"bg-gray-800 bg-opacity-70":"bg-white bg-opacity-95"]])},[h("h3",{class:b(["text-2xl font-bold mb-6 truncate",[f(s)?"text-white":"text-gray-800"]])}," 文件详情 ",2),h("div",wn,[h("div",mn,[_(f(be),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[10]||(x[10]=h("span",{class:"font-medium"},"文件名:",-1)),P(j(u.value.filename),1)],2)]),h("div",yn,[_(f(gt),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[11]||(x[11]=h("span",{class:"font-medium"},"取件日期:",-1)),P(j(u.value.date),1)],2)]),h("div",vn,[_(f(pt),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[12]||(x[12]=h("span",{class:"font-medium"},"文件大小:",-1)),P(j(u.value.size),1)],2)]),h("div",_n,[_(f(we),{class:b(["w-6 h-6 mr-3",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([f(s)?"text-gray-300":"text-gray-800"])},x[13]||(x[13]=[h("span",{class:"font-medium"},"文件内容:",-1)]),2),u.value.filename=="Text"?(M(),L("div",$n,[h("button",{onClick:Pe,class:"px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition duration-300"}," 预览内容 ")])):(M(),L("div",Tn,[h("a",{href:R(u.value),target:"_blank",rel:"noopener noreferrer",class:"px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition duration-300"}," 点击下载 ",8,Rn)]))])]),h("div",zn,[h("h4",{class:b(["text-lg font-semibold mb-3",[f(s)?"text-white":"text-gray-800"]])}," 取件二维码 ",2),h("div",Sn,[_(at,{value:je(u.value),size:128,level:"M"},null,8,["value"])]),h("p",{class:b(["mt-2 text-sm",[f(s)?"text-gray-400":"text-gray-600"]])}," 扫描二维码快速取件 ",2)]),h("button",{onClick:x[3]||(x[3]=$=>u.value=null),class:"mt-8 w-full bg-gradient-to-r from-indigo-500 to-purple-600 text-white px-6 py-3 rounded-lg font-medium hover:from-indigo-600 hover:to-purple-700 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition duration-300 transform hover:scale-105"}," 关闭 ")],2)])):ee("",!0)]),_:1}),_(ae,{name:"fade"},{default:O(()=>[J.value?(M(),L("div",An,[h("div",{class:b(["p-6 rounded-2xl max-w-3xl w-full mx-4 shadow-2xl transform transition-all duration-300 ease-out backdrop-filter backdrop-blur-lg bg-opacity-70 max-h-[85vh] overflow-hidden flex flex-col",[f(s)?"bg-gray-800":"bg-white"]])},[h("div",En,[h("h3",{class:b(["text-2xl font-bold",[f(s)?"text-white":"text-gray-800"]])}," 内容预览 ",2),h("div",Cn,[h("button",{onClick:B,class:b(["px-4 py-1.5 rounded-lg transition duration-300 flex items-center gap-2 text-sm font-medium",[f(s)?"bg-gray-700 hover:bg-gray-600 text-gray-300 hover:text-white":"bg-gray-100 hover:bg-gray-200 text-gray-700 hover:text-gray-900"]])},[_(f(xt),{class:"w-4 h-4"}),x[14]||(x[14]=P(" 复制 "))],2),h("button",{onClick:x[4]||(x[4]=$=>J.value=!1),class:b(["p-1.5 rounded-lg transition duration-300 hover:bg-opacity-10",[f(s)?"text-gray-400 hover:text-white hover:bg-white":"text-gray-500 hover:text-gray-900 hover:bg-black"]])},[_(f(ke),{class:"w-5 h-5"})],2)])]),h("div",In,[h("div",{class:b(["prose max-w-none p-6 rounded-xl",[f(s)?"prose-invert bg-gray-900 bg-opacity-50":"bg-gray-50"]]),innerHTML:qe.value},null,10,Ln)])],2)])):ee("",!0)]),_:1})])}}},Zn=Ze(Mn,[["__scopeId","data-v-3129e8a3"]]);export{Zn as default}; +`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${e}`}br(e){return"
    "}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:n}){const s=this.parser.parseInline(n),i=ve(e);if(i===null)return s;e=i;let r='
    ",r}image({href:e,title:t,text:n}){const s=ve(e);if(s===null)return n;e=s;let i=`${n}{const c=o[a].flat(1/0);n=n.concat(this.walkTokens(c,t))}):o.tokens&&(n=n.concat(this.walkTokens(o.tokens,t)))}}return n}use(...e){const t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(n=>{const s={...n};if(s.async=this.defaults.async||s.async||!1,n.extensions&&(n.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){const r=t.renderers[i.name];r?t.renderers[i.name]=function(...o){let a=i.renderer.apply(this,o);return a===!1&&(a=r.apply(this,o)),a}:t.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const r=t[i.level];r?r.unshift(i.tokenizer):t[i.level]=[i.tokenizer],i.start&&(i.level==="block"?t.startBlock?t.startBlock.push(i.start):t.startBlock=[i.start]:i.level==="inline"&&(t.startInline?t.startInline.push(i.start):t.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(t.childTokens[i.name]=i.childTokens)}),s.extensions=t),n.renderer){const i=this.defaults.renderer||new ie(this.defaults);for(const r in n.renderer){if(!(r in i))throw new Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;const o=r,a=n.renderer[o],c=i[o];i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u||""}}s.renderer=i}if(n.tokenizer){const i=this.defaults.tokenizer||new ne(this.defaults);for(const r in n.tokenizer){if(!(r in i))throw new Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;const o=r,a=n.tokenizer[o],c=i[o];i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u}}s.tokenizer=i}if(n.hooks){const i=this.defaults.hooks||new G;for(const r in n.hooks){if(!(r in i))throw new Error(`hook '${r}' does not exist`);if(["options","block"].includes(r))continue;const o=r,a=n.hooks[o],c=i[o];G.passThroughHooks.has(r)?i[o]=l=>{if(this.defaults.async)return Promise.resolve(a.call(i,l)).then(p=>c.call(i,p));const u=a.call(i,l);return c.call(i,u)}:i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u}}s.hooks=i}if(n.walkTokens){const i=this.defaults.walkTokens,r=n.walkTokens;s.walkTokens=function(o){let a=[];return a.push(r.call(this,o)),i&&(a=a.concat(i.call(this,o))),a}}this.defaults={...this.defaults,...s}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return A.lex(e,t??this.defaults)}parser(e,t){return E.parse(e,t??this.defaults)}parseMarkdown(e){return(n,s)=>{const i={...s},r={...this.defaults,...i},o=this.onError(!!r.silent,!!r.async);if(this.defaults.async===!0&&i.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof n>"u"||n===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof n!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));r.hooks&&(r.hooks.options=r,r.hooks.block=e);const a=r.hooks?r.hooks.provideLexer():e?A.lex:A.lexInline,c=r.hooks?r.hooks.provideParser():e?E.parse:E.parseInline;if(r.async)return Promise.resolve(r.hooks?r.hooks.preprocess(n):n).then(l=>a(l,r)).then(l=>r.hooks?r.hooks.processAllTokens(l):l).then(l=>r.walkTokens?Promise.all(this.walkTokens(l,r.walkTokens)).then(()=>l):l).then(l=>c(l,r)).then(l=>r.hooks?r.hooks.postprocess(l):l).catch(o);try{r.hooks&&(n=r.hooks.preprocess(n));let l=a(n,r);r.hooks&&(l=r.hooks.processAllTokens(l)),r.walkTokens&&this.walkTokens(l,r.walkTokens);let u=c(l,r);return r.hooks&&(u=r.hooks.postprocess(u)),u}catch(l){return o(l)}}}onError(e,t){return n=>{if(n.message+=` +Please report this to https://github.com/markedjs/marked.`,e){const s="

    An error occurred:

    "+z(n.message+"",!0)+"
    ";return t?Promise.resolve(s):s}if(t)return Promise.reject(n);throw n}}}const F=new Jt;function m(d,e){return F.parse(d,e)}m.options=m.setOptions=function(d){return F.setOptions(d),m.defaults=F.defaults,ze(m.defaults),m};m.getDefaults=ue;m.defaults=Z;m.use=function(...d){return F.use(...d),m.defaults=F.defaults,ze(m.defaults),m};m.walkTokens=function(d,e){return F.walkTokens(d,e)};m.parseInline=F.parseInline;m.Parser=E;m.parser=E.parse;m.Renderer=ie;m.TextRenderer=xe;m.Lexer=A;m.lexer=A.lex;m.Tokenizer=ne;m.Hooks=G;m.parse=m;m.options;m.setOptions;m.use;m.walkTokens;m.parseInline;E.parse;A.lex;const Yt={class:"min-h-screen flex items-center justify-center p-4 overflow-hidden transition-colors duration-300"},en={class:"w-full max-w-md relative z-10"},tn={class:"p-8"},nn={class:"flex justify-center mb-8"},sn={class:"rounded-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 p-1 animate-spin-slow"},rn={class:"rounded-full bg-gray-900 p-2"},on={class:"mb-6 relative"},ln={class:"relative"},an=["readonly"],cn={key:0,class:"absolute inset-y-0 right-0 flex items-center pr-3"},un=["disabled"],hn={class:"flex items-center justify-center relative z-10"},pn={class:"mt-6 text-center"},dn={class:"flex-grow overflow-y-auto p-6"},fn={class:"flex-shrink-0 mr-4"},gn={class:"flex-grow min-w-0 mr-4"},xn={class:"flex-shrink-0 flex space-x-2"},kn=["onClick"],bn=["onClick"],wn=["onClick"],mn={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},yn={class:"space-y-4"},vn={key:0,class:"flex items-center"},_n={class:"flex items-center"},$n={class:"flex items-center"},Tn={class:"flex items-center"},Rn={class:"font-medium"},zn={key:0,class:"ml-2"},Sn={key:1},An=["href"],En={class:"mt-6 flex flex-col items-center"},Cn={class:"bg-white p-2 rounded-lg shadow-sm"},In={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},Ln={class:"flex justify-between items-center mb-4 flex-shrink-0"},Mn={class:"flex items-center gap-3"},Bn={class:"flex-1 overflow-y-auto custom-scrollbar"},jn=["innerHTML"],Dn={__name:"RetrievewFileView",setup(d){const e=Qe(),t=window.location.origin,n=it(),s=Xe("isDarkMode"),i=ot(),{receiveData:r}=He(i),o=q(""),a=q({readonly:!1,loading:!1}),c=q(!1),l=q(""),u=q(null),p=q(!1),x=Ve(),w=r;console.log(w);const T=JSON.parse(localStorage.getItem("config")||"{}");Ne(()=>{const g=x.query.code;g&&(o.value=g)}),We(o,g=>{g.length===5&&M()});const R=g=>g.downloadUrl.startsWith("http")?g.downloadUrl:`${t}${g.downloadUrl}`,j=async()=>{u.value&&u.value.content&&await ut(u.value.content,{successMsg:"内容已复制到剪贴板",errorMsg:"复制失败,请重试"})},M=async()=>{if(o.value.length!==5){e.showAlert("请输入5位粮票号","error");return}a.value.readonly=!0,a.value.loading=!0;try{const g=await rt.post("/share/select/",{code:o.value});if(g.code===200)if(g.detail){const k=g.detail.text.startsWith("/share/download")||g.detail.name!=="Text",I={id:Date.now(),code:g.detail.code,type:g.detail.type,filename:g.detail.name,size:C(g.detail.size),downloadUrl:k?g.detail.text:null,content:k?null:g.detail.text,date:new Date().toLocaleString()};let _=!0;i.receiveData.forEach(ee=>{if(ee.code===I.code){_=!1;return}}),_&&i.addReceiveData(I),k?u.value=I:(u.value=I,Y.value=!0),e.showAlert("文件获取成功","success")}else e.showAlert("无效的粮票号","error");else e.showAlert(g.detail||"获取文件失败","error")}catch(g){console.error("领粮失败:",g),e.showAlert("领粮失败,请稍后重试","error")}finally{a.value.readonly=!1,a.value.loading=!1,o.value=""}},C=g=>{if(g===0)return"0 Bytes";const k=1024,I=["Bytes","KB","MB","GB","TB"],_=Math.floor(Math.log(g)/Math.log(k));return parseFloat((g/Math.pow(k,_)).toFixed(2))+" "+I[_]},J=g=>{u.value=g},le=g=>{const k=w.value.findIndex(I=>I.id===g);k!==-1&&i.deleteReceiveData(k)},O=()=>{p.value=!p.value},D=()=>{n.push("/send")},De=g=>g.downloadUrl?`${t}${g.downloadUrl}`:`${t}?code=${g.code}`,qe=g=>{if(console.log(g),g.downloadUrl)window.open(`${g.downloadUrl.startsWith("http")?"":t}${g.downloadUrl}`,"_blank");else if(g.content){const k=new Blob([g.content],{type:"text/plain;charset=utf-8"});wt.saveAs(k,`${g.filename}.txt`)}},Y=q(!1),Pe=Ge(()=>u.value&&u.value.content?m(u.value.content):""),Ue=()=>{Y.value=!0};return(g,k)=>{const I=et("router-link");return S(),L("div",Yt,[h("div",en,[h("div",{class:b(["rounded-3xl shadow-2xl overflow-hidden border transform transition-all duration-300",[f(s)?"bg-gray-800 bg-opacity-50 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200"]])},[h("div",tn,[h("div",nn,[h("div",sn,[h("div",rn,[$(f(pt),{class:"w-8 h-8 text-white"})])])]),h("h2",{onClick:D,class:b(["text-3xl cursor-pointer font-extrabold text-center mb-6",[f(s)?"text-transparent bg-clip-text bg-gradient-to-r from-indigo-300 via-purple-300 to-pink-300":"text-indigo-600"]])},B(f(T).name),3),h("form",{onSubmit:Ke(M,["prevent"])},[h("div",on,[h("label",{for:"code",class:b(["block text-sm font-medium mb-2",[f(s)?"text-gray-300":"text-gray-800"]])},"粮票号",2),h("div",ln,[Je(h("input",{id:"code","onUpdate:modelValue":k[0]||(k[0]=_=>o.value=_),type:"text",class:b(["w-full px-4 py-3 rounded-lg placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-indigo-500 transition duration-300 pr-10",[f(s)?"bg-gray-700 bg-opacity-50":"bg-gray-100",{"ring-2 ring-red-500":l.value},f(s)?"text-gray-300":"text-gray-800"]]),placeholder:"请输入5位粮票号",required:"",readonly:a.value.readonly,maxlength:"5",onFocus:k[1]||(k[1]=_=>c.value=!0),onBlur:k[2]||(k[2]=_=>c.value=!1)},null,42,an),[[Ye,o.value]]),a.value.loading?(S(),L("div",cn,k[5]||(k[5]=[h("span",{class:"animate-spin rounded-full h-5 w-5 border-b-2 border-indigo-500"},null,-1)]))):P("",!0)]),h("div",{class:b(["absolute -bottom-0.5 left-2 h-0.5 bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 transition-all duration-300 ease-in-out",{"w-97-100":c.value,"w-0":!c.value}])},null,2)]),h("button",{type:"submit",class:"w-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 text-white font-bold py-3 px-4 rounded-lg hover:from-indigo-600 hover:via-purple-600 hover:to-pink-600 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition duration-300 transform hover:scale-105 hover:shadow-lg relative overflow-hidden group",disabled:a.value.loading},[h("span",hn,[h("span",null,B(a.value.loading?"处理中...":"马上领粮"),1),$(f(xt),{class:"w-5 h-5 ml-2 transition-transform duration-300 transform group-hover:translate-x-1"})]),k[6]||(k[6]=h("span",{class:"absolute top-0 left-0 w-full h-full bg-gradient-to-r from-pink-500 via-purple-500 to-indigo-500 opacity-0 group-hover:opacity-100 transition-opacity duration-300"},null,-1))],8,un)],32),h("div",pn,[$(I,{to:"/send",class:"text-indigo-400 hover:text-indigo-300 transition duration-300"},{default:Q(()=>k[7]||(k[7]=[U(" 需要投喂?点击这里 ")])),_:1,__:[7]})])]),h("div",{class:b(["px-8 py-4 bg-opacity-50 flex justify-between items-center",[f(s)?"bg-gray-800":"bg-gray-100"]])},[h("span",{class:b(["text-sm flex items-center",[f(s)?"text-gray-300":"text-gray-800"]]),style:{opacity:"0","pointer-events":"none"}},[$(f(lt),{class:"w-4 h-4 mr-1 text-green-400"}),k[8]||(k[8]=U(" 安全加密 "))],2),h("button",{onClick:O,class:b(["text-sm hover:text-indigo-300 transition duration-300 flex items-center",[f(s)?"text-indigo-400":"text-indigo-600"]])},[k[9]||(k[9]=U(" 领粮记录 ")),$(f(at),{class:"w-4 h-4 ml-1"})],2)],2)],2)]),$(ae,{name:"drawer"},{default:Q(()=>[p.value?(S(),L("div",{key:0,class:b(["fixed inset-y-0 right-0 w-full sm:w-120 bg-opacity-70 backdrop-filter backdrop-blur-xl shadow-2xl z-50 overflow-hidden flex flex-col",[f(s)?"bg-gray-900":"bg-white"]])},[h("div",{class:b(["flex justify-between items-center p-6 border-b",[f(s)?"border-gray-700":"border-gray-200"]])},[h("h3",{class:b(["text-2xl font-bold",[f(s)?"text-white":"text-gray-800"]])}," 领粮记录 ",2),h("button",{onClick:O,class:b(["hover:text-white transition duration-300",[f(s)?"text-gray-400":"text-gray-800"]])},[$(f(ke),{class:"w-6 h-6"})],2)],2),h("div",dn,[$(tt,{name:"list",tag:"div",class:"space-y-4"},{default:Q(()=>[(S(!0),L(nt,null,st(f(w),_=>(S(),L("div",{key:_.id,class:b(["bg-opacity-50 rounded-lg p-4 flex items-center shadow-sm hover:shadow-lg transition duration-300 transform hover:scale-102",[f(s)?"bg-gray-800 hover:bg-gray-700":"bg-gray-100 hover:bg-white"]])},[h("div",fn,[_.type!=="text"?(S(),be(f(we),{key:0,class:b(["w-10 h-10",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):P("",!0),_.type==="text"?(S(),be(f(ft),{key:1,class:b(["w-5 h-5 sm:w-6 sm:h-6",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):P("",!0)]),h("div",gn,[h("p",{class:b(["font-medium text-lg truncate",[f(s)?"text-white":"text-gray-800"]])},B(_.filename),3),h("p",{class:b(["text-sm truncate",[f(s)?"text-gray-400":"text-gray-600"]])},B(_.date)+" · "+B(_.size),3)]),h("div",xn,[h("button",{onClick:ee=>J(_),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-indigo-400 text-indigo-400":"hover:bg-indigo-100 text-indigo-600"]])},[$(f(ht),{class:"w-5 h-5"})],10,kn),h("button",{onClick:ee=>qe(_),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-green-400 text-green-400":"hover:bg-green-100 text-green-600"]])},[$(f(me),{class:"w-5 h-5"})],10,bn),h("button",{onClick:ee=>le(_.id),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-red-400 text-red-400":"hover:bg-red-100 text-red-600"]])},[$(f(gt),{class:"w-5 h-5"})],10,wn)])],2))),128))]),_:1})])],2)):P("",!0)]),_:1}),$(ae,{name:"fade"},{default:Q(()=>[u.value?(S(),L("div",mn,[h("div",{class:b(["p-8 rounded-2xl max-w-md w-full mx-4 shadow-2xl transform transition-all duration-300 ease-out backdrop-filter backdrop-blur-lg overflow-hidden",[f(s)?"bg-gray-800 bg-opacity-70":"bg-white bg-opacity-95"]])},[h("h3",{class:b(["text-2xl font-bold mb-6 truncate",[f(s)?"text-white":"text-gray-800"]])}," 领粮详情 ",2),h("div",yn,[u.value.type!=="text"?(S(),L("div",vn,[$(f(we),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[k[10]||(k[10]=h("span",{class:"font-medium"},"文件名:",-1)),U(B(u.value.filename),1)],2)])):P("",!0),h("div",_n,[$(f(kt),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[k[11]||(k[11]=h("span",{class:"font-medium"},"投喂日期:",-1)),U(B(u.value.date),1)],2)]),h("div",$n,[$(f(dt),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[k[12]||(k[12]=h("span",{class:"font-medium"},"投喂大小:",-1)),U(B(u.value.size),1)],2)]),h("div",Tn,[$(f(me),{class:b(["w-6 h-6 mr-3",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([f(s)?"text-gray-300":"text-gray-800"])},[h("span",Rn,B(u.value.type==="text"?"文本内容:":"文件内容:"),1)],2),u.value.filename=="Text"?(S(),L("div",zn,[h("button",{onClick:Ue,class:"px-2 py-1 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition duration-300"}," 预览内容 ")])):(S(),L("div",Sn,[h("a",{href:R(u.value),target:"_blank",rel:"noopener noreferrer",class:"px-2 py-1 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition duration-300"}," 点击下载 ",8,An)]))])]),h("div",En,[h("h4",{class:b(["text-lg font-semibold mb-3",[f(s)?"text-white":"text-gray-800"]])}," 领粮二维码 ",2),h("div",Cn,[$(ct,{value:De(u.value),size:128,level:"M"},null,8,["value"])]),h("p",{class:b(["mt-2 text-sm",[f(s)?"text-gray-400":"text-gray-600"]])}," 扫描二维码快速领粮 ",2)]),h("button",{onClick:k[3]||(k[3]=_=>u.value=null),class:"mt-8 w-full bg-gradient-to-r from-indigo-500 to-purple-600 text-white px-6 py-3 rounded-lg font-medium hover:from-indigo-600 hover:to-purple-700 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition duration-300 transform hover:scale-105"}," 关闭 ")],2)])):P("",!0)]),_:1}),$(ae,{name:"fade"},{default:Q(()=>[Y.value?(S(),L("div",In,[h("div",{class:b(["p-6 rounded-2xl max-w-3xl w-full mx-4 shadow-2xl transform transition-all duration-300 ease-out backdrop-filter backdrop-blur-lg bg-opacity-70 max-h-[85vh] overflow-hidden flex flex-col",[f(s)?"bg-gray-800":"bg-white"]])},[h("div",Ln,[h("h3",{class:b(["text-2xl font-bold",[f(s)?"text-white":"text-gray-800"]])}," 内容预览 ",2),h("div",Mn,[h("button",{onClick:j,class:b(["px-4 py-1.5 rounded-lg transition duration-300 flex items-center gap-2 text-sm font-medium",[f(s)?"bg-gray-700 hover:bg-gray-600 text-gray-300 hover:text-white":"bg-gray-100 hover:bg-gray-200 text-gray-700 hover:text-gray-900"]])},[$(f(bt),{class:"w-4 h-4"}),k[13]||(k[13]=U(" 复制 "))],2),h("button",{onClick:k[4]||(k[4]=_=>Y.value=!1),class:b(["p-1.5 rounded-lg transition duration-300 hover:bg-opacity-10",[f(s)?"text-gray-400 hover:text-white hover:bg-white":"text-gray-500 hover:text-gray-900 hover:bg-black"]])},[$(f(ke),{class:"w-5 h-5"})],2)])]),h("div",Bn,[h("div",{class:b(["prose max-w-none p-6 rounded-xl",[f(s)?"prose-invert bg-gray-900 bg-opacity-50":"bg-gray-50"]]),innerHTML:Pe.value},null,10,jn)])],2)])):P("",!0)]),_:1})])}}},Hn=Oe(Dn,[["__scopeId","data-v-a2b63f28"]]);export{Hn as default}; diff --git a/themes/2025/assets/RetrievewFileView-DCUv-G63.css b/themes/2025/assets/RetrievewFileView-DCUv-G63.css new file mode 100644 index 000000000..27cd46b5e --- /dev/null +++ b/themes/2025/assets/RetrievewFileView-DCUv-G63.css @@ -0,0 +1 @@ +@keyframes blob-a2b63f28{0%,to{transform:translate(0) scale(1)}25%{transform:translate(20px,-50px) scale(1.1)}50%{transform:translate(-20px,20px) scale(.9)}75%{transform:translate(50px,50px) scale(1.05)}}.animate-blob-1[data-v-a2b63f28]{animation:blob-a2b63f28 25s infinite}.animate-blob-2[data-v-a2b63f28]{animation:blob-a2b63f28 30s infinite}.animate-blob-3[data-v-a2b63f28]{animation:blob-a2b63f28 35s infinite}.animate-blob-4[data-v-a2b63f28]{animation:blob-a2b63f28 40s infinite}.animate-spin-slow[data-v-a2b63f28]{animation:spin-a2b63f28 8s linear infinite}@keyframes spin-a2b63f28{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-enter-active[data-v-a2b63f28],.fade-leave-active[data-v-a2b63f28]{transition:opacity .3s ease}.fade-enter-from[data-v-a2b63f28],.fade-leave-to[data-v-a2b63f28]{opacity:0}.list-enter-active[data-v-a2b63f28],.list-leave-active[data-v-a2b63f28]{transition:all .5s ease}.list-enter-from[data-v-a2b63f28],.list-leave-to[data-v-a2b63f28]{opacity:0;transform:translate(30px)}.drawer-enter-active[data-v-a2b63f28],.drawer-leave-active[data-v-a2b63f28]{transition:transform .3s ease}.drawer-enter-from[data-v-a2b63f28],.drawer-leave-to[data-v-a2b63f28]{transform:translate(100%)}.w-97-100[data-v-a2b63f28]{width:97%}[data-v-a2b63f28] .prose{text-align:left}[data-v-a2b63f28] .prose h1,[data-v-a2b63f28] .prose h2,[data-v-a2b63f28] .prose h3,[data-v-a2b63f28] .prose h4,[data-v-a2b63f28] .prose h5,[data-v-a2b63f28] .prose h6{color:#4f46e5}@media (prefers-color-scheme: dark){[data-v-a2b63f28] .prose h1,[data-v-a2b63f28] .prose h2,[data-v-a2b63f28] .prose h3,[data-v-a2b63f28] .prose h4,[data-v-a2b63f28] .prose h5,[data-v-a2b63f28] .prose h6{color:#818cf8}}@media (min-width: 640px){.sm\:w-120[data-v-a2b63f28]{width:30rem}}.custom-scrollbar[data-v-a2b63f28]{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.3) transparent}.custom-scrollbar[data-v-a2b63f28]::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar[data-v-a2b63f28]::-webkit-scrollbar-track{background:transparent}.custom-scrollbar[data-v-a2b63f28]::-webkit-scrollbar-thumb{background-color:#9ca3af4d;border-radius:3px;-webkit-transition:background-color .3s;transition:background-color .3s}.custom-scrollbar[data-v-a2b63f28]::-webkit-scrollbar-thumb:hover{background-color:#9ca3af80}[data-v-a2b63f28] [class*=dark] .custom-scrollbar{scrollbar-color:rgba(75,85,99,.3) transparent}[data-v-a2b63f28] [class*=dark] .custom-scrollbar::-webkit-scrollbar-thumb{background-color:#4b55634d}[data-v-a2b63f28] [class*=dark] .custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:#4b556380} diff --git a/themes/2025/assets/RetrievewFileView-DzS7C4LK.js b/themes/2025/assets/RetrievewFileView-DzS7C4LK.js deleted file mode 100644 index 1fe726a83..000000000 --- a/themes/2025/assets/RetrievewFileView-DzS7C4LK.js +++ /dev/null @@ -1,76 +0,0 @@ -var Ue=Object.defineProperty;var Fe=(d,e,t)=>e in d?Ue(d,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):d[e]=t;var v=(d,e,t)=>Fe(d,typeof e!="symbol"?e+"":e,t);import{c as re,_ as Ze,u as Oe,D as Qe,r as q,o as He,E as Ne,w as Ve,f as We,a as L,b as h,g as _,n as b,h as f,i as Ge,t as j,j as Xe,m as Ke,l as ee,v as Je,k as O,x as P,y as Ye,X as ke,z as et,F as tt,s as nt,T as ae,B as st,e as M,C as it}from"./index-C-4-823a.js";import{u as rt,S as ot,C as lt,Q as at,d as ct,E as ut}from"./clipboard-WGJncgVO.js";import{B as ht}from"./box-Btnwq7DC.js";import{F as be}from"./file-D-r2HShG.js";import{H as pt}from"./hard-drive-X0PLCy-z.js";import{T as dt}from"./trash-CAImX6bg.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const ft=re("ArrowRightIcon",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const gt=re("CalendarIcon",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const xt=re("CopyIcon",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const we=re("DownloadIcon",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"7 10 12 15 17 10",key:"2ggqvy"}],["line",{x1:"12",x2:"12",y1:"15",y2:"3",key:"1vk2je"}]]);var Q=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Te={exports:{}};(function(d,e){(function(t,n){n()})(Q,function(){function t(c,l){return typeof l>"u"?l={autoBom:!1}:typeof l!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),l={autoBom:!l}),l.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(c.type)?new Blob(["\uFEFF",c],{type:c.type}):c}function n(c,l,u){var p=new XMLHttpRequest;p.open("GET",c),p.responseType="blob",p.onload=function(){a(p.response,l,u)},p.onerror=function(){console.error("could not download file")},p.send()}function s(c){var l=new XMLHttpRequest;l.open("HEAD",c,!1);try{l.send()}catch{}return 200<=l.status&&299>=l.status}function i(c){try{c.dispatchEvent(new MouseEvent("click"))}catch{var l=document.createEvent("MouseEvents");l.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),c.dispatchEvent(l)}}var r=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof Q=="object"&&Q.global===Q?Q:void 0,o=r.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),a=r.saveAs||(typeof window!="object"||window!==r?function(){}:"download"in HTMLAnchorElement.prototype&&!o?function(c,l,u){var p=r.URL||r.webkitURL,k=document.createElement("a");l=l||c.name||"download",k.download=l,k.rel="noopener",typeof c=="string"?(k.href=c,k.origin===location.origin?i(k):s(k.href)?n(c,l,u):i(k,k.target="_blank")):(k.href=p.createObjectURL(c),setTimeout(function(){p.revokeObjectURL(k.href)},4e4),setTimeout(function(){i(k)},0))}:"msSaveOrOpenBlob"in navigator?function(c,l,u){if(l=l||c.name||"download",typeof c!="string")navigator.msSaveOrOpenBlob(t(c,u),l);else if(s(c))n(c,l,u);else{var p=document.createElement("a");p.href=c,p.target="_blank",setTimeout(function(){i(p)})}}:function(c,l,u,p){if(p=p||open("","_blank"),p&&(p.document.title=p.document.body.innerText="downloading..."),typeof c=="string")return n(c,l,u);var k=c.type==="application/octet-stream",w=/constructor/i.test(r.HTMLElement)||r.safari,T=/CriOS\/[\d]+/.test(navigator.userAgent);if((T||k&&w||o)&&typeof FileReader<"u"){var R=new FileReader;R.onloadend=function(){var E=R.result;E=T?E:E.replace(/^data:[^;]*;/,"data:attachment/file;"),p?p.location.href=E:location=E,p=null},R.readAsDataURL(c)}else{var B=r.URL||r.webkitURL,I=B.createObjectURL(c);p?p.location=I:location.href=I,p=null,setTimeout(function(){B.revokeObjectURL(I)},4e4)}});r.saveAs=a.saveAs=a,d.exports=a})})(Te);var kt=Te.exports;function ue(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}let F=ue();function Re(d){F=d}const ze=/[&<>"']/,bt=new RegExp(ze.source,"g"),Se=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,wt=new RegExp(Se.source,"g"),mt={"&":"&","<":"<",">":">",'"':""","'":"'"},me=d=>mt[d];function z(d,e){if(e){if(ze.test(d))return d.replace(bt,me)}else if(Se.test(d))return d.replace(wt,me);return d}const yt=/(^|[^\[])\^/g;function y(d,e){let t=typeof d=="string"?d:d.source;e=e||"";const n={replace:(s,i)=>{let r=typeof i=="string"?i:i.source;return r=r.replace(yt,"$1"),t=t.replace(s,r),n},getRegex:()=>new RegExp(t,e)};return n}function ye(d){try{d=encodeURI(d).replace(/%25/g,"%")}catch{return null}return d}const V={exec:()=>null};function ve(d,e){const t=d.replace(/\|/g,(i,r,o)=>{let a=!1,c=r;for(;--c>=0&&o[c]==="\\";)a=!a;return a?"|":" |"}),n=t.split(/ \|/);let s=0;if(n[0].trim()||n.shift(),n.length>0&&!n[n.length-1].trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length{const i=s.match(/^\s+/);if(i===null)return s;const[r]=i;return r.length>=n.length?s.slice(n.length):s}).join(` -`)}class ne{constructor(e){v(this,"options");v(this,"rules");v(this,"lexer");this.options=e||F}space(e){const t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){const t=this.rules.block.code.exec(e);if(t){const n=t[0].replace(/^(?: {1,4}| {0,3}\t)/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:H(n,` -`)}}}fences(e){const t=this.rules.block.fences.exec(e);if(t){const n=t[0],s=_t(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:s}}}heading(e){const t=this.rules.block.heading.exec(e);if(t){let n=t[2].trim();if(/#$/.test(n)){const s=H(n,"#");(this.options.pedantic||!s||/ $/.test(s))&&(n=s.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){const t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:H(t[0],` -`)}}blockquote(e){const t=this.rules.block.blockquote.exec(e);if(t){let n=H(t[0],` -`).split(` -`),s="",i="";const r=[];for(;n.length>0;){let o=!1;const a=[];let c;for(c=0;c/.test(n[c]))a.push(n[c]),o=!0;else if(!o)a.push(n[c]);else break;n=n.slice(c);const l=a.join(` -`),u=l.replace(/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,` - $1`).replace(/^ {0,3}>[ \t]?/gm,"");s=s?`${s} -${l}`:l,i=i?`${i} -${u}`:u;const p=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(u,r,!0),this.lexer.state.top=p,n.length===0)break;const k=r[r.length-1];if((k==null?void 0:k.type)==="code")break;if((k==null?void 0:k.type)==="blockquote"){const w=k,T=w.raw+` -`+n.join(` -`),R=this.blockquote(T);r[r.length-1]=R,s=s.substring(0,s.length-w.raw.length)+R.raw,i=i.substring(0,i.length-w.text.length)+R.text;break}else if((k==null?void 0:k.type)==="list"){const w=k,T=w.raw+` -`+n.join(` -`),R=this.list(T);r[r.length-1]=R,s=s.substring(0,s.length-k.raw.length)+R.raw,i=i.substring(0,i.length-w.raw.length)+R.raw,n=T.substring(r[r.length-1].raw.length).split(` -`);continue}}return{type:"blockquote",raw:s,tokens:r,text:i}}}list(e){let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim();const s=n.length>1,i={type:"list",raw:"",ordered:s,start:s?+n.slice(0,-1):"",loose:!1,items:[]};n=s?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=s?n:"[*+-]");const r=new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`);let o=!1;for(;e;){let a=!1,c="",l="";if(!(t=r.exec(e))||this.rules.block.hr.test(e))break;c=t[0],e=e.substring(c.length);let u=t[2].split(` -`,1)[0].replace(/^\t+/,B=>" ".repeat(3*B.length)),p=e.split(` -`,1)[0],k=!u.trim(),w=0;if(this.options.pedantic?(w=2,l=u.trimStart()):k?w=t[1].length+1:(w=t[2].search(/[^ ]/),w=w>4?1:w,l=u.slice(w),w+=t[1].length),k&&/^[ \t]*$/.test(p)&&(c+=p+` -`,e=e.substring(p.length+1),a=!0),!a){const B=new RegExp(`^ {0,${Math.min(3,w-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),I=new RegExp(`^ {0,${Math.min(3,w-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),E=new RegExp(`^ {0,${Math.min(3,w-1)}}(?:\`\`\`|~~~)`),K=new RegExp(`^ {0,${Math.min(3,w-1)}}#`),le=new RegExp(`^ {0,${Math.min(3,w-1)}}<(?:[a-z].*>|!--)`,"i");for(;e;){const Z=e.split(` -`,1)[0];let D;if(p=Z,this.options.pedantic?(p=p.replace(/^ {1,4}(?=( {4})*[^ ])/g," "),D=p):D=p.replace(/\t/g," "),E.test(p)||K.test(p)||le.test(p)||B.test(p)||I.test(p))break;if(D.search(/[^ ]/)>=w||!p.trim())l+=` -`+D.slice(w);else{if(k||u.replace(/\t/g," ").search(/[^ ]/)>=4||E.test(u)||K.test(u)||I.test(u))break;l+=` -`+p}!k&&!p.trim()&&(k=!0),c+=Z+` -`,e=e.substring(Z.length+1),u=D.slice(w)}}i.loose||(o?i.loose=!0:/\n[ \t]*\n[ \t]*$/.test(c)&&(o=!0));let T=null,R;this.options.gfm&&(T=/^\[[ xX]\] /.exec(l),T&&(R=T[0]!=="[ ] ",l=l.replace(/^\[[ xX]\] +/,""))),i.items.push({type:"list_item",raw:c,task:!!T,checked:R,loose:!1,text:l,tokens:[]}),i.raw+=c}i.items[i.items.length-1].raw=i.items[i.items.length-1].raw.trimEnd(),i.items[i.items.length-1].text=i.items[i.items.length-1].text.trimEnd(),i.raw=i.raw.trimEnd();for(let a=0;au.type==="space"),l=c.length>0&&c.some(u=>/\n.*\n/.test(u.raw));i.loose=l}if(i.loose)for(let a=0;a$/,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:n,raw:t[0],href:s,title:i}}}table(e){const t=this.rules.block.table.exec(e);if(!t||!/[:|]/.test(t[2]))return;const n=ve(t[1]),s=t[2].replace(/^\||\| *$/g,"").split("|"),i=t[3]&&t[3].trim()?t[3].replace(/\n[ \t]*$/,"").split(` -`):[],r={type:"table",raw:t[0],header:[],align:[],rows:[]};if(n.length===s.length){for(const o of s)/^ *-+: *$/.test(o)?r.align.push("right"):/^ *:-+: *$/.test(o)?r.align.push("center"):/^ *:-+ *$/.test(o)?r.align.push("left"):r.align.push(null);for(let o=0;o({text:a,tokens:this.lexer.inline(a),header:!1,align:r.align[c]})));return r}}lheading(e){const t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[2].charAt(0)==="="?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){const t=this.rules.block.paragraph.exec(e);if(t){const n=t[1].charAt(t[1].length-1)===` -`?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:n,tokens:this.lexer.inline(n)}}}text(e){const t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){const t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:z(t[1])}}tag(e){const t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&/^
    /i.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){const t=this.rules.inline.link.exec(e);if(t){const n=t[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;const r=H(n.slice(0,-1),"\\");if((n.length-r.length)%2===0)return}else{const r=vt(t[2],"()");if(r>-1){const a=(t[0].indexOf("!")===0?5:4)+t[1].length+r;t[2]=t[2].substring(0,r),t[0]=t[0].substring(0,a).trim(),t[3]=""}}let s=t[2],i="";if(this.options.pedantic){const r=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(s);r&&(s=r[1],i=r[3])}else i=t[3]?t[3].slice(1,-1):"";return s=s.trim(),/^$/.test(n)?s=s.slice(1):s=s.slice(1,-1)),_e(t,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){const s=(n[2]||n[1]).replace(/\s+/g," "),i=t[s.toLowerCase()];if(!i){const r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return _e(n,i,n[0],this.lexer)}}emStrong(e,t,n=""){let s=this.rules.inline.emStrongLDelim.exec(e);if(!s||s[3]&&n.match(/[\p{L}\p{N}]/u))return;if(!(s[1]||s[2]||"")||!n||this.rules.inline.punctuation.exec(n)){const r=[...s[0]].length-1;let o,a,c=r,l=0;const u=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(u.lastIndex=0,t=t.slice(-1*e.length+r);(s=u.exec(t))!=null;){if(o=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!o)continue;if(a=[...o].length,s[3]||s[4]){c+=a;continue}else if((s[5]||s[6])&&r%3&&!((r+a)%3)){l+=a;continue}if(c-=a,c>0)continue;a=Math.min(a,a+c+l);const p=[...s[0]][0].length,k=e.slice(0,r+s.index+p+a);if(Math.min(r,a)%2){const T=k.slice(1,-1);return{type:"em",raw:k,text:T,tokens:this.lexer.inlineTokens(T)}}const w=k.slice(2,-2);return{type:"strong",raw:k,text:w,tokens:this.lexer.inlineTokens(w)}}}}codespan(e){const t=this.rules.inline.code.exec(e);if(t){let n=t[2].replace(/\n/g," ");const s=/[^ ]/.test(n),i=/^ /.test(n)&&/ $/.test(n);return s&&i&&(n=n.substring(1,n.length-1)),n=z(n,!0),{type:"codespan",raw:t[0],text:n}}}br(e){const t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){const t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){const t=this.rules.inline.autolink.exec(e);if(t){let n,s;return t[2]==="@"?(n=z(t[1]),s="mailto:"+n):(n=z(t[1]),s=n),{type:"link",raw:t[0],text:n,href:s,tokens:[{type:"text",raw:n,text:n}]}}}url(e){var n;let t;if(t=this.rules.inline.url.exec(e)){let s,i;if(t[2]==="@")s=z(t[0]),i="mailto:"+s;else{let r;do r=t[0],t[0]=((n=this.rules.inline._backpedal.exec(t[0]))==null?void 0:n[0])??"";while(r!==t[0]);s=z(t[0]),t[1]==="www."?i="http://"+t[0]:i=t[0]}return{type:"link",raw:t[0],text:s,href:i,tokens:[{type:"text",raw:s,text:s}]}}}inlineText(e){const t=this.rules.inline.text.exec(e);if(t){let n;return this.lexer.state.inRawBlock?n=t[0]:n=z(t[0]),{type:"text",raw:t[0],text:n}}}}const $t=/^(?:[ \t]*(?:\n|$))+/,Tt=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Rt=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,G=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,zt=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Ae=/(?:[*+-]|\d{1,9}[.)])/,Ee=y(/^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/).replace(/bull/g,Ae).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).getRegex(),he=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,St=/^[^\n]+/,pe=/(?!\s*\])(?:\\.|[^\[\]\\])+/,At=y(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",pe).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Et=y(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Ae).getRegex(),oe="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",de=/|$))/,Ct=y("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",de).replace("tag",oe).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Ce=y(he).replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex(),It=y(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Ce).getRegex(),fe={blockquote:It,code:Tt,def:At,fences:Rt,heading:zt,hr:G,html:Ct,lheading:Ee,list:Et,newline:$t,paragraph:Ce,table:V,text:St},$e=y("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex(),Lt={...fe,table:$e,paragraph:y(he).replace("hr",G).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",$e).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",oe).getRegex()},Mt={...fe,html:y(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",de).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:V,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:y(he).replace("hr",G).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",Ee).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Ie=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Bt=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Le=/^( {2,}|\\)\n(?!\s*$)/,jt=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\]*?>/g,Pt=y(/^(?:\*+(?:((?!\*)[punct])|[^\s*]))|^_+(?:((?!_)[punct])|([^\s_]))/,"u").replace(/punct/g,X).getRegex(),Ut=y("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)[punct](\\*+)(?=[\\s]|$)|[^punct\\s](\\*+)(?!\\*)(?=[punct\\s]|$)|(?!\\*)[punct\\s](\\*+)(?=[^punct\\s])|[\\s](\\*+)(?!\\*)(?=[punct])|(?!\\*)[punct](\\*+)(?!\\*)(?=[punct])|[^punct\\s](\\*+)(?=[^punct\\s])","gu").replace(/punct/g,X).getRegex(),Ft=y("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)[punct](_+)(?=[\\s]|$)|[^punct\\s](_+)(?!_)(?=[punct\\s]|$)|(?!_)[punct\\s](_+)(?=[^punct\\s])|[\\s](_+)(?!_)(?=[punct])|(?!_)[punct](_+)(?!_)(?=[punct])","gu").replace(/punct/g,X).getRegex(),Zt=y(/\\([punct])/,"gu").replace(/punct/g,X).getRegex(),Ot=y(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Qt=y(de).replace("(?:-->|$)","-->").getRegex(),Ht=y("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Qt).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),se=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Nt=y(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",se).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Me=y(/^!?\[(label)\]\[(ref)\]/).replace("label",se).replace("ref",pe).getRegex(),Be=y(/^!?\[(ref)\](?:\[\])?/).replace("ref",pe).getRegex(),Vt=y("reflink|nolink(?!\\()","g").replace("reflink",Me).replace("nolink",Be).getRegex(),ge={_backpedal:V,anyPunctuation:Zt,autolink:Ot,blockSkip:qt,br:Le,code:Bt,del:V,emStrongLDelim:Pt,emStrongRDelimAst:Ut,emStrongRDelimUnd:Ft,escape:Ie,link:Nt,nolink:Be,punctuation:Dt,reflink:Me,reflinkSearch:Vt,tag:Ht,text:jt,url:V},Wt={...ge,link:y(/^!?\[(label)\]\((.*?)\)/).replace("label",se).getRegex(),reflink:y(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",se).getRegex()},ce={...ge,escape:y(Ie).replace("])","~|])").getRegex(),url:y(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\(s=o.call({lexer:this},e,t))?(e=e.substring(s.raw.length),t.push(s),!0):!1))){if(s=this.tokenizer.space(e)){e=e.substring(s.raw.length),s.raw.length===1&&t.length>0?t[t.length-1].raw+=` -`:t.push(s);continue}if(s=this.tokenizer.code(e)){e=e.substring(s.raw.length),i=t[t.length-1],i&&(i.type==="paragraph"||i.type==="text")?(i.raw+=` -`+s.raw,i.text+=` -`+s.text,this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s);continue}if(s=this.tokenizer.fences(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.heading(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.hr(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.blockquote(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.list(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.html(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.def(e)){e=e.substring(s.raw.length),i=t[t.length-1],i&&(i.type==="paragraph"||i.type==="text")?(i.raw+=` -`+s.raw,i.text+=` -`+s.raw,this.inlineQueue[this.inlineQueue.length-1].src=i.text):this.tokens.links[s.tag]||(this.tokens.links[s.tag]={href:s.href,title:s.title});continue}if(s=this.tokenizer.table(e)){e=e.substring(s.raw.length),t.push(s);continue}if(s=this.tokenizer.lheading(e)){e=e.substring(s.raw.length),t.push(s);continue}if(r=e,this.options.extensions&&this.options.extensions.startBlock){let o=1/0;const a=e.slice(1);let c;this.options.extensions.startBlock.forEach(l=>{c=l.call({lexer:this},a),typeof c=="number"&&c>=0&&(o=Math.min(o,c))}),o<1/0&&o>=0&&(r=e.substring(0,o+1))}if(this.state.top&&(s=this.tokenizer.paragraph(r))){i=t[t.length-1],n&&(i==null?void 0:i.type)==="paragraph"?(i.raw+=` -`+s.raw,i.text+=` -`+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s),n=r.length!==e.length,e=e.substring(s.raw.length);continue}if(s=this.tokenizer.text(e)){e=e.substring(s.raw.length),i=t[t.length-1],i&&i.type==="text"?(i.raw+=` -`+s.raw,i.text+=` -`+s.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=i.text):t.push(s);continue}if(e){const o="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw new Error(o)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n,s,i,r=e,o,a,c;if(this.tokens.links){const l=Object.keys(this.tokens.links);if(l.length>0)for(;(o=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null;)l.includes(o[0].slice(o[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(o=this.tokenizer.rules.inline.blockSkip.exec(r))!=null;)r=r.slice(0,o.index)+"["+"a".repeat(o[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(o=this.tokenizer.rules.inline.anyPunctuation.exec(r))!=null;)r=r.slice(0,o.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;e;)if(a||(c=""),a=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(l=>(n=l.call({lexer:this},e,t))?(e=e.substring(n.raw.length),t.push(n),!0):!1))){if(n=this.tokenizer.escape(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.tag(e)){e=e.substring(n.raw.length),s=t[t.length-1],s&&n.type==="text"&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(n=this.tokenizer.link(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(n.raw.length),s=t[t.length-1],s&&n.type==="text"&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(n=this.tokenizer.emStrong(e,r,c)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.codespan(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.br(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.del(e)){e=e.substring(n.raw.length),t.push(n);continue}if(n=this.tokenizer.autolink(e)){e=e.substring(n.raw.length),t.push(n);continue}if(!this.state.inLink&&(n=this.tokenizer.url(e))){e=e.substring(n.raw.length),t.push(n);continue}if(i=e,this.options.extensions&&this.options.extensions.startInline){let l=1/0;const u=e.slice(1);let p;this.options.extensions.startInline.forEach(k=>{p=k.call({lexer:this},u),typeof p=="number"&&p>=0&&(l=Math.min(l,p))}),l<1/0&&l>=0&&(i=e.substring(0,l+1))}if(n=this.tokenizer.inlineText(i)){e=e.substring(n.raw.length),n.raw.slice(-1)!=="_"&&(c=n.raw.slice(-1)),a=!0,s=t[t.length-1],s&&s.type==="text"?(s.raw+=n.raw,s.text+=n.text):t.push(n);continue}if(e){const l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return t}}class ie{constructor(e){v(this,"options");v(this,"parser");this.options=e||F}space(e){return""}code({text:e,lang:t,escaped:n}){var r;const s=(r=(t||"").match(/^\S*/))==null?void 0:r[0],i=e.replace(/\n$/,"")+` -`;return s?'
    '+(n?i:z(i,!0))+`
    -`:"
    "+(n?i:z(i,!0))+`
    -`}blockquote({tokens:e}){return`
    -${this.parser.parse(e)}
    -`}html({text:e}){return e}heading({tokens:e,depth:t}){return`${this.parser.parseInline(e)} -`}hr(e){return`
    -`}list(e){const t=e.ordered,n=e.start;let s="";for(let o=0;o -`+s+" -`}listitem(e){let t="";if(e.task){const n=this.checkbox({checked:!!e.checked});e.loose?e.tokens.length>0&&e.tokens[0].type==="paragraph"?(e.tokens[0].text=n+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&e.tokens[0].tokens[0].type==="text"&&(e.tokens[0].tokens[0].text=n+" "+e.tokens[0].tokens[0].text)):e.tokens.unshift({type:"text",raw:n+" ",text:n+" "}):t+=n+" "}return t+=this.parser.parse(e.tokens,!!e.loose),`
  • ${t}
  • -`}checkbox({checked:e}){return"'}paragraph({tokens:e}){return`

    ${this.parser.parseInline(e)}

    -`}table(e){let t="",n="";for(let i=0;i${s}`),` - -`+t+` -`+s+`
    -`}tablerow({text:e}){return` -${e} -`}tablecell(e){const t=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+` -`}strong({tokens:e}){return`${this.parser.parseInline(e)}`}em({tokens:e}){return`${this.parser.parseInline(e)}`}codespan({text:e}){return`${e}`}br(e){return"
    "}del({tokens:e}){return`${this.parser.parseInline(e)}`}link({href:e,title:t,tokens:n}){const s=this.parser.parseInline(n),i=ye(e);if(i===null)return s;e=i;let r='
    ",r}image({href:e,title:t,text:n}){const s=ye(e);if(s===null)return n;e=s;let i=`${n}{const c=o[a].flat(1/0);n=n.concat(this.walkTokens(c,t))}):o.tokens&&(n=n.concat(this.walkTokens(o.tokens,t)))}}return n}use(...e){const t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(n=>{const s={...n};if(s.async=this.defaults.async||s.async||!1,n.extensions&&(n.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){const r=t.renderers[i.name];r?t.renderers[i.name]=function(...o){let a=i.renderer.apply(this,o);return a===!1&&(a=r.apply(this,o)),a}:t.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const r=t[i.level];r?r.unshift(i.tokenizer):t[i.level]=[i.tokenizer],i.start&&(i.level==="block"?t.startBlock?t.startBlock.push(i.start):t.startBlock=[i.start]:i.level==="inline"&&(t.startInline?t.startInline.push(i.start):t.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(t.childTokens[i.name]=i.childTokens)}),s.extensions=t),n.renderer){const i=this.defaults.renderer||new ie(this.defaults);for(const r in n.renderer){if(!(r in i))throw new Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;const o=r,a=n.renderer[o],c=i[o];i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u||""}}s.renderer=i}if(n.tokenizer){const i=this.defaults.tokenizer||new ne(this.defaults);for(const r in n.tokenizer){if(!(r in i))throw new Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;const o=r,a=n.tokenizer[o],c=i[o];i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u}}s.tokenizer=i}if(n.hooks){const i=this.defaults.hooks||new W;for(const r in n.hooks){if(!(r in i))throw new Error(`hook '${r}' does not exist`);if(["options","block"].includes(r))continue;const o=r,a=n.hooks[o],c=i[o];W.passThroughHooks.has(r)?i[o]=l=>{if(this.defaults.async)return Promise.resolve(a.call(i,l)).then(p=>c.call(i,p));const u=a.call(i,l);return c.call(i,u)}:i[o]=(...l)=>{let u=a.apply(i,l);return u===!1&&(u=c.apply(i,l)),u}}s.hooks=i}if(n.walkTokens){const i=this.defaults.walkTokens,r=n.walkTokens;s.walkTokens=function(o){let a=[];return a.push(r.call(this,o)),i&&(a=a.concat(i.call(this,o))),a}}this.defaults={...this.defaults,...s}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return S.lex(e,t??this.defaults)}parser(e,t){return A.parse(e,t??this.defaults)}parseMarkdown(e){return(n,s)=>{const i={...s},r={...this.defaults,...i},o=this.onError(!!r.silent,!!r.async);if(this.defaults.async===!0&&i.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof n>"u"||n===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof n!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));r.hooks&&(r.hooks.options=r,r.hooks.block=e);const a=r.hooks?r.hooks.provideLexer():e?S.lex:S.lexInline,c=r.hooks?r.hooks.provideParser():e?A.parse:A.parseInline;if(r.async)return Promise.resolve(r.hooks?r.hooks.preprocess(n):n).then(l=>a(l,r)).then(l=>r.hooks?r.hooks.processAllTokens(l):l).then(l=>r.walkTokens?Promise.all(this.walkTokens(l,r.walkTokens)).then(()=>l):l).then(l=>c(l,r)).then(l=>r.hooks?r.hooks.postprocess(l):l).catch(o);try{r.hooks&&(n=r.hooks.preprocess(n));let l=a(n,r);r.hooks&&(l=r.hooks.processAllTokens(l)),r.walkTokens&&this.walkTokens(l,r.walkTokens);let u=c(l,r);return r.hooks&&(u=r.hooks.postprocess(u)),u}catch(l){return o(l)}}}onError(e,t){return n=>{if(n.message+=` -Please report this to https://github.com/markedjs/marked.`,e){const s="

    An error occurred:

    "+z(n.message+"",!0)+"
    ";return t?Promise.resolve(s):s}if(t)return Promise.reject(n);throw n}}}const U=new Xt;function m(d,e){return U.parse(d,e)}m.options=m.setOptions=function(d){return U.setOptions(d),m.defaults=U.defaults,Re(m.defaults),m};m.getDefaults=ue;m.defaults=F;m.use=function(...d){return U.use(...d),m.defaults=U.defaults,Re(m.defaults),m};m.walkTokens=function(d,e){return U.walkTokens(d,e)};m.parseInline=U.parseInline;m.Parser=A;m.parser=A.parse;m.Renderer=ie;m.TextRenderer=xe;m.Lexer=S;m.lexer=S.lex;m.Tokenizer=ne;m.Hooks=W;m.parse=m;m.options;m.setOptions;m.use;m.walkTokens;m.parseInline;A.parse;S.lex;const Kt={class:"min-h-screen flex items-center justify-center p-4 overflow-hidden transition-colors duration-300"},Jt={class:"w-full max-w-md relative z-10"},Yt={class:"p-8"},en={class:"flex justify-center mb-8"},tn={class:"rounded-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 p-1 animate-spin-slow"},nn={class:"rounded-full bg-gray-900 p-2"},sn={class:"mb-6 relative"},rn={class:"relative"},on=["readonly"],ln={key:0,class:"absolute inset-y-0 right-0 flex items-center pr-3"},an=["disabled"],cn={class:"flex items-center justify-center relative z-10"},un={class:"mt-6 text-center"},hn={class:"flex-grow overflow-y-auto p-6"},pn={class:"flex-shrink-0 mr-4"},dn={class:"flex-grow min-w-0 mr-4"},fn={class:"flex-shrink-0 flex space-x-2"},gn=["onClick"],xn=["onClick"],kn=["onClick"],bn={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},wn={class:"space-y-4"},mn={class:"flex items-center"},yn={class:"flex items-center"},vn={class:"flex items-center"},_n={class:"flex items-center"},$n={key:0,class:"ml-2"},Tn={key:1},Rn=["href"],zn={class:"mt-6 flex flex-col items-center"},Sn={class:"bg-white p-2 rounded-lg shadow-md"},An={key:0,class:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50"},En={class:"flex justify-between items-center mb-4 flex-shrink-0"},Cn={class:"flex items-center gap-3"},In={class:"flex-1 overflow-y-auto custom-scrollbar"},Ln=["innerHTML"],Mn={__name:"RetrievewFileView",setup(d){const e=Oe(),t=window.location.origin,n=st(),s=Ge("isDarkMode"),i=rt(),{receiveData:r}=Qe(i),o=q(""),a=q({readonly:!1,loading:!1}),c=q(!1),l=q(""),u=q(null),p=q(!1),k=Ne(),w=r,T=JSON.parse(localStorage.getItem("config")||"{}");He(()=>{const g=k.query.code;g&&(o.value=g)}),Ve(o,g=>{g.length===5&&I()});const R=g=>g.downloadUrl.startsWith("http")?g.downloadUrl:`${t}${g.downloadUrl}`,B=async()=>{u.value&&u.value.content&&await ct(u.value.content,{successMsg:"内容已复制到剪贴板",errorMsg:"复制失败,请重试"})},I=async()=>{if(o.value.length!==5){e.showAlert("请输入5位取件码","error");return}a.value.readonly=!0,a.value.loading=!0;try{const g=await it.post("/share/select/",{code:o.value});if(g.code===200)if(g.detail){const x=g.detail.text.startsWith("/share/download")||g.detail.name!=="Text",C={id:Date.now(),code:g.detail.code,filename:g.detail.name,size:E(g.detail.size),downloadUrl:x?g.detail.text:null,content:x?null:g.detail.text,date:new Date().toLocaleString()};let $=!0;i.receiveData.forEach(Y=>{if(Y.code===C.code){$=!1;return}}),$&&i.addReceiveData(C),x?u.value=C:(u.value=C,J.value=!0),e.showAlert("文件获取成功","success")}else e.showAlert("无效的取件码","error");else e.showAlert(g.detail||"获取文件失败","error")}catch(g){console.error("取件失败:",g),e.showAlert("取件失败,请稍后重试","error")}finally{a.value.readonly=!1,a.value.loading=!1,o.value=""}},E=g=>{if(g===0)return"0 Bytes";const x=1024,C=["Bytes","KB","MB","GB","TB"],$=Math.floor(Math.log(g)/Math.log(x));return parseFloat((g/Math.pow(x,$)).toFixed(2))+" "+C[$]},K=g=>{u.value=g},le=g=>{const x=w.value.findIndex(C=>C.id===g);x!==-1&&i.deleteReceiveData(x)},Z=()=>{p.value=!p.value},D=()=>{n.push("/send")},je=g=>g.downloadUrl?`${t}${g.downloadUrl}`:`${t}?code=${g.code}`,De=g=>{if(console.log(g),g.downloadUrl)window.open(`${g.downloadUrl.startsWith("http")?"":t}${g.downloadUrl}`,"_blank");else if(g.content){const x=new Blob([g.content],{type:"text/plain;charset=utf-8"});kt.saveAs(x,`${g.filename}.txt`)}},J=q(!1),qe=We(()=>u.value&&u.value.content?m(u.value.content):""),Pe=()=>{J.value=!0};return(g,x)=>{const C=Ye("router-link");return M(),L("div",Kt,[h("div",Jt,[h("div",{class:b(["rounded-3xl shadow-2xl overflow-hidden border transform transition-all duration-300",[f(s)?"bg-gray-800 bg-opacity-50 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200"]])},[h("div",Yt,[h("div",en,[h("div",tn,[h("div",nn,[_(f(ht),{class:"w-8 h-8 text-white"})])])]),h("h2",{onClick:D,class:b(["text-3xl cursor-pointer font-extrabold text-center mb-6",[f(s)?"text-transparent bg-clip-text bg-gradient-to-r from-indigo-300 via-purple-300 to-pink-300":"text-indigo-600"]])},j(f(T).name),3),h("form",{onSubmit:Xe(I,["prevent"])},[h("div",sn,[h("label",{for:"code",class:b(["block text-sm font-medium mb-2",[f(s)?"text-gray-300":"text-gray-800"]])},"取件码",2),h("div",rn,[Ke(h("input",{id:"code","onUpdate:modelValue":x[0]||(x[0]=$=>o.value=$),type:"text",class:b(["w-full px-4 py-3 rounded-lg placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-indigo-500 transition duration-300 pr-10",[f(s)?"bg-gray-700 bg-opacity-50":"bg-gray-100",{"ring-2 ring-red-500":l.value},f(s)?"text-gray-300":"text-gray-800"]]),placeholder:"请输入5位取件码",required:"",readonly:a.value.readonly,maxlength:"5",onFocus:x[1]||(x[1]=$=>c.value=!0),onBlur:x[2]||(x[2]=$=>c.value=!1)},null,42,on),[[Je,o.value]]),a.value.loading?(M(),L("div",ln,x[5]||(x[5]=[h("span",{class:"animate-spin rounded-full h-5 w-5 border-b-2 border-indigo-500"},null,-1)]))):ee("",!0)]),h("div",{class:b(["absolute -bottom-0.5 left-2 h-0.5 bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 transition-all duration-300 ease-in-out",{"w-97-100":c.value,"w-0":!c.value}])},null,2)]),h("button",{type:"submit",class:"w-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 text-white font-bold py-3 px-4 rounded-lg hover:from-indigo-600 hover:via-purple-600 hover:to-pink-600 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition duration-300 transform hover:scale-105 hover:shadow-lg relative overflow-hidden group",disabled:a.value.loading},[h("span",cn,[h("span",null,j(a.value.loading?"处理中...":"提取文件"),1),_(f(ft),{class:"w-5 h-5 ml-2 transition-transform duration-300 transform group-hover:translate-x-1"})]),x[6]||(x[6]=h("span",{class:"absolute top-0 left-0 w-full h-full bg-gradient-to-r from-pink-500 via-purple-500 to-indigo-500 opacity-0 group-hover:opacity-100 transition-opacity duration-300"},null,-1))],8,an)],32),h("div",un,[_(C,{to:"/send",class:"text-indigo-400 hover:text-indigo-300 transition duration-300"},{default:O(()=>x[7]||(x[7]=[P(" 需要发送文件?点击这里 ")])),_:1,__:[7]})])]),h("div",{class:b(["px-8 py-4 bg-opacity-50 flex justify-between items-center",[f(s)?"bg-gray-800":"bg-gray-100"]])},[h("span",{class:b(["text-sm flex items-center",[f(s)?"text-gray-300":"text-gray-800"]])},[_(f(ot),{class:"w-4 h-4 mr-1 text-green-400"}),x[8]||(x[8]=P(" 安全加密 "))],2),h("button",{onClick:Z,class:b(["text-sm hover:text-indigo-300 transition duration-300 flex items-center",[f(s)?"text-indigo-400":"text-indigo-600"]])},[x[9]||(x[9]=P(" 取件记录 ")),_(f(lt),{class:"w-4 h-4 ml-1"})],2)],2)],2)]),_(ae,{name:"drawer"},{default:O(()=>[p.value?(M(),L("div",{key:0,class:b(["fixed inset-y-0 right-0 w-full sm:w-120 bg-opacity-70 backdrop-filter backdrop-blur-xl shadow-2xl z-50 overflow-hidden flex flex-col",[f(s)?"bg-gray-900":"bg-white"]])},[h("div",{class:b(["flex justify-between items-center p-6 border-b",[f(s)?"border-gray-700":"border-gray-200"]])},[h("h3",{class:b(["text-2xl font-bold",[f(s)?"text-white":"text-gray-800"]])}," 取件记录 ",2),h("button",{onClick:Z,class:b(["hover:text-white transition duration-300",[f(s)?"text-gray-400":"text-gray-800"]])},[_(f(ke),{class:"w-6 h-6"})],2)],2),h("div",hn,[_(et,{name:"list",tag:"div",class:"space-y-4"},{default:O(()=>[(M(!0),L(tt,null,nt(f(w),$=>(M(),L("div",{key:$.id,class:b(["bg-opacity-50 rounded-lg p-4 flex items-center shadow-md hover:shadow-lg transition duration-300 transform hover:scale-102",[f(s)?"bg-gray-800 hover:bg-gray-700":"bg-gray-100 hover:bg-white"]])},[h("div",pn,[_(f(be),{class:b(["w-10 h-10",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])]),h("div",dn,[h("p",{class:b(["font-medium text-lg truncate",[f(s)?"text-white":"text-gray-800"]])},j($.filename),3),h("p",{class:b(["text-sm truncate",[f(s)?"text-gray-400":"text-gray-600"]])},j($.date)+" · "+j($.size),3)]),h("div",fn,[h("button",{onClick:Y=>K($),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-indigo-400 text-indigo-400":"hover:bg-indigo-100 text-indigo-600"]])},[_(f(ut),{class:"w-5 h-5"})],10,gn),h("button",{onClick:Y=>De($),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-green-400 text-green-400":"hover:bg-green-100 text-green-600"]])},[_(f(we),{class:"w-5 h-5"})],10,xn),h("button",{onClick:Y=>le($.id),class:b(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[f(s)?"hover:bg-red-400 text-red-400":"hover:bg-red-100 text-red-600"]])},[_(f(dt),{class:"w-5 h-5"})],10,kn)])],2))),128))]),_:1})])],2)):ee("",!0)]),_:1}),_(ae,{name:"fade"},{default:O(()=>[u.value?(M(),L("div",bn,[h("div",{class:b(["p-8 rounded-2xl max-w-md w-full mx-4 shadow-2xl transform transition-all duration-300 ease-out backdrop-filter backdrop-blur-lg overflow-hidden",[f(s)?"bg-gray-800 bg-opacity-70":"bg-white bg-opacity-95"]])},[h("h3",{class:b(["text-2xl font-bold mb-6 truncate",[f(s)?"text-white":"text-gray-800"]])}," 文件详情 ",2),h("div",wn,[h("div",mn,[_(f(be),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[10]||(x[10]=h("span",{class:"font-medium"},"文件名:",-1)),P(j(u.value.filename),1)],2)]),h("div",yn,[_(f(gt),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[11]||(x[11]=h("span",{class:"font-medium"},"取件日期:",-1)),P(j(u.value.date),1)],2)]),h("div",vn,[_(f(pt),{class:b(["w-6 h-6 mr-3 flex-shrink-0",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([[f(s)?"text-gray-300":"text-gray-800"],"truncate flex-grow"])},[x[12]||(x[12]=h("span",{class:"font-medium"},"文件大小:",-1)),P(j(u.value.size),1)],2)]),h("div",_n,[_(f(we),{class:b(["w-6 h-6 mr-3",[f(s)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"]),h("p",{class:b([f(s)?"text-gray-300":"text-gray-800"])},x[13]||(x[13]=[h("span",{class:"font-medium"},"文件内容:",-1)]),2),u.value.filename=="Text"?(M(),L("div",$n,[h("button",{onClick:Pe,class:"px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition duration-300"}," 预览内容 ")])):(M(),L("div",Tn,[h("a",{href:R(u.value),target:"_blank",rel:"noopener noreferrer",class:"px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition duration-300"}," 点击下载 ",8,Rn)]))])]),h("div",zn,[h("h4",{class:b(["text-lg font-semibold mb-3",[f(s)?"text-white":"text-gray-800"]])}," 取件二维码 ",2),h("div",Sn,[_(at,{value:je(u.value),size:128,level:"M"},null,8,["value"])]),h("p",{class:b(["mt-2 text-sm",[f(s)?"text-gray-400":"text-gray-600"]])}," 扫描二维码快速取件 ",2)]),h("button",{onClick:x[3]||(x[3]=$=>u.value=null),class:"mt-8 w-full bg-gradient-to-r from-indigo-500 to-purple-600 text-white px-6 py-3 rounded-lg font-medium hover:from-indigo-600 hover:to-purple-700 focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition duration-300 transform hover:scale-105"}," 关闭 ")],2)])):ee("",!0)]),_:1}),_(ae,{name:"fade"},{default:O(()=>[J.value?(M(),L("div",An,[h("div",{class:b(["p-6 rounded-2xl max-w-3xl w-full mx-4 shadow-2xl transform transition-all duration-300 ease-out backdrop-filter backdrop-blur-lg bg-opacity-70 max-h-[85vh] overflow-hidden flex flex-col",[f(s)?"bg-gray-800":"bg-white"]])},[h("div",En,[h("h3",{class:b(["text-2xl font-bold",[f(s)?"text-white":"text-gray-800"]])}," 内容预览 ",2),h("div",Cn,[h("button",{onClick:B,class:b(["px-4 py-1.5 rounded-lg transition duration-300 flex items-center gap-2 text-sm font-medium",[f(s)?"bg-gray-700 hover:bg-gray-600 text-gray-300 hover:text-white":"bg-gray-100 hover:bg-gray-200 text-gray-700 hover:text-gray-900"]])},[_(f(xt),{class:"w-4 h-4"}),x[14]||(x[14]=P(" 复制 "))],2),h("button",{onClick:x[4]||(x[4]=$=>J.value=!1),class:b(["p-1.5 rounded-lg transition duration-300 hover:bg-opacity-10",[f(s)?"text-gray-400 hover:text-white hover:bg-white":"text-gray-500 hover:text-gray-900 hover:bg-black"]])},[_(f(ke),{class:"w-5 h-5"})],2)])]),h("div",In,[h("div",{class:b(["prose max-w-none p-6 rounded-xl",[f(s)?"prose-invert bg-gray-900 bg-opacity-50":"bg-gray-50"]]),innerHTML:qe.value},null,10,Ln)])],2)])):ee("",!0)]),_:1})])}}},Zn=Ze(Mn,[["__scopeId","data-v-3129e8a3"]]);export{Zn as default}; diff --git a/themes/2025/assets/SendFileView-9SD7mX5s.css b/themes/2025/assets/SendFileView-9SD7mX5s.css new file mode 100644 index 000000000..3fa4f0ceb --- /dev/null +++ b/themes/2025/assets/SendFileView-9SD7mX5s.css @@ -0,0 +1 @@ +.border-progress-container[data-v-74085255]{position:relative;width:100%;height:100%}.border-progress-canvas[data-v-74085255]{position:absolute;top:0;left:0;width:100%;height:100%;transition:all .3s ease}.fade-enter-active[data-v-079e0ac5],.fade-leave-active[data-v-079e0ac5]{transition:opacity .3s ease,transform .3s ease}.fade-enter-from[data-v-079e0ac5],.fade-leave-to[data-v-079e0ac5]{opacity:0;transform:translateY(10px)}@media (min-width: 640px){.sm\:w-120[data-v-079e0ac5]{width:30rem}}.fade-enter-to[data-v-079e0ac5],.fade-leave-from[data-v-079e0ac5]{opacity:1;transform:translateY(0)}.drawer-enter-active[data-v-079e0ac5],.drawer-leave-active[data-v-079e0ac5]{transition:transform .3s ease}.drawer-enter-from[data-v-079e0ac5],.drawer-leave-to[data-v-079e0ac5]{transform:translate(100%)}.list-enter-active[data-v-079e0ac5],.list-leave-active[data-v-079e0ac5]{transition:all .5s ease}.list-enter-from[data-v-079e0ac5],.list-leave-to[data-v-079e0ac5]{opacity:0;transform:translate(30px)}select option[data-v-079e0ac5]{padding:8px;margin:4px;border-radius:6px}select option[data-v-079e0ac5]:checked{background:linear-gradient(to right,#6366f180,#a855f780)!important;color:#fff!important}.dark select option[data-v-079e0ac5]:checked{background:linear-gradient(to right,#6366f1b3,#a855f7b3)!important}select option[data-v-079e0ac5]:hover{background-color:#6366f11a}.dark select option[data-v-079e0ac5]:hover{background-color:#6366f133}.shadow-sm[data-v-079e0ac5]{box-shadow:none!important} diff --git a/themes/2025/assets/SendFileView-DFaiiDlV.css b/themes/2025/assets/SendFileView-DFaiiDlV.css deleted file mode 100644 index e312d4b72..000000000 --- a/themes/2025/assets/SendFileView-DFaiiDlV.css +++ /dev/null @@ -1 +0,0 @@ -.border-progress-container[data-v-74085255]{position:relative;width:100%;height:100%}.border-progress-canvas[data-v-74085255]{position:absolute;top:0;left:0;width:100%;height:100%;transition:all .3s ease}.fade-enter-active[data-v-fad875ce],.fade-leave-active[data-v-fad875ce]{transition:opacity .3s ease,transform .3s ease}.fade-enter-from[data-v-fad875ce],.fade-leave-to[data-v-fad875ce]{opacity:0;transform:translateY(10px)}@media (min-width: 640px){.sm\:w-120[data-v-fad875ce]{width:30rem}}.fade-enter-to[data-v-fad875ce],.fade-leave-from[data-v-fad875ce]{opacity:1;transform:translateY(0)}.drawer-enter-active[data-v-fad875ce],.drawer-leave-active[data-v-fad875ce]{transition:transform .3s ease}.drawer-enter-from[data-v-fad875ce],.drawer-leave-to[data-v-fad875ce]{transform:translate(100%)}.list-enter-active[data-v-fad875ce],.list-leave-active[data-v-fad875ce]{transition:all .5s ease}.list-enter-from[data-v-fad875ce],.list-leave-to[data-v-fad875ce]{opacity:0;transform:translate(30px)}select option[data-v-fad875ce]{padding:8px;margin:4px;border-radius:6px}select option[data-v-fad875ce]:checked{background:linear-gradient(to right,#6366f180,#a855f780)!important;color:#fff!important}.dark select option[data-v-fad875ce]:checked{background:linear-gradient(to right,#6366f1b3,#a855f7b3)!important}select option[data-v-fad875ce]:hover{background-color:#6366f11a}.dark select option[data-v-fad875ce]:hover{background-color:#6366f133} diff --git a/themes/2025/assets/SendFileView-DJlusruR.js b/themes/2025/assets/SendFileView-DJlusruR.js deleted file mode 100644 index 4c2a0e2c4..000000000 --- a/themes/2025/assets/SendFileView-DJlusruR.js +++ /dev/null @@ -1,31 +0,0 @@ -import{c as U,d as ue,r as I,o as ge,w as Ie,a as S,b as e,e as w,_ as pe,u as Ae,f as $e,g as m,n as a,h as r,i as De,t as T,j as E,k as V,l as j,m as O,v as se,T as Q,F as J,p as Fe,q as Pe,s as ae,x as K,y as je,X as ne,z as Be,A as le,B as Ue,C as H}from"./index-C-4-823a.js";import{u as Re,S as ie,C as Ve,c as He,a as Le,Q as qe,b as X,E as Ee}from"./clipboard-WGJncgVO.js";import{F as ce}from"./file-D-r2HShG.js";import{T as Ne}from"./trash-CAImX6bg.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Y=U("ClipboardCopyIcon",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const We=U("ClockIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Ge=U("CloudUploadIcon",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242",key:"1pljnt"}],["path",{d:"m8 17 4-4 4 4",key:"1quai1"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Oe=U("SendIcon",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Qe=U("TerminalIcon",[["polyline",{points:"4 17 10 11 4 5",key:"akl6gq"}],["line",{x1:"12",x2:"20",y1:"19",y2:"19",key:"q2wloq"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Je=U("TextIcon",[["path",{d:"M17 6.1H3",key:"wptmhv"}],["path",{d:"M21 12.1H3",key:"1j38uz"}],["path",{d:"M15.1 18H3",key:"1nb16a"}]]),Ke=ue({__name:"BorderProgressBar",props:{progress:{}},setup($){const M=$,B=I(null),o=I(null);let u=null;const k=()=>{if(!u||!o.value||!B.value)return;const g=B.value.clientWidth,h=B.value.clientHeight;o.value.width=g,o.value.height=h;const c=4,l=8;u.lineWidth=c;const y=u.createLinearGradient(0,0,g,h);y.addColorStop(0,"#4f46e5"),y.addColorStop(.5,"#7c3aed"),y.addColorStop(1,"#db2777"),u.strokeStyle="rgba(229, 231, 235, 0.2)",_(u,c/2,c/2,g-c,h-c,l),u.stroke();const v=((g+h)*2-8*l+2*Math.PI*l)*M.progress/100;u.strokeStyle=y,u.lineCap="round",u.lineJoin="round",u.beginPath();let d=v;const x=c/2,z=g-c,D=h-c;if(d>0){const p=Math.min(z-2*l,d);u.moveTo(l+x,x),u.lineTo(p+l+x,x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(z-l+x,l+x,l,-Math.PI/2,p-Math.PI/2,!1),d-=p*l}if(d>0){const p=Math.min(D-2*l,d);u.lineTo(z+x,p+l+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(z-l+x,D-l+x,l,0,p,!1),d-=p*l}if(d>0){const p=Math.min(z-2*l,d);u.lineTo(z-p-l+x,D+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(l+x,D-l+x,l,Math.PI/2,Math.PI/2+p,!1),d-=p*l}if(d>0){const p=Math.min(D-2*l,d);u.lineTo(x,D-p-l+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(l+x,l+x,l,Math.PI,Math.PI+p,!1)}u.stroke()};function _(g,h,c,l,y,b){g.beginPath(),g.moveTo(h+b,c),g.lineTo(h+l-b,c),g.arcTo(h+l,c,h+l,c+b,b),g.lineTo(h+l,c+y-b),g.arcTo(h+l,c+y,h+l-b,c+y,b),g.lineTo(h+b,c+y),g.arcTo(h,c+y,h,c+y-b,b),g.lineTo(h,c+b),g.arcTo(h,c,h+b,c,b),g.closePath()}return ge(()=>{o.value&&(u=o.value.getContext("2d"),k())}),Ie(()=>M.progress,k),(g,h)=>(w(),S("div",{class:"border-progress-container",ref_key:"container",ref:B},[e("canvas",{ref_key:"canvas",ref:o,class:"border-progress-canvas"},null,512)],512))}}),Xe=pe(Ke,[["__scopeId","data-v-74085255"]]),de=$=>$>=1024*1024*1024?Math.round($/(1024*1024*1024))+"GB":$>=1024*1024?Math.round($/(1024*1024))+"MB":Math.round($/1024)+"KB",Ye={class:"p-8"},Ze={class:"flex justify-center space-x-4 mb-6"},et={key:"file",class:"grid grid-cols-1 gap-8"},tt={key:0,class:"absolute inset-0 w-full h-full"},rt={class:"block truncate"},ot={key:"text",class:"grid grid-cols-1 gap-8"},st={key:0,class:"flex flex-col"},at={class:"flex flex-col space-y-3"},nt={class:"relative flex-grow group"},lt=["placeholder"],it=["value"],ct={type:"submit",class:"w-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 text-white font-bold py-4 px-6 rounded-lg focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition-all duration-300 transform hover:scale-105 hover:shadow-lg relative overflow-hidden group"},dt={class:"relative z-10 flex items-center justify-center text-lg"},ut={class:"mt-6 text-center"},gt={class:"flex-grow overflow-y-auto p-6"},pt={class:"flex-shrink-0 mr-4"},ht={class:"flex-grow min-w-0 mr-4"},ft={class:"flex-shrink-0 flex space-x-2"},mt=["onClick"],xt=["onClick"],vt=["onClick"],yt={key:0,class:"fixed inset-0 bg-black/60 backdrop-blur-sm flex items-center justify-center z-50 p-3 sm:p-4 overflow-y-auto"},bt={class:"flex items-center justify-between"},wt={class:"p-4 sm:p-6"},kt={class:"flex items-center mb-3 sm:mb-4"},_t={class:"ml-3 sm:ml-4 min-w-0 flex-1"},Ct={class:"grid grid-cols-2 gap-3 sm:gap-4"},St={class:"flex items-center min-w-0"},Mt={class:"flex items-center min-w-0"},zt={class:"grid grid-cols-1 md:grid-cols-2 gap-4 sm:gap-6"},Tt={class:"space-y-3 sm:space-y-4"},It={class:"bg-gradient-to-br from-indigo-500 to-purple-600 rounded-xl p-4 sm:p-5 text-white"},At={class:"flex items-center justify-between mb-3 sm:mb-4"},$t={class:"text-2xl sm:text-3xl font-bold tracking-wider text-center break-all"},Dt={class:"flex items-center justify-between mb-2 sm:mb-3"},Ft={class:"bg-white p-3 sm:p-4 rounded-lg shadow-sm mb-3 sm:mb-4"},Pt=ue({__name:"SendFileView",setup($){const M=JSON.parse(localStorage.getItem("config")||"{}"),B=Ue(),o=De("isDarkMode"),u=Re(),k=I("file"),_=I(null),g=I(""),h=I(null),c=I("day"),l=I("1"),y=I(0),b=I(!1),v=I(null),d=Ae(),x=$e(()=>u.shareData),z=I(""),D=()=>{var n;(n=h.value)==null||n.click()},p=async n=>{const t=n.target;if(t.files&&t.files.length>0){const i=t.files[0];if(_.value=i,!W())return;z.value=await N(i),console.log(z.value)}},he=async n=>{var t;if((t=n.dataTransfer)!=null&&t.files&&n.dataTransfer.files.length>0){const i=n.dataTransfer.files[0];if(_.value=i,!W())return;z.value=await N(i)}},fe=async n=>{var i;const t=(i=n.clipboardData)==null?void 0:i.items;if(t)for(const s of t)if(s.kind==="file"){const f=s.getAsFile();if(f){if(f.size===0){d.showAlert("无法读取空文件","error");return}if(_.value=f,!W())return;try{z.value=await N(f),d.showAlert("已从剪贴板添加文件:"+f.name,"success")}catch(C){d.showAlert("文件处理失败","error"),console.error("File hash calculation failed:",C)}break}}else k.value="text",t[0].getAsString(f=>{g.value+=f})},N=async n=>new Promise(t=>{const s=new FileReader;let f=0;const C=Math.ceil(n.size/2097152);s.onload=async F=>{const A=new Uint8Array(F.target.result);try{if(window.isSecureContext){const P=await crypto.subtle.digest("SHA-256",A),G=Array.from(new Uint8Array(P)).map(q=>q.toString(16).padStart(2,"0")).join("");f++,f{const F=f*2097152,A=F+2097152>=n.size?n.size:F+2097152;s.readAsArrayBuffer(n.slice(F,A))};R()}),Z=n=>{const t=`${n.name}-${n.size}-${n.lastModified}`;let i=0;for(let s=0;s{switch(n){case"day":return"输入天数";case"hour":return"输入小时数";case"minute":return"输入分钟数";case"count":return"输入查看次数";case"forever":return"永久";default:return"输入值"}},ee=(n=c.value)=>{switch(n){case"day":return"天";case"hour":return"小时";case"minute":return"分钟";case"count":return"次";case"forever":return"永久";default:return""}},xe=async n=>{var t,i;try{const f=Math.ceil(n.size/5242880),C=await H.post("chunk/upload/init/",{file_name:n.name,file_size:n.size,chunk_size:5242880,file_hash:z.value});if(C.code!==200)throw new Error("初始化切片上传失败");if(C.detail.existed)return C;const R=C.detail.upload_id;for(let A=0;A{const Te=Math.round((A*5242880+ze.loaded)*100/n.size);y.value=Te}})).code!==200)throw new Error(`切片 ${A} 上传失败`)}const F=await H.post(`chunk/upload/complete/${R}`,{expire_value:l.value?parseInt(l.value):1,expire_style:c.value});if(F.code!==200)throw new Error("完成上传失败");return F}catch(s){throw console.error("切片上传失败:",s),(i=(t=s.response)==null?void 0:t.data)!=null&&i.detail?d.showAlert(s.response.data.detail,"error"):d.showAlert("上传失败,请稍后重试","error"),s}},ve=async n=>{const t=new FormData,i={headers:{"Content-Type":"multipart/form-data"},onUploadProgress:f=>{const C=Math.round(f.loaded*100/f.total);y.value=C}};return t.append("file",n),t.append("expire_value",l.value),t.append("expire_style",c.value),await H.post("share/file/",t,i)},ye=()=>M.openUpload===0&&localStorage.getItem("token")===null?(d.showAlert("游客上传功能已关闭","error"),!1):!0,be=n=>n.size>M.uploadSize?(d.showAlert(`文件大小超过限制 (${de(M.uploadSize)})`,"error"),_.value=null,!1):!0,te=(n,t)=>{if(n==="forever"||n==="count")return!0;const i=M.max_save_seconds||0;if(i===0)return!0;let s=0;switch(n){case"minute":s=parseInt(t)*60;break;case"hour":s=parseInt(t)*3600;break;case"day":s=parseInt(t)*86400;break;default:return!1}return s<=i},W=()=>!(!ye()||!be(_.value)||!te(c.value,l.value)),we=async()=>{var n,t;if(k.value==="file"&&!_.value){d.showAlert("请选择要上传的文件","error");return}if(k.value==="text"&&!g.value.trim()){d.showAlert("请输入要发送的文本","error");return}if(c.value!=="forever"&&!l.value){d.showAlert("请输入过期值","error");return}if(!te(c.value,l.value)){const i=Math.floor(M.max_save_seconds/86400);d.showAlert(`过期时间不能超过${i}天`,"error");return}try{let i;if(k.value==="file")M.enableChunk?i=await xe(_.value):i=await ve(_.value);else{const s=new FormData;s.append("text",g.value),s.append("expire_value",l.value),s.append("expire_style",c.value),i=await H.post("share/text/",s,{headers:{"Content-Type":"multipart/form-data"}})}if(i&&i.code===200){const s=i.detail.code,f=i.detail.name,C={id:Date.now(),type:k.value,filename:f,date:new Date().toISOString().split("T")[0],size:k.value==="text"?`${(g.value.length/1024).toFixed(2)} KB`:`${(_.value.size/(1024*1024)).toFixed(1)} MB`,expiration:c.value==="forever"?"永久":`${l.value}${ee()}后过期`,retrieveCode:s};console.log(C),u.addShareData(C),d.showAlert(`文件发送成功!取件码:${s}`,"success"),_.value=null,g.value="",y.value=0,v.value=C,await X(s)}else throw new Error("服务器响应异常")}catch(i){console.error("发送失败:",i),(t=(n=i.response)==null?void 0:n.data)!=null&&t.detail?d.showAlert(i.response.data.detail,"error"):d.showAlert("发送失败,请稍后重试","error")}finally{y.value=0}},ke=()=>{B.push("/")},re=()=>{b.value=!b.value},_e=n=>{v.value=n},Ce=n=>{const t=u.shareData.findIndex(i=>i.id===n);t!==-1&&u.deleteShareData(t)},Se=window.location.origin+"/#/",Me=n=>`${Se}?code=${n.retrieveCode}`,oe=n=>{const i=(parseInt(l.value)||0)+n;i>=1&&(l.value=i.toString())};return ge(()=>{console.log("SendFileView mounted")}),(n,t)=>{const i=je("router-link");return w(),S("div",{class:"min-h-screen flex items-center justify-center p-4 overflow-hidden transition-colors duration-300",onPaste:E(fe,["prevent"])},[e("div",{class:a(["rounded-3xl shadow-2xl overflow-hidden border w-full max-w-md transition-colors duration-300",[r(o)?"bg-white bg-opacity-10 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200"]])},[e("div",Ye,[e("h2",{class:a(["text-3xl font-extrabold text-center mb-8 cursor-pointer transition-colors duration-300",[r(o)?"text-transparent bg-clip-text bg-gradient-to-r from-indigo-300 via-purple-300 to-pink-300":"text-indigo-600"]]),onClick:ke},T(r(M).name),3),e("form",{onSubmit:E(we,["prevent"]),class:"space-y-8"},[e("div",Ze,[e("button",{type:"button",onClick:t[0]||(t[0]=s=>k.value="file"),class:a(["px-4 py-2 rounded-lg",k.value==="file"?"bg-indigo-600 text-white":"bg-gray-700 text-gray-300"])}," 发送文件 ",2),e("button",{type:"button",onClick:t[1]||(t[1]=s=>k.value="text"),class:a(["px-4 py-2 rounded-lg",k.value==="text"?"bg-indigo-600 text-white":"bg-gray-700 text-gray-300"])}," 发送文本 ",2)]),m(Q,{name:"fade",mode:"out-in"},{default:V(()=>[k.value==="file"?(w(),S("div",et,[e("div",{class:a(["rounded-xl p-8 flex flex-col items-center justify-center border-2 border-dashed transition-all duration-300 group cursor-pointer relative",[r(o)?"bg-gray-800 bg-opacity-50 border-gray-600 hover:border-indigo-500":"bg-gray-100 border-gray-300 hover:border-indigo-500"]]),onClick:D,onDragover:t[2]||(t[2]=E(()=>{},["prevent"])),onDrop:E(he,["prevent"])},[e("input",{id:"file-upload",type:"file",class:"hidden",onChange:p,ref_key:"fileInput",ref:h},null,544),y.value>0?(w(),S("div",tt,[m(Xe,{progress:y.value},null,8,["progress"])])):j("",!0),m(r(Ge),{class:a(["w-16 h-16 transition-colors duration-300",r(o)?"text-gray-400 group-hover:text-indigo-400":"text-gray-600 group-hover:text-indigo-600"])},null,8,["class"]),e("p",{class:a(["mt-4 text-sm transition-colors duration-300 w-full text-center",r(o)?"text-gray-400 group-hover:text-indigo-400":"text-gray-600 group-hover:text-indigo-600"])},[e("span",rt,T(_.value?_.value.name:"点击或拖放文件到此处上传"),1)],2),e("p",{class:a(["mt-2 text-xs",r(o)?"text-gray-500":"text-gray-400"])}," 支持各种常见格式,最大"+T(r(de)(r(M).uploadSize)),3)],34)])):(w(),S("div",ot,[k.value==="text"?(w(),S("div",st,[O(e("textarea",{id:"text-content","onUpdate:modelValue":t[3]||(t[3]=s=>g.value=s),rows:"7",class:a(["flex-grow px-4 py-3 rounded-xl placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-indigo-500 transition duration-300 resize-none",r(o)?"bg-gray-800 bg-opacity-50 text-white":"bg-white text-gray-900 border border-gray-300"]),placeholder:"在此输入要发送的文本..."},null,2),[[se,g.value]])])):j("",!0)]))]),_:1}),e("div",at,[e("label",{class:a(["text-sm font-medium",r(o)?"text-gray-300":"text-gray-700"])}," 过期时间 ",2),e("div",nt,[e("div",{class:a(["relative h-11 rounded-xl border transition-all duration-300",r(o)?"bg-gray-800/50 border-gray-700/50 group-hover:border-gray-600":"bg-white border-gray-200 group-hover:border-gray-300"])},[c.value!=="forever"?(w(),S(J,{key:0},[O(e("input",{"onUpdate:modelValue":t[4]||(t[4]=s=>l.value=s),type:"number",placeholder:me(),min:"1",class:a(["w-full h-full px-4 pr-32 rounded-xl placeholder-gray-400 transition-all duration-300","focus:outline-none focus:ring-2 focus:ring-offset-0","[appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none","bg-transparent",r(o)?"text-gray-100 focus:ring-indigo-500/70 placeholder-gray-500":"text-gray-900 focus:ring-indigo-500/50 placeholder-gray-400"])},null,10,lt),[[se,l.value]]),e("div",{class:a(["absolute right-24 top-0 h-full flex flex-col border-l",[r(o)?"border-gray-700/50":"border-gray-200"]])},[e("button",{type:"button",onClick:t[5]||(t[5]=s=>oe(1)),class:a(["flex-1 px-2 flex items-center justify-center transition-all duration-200",[r(o)?"hover:bg-gray-700/50 text-gray-400 hover:text-gray-200":"hover:bg-gray-50 text-gray-500 hover:text-gray-700"]])},t[12]||(t[12]=[e("svg",{class:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 15l7-7 7 7"})],-1)]),2),e("button",{type:"button",onClick:t[6]||(t[6]=s=>oe(-1)),class:a(["flex-1 px-2 flex items-center justify-center transition-all duration-200",[r(o)?"hover:bg-gray-700/50 text-gray-400 hover:text-gray-200":"hover:bg-gray-50 text-gray-500 hover:text-gray-700"]])},t[13]||(t[13]=[e("svg",{class:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"})],-1)]),2)],2)],64)):j("",!0),O(e("select",{"onUpdate:modelValue":t[7]||(t[7]=s=>c.value=s),class:a(["absolute right-0 top-0 h-full appearance-none cursor-pointer","focus:outline-none focus:ring-2 focus:ring-offset-0",c.value==="forever"?"w-full px-4":"w-24 pl-3 pr-8 border-l",r(o)?"text-gray-100 border-gray-700/50 focus:ring-indigo-500/70 bg-gray-800/50":"text-gray-900 border-gray-200 focus:ring-indigo-500/50 bg-white"]),style:Pe([c.value==="forever"?"border-radius: 0.75rem;":"border-top-right-radius: 0.75rem;border-bottom-right-radius: 0.75rem;"])},[(w(!0),S(J,null,ae(r(M).expireStyle,s=>(w(),S("option",{value:s,key:s,class:a([r(o)?"bg-gray-800 text-gray-100":"bg-white text-gray-900"])},T(ee(s)),11,it))),128))],6),[[Fe,c.value]]),e("div",{class:a(["absolute pointer-events-none",[c.value==="forever"?"right-3":"right-2","top-1/2 -translate-y-1/2"]])},[(w(),S("svg",{class:a(["w-4 h-4 transition-colors duration-300",[r(o)?"text-gray-400":"text-gray-500"]]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},t[14]||(t[14]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"},null,-1)]),2))],2)],2)])]),e("button",ct,[t[16]||(t[16]=e("span",{class:"absolute top-0 left-0 w-full h-full bg-white opacity-0 group-hover:opacity-20 transition-opacity duration-300"},null,-1)),e("span",dt,[m(r(Oe),{class:"w-6 h-6 mr-2"}),t[15]||(t[15]=e("span",null,"安全寄送",-1))])])],32),e("div",ut,[m(i,{to:"/",class:"text-indigo-400 hover:text-indigo-300 transition duration-300"},{default:V(()=>t[17]||(t[17]=[K(" 需要取件?点击这里 ")])),_:1,__:[17]})])]),e("div",{class:a(["px-8 py-4 bg-opacity-50 flex justify-between items-center",[r(o)?"bg-gray-800":"bg-gray-100"]])},[e("span",{class:a(["text-sm flex items-center",[r(o)?"text-gray-300":"text-gray-800"]])},[m(r(ie),{class:"w-4 h-4 mr-1 text-green-400"}),t[18]||(t[18]=K(" 安全加密 "))],2),e("button",{onClick:re,class:a(["text-sm hover:text-indigo-300 transition duration-300 flex items-center",[r(o)?"text-indigo-400":"text-indigo-600"]])},[t[19]||(t[19]=K(" 发件记录 ")),m(r(Ve),{class:"w-4 h-4 ml-1"})],2)],2)],2),m(Q,{name:"drawer"},{default:V(()=>[b.value?(w(),S("div",{key:0,class:a(["fixed inset-y-0 right-0 w-full sm:w-120 bg-opacity-70 backdrop-filter backdrop-blur-xl shadow-2xl z-50 overflow-hidden flex flex-col",[r(o)?"bg-gray-900":"bg-white"]])},[e("div",{class:a(["flex justify-between items-center p-6 border-b",[r(o)?"border-gray-700":"border-gray-200"]])},[e("h3",{class:a(["text-2xl font-bold",[r(o)?"text-white":"text-gray-800"]])}," 发件记录 ",2),e("button",{onClick:re,class:a(["hover:text-white transition duration-300",[r(o)?"text-gray-400":"text-gray-800"]])},[m(r(ne),{class:"w-6 h-6"})],2)],2),e("div",gt,[m(Be,{name:"list",tag:"div",class:"space-y-4"},{default:V(()=>[(w(!0),S(J,null,ae(x.value,s=>(w(),S("div",{key:s.id,class:a(["bg-opacity-50 rounded-lg p-4 flex items-center shadow-md hover:shadow-lg transition duration-300 transform hover:scale-102",[r(o)?"bg-gray-800 hover:bg-gray-700":"bg-gray-100 hover:bg-white"]])},[e("div",pt,[m(r(ce),{class:a(["w-10 h-10",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])]),e("div",ht,[e("p",{class:a(["font-medium text-lg truncate",[r(o)?"text-white":"text-gray-800"]])},T(s.filename?s.filename:"Text"),3),e("p",{class:a(["text-sm truncate",[r(o)?"text-gray-400":"text-gray-600"]])},T(s.date)+" · "+T(s.size),3)]),e("div",ft,[e("button",{onClick:f=>r(X)(s.retrieveCode),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-blue-400 text-blue-400":"hover:bg-blue-100 text-blue-600"]])},[m(r(Y),{class:"w-5 h-5"})],10,mt),e("button",{onClick:f=>_e(s),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-green-400 text-green-400":"hover:bg-green-100 text-green-600"]])},[m(r(Ee),{class:"w-5 h-5"})],10,xt),e("button",{onClick:f=>Ce(s.id),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-red-400 text-red-400":"hover:bg-red-100 text-red-600"]])},[m(r(Ne),{class:"w-5 h-5"})],10,vt)])],2))),128))]),_:1})])],2)):j("",!0)]),_:1}),m(Q,{name:"fade"},{default:V(()=>[v.value?(w(),S("div",yt,[e("div",{class:a(["w-full max-w-2xl rounded-2xl shadow-2xl transform transition-all duration-300 ease-out overflow-hidden",[r(o)?"bg-gray-900 bg-opacity-70":"bg-white bg-opacity-95"]])},[e("div",{class:a(["px-4 sm:px-6 py-3 sm:py-4 border-b",[r(o)?"border-gray-800":"border-gray-100"]])},[e("div",bt,[e("h3",{class:a(["text-lg sm:text-xl font-semibold",[r(o)?"text-white":"text-gray-900"]])}," 文件详情 ",2),e("button",{onClick:t[8]||(t[8]=s=>v.value=null),class:"p-1.5 sm:p-2 rounded-full hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors"},[m(r(ne),{class:a(["w-4 h-4 sm:w-5 sm:h-5",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"])])])],2),e("div",wt,[e("div",{class:a(["rounded-xl p-3 sm:p-4 mb-4 sm:mb-6",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",kt,[e("div",{class:a(["p-2 sm:p-3 rounded-lg",[r(o)?"bg-gray-800":"bg-white"]])},[v.value.type==="file"?(w(),le(r(ce),{key:0,class:a(["w-5 h-5 sm:w-6 sm:h-6",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):j("",!0),v.value.type==="text"?(w(),le(r(Je),{key:1,class:a(["w-5 h-5 sm:w-6 sm:h-6",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):j("",!0)],2),e("div",_t,[e("h4",{class:a(["font-medium text-sm sm:text-base truncate",[r(o)?"text-white":"text-gray-900"]])},T(v.value.filename?v.value.filename:"Text"),3),e("p",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-400":"text-gray-500"]])},T(v.value.size)+" · "+T(v.value.date),3)])]),e("div",Ct,[e("div",St,[m(r(We),{class:a(["w-3.5 h-3.5 sm:w-4 sm:h-4 mr-1.5 sm:mr-2 flex-shrink-0",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"]),e("span",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-300":"text-gray-600"]])},T(v.value.expiration),3)]),e("div",Mt,[m(r(ie),{class:a(["w-3.5 h-3.5 sm:w-4 sm:h-4 mr-1.5 sm:mr-2 flex-shrink-0",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"]),e("span",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-300":"text-gray-600"]])}," 安全加密 ",2)])])],2),e("div",zt,[e("div",Tt,[e("div",It,[e("div",At,[t[20]||(t[20]=e("h4",{class:"font-medium text-sm sm:text-base"},"取件码",-1)),e("button",{onClick:t[9]||(t[9]=s=>r(He)(v.value.retrieveCode)),class:"p-1.5 sm:p-2 rounded-full hover:bg-white/10 transition-colors"},[m(r(Y),{class:"w-4 h-4 sm:w-5 sm:h-5",name:"点击复制取件码"})])]),e("p",$t,T(v.value.retrieveCode),1)]),e("div",{class:a(["rounded-xl p-3 sm:p-4",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",Dt,[e("h4",{class:a(["font-medium text-sm sm:text-base flex items-center min-w-0",[r(o)?"text-white":"text-gray-900"]])},[m(r(Qe),{class:"w-4 h-4 sm:w-5 sm:h-5 mr-1.5 sm:mr-2 text-indigo-500 flex-shrink-0"}),t[21]||(t[21]=e("span",{class:"truncate"},"wget下载",-1))],2),e("button",{onClick:t[10]||(t[10]=s=>r(Le)(v.value.retrieveCode,v.value.filename)),class:"p-1.5 sm:p-2 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors flex-shrink-0"},[m(r(Y),{class:a(["w-4 h-4 sm:w-5 sm:h-5",[r(o)?"text-gray-400":"text-gray-500"]]),name:"点击复制wget命令"},null,8,["class"])])]),e("p",{class:a(["text-xs sm:text-sm font-mono break-all line-clamp-2",[r(o)?"text-gray-300":"text-gray-600"]])}," 点击复制wget命令 ",2)],2)]),e("div",{class:a(["rounded-xl p-4 sm:p-5 flex flex-col items-center",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",Ft,[m(qe,{value:Me(v.value),size:140,level:"M",class:"sm:w-[160px] sm:h-[160px]"},null,8,["value"])]),e("p",{class:a(["text-xs sm:text-sm truncate max-w-full",[r(o)?"text-gray-400":"text-gray-500"]])}," 扫描二维码快速取件 ",2)],2)])]),e("div",{class:a(["px-4 sm:px-6 py-3 sm:py-4 border-t",[r(o)?"border-gray-800":"border-gray-100"]])},[e("button",{onClick:t[11]||(t[11]=s=>r(X)(v.value.retrieveCode)),class:"w-full bg-indigo-600 hover:bg-indigo-700 text-white px-4 sm:px-6 py-2 sm:py-3 rounded-lg text-sm sm:text-base font-medium transition-colors"}," 复制取件链接 ")],2)],2)])):j("",!0)]),_:1})],32)}}}),Ht=pe(Pt,[["__scopeId","data-v-fad875ce"]]);export{Ht as default}; diff --git a/themes/2025/assets/SendFileView-DsSIurce.js b/themes/2025/assets/SendFileView-DsSIurce.js deleted file mode 100644 index 3188dcb34..000000000 --- a/themes/2025/assets/SendFileView-DsSIurce.js +++ /dev/null @@ -1,31 +0,0 @@ -import{c as U,d as ue,r as I,o as ge,w as Ie,a as S,b as e,e as w,_ as pe,u as Ae,f as $e,g as m,n as a,h as r,i as De,t as T,j as E,k as V,l as j,m as O,v as se,T as Q,F as J,p as Fe,q as Pe,s as ae,x as K,y as je,X as ne,z as Be,A as le,B as Ue,C as H}from"./index-DKQ1YPO4.js";import{u as Re,S as ie,C as Ve,c as He,a as Le,Q as qe,b as X,E as Ee}from"./clipboard-BhvW87y2.js";import{F as ce}from"./file-D8mQlyUF.js";import{T as Ne}from"./trash-FNvP9-P8.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Y=U("ClipboardCopyIcon",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const We=U("ClockIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Ge=U("CloudUploadIcon",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242",key:"1pljnt"}],["path",{d:"m8 17 4-4 4 4",key:"1quai1"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Oe=U("SendIcon",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Qe=U("TerminalIcon",[["polyline",{points:"4 17 10 11 4 5",key:"akl6gq"}],["line",{x1:"12",x2:"20",y1:"19",y2:"19",key:"q2wloq"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Je=U("TextIcon",[["path",{d:"M17 6.1H3",key:"wptmhv"}],["path",{d:"M21 12.1H3",key:"1j38uz"}],["path",{d:"M15.1 18H3",key:"1nb16a"}]]),Ke=ue({__name:"BorderProgressBar",props:{progress:{}},setup($){const M=$,B=I(null),o=I(null);let u=null;const k=()=>{if(!u||!o.value||!B.value)return;const g=B.value.clientWidth,h=B.value.clientHeight;o.value.width=g,o.value.height=h;const c=4,l=8;u.lineWidth=c;const y=u.createLinearGradient(0,0,g,h);y.addColorStop(0,"#4f46e5"),y.addColorStop(.5,"#7c3aed"),y.addColorStop(1,"#db2777"),u.strokeStyle="rgba(229, 231, 235, 0.2)",_(u,c/2,c/2,g-c,h-c,l),u.stroke();const v=((g+h)*2-8*l+2*Math.PI*l)*M.progress/100;u.strokeStyle=y,u.lineCap="round",u.lineJoin="round",u.beginPath();let d=v;const x=c/2,z=g-c,D=h-c;if(d>0){const p=Math.min(z-2*l,d);u.moveTo(l+x,x),u.lineTo(p+l+x,x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(z-l+x,l+x,l,-Math.PI/2,p-Math.PI/2,!1),d-=p*l}if(d>0){const p=Math.min(D-2*l,d);u.lineTo(z+x,p+l+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(z-l+x,D-l+x,l,0,p,!1),d-=p*l}if(d>0){const p=Math.min(z-2*l,d);u.lineTo(z-p-l+x,D+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(l+x,D-l+x,l,Math.PI/2,Math.PI/2+p,!1),d-=p*l}if(d>0){const p=Math.min(D-2*l,d);u.lineTo(x,D-p-l+x),d-=p}if(d>0){const p=Math.min(Math.PI/2,d/l);u.arc(l+x,l+x,l,Math.PI,Math.PI+p,!1)}u.stroke()};function _(g,h,c,l,y,b){g.beginPath(),g.moveTo(h+b,c),g.lineTo(h+l-b,c),g.arcTo(h+l,c,h+l,c+b,b),g.lineTo(h+l,c+y-b),g.arcTo(h+l,c+y,h+l-b,c+y,b),g.lineTo(h+b,c+y),g.arcTo(h,c+y,h,c+y-b,b),g.lineTo(h,c+b),g.arcTo(h,c,h+b,c,b),g.closePath()}return ge(()=>{o.value&&(u=o.value.getContext("2d"),k())}),Ie(()=>M.progress,k),(g,h)=>(w(),S("div",{class:"border-progress-container",ref_key:"container",ref:B},[e("canvas",{ref_key:"canvas",ref:o,class:"border-progress-canvas"},null,512)],512))}}),Xe=pe(Ke,[["__scopeId","data-v-74085255"]]),de=$=>$>=1024*1024*1024?Math.round($/(1024*1024*1024))+"GB":$>=1024*1024?Math.round($/(1024*1024))+"MB":Math.round($/1024)+"KB",Ye={class:"p-8"},Ze={class:"flex justify-center space-x-4 mb-6"},et={key:"file",class:"grid grid-cols-1 gap-8"},tt={key:0,class:"absolute inset-0 w-full h-full"},rt={class:"block truncate"},ot={key:"text",class:"grid grid-cols-1 gap-8"},st={key:0,class:"flex flex-col"},at={class:"flex flex-col space-y-3"},nt={class:"relative flex-grow group"},lt=["placeholder"],it=["value"],ct={type:"submit",class:"w-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 text-white font-bold py-4 px-6 rounded-lg focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition-all duration-300 transform hover:scale-105 hover:shadow-lg relative overflow-hidden group"},dt={class:"relative z-10 flex items-center justify-center text-lg"},ut={class:"mt-6 text-center"},gt={class:"flex-grow overflow-y-auto p-6"},pt={class:"flex-shrink-0 mr-4"},ht={class:"flex-grow min-w-0 mr-4"},ft={class:"flex-shrink-0 flex space-x-2"},mt=["onClick"],xt=["onClick"],vt=["onClick"],yt={key:0,class:"fixed inset-0 bg-black/60 backdrop-blur-sm flex items-center justify-center z-50 p-3 sm:p-4 overflow-y-auto"},bt={class:"flex items-center justify-between"},wt={class:"p-4 sm:p-6"},kt={class:"flex items-center mb-3 sm:mb-4"},_t={class:"ml-3 sm:ml-4 min-w-0 flex-1"},Ct={class:"grid grid-cols-2 gap-3 sm:gap-4"},St={class:"flex items-center min-w-0"},Mt={class:"flex items-center min-w-0"},zt={class:"grid grid-cols-1 md:grid-cols-2 gap-4 sm:gap-6"},Tt={class:"space-y-3 sm:space-y-4"},It={class:"bg-gradient-to-br from-indigo-500 to-purple-600 rounded-xl p-4 sm:p-5 text-white"},At={class:"flex items-center justify-between mb-3 sm:mb-4"},$t={class:"text-2xl sm:text-3xl font-bold tracking-wider text-center break-all"},Dt={class:"flex items-center justify-between mb-2 sm:mb-3"},Ft={class:"bg-white p-3 sm:p-4 rounded-lg shadow-sm mb-3 sm:mb-4"},Pt=ue({__name:"SendFileView",setup($){const M=JSON.parse(localStorage.getItem("config")||"{}"),B=Ue(),o=De("isDarkMode"),u=Re(),k=I("file"),_=I(null),g=I(""),h=I(null),c=I("day"),l=I("1"),y=I(0),b=I(!1),v=I(null),d=Ae(),x=$e(()=>u.shareData),z=I(""),D=()=>{var n;(n=h.value)==null||n.click()},p=async n=>{const t=n.target;if(t.files&&t.files.length>0){const i=t.files[0];if(_.value=i,!W())return;z.value=await N(i),console.log(z.value)}},he=async n=>{var t;if((t=n.dataTransfer)!=null&&t.files&&n.dataTransfer.files.length>0){const i=n.dataTransfer.files[0];if(_.value=i,!W())return;z.value=await N(i)}},fe=async n=>{var i;const t=(i=n.clipboardData)==null?void 0:i.items;if(t)for(const s of t)if(s.kind==="file"){const f=s.getAsFile();if(f){if(f.size===0){d.showAlert("无法读取空文件","error");return}if(_.value=f,!W())return;try{z.value=await N(f),d.showAlert("已从剪贴板添加文件:"+f.name,"success")}catch(C){d.showAlert("文件处理失败","error"),console.error("File hash calculation failed:",C)}break}}else k.value="text",t[0].getAsString(f=>{g.value+=f})},N=async n=>new Promise(t=>{const s=new FileReader;let f=0;const C=Math.ceil(n.size/2097152);s.onload=async F=>{const A=new Uint8Array(F.target.result);try{if(window.isSecureContext){const P=await crypto.subtle.digest("SHA-256",A),G=Array.from(new Uint8Array(P)).map(q=>q.toString(16).padStart(2,"0")).join("");f++,f{const F=f*2097152,A=F+2097152>=n.size?n.size:F+2097152;s.readAsArrayBuffer(n.slice(F,A))};R()}),Z=n=>{const t=`${n.name}-${n.size}-${n.lastModified}`;let i=0;for(let s=0;s{switch(n){case"day":return"输入天数";case"hour":return"输入小时数";case"minute":return"输入分钟数";case"count":return"输入查看次数";case"forever":return"永久";default:return"输入值"}},ee=(n=c.value)=>{switch(n){case"day":return"天";case"hour":return"小时";case"minute":return"分钟";case"count":return"次";case"forever":return"永久";default:return""}},xe=async n=>{var t,i;try{const f=Math.ceil(n.size/5242880),C=await H.post("chunk/upload/init/",{file_name:n.name,file_size:n.size,chunk_size:5242880,file_hash:z.value});if(C.code!==200)throw new Error("初始化切片上传失败");if(C.detail.existed)return C;const R=C.detail.upload_id;for(let A=0;A{const Te=Math.round((A*5242880+ze.loaded)*100/n.size);y.value=Te}})).code!==200)throw new Error(`切片 ${A} 上传失败`)}const F=await H.post(`chunk/upload/complete/${R}`,{expire_value:l.value?parseInt(l.value):1,expire_style:c.value});if(F.code!==200)throw new Error("完成上传失败");return F}catch(s){throw console.error("切片上传失败:",s),(i=(t=s.response)==null?void 0:t.data)!=null&&i.detail?d.showAlert(s.response.data.detail,"error"):d.showAlert("上传失败,请稍后重试","error"),s}},ve=async n=>{const t=new FormData,i={headers:{"Content-Type":"multipart/form-data"},onUploadProgress:f=>{const C=Math.round(f.loaded*100/f.total);y.value=C}};return t.append("file",n),t.append("expire_value",l.value),t.append("expire_style",c.value),await H.post("share/file/",t,i)},ye=()=>M.openUpload===0&&localStorage.getItem("token")===null?(d.showAlert("游客上传功能已关闭","error"),!1):!0,be=n=>n.size>M.uploadSize?(d.showAlert(`文件大小超过限制 (${de(M.uploadSize)})`,"error"),_.value=null,!1):!0,te=(n,t)=>{if(n==="forever"||n==="count")return!0;const i=M.max_save_seconds||0;if(i===0)return!0;let s=0;switch(n){case"minute":s=parseInt(t)*60;break;case"hour":s=parseInt(t)*3600;break;case"day":s=parseInt(t)*86400;break;default:return!1}return s<=i},W=()=>!(!ye()||!be(_.value)||!te(c.value,l.value)),we=async()=>{var n,t;if(k.value==="file"&&!_.value){d.showAlert("请选择要上传的文件","error");return}if(k.value==="text"&&!g.value.trim()){d.showAlert("请输入要发送的文本","error");return}if(c.value!=="forever"&&!l.value){d.showAlert("请输入过期值","error");return}if(!te(c.value,l.value)){const i=Math.floor(M.max_save_seconds/86400);d.showAlert(`过期时间不能超过${i}天`,"error");return}try{let i;if(k.value==="file")M.enableChunk?i=await xe(_.value):i=await ve(_.value);else{const s=new FormData;s.append("text",g.value),s.append("expire_value",l.value),s.append("expire_style",c.value),i=await H.post("share/text/",s,{headers:{"Content-Type":"multipart/form-data"}})}if(i&&i.code===200){const s=i.detail.code,f=i.detail.name,C={id:Date.now(),type:k.value,filename:f,date:new Date().toISOString().split("T")[0],size:k.value==="text"?`${(g.value.length/1024).toFixed(2)} KB`:`${(_.value.size/(1024*1024)).toFixed(1)} MB`,expiration:c.value==="forever"?"永久":`${l.value}${ee()}后过期`,retrieveCode:s};console.log(C),u.addShareData(C),d.showAlert(`文件发送成功!取件码:${s}`,"success"),_.value=null,g.value="",y.value=0,v.value=C,await X(s)}else throw new Error("服务器响应异常")}catch(i){console.error("发送失败:",i),(t=(n=i.response)==null?void 0:n.data)!=null&&t.detail?d.showAlert(i.response.data.detail,"error"):d.showAlert("发送失败,请稍后重试","error")}finally{y.value=0}},ke=()=>{B.push("/")},re=()=>{b.value=!b.value},_e=n=>{v.value=n},Ce=n=>{const t=u.shareData.findIndex(i=>i.id===n);t!==-1&&u.deleteShareData(t)},Se=window.location.origin+"/#/",Me=n=>`${Se}?code=${n.retrieveCode}`,oe=n=>{const i=(parseInt(l.value)||0)+n;i>=1&&(l.value=i.toString())};return ge(()=>{console.log("SendFileView mounted")}),(n,t)=>{const i=je("router-link");return w(),S("div",{class:"min-h-screen flex items-center justify-center p-4 overflow-hidden transition-colors duration-300",onPaste:E(fe,["prevent"])},[e("div",{class:a(["rounded-3xl shadow-2xl overflow-hidden border w-full max-w-md transition-colors duration-300",[r(o)?"bg-white bg-opacity-10 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200"]])},[e("div",Ye,[e("h2",{class:a(["text-3xl font-extrabold text-center mb-8 cursor-pointer transition-colors duration-300",[r(o)?"text-transparent bg-clip-text bg-gradient-to-r from-indigo-300 via-purple-300 to-pink-300":"text-indigo-600"]]),onClick:ke},T(r(M).name),3),e("form",{onSubmit:E(we,["prevent"]),class:"space-y-8"},[e("div",Ze,[e("button",{type:"button",onClick:t[0]||(t[0]=s=>k.value="file"),class:a(["px-4 py-2 rounded-lg",k.value==="file"?"bg-indigo-600 text-white":"bg-gray-700 text-gray-300"])}," 发送文件 ",2),e("button",{type:"button",onClick:t[1]||(t[1]=s=>k.value="text"),class:a(["px-4 py-2 rounded-lg",k.value==="text"?"bg-indigo-600 text-white":"bg-gray-700 text-gray-300"])}," 发送文本 ",2)]),m(Q,{name:"fade",mode:"out-in"},{default:V(()=>[k.value==="file"?(w(),S("div",et,[e("div",{class:a(["rounded-xl p-8 flex flex-col items-center justify-center border-2 border-dashed transition-all duration-300 group cursor-pointer relative",[r(o)?"bg-gray-800 bg-opacity-50 border-gray-600 hover:border-indigo-500":"bg-gray-100 border-gray-300 hover:border-indigo-500"]]),onClick:D,onDragover:t[2]||(t[2]=E(()=>{},["prevent"])),onDrop:E(he,["prevent"])},[e("input",{id:"file-upload",type:"file",class:"hidden",onChange:p,ref_key:"fileInput",ref:h},null,544),y.value>0?(w(),S("div",tt,[m(Xe,{progress:y.value},null,8,["progress"])])):j("",!0),m(r(Ge),{class:a(["w-16 h-16 transition-colors duration-300",r(o)?"text-gray-400 group-hover:text-indigo-400":"text-gray-600 group-hover:text-indigo-600"])},null,8,["class"]),e("p",{class:a(["mt-4 text-sm transition-colors duration-300 w-full text-center",r(o)?"text-gray-400 group-hover:text-indigo-400":"text-gray-600 group-hover:text-indigo-600"])},[e("span",rt,T(_.value?_.value.name:"点击或拖放文件到此处上传"),1)],2),e("p",{class:a(["mt-2 text-xs",r(o)?"text-gray-500":"text-gray-400"])}," 支持各种常见格式,最大"+T(r(de)(r(M).uploadSize)),3)],34)])):(w(),S("div",ot,[k.value==="text"?(w(),S("div",st,[O(e("textarea",{id:"text-content","onUpdate:modelValue":t[3]||(t[3]=s=>g.value=s),rows:"7",class:a(["flex-grow px-4 py-3 rounded-xl placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-indigo-500 transition duration-300 resize-none",r(o)?"bg-gray-800 bg-opacity-50 text-white":"bg-white text-gray-900 border border-gray-300"]),placeholder:"在此输入要发送的文本..."},null,2),[[se,g.value]])])):j("",!0)]))]),_:1}),e("div",at,[e("label",{class:a(["text-sm font-medium",r(o)?"text-gray-300":"text-gray-700"])}," 过期时间 ",2),e("div",nt,[e("div",{class:a(["relative h-11 rounded-xl border transition-all duration-300",r(o)?"bg-gray-800/50 border-gray-700/50 group-hover:border-gray-600":"bg-white border-gray-200 group-hover:border-gray-300"])},[c.value!=="forever"?(w(),S(J,{key:0},[O(e("input",{"onUpdate:modelValue":t[4]||(t[4]=s=>l.value=s),type:"number",placeholder:me(),min:"1",class:a(["w-full h-full px-4 pr-32 rounded-xl placeholder-gray-400 transition-all duration-300","focus:outline-none focus:ring-2 focus:ring-offset-0","[appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none","bg-transparent",r(o)?"text-gray-100 focus:ring-indigo-500/70 placeholder-gray-500":"text-gray-900 focus:ring-indigo-500/50 placeholder-gray-400"])},null,10,lt),[[se,l.value]]),e("div",{class:a(["absolute right-24 top-0 h-full flex flex-col border-l",[r(o)?"border-gray-700/50":"border-gray-200"]])},[e("button",{type:"button",onClick:t[5]||(t[5]=s=>oe(1)),class:a(["flex-1 px-2 flex items-center justify-center transition-all duration-200",[r(o)?"hover:bg-gray-700/50 text-gray-400 hover:text-gray-200":"hover:bg-gray-50 text-gray-500 hover:text-gray-700"]])},t[12]||(t[12]=[e("svg",{class:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 15l7-7 7 7"})],-1)]),2),e("button",{type:"button",onClick:t[6]||(t[6]=s=>oe(-1)),class:a(["flex-1 px-2 flex items-center justify-center transition-all duration-200",[r(o)?"hover:bg-gray-700/50 text-gray-400 hover:text-gray-200":"hover:bg-gray-50 text-gray-500 hover:text-gray-700"]])},t[13]||(t[13]=[e("svg",{class:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"})],-1)]),2)],2)],64)):j("",!0),O(e("select",{"onUpdate:modelValue":t[7]||(t[7]=s=>c.value=s),class:a(["absolute right-0 top-0 h-full appearance-none cursor-pointer","focus:outline-none focus:ring-2 focus:ring-offset-0",c.value==="forever"?"w-full px-4":"w-24 pl-3 pr-8 border-l",r(o)?"text-gray-100 border-gray-700/50 focus:ring-indigo-500/70 bg-gray-800/50":"text-gray-900 border-gray-200 focus:ring-indigo-500/50 bg-white"]),style:Pe([c.value==="forever"?"border-radius: 0.75rem;":"border-top-right-radius: 0.75rem;border-bottom-right-radius: 0.75rem;"])},[(w(!0),S(J,null,ae(r(M).expireStyle,s=>(w(),S("option",{value:s,key:s,class:a([r(o)?"bg-gray-800 text-gray-100":"bg-white text-gray-900"])},T(ee(s)),11,it))),128))],6),[[Fe,c.value]]),e("div",{class:a(["absolute pointer-events-none",[c.value==="forever"?"right-3":"right-2","top-1/2 -translate-y-1/2"]])},[(w(),S("svg",{class:a(["w-4 h-4 transition-colors duration-300",[r(o)?"text-gray-400":"text-gray-500"]]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},t[14]||(t[14]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"},null,-1)]),2))],2)],2)])]),e("button",ct,[t[16]||(t[16]=e("span",{class:"absolute top-0 left-0 w-full h-full bg-white opacity-0 group-hover:opacity-20 transition-opacity duration-300"},null,-1)),e("span",dt,[m(r(Oe),{class:"w-6 h-6 mr-2"}),t[15]||(t[15]=e("span",null,"安全寄送",-1))])])],32),e("div",ut,[m(i,{to:"/",class:"text-indigo-400 hover:text-indigo-300 transition duration-300"},{default:V(()=>t[17]||(t[17]=[K(" 需要取件?点击这里 ")])),_:1,__:[17]})])]),e("div",{class:a(["px-8 py-4 bg-opacity-50 flex justify-between items-center",[r(o)?"bg-gray-800":"bg-gray-100"]])},[e("span",{class:a(["text-sm flex items-center",[r(o)?"text-gray-300":"text-gray-800"]])},[m(r(ie),{class:"w-4 h-4 mr-1 text-green-400"}),t[18]||(t[18]=K(" 安全加密 "))],2),e("button",{onClick:re,class:a(["text-sm hover:text-indigo-300 transition duration-300 flex items-center",[r(o)?"text-indigo-400":"text-indigo-600"]])},[t[19]||(t[19]=K(" 发件记录 ")),m(r(Ve),{class:"w-4 h-4 ml-1"})],2)],2)],2),m(Q,{name:"drawer"},{default:V(()=>[b.value?(w(),S("div",{key:0,class:a(["fixed inset-y-0 right-0 w-full sm:w-120 bg-opacity-70 backdrop-filter backdrop-blur-xl shadow-2xl z-50 overflow-hidden flex flex-col",[r(o)?"bg-gray-900":"bg-white"]])},[e("div",{class:a(["flex justify-between items-center p-6 border-b",[r(o)?"border-gray-700":"border-gray-200"]])},[e("h3",{class:a(["text-2xl font-bold",[r(o)?"text-white":"text-gray-800"]])}," 发件记录 ",2),e("button",{onClick:re,class:a(["hover:text-white transition duration-300",[r(o)?"text-gray-400":"text-gray-800"]])},[m(r(ne),{class:"w-6 h-6"})],2)],2),e("div",gt,[m(Be,{name:"list",tag:"div",class:"space-y-4"},{default:V(()=>[(w(!0),S(J,null,ae(x.value,s=>(w(),S("div",{key:s.id,class:a(["bg-opacity-50 rounded-lg p-4 flex items-center shadow-md hover:shadow-lg transition duration-300 transform hover:scale-102",[r(o)?"bg-gray-800 hover:bg-gray-700":"bg-gray-100 hover:bg-white"]])},[e("div",pt,[m(r(ce),{class:a(["w-10 h-10",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])]),e("div",ht,[e("p",{class:a(["font-medium text-lg truncate",[r(o)?"text-white":"text-gray-800"]])},T(s.filename?s.filename:"Text"),3),e("p",{class:a(["text-sm truncate",[r(o)?"text-gray-400":"text-gray-600"]])},T(s.date)+" · "+T(s.size),3)]),e("div",ft,[e("button",{onClick:f=>r(X)(s.retrieveCode),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-blue-400 text-blue-400":"hover:bg-blue-100 text-blue-600"]])},[m(r(Y),{class:"w-5 h-5"})],10,mt),e("button",{onClick:f=>_e(s),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-green-400 text-green-400":"hover:bg-green-100 text-green-600"]])},[m(r(Ee),{class:"w-5 h-5"})],10,xt),e("button",{onClick:f=>Ce(s.id),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-red-400 text-red-400":"hover:bg-red-100 text-red-600"]])},[m(r(Ne),{class:"w-5 h-5"})],10,vt)])],2))),128))]),_:1})])],2)):j("",!0)]),_:1}),m(Q,{name:"fade"},{default:V(()=>[v.value?(w(),S("div",yt,[e("div",{class:a(["w-full max-w-2xl rounded-2xl shadow-2xl transform transition-all duration-300 ease-out overflow-hidden",[r(o)?"bg-gray-900 bg-opacity-70":"bg-white bg-opacity-95"]])},[e("div",{class:a(["px-4 sm:px-6 py-3 sm:py-4 border-b",[r(o)?"border-gray-800":"border-gray-100"]])},[e("div",bt,[e("h3",{class:a(["text-lg sm:text-xl font-semibold",[r(o)?"text-white":"text-gray-900"]])}," 文件详情 ",2),e("button",{onClick:t[8]||(t[8]=s=>v.value=null),class:"p-1.5 sm:p-2 rounded-full hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors"},[m(r(ne),{class:a(["w-4 h-4 sm:w-5 sm:h-5",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"])])])],2),e("div",wt,[e("div",{class:a(["rounded-xl p-3 sm:p-4 mb-4 sm:mb-6",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",kt,[e("div",{class:a(["p-2 sm:p-3 rounded-lg",[r(o)?"bg-gray-800":"bg-white"]])},[v.value.type==="file"?(w(),le(r(ce),{key:0,class:a(["w-5 h-5 sm:w-6 sm:h-6",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):j("",!0),v.value.type==="text"?(w(),le(r(Je),{key:1,class:a(["w-5 h-5 sm:w-6 sm:h-6",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):j("",!0)],2),e("div",_t,[e("h4",{class:a(["font-medium text-sm sm:text-base truncate",[r(o)?"text-white":"text-gray-900"]])},T(v.value.filename?v.value.filename:"Text"),3),e("p",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-400":"text-gray-500"]])},T(v.value.size)+" · "+T(v.value.date),3)])]),e("div",Ct,[e("div",St,[m(r(We),{class:a(["w-3.5 h-3.5 sm:w-4 sm:h-4 mr-1.5 sm:mr-2 flex-shrink-0",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"]),e("span",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-300":"text-gray-600"]])},T(v.value.expiration),3)]),e("div",Mt,[m(r(ie),{class:a(["w-3.5 h-3.5 sm:w-4 sm:h-4 mr-1.5 sm:mr-2 flex-shrink-0",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"]),e("span",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-300":"text-gray-600"]])}," 安全加密 ",2)])])],2),e("div",zt,[e("div",Tt,[e("div",It,[e("div",At,[t[20]||(t[20]=e("h4",{class:"font-medium text-sm sm:text-base"},"取件码",-1)),e("button",{onClick:t[9]||(t[9]=s=>r(He)(v.value.retrieveCode)),class:"p-1.5 sm:p-2 rounded-full hover:bg-white/10 transition-colors"},[m(r(Y),{class:"w-4 h-4 sm:w-5 sm:h-5",name:"点击复制取件码"})])]),e("p",$t,T(v.value.retrieveCode),1)]),e("div",{class:a(["rounded-xl p-3 sm:p-4",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",Dt,[e("h4",{class:a(["font-medium text-sm sm:text-base flex items-center min-w-0",[r(o)?"text-white":"text-gray-900"]])},[m(r(Qe),{class:"w-4 h-4 sm:w-5 sm:h-5 mr-1.5 sm:mr-2 text-indigo-500 flex-shrink-0"}),t[21]||(t[21]=e("span",{class:"truncate"},"wget下载",-1))],2),e("button",{onClick:t[10]||(t[10]=s=>r(Le)(v.value.retrieveCode,v.value.filename)),class:"p-1.5 sm:p-2 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors flex-shrink-0"},[m(r(Y),{class:a(["w-4 h-4 sm:w-5 sm:h-5",[r(o)?"text-gray-400":"text-gray-500"]]),name:"点击复制wget命令"},null,8,["class"])])]),e("p",{class:a(["text-xs sm:text-sm font-mono break-all line-clamp-2",[r(o)?"text-gray-300":"text-gray-600"]])}," 点击复制wget命令 ",2)],2)]),e("div",{class:a(["rounded-xl p-4 sm:p-5 flex flex-col items-center",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-50 bg-opacity-95"]])},[e("div",Ft,[m(qe,{value:Me(v.value),size:140,level:"M",class:"sm:w-[160px] sm:h-[160px]"},null,8,["value"])]),e("p",{class:a(["text-xs sm:text-sm truncate max-w-full",[r(o)?"text-gray-400":"text-gray-500"]])}," 扫描二维码快速取件 ",2)],2)])]),e("div",{class:a(["px-4 sm:px-6 py-3 sm:py-4 border-t",[r(o)?"border-gray-800":"border-gray-100"]])},[e("button",{onClick:t[11]||(t[11]=s=>r(X)(v.value.retrieveCode)),class:"w-full bg-indigo-600 hover:bg-indigo-700 text-white px-4 sm:px-6 py-2 sm:py-3 rounded-lg text-sm sm:text-base font-medium transition-colors"}," 复制取件链接 ")],2)],2)])):j("",!0)]),_:1})],32)}}}),Ht=pe(Pt,[["__scopeId","data-v-fad875ce"]]);export{Ht as default}; diff --git a/themes/2025/assets/SendFileView-VzXyxiyT.js b/themes/2025/assets/SendFileView-VzXyxiyT.js new file mode 100644 index 000000000..4f8f4e5a9 --- /dev/null +++ b/themes/2025/assets/SendFileView-VzXyxiyT.js @@ -0,0 +1,26 @@ +import{c as L,d as ge,r as I,o as pe,w as Ae,a as M,b as e,e as w,_ as he,u as $e,f as De,g as m,n as a,h as r,i as Fe,t as S,j as E,k as R,l as $,m as Q,v as ae,T as J,F as K,p as Pe,q as je,s as ne,x as X,y as Be,X as le,z as Ue,A as N,B as Re,C as V}from"./index-BAgz5Ib8.js";import{u as Ve,S as ie,C as Le,c as He,a as qe,b as Ee,Q as Ne,d as Y,E as We}from"./clipboard-ClFPPG_0.js";import{F as ce}from"./file-d22J40ax.js";import{T as de,a as Ge}from"./trash-R3aCwIiM.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Z=L("ClipboardCopyIcon",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2",key:"4jdomd"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4",key:"3hqy98"}],["path",{d:"M21 14H11",key:"1bme5i"}],["path",{d:"m15 10-4 4 4 4",key:"5dvupr"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Oe=L("ClockIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Qe=L("CloudUploadIcon",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242",key:"1pljnt"}],["path",{d:"m8 17 4-4 4 4",key:"1quai1"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Je=L("SendIcon",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const Ke=L("TerminalIcon",[["polyline",{points:"4 17 10 11 4 5",key:"akl6gq"}],["line",{x1:"12",x2:"20",y1:"19",y2:"19",key:"q2wloq"}]]),Xe=ge({__name:"BorderProgressBar",props:{progress:{}},setup(D){const z=D,B=I(null),o=I(null);let g=null;const k=()=>{if(!g||!o.value||!B.value)return;const u=B.value.clientWidth,f=B.value.clientHeight;o.value.width=u,o.value.height=f;const c=4,l=8;g.lineWidth=c;const y=g.createLinearGradient(0,0,u,f);y.addColorStop(0,"#4f46e5"),y.addColorStop(.5,"#7c3aed"),y.addColorStop(1,"#db2777"),g.strokeStyle="rgba(229, 231, 235, 0.2)",_(g,c/2,c/2,u-c,f-c,l),g.stroke();const p=((u+f)*2-8*l+2*Math.PI*l)*z.progress/100;g.strokeStyle=y,g.lineCap="round",g.lineJoin="round",g.beginPath();let d=p;const v=c/2,T=u-c,F=f-c;if(d>0){const h=Math.min(T-2*l,d);g.moveTo(l+v,v),g.lineTo(h+l+v,v),d-=h}if(d>0){const h=Math.min(Math.PI/2,d/l);g.arc(T-l+v,l+v,l,-Math.PI/2,h-Math.PI/2,!1),d-=h*l}if(d>0){const h=Math.min(F-2*l,d);g.lineTo(T+v,h+l+v),d-=h}if(d>0){const h=Math.min(Math.PI/2,d/l);g.arc(T-l+v,F-l+v,l,0,h,!1),d-=h*l}if(d>0){const h=Math.min(T-2*l,d);g.lineTo(T-h-l+v,F+v),d-=h}if(d>0){const h=Math.min(Math.PI/2,d/l);g.arc(l+v,F-l+v,l,Math.PI/2,Math.PI/2+h,!1),d-=h*l}if(d>0){const h=Math.min(F-2*l,d);g.lineTo(v,F-h-l+v),d-=h}if(d>0){const h=Math.min(Math.PI/2,d/l);g.arc(l+v,l+v,l,Math.PI,Math.PI+h,!1)}g.stroke()};function _(u,f,c,l,y,b){u.beginPath(),u.moveTo(f+b,c),u.lineTo(f+l-b,c),u.arcTo(f+l,c,f+l,c+b,b),u.lineTo(f+l,c+y-b),u.arcTo(f+l,c+y,f+l-b,c+y,b),u.lineTo(f+b,c+y),u.arcTo(f,c+y,f,c+y-b,b),u.lineTo(f,c+b),u.arcTo(f,c,f+b,c,b),u.closePath()}return pe(()=>{o.value&&(g=o.value.getContext("2d"),k())}),Ae(()=>z.progress,k),(u,f)=>(w(),M("div",{class:"border-progress-container",ref_key:"container",ref:B},[e("canvas",{ref_key:"canvas",ref:o,class:"border-progress-canvas"},null,512)],512))}}),Ye=he(Xe,[["__scopeId","data-v-74085255"]]),ue=D=>D>=1024*1024*1024?Math.round(D/(1024*1024*1024))+"GB":D>=1024*1024?Math.round(D/(1024*1024))+"MB":Math.round(D/1024)+"KB",Ze={class:"p-8"},et={class:"flex justify-center space-x-4 mb-6"},tt={key:"file",class:"grid grid-cols-1 gap-8"},rt={key:0,class:"absolute inset-0 w-full h-full"},ot={class:"block truncate"},st={key:"text",class:"grid grid-cols-1 gap-8"},at={key:0,class:"flex flex-col"},nt={class:"flex flex-col space-y-3"},lt={class:"relative flex-grow group"},it=["placeholder"],ct=["value"],dt={type:"submit",class:"w-full bg-gradient-to-r from-indigo-500 via-purple-500 to-pink-500 text-white font-bold py-4 px-6 rounded-lg focus:outline-none focus:ring-2 focus:ring-purple-500 focus:ring-opacity-50 transition-all duration-300 transform hover:scale-105 hover:shadow-lg relative overflow-hidden group"},ut={class:"relative z-10 flex items-center justify-center text-lg"},gt={class:"mt-6 text-center"},pt={class:"flex-grow overflow-y-auto p-6"},ht={class:"flex-shrink-0 mr-4"},ft={class:"flex-grow min-w-0 mr-4"},xt={class:"flex-shrink-0 flex space-x-2"},vt=["onClick"],mt=["onClick"],yt=["onClick"],bt={key:0,class:"fixed inset-0 bg-black/60 backdrop-blur-sm flex items-center justify-center z-50 p-3 sm:p-4 overflow-y-auto"},wt={class:"flex items-center justify-between"},kt={class:"p-4 sm:p-6"},_t={class:"flex items-center mb-3 sm:mb-4"},Ct={class:"ml-3 sm:ml-4 min-w-0 flex-1"},St={class:"grid grid-cols-2 gap-3 sm:gap-4"},Mt={class:"flex items-center min-w-0"},zt={class:"flex items-center min-w-0"},Tt={class:"grid grid-cols-1 md:grid-cols-2 gap-4 sm:gap-6"},It={class:"space-y-4 sm:space-y-4"},At={class:"flex items-center justify-between mb-3 sm:mb-4"},$t={class:"text-2xl sm:text-3xl font-bold tracking-wider text-center break-all"},Dt={class:"flex items-center justify-between mb-2 sm:mb-3"},Ft={class:"truncate"},Pt={class:"bg-white p-3 sm:p-4 rounded-lg shadow-sm mb-3 sm:mb-4"},jt=ge({__name:"SendFileView",setup(D){const z=JSON.parse(localStorage.getItem("config")||"{}"),B=Re(),o=Fe("isDarkMode"),g=Ve(),k=I("file"),_=I(null),u=I(""),f=I(null),c=I("day"),l=I("1"),y=I(0),b=I(!1),p=I(null),d=$e(),v=De(()=>g.shareData);console.log(v);const T=I(""),F=()=>{var n;(n=f.value)==null||n.click()},h=async n=>{const t=n.target;if(t.files&&t.files.length>0){const i=t.files[0];if(_.value=i,!G())return;T.value=await W(i),console.log(T.value)}},fe=async n=>{var t;if((t=n.dataTransfer)!=null&&t.files&&n.dataTransfer.files.length>0){const i=n.dataTransfer.files[0];if(_.value=i,!G())return;T.value=await W(i)}},xe=async n=>{var i;const t=(i=n.clipboardData)==null?void 0:i.items;if(t)for(const s of t)if(s.kind==="file"){const x=s.getAsFile();if(x){if(x.size===0){d.showAlert("无法读取空文件","error");return}if(_.value=x,!G())return;try{T.value=await W(x),d.showAlert("已从剪贴板添加文件:"+x.name,"success")}catch(C){d.showAlert("文件处理失败","error"),console.error("File hash calculation failed:",C)}break}}else k.value="text",t[0].getAsString(x=>{u.value+=x})},W=async n=>new Promise(t=>{const s=new FileReader;let x=0;const C=Math.ceil(n.size/2097152);s.onload=async P=>{const A=new Uint8Array(P.target.result);try{if(window.isSecureContext){const j=await crypto.subtle.digest("SHA-256",A),O=Array.from(new Uint8Array(j)).map(q=>q.toString(16).padStart(2,"0")).join("");x++,x{const P=x*2097152,A=P+2097152>=n.size?n.size:P+2097152;s.readAsArrayBuffer(n.slice(P,A))};U()}),ee=n=>{const t=`${n.name}-${n.size}-${n.lastModified}`;let i=0;for(let s=0;s{switch(n){case"day":return"输入天数";case"hour":return"输入小时数";case"minute":return"输入分钟数";case"count":return"输入查看次数";case"forever":return"永久";default:return"输入值"}},te=(n=c.value)=>{switch(n){case"day":return"天";case"hour":return"小时";case"minute":return"分钟";case"count":return"次";case"forever":return"永久";default:return""}},me=async n=>{var t,i;try{const x=Math.ceil(n.size/5242880),C=await V.post("chunk/upload/init/",{file_name:n.name,file_size:n.size,chunk_size:5242880,file_hash:T.value});if(C.code!==200)throw new Error("初始化切片上传失败");if(C.detail.existed)return C;const U=C.detail.upload_id;for(let A=0;A{const Ie=Math.round((A*5242880+Te.loaded)*100/n.size);y.value=Ie}})).code!==200)throw new Error(`切片 ${A} 上传失败`)}const P=await V.post(`chunk/upload/complete/${U}`,{expire_value:l.value?parseInt(l.value):1,expire_style:c.value});if(P.code!==200)throw new Error("完成上传失败");return P}catch(s){throw console.error("切片上传失败:",s),(i=(t=s.response)==null?void 0:t.data)!=null&&i.detail?d.showAlert(s.response.data.detail,"error"):d.showAlert("上传失败,请稍后重试","error"),s}},ye=async n=>{const t=new FormData,i={headers:{"Content-Type":"multipart/form-data"},onUploadProgress:x=>{const C=Math.round(x.loaded*100/x.total);y.value=C}};return t.append("file",n),t.append("expire_value",l.value),t.append("expire_style",c.value),await V.post("share/file/",t,i)},be=()=>z.openUpload===0&&localStorage.getItem("token")===null?(d.showAlert("游客上传功能已关闭","error"),!1):!0,we=n=>n.size>z.uploadSize?(d.showAlert(`文件大小超过限制 (${ue(z.uploadSize)})`,"error"),_.value=null,!1):!0,re=(n,t)=>{if(n==="forever"||n==="count")return!0;const i=z.max_save_seconds||0;if(i===0)return!0;let s=0;switch(n){case"minute":s=parseInt(t)*60;break;case"hour":s=parseInt(t)*3600;break;case"day":s=parseInt(t)*86400;break;default:return!1}return s<=i},G=()=>!(!be()||!we(_.value)||!re(c.value,l.value)),ke=async()=>{var n,t;if(k.value==="file"&&!_.value){d.showAlert("请选择要上传的文件","error");return}if(k.value==="text"&&!u.value.trim()){d.showAlert("请输入要发送的文本","error");return}if(c.value!=="forever"&&!l.value){d.showAlert("请输入过期值","error");return}if(!re(c.value,l.value)){const i=Math.floor(z.max_save_seconds/86400);d.showAlert(`过期时间不能超过${i}天`,"error");return}try{let i;if(k.value==="file")z.enableChunk?i=await me(_.value):i=await ye(_.value);else{const s=new FormData;s.append("text",u.value),s.append("expire_value",l.value),s.append("expire_style",c.value),i=await V.post("share/text/",s,{headers:{"Content-Type":"multipart/form-data"}})}if(i&&i.code===200){const s=i.detail.code,x=i.detail.name,C={id:Date.now(),type:k.value,filename:x,text:k.value==="text"?u.value:"",date:new Date().toISOString().split("T")[0],size:k.value==="text"?`${(u.value.length/1024).toFixed(2)} KB`:`${(_.value.size/(1024*1024)).toFixed(1)} MB`,expiration:c.value==="forever"?"永久":`${l.value}${te()}后过期`,retrieveCode:s};console.log(C),g.addShareData(C),d.showAlert(`文件发送成功!粮票号:${s}`,"success"),_.value=null,u.value="",y.value=0,p.value=C,await Y(s)}else throw new Error("服务器响应异常")}catch(i){console.error("发送失败:",i),(t=(n=i.response)==null?void 0:n.data)!=null&&t.detail?d.showAlert(i.response.data.detail,"error"):d.showAlert("发送失败,请稍后重试","error")}finally{y.value=0}},_e=()=>{B.push("/")},oe=()=>{b.value=!b.value},Ce=n=>{p.value=n},Se=n=>{const t=g.shareData.findIndex(i=>i.id===n);t!==-1&&g.deleteShareData(t)},Me=window.location.origin+"/#/",ze=n=>`${Me}?code=${n.retrieveCode}`,se=n=>{const i=(parseInt(l.value)||0)+n;i>=1&&(l.value=i.toString())};return pe(()=>{console.log("SendFileView mounted")}),(n,t)=>{const i=Be("router-link");return w(),M("div",{class:"min-h-screen flex items-center justify-center p-4 overflow-hidden transition-colors duration-300",onPaste:E(xe,["prevent"])},[e("div",{class:a(["rounded-3xl shadow-2xl overflow-hidden border w-full max-w-md transition-colors duration-300",[r(o)?"bg-white bg-opacity-10 backdrop-filter backdrop-blur-xl border-gray-700":"bg-white border-gray-200"]])},[e("div",Ze,[e("h2",{class:a(["text-3xl font-extrabold text-center mb-8 cursor-pointer transition-colors duration-300",[r(o)?"text-transparent bg-clip-text bg-gradient-to-r from-indigo-300 via-purple-300 to-pink-300":"text-indigo-600"]]),onClick:_e},S(r(z).name),3),e("form",{onSubmit:E(ke,["prevent"]),class:"space-y-8"},[e("div",et,[e("button",{type:"button",onClick:t[0]||(t[0]=s=>k.value="file"),class:a(["px-4 py-2 rounded-lg",k.value==="file"?"bg-indigo-600 text-white":"bg-gray-700 text-gray-300"])}," 投喂文件 ",2),e("button",{type:"button",onClick:t[1]||(t[1]=s=>k.value="text"),class:a(["px-4 py-2 rounded-lg",k.value==="text"?"bg-indigo-600 text-white":"bg-gray-700 text-gray-300"])}," 投喂文本 ",2)]),m(J,{name:"fade",mode:"out-in"},{default:R(()=>[k.value==="file"?(w(),M("div",tt,[e("div",{class:a(["rounded-xl p-8 flex flex-col items-center justify-center border-2 border-dashed transition-all duration-300 group cursor-pointer relative",[r(o)?"bg-gray-800 bg-opacity-50 border-gray-600 hover:border-indigo-500":"bg-gray-100 border-gray-300 hover:border-indigo-500"]]),onClick:F,onDragover:t[2]||(t[2]=E(()=>{},["prevent"])),onDrop:E(fe,["prevent"])},[e("input",{id:"file-upload",type:"file",class:"hidden",onChange:h,ref_key:"fileInput",ref:f},null,544),y.value>0?(w(),M("div",rt,[m(Ye,{progress:y.value},null,8,["progress"])])):$("",!0),m(r(Qe),{class:a(["w-16 h-16 transition-colors duration-300",r(o)?"text-gray-400 group-hover:text-indigo-400":"text-gray-600 group-hover:text-indigo-600"])},null,8,["class"]),e("p",{class:a(["mt-4 text-sm transition-colors duration-300 w-full text-center",r(o)?"text-gray-400 group-hover:text-indigo-400":"text-gray-600 group-hover:text-indigo-600"])},[e("span",ot,S(_.value?_.value.name:"点击或拖放文件到此处投喂"),1)],2),e("p",{class:a(["mt-2 text-xs",r(o)?"text-gray-500":"text-gray-400"])}," 支持各种常见格式,最大只能投喂"+S(r(ue)(r(z).uploadSize))+"喔 ",3)],34)])):(w(),M("div",st,[k.value==="text"?(w(),M("div",at,[Q(e("textarea",{id:"text-content","onUpdate:modelValue":t[3]||(t[3]=s=>u.value=s),rows:"7",class:a(["flex-grow px-4 py-3 rounded-xl placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-indigo-500 transition duration-300 resize-none",r(o)?"bg-gray-800 bg-opacity-50 text-white":"bg-white text-gray-900 border border-gray-300"]),placeholder:"在此输入要投喂的文本..."},null,2),[[ae,u.value]])])):$("",!0)]))]),_:1}),e("div",nt,[e("label",{class:a(["text-sm font-medium",r(o)?"text-gray-300":"text-gray-700"])}," 过期时间 ",2),e("div",lt,[e("div",{class:a(["relative h-11 rounded-xl border transition-all duration-300",r(o)?"bg-gray-800/50 border-gray-700/50 group-hover:border-gray-600":"bg-white border-gray-200 group-hover:border-gray-300"])},[c.value!=="forever"?(w(),M(K,{key:0},[Q(e("input",{"onUpdate:modelValue":t[4]||(t[4]=s=>l.value=s),type:"number",placeholder:ve(),min:"1",class:a(["w-full h-full px-4 pr-32 rounded-xl placeholder-gray-400 transition-all duration-300","focus:outline-none focus:ring-2 focus:ring-offset-0","[appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none","bg-transparent",r(o)?"text-gray-100 focus:ring-indigo-500/70 placeholder-gray-500":"text-gray-900 focus:ring-indigo-500/50 placeholder-gray-400"])},null,10,it),[[ae,l.value]]),e("div",{class:a(["absolute right-24 top-0 h-full flex flex-col border-l",[r(o)?"border-gray-700/50":"border-gray-200"]])},[e("button",{type:"button",onClick:t[5]||(t[5]=s=>se(1)),class:a(["flex-1 px-2 flex items-center justify-center transition-all duration-200",[r(o)?"hover:bg-gray-700/50 text-gray-400 hover:text-gray-200":"hover:bg-gray-50 text-gray-500 hover:text-gray-700"]])},t[12]||(t[12]=[e("svg",{class:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M5 15l7-7 7 7"})],-1)]),2),e("button",{type:"button",onClick:t[6]||(t[6]=s=>se(-1)),class:a(["flex-1 px-2 flex items-center justify-center transition-all duration-200",[r(o)?"hover:bg-gray-700/50 text-gray-400 hover:text-gray-200":"hover:bg-gray-50 text-gray-500 hover:text-gray-700"]])},t[13]||(t[13]=[e("svg",{class:"w-3 h-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"})],-1)]),2)],2)],64)):$("",!0),Q(e("select",{"onUpdate:modelValue":t[7]||(t[7]=s=>c.value=s),class:a(["absolute right-0 top-0 h-full appearance-none cursor-pointer","focus:outline-none focus:ring-2 focus:ring-offset-0",c.value==="forever"?"w-full px-4":"w-24 pl-3 pr-8 border-l",r(o)?"text-gray-100 border-gray-700/50 focus:ring-indigo-500/70 bg-gray-800/50":"text-gray-900 border-gray-200 focus:ring-indigo-500/50 bg-white"]),style:je([c.value==="forever"?"border-radius: 0.75rem;":"border-top-right-radius: 0.75rem;border-bottom-right-radius: 0.75rem;"])},[(w(!0),M(K,null,ne(r(z).expireStyle,s=>(w(),M("option",{value:s,key:s,class:a([r(o)?"bg-gray-800 text-gray-100":"bg-white text-gray-900"])},S(te(s)),11,ct))),128))],6),[[Pe,c.value]]),e("div",{class:a(["absolute pointer-events-none",[c.value==="forever"?"right-3":"right-2","top-1/2 -translate-y-1/2"]])},[(w(),M("svg",{class:a(["w-4 h-4 transition-colors duration-300",[r(o)?"text-gray-400":"text-gray-500"]]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},t[14]||(t[14]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"},null,-1)]),2))],2)],2)])]),e("button",dt,[t[16]||(t[16]=e("span",{class:"absolute top-0 left-0 w-full h-full bg-white opacity-0 group-hover:opacity-20 transition-opacity duration-300"},null,-1)),e("span",ut,[m(r(Je),{class:"w-6 h-6 mr-2"}),t[15]||(t[15]=e("span",null,"开始投喂",-1))])])],32),e("div",gt,[m(i,{to:"/",class:"text-indigo-400 hover:text-indigo-300 transition duration-300"},{default:R(()=>t[17]||(t[17]=[X(" 需要领粮?点击这里 ")])),_:1,__:[17]})])]),e("div",{class:a(["px-8 py-4 bg-opacity-50 flex justify-between items-center",[r(o)?"bg-gray-800":"bg-gray-100"]])},[e("span",{class:a(["text-sm flex items-center",[r(o)?"text-gray-300":"text-gray-800"]]),style:{opacity:"0","pointer-events":"none"}},[m(r(ie),{class:"w-4 h-4 mr-1 text-green-400"}),t[18]||(t[18]=X(" 安全加密 "))],2),e("button",{onClick:oe,class:a(["text-sm hover:text-indigo-300 transition duration-300 flex items-center",[r(o)?"text-indigo-400":"text-indigo-600"]])},[t[19]||(t[19]=X(" 投喂记录 ")),m(r(Le),{class:"w-4 h-4 ml-1"})],2)],2)],2),m(J,{name:"drawer"},{default:R(()=>[b.value?(w(),M("div",{key:0,class:a(["fixed inset-y-0 right-0 w-full sm:w-120 bg-opacity-70 backdrop-filter backdrop-blur-xl shadow-2xl z-50 overflow-hidden flex flex-col",[r(o)?"bg-gray-900":"bg-white"]])},[e("div",{class:a(["flex justify-between items-center p-6 border-b",[r(o)?"border-gray-700":"border-gray-200"]])},[e("h3",{class:a(["text-2xl font-bold",[r(o)?"text-white":"text-gray-800"]])}," 投喂记录 ",2),e("button",{onClick:oe,class:a(["hover:text-white transition duration-300",[r(o)?"text-gray-400":"text-gray-800"]])},[m(r(le),{class:"w-6 h-6"})],2)],2),e("div",pt,[m(Ue,{name:"list",tag:"div",class:"space-y-4"},{default:R(()=>[(w(!0),M(K,null,ne(v.value,s=>(w(),M("div",{key:s.id,class:a(["bg-opacity-50 rounded-lg p-4 flex items-center shadow-sm hover:shadow-lg transition duration-300 transform hover:scale-102",[r(o)?"bg-gray-800 hover:bg-gray-700":"bg-gray-100 hover:bg-white"]])},[e("div",ht,[s.type!=="text"?(w(),N(r(ce),{key:0,class:a(["w-10 h-10",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):$("",!0),s.type==="text"?(w(),N(r(de),{key:1,class:a(["w-10 h-10",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):$("",!0)]),e("div",ft,[e("p",{class:a(["font-medium text-lg truncate",[r(o)?"text-white":"text-gray-800"]])},S(s.filename?s.filename:"Text"),3),e("p",{class:a(["text-sm truncate",[r(o)?"text-gray-400":"text-gray-600"]])},S(s.date)+" · "+S(s.size),3)]),e("div",xt,[e("button",{onClick:x=>r(Y)(s.retrieveCode),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-blue-400 text-blue-400":"hover:bg-blue-100 text-blue-600"]])},[m(r(Z),{class:"w-5 h-5"})],10,vt),e("button",{onClick:x=>Ce(s),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-green-400 text-green-400":"hover:bg-green-100 text-green-600"]])},[m(r(We),{class:"w-5 h-5"})],10,mt),e("button",{onClick:x=>Se(s.id),class:a(["p-2 rounded-full hover:bg-opacity-20 transition duration-300",[r(o)?"hover:bg-red-400 text-red-400":"hover:bg-red-100 text-red-600"]])},[m(r(Ge),{class:"w-5 h-5"})],10,yt)])],2))),128))]),_:1})])],2)):$("",!0)]),_:1}),m(J,{name:"fade"},{default:R(()=>[p.value?(w(),M("div",bt,[e("div",{class:a(["w-full max-w-2xl rounded-2xl shadow-2xl transform transition-all duration-300 ease-out overflow-hidden",[r(o)?"bg-gray-900 bg-opacity-70":"bg-white bg-opacity-95"]])},[e("div",{class:a(["px-4 sm:px-6 py-3 sm:py-4 border-b",[r(o)?"border-gray-800":"border-gray-100"]])},[e("div",wt,[e("h3",{class:a(["text-lg sm:text-xl font-semibold",[r(o)?"text-white":"text-gray-900"]])}," 投喂详情 ",2),e("button",{onClick:t[8]||(t[8]=s=>p.value=null),class:"p-1.5 sm:p-2 rounded-full hover:bg-gray-100 dark:hover:bg-gray-800 transition-colors"},[m(r(le),{class:a(["w-4 h-4 sm:w-5 sm:h-5",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"])])])],2),e("div",kt,[e("div",{class:a(["rounded-xl p-3 sm:p-4 mb-4 sm:mb-6",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-200 bg-opacity-50"]])},[e("div",_t,[e("div",{class:a(["p-2 sm:p-3 rounded-lg",[r(o)?"bg-gray-800":"bg-white"]])},[p.value.type==="file"?(w(),N(r(ce),{key:0,class:a(["w-5 h-5 sm:w-6 sm:h-6",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):$("",!0),p.value.type==="text"?(w(),N(r(de),{key:1,class:a(["w-5 h-5 sm:w-6 sm:h-6",[r(o)?"text-indigo-400":"text-indigo-600"]])},null,8,["class"])):$("",!0)],2),e("div",Ct,[e("h4",{class:a(["font-medium text-sm sm:text-base truncate",[r(o)?"text-white":"text-gray-900"]])},S(p.value.filename?p.value.filename:"Text"),3),e("p",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-400":"text-gray-500"]])},S(p.value.size)+" · "+S(p.value.date),3)])]),e("div",St,[e("div",Mt,[m(r(Oe),{class:a(["w-3.5 h-3.5 sm:w-4 sm:h-4 mr-1.5 sm:mr-2 flex-shrink-0",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"]),e("span",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-300":"text-gray-600"]])},S(p.value.expiration),3)]),e("div",zt,[m(r(ie),{class:a(["w-3.5 h-3.5 sm:w-4 sm:h-4 mr-1.5 sm:mr-2 flex-shrink-0",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"]),e("span",{class:a(["text-xs sm:text-sm truncate",[r(o)?"text-gray-300":"text-gray-600"]])}," 安全加密 ",2)])])],2),e("div",Tt,[e("div",It,[e("div",{class:a(["bg-gradient-to-br from-indigo-500 to-purple-600 rounded-xl p-4 sm:p-5 text-white",{"w-full":p.value.type!=="file"}])},[e("div",At,[t[20]||(t[20]=e("h4",{class:"font-medium text-sm sm:text-base"},"粮票号",-1)),e("button",{onClick:t[9]||(t[9]=s=>r(He)(p.value.retrieveCode)),class:"p-1.5 sm:p-2 rounded-full hover:bg-white/10 transition-colors"},[m(r(Z),{class:"w-4 h-4 sm:w-5 sm:h-5",name:"点击复制粮票号"})])]),e("p",$t,S(p.value.retrieveCode),1)],2),e("div",{class:a(["rounded-xl p-3 sm:p-4",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-200 bg-opacity-50"]])},[e("div",Dt,[e("h4",{class:a(["font-medium text-sm sm:text-base flex items-center min-w-0",[r(o)?"text-white":"text-gray-900"]])},[m(r(Ke),{class:"w-4 h-4 sm:w-5 sm:h-5 mr-1.5 sm:mr-2 text-indigo-500 flex-shrink-0"}),e("span",Ft,S(p.value.type==="file"?"wget下载":"复制文本"),1)],2),e("button",{onClick:t[10]||(t[10]=s=>p.value.type==="file"?r(qe)(p.value.retrieveCode,p.value.filename):r(Ee)(p.value.text)),class:"p-1.5 sm:p-2 rounded-full hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors flex-shrink-0"},[m(r(Z),{class:a(["w-4 h-4 sm:w-5 sm:h-5",[r(o)?"text-gray-400":"text-gray-500"]])},null,8,["class"])])]),e("p",{class:a(["text-xs sm:text-sm font-mono break-all line-clamp-2",[r(o)?"text-gray-300":"text-gray-600"]])},S(p.value.type==="file"?"点击复制wget命令":"点击复制文本内容"),3)],2)]),e("div",{class:a(["rounded-xl p-4 sm:p-5 flex flex-col items-center",[r(o)?"bg-gray-800 bg-opacity-50":"bg-gray-200 bg-opacity-50"]])},[e("div",Pt,[m(Ne,{value:ze(p.value),size:140,level:"M",class:"sm:w-[160px] sm:h-[160px]"},null,8,["value"])]),e("p",{class:a(["text-xs sm:text-sm truncate max-w-full",[r(o)?"text-gray-400":"text-gray-500"]])}," 扫描二维码快速领粮 ",2)],2)])]),e("div",{class:a(["px-4 sm:px-6 py-3 sm:py-4 border-t",[r(o)?"border-gray-800":"border-gray-100"]])},[e("button",{onClick:t[11]||(t[11]=s=>r(Y)(p.value.retrieveCode)),class:"w-full bg-indigo-600 hover:bg-indigo-700 text-white px-4 sm:px-6 py-2 sm:py-3 rounded-lg text-sm sm:text-base font-medium transition-colors"}," 复制领粮链接 ")],2)],2)])):$("",!0)]),_:1})],32)}}}),Ht=he(jt,[["__scopeId","data-v-079e0ac5"]]);export{Ht as default}; diff --git a/themes/2025/assets/SystemSettingsView-BvNjuhLF.js b/themes/2025/assets/SystemSettingsView-D7a-G8Xk.js similarity index 99% rename from themes/2025/assets/SystemSettingsView-BvNjuhLF.js rename to themes/2025/assets/SystemSettingsView-D7a-G8Xk.js index 2297ad1e6..368e7fff2 100644 --- a/themes/2025/assets/SystemSettingsView-BvNjuhLF.js +++ b/themes/2025/assets/SystemSettingsView-D7a-G8Xk.js @@ -1 +1 @@ -import{d as B,r as m,u as M,a as c,b as e,n as a,h as l,i as F,m as n,v as d,p as x,F as w,s as _,l as h,t as y,C as k,N as A,e as b}from"./index-DKQ1YPO4.js";const z={class:"p-6 h-screen custom-scrollbar"},E={class:"space-y-4"},T={class:"grid grid-cols-1 gap-6"},W={class:"space-y-2"},K={class:"space-y-2"},N={class:"space-y-2"},I={class:"relative"},R={class:"space-y-2"},j={class:"space-y-2"},G=["value"],L={class:"space-y-2"},$={class:"grid grid-cols-1 gap-6 mt-8"},P={class:"space-y-2"},H={class:"space-y-2"},q={class:"space-y-4"},J={class:"space-y-2"},O={class:"space-y-4"},Q={class:"space-y-2"},X={key:0,class:"space-y-2"},Y={class:"flex items-center"},Z=["aria-checked"],ee={key:1,class:"space-y-4"},oe={class:"space-y-2"},re={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},te={class:"space-y-2"},ae={class:"space-y-2"},se={key:2,class:"space-y-4"},le={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},ne={class:"space-y-2"},de={class:"space-y-2"},ie={class:"space-y-2"},ue={class:"space-y-2"},ge={class:"space-y-2"},ce={class:"space-y-2"},ye={class:"space-y-2"},be={class:"space-y-2"},pe={class:"space-y-2"},ve={class:"flex items-center"},me=["aria-checked"],xe={class:"mt-8"},he={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},fe={class:"space-y-2"},we={class:"flex items-center space-x-2"},_e={class:"space-y-2"},ke={class:"flex items-center space-x-2"},Ue={class:"space-y-2"},Se={class:"flex items-center space-x-2"},Ve={class:"space-y-2"},Ce={class:"flex flex-wrap gap-3"},De=["value"],Be={class:"space-y-2"},Me={class:"flex items-center space-x-2"},Fe={class:"space-y-2"},Ae={class:"flex items-center"},ze=["aria-checked"],Ee={class:"mt-8"},Te={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},We={class:"space-y-2"},Ke={class:"flex items-center space-x-2"},Ne={class:"space-y-2"},Ie={class:"flex items-center space-x-2"},Ge=B({__name:"SystemSettingsView",setup(Re){const s=F("isDarkMode"),t=m({name:"",description:"",file_storage:"",webdav_url:"",webdav_username:"",webdav_password:"",themesChoices:[],expireStyle:[],admin_token:"",robotsText:"",keywords:"",notify_title:"",storage_path:"",notify_content:"",openUpload:1,uploadSize:1,enableChunk:0,uploadMinute:1,max_save_seconds:0,opacity:.9,s3_access_key_id:"",background:"",showAdminAddr:0,page_explain:"",s3_secret_access_key:"",aws_session_token:"",s3_signature_version:"",s3_region_name:"",s3_bucket_name:"",s3_endpoint_url:"",s3_hostname:"",s3_cdn_url:"",uploadCount:1,errorMinute:1,errorCount:1,s3_proxy:0,themesSelect:""}),p=m(1),v=m("MB"),u=m(1),g=m("天"),U=(i,o)=>i*{秒:1,分:60,时:3600,天:86400}[o],S=()=>{k({url:"admin/config/get",method:"get"}).then(i=>{t.value=i.detail;let o=t.value.uploadSize;o>=1024*1024*1024?(p.value=Math.round(o/(1024*1024*1024)),v.value="GB"):o>=1024*1024?(p.value=Math.round(o/(1024*1024)),v.value="MB"):(p.value=Math.round(o/1024),v.value="KB");let r=t.value.max_save_seconds;r===0?(u.value=7,g.value="天"):r%86400===0&&r>=86400?(u.value=r/86400,g.value="天"):r%3600===0&&r>=3600?(u.value=r/3600,g.value="时"):r%60===0&&r>=60?(u.value=r/60,g.value="分"):(u.value=r,g.value="秒")})},f=M(),V=(i,o)=>i*{KB:1024,MB:1048576,GB:1073741824}[o],C=()=>{const i={...t.value};i.uploadSize=V(p.value,v.value),u.value===0?i.max_save_seconds=7*86400:i.max_save_seconds=U(u.value,g.value),k({url:"admin/config/update",method:"patch",data:i}).then(o=>{o.code==200?f.showAlert("保存成功","success"):f.showAlert(o.message,"error")})};return S(),(i,o)=>(b(),c("div",z,[e("h2",{class:a(["text-2xl font-bold mb-6",[l(s)?"text-white":"text-gray-800"]])}," 系统设置 ",2),e("div",{class:a(["rounded-lg shadow-md p-6",[l(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[e("section",E,[e("h3",{class:a(["text-lg font-bold mb-4",[l(s)?"text-white":"text-gray-800"]])}," 基本设置 ",2),e("div",T,[e("div",W,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 网站名称 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[0]||(o[0]=r=>t.value.name=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.name]])]),e("div",K,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 网站描述 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[1]||(o[1]=r=>t.value.description=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.description]])]),e("div",N,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 管理员密码 ",2),e("div",I,[n(e("input",{type:"password",minlength:"6","onUpdate:modelValue":o[2]||(o[2]=r=>t.value.admin_token=r),placeholder:"留空则不修改密码",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.admin_token]]),e("div",{class:a(["absolute inset-y-0 right-0 flex items-center pr-3 text-sm text-gray-400",[l(s)?"text-gray-500":"text-gray-400"]])},o[33]||(o[33]=[e("span",{class:"text-xs"},"留空则不修改",-1)]),2)])]),e("div",R,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 关键词 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[3]||(o[3]=r=>t.value.keywords=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.keywords]])]),e("div",j,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 主题选择 ",2),n(e("select",{"onUpdate:modelValue":o[4]||(o[4]=r=>t.value.themesSelect=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border appearance-none bg-no-repeat bg-right focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none cursor-pointer",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]]),style:{"background-image":"url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M7%208l3%203%203-3%22%20stroke%3D%22%236B7280%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E')"}},[(b(!0),c(w,null,_(t.value.themesChoices,r=>(b(),c("option",{value:r.key,key:r.key},y(r.name)+" (by "+y(r.author)+" V"+y(r.version)+") ",9,G))),128))],2),[[x,t.value.themesSelect]])]),e("div",L,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Robots.txt ",2),n(e("textarea",{"onUpdate:modelValue":o[5]||(o[5]=r=>t.value.robotsText=r),rows:"3",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border resize-none focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.robotsText]])])]),e("div",$,[e("div",P,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 通知标题 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[6]||(o[6]=r=>t.value.notify_title=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.notify_title]])]),e("div",H,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 通知内容 ",2),n(e("textarea",{"onUpdate:modelValue":o[7]||(o[7]=r=>t.value.notify_content=r),rows:"3",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border resize-none focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.notify_content]])])]),e("div",q,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 存储设置 ",2),e("div",J,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 存储路径 ",2),n(e("input",{type:"text",placeholder:"留空则使用默认路径,可不填写","onUpdate:modelValue":o[8]||(o[8]=r=>t.value.storage_path=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.storage_path]])]),e("div",O,[e("div",Q,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 存储方式 ",2),n(e("select",{"onUpdate:modelValue":o[9]||(o[9]=r=>t.value.file_storage=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border appearance-none bg-no-repeat bg-right focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none cursor-pointer",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]]),style:{"background-image":"url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M7%208l3%203%203-3%22%20stroke%3D%22%236B7280%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E')"}},o[34]||(o[34]=[e("option",{value:"local"},"本地存储",-1),e("option",{value:"s3"},"S3 存储",-1),e("option",{value:"webdav"},"Webdav 存储",-1)]),2),[[x,t.value.file_storage]])]),t.value.file_storage==="local"?(b(),c("div",X,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 开启切片上传(实验性功能,还在开发中,目前仅本地存储可用,可能会出现未知问题) ",2),e("div",Y,[e("button",{type:"button",onClick:o[10]||(o[10]=r=>t.value.enableChunk=t.value.enableChunk===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.enableChunk===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.enableChunk===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.enableChunk===1?"translate-x-5":"translate-x-0",l(s)&&t.value.enableChunk!==1?"bg-gray-100":"bg-white"]])},null,2)],10,Z),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.enableChunk===1?"已开启":"已关闭"),3)])])):h("",!0),t.value.file_storage==="webdav"?(b(),c("div",ee,[e("div",oe,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav URL ",2),n(e("input",{type:"text",placeholder:"请输入 Webdav URL","onUpdate:modelValue":o[11]||(o[11]=r=>t.value.webdav_url=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_url]])]),e("div",re,[e("div",te,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav Username ",2),n(e("input",{type:"text",placeholder:"请输入 Webdav Username","onUpdate:modelValue":o[12]||(o[12]=r=>t.value.webdav_username=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_username]])]),e("div",ae,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav Password ",2),n(e("input",{type:"password",placeholder:"请输入 Webdav Password","onUpdate:modelValue":o[13]||(o[13]=r=>t.value.webdav_password=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_password]])])])])):h("",!0),t.value.file_storage==="s3"?(b(),c("div",se,[e("div",le,[e("div",ne,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 EndpointUrl ",2),n(e("input",{type:"text","onUpdate:modelValue":o[14]||(o[14]=r=>t.value.s3_endpoint_url=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_endpoint_url]])]),e("div",de,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 AccessKeyId ",2),n(e("input",{type:"text","onUpdate:modelValue":o[15]||(o[15]=r=>t.value.s3_access_key_id=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_access_key_id]])]),e("div",ie,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 SecretAccessKey ",2),n(e("input",{type:"password","onUpdate:modelValue":o[16]||(o[16]=r=>t.value.s3_secret_access_key=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_secret_access_key]])]),e("div",ue,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 BucketName ",2),n(e("input",{type:"text","onUpdate:modelValue":o[17]||(o[17]=r=>t.value.s3_bucket_name=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_bucket_name]])]),e("div",ge,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Region Name ",2),n(e("input",{type:"text","onUpdate:modelValue":o[18]||(o[18]=r=>t.value.s3_region_name=r),placeholder:"auto",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_region_name]])]),e("div",ce,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 CDN URL ",2),n(e("input",{type:"text","onUpdate:modelValue":o[19]||(o[19]=r=>t.value.s3_cdn_url=r),placeholder:"https://cdn.example.com",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_cdn_url]])]),e("div",ye,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Signature Version ",2),n(e("select",{"onUpdate:modelValue":o[20]||(o[20]=r=>t.value.s3_signature_version=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[35]||(o[35]=[e("option",{value:"s3v2"},"S3v2",-1),e("option",{value:"s3v4"},"S3v4",-1)]),2),[[x,t.value.s3_signature_version]])]),e("div",be,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Hostname ",2),n(e("input",{type:"text","onUpdate:modelValue":o[21]||(o[21]=r=>t.value.s3_hostname=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_hostname]])]),e("div",pe,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 启用代理 ",2),e("div",ve,[e("button",{type:"button",onClick:o[22]||(o[22]=r=>t.value.s3_proxy=t.value.s3_proxy===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.s3_proxy===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.s3_proxy===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.s3_proxy===1?"translate-x-5":"translate-x-0",l(s)&&t.value.s3_proxy!==1?"bg-gray-100":"bg-white"]])},null,2)],10,me),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.s3_proxy===1?"已开启":"已关闭"),3)])])])])):h("",!0)])]),e("div",xe,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 上传限制 ",2),e("div",he,[e("div",fe,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 每分钟上传限制 ",2),e("div",we,[n(e("input",{type:"number","onUpdate:modelValue":o[23]||(o[23]=r=>t.value.uploadMinute=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.uploadMinute]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"分钟",2)])]),e("div",_e,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 上传数量限制 ",2),e("div",ke,[n(e("input",{type:"number","onUpdate:modelValue":o[24]||(o[24]=r=>t.value.uploadCount=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.uploadCount]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"个文件",2)])]),e("div",Ue,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 文件大小限制 ",2),e("div",Se,[n(e("input",{type:"number","onUpdate:modelValue":o[25]||(o[25]=r=>p.value=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,p.value]]),n(e("select",{"onUpdate:modelValue":o[26]||(o[26]=r=>v.value=r),class:a(["rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[36]||(o[36]=[e("option",{value:"KB"},"KB",-1),e("option",{value:"MB"},"MB",-1),e("option",{value:"GB"},"GB",-1)]),2),[[x,v.value]])])]),e("div",Ve,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 过期方式 ",2),e("div",Ce,[(b(),c(w,null,_(["day","hour","minute","forever","count"],r=>e("label",{key:r,class:"relative inline-flex items-center group cursor-pointer"},[n(e("input",{type:"checkbox",value:r,"onUpdate:modelValue":o[27]||(o[27]=D=>t.value.expireStyle=D),class:"peer sr-only"},null,8,De),[[A,t.value.expireStyle]]),e("div",{class:a(["px-4 py-2 rounded-full border-2 transition-all duration-200 select-none",[t.value.expireStyle.includes(r)?(l(s),"bg-indigo-600 border-indigo-600 text-white"):l(s)?"bg-gray-700 border-gray-600 text-gray-300 hover:border-indigo-500":"bg-white border-gray-300 text-gray-700 hover:border-indigo-500"]])},y({day:"按天",hour:"按小时",minute:"按分钟",forever:"永久",count:"按次数"}[r]),3)])),64))])]),e("div",Be,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 最长保存时间 ",2),e("div",Me,[n(e("input",{type:"number","onUpdate:modelValue":o[28]||(o[28]=r=>u.value=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,u.value]]),n(e("select",{"onUpdate:modelValue":o[29]||(o[29]=r=>g.value=r),class:a(["rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[37]||(o[37]=[e("option",{value:"秒"},"秒",-1),e("option",{value:"分"},"分",-1),e("option",{value:"时"},"时",-1),e("option",{value:"天"},"天",-1)]),2),[[x,g.value]])])]),e("div",Fe,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 游客上传 ",2),e("div",Ae,[e("button",{type:"button",onClick:o[30]||(o[30]=r=>t.value.openUpload=t.value.openUpload===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.openUpload===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.openUpload===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.openUpload===1?"translate-x-5":"translate-x-0",l(s)&&t.value.openUpload!==1?"bg-gray-100":"bg-white"]])},null,2)],10,ze),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.openUpload===1?"已开启":"已关闭"),3)])])])]),e("div",Ee,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 错误限制 ",2),e("div",Te,[e("div",We,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 每分钟错误限制 ",2),e("div",Ke,[n(e("input",{type:"number","onUpdate:modelValue":o[31]||(o[31]=r=>t.value.errorMinute=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.errorMinute]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"分钟",2)])]),e("div",Ne,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 错误次数限制 ",2),e("div",Ie,[n(e("input",{type:"number","onUpdate:modelValue":o[32]||(o[32]=r=>t.value.errorCount=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.errorCount]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"次",2)])])])]),e("div",{class:"flex justify-end mt-8"},[e("button",{onClick:C,class:"px-4 py-2 bg-indigo-600 text-white rounded-md hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 transition-colors duration-200"}," 保存设置 ")])])],2)]))}});export{Ge as default}; +import{d as B,r as m,u as M,a as c,b as e,n as a,h as l,i as F,m as n,v as d,p as x,F as w,s as _,l as h,t as y,C as k,N as A,e as b}from"./index-BAgz5Ib8.js";const z={class:"p-6 h-screen custom-scrollbar"},E={class:"space-y-4"},T={class:"grid grid-cols-1 gap-6"},W={class:"space-y-2"},K={class:"space-y-2"},N={class:"space-y-2"},I={class:"relative"},R={class:"space-y-2"},j={class:"space-y-2"},G=["value"],L={class:"space-y-2"},$={class:"grid grid-cols-1 gap-6 mt-8"},P={class:"space-y-2"},H={class:"space-y-2"},q={class:"space-y-4"},J={class:"space-y-2"},O={class:"space-y-4"},Q={class:"space-y-2"},X={key:0,class:"space-y-2"},Y={class:"flex items-center"},Z=["aria-checked"],ee={key:1,class:"space-y-4"},oe={class:"space-y-2"},re={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},te={class:"space-y-2"},ae={class:"space-y-2"},se={key:2,class:"space-y-4"},le={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},ne={class:"space-y-2"},de={class:"space-y-2"},ie={class:"space-y-2"},ue={class:"space-y-2"},ge={class:"space-y-2"},ce={class:"space-y-2"},ye={class:"space-y-2"},be={class:"space-y-2"},pe={class:"space-y-2"},ve={class:"flex items-center"},me=["aria-checked"],xe={class:"mt-8"},he={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},fe={class:"space-y-2"},we={class:"flex items-center space-x-2"},_e={class:"space-y-2"},ke={class:"flex items-center space-x-2"},Ue={class:"space-y-2"},Se={class:"flex items-center space-x-2"},Ve={class:"space-y-2"},Ce={class:"flex flex-wrap gap-3"},De=["value"],Be={class:"space-y-2"},Me={class:"flex items-center space-x-2"},Fe={class:"space-y-2"},Ae={class:"flex items-center"},ze=["aria-checked"],Ee={class:"mt-8"},Te={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},We={class:"space-y-2"},Ke={class:"flex items-center space-x-2"},Ne={class:"space-y-2"},Ie={class:"flex items-center space-x-2"},Ge=B({__name:"SystemSettingsView",setup(Re){const s=F("isDarkMode"),t=m({name:"",description:"",file_storage:"",webdav_url:"",webdav_username:"",webdav_password:"",themesChoices:[],expireStyle:[],admin_token:"",robotsText:"",keywords:"",notify_title:"",storage_path:"",notify_content:"",openUpload:1,uploadSize:1,enableChunk:0,uploadMinute:1,max_save_seconds:0,opacity:.9,s3_access_key_id:"",background:"",showAdminAddr:0,page_explain:"",s3_secret_access_key:"",aws_session_token:"",s3_signature_version:"",s3_region_name:"",s3_bucket_name:"",s3_endpoint_url:"",s3_hostname:"",s3_cdn_url:"",uploadCount:1,errorMinute:1,errorCount:1,s3_proxy:0,themesSelect:""}),p=m(1),v=m("MB"),u=m(1),g=m("天"),U=(i,o)=>i*{秒:1,分:60,时:3600,天:86400}[o],S=()=>{k({url:"admin/config/get",method:"get"}).then(i=>{t.value=i.detail;let o=t.value.uploadSize;o>=1024*1024*1024?(p.value=Math.round(o/(1024*1024*1024)),v.value="GB"):o>=1024*1024?(p.value=Math.round(o/(1024*1024)),v.value="MB"):(p.value=Math.round(o/1024),v.value="KB");let r=t.value.max_save_seconds;r===0?(u.value=7,g.value="天"):r%86400===0&&r>=86400?(u.value=r/86400,g.value="天"):r%3600===0&&r>=3600?(u.value=r/3600,g.value="时"):r%60===0&&r>=60?(u.value=r/60,g.value="分"):(u.value=r,g.value="秒")})},f=M(),V=(i,o)=>i*{KB:1024,MB:1048576,GB:1073741824}[o],C=()=>{const i={...t.value};i.uploadSize=V(p.value,v.value),u.value===0?i.max_save_seconds=7*86400:i.max_save_seconds=U(u.value,g.value),k({url:"admin/config/update",method:"patch",data:i}).then(o=>{o.code==200?f.showAlert("保存成功","success"):f.showAlert(o.message,"error")})};return S(),(i,o)=>(b(),c("div",z,[e("h2",{class:a(["text-2xl font-bold mb-6",[l(s)?"text-white":"text-gray-800"]])}," 系统设置 ",2),e("div",{class:a(["rounded-lg shadow-sm p-6",[l(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[e("section",E,[e("h3",{class:a(["text-lg font-bold mb-4",[l(s)?"text-white":"text-gray-800"]])}," 基本设置 ",2),e("div",T,[e("div",W,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 网站名称 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[0]||(o[0]=r=>t.value.name=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.name]])]),e("div",K,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 网站描述 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[1]||(o[1]=r=>t.value.description=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.description]])]),e("div",N,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 管理员密码 ",2),e("div",I,[n(e("input",{type:"password",minlength:"6","onUpdate:modelValue":o[2]||(o[2]=r=>t.value.admin_token=r),placeholder:"留空则不修改密码",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.admin_token]]),e("div",{class:a(["absolute inset-y-0 right-0 flex items-center pr-3 text-sm text-gray-400",[l(s)?"text-gray-500":"text-gray-400"]])},o[33]||(o[33]=[e("span",{class:"text-xs"},"留空则不修改",-1)]),2)])]),e("div",R,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 关键词 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[3]||(o[3]=r=>t.value.keywords=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.keywords]])]),e("div",j,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 主题选择 ",2),n(e("select",{"onUpdate:modelValue":o[4]||(o[4]=r=>t.value.themesSelect=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border appearance-none bg-no-repeat bg-right focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none cursor-pointer",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]]),style:{"background-image":"url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M7%208l3%203%203-3%22%20stroke%3D%22%236B7280%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E')"}},[(b(!0),c(w,null,_(t.value.themesChoices,r=>(b(),c("option",{value:r.key,key:r.key},y(r.name)+" (by "+y(r.author)+" V"+y(r.version)+") ",9,G))),128))],2),[[x,t.value.themesSelect]])]),e("div",L,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Robots.txt ",2),n(e("textarea",{"onUpdate:modelValue":o[5]||(o[5]=r=>t.value.robotsText=r),rows:"3",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border resize-none focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.robotsText]])])]),e("div",$,[e("div",P,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 通知标题 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[6]||(o[6]=r=>t.value.notify_title=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.notify_title]])]),e("div",H,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 通知内容 ",2),n(e("textarea",{"onUpdate:modelValue":o[7]||(o[7]=r=>t.value.notify_content=r),rows:"3",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border resize-none focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.notify_content]])])]),e("div",q,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 存储设置 ",2),e("div",J,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 存储路径 ",2),n(e("input",{type:"text",placeholder:"留空则使用默认路径,可不填写","onUpdate:modelValue":o[8]||(o[8]=r=>t.value.storage_path=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.storage_path]])]),e("div",O,[e("div",Q,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 存储方式 ",2),n(e("select",{"onUpdate:modelValue":o[9]||(o[9]=r=>t.value.file_storage=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border appearance-none bg-no-repeat bg-right focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none cursor-pointer",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]]),style:{"background-image":"url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M7%208l3%203%203-3%22%20stroke%3D%22%236B7280%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E')"}},o[34]||(o[34]=[e("option",{value:"local"},"本地存储",-1),e("option",{value:"s3"},"S3 存储",-1),e("option",{value:"webdav"},"Webdav 存储",-1)]),2),[[x,t.value.file_storage]])]),t.value.file_storage==="local"?(b(),c("div",X,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 开启切片上传(实验性功能,还在开发中,目前仅本地存储可用,可能会出现未知问题) ",2),e("div",Y,[e("button",{type:"button",onClick:o[10]||(o[10]=r=>t.value.enableChunk=t.value.enableChunk===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.enableChunk===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.enableChunk===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.enableChunk===1?"translate-x-5":"translate-x-0",l(s)&&t.value.enableChunk!==1?"bg-gray-100":"bg-white"]])},null,2)],10,Z),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.enableChunk===1?"已开启":"已关闭"),3)])])):h("",!0),t.value.file_storage==="webdav"?(b(),c("div",ee,[e("div",oe,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav URL ",2),n(e("input",{type:"text",placeholder:"请输入 Webdav URL","onUpdate:modelValue":o[11]||(o[11]=r=>t.value.webdav_url=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_url]])]),e("div",re,[e("div",te,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav Username ",2),n(e("input",{type:"text",placeholder:"请输入 Webdav Username","onUpdate:modelValue":o[12]||(o[12]=r=>t.value.webdav_username=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_username]])]),e("div",ae,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav Password ",2),n(e("input",{type:"password",placeholder:"请输入 Webdav Password","onUpdate:modelValue":o[13]||(o[13]=r=>t.value.webdav_password=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_password]])])])])):h("",!0),t.value.file_storage==="s3"?(b(),c("div",se,[e("div",le,[e("div",ne,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 EndpointUrl ",2),n(e("input",{type:"text","onUpdate:modelValue":o[14]||(o[14]=r=>t.value.s3_endpoint_url=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_endpoint_url]])]),e("div",de,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 AccessKeyId ",2),n(e("input",{type:"text","onUpdate:modelValue":o[15]||(o[15]=r=>t.value.s3_access_key_id=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_access_key_id]])]),e("div",ie,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 SecretAccessKey ",2),n(e("input",{type:"password","onUpdate:modelValue":o[16]||(o[16]=r=>t.value.s3_secret_access_key=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_secret_access_key]])]),e("div",ue,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 BucketName ",2),n(e("input",{type:"text","onUpdate:modelValue":o[17]||(o[17]=r=>t.value.s3_bucket_name=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_bucket_name]])]),e("div",ge,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Region Name ",2),n(e("input",{type:"text","onUpdate:modelValue":o[18]||(o[18]=r=>t.value.s3_region_name=r),placeholder:"auto",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_region_name]])]),e("div",ce,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 CDN URL ",2),n(e("input",{type:"text","onUpdate:modelValue":o[19]||(o[19]=r=>t.value.s3_cdn_url=r),placeholder:"https://cdn.example.com",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_cdn_url]])]),e("div",ye,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Signature Version ",2),n(e("select",{"onUpdate:modelValue":o[20]||(o[20]=r=>t.value.s3_signature_version=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[35]||(o[35]=[e("option",{value:"s3v2"},"S3v2",-1),e("option",{value:"s3v4"},"S3v4",-1)]),2),[[x,t.value.s3_signature_version]])]),e("div",be,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Hostname ",2),n(e("input",{type:"text","onUpdate:modelValue":o[21]||(o[21]=r=>t.value.s3_hostname=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_hostname]])]),e("div",pe,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 启用代理 ",2),e("div",ve,[e("button",{type:"button",onClick:o[22]||(o[22]=r=>t.value.s3_proxy=t.value.s3_proxy===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.s3_proxy===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.s3_proxy===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.s3_proxy===1?"translate-x-5":"translate-x-0",l(s)&&t.value.s3_proxy!==1?"bg-gray-100":"bg-white"]])},null,2)],10,me),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.s3_proxy===1?"已开启":"已关闭"),3)])])])])):h("",!0)])]),e("div",xe,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 上传限制 ",2),e("div",he,[e("div",fe,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 每分钟上传限制 ",2),e("div",we,[n(e("input",{type:"number","onUpdate:modelValue":o[23]||(o[23]=r=>t.value.uploadMinute=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.uploadMinute]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"分钟",2)])]),e("div",_e,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 上传数量限制 ",2),e("div",ke,[n(e("input",{type:"number","onUpdate:modelValue":o[24]||(o[24]=r=>t.value.uploadCount=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.uploadCount]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"个文件",2)])]),e("div",Ue,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 文件大小限制 ",2),e("div",Se,[n(e("input",{type:"number","onUpdate:modelValue":o[25]||(o[25]=r=>p.value=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,p.value]]),n(e("select",{"onUpdate:modelValue":o[26]||(o[26]=r=>v.value=r),class:a(["rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[36]||(o[36]=[e("option",{value:"KB"},"KB",-1),e("option",{value:"MB"},"MB",-1),e("option",{value:"GB"},"GB",-1)]),2),[[x,v.value]])])]),e("div",Ve,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 过期方式 ",2),e("div",Ce,[(b(),c(w,null,_(["day","hour","minute","forever","count"],r=>e("label",{key:r,class:"relative inline-flex items-center group cursor-pointer"},[n(e("input",{type:"checkbox",value:r,"onUpdate:modelValue":o[27]||(o[27]=D=>t.value.expireStyle=D),class:"peer sr-only"},null,8,De),[[A,t.value.expireStyle]]),e("div",{class:a(["px-4 py-2 rounded-full border-2 transition-all duration-200 select-none",[t.value.expireStyle.includes(r)?(l(s),"bg-indigo-600 border-indigo-600 text-white"):l(s)?"bg-gray-700 border-gray-600 text-gray-300 hover:border-indigo-500":"bg-white border-gray-300 text-gray-700 hover:border-indigo-500"]])},y({day:"按天",hour:"按小时",minute:"按分钟",forever:"永久",count:"按次数"}[r]),3)])),64))])]),e("div",Be,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 最长保存时间 ",2),e("div",Me,[n(e("input",{type:"number","onUpdate:modelValue":o[28]||(o[28]=r=>u.value=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,u.value]]),n(e("select",{"onUpdate:modelValue":o[29]||(o[29]=r=>g.value=r),class:a(["rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[37]||(o[37]=[e("option",{value:"秒"},"秒",-1),e("option",{value:"分"},"分",-1),e("option",{value:"时"},"时",-1),e("option",{value:"天"},"天",-1)]),2),[[x,g.value]])])]),e("div",Fe,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 游客上传 ",2),e("div",Ae,[e("button",{type:"button",onClick:o[30]||(o[30]=r=>t.value.openUpload=t.value.openUpload===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.openUpload===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.openUpload===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.openUpload===1?"translate-x-5":"translate-x-0",l(s)&&t.value.openUpload!==1?"bg-gray-100":"bg-white"]])},null,2)],10,ze),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.openUpload===1?"已开启":"已关闭"),3)])])])]),e("div",Ee,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 错误限制 ",2),e("div",Te,[e("div",We,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 每分钟错误限制 ",2),e("div",Ke,[n(e("input",{type:"number","onUpdate:modelValue":o[31]||(o[31]=r=>t.value.errorMinute=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.errorMinute]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"分钟",2)])]),e("div",Ne,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 错误次数限制 ",2),e("div",Ie,[n(e("input",{type:"number","onUpdate:modelValue":o[32]||(o[32]=r=>t.value.errorCount=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.errorCount]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"次",2)])])])]),e("div",{class:"flex justify-end mt-8"},[e("button",{onClick:C,class:"px-4 py-2 bg-indigo-600 text-white rounded-md hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 transition-colors duration-200"}," 保存设置 ")])])],2)]))}});export{Ge as default}; diff --git a/themes/2025/assets/SystemSettingsView-DJ12QIQD.js b/themes/2025/assets/SystemSettingsView-DJ12QIQD.js deleted file mode 100644 index e19da2128..000000000 --- a/themes/2025/assets/SystemSettingsView-DJ12QIQD.js +++ /dev/null @@ -1 +0,0 @@ -import{d as B,r as m,u as M,a as c,b as e,n as a,h as l,i as F,m as n,v as d,p as x,F as w,s as _,l as h,t as y,C as k,N as A,e as b}from"./index-C-4-823a.js";const z={class:"p-6 h-screen custom-scrollbar"},E={class:"space-y-4"},T={class:"grid grid-cols-1 gap-6"},W={class:"space-y-2"},K={class:"space-y-2"},N={class:"space-y-2"},I={class:"relative"},R={class:"space-y-2"},j={class:"space-y-2"},G=["value"],L={class:"space-y-2"},$={class:"grid grid-cols-1 gap-6 mt-8"},P={class:"space-y-2"},H={class:"space-y-2"},q={class:"space-y-4"},J={class:"space-y-2"},O={class:"space-y-4"},Q={class:"space-y-2"},X={key:0,class:"space-y-2"},Y={class:"flex items-center"},Z=["aria-checked"],ee={key:1,class:"space-y-4"},oe={class:"space-y-2"},re={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},te={class:"space-y-2"},ae={class:"space-y-2"},se={key:2,class:"space-y-4"},le={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},ne={class:"space-y-2"},de={class:"space-y-2"},ie={class:"space-y-2"},ue={class:"space-y-2"},ge={class:"space-y-2"},ce={class:"space-y-2"},ye={class:"space-y-2"},be={class:"space-y-2"},pe={class:"space-y-2"},ve={class:"flex items-center"},me=["aria-checked"],xe={class:"mt-8"},he={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},fe={class:"space-y-2"},we={class:"flex items-center space-x-2"},_e={class:"space-y-2"},ke={class:"flex items-center space-x-2"},Ue={class:"space-y-2"},Se={class:"flex items-center space-x-2"},Ve={class:"space-y-2"},Ce={class:"flex flex-wrap gap-3"},De=["value"],Be={class:"space-y-2"},Me={class:"flex items-center space-x-2"},Fe={class:"space-y-2"},Ae={class:"flex items-center"},ze=["aria-checked"],Ee={class:"mt-8"},Te={class:"grid grid-cols-1 md:grid-cols-2 gap-6"},We={class:"space-y-2"},Ke={class:"flex items-center space-x-2"},Ne={class:"space-y-2"},Ie={class:"flex items-center space-x-2"},Ge=B({__name:"SystemSettingsView",setup(Re){const s=F("isDarkMode"),t=m({name:"",description:"",file_storage:"",webdav_url:"",webdav_username:"",webdav_password:"",themesChoices:[],expireStyle:[],admin_token:"",robotsText:"",keywords:"",notify_title:"",storage_path:"",notify_content:"",openUpload:1,uploadSize:1,enableChunk:0,uploadMinute:1,max_save_seconds:0,opacity:.9,s3_access_key_id:"",background:"",showAdminAddr:0,page_explain:"",s3_secret_access_key:"",aws_session_token:"",s3_signature_version:"",s3_region_name:"",s3_bucket_name:"",s3_endpoint_url:"",s3_hostname:"",s3_cdn_url:"",uploadCount:1,errorMinute:1,errorCount:1,s3_proxy:0,themesSelect:""}),p=m(1),v=m("MB"),u=m(1),g=m("天"),U=(i,o)=>i*{秒:1,分:60,时:3600,天:86400}[o],S=()=>{k({url:"admin/config/get",method:"get"}).then(i=>{t.value=i.detail;let o=t.value.uploadSize;o>=1024*1024*1024?(p.value=Math.round(o/(1024*1024*1024)),v.value="GB"):o>=1024*1024?(p.value=Math.round(o/(1024*1024)),v.value="MB"):(p.value=Math.round(o/1024),v.value="KB");let r=t.value.max_save_seconds;r===0?(u.value=7,g.value="天"):r%86400===0&&r>=86400?(u.value=r/86400,g.value="天"):r%3600===0&&r>=3600?(u.value=r/3600,g.value="时"):r%60===0&&r>=60?(u.value=r/60,g.value="分"):(u.value=r,g.value="秒")})},f=M(),V=(i,o)=>i*{KB:1024,MB:1048576,GB:1073741824}[o],C=()=>{const i={...t.value};i.uploadSize=V(p.value,v.value),u.value===0?i.max_save_seconds=7*86400:i.max_save_seconds=U(u.value,g.value),k({url:"admin/config/update",method:"patch",data:i}).then(o=>{o.code==200?f.showAlert("保存成功","success"):f.showAlert(o.message,"error")})};return S(),(i,o)=>(b(),c("div",z,[e("h2",{class:a(["text-2xl font-bold mb-6",[l(s)?"text-white":"text-gray-800"]])}," 系统设置 ",2),e("div",{class:a(["rounded-lg shadow-md p-6",[l(s)?"bg-gray-800 bg-opacity-70":"bg-white"]])},[e("section",E,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 基本设置 ",2),e("div",T,[e("div",W,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 网站名称 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[0]||(o[0]=r=>t.value.name=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.name]])]),e("div",K,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 网站描述 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[1]||(o[1]=r=>t.value.description=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.description]])]),e("div",N,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 管理员密码 ",2),e("div",I,[n(e("input",{type:"password",minlength:"6","onUpdate:modelValue":o[2]||(o[2]=r=>t.value.admin_token=r),placeholder:"留空则不修改密码",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.admin_token]]),e("div",{class:a(["absolute inset-y-0 right-0 flex items-center pr-3 text-sm text-gray-400",[l(s)?"text-gray-500":"text-gray-400"]])},o[33]||(o[33]=[e("span",{class:"text-xs"},"留空则不修改",-1)]),2)])]),e("div",R,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 关键词 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[3]||(o[3]=r=>t.value.keywords=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.keywords]])]),e("div",j,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 主题选择 ",2),n(e("select",{"onUpdate:modelValue":o[4]||(o[4]=r=>t.value.themesSelect=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border appearance-none bg-no-repeat bg-right focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none cursor-pointer",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]]),style:{"background-image":"url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M7%208l3%203%203-3%22%20stroke%3D%22%236B7280%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E')"}},[(b(!0),c(w,null,_(t.value.themesChoices,r=>(b(),c("option",{value:r.key,key:r.key},y(r.name)+" (by "+y(r.author)+" V"+y(r.version)+") ",9,G))),128))],2),[[x,t.value.themesSelect]])]),e("div",L,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Robots.txt ",2),n(e("textarea",{"onUpdate:modelValue":o[5]||(o[5]=r=>t.value.robotsText=r),rows:"3",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border resize-none focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.robotsText]])])]),e("div",$,[e("div",P,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 通知标题 ",2),n(e("input",{type:"text","onUpdate:modelValue":o[6]||(o[6]=r=>t.value.notify_title=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.notify_title]])]),e("div",H,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 通知内容 ",2),n(e("textarea",{"onUpdate:modelValue":o[7]||(o[7]=r=>t.value.notify_content=r),rows:"3",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border resize-none focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.notify_content]])])]),e("div",q,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 存储设置 ",2),e("div",J,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 存储路径 ",2),n(e("input",{type:"text",placeholder:"留空则使用默认路径,可不填写","onUpdate:modelValue":o[8]||(o[8]=r=>t.value.storage_path=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.storage_path]])]),e("div",O,[e("div",Q,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 存储方式 ",2),n(e("select",{"onUpdate:modelValue":o[9]||(o[9]=r=>t.value.file_storage=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border appearance-none bg-no-repeat bg-right focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none cursor-pointer",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]]),style:{"background-image":"url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M7%208l3%203%203-3%22%20stroke%3D%22%236B7280%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E')"}},o[34]||(o[34]=[e("option",{value:"local"},"本地存储",-1),e("option",{value:"s3"},"S3 存储",-1),e("option",{value:"webdav"},"Webdav 存储",-1)]),2),[[x,t.value.file_storage]])]),t.value.file_storage==="local"?(b(),c("div",X,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 开启切片上传(实验性功能,还在开发中,目前仅本地存储可用,可能会出现未知问题) ",2),e("div",Y,[e("button",{type:"button",onClick:o[10]||(o[10]=r=>t.value.enableChunk=t.value.enableChunk===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.enableChunk===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.enableChunk===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.enableChunk===1?"translate-x-5":"translate-x-0",l(s)&&t.value.enableChunk!==1?"bg-gray-100":"bg-white"]])},null,2)],10,Z),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.enableChunk===1?"已开启":"已关闭"),3)])])):h("",!0),t.value.file_storage==="webdav"?(b(),c("div",ee,[e("div",oe,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav URL ",2),n(e("input",{type:"text",placeholder:"请输入 Webdav URL","onUpdate:modelValue":o[11]||(o[11]=r=>t.value.webdav_url=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_url]])]),e("div",re,[e("div",te,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav Username ",2),n(e("input",{type:"text",placeholder:"请输入 Webdav Username","onUpdate:modelValue":o[12]||(o[12]=r=>t.value.webdav_username=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_username]])]),e("div",ae,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," Webdav Password ",2),n(e("input",{type:"password",placeholder:"请输入 Webdav Password","onUpdate:modelValue":o[13]||(o[13]=r=>t.value.webdav_password=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.webdav_password]])])])])):h("",!0),t.value.file_storage==="s3"?(b(),c("div",se,[e("div",le,[e("div",ne,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 EndpointUrl ",2),n(e("input",{type:"text","onUpdate:modelValue":o[14]||(o[14]=r=>t.value.s3_endpoint_url=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_endpoint_url]])]),e("div",de,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 AccessKeyId ",2),n(e("input",{type:"text","onUpdate:modelValue":o[15]||(o[15]=r=>t.value.s3_access_key_id=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_access_key_id]])]),e("div",ie,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 SecretAccessKey ",2),n(e("input",{type:"password","onUpdate:modelValue":o[16]||(o[16]=r=>t.value.s3_secret_access_key=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_secret_access_key]])]),e("div",ue,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 BucketName ",2),n(e("input",{type:"text","onUpdate:modelValue":o[17]||(o[17]=r=>t.value.s3_bucket_name=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_bucket_name]])]),e("div",ge,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Region Name ",2),n(e("input",{type:"text","onUpdate:modelValue":o[18]||(o[18]=r=>t.value.s3_region_name=r),placeholder:"auto",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_region_name]])]),e("div",ce,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 CDN URL ",2),n(e("input",{type:"text","onUpdate:modelValue":o[19]||(o[19]=r=>t.value.s3_cdn_url=r),placeholder:"https://cdn.example.com",class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_cdn_url]])]),e("div",ye,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Signature Version ",2),n(e("select",{"onUpdate:modelValue":o[20]||(o[20]=r=>t.value.s3_signature_version=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[35]||(o[35]=[e("option",{value:"s3v2"},"S3v2",-1),e("option",{value:"s3v4"},"S3v4",-1)]),2),[[x,t.value.s3_signature_version]])]),e("div",be,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," S3 Hostname ",2),n(e("input",{type:"text","onUpdate:modelValue":o[21]||(o[21]=r=>t.value.s3_hostname=r),class:a(["w-full rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.s3_hostname]])]),e("div",pe,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 启用代理 ",2),e("div",ve,[e("button",{type:"button",onClick:o[22]||(o[22]=r=>t.value.s3_proxy=t.value.s3_proxy===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.s3_proxy===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.s3_proxy===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.s3_proxy===1?"translate-x-5":"translate-x-0",l(s)&&t.value.s3_proxy!==1?"bg-gray-100":"bg-white"]])},null,2)],10,me),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.s3_proxy===1?"已开启":"已关闭"),3)])])])])):h("",!0)])]),e("div",xe,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 上传限制 ",2),e("div",he,[e("div",fe,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 每分钟上传限制 ",2),e("div",we,[n(e("input",{type:"number","onUpdate:modelValue":o[23]||(o[23]=r=>t.value.uploadMinute=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.uploadMinute]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"分钟",2)])]),e("div",_e,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 上传数量限制 ",2),e("div",ke,[n(e("input",{type:"number","onUpdate:modelValue":o[24]||(o[24]=r=>t.value.uploadCount=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.uploadCount]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"个文件",2)])]),e("div",Ue,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 文件大小限制 ",2),e("div",Se,[n(e("input",{type:"number","onUpdate:modelValue":o[25]||(o[25]=r=>p.value=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,p.value]]),n(e("select",{"onUpdate:modelValue":o[26]||(o[26]=r=>v.value=r),class:a(["rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[36]||(o[36]=[e("option",{value:"KB"},"KB",-1),e("option",{value:"MB"},"MB",-1),e("option",{value:"GB"},"GB",-1)]),2),[[x,v.value]])])]),e("div",Ve,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 过期方式 ",2),e("div",Ce,[(b(),c(w,null,_(["day","hour","minute","forever","count"],r=>e("label",{key:r,class:"relative inline-flex items-center group cursor-pointer"},[n(e("input",{type:"checkbox",value:r,"onUpdate:modelValue":o[27]||(o[27]=D=>t.value.expireStyle=D),class:"peer sr-only"},null,8,De),[[A,t.value.expireStyle]]),e("div",{class:a(["px-4 py-2 rounded-full border-2 transition-all duration-200 select-none",[t.value.expireStyle.includes(r)?(l(s),"bg-indigo-600 border-indigo-600 text-white"):l(s)?"bg-gray-700 border-gray-600 text-gray-300 hover:border-indigo-500":"bg-white border-gray-300 text-gray-700 hover:border-indigo-500"]])},y({day:"按天",hour:"按小时",minute:"按分钟",forever:"永久",count:"按次数"}[r]),3)])),64))])]),e("div",Be,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 最长保存时间 ",2),e("div",Me,[n(e("input",{type:"number","onUpdate:modelValue":o[28]||(o[28]=r=>u.value=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,u.value]]),n(e("select",{"onUpdate:modelValue":o[29]||(o[29]=r=>g.value=r),class:a(["rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white hover:border-gray-500":"border-gray-300 hover:border-gray-400"]])},o[37]||(o[37]=[e("option",{value:"秒"},"秒",-1),e("option",{value:"分"},"分",-1),e("option",{value:"时"},"时",-1),e("option",{value:"天"},"天",-1)]),2),[[x,g.value]])])]),e("div",Fe,[e("label",{class:a(["block text-sm font-medium mb-2",[l(s)?"text-gray-300":"text-gray-700"]])}," 游客上传 ",2),e("div",Ae,[e("button",{type:"button",onClick:o[30]||(o[30]=r=>t.value.openUpload=t.value.openUpload===1?0:1),class:a(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2",[t.value.openUpload===1?"bg-indigo-600":"bg-gray-200"]]),role:"switch","aria-checked":t.value.openUpload===1},[e("span",{class:a(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[t.value.openUpload===1?"translate-x-5":"translate-x-0",l(s)&&t.value.openUpload!==1?"bg-gray-100":"bg-white"]])},null,2)],10,ze),e("span",{class:a(["ml-3 text-sm",[l(s)?"text-gray-300":"text-gray-700"]])},y(t.value.openUpload===1?"已开启":"已关闭"),3)])])])]),e("div",Ee,[e("h3",{class:a(["text-lg font-medium mb-4",[l(s)?"text-white":"text-gray-800"]])}," 错误限制 ",2),e("div",Te,[e("div",We,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 每分钟错误限制 ",2),e("div",Ke,[n(e("input",{type:"number","onUpdate:modelValue":o[31]||(o[31]=r=>t.value.errorMinute=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.errorMinute]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"分钟",2)])]),e("div",Ne,[e("label",{class:a(["block text-sm font-medium",[l(s)?"text-gray-300":"text-gray-700"]])}," 错误次数限制 ",2),e("div",Ie,[n(e("input",{type:"number","onUpdate:modelValue":o[32]||(o[32]=r=>t.value.errorCount=r),class:a(["w-24 rounded-md shadow-sm px-4 py-2.5 transition-all duration-200 ease-in-out border focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 outline-none",[l(s)?"bg-gray-700 border-gray-600 text-white placeholder-gray-400 hover:border-gray-500":"border-gray-300 hover:border-gray-400 placeholder-gray-500"]])},null,2),[[d,t.value.errorCount]]),e("span",{class:a([l(s)?"text-gray-300":"text-gray-700"])},"次",2)])])])]),e("div",{class:"flex justify-end mt-8"},[e("button",{onClick:C,class:"px-4 py-2 bg-indigo-600 text-white rounded-md hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 transition-colors duration-200"}," 保存设置 ")])])],2)]))}});export{Ge as default}; diff --git a/themes/2025/assets/box-Ty09a89y.js b/themes/2025/assets/box-Ty09a89y.js deleted file mode 100644 index d6e2f5592..000000000 --- a/themes/2025/assets/box-Ty09a89y.js +++ /dev/null @@ -1,6 +0,0 @@ -import{c as a}from"./index-DKQ1YPO4.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const o=a("BoxIcon",[["path",{d:"M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",key:"hh9hay"}],["path",{d:"m3.3 7 8.7 5 8.7-5",key:"g66t2b"}],["path",{d:"M12 22V12",key:"d0xqtd"}]]);export{o as B}; diff --git a/themes/2025/assets/box-Btnwq7DC.js b/themes/2025/assets/box-tSoVvdHE.js similarity index 90% rename from themes/2025/assets/box-Btnwq7DC.js rename to themes/2025/assets/box-tSoVvdHE.js index 59fdad23c..2398b604e 100644 --- a/themes/2025/assets/box-Btnwq7DC.js +++ b/themes/2025/assets/box-tSoVvdHE.js @@ -1,4 +1,4 @@ -import{c as a}from"./index-C-4-823a.js";/** +import{c as a}from"./index-BAgz5Ib8.js";/** * @license lucide-vue-next v0.445.0 - ISC * * This source code is licensed under the ISC license. diff --git a/themes/2025/assets/clipboard-BhvW87y2.js b/themes/2025/assets/clipboard-ClFPPG_0.js similarity index 89% rename from themes/2025/assets/clipboard-BhvW87y2.js rename to themes/2025/assets/clipboard-ClFPPG_0.js index 4b26c06d8..e4c27aa66 100644 --- a/themes/2025/assets/clipboard-BhvW87y2.js +++ b/themes/2025/assets/clipboard-ClFPPG_0.js @@ -1,4 +1,4 @@ -import{c as F,d as Q,G as R,r as _,H as $,o as Z,F as j,I as ee,J as Y,u as K}from"./index-DKQ1YPO4.js";/** +import{c as F,d as Q,G as R,r as _,H as K,o as Z,F as j,I as ee,J as $,u as W}from"./index-BAgz5Ib8.js";/** * @license lucide-vue-next v0.445.0 - ISC * * This source code is licensed under the ISC license. @@ -18,4 +18,4 @@ import{c as F,d as Q,G as R,r as _,H as $,o as Z,F as j,I as ee,J as Y,u as K}fr * A Vue.js component to generate QRCode. Both support Vue 2 and Vue 3 * © 2017-PRESENT @scopewu(https://github.com/scopewu) * MIT License. - */var N=function(){return N=Object.assign||function(c){for(var u,l=1,f=arguments.length;la.MAX_VERSION)throw new RangeError("Version value out of range");if(n<-1||n>7)throw new RangeError("Mask value out of range");this.size=e*4+17;for(var i=[],s=0;s7)throw new RangeError("Invalid value");var h,g;for(h=r;;h++){var p=a.getNumDataCodewords(h,t)*8,w=d.getTotalBits(e,h);if(w<=p){g=w;break}if(h>=n)throw new RangeError("Data too long")}for(var C=0,M=[a.Ecc.MEDIUM,a.Ecc.QUARTILE,a.Ecc.HIGH];C>>3]|=k<<7-(L&7)}),new a(h,t,z,i)},a.prototype.getModule=function(e,t){return 0<=e&&e>>9)*1335;var i=(t<<10|r)^21522;f(i>>>15==0);for(var n=0;n<=5;n++)this.setFunctionModule(8,n,l(i,n));this.setFunctionModule(8,7,l(i,6)),this.setFunctionModule(8,8,l(i,7)),this.setFunctionModule(7,8,l(i,8));for(var n=9;n<15;n++)this.setFunctionModule(14-n,8,l(i,n));for(var n=0;n<8;n++)this.setFunctionModule(this.size-1-n,8,l(i,n));for(var n=8;n<15;n++)this.setFunctionModule(8,this.size-15+n,l(i,n));this.setFunctionModule(8,this.size-8,!0)},a.prototype.drawVersion=function(){if(!(this.version<7)){for(var e=this.version,t=0;t<12;t++)e=e<<1^(e>>>11)*7973;var r=this.version<<12|e;f(r>>>18==0);for(var t=0;t<18;t++){var n=l(r,t),i=this.size-11+t%3,s=Math.floor(t/3);this.setFunctionModule(i,s,n),this.setFunctionModule(s,i,n)}}},a.prototype.drawFinderPattern=function(e,t){for(var r=-4;r<=4;r++)for(var n=-4;n<=4;n++){var i=Math.max(Math.abs(n),Math.abs(r)),s=e+n,h=t+r;0<=s&&s=h)&&E.push(P[y])})},C=0;C=1;r-=2){r==6&&(r=5);for(var n=0;n>>3],7-(t&7)),t++)}}f(t==e.length*8)},a.prototype.applyMask=function(e){if(e<0||e>7)throw new RangeError("Mask value out of range");for(var t=0;t5&&e++):(this.finderPenaltyAddHistory(n,i),r||(e+=this.finderPenaltyCountPatterns(i)*a.PENALTY_N3),r=this.modules[t][s],n=1);e+=this.finderPenaltyTerminateAndCount(r,n,i)*a.PENALTY_N3}for(var s=0;s5&&e++):(this.finderPenaltyAddHistory(h,i),r||(e+=this.finderPenaltyCountPatterns(i)*a.PENALTY_N3),r=this.modules[t][s],h=1);e+=this.finderPenaltyTerminateAndCount(r,h,i)*a.PENALTY_N3}for(var t=0;ta.MAX_VERSION)throw new RangeError("Version number out of range");var t=(16*e+128)*e+64;if(e>=2){var r=Math.floor(e/7)+2;t-=(25*r-10)*r-55,e>=7&&(t-=36)}return f(208<=t&&t<=29648),t},a.getNumDataCodewords=function(e,t){return Math.floor(a.getNumRawDataModules(e)/8)-a.ECC_CODEWORDS_PER_BLOCK[t.ordinal][e]*a.NUM_ERROR_CORRECTION_BLOCKS[t.ordinal][e]},a.reedSolomonComputeDivisor=function(e){if(e<1||e>255)throw new RangeError("Degree out of range");for(var t=[],r=0;r>>8||t>>>8)throw new RangeError("Byte out of range");for(var r=0,n=7;n>=0;n--)r=r<<1^(r>>>7)*285,r^=(t>>>n&1)*e;return f(r>>>8==0),r},a.prototype.finderPenaltyCountPatterns=function(e){var t=e[1];f(t<=this.size*3);var r=t>0&&e[2]==t&&e[3]==t*3&&e[4]==t&&e[5]==t;return(r&&e[0]>=t*4&&e[6]>=t?1:0)+(r&&e[6]>=t*4&&e[0]>=t?1:0)},a.prototype.finderPenaltyTerminateAndCount=function(e,t,r){return e&&(this.finderPenaltyAddHistory(t,r),t=0),t+=this.size,this.finderPenaltyAddHistory(t,r),this.finderPenaltyCountPatterns(r)},a.prototype.finderPenaltyAddHistory=function(e,t){t[0]==0&&(e+=this.size),t.pop(),t.unshift(e)},a.MIN_VERSION=1,a.MAX_VERSION=40,a.PENALTY_N1=3,a.PENALTY_N2=3,a.PENALTY_N3=40,a.PENALTY_N4=10,a.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],a.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],a}();o.QrCode=c;function u(a,e,t){if(e<0||e>31||a>>>e)throw new RangeError("Value out of range");for(var r=e-1;r>=0;r--)t.push(a>>>r&1)}function l(a,e){return(a>>>e&1)!=0}function f(a){if(!a)throw new Error("Assertion error")}var d=function(){function a(e,t,r){if(this.mode=e,this.numChars=t,this.bitData=r,t<0)throw new RangeError("Invalid argument");this.bitData=r.slice()}return a.makeBytes=function(e){for(var t=[],r=0,n=e;r=1<=c.y+c.h?u:u.map(function(f,d){return d=c.x+c.w?f:!1})})}var G={value:{type:String,required:!0,default:""},size:{type:Number,default:100},level:{type:String,default:U,validator:function(o){return x(o)}},background:{type:String,default:"#fff"},foreground:{type:String,default:"#000"},margin:{type:Number,required:!1,default:0},imageSettings:{type:Object,required:!1,default:function(){return{}}},gradient:{type:Boolean,required:!1,default:!1},gradientType:{type:String,required:!1,default:"linear",validator:function(o){return["linear","radial"].indexOf(o)>-1}},gradientStartColor:{type:String,required:!1,default:"#000"},gradientEndColor:{type:String,required:!1,default:"#fff"}},re=N(N({},G),{renderAs:{type:String,required:!1,default:"canvas",validator:function(o){return["canvas","svg"].indexOf(o)>-1}}}),ae=Q({name:"QRCodeSvg",props:G,setup:function(o){var c=_(0),u=_(""),l,f=function(){var a=o.value,e=o.level,t=o.margin,r=t>>>0,n=x(e)?e:U,i=O.QrCode.encodeText(a,H[n]).getModules();if(c.value=i.length+r*2,o.imageSettings.src){var s=J(i,o.size,r,o.imageSettings);l={x:s.x+r,y:s.y+r,width:s.w,height:s.h},s.excavation&&(i=q(i,s.excavation))}u.value=W(i,r)},d=function(){if(!o.gradient)return null;var a=o.gradientType==="linear"?{x1:"0%",y1:"0%",x2:"100%",y2:"100%"}:{cx:"50%",cy:"50%",r:"50%",fx:"50%",fy:"50%"};return R(o.gradientType==="linear"?"linearGradient":"radialGradient",N({id:"qr-gradient"},a),[R("stop",{offset:"0%",style:{stopColor:o.gradientStartColor}}),R("stop",{offset:"100%",style:{stopColor:o.gradientEndColor}})])};return f(),$(f),function(){return R("svg",{width:o.size,height:o.size,"shape-rendering":"crispEdges",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(c.value," ").concat(c.value)},[R("defs",{},[d()]),R("rect",{width:"100%",height:"100%",fill:o.background}),R("path",{fill:o.gradient?"url(#qr-gradient)":o.foreground,d:u.value}),o.imageSettings.src&&R("image",N({href:o.imageSettings.src},l))])}}}),ne=Q({name:"QRCodeCanvas",props:G,setup:function(o,c){var u=_(null),l=_(null),f=function(){var a=o.value,e=o.level,t=o.size,r=o.margin,n=o.background,i=o.foreground,s=o.gradient,h=o.gradientType,g=o.gradientStartColor,p=o.gradientEndColor,w=r>>>0,C=x(e)?e:U,M=u.value;if(M){var m=M.getContext("2d");if(m){var v=O.QrCode.encodeText(a,H[C]).getModules(),E=v.length+w*2,S=l.value,y={x:0,y:0,width:0,height:0},P=o.imageSettings.src&&S!=null&&S.naturalWidth!==0&&S.naturalHeight!==0;if(P){var A=J(v,o.size,w,o.imageSettings);y={x:A.x+w,y:A.y+w,width:A.w,height:A.h},A.excavation&&(v=q(v,A.excavation))}var D=window.devicePixelRatio||1,T=t/E*D;if(M.height=M.width=t*D,m.scale(T,T),m.fillStyle=n,m.fillRect(0,0,E,E),s){var I=void 0;h==="linear"?I=m.createLinearGradient(0,0,E,E):I=m.createRadialGradient(E/2,E/2,0,E/2,E/2,E/2),I.addColorStop(0,g),I.addColorStop(1,p),m.fillStyle=I}else m.fillStyle=i;te?m.fill(new Path2D(W(v,w))):v.forEach(function(z,k){z.forEach(function(L,X){L&&m.fillRect(X+w,k+w,1,1)})}),P&&m.drawImage(S,y.x,y.y,y.width,y.height)}}};Z(f),$(f);var d=c.attrs.style;return function(){return R(j,[R("canvas",N(N({},c.attrs),{ref:u,style:N(N({},d),{width:"".concat(o.size,"px"),height:"".concat(o.size,"px")})})),o.imageSettings.src&&R("img",{ref:l,src:o.imageSettings.src,style:{display:"none"},onLoad:f})])}}}),ce=Q({name:"Qrcode",render:function(){var o=this.$props,c=o.renderAs,u=o.value,l=o.size,f=o.margin,d=o.level,a=o.background,e=o.foreground,t=o.imageSettings,r=o.gradient,n=o.gradientType,i=o.gradientStartColor,s=o.gradientEndColor;return R(c==="svg"?ae:ne,{value:u,size:l,margin:f,level:d,background:a,foreground:e,imageSettings:t,gradient:r,gradientType:n,gradientStartColor:i,gradientEndColor:s})},props:re});const fe=ee("fileData",()=>{const o=Y(JSON.parse(localStorage.getItem("receiveData")||"[]")||[]),c=Y(JSON.parse(localStorage.getItem("shareData")||"[]")||[]);function u(){localStorage.setItem("receiveData",JSON.stringify(o)),localStorage.setItem("shareData",JSON.stringify(c))}function l(e){o.unshift(e),u()}function f(e){c.unshift(e),u()}function d(e){o.splice(e,1),u()}function a(e){c.splice(e,1),u()}return{receiveData:o,shareData:c,save:u,addShareData:f,addReceiveData:l,deleteReceiveData:d,deleteShareData:a}});K();const V=async(o,c={})=>{const{successMsg:u="复制成功",errorMsg:l="复制失败,请手动复制",showMsg:f=!0}=c,d=K();try{if(navigator.clipboard&&navigator.clipboard.writeText)return await navigator.clipboard.writeText(o),f&&d.showAlert(u,"success"),!0;const a=document.createElement("textarea");a.value=o,a.style.position="fixed",a.style.opacity="0",document.body.appendChild(a),a.select();const e=document.execCommand("copy");if(document.body.removeChild(a),e)return f&&d.showAlert(u,"success"),!0;throw new Error("execCommand copy failed")}catch(a){return console.error("复制失败:",a),f&&d.showAlert(l,"error"),!1}},de=async o=>{const c=`${window.location.origin}/#/?code=${o}`;return V(c,{successMsg:"取件链接已复制到剪贴板",errorMsg:"复制失败,请手动复制取件链接"})},he=async o=>V(o,{successMsg:"取件码已复制到剪贴板",errorMsg:"复制失败,请手动复制取件码"}),oe=window.location.origin+"/",ve=(o,c)=>{const u=`wget ${oe}share/select?code=${o} -O "${c}"`;navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText(u).then(()=>{console.log("命令已复制到剪贴板!")}).catch(l=>{console.error("复制失败,使用回退方法:",l),B(u)}):(console.warn("Clipboard API 不可用,使用回退方法。"),B(u))};function B(o){const c=document.createElement("textarea");c.value=o,c.style.position="fixed",document.body.appendChild(c),c.focus(),c.select();try{const u=document.execCommand("copy");console.log("回退复制操作成功:",u)}catch(u){console.error("回退复制操作失败:",u)}document.body.removeChild(c)}navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText("要复制的文本"):B("要复制的文本");export{se as C,le as E,ce as Q,ue as S,ve as a,de as b,he as c,V as d,fe as u}; + */var N=function(){return N=Object.assign||function(c){for(var u,l=1,f=arguments.length;la.MAX_VERSION)throw new RangeError("Version value out of range");if(n<-1||n>7)throw new RangeError("Mask value out of range");this.size=e*4+17;for(var i=[],s=0;s7)throw new RangeError("Invalid value");var h,g;for(h=r;;h++){var p=a.getNumDataCodewords(h,t)*8,w=d.getTotalBits(e,h);if(w<=p){g=w;break}if(h>=n)throw new RangeError("Data too long")}for(var C=0,M=[a.Ecc.MEDIUM,a.Ecc.QUARTILE,a.Ecc.HIGH];C>>3]|=k<<7-(L&7)}),new a(h,t,z,i)},a.prototype.getModule=function(e,t){return 0<=e&&e>>9)*1335;var i=(t<<10|r)^21522;f(i>>>15==0);for(var n=0;n<=5;n++)this.setFunctionModule(8,n,l(i,n));this.setFunctionModule(8,7,l(i,6)),this.setFunctionModule(8,8,l(i,7)),this.setFunctionModule(7,8,l(i,8));for(var n=9;n<15;n++)this.setFunctionModule(14-n,8,l(i,n));for(var n=0;n<8;n++)this.setFunctionModule(this.size-1-n,8,l(i,n));for(var n=8;n<15;n++)this.setFunctionModule(8,this.size-15+n,l(i,n));this.setFunctionModule(8,this.size-8,!0)},a.prototype.drawVersion=function(){if(!(this.version<7)){for(var e=this.version,t=0;t<12;t++)e=e<<1^(e>>>11)*7973;var r=this.version<<12|e;f(r>>>18==0);for(var t=0;t<18;t++){var n=l(r,t),i=this.size-11+t%3,s=Math.floor(t/3);this.setFunctionModule(i,s,n),this.setFunctionModule(s,i,n)}}},a.prototype.drawFinderPattern=function(e,t){for(var r=-4;r<=4;r++)for(var n=-4;n<=4;n++){var i=Math.max(Math.abs(n),Math.abs(r)),s=e+n,h=t+r;0<=s&&s=h)&&E.push(P[y])})},C=0;C=1;r-=2){r==6&&(r=5);for(var n=0;n>>3],7-(t&7)),t++)}}f(t==e.length*8)},a.prototype.applyMask=function(e){if(e<0||e>7)throw new RangeError("Mask value out of range");for(var t=0;t5&&e++):(this.finderPenaltyAddHistory(n,i),r||(e+=this.finderPenaltyCountPatterns(i)*a.PENALTY_N3),r=this.modules[t][s],n=1);e+=this.finderPenaltyTerminateAndCount(r,n,i)*a.PENALTY_N3}for(var s=0;s5&&e++):(this.finderPenaltyAddHistory(h,i),r||(e+=this.finderPenaltyCountPatterns(i)*a.PENALTY_N3),r=this.modules[t][s],h=1);e+=this.finderPenaltyTerminateAndCount(r,h,i)*a.PENALTY_N3}for(var t=0;ta.MAX_VERSION)throw new RangeError("Version number out of range");var t=(16*e+128)*e+64;if(e>=2){var r=Math.floor(e/7)+2;t-=(25*r-10)*r-55,e>=7&&(t-=36)}return f(208<=t&&t<=29648),t},a.getNumDataCodewords=function(e,t){return Math.floor(a.getNumRawDataModules(e)/8)-a.ECC_CODEWORDS_PER_BLOCK[t.ordinal][e]*a.NUM_ERROR_CORRECTION_BLOCKS[t.ordinal][e]},a.reedSolomonComputeDivisor=function(e){if(e<1||e>255)throw new RangeError("Degree out of range");for(var t=[],r=0;r>>8||t>>>8)throw new RangeError("Byte out of range");for(var r=0,n=7;n>=0;n--)r=r<<1^(r>>>7)*285,r^=(t>>>n&1)*e;return f(r>>>8==0),r},a.prototype.finderPenaltyCountPatterns=function(e){var t=e[1];f(t<=this.size*3);var r=t>0&&e[2]==t&&e[3]==t*3&&e[4]==t&&e[5]==t;return(r&&e[0]>=t*4&&e[6]>=t?1:0)+(r&&e[6]>=t*4&&e[0]>=t?1:0)},a.prototype.finderPenaltyTerminateAndCount=function(e,t,r){return e&&(this.finderPenaltyAddHistory(t,r),t=0),t+=this.size,this.finderPenaltyAddHistory(t,r),this.finderPenaltyCountPatterns(r)},a.prototype.finderPenaltyAddHistory=function(e,t){t[0]==0&&(e+=this.size),t.pop(),t.unshift(e)},a.MIN_VERSION=1,a.MAX_VERSION=40,a.PENALTY_N1=3,a.PENALTY_N2=3,a.PENALTY_N3=40,a.PENALTY_N4=10,a.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],a.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],a}();o.QrCode=c;function u(a,e,t){if(e<0||e>31||a>>>e)throw new RangeError("Value out of range");for(var r=e-1;r>=0;r--)t.push(a>>>r&1)}function l(a,e){return(a>>>e&1)!=0}function f(a){if(!a)throw new Error("Assertion error")}var d=function(){function a(e,t,r){if(this.mode=e,this.numChars=t,this.bitData=r,t<0)throw new RangeError("Invalid argument");this.bitData=r.slice()}return a.makeBytes=function(e){for(var t=[],r=0,n=e;r=1<=c.y+c.h?u:u.map(function(f,d){return d=c.x+c.w?f:!1})})}var G={value:{type:String,required:!0,default:""},size:{type:Number,default:100},level:{type:String,default:U,validator:function(o){return H(o)}},background:{type:String,default:"#fff"},foreground:{type:String,default:"#000"},margin:{type:Number,required:!1,default:0},imageSettings:{type:Object,required:!1,default:function(){return{}}},gradient:{type:Boolean,required:!1,default:!1},gradientType:{type:String,required:!1,default:"linear",validator:function(o){return["linear","radial"].indexOf(o)>-1}},gradientStartColor:{type:String,required:!1,default:"#000"},gradientEndColor:{type:String,required:!1,default:"#fff"}},re=N(N({},G),{renderAs:{type:String,required:!1,default:"canvas",validator:function(o){return["canvas","svg"].indexOf(o)>-1}}}),ae=Q({name:"QRCodeSvg",props:G,setup:function(o){var c=_(0),u=_(""),l,f=function(){var a=o.value,e=o.level,t=o.margin,r=t>>>0,n=H(e)?e:U,i=O.QrCode.encodeText(a,x[n]).getModules();if(c.value=i.length+r*2,o.imageSettings.src){var s=q(i,o.size,r,o.imageSettings);l={x:s.x+r,y:s.y+r,width:s.w,height:s.h},s.excavation&&(i=V(i,s.excavation))}u.value=J(i,r)},d=function(){if(!o.gradient)return null;var a=o.gradientType==="linear"?{x1:"0%",y1:"0%",x2:"100%",y2:"100%"}:{cx:"50%",cy:"50%",r:"50%",fx:"50%",fy:"50%"};return R(o.gradientType==="linear"?"linearGradient":"radialGradient",N({id:"qr-gradient"},a),[R("stop",{offset:"0%",style:{stopColor:o.gradientStartColor}}),R("stop",{offset:"100%",style:{stopColor:o.gradientEndColor}})])};return f(),K(f),function(){return R("svg",{width:o.size,height:o.size,"shape-rendering":"crispEdges",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(c.value," ").concat(c.value)},[R("defs",{},[d()]),R("rect",{width:"100%",height:"100%",fill:o.background}),R("path",{fill:o.gradient?"url(#qr-gradient)":o.foreground,d:u.value}),o.imageSettings.src&&R("image",N({href:o.imageSettings.src},l))])}}}),ne=Q({name:"QRCodeCanvas",props:G,setup:function(o,c){var u=_(null),l=_(null),f=function(){var a=o.value,e=o.level,t=o.size,r=o.margin,n=o.background,i=o.foreground,s=o.gradient,h=o.gradientType,g=o.gradientStartColor,p=o.gradientEndColor,w=r>>>0,C=H(e)?e:U,M=u.value;if(M){var m=M.getContext("2d");if(m){var v=O.QrCode.encodeText(a,x[C]).getModules(),E=v.length+w*2,S=l.value,y={x:0,y:0,width:0,height:0},P=o.imageSettings.src&&S!=null&&S.naturalWidth!==0&&S.naturalHeight!==0;if(P){var A=q(v,o.size,w,o.imageSettings);y={x:A.x+w,y:A.y+w,width:A.w,height:A.h},A.excavation&&(v=V(v,A.excavation))}var D=window.devicePixelRatio||1,T=t/E*D;if(M.height=M.width=t*D,m.scale(T,T),m.fillStyle=n,m.fillRect(0,0,E,E),s){var I=void 0;h==="linear"?I=m.createLinearGradient(0,0,E,E):I=m.createRadialGradient(E/2,E/2,0,E/2,E/2,E/2),I.addColorStop(0,g),I.addColorStop(1,p),m.fillStyle=I}else m.fillStyle=i;te?m.fill(new Path2D(J(v,w))):v.forEach(function(z,k){z.forEach(function(L,X){L&&m.fillRect(X+w,k+w,1,1)})}),P&&m.drawImage(S,y.x,y.y,y.width,y.height)}}};Z(f),K(f);var d=c.attrs.style;return function(){return R(j,[R("canvas",N(N({},c.attrs),{ref:u,style:N(N({},d),{width:"".concat(o.size,"px"),height:"".concat(o.size,"px")})})),o.imageSettings.src&&R("img",{ref:l,src:o.imageSettings.src,style:{display:"none"},onLoad:f})])}}}),ce=Q({name:"Qrcode",render:function(){var o=this.$props,c=o.renderAs,u=o.value,l=o.size,f=o.margin,d=o.level,a=o.background,e=o.foreground,t=o.imageSettings,r=o.gradient,n=o.gradientType,i=o.gradientStartColor,s=o.gradientEndColor;return R(c==="svg"?ae:ne,{value:u,size:l,margin:f,level:d,background:a,foreground:e,imageSettings:t,gradient:r,gradientType:n,gradientStartColor:i,gradientEndColor:s})},props:re});const fe=ee("fileData",()=>{const o=$(JSON.parse(localStorage.getItem("receiveData")||"[]")||[]),c=$(JSON.parse(localStorage.getItem("shareData")||"[]")||[]);function u(){localStorage.setItem("receiveData",JSON.stringify(o)),localStorage.setItem("shareData",JSON.stringify(c))}function l(e){o.unshift(e),u()}function f(e){c.unshift(e),u()}function d(e){o.splice(e,1),u()}function a(e){c.splice(e,1),u()}return{receiveData:o,shareData:c,save:u,addShareData:f,addReceiveData:l,deleteReceiveData:d,deleteShareData:a}});W();const Y=async(o,c={})=>{const{successMsg:u="复制成功",errorMsg:l="复制失败,请手动复制",showMsg:f=!0}=c,d=W();try{if(navigator.clipboard&&navigator.clipboard.writeText)return await navigator.clipboard.writeText(o),f&&d.showAlert(u,"success"),!0;const a=document.createElement("textarea");a.value=o,a.style.position="fixed",a.style.opacity="0",document.body.appendChild(a),a.select();const e=document.execCommand("copy");if(document.body.removeChild(a),e)return f&&d.showAlert(u,"success"),!0;throw new Error("execCommand copy failed")}catch(a){return console.error("复制失败:",a),f&&d.showAlert(l,"error"),!1}},de=async o=>{const c=`${window.location.origin}/#/?code=${o}`;return Y(c,{successMsg:"领粮链接已复制到剪贴板",errorMsg:"复制失败,请手动复制领粮链接"})},he=async o=>Y(o,{successMsg:"粮票号已复制到剪贴板",errorMsg:"复制失败,请手动复制粮票号"}),oe=window.location.origin+"/",ve=(o,c)=>{const u=`wget ${oe}share/select?code=${o} -O "${c}"`;navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText(u).then(()=>{console.log("命令已复制到剪贴板!")}).catch(l=>{console.error("复制失败,使用回退方法:",l),B(u)}):(console.warn("Clipboard API 不可用,使用回退方法。"),B(u))},ge=o=>Y(o,{successMsg:"文本已复制到剪贴板",errorMsg:"复制失败,请手动复制文本"});function B(o){const c=document.createElement("textarea");c.value=o,c.style.position="fixed",document.body.appendChild(c),c.focus(),c.select();try{const u=document.execCommand("copy");console.log("回退复制操作成功:",u)}catch(u){console.error("回退复制操作失败:",u)}document.body.removeChild(c)}navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText("要复制的文本"):B("要复制的文本");export{se as C,le as E,ce as Q,ue as S,ve as a,ge as b,he as c,de as d,Y as e,fe as u}; diff --git a/themes/2025/assets/clipboard-WGJncgVO.js b/themes/2025/assets/clipboard-WGJncgVO.js deleted file mode 100644 index e0c572f4b..000000000 --- a/themes/2025/assets/clipboard-WGJncgVO.js +++ /dev/null @@ -1,21 +0,0 @@ -import{c as F,d as Q,G as R,r as _,H as $,o as Z,F as j,I as ee,J as Y,u as K}from"./index-C-4-823a.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const se=F("ClipboardListIcon",[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"M12 11h4",key:"1jrz19"}],["path",{d:"M12 16h4",key:"n85exb"}],["path",{d:"M8 11h.01",key:"1dfujw"}],["path",{d:"M8 16h.01",key:"18s6g9"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const le=F("EyeIcon",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const ue=F("ShieldCheckIcon",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/*! - * qrcode.vue v3.6.0 - * A Vue.js component to generate QRCode. Both support Vue 2 and Vue 3 - * © 2017-PRESENT @scopewu(https://github.com/scopewu) - * MIT License. - */var N=function(){return N=Object.assign||function(c){for(var u,l=1,f=arguments.length;la.MAX_VERSION)throw new RangeError("Version value out of range");if(n<-1||n>7)throw new RangeError("Mask value out of range");this.size=e*4+17;for(var i=[],s=0;s7)throw new RangeError("Invalid value");var h,g;for(h=r;;h++){var p=a.getNumDataCodewords(h,t)*8,w=d.getTotalBits(e,h);if(w<=p){g=w;break}if(h>=n)throw new RangeError("Data too long")}for(var C=0,M=[a.Ecc.MEDIUM,a.Ecc.QUARTILE,a.Ecc.HIGH];C>>3]|=k<<7-(L&7)}),new a(h,t,z,i)},a.prototype.getModule=function(e,t){return 0<=e&&e>>9)*1335;var i=(t<<10|r)^21522;f(i>>>15==0);for(var n=0;n<=5;n++)this.setFunctionModule(8,n,l(i,n));this.setFunctionModule(8,7,l(i,6)),this.setFunctionModule(8,8,l(i,7)),this.setFunctionModule(7,8,l(i,8));for(var n=9;n<15;n++)this.setFunctionModule(14-n,8,l(i,n));for(var n=0;n<8;n++)this.setFunctionModule(this.size-1-n,8,l(i,n));for(var n=8;n<15;n++)this.setFunctionModule(8,this.size-15+n,l(i,n));this.setFunctionModule(8,this.size-8,!0)},a.prototype.drawVersion=function(){if(!(this.version<7)){for(var e=this.version,t=0;t<12;t++)e=e<<1^(e>>>11)*7973;var r=this.version<<12|e;f(r>>>18==0);for(var t=0;t<18;t++){var n=l(r,t),i=this.size-11+t%3,s=Math.floor(t/3);this.setFunctionModule(i,s,n),this.setFunctionModule(s,i,n)}}},a.prototype.drawFinderPattern=function(e,t){for(var r=-4;r<=4;r++)for(var n=-4;n<=4;n++){var i=Math.max(Math.abs(n),Math.abs(r)),s=e+n,h=t+r;0<=s&&s=h)&&E.push(P[y])})},C=0;C=1;r-=2){r==6&&(r=5);for(var n=0;n>>3],7-(t&7)),t++)}}f(t==e.length*8)},a.prototype.applyMask=function(e){if(e<0||e>7)throw new RangeError("Mask value out of range");for(var t=0;t5&&e++):(this.finderPenaltyAddHistory(n,i),r||(e+=this.finderPenaltyCountPatterns(i)*a.PENALTY_N3),r=this.modules[t][s],n=1);e+=this.finderPenaltyTerminateAndCount(r,n,i)*a.PENALTY_N3}for(var s=0;s5&&e++):(this.finderPenaltyAddHistory(h,i),r||(e+=this.finderPenaltyCountPatterns(i)*a.PENALTY_N3),r=this.modules[t][s],h=1);e+=this.finderPenaltyTerminateAndCount(r,h,i)*a.PENALTY_N3}for(var t=0;ta.MAX_VERSION)throw new RangeError("Version number out of range");var t=(16*e+128)*e+64;if(e>=2){var r=Math.floor(e/7)+2;t-=(25*r-10)*r-55,e>=7&&(t-=36)}return f(208<=t&&t<=29648),t},a.getNumDataCodewords=function(e,t){return Math.floor(a.getNumRawDataModules(e)/8)-a.ECC_CODEWORDS_PER_BLOCK[t.ordinal][e]*a.NUM_ERROR_CORRECTION_BLOCKS[t.ordinal][e]},a.reedSolomonComputeDivisor=function(e){if(e<1||e>255)throw new RangeError("Degree out of range");for(var t=[],r=0;r>>8||t>>>8)throw new RangeError("Byte out of range");for(var r=0,n=7;n>=0;n--)r=r<<1^(r>>>7)*285,r^=(t>>>n&1)*e;return f(r>>>8==0),r},a.prototype.finderPenaltyCountPatterns=function(e){var t=e[1];f(t<=this.size*3);var r=t>0&&e[2]==t&&e[3]==t*3&&e[4]==t&&e[5]==t;return(r&&e[0]>=t*4&&e[6]>=t?1:0)+(r&&e[6]>=t*4&&e[0]>=t?1:0)},a.prototype.finderPenaltyTerminateAndCount=function(e,t,r){return e&&(this.finderPenaltyAddHistory(t,r),t=0),t+=this.size,this.finderPenaltyAddHistory(t,r),this.finderPenaltyCountPatterns(r)},a.prototype.finderPenaltyAddHistory=function(e,t){t[0]==0&&(e+=this.size),t.pop(),t.unshift(e)},a.MIN_VERSION=1,a.MAX_VERSION=40,a.PENALTY_N1=3,a.PENALTY_N2=3,a.PENALTY_N3=40,a.PENALTY_N4=10,a.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],a.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],a}();o.QrCode=c;function u(a,e,t){if(e<0||e>31||a>>>e)throw new RangeError("Value out of range");for(var r=e-1;r>=0;r--)t.push(a>>>r&1)}function l(a,e){return(a>>>e&1)!=0}function f(a){if(!a)throw new Error("Assertion error")}var d=function(){function a(e,t,r){if(this.mode=e,this.numChars=t,this.bitData=r,t<0)throw new RangeError("Invalid argument");this.bitData=r.slice()}return a.makeBytes=function(e){for(var t=[],r=0,n=e;r=1<=c.y+c.h?u:u.map(function(f,d){return d=c.x+c.w?f:!1})})}var G={value:{type:String,required:!0,default:""},size:{type:Number,default:100},level:{type:String,default:U,validator:function(o){return x(o)}},background:{type:String,default:"#fff"},foreground:{type:String,default:"#000"},margin:{type:Number,required:!1,default:0},imageSettings:{type:Object,required:!1,default:function(){return{}}},gradient:{type:Boolean,required:!1,default:!1},gradientType:{type:String,required:!1,default:"linear",validator:function(o){return["linear","radial"].indexOf(o)>-1}},gradientStartColor:{type:String,required:!1,default:"#000"},gradientEndColor:{type:String,required:!1,default:"#fff"}},re=N(N({},G),{renderAs:{type:String,required:!1,default:"canvas",validator:function(o){return["canvas","svg"].indexOf(o)>-1}}}),ae=Q({name:"QRCodeSvg",props:G,setup:function(o){var c=_(0),u=_(""),l,f=function(){var a=o.value,e=o.level,t=o.margin,r=t>>>0,n=x(e)?e:U,i=O.QrCode.encodeText(a,H[n]).getModules();if(c.value=i.length+r*2,o.imageSettings.src){var s=J(i,o.size,r,o.imageSettings);l={x:s.x+r,y:s.y+r,width:s.w,height:s.h},s.excavation&&(i=q(i,s.excavation))}u.value=W(i,r)},d=function(){if(!o.gradient)return null;var a=o.gradientType==="linear"?{x1:"0%",y1:"0%",x2:"100%",y2:"100%"}:{cx:"50%",cy:"50%",r:"50%",fx:"50%",fy:"50%"};return R(o.gradientType==="linear"?"linearGradient":"radialGradient",N({id:"qr-gradient"},a),[R("stop",{offset:"0%",style:{stopColor:o.gradientStartColor}}),R("stop",{offset:"100%",style:{stopColor:o.gradientEndColor}})])};return f(),$(f),function(){return R("svg",{width:o.size,height:o.size,"shape-rendering":"crispEdges",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(c.value," ").concat(c.value)},[R("defs",{},[d()]),R("rect",{width:"100%",height:"100%",fill:o.background}),R("path",{fill:o.gradient?"url(#qr-gradient)":o.foreground,d:u.value}),o.imageSettings.src&&R("image",N({href:o.imageSettings.src},l))])}}}),ne=Q({name:"QRCodeCanvas",props:G,setup:function(o,c){var u=_(null),l=_(null),f=function(){var a=o.value,e=o.level,t=o.size,r=o.margin,n=o.background,i=o.foreground,s=o.gradient,h=o.gradientType,g=o.gradientStartColor,p=o.gradientEndColor,w=r>>>0,C=x(e)?e:U,M=u.value;if(M){var m=M.getContext("2d");if(m){var v=O.QrCode.encodeText(a,H[C]).getModules(),E=v.length+w*2,S=l.value,y={x:0,y:0,width:0,height:0},P=o.imageSettings.src&&S!=null&&S.naturalWidth!==0&&S.naturalHeight!==0;if(P){var A=J(v,o.size,w,o.imageSettings);y={x:A.x+w,y:A.y+w,width:A.w,height:A.h},A.excavation&&(v=q(v,A.excavation))}var D=window.devicePixelRatio||1,T=t/E*D;if(M.height=M.width=t*D,m.scale(T,T),m.fillStyle=n,m.fillRect(0,0,E,E),s){var I=void 0;h==="linear"?I=m.createLinearGradient(0,0,E,E):I=m.createRadialGradient(E/2,E/2,0,E/2,E/2,E/2),I.addColorStop(0,g),I.addColorStop(1,p),m.fillStyle=I}else m.fillStyle=i;te?m.fill(new Path2D(W(v,w))):v.forEach(function(z,k){z.forEach(function(L,X){L&&m.fillRect(X+w,k+w,1,1)})}),P&&m.drawImage(S,y.x,y.y,y.width,y.height)}}};Z(f),$(f);var d=c.attrs.style;return function(){return R(j,[R("canvas",N(N({},c.attrs),{ref:u,style:N(N({},d),{width:"".concat(o.size,"px"),height:"".concat(o.size,"px")})})),o.imageSettings.src&&R("img",{ref:l,src:o.imageSettings.src,style:{display:"none"},onLoad:f})])}}}),ce=Q({name:"Qrcode",render:function(){var o=this.$props,c=o.renderAs,u=o.value,l=o.size,f=o.margin,d=o.level,a=o.background,e=o.foreground,t=o.imageSettings,r=o.gradient,n=o.gradientType,i=o.gradientStartColor,s=o.gradientEndColor;return R(c==="svg"?ae:ne,{value:u,size:l,margin:f,level:d,background:a,foreground:e,imageSettings:t,gradient:r,gradientType:n,gradientStartColor:i,gradientEndColor:s})},props:re});const fe=ee("fileData",()=>{const o=Y(JSON.parse(localStorage.getItem("receiveData")||"[]")||[]),c=Y(JSON.parse(localStorage.getItem("shareData")||"[]")||[]);function u(){localStorage.setItem("receiveData",JSON.stringify(o)),localStorage.setItem("shareData",JSON.stringify(c))}function l(e){o.unshift(e),u()}function f(e){c.unshift(e),u()}function d(e){o.splice(e,1),u()}function a(e){c.splice(e,1),u()}return{receiveData:o,shareData:c,save:u,addShareData:f,addReceiveData:l,deleteReceiveData:d,deleteShareData:a}});K();const V=async(o,c={})=>{const{successMsg:u="复制成功",errorMsg:l="复制失败,请手动复制",showMsg:f=!0}=c,d=K();try{if(navigator.clipboard&&navigator.clipboard.writeText)return await navigator.clipboard.writeText(o),f&&d.showAlert(u,"success"),!0;const a=document.createElement("textarea");a.value=o,a.style.position="fixed",a.style.opacity="0",document.body.appendChild(a),a.select();const e=document.execCommand("copy");if(document.body.removeChild(a),e)return f&&d.showAlert(u,"success"),!0;throw new Error("execCommand copy failed")}catch(a){return console.error("复制失败:",a),f&&d.showAlert(l,"error"),!1}},de=async o=>{const c=`${window.location.origin}/#/?code=${o}`;return V(c,{successMsg:"取件链接已复制到剪贴板",errorMsg:"复制失败,请手动复制取件链接"})},he=async o=>V(o,{successMsg:"取件码已复制到剪贴板",errorMsg:"复制失败,请手动复制取件码"}),oe=window.location.origin+"/",ve=(o,c)=>{const u=`wget ${oe}share/select?code=${o} -O "${c}"`;navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText(u).then(()=>{console.log("命令已复制到剪贴板!")}).catch(l=>{console.error("复制失败,使用回退方法:",l),B(u)}):(console.warn("Clipboard API 不可用,使用回退方法。"),B(u))};function B(o){const c=document.createElement("textarea");c.value=o,c.style.position="fixed",document.body.appendChild(c),c.focus(),c.select();try{const u=document.execCommand("copy");console.log("回退复制操作成功:",u)}catch(u){console.error("回退复制操作失败:",u)}document.body.removeChild(c)}navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText("要复制的文本"):B("要复制的文本");export{se as C,le as E,ce as Q,ue as S,ve as a,de as b,he as c,V as d,fe as u}; diff --git a/themes/2025/assets/file-D8mQlyUF.js b/themes/2025/assets/file-D8mQlyUF.js deleted file mode 100644 index 6b04f2e0e..000000000 --- a/themes/2025/assets/file-D8mQlyUF.js +++ /dev/null @@ -1,6 +0,0 @@ -import{c as a}from"./index-DKQ1YPO4.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const t=a("FileIcon",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}]]);export{t as F}; diff --git a/themes/2025/assets/file-D-r2HShG.js b/themes/2025/assets/file-d22J40ax.js similarity index 88% rename from themes/2025/assets/file-D-r2HShG.js rename to themes/2025/assets/file-d22J40ax.js index 3fa9e0dfe..3a170c264 100644 --- a/themes/2025/assets/file-D-r2HShG.js +++ b/themes/2025/assets/file-d22J40ax.js @@ -1,4 +1,4 @@ -import{c as a}from"./index-C-4-823a.js";/** +import{c as a}from"./index-BAgz5Ib8.js";/** * @license lucide-vue-next v0.445.0 - ISC * * This source code is licensed under the ISC license. diff --git a/themes/2025/assets/hard-drive-C37_tD5A.js b/themes/2025/assets/hard-drive-7q_tW7VM.js similarity index 92% rename from themes/2025/assets/hard-drive-C37_tD5A.js rename to themes/2025/assets/hard-drive-7q_tW7VM.js index a6c477934..e89349b0e 100644 --- a/themes/2025/assets/hard-drive-C37_tD5A.js +++ b/themes/2025/assets/hard-drive-7q_tW7VM.js @@ -1,4 +1,4 @@ -import{c as e}from"./index-DKQ1YPO4.js";/** +import{c as e}from"./index-BAgz5Ib8.js";/** * @license lucide-vue-next v0.445.0 - ISC * * This source code is licensed under the ISC license. diff --git a/themes/2025/assets/hard-drive-X0PLCy-z.js b/themes/2025/assets/hard-drive-X0PLCy-z.js deleted file mode 100644 index 564cdd8c1..000000000 --- a/themes/2025/assets/hard-drive-X0PLCy-z.js +++ /dev/null @@ -1,6 +0,0 @@ -import{c as e}from"./index-C-4-823a.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const a=e("HardDriveIcon",[["line",{x1:"22",x2:"2",y1:"12",y2:"12",key:"1y58io"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}],["line",{x1:"6",x2:"6.01",y1:"16",y2:"16",key:"sgf278"}],["line",{x1:"10",x2:"10.01",y1:"16",y2:"16",key:"1l4acy"}]]);export{a as H}; diff --git a/themes/2025/assets/index-C-4-823a.js b/themes/2025/assets/index-BAgz5Ib8.js similarity index 99% rename from themes/2025/assets/index-C-4-823a.js rename to themes/2025/assets/index-BAgz5Ib8.js index 4bf80c39a..758f8d5e0 100644 --- a/themes/2025/assets/index-C-4-823a.js +++ b/themes/2025/assets/index-BAgz5Ib8.js @@ -1,4 +1,4 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/SendFileView-DJlusruR.js","assets/clipboard-WGJncgVO.js","assets/file-D-r2HShG.js","assets/trash-CAImX6bg.js","assets/SendFileView-DFaiiDlV.css","assets/RetrievewFileView-DzS7C4LK.js","assets/box-Btnwq7DC.js","assets/hard-drive-X0PLCy-z.js","assets/RetrievewFileView-BgLHFGkc.css","assets/AdminLayout-BSI80wlV.js","assets/AdminLayout-CZwJxNxp.css","assets/DashboardView-DHkW9fcL.js","assets/FileManageView-3VMR54FC.js","assets/FileManageView-CwWUDTzq.css","assets/LoginView-T1LQBbzg.js","assets/LoginView-zMyguVQQ.css"])))=>i.map(i=>d[i]); +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/SendFileView-VzXyxiyT.js","assets/clipboard-ClFPPG_0.js","assets/file-d22J40ax.js","assets/trash-R3aCwIiM.js","assets/SendFileView-9SD7mX5s.css","assets/RetrievewFileView-Cwnagjpx.js","assets/box-tSoVvdHE.js","assets/hard-drive-7q_tW7VM.js","assets/RetrievewFileView-DCUv-G63.css","assets/AdminLayout-CJLK8Deo.js","assets/AdminLayout-CZwJxNxp.css","assets/DashboardView-CS_fHNo8.js","assets/FileManageView-XLvHYGa1.js","assets/FileManageView-CwWUDTzq.css","assets/LoginView-BksgElri.js","assets/LoginView-CgWlhClB.css"])))=>i.map(i=>d[i]); (function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const i of o.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&s(i)}).observe(document,{childList:!0,subtree:!0});function n(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(r){if(r.ep)return;r.ep=!0;const o=n(r);fetch(r.href,o)}})();/** * @vue/shared v3.5.17 * (c) 2018-present Yuxi (Evan) You and Vue contributors @@ -83,4 +83,4 @@ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/SendFileView-DJ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const s=new this(t);return n.forEach(r=>s.set(r)),s}static accessor(t){const s=(this[pi]=this[pi]={accessors:{}}).accessors,r=this.prototype;function o(i){const l=gn(i);s[l]||(Jh(r,i),s[l]=!0)}return b.isArray(t)?t.forEach(o):o(t),this}};Ie.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);b.reduceDescriptors(Ie.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(s){this[n]=s}}});b.freezeMethods(Ie);function ir(e,t){const n=this||zn,s=t||n,r=Ie.from(s.headers);let o=s.data;return b.forEach(e,function(l){o=l.call(n,o,r.normalize(),t?t.status:void 0)}),r.normalize(),o}function xc(e){return!!(e&&e.__CANCEL__)}function fn(e,t,n){J.call(this,e??"canceled",J.ERR_CANCELED,t,n),this.name="CanceledError"}b.inherits(fn,J,{__CANCEL__:!0});function Rc(e,t,n){const s=n.config.validateStatus;!n.status||!s||s(n.status)?e(n):t(new J("Request failed with status code "+n.status,[J.ERR_BAD_REQUEST,J.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function Gh(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Xh(e,t){e=e||10;const n=new Array(e),s=new Array(e);let r=0,o=0,i;return t=t!==void 0?t:1e3,function(c){const u=Date.now(),a=s[o];i||(i=u),n[r]=c,s[r]=u;let f=o,p=0;for(;f!==r;)p+=n[f++],f=f%e;if(r=(r+1)%e,r===o&&(o=(o+1)%e),u-i{n=a,r=null,o&&(clearTimeout(o),o=null),e.apply(null,u)};return[(...u)=>{const a=Date.now(),f=a-n;f>=s?i(u,a):(r=u,o||(o=setTimeout(()=>{o=null,i(r)},s-f)))},()=>r&&i(r)]}const ys=(e,t,n=3)=>{let s=0;const r=Xh(50,250);return Qh(o=>{const i=o.loaded,l=o.lengthComputable?o.total:void 0,c=i-s,u=r(c),a=i<=l;s=i;const f={loaded:i,total:l,progress:l?i/l:void 0,bytes:c,rate:u||void 0,estimated:u&&l&&a?(l-i)/u:void 0,event:o,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(f)},n)},mi=(e,t)=>{const n=e!=null;return[s=>t[0]({lengthComputable:n,total:e,loaded:s}),t[1]]},gi=e=>(...t)=>b.asap(()=>e(...t)),Yh=ve.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ve.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ve.origin),ve.navigator&&/(msie|trident)/i.test(ve.navigator.userAgent)):()=>!0,Zh=ve.hasStandardBrowserEnv?{write(e,t,n,s,r,o){const i=[e+"="+encodeURIComponent(t)];b.isNumber(n)&&i.push("expires="+new Date(n).toGMTString()),b.isString(s)&&i.push("path="+s),b.isString(r)&&i.push("domain="+r),o===!0&&i.push("secure"),document.cookie=i.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function ep(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function tp(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Cc(e,t,n){let s=!ep(t);return e&&(s||n==!1)?tp(e,t):t}const yi=e=>e instanceof Ie?{...e}:e;function Vt(e,t){t=t||{};const n={};function s(u,a,f,p){return b.isPlainObject(u)&&b.isPlainObject(a)?b.merge.call({caseless:p},u,a):b.isPlainObject(a)?b.merge({},a):b.isArray(a)?a.slice():a}function r(u,a,f,p){if(b.isUndefined(a)){if(!b.isUndefined(u))return s(void 0,u,f,p)}else return s(u,a,f,p)}function o(u,a){if(!b.isUndefined(a))return s(void 0,a)}function i(u,a){if(b.isUndefined(a)){if(!b.isUndefined(u))return s(void 0,u)}else return s(void 0,a)}function l(u,a,f){if(f in t)return s(u,a);if(f in e)return s(void 0,u)}const c={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:l,headers:(u,a,f)=>r(yi(u),yi(a),f,!0)};return b.forEach(Object.keys(Object.assign({},e,t)),function(a){const f=c[a]||r,p=f(e[a],t[a],a);b.isUndefined(p)&&f!==l||(n[a]=p)}),n}const Tc=e=>{const t=Vt({},e);let{data:n,withXSRFToken:s,xsrfHeaderName:r,xsrfCookieName:o,headers:i,auth:l}=t;t.headers=i=Ie.from(i),t.url=vc(Cc(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&i.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let c;if(b.isFormData(n)){if(ve.hasStandardBrowserEnv||ve.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if((c=i.getContentType())!==!1){const[u,...a]=c?c.split(";").map(f=>f.trim()).filter(Boolean):[];i.setContentType([u||"multipart/form-data",...a].join("; "))}}if(ve.hasStandardBrowserEnv&&(s&&b.isFunction(s)&&(s=s(t)),s||s!==!1&&Yh(t.url))){const u=r&&o&&Zh.read(o);u&&i.set(r,u)}return t},np=typeof XMLHttpRequest<"u",sp=np&&function(e){return new Promise(function(n,s){const r=Tc(e);let o=r.data;const i=Ie.from(r.headers).normalize();let{responseType:l,onUploadProgress:c,onDownloadProgress:u}=r,a,f,p,m,y;function _(){m&&m(),y&&y(),r.cancelToken&&r.cancelToken.unsubscribe(a),r.signal&&r.signal.removeEventListener("abort",a)}let x=new XMLHttpRequest;x.open(r.method.toUpperCase(),r.url,!0),x.timeout=r.timeout;function A(){if(!x)return;const P=Ie.from("getAllResponseHeaders"in x&&x.getAllResponseHeaders()),j={data:!l||l==="text"||l==="json"?x.responseText:x.response,status:x.status,statusText:x.statusText,headers:P,config:e,request:x};Rc(function(z){n(z),_()},function(z){s(z),_()},j),x=null}"onloadend"in x?x.onloadend=A:x.onreadystatechange=function(){!x||x.readyState!==4||x.status===0&&!(x.responseURL&&x.responseURL.indexOf("file:")===0)||setTimeout(A)},x.onabort=function(){x&&(s(new J("Request aborted",J.ECONNABORTED,e,x)),x=null)},x.onerror=function(){s(new J("Network Error",J.ERR_NETWORK,e,x)),x=null},x.ontimeout=function(){let L=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const j=r.transitional||Ec;r.timeoutErrorMessage&&(L=r.timeoutErrorMessage),s(new J(L,j.clarifyTimeoutError?J.ETIMEDOUT:J.ECONNABORTED,e,x)),x=null},o===void 0&&i.setContentType(null),"setRequestHeader"in x&&b.forEach(i.toJSON(),function(L,j){x.setRequestHeader(j,L)}),b.isUndefined(r.withCredentials)||(x.withCredentials=!!r.withCredentials),l&&l!=="json"&&(x.responseType=r.responseType),u&&([p,y]=ys(u,!0),x.addEventListener("progress",p)),c&&x.upload&&([f,m]=ys(c),x.upload.addEventListener("progress",f),x.upload.addEventListener("loadend",m)),(r.cancelToken||r.signal)&&(a=P=>{x&&(s(!P||P.type?new fn(null,e,x):P),x.abort(),x=null)},r.cancelToken&&r.cancelToken.subscribe(a),r.signal&&(r.signal.aborted?a():r.signal.addEventListener("abort",a)));const C=Gh(r.url);if(C&&ve.protocols.indexOf(C)===-1){s(new J("Unsupported protocol "+C+":",J.ERR_BAD_REQUEST,e));return}x.send(o||null)})},rp=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let s=new AbortController,r;const o=function(u){if(!r){r=!0,l();const a=u instanceof Error?u:this.reason;s.abort(a instanceof J?a:new fn(a instanceof Error?a.message:a))}};let i=t&&setTimeout(()=>{i=null,o(new J(`timeout ${t} of ms exceeded`,J.ETIMEDOUT))},t);const l=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach(u=>{u.unsubscribe?u.unsubscribe(o):u.removeEventListener("abort",o)}),e=null)};e.forEach(u=>u.addEventListener("abort",o));const{signal:c}=s;return c.unsubscribe=()=>b.asap(l),c}},op=function*(e,t){let n=e.byteLength;if(n{const r=ip(e,t);let o=0,i,l=c=>{i||(i=!0,s&&s(c))};return new ReadableStream({async pull(c){try{const{done:u,value:a}=await r.next();if(u){l(),c.close();return}let f=a.byteLength;if(n){let p=o+=f;n(p)}c.enqueue(new Uint8Array(a))}catch(u){throw l(u),u}},cancel(c){return l(c),r.return()}},{highWaterMark:2})},Us=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",Ac=Us&&typeof ReadableStream=="function",cp=Us&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),Oc=(e,...t)=>{try{return!!e(...t)}catch{return!1}},ap=Ac&&Oc(()=>{let e=!1;const t=new Request(ve.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),_i=64*1024,Tr=Ac&&Oc(()=>b.isReadableStream(new Response("").body)),bs={stream:Tr&&(e=>e.body)};Us&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!bs[t]&&(bs[t]=b.isFunction(e[t])?n=>n[t]():(n,s)=>{throw new J(`Response type '${t}' is not supported`,J.ERR_NOT_SUPPORT,s)})})})(new Response);const up=async e=>{if(e==null)return 0;if(b.isBlob(e))return e.size;if(b.isSpecCompliantForm(e))return(await new Request(ve.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(b.isArrayBufferView(e)||b.isArrayBuffer(e))return e.byteLength;if(b.isURLSearchParams(e)&&(e=e+""),b.isString(e))return(await cp(e)).byteLength},fp=async(e,t)=>{const n=b.toFiniteNumber(e.getContentLength());return n??up(t)},dp=Us&&(async e=>{let{url:t,method:n,data:s,signal:r,cancelToken:o,timeout:i,onDownloadProgress:l,onUploadProgress:c,responseType:u,headers:a,withCredentials:f="same-origin",fetchOptions:p}=Tc(e);u=u?(u+"").toLowerCase():"text";let m=rp([r,o&&o.toAbortSignal()],i),y;const _=m&&m.unsubscribe&&(()=>{m.unsubscribe()});let x;try{if(c&&ap&&n!=="get"&&n!=="head"&&(x=await fp(a,s))!==0){let j=new Request(t,{method:"POST",body:s,duplex:"half"}),X;if(b.isFormData(s)&&(X=j.headers.get("content-type"))&&a.setContentType(X),j.body){const[z,V]=mi(x,ys(gi(c)));s=bi(j.body,_i,z,V)}}b.isString(f)||(f=f?"include":"omit");const A="credentials"in Request.prototype;y=new Request(t,{...p,signal:m,method:n.toUpperCase(),headers:a.normalize().toJSON(),body:s,duplex:"half",credentials:A?f:void 0});let C=await fetch(y,p);const P=Tr&&(u==="stream"||u==="response");if(Tr&&(l||P&&_)){const j={};["status","statusText","headers"].forEach(I=>{j[I]=C[I]});const X=b.toFiniteNumber(C.headers.get("content-length")),[z,V]=l&&mi(X,ys(gi(l),!0))||[];C=new Response(bi(C.body,_i,z,()=>{V&&V(),_&&_()}),j)}u=u||"text";let L=await bs[b.findKey(bs,u)||"text"](C,e);return!P&&_&&_(),await new Promise((j,X)=>{Rc(j,X,{data:L,headers:Ie.from(C.headers),status:C.status,statusText:C.statusText,config:e,request:y})})}catch(A){throw _&&_(),A&&A.name==="TypeError"&&/Load failed|fetch/i.test(A.message)?Object.assign(new J("Network Error",J.ERR_NETWORK,e,y),{cause:A.cause||A}):J.from(A,A&&A.code,e,y)}}),Ar={http:Th,xhr:sp,fetch:dp};b.forEach(Ar,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const wi=e=>`- ${e}`,hp=e=>b.isFunction(e)||e===null||e===!1,Pc={getAdapter:e=>{e=b.isArray(e)?e:[e];const{length:t}=e;let n,s;const r={};for(let o=0;o`adapter ${l} `+(c===!1?"is not supported by the environment":"is not available in the build"));let i=t?o.length>1?`since : `+o.map(wi).join(` `):" "+wi(o[0]):"as no adapter specified";throw new J("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return s},adapters:Ar};function lr(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new fn(null,e)}function vi(e){return lr(e),e.headers=Ie.from(e.headers),e.data=ir.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Pc.getAdapter(e.adapter||zn.adapter)(e).then(function(s){return lr(e),s.data=ir.call(e,e.transformResponse,s),s.headers=Ie.from(s.headers),s},function(s){return xc(s)||(lr(e),s&&s.response&&(s.response.data=ir.call(e,e.transformResponse,s.response),s.response.headers=Ie.from(s.response.headers))),Promise.reject(s)})}const Lc="1.10.0",Hs={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Hs[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});const Ei={};Hs.transitional=function(t,n,s){function r(o,i){return"[Axios v"+Lc+"] Transitional option '"+o+"'"+i+(s?". "+s:"")}return(o,i,l)=>{if(t===!1)throw new J(r(i," has been removed"+(n?" in "+n:"")),J.ERR_DEPRECATED);return n&&!Ei[i]&&(Ei[i]=!0,console.warn(r(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,i,l):!0}};Hs.spelling=function(t){return(n,s)=>(console.warn(`${s} is likely a misspelling of ${t}`),!0)};function pp(e,t,n){if(typeof e!="object")throw new J("options must be an object",J.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let r=s.length;for(;r-- >0;){const o=s[r],i=t[o];if(i){const l=e[o],c=l===void 0||i(l,o,e);if(c!==!0)throw new J("option "+o+" must be "+c,J.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new J("Unknown option "+o,J.ERR_BAD_OPTION)}}const os={assertOptions:pp,validators:Hs},et=os.validators;let Ut=class{constructor(t){this.defaults=t||{},this.interceptors={request:new hi,response:new hi}}async request(t,n){try{return await this._request(t,n)}catch(s){if(s instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const o=r.stack?r.stack.replace(/^.+\n/,""):"";try{s.stack?o&&!String(s.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(s.stack+=` -`+o):s.stack=o}catch{}}throw s}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Vt(this.defaults,n);const{transitional:s,paramsSerializer:r,headers:o}=n;s!==void 0&&os.assertOptions(s,{silentJSONParsing:et.transitional(et.boolean),forcedJSONParsing:et.transitional(et.boolean),clarifyTimeoutError:et.transitional(et.boolean)},!1),r!=null&&(b.isFunction(r)?n.paramsSerializer={serialize:r}:os.assertOptions(r,{encode:et.function,serialize:et.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),os.assertOptions(n,{baseUrl:et.spelling("baseURL"),withXsrfToken:et.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&b.merge(o.common,o[n.method]);o&&b.forEach(["delete","get","head","post","put","patch","common"],y=>{delete o[y]}),n.headers=Ie.concat(i,o);const l=[];let c=!0;this.interceptors.request.forEach(function(_){typeof _.runWhen=="function"&&_.runWhen(n)===!1||(c=c&&_.synchronous,l.unshift(_.fulfilled,_.rejected))});const u=[];this.interceptors.response.forEach(function(_){u.push(_.fulfilled,_.rejected)});let a,f=0,p;if(!c){const y=[vi.bind(this),void 0];for(y.unshift.apply(y,l),y.push.apply(y,u),p=y.length,a=Promise.resolve(n);f{if(!s._listeners)return;let o=s._listeners.length;for(;o-- >0;)s._listeners[o](r);s._listeners=null}),this.promise.then=r=>{let o;const i=new Promise(l=>{s.subscribe(l),o=l}).then(r);return i.cancel=function(){s.unsubscribe(o)},i},t(function(o,i,l){s.reason||(s.reason=new fn(o,i,l),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=s=>{t.abort(s)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Nc(function(r){t=r}),cancel:t}}};function gp(e){return function(n){return e.apply(null,n)}}function yp(e){return b.isObject(e)&&e.isAxiosError===!0}const Or={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Or).forEach(([e,t])=>{Or[t]=e});function Ic(e){const t=new Ut(e),n=ac(Ut.prototype.request,t);return b.extend(n,Ut.prototype,t,{allOwnKeys:!0}),b.extend(n,t,null,{allOwnKeys:!0}),n.create=function(r){return Ic(Vt(e,r))},n}const he=Ic(zn);he.Axios=Ut;he.CanceledError=fn;he.CancelToken=mp;he.isCancel=xc;he.VERSION=Lc;he.toFormData=$s;he.AxiosError=J;he.Cancel=he.CanceledError;he.all=function(t){return Promise.all(t)};he.spread=gp;he.isAxiosError=yp;he.mergeConfig=Vt;he.AxiosHeaders=Ie;he.formToJSON=e=>Sc(b.isHTMLForm(e)?new FormData(e):e);he.getAdapter=Pc.getAdapter;he.HttpStatusCode=Or;he.default=he;const{Axios:Wp,AxiosError:zp,CanceledError:Jp,isCancel:Gp,CancelToken:Xp,VERSION:Qp,all:Yp,Cancel:Zp,isAxiosError:em,spread:tm,toFormData:nm,AxiosHeaders:sm,HttpStatusCode:rm,formToJSON:om,getAdapter:im,mergeConfig:lm}=he,bp="",Mc=bp,to=he.create({baseURL:Mc,timeout:1e15,headers:{"Content-Type":"application/json"}});to.interceptors.request.use(e=>{const t=localStorage.getItem("token");return t&&(e.headers.Authorization=`Bearer ${t}`),e.url&&!e.url.startsWith("http")&&(e.url=`${Mc}/${e.url.replace(/^\//,"")}`),e},e=>Promise.reject(e));to.interceptors.response.use(e=>e.data,e=>{if(e.response)switch(e.response.status){case 401:console.error("未授权,请重新登录"),localStorage.clear(),window.location.href="/#/login";break;case 403:console.error("禁止访问");break;case 404:console.error("请求的资源不存在");break;default:console.error("发生错误:",e.response.data)}else e.request?console.error("未收到响应:",e.request):console.error("请求配置错误:",e.message);return Promise.reject(e)});const kc=Cf("alert",{state:()=>({alerts:[]}),actions:{showAlert(e,t="info",n=5e3){const s=Date.now(),r=Date.now();this.alerts.push({id:s,message:e,type:t,progress:100,duration:n,startTime:r}),setTimeout(()=>this.removeAlert(s),n)},removeAlert(e){const t=this.alerts.findIndex(n=>n.id===e);t>-1&&this.alerts.splice(t,1)},updateAlertProgress(e){const t=this.alerts.find(n=>n.id===e);if(t){const s=100-(Date.now()-t.startTime)/t.duration*100;t.progress=Math.max(0,s),t.progress<=0&&this.removeAlert(e)}}}}),_p={class:"p-4"},wp={class:"flex items-start"},vp={class:"flex-shrink-0"},Ep={class:"ml-3 flex-1 pt-0.5"},Sp=["innerHTML"],xp={class:"ml-4 flex-shrink-0 flex"},Rp=["onClick"],Cp={class:"h-1 bg-white bg-opacity-25"},Tp=qn({__name:"AlertComponent",setup(e){const t=kc(),{alerts:n}=Tf(t),{removeAlert:s,updateAlertProgress:r}=t,o={success:"from-green-500 to-green-600",error:"from-red-500 to-red-600",warning:"from-yellow-500 to-yellow-600",info:"from-blue-500 to-blue-600"},i={success:kd,error:Bd,warning:Md,info:Fd};let l;return Os(()=>{l=setInterval(()=>{n.value.forEach(c=>{r(c.id)})},100)}),Kr(()=>{clearInterval(l)}),(c,u)=>(qe(),tn(of,{name:"alert-fade",tag:"div",class:"fixed top-4 left-4 z-50 w-full sm:max-w-sm md:max-w-md space-y-4 px-4 sm:px-0"},{default:ds(()=>[(qe(!0),Mn(Ue,null,Ha(Pe(n),a=>(qe(),Mn("div",{key:a.id,class:an(["w-full rounded-lg shadow-xl overflow-hidden","bg-gradient-to-r",o[a.type]])},[Fe("div",_p,[Fe("div",wp,[Fe("div",vp,[(qe(),tn(ml(i[a.type]),{class:"h-6 w-6 text-white"}))]),Fe("div",Ep,[Fe("p",{class:"text-sm font-medium text-white",innerHTML:a.message},null,8,Sp)]),Fe("div",xp,[Fe("button",{onClick:f=>Pe(s)(a.id),class:"inline-flex text-white hover:text-gray-200 focus:outline-none transition-colors duration-200"},[u[0]||(u[0]=Fe("span",{class:"sr-only"},"关闭",-1)),me(Pe($d),{class:"h-5 w-5"})],8,Rp)])])]),Fe("div",Cp,[Fe("div",{class:"h-full bg-white transition-all duration-100 ease-out",style:Ss({width:`${a.progress}%`})},null,4)])],2))),128))]),_:1}))}}),Ap=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Op=Ap(Tp,[["__scopeId","data-v-0ce78a4a"]]),Pp={key:0,class:"loading-overlay"},Lp=qn({__name:"App",setup(e){const t=en(!1),n=en(!1),s=Ld(),r=kc(),o=()=>window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches,i=()=>{const c=localStorage.getItem("colorMode");return c?c==="dark":null},l=c=>{t.value=c,localStorage.setItem("colorMode",c?"dark":"light")};return Os(()=>{const c=i();l(c!==null?c:o()),to.post("/",{}).then(u=>{u.code===200&&(localStorage.setItem("config",JSON.stringify(u.detail)),u.detail.notify_title&&u.detail.notify_content&&localStorage.getItem("notify")!==u.detail.notify_title+u.detail.notify_content&&(localStorage.setItem("notify",u.detail.notify_title+u.detail.notify_content),r.showAlert(u.detail.notify_title+": "+u.detail.notify_content,"success")))})}),uu(()=>{document.documentElement.classList.toggle("dark",t.value)}),s.beforeEach((c,u,a)=>{n.value=!0,a()}),s.afterEach(()=>{setTimeout(()=>{n.value=!1},200)}),$t("isDarkMode",t),$t("setColorMode",l),$t("isLoading",n),(c,u)=>(qe(),Mn("div",{class:an(["app-container",t.value?"dark":"light"])},[me(Ud,{modelValue:t.value,"onUpdate:modelValue":u[0]||(u[0]=a=>t.value=a)},null,8,["modelValue"]),n.value?(qe(),Mn("div",Pp,u[1]||(u[1]=[Fe("div",{class:"loading-spinner"},null,-1)]))):Su("",!0),me(Pe(cc),null,{default:ds(({Component:a})=>[me(Bu,{name:"fade",mode:"out-in"},{default:ds(()=>[(qe(),tn(ml(a),{key:c.$route.fullPath}))]),_:2},1024)]),_:1}),me(Op)],2))}}),Np="modulepreload",Ip=function(e){return"/"+e},Si={},kt=function(t,n,s){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),l=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));r=Promise.allSettled(n.map(c=>{if(c=Ip(c),c in Si)return;Si[c]=!0;const u=c.endsWith(".css"),a=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${a}`))return;const f=document.createElement("link");if(f.rel=u?"stylesheet":Np,u||(f.as="script"),f.crossOrigin="",f.href=c,l&&f.setAttribute("nonce",l),document.head.appendChild(f),u)return new Promise((p,m)=>{f.addEventListener("load",p),f.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${c}`)))})}))}function o(i){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=i,window.dispatchEvent(l),!l.defaultPrevented)throw i}return r.then(i=>{for(const l of i||[])l.status==="rejected"&&o(l.reason);return t().catch(o)})},Mp=()=>kt(()=>import("./SendFileView-DJlusruR.js"),__vite__mapDeps([0,1,2,3,4])),kp=Od({history:od("/"),routes:[{path:"/",name:"Retrieve",component:()=>kt(()=>import("./RetrievewFileView-DzS7C4LK.js"),__vite__mapDeps([5,1,6,2,7,3,8]))},{path:"/send",name:"Send",component:Mp},{path:"/admin",name:"Manage",component:()=>kt(()=>import("./AdminLayout-BSI80wlV.js"),__vite__mapDeps([9,6,10])),redirect:"/admin/dashboard",children:[{path:"/admin/dashboard",name:"Dashboard",component:()=>kt(()=>import("./DashboardView-DHkW9fcL.js"),__vite__mapDeps([11,2,7]))},{path:"/admin/files",name:"FileManage",component:()=>kt(()=>import("./FileManageView-3VMR54FC.js"),__vite__mapDeps([12,2,3,13]))},{path:"/admin/settings",name:"Settings",component:()=>kt(()=>import("./SystemSettingsView-DJ12QIQD.js"),[])}]},{path:"/login",name:"Login",component:()=>kt(()=>import("./LoginView-T1LQBbzg.js"),__vite__mapDeps([14,6,15]))}]}),no=yf(Lp);no.use(wf());no.use(kp);no.mount("#app");export{tn as A,Ld as B,to as C,Tf as D,Vp as E,Ue as F,nn as G,fl as H,Cf as I,Hn as J,Kr as K,ml as L,Hp as M,Bp as N,Bu as T,$d as X,Ap as _,Mn as a,Fe as b,qt as c,qn as d,qe as e,De as f,me as g,Pe as h,Le as i,Up as j,ds as k,Su as l,Fp as m,an as n,Os as o,$p as p,Ss as q,en as r,Ha as s,Gc as t,kc as u,jp as v,xn as w,Eu as x,Dp as y,of as z}; +`+o):s.stack=o}catch{}}throw s}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Vt(this.defaults,n);const{transitional:s,paramsSerializer:r,headers:o}=n;s!==void 0&&os.assertOptions(s,{silentJSONParsing:et.transitional(et.boolean),forcedJSONParsing:et.transitional(et.boolean),clarifyTimeoutError:et.transitional(et.boolean)},!1),r!=null&&(b.isFunction(r)?n.paramsSerializer={serialize:r}:os.assertOptions(r,{encode:et.function,serialize:et.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),os.assertOptions(n,{baseUrl:et.spelling("baseURL"),withXsrfToken:et.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&b.merge(o.common,o[n.method]);o&&b.forEach(["delete","get","head","post","put","patch","common"],y=>{delete o[y]}),n.headers=Ie.concat(i,o);const l=[];let c=!0;this.interceptors.request.forEach(function(_){typeof _.runWhen=="function"&&_.runWhen(n)===!1||(c=c&&_.synchronous,l.unshift(_.fulfilled,_.rejected))});const u=[];this.interceptors.response.forEach(function(_){u.push(_.fulfilled,_.rejected)});let a,f=0,p;if(!c){const y=[vi.bind(this),void 0];for(y.unshift.apply(y,l),y.push.apply(y,u),p=y.length,a=Promise.resolve(n);f{if(!s._listeners)return;let o=s._listeners.length;for(;o-- >0;)s._listeners[o](r);s._listeners=null}),this.promise.then=r=>{let o;const i=new Promise(l=>{s.subscribe(l),o=l}).then(r);return i.cancel=function(){s.unsubscribe(o)},i},t(function(o,i,l){s.reason||(s.reason=new fn(o,i,l),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=s=>{t.abort(s)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Nc(function(r){t=r}),cancel:t}}};function gp(e){return function(n){return e.apply(null,n)}}function yp(e){return b.isObject(e)&&e.isAxiosError===!0}const Or={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Or).forEach(([e,t])=>{Or[t]=e});function Ic(e){const t=new Ut(e),n=ac(Ut.prototype.request,t);return b.extend(n,Ut.prototype,t,{allOwnKeys:!0}),b.extend(n,t,null,{allOwnKeys:!0}),n.create=function(r){return Ic(Vt(e,r))},n}const he=Ic(zn);he.Axios=Ut;he.CanceledError=fn;he.CancelToken=mp;he.isCancel=xc;he.VERSION=Lc;he.toFormData=$s;he.AxiosError=J;he.Cancel=he.CanceledError;he.all=function(t){return Promise.all(t)};he.spread=gp;he.isAxiosError=yp;he.mergeConfig=Vt;he.AxiosHeaders=Ie;he.formToJSON=e=>Sc(b.isHTMLForm(e)?new FormData(e):e);he.getAdapter=Pc.getAdapter;he.HttpStatusCode=Or;he.default=he;const{Axios:Wp,AxiosError:zp,CanceledError:Jp,isCancel:Gp,CancelToken:Xp,VERSION:Qp,all:Yp,Cancel:Zp,isAxiosError:em,spread:tm,toFormData:nm,AxiosHeaders:sm,HttpStatusCode:rm,formToJSON:om,getAdapter:im,mergeConfig:lm}=he,bp="",Mc=bp,to=he.create({baseURL:Mc,timeout:1e15,headers:{"Content-Type":"application/json"}});to.interceptors.request.use(e=>{const t=localStorage.getItem("token");return t&&(e.headers.Authorization=`Bearer ${t}`),e.url&&!e.url.startsWith("http")&&(e.url=`${Mc}/${e.url.replace(/^\//,"")}`),e},e=>Promise.reject(e));to.interceptors.response.use(e=>e.data,e=>{if(e.response)switch(e.response.status){case 401:console.error("未授权,请重新登录"),localStorage.clear(),window.location.href="/#/login";break;case 403:console.error("禁止访问");break;case 404:console.error("请求的资源不存在");break;default:console.error("发生错误:",e.response.data)}else e.request?console.error("未收到响应:",e.request):console.error("请求配置错误:",e.message);return Promise.reject(e)});const kc=Cf("alert",{state:()=>({alerts:[]}),actions:{showAlert(e,t="info",n=5e3){const s=Date.now(),r=Date.now();this.alerts.push({id:s,message:e,type:t,progress:100,duration:n,startTime:r}),setTimeout(()=>this.removeAlert(s),n)},removeAlert(e){const t=this.alerts.findIndex(n=>n.id===e);t>-1&&this.alerts.splice(t,1)},updateAlertProgress(e){const t=this.alerts.find(n=>n.id===e);if(t){const s=100-(Date.now()-t.startTime)/t.duration*100;t.progress=Math.max(0,s),t.progress<=0&&this.removeAlert(e)}}}}),_p={class:"p-4"},wp={class:"flex items-start"},vp={class:"flex-shrink-0"},Ep={class:"ml-3 flex-1 pt-0.5"},Sp=["innerHTML"],xp={class:"ml-4 flex-shrink-0 flex"},Rp=["onClick"],Cp={class:"h-1 bg-white bg-opacity-25"},Tp=qn({__name:"AlertComponent",setup(e){const t=kc(),{alerts:n}=Tf(t),{removeAlert:s,updateAlertProgress:r}=t,o={success:"from-green-500 to-green-600",error:"from-red-500 to-red-600",warning:"from-yellow-500 to-yellow-600",info:"from-blue-500 to-blue-600"},i={success:kd,error:Bd,warning:Md,info:Fd};let l;return Os(()=>{l=setInterval(()=>{n.value.forEach(c=>{r(c.id)})},100)}),Kr(()=>{clearInterval(l)}),(c,u)=>(qe(),tn(of,{name:"alert-fade",tag:"div",class:"fixed top-4 left-4 z-50 w-full sm:max-w-sm md:max-w-md space-y-4 px-4 sm:px-0"},{default:ds(()=>[(qe(!0),Mn(Ue,null,Ha(Pe(n),a=>(qe(),Mn("div",{key:a.id,class:an(["w-full rounded-lg shadow-xl overflow-hidden","bg-gradient-to-r",o[a.type]])},[Fe("div",_p,[Fe("div",wp,[Fe("div",vp,[(qe(),tn(ml(i[a.type]),{class:"h-6 w-6 text-white"}))]),Fe("div",Ep,[Fe("p",{class:"text-sm font-medium text-white",innerHTML:a.message},null,8,Sp)]),Fe("div",xp,[Fe("button",{onClick:f=>Pe(s)(a.id),class:"inline-flex text-white hover:text-gray-200 focus:outline-none transition-colors duration-200"},[u[0]||(u[0]=Fe("span",{class:"sr-only"},"关闭",-1)),me(Pe($d),{class:"h-5 w-5"})],8,Rp)])])]),Fe("div",Cp,[Fe("div",{class:"h-full bg-white transition-all duration-100 ease-out",style:Ss({width:`${a.progress}%`})},null,4)])],2))),128))]),_:1}))}}),Ap=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Op=Ap(Tp,[["__scopeId","data-v-0ce78a4a"]]),Pp={key:0,class:"loading-overlay"},Lp=qn({__name:"App",setup(e){const t=en(!1),n=en(!1),s=Ld(),r=kc(),o=()=>window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches,i=()=>{const c=localStorage.getItem("colorMode");return c?c==="dark":null},l=c=>{t.value=c,localStorage.setItem("colorMode",c?"dark":"light")};return Os(()=>{const c=i();l(c!==null?c:o()),to.post("/",{}).then(u=>{u.code===200&&(localStorage.setItem("config",JSON.stringify(u.detail)),u.detail.notify_title&&u.detail.notify_content&&localStorage.getItem("notify")!==u.detail.notify_title+u.detail.notify_content&&(localStorage.setItem("notify",u.detail.notify_title+u.detail.notify_content),r.showAlert(u.detail.notify_title+": "+u.detail.notify_content,"success")))})}),uu(()=>{document.documentElement.classList.toggle("dark",t.value)}),s.beforeEach((c,u,a)=>{n.value=!0,a()}),s.afterEach(()=>{setTimeout(()=>{n.value=!1},200)}),$t("isDarkMode",t),$t("setColorMode",l),$t("isLoading",n),(c,u)=>(qe(),Mn("div",{class:an(["app-container",t.value?"dark":"light"])},[me(Ud,{modelValue:t.value,"onUpdate:modelValue":u[0]||(u[0]=a=>t.value=a)},null,8,["modelValue"]),n.value?(qe(),Mn("div",Pp,u[1]||(u[1]=[Fe("div",{class:"loading-spinner"},null,-1)]))):Su("",!0),me(Pe(cc),null,{default:ds(({Component:a})=>[me(Bu,{name:"fade",mode:"out-in"},{default:ds(()=>[(qe(),tn(ml(a),{key:c.$route.fullPath}))]),_:2},1024)]),_:1}),me(Op)],2))}}),Np="modulepreload",Ip=function(e){return"/"+e},Si={},kt=function(t,n,s){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),l=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));r=Promise.allSettled(n.map(c=>{if(c=Ip(c),c in Si)return;Si[c]=!0;const u=c.endsWith(".css"),a=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${a}`))return;const f=document.createElement("link");if(f.rel=u?"stylesheet":Np,u||(f.as="script"),f.crossOrigin="",f.href=c,l&&f.setAttribute("nonce",l),document.head.appendChild(f),u)return new Promise((p,m)=>{f.addEventListener("load",p),f.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${c}`)))})}))}function o(i){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=i,window.dispatchEvent(l),!l.defaultPrevented)throw i}return r.then(i=>{for(const l of i||[])l.status==="rejected"&&o(l.reason);return t().catch(o)})},Mp=()=>kt(()=>import("./SendFileView-VzXyxiyT.js"),__vite__mapDeps([0,1,2,3,4])),kp=Od({history:od("/"),routes:[{path:"/",name:"Retrieve",component:()=>kt(()=>import("./RetrievewFileView-Cwnagjpx.js"),__vite__mapDeps([5,1,6,2,7,3,8]))},{path:"/send",name:"Send",component:Mp},{path:"/admin",name:"Manage",component:()=>kt(()=>import("./AdminLayout-CJLK8Deo.js"),__vite__mapDeps([9,6,10])),redirect:"/admin/dashboard",children:[{path:"/admin/dashboard",name:"Dashboard",component:()=>kt(()=>import("./DashboardView-CS_fHNo8.js"),__vite__mapDeps([11,2,7]))},{path:"/admin/files",name:"FileManage",component:()=>kt(()=>import("./FileManageView-XLvHYGa1.js"),__vite__mapDeps([12,2,3,13]))},{path:"/admin/settings",name:"Settings",component:()=>kt(()=>import("./SystemSettingsView-D7a-G8Xk.js"),[])}]},{path:"/login",name:"Login",component:()=>kt(()=>import("./LoginView-BksgElri.js"),__vite__mapDeps([14,6,15]))}]}),no=yf(Lp);no.use(wf());no.use(kp);no.mount("#app");export{tn as A,Ld as B,to as C,Tf as D,Vp as E,Ue as F,nn as G,fl as H,Cf as I,Hn as J,Kr as K,ml as L,Hp as M,Bp as N,Bu as T,$d as X,Ap as _,Mn as a,Fe as b,qt as c,qn as d,qe as e,De as f,me as g,Pe as h,Le as i,Up as j,ds as k,Su as l,Fp as m,an as n,Os as o,$p as p,Ss as q,en as r,Ha as s,Gc as t,kc as u,jp as v,xn as w,Eu as x,Dp as y,of as z}; diff --git a/themes/2025/assets/index-BILSbgLN.css b/themes/2025/assets/index-BILSbgLN.css deleted file mode 100644 index 8237f98f2..000000000 --- a/themes/2025/assets/index-BILSbgLN.css +++ /dev/null @@ -1 +0,0 @@ -*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),0 3px rgb(var(--tw-prose-kbd-shadows) / 10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: 17 24 39;--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: 255 255 255;--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-invert{--tw-prose-body: var(--tw-prose-invert-body);--tw-prose-headings: var(--tw-prose-invert-headings);--tw-prose-lead: var(--tw-prose-invert-lead);--tw-prose-links: var(--tw-prose-invert-links);--tw-prose-bold: var(--tw-prose-invert-bold);--tw-prose-counters: var(--tw-prose-invert-counters);--tw-prose-bullets: var(--tw-prose-invert-bullets);--tw-prose-hr: var(--tw-prose-invert-hr);--tw-prose-quotes: var(--tw-prose-invert-quotes);--tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);--tw-prose-captions: var(--tw-prose-invert-captions);--tw-prose-kbd: var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);--tw-prose-code: var(--tw-prose-invert-code);--tw-prose-pre-code: var(--tw-prose-invert-pre-code);--tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);--tw-prose-th-borders: var(--tw-prose-invert-th-borders);--tw-prose-td-borders: var(--tw-prose-invert-td-borders)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.-inset-2{top:-.5rem;right:-.5rem;bottom:-.5rem;left:-.5rem}.inset-0{top:0;right:0;bottom:0;left:0}.inset-1{top:.25rem;right:.25rem;bottom:.25rem;left:.25rem}.inset-y-0{top:0;bottom:0}.-bottom-0\.5{bottom:-.125rem}.-top-2{top:-.5rem}.left-0{left:0}.left-2{left:.5rem}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-2{right:.5rem}.right-24{right:6rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-3{top:.75rem}.top-4{top:1rem}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-\[85vh\]{max-height:85vh}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-16{width:4rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[200px\]{max-width:200px}.max-w-\[250px\]{max-width:250px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.-space-y-px>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(-1px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(-1px * var(--tw-space-y-reverse))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.divide-gray-700>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity, 1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-gray-700\/50{border-color:#37415180}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.border-indigo-500{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.border-indigo-600{--tw-border-opacity: 1;border-color:rgb(79 70 229 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-opacity-20{--tw-border-opacity: .2}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/60{background-color:#0009}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-900{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.bg-blue-900\/20{background-color:#1e3a8a33}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.bg-gray-700\/50{background-color:#37415180}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-800\/50{background-color:#1f293780}.bg-gray-800\/95{background-color:#1f2937f2}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900\/50{background-color:#11182780}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-900{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.bg-green-900\/30{background-color:#14532d4d}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-50{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.bg-indigo-500\/10{background-color:#6366f11a}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-indigo-900{--tw-bg-opacity: 1;background-color:rgb(49 46 129 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-900{--tw-bg-opacity: 1;background-color:rgb(88 28 135 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-900\/20{background-color:#7f1d1d33}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/50{background-color:#ffffff80}.bg-white\/70{background-color:#ffffffb3}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-900\/30{background-color:#713f124d}.bg-opacity-10{--tw-bg-opacity: .1}.bg-opacity-20{--tw-bg-opacity: .2}.bg-opacity-25{--tw-bg-opacity: .25}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-70{--tw-bg-opacity: .7}.bg-opacity-90{--tw-bg-opacity: .9}.bg-opacity-95{--tw-bg-opacity: .95}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-50{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-600{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-50{--tw-gradient-from: #f9fafb var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-800\/50{--tw-gradient-from: rgb(31 41 55 / .5) var(--tw-gradient-from-position);--tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900{--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900\/90{--tw-gradient-from: rgb(17 24 39 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-500{--tw-gradient-from: #22c55e var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-300{--tw-gradient-from: #a5b4fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(165 180 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-500{--tw-gradient-from: #6366f1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-600{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from: #ec4899 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 72 153 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #ef4444 var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from: #eab308 var(--tw-gradient-from-position);--tw-gradient-to: rgb(234 179 8 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-indigo-50{--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #eef2ff var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-indigo-900{--tw-gradient-to: rgb(49 46 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #312e81 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-300{--tw-gradient-to: rgb(216 180 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #d8b4fe var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-500{--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #a855f7 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-black\/90{--tw-gradient-to: rgb(0 0 0 / .9) var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.to-gray-700\/50{--tw-gradient-to: rgb(55 65 81 / .5) var(--tw-gradient-to-position)}.to-gray-800{--tw-gradient-to: #1f2937 var(--tw-gradient-to-position)}.to-green-600{--tw-gradient-to: #16a34a var(--tw-gradient-to-position)}.to-indigo-500{--tw-gradient-to: #6366f1 var(--tw-gradient-to-position)}.to-pink-300{--tw-gradient-to: #f9a8d4 var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to: #a855f7 var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to: #dc2626 var(--tw-gradient-to-position)}.to-white{--tw-gradient-to: #fff var(--tw-gradient-to-position)}.to-yellow-600{--tw-gradient-to: #ca8a04 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-right{background-position:right}.bg-no-repeat{background-repeat:no-repeat}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-10{padding-right:2.5rem}.pr-3{padding-right:.75rem}.pr-32{padding-right:8rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-0\.5{padding-top:.125rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-6{line-height:1.5rem}.tracking-wider{letter-spacing:.05em}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity, 1))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-indigo-500\/25{--tw-shadow-color: rgb(99 102 241 / .25);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-red-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.blur-md{--tw-blur: blur(12px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-lg{--tw-backdrop-blur: blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[appearance\:textfield\]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}@font-face{font-family:DingTalk;src:url(/assets/DingTalk-CT5a5scH.ttf) format("truetype")}*{font-family:DingTalk,sans-serif!important}.hover\:rotate-180:hover{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:rotate-90:hover{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.hover\:border-gray-500:hover{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.hover\:border-indigo-500:hover{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.hover\:bg-black:hover{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-400:hover{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-900\/30:hover{background-color:#1e3a8a4d}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600\/50:hover{background-color:#4b556380}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700\/50:hover{background-color:#37415180}.hover\:bg-green-100:hover{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.hover\:bg-green-400:hover{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-100:hover{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-400:hover{--tw-bg-opacity: 1;background-color:rgb(129 140 248 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-700:hover{--tw-bg-opacity: 1;background-color:rgb(67 56 202 / var(--tw-bg-opacity, 1))}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover\:bg-red-400:hover{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.hover\:bg-red-900\/30:hover{background-color:#7f1d1d4d}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-opacity-10:hover{--tw-bg-opacity: .1}.hover\:bg-opacity-20:hover{--tw-bg-opacity: .2}.hover\:bg-opacity-50:hover{--tw-bg-opacity: .5}.hover\:from-cyan-600:hover{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-cyan-700:hover{--tw-gradient-from: #0e7490 var(--tw-gradient-from-position);--tw-gradient-to: rgb(14 116 144 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-indigo-500:hover{--tw-gradient-from: #6366f1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-indigo-600:hover{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:via-purple-600:hover{--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #9333ea var(--tw-gradient-via-position), var(--tw-gradient-to)}.hover\:to-indigo-600:hover{--tw-gradient-to: #4f46e5 var(--tw-gradient-to-position)}.hover\:to-pink-600:hover{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.hover\:to-purple-600:hover{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.hover\:to-purple-700:hover{--tw-gradient-to: #7e22ce var(--tw-gradient-to-position)}.hover\:text-gray-200:hover{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-indigo-300:hover{--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-cyan-500\/50:hover{--tw-shadow-color: rgb(6 182 212 / .5);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-indigo-500\/35:hover{--tw-shadow-color: rgb(99 102 241 / .35);--tw-shadow: var(--tw-shadow-colored)}.focus\:z-10:focus{z-index:10}.focus\:border-cyan-500:focus{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity, 1))}.focus\:border-indigo-500:focus{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-inset:focus{--tw-ring-inset: inset}.focus\:ring-cyan-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-500\/50:focus{--tw-ring-color: rgb(99 102 241 / .5)}.focus\:ring-indigo-500\/70:focus{--tw-ring-color: rgb(99 102 241 / .7)}.focus\:ring-purple-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.focus\:ring-opacity-50:focus{--tw-ring-opacity: .5}.focus\:ring-offset-0:focus{--tw-ring-offset-width: 0px}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.group:focus-within .group-focus-within\:bg-indigo-500\/30{background-color:#6366f14d}.group:focus-within .group-focus-within\:bg-indigo-500\/50{background-color:#6366f180}.group:focus-within .group-focus-within\:text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.group:focus-within .group-focus-within\:text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.group:focus-within .group-focus-within\:opacity-100{opacity:1}.group:hover .group-hover\:translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.group:hover .group-hover\:border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.group:hover .group-hover\:text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:opacity-20{opacity:.2}@media (min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mb-3{margin-bottom:.75rem}.sm\:mb-4{margin-bottom:1rem}.sm\:mb-6{margin-bottom:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:mr-2{margin-right:.5rem}.sm\:h-4{height:1rem}.sm\:h-5{height:1.25rem}.sm\:h-6{height:1.5rem}.sm\:h-\[160px\]{height:160px}.sm\:w-4{width:1rem}.sm\:w-5{width:1.25rem}.sm\:w-6{width:1.5rem}.sm\:w-\[160px\]{width:160px}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-sm{max-width:24rem}.sm\:max-w-xl{max-width:36rem}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-4{gap:1rem}.sm\:gap-6{gap:1.5rem}.sm\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.sm\:p-0{padding:0}.sm\:p-2{padding:.5rem}.sm\:p-3{padding:.75rem}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3{padding-top:.75rem;padding-bottom:.75rem}.sm\:py-4{padding-top:1rem;padding-bottom:1rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 768px){.md\:max-w-md{max-width:28rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:relative{position:relative}.lg\:hidden{display:none}.lg\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (prefers-color-scheme: dark){.dark\:hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}}.\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.alert-fade-enter-active[data-v-0ce78a4a],.alert-fade-leave-active[data-v-0ce78a4a]{transition:all .5s cubic-bezier(.68,-.55,.265,1.55)}.alert-fade-enter-from[data-v-0ce78a4a],.alert-fade-leave-to[data-v-0ce78a4a]{opacity:0;transform:translate(-50px) scale(.95)}.app-container{min-height:100vh;width:100%;transition:background-color .5s ease}.light{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #eef2ff var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: #fff var(--tw-gradient-to-position)}.dark{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(49 46 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #312e81 var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: #000 var(--tw-gradient-to-position)}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:9999}.loading-spinner{width:50px;height:50px;border:3px solid #fff;border-top:3px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}} diff --git a/themes/2025/assets/index-DKQ1YPO4.js b/themes/2025/assets/index-DKQ1YPO4.js deleted file mode 100644 index 4af6dfe0f..000000000 --- a/themes/2025/assets/index-DKQ1YPO4.js +++ /dev/null @@ -1,86 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/SendFileView-DsSIurce.js","assets/clipboard-BhvW87y2.js","assets/file-D8mQlyUF.js","assets/trash-FNvP9-P8.js","assets/SendFileView-DFaiiDlV.css","assets/RetrievewFileView-DyKPLNPu.js","assets/box-Ty09a89y.js","assets/hard-drive-C37_tD5A.js","assets/RetrievewFileView-BgLHFGkc.css","assets/AdminLayout-DlX3CUuP.js","assets/AdminLayout-CZwJxNxp.css","assets/DashboardView-CykWLsDF.js","assets/FileManageView-BLdG4lo7.js","assets/FileManageView-CwWUDTzq.css","assets/LoginView-DXxv6UDD.js","assets/LoginView-zMyguVQQ.css"])))=>i.map(i=>d[i]); -(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const i of o.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&s(i)}).observe(document,{childList:!0,subtree:!0});function n(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(r){if(r.ep)return;r.ep=!0;const o=n(r);fetch(r.href,o)}})();/** -* @vue/shared v3.5.17 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**//*! #__NO_SIDE_EFFECTS__ */function Pr(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const ce={},Qt=[],rt=()=>{},Fc=()=>!1,_s=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Lr=e=>e.startsWith("onUpdate:"),ge=Object.assign,Nr=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Dc=Object.prototype.hasOwnProperty,se=(e,t)=>Dc.call(e,t),$=Array.isArray,Yt=e=>$n(e)==="[object Map]",cn=e=>$n(e)==="[object Set]",oo=e=>$n(e)==="[object Date]",K=e=>typeof e=="function",de=e=>typeof e=="string",ot=e=>typeof e=="symbol",oe=e=>e!==null&&typeof e=="object",xi=e=>(oe(e)||K(e))&&K(e.then)&&K(e.catch),Ri=Object.prototype.toString,$n=e=>Ri.call(e),jc=e=>$n(e).slice(8,-1),Ci=e=>$n(e)==="[object Object]",Ir=e=>de(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,bn=Pr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),ws=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Bc=/-(\w)/g,Ve=ws(e=>e.replace(Bc,(t,n)=>n?n.toUpperCase():"")),$c=/\B([A-Z])/g,Pt=ws(e=>e.replace($c,"-$1").toLowerCase()),vs=ws(e=>e.charAt(0).toUpperCase()+e.slice(1)),Vs=ws(e=>e?`on${vs(e)}`:""),Tt=(e,t)=>!Object.is(e,t),es=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},is=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Uc=e=>{const t=de(e)?Number(e):NaN;return isNaN(t)?e:t};let io;const Es=()=>io||(io=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Ss(e){if($(e)){const t={};for(let n=0;n{if(n){const s=n.split(Vc);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function an(e){let t="";if(de(e))t=e;else if($(e))for(let n=0;nUn(n,t))}const Ai=e=>!!(e&&e.__v_isRef===!0),Gc=e=>de(e)?e:e==null?"":$(e)||oe(e)&&(e.toString===Ri||!K(e.toString))?Ai(e)?Gc(e.value):JSON.stringify(e,Oi,2):String(e),Oi=(e,t)=>Ai(t)?Oi(e,t.value):Yt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],o)=>(n[qs(s,o)+" =>"]=r,n),{})}:cn(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>qs(n))}:ot(t)?qs(t):oe(t)&&!$(t)&&!Ci(t)?String(t):t,qs=(e,t="")=>{var n;return ot(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** -* @vue/reactivity v3.5.17 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let _e;class Pi{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=_e,!t&&_e&&(this.index=(_e.scopes||(_e.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0&&--this._on===0&&(_e=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n0)return;if(wn){let t=wn;for(wn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;_n;){let t=_n;for(_n=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function Fi(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Di(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),Dr(s),Qc(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function ar(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ji(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ji(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===On)||(e.globalVersion=On,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!ar(e))))return;e.flags|=2;const t=e.dep,n=ue,s=Ke;ue=e,Ke=!0;try{Fi(e);const r=e.fn(e._value);(t.version===0||Tt(r,e._value))&&(e.flags|=128,e._value=r,t.version++)}catch(r){throw t.version++,r}finally{ue=n,Ke=s,Di(e),e.flags&=-3}}function Dr(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let o=n.computed.deps;o;o=o.nextDep)Dr(o,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Qc(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Ke=!0;const Bi=[];function pt(){Bi.push(Ke),Ke=!1}function mt(){const e=Bi.pop();Ke=e===void 0?!0:e}function lo(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ue;ue=void 0;try{t()}finally{ue=n}}}let On=0;class Yc{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class jr{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!ue||!Ke||ue===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ue)n=this.activeLink=new Yc(ue,this),ue.deps?(n.prevDep=ue.depsTail,ue.depsTail.nextDep=n,ue.depsTail=n):ue.deps=ue.depsTail=n,$i(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=ue.depsTail,n.nextDep=void 0,ue.depsTail.nextDep=n,ue.depsTail=n,ue.deps===n&&(ue.deps=s)}return n}trigger(t){this.version++,On++,this.notify(t)}notify(t){kr();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Fr()}}}function $i(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)$i(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const ls=new WeakMap,jt=Symbol(""),ur=Symbol(""),Pn=Symbol("");function we(e,t,n){if(Ke&&ue){let s=ls.get(e);s||ls.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new jr),r.map=s,r.key=n),r.track()}}function ut(e,t,n,s,r,o){const i=ls.get(e);if(!i){On++;return}const l=c=>{c&&c.trigger()};if(kr(),t==="clear")i.forEach(l);else{const c=$(e),u=c&&Ir(n);if(c&&n==="length"){const a=Number(s);i.forEach((f,p)=>{(p==="length"||p===Pn||!ot(p)&&p>=a)&&l(f)})}else switch((n!==void 0||i.has(void 0))&&l(i.get(n)),u&&l(i.get(Pn)),t){case"add":c?u&&l(i.get("length")):(l(i.get(jt)),Yt(e)&&l(i.get(ur)));break;case"delete":c||(l(i.get(jt)),Yt(e)&&l(i.get(ur)));break;case"set":Yt(e)&&l(i.get(jt));break}}Fr()}function Zc(e,t){const n=ls.get(e);return n&&n.get(t)}function zt(e){const t=Q(e);return t===e?t:(we(t,"iterate",Pn),He(e)?t:t.map(be))}function xs(e){return we(e=Q(e),"iterate",Pn),e}const ea={__proto__:null,[Symbol.iterator](){return Ws(this,Symbol.iterator,be)},concat(...e){return zt(this).concat(...e.map(t=>$(t)?zt(t):t))},entries(){return Ws(this,"entries",e=>(e[1]=be(e[1]),e))},every(e,t){return lt(this,"every",e,t,void 0,arguments)},filter(e,t){return lt(this,"filter",e,t,n=>n.map(be),arguments)},find(e,t){return lt(this,"find",e,t,be,arguments)},findIndex(e,t){return lt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return lt(this,"findLast",e,t,be,arguments)},findLastIndex(e,t){return lt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return lt(this,"forEach",e,t,void 0,arguments)},includes(...e){return zs(this,"includes",e)},indexOf(...e){return zs(this,"indexOf",e)},join(e){return zt(this).join(e)},lastIndexOf(...e){return zs(this,"lastIndexOf",e)},map(e,t){return lt(this,"map",e,t,void 0,arguments)},pop(){return hn(this,"pop")},push(...e){return hn(this,"push",e)},reduce(e,...t){return co(this,"reduce",e,t)},reduceRight(e,...t){return co(this,"reduceRight",e,t)},shift(){return hn(this,"shift")},some(e,t){return lt(this,"some",e,t,void 0,arguments)},splice(...e){return hn(this,"splice",e)},toReversed(){return zt(this).toReversed()},toSorted(e){return zt(this).toSorted(e)},toSpliced(...e){return zt(this).toSpliced(...e)},unshift(...e){return hn(this,"unshift",e)},values(){return Ws(this,"values",be)}};function Ws(e,t,n){const s=xs(e),r=s[t]();return s!==e&&!He(e)&&(r._next=r.next,r.next=()=>{const o=r._next();return o.value&&(o.value=n(o.value)),o}),r}const ta=Array.prototype;function lt(e,t,n,s,r,o){const i=xs(e),l=i!==e&&!He(e),c=i[t];if(c!==ta[t]){const f=c.apply(e,o);return l?be(f):f}let u=n;i!==e&&(l?u=function(f,p){return n.call(this,be(f),p,e)}:n.length>2&&(u=function(f,p){return n.call(this,f,p,e)}));const a=c.call(i,u,s);return l&&r?r(a):a}function co(e,t,n,s){const r=xs(e);let o=n;return r!==e&&(He(e)?n.length>3&&(o=function(i,l,c){return n.call(this,i,l,c,e)}):o=function(i,l,c){return n.call(this,i,be(l),c,e)}),r[t](o,...s)}function zs(e,t,n){const s=Q(e);we(s,"iterate",Pn);const r=s[t](...n);return(r===-1||r===!1)&&Ur(n[0])?(n[0]=Q(n[0]),s[t](...n)):r}function hn(e,t,n=[]){pt(),kr();const s=Q(e)[t].apply(e,n);return Fr(),mt(),s}const na=Pr("__proto__,__v_isRef,__isVue"),Ui=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ot));function sa(e){ot(e)||(e=String(e));const t=Q(this);return we(t,"has",e),t.hasOwnProperty(e)}class Hi{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,o=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return o;if(n==="__v_raw")return s===(r?o?ha:Wi:o?Ki:qi).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const i=$(t);if(!r){let c;if(i&&(c=ea[n]))return c;if(n==="hasOwnProperty")return sa}const l=Reflect.get(t,n,fe(t)?t:s);return(ot(n)?Ui.has(n):na(n))||(r||we(t,"get",n),o)?l:fe(l)?i&&Ir(n)?l:l.value:oe(l)?r?Ji(l):Hn(l):l}}class Vi extends Hi{constructor(t=!1){super(!1,t)}set(t,n,s,r){let o=t[n];if(!this._isShallow){const c=At(o);if(!He(s)&&!At(s)&&(o=Q(o),s=Q(s)),!$(t)&&fe(o)&&!fe(s))return c?!1:(o.value=s,!0)}const i=$(t)&&Ir(n)?Number(n)e,Gn=e=>Reflect.getPrototypeOf(e);function ca(e,t,n){return function(...s){const r=this.__v_raw,o=Q(r),i=Yt(o),l=e==="entries"||e===Symbol.iterator&&i,c=e==="keys"&&i,u=r[e](...s),a=n?fr:t?cs:be;return!t&&we(o,"iterate",c?ur:jt),{next(){const{value:f,done:p}=u.next();return p?{value:f,done:p}:{value:l?[a(f[0]),a(f[1])]:a(f),done:p}},[Symbol.iterator](){return this}}}}function Xn(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function aa(e,t){const n={get(r){const o=this.__v_raw,i=Q(o),l=Q(r);e||(Tt(r,l)&&we(i,"get",r),we(i,"get",l));const{has:c}=Gn(i),u=t?fr:e?cs:be;if(c.call(i,r))return u(o.get(r));if(c.call(i,l))return u(o.get(l));o!==i&&o.get(r)},get size(){const r=this.__v_raw;return!e&&we(Q(r),"iterate",jt),Reflect.get(r,"size",r)},has(r){const o=this.__v_raw,i=Q(o),l=Q(r);return e||(Tt(r,l)&&we(i,"has",r),we(i,"has",l)),r===l?o.has(r):o.has(r)||o.has(l)},forEach(r,o){const i=this,l=i.__v_raw,c=Q(l),u=t?fr:e?cs:be;return!e&&we(c,"iterate",jt),l.forEach((a,f)=>r.call(o,u(a),u(f),i))}};return ge(n,e?{add:Xn("add"),set:Xn("set"),delete:Xn("delete"),clear:Xn("clear")}:{add(r){!t&&!He(r)&&!At(r)&&(r=Q(r));const o=Q(this);return Gn(o).has.call(o,r)||(o.add(r),ut(o,"add",r,r)),this},set(r,o){!t&&!He(o)&&!At(o)&&(o=Q(o));const i=Q(this),{has:l,get:c}=Gn(i);let u=l.call(i,r);u||(r=Q(r),u=l.call(i,r));const a=c.call(i,r);return i.set(r,o),u?Tt(o,a)&&ut(i,"set",r,o):ut(i,"add",r,o),this},delete(r){const o=Q(this),{has:i,get:l}=Gn(o);let c=i.call(o,r);c||(r=Q(r),c=i.call(o,r)),l&&l.call(o,r);const u=o.delete(r);return c&&ut(o,"delete",r,void 0),u},clear(){const r=Q(this),o=r.size!==0,i=r.clear();return o&&ut(r,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=ca(r,e,t)}),n}function Br(e,t){const n=aa(e,t);return(s,r,o)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(se(n,r)&&r in s?n:s,r,o)}const ua={get:Br(!1,!1)},fa={get:Br(!1,!0)},da={get:Br(!0,!1)};const qi=new WeakMap,Ki=new WeakMap,Wi=new WeakMap,ha=new WeakMap;function pa(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function ma(e){return e.__v_skip||!Object.isExtensible(e)?0:pa(jc(e))}function Hn(e){return At(e)?e:$r(e,!1,oa,ua,qi)}function zi(e){return $r(e,!1,la,fa,Ki)}function Ji(e){return $r(e,!0,ia,da,Wi)}function $r(e,t,n,s,r){if(!oe(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=ma(e);if(o===0)return e;const i=r.get(e);if(i)return i;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function dt(e){return At(e)?dt(e.__v_raw):!!(e&&e.__v_isReactive)}function At(e){return!!(e&&e.__v_isReadonly)}function He(e){return!!(e&&e.__v_isShallow)}function Ur(e){return e?!!e.__v_raw:!1}function Q(e){const t=e&&e.__v_raw;return t?Q(t):e}function Hr(e){return!se(e,"__v_skip")&&Object.isExtensible(e)&&cr(e,"__v_skip",!0),e}const be=e=>oe(e)?Hn(e):e,cs=e=>oe(e)?Ji(e):e;function fe(e){return e?e.__v_isRef===!0:!1}function en(e){return Gi(e,!1)}function ga(e){return Gi(e,!0)}function Gi(e,t){return fe(e)?e:new ya(e,t)}class ya{constructor(t,n){this.dep=new jr,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:Q(t),this._value=n?t:be(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||He(t)||At(t);t=s?t:Q(t),Tt(t,n)&&(this._rawValue=t,this._value=s?t:be(t),this.dep.trigger())}}function Pe(e){return fe(e)?e.value:e}const ba={get:(e,t,n)=>t==="__v_raw"?e:Pe(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return fe(r)&&!fe(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function Xi(e){return dt(e)?e:new Proxy(e,ba)}function _a(e){const t=$(e)?new Array(e.length):{};for(const n in e)t[n]=Qi(e,n);return t}class wa{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return Zc(Q(this._object),this._key)}}class va{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Ea(e,t,n){return fe(e)?e:K(e)?new va(e):oe(e)&&arguments.length>1?Qi(e,t,n):en(e)}function Qi(e,t,n){const s=e[t];return fe(s)?s:new wa(e,t,n)}class Sa{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new jr(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=On-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&ue!==this)return ki(this,!0),!0}get value(){const t=this.dep.track();return ji(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function xa(e,t,n=!1){let s,r;return K(e)?s=e:(s=e.get,r=e.set),new Sa(s,r,n)}const Qn={},as=new WeakMap;let Mt;function Ra(e,t=!1,n=Mt){if(n){let s=as.get(n);s||as.set(n,s=[]),s.push(e)}}function Ca(e,t,n=ce){const{immediate:s,deep:r,once:o,scheduler:i,augmentJob:l,call:c}=n,u=L=>r?L:He(L)||r===!1||r===0?ft(L,1):ft(L);let a,f,p,m,y=!1,_=!1;if(fe(e)?(f=()=>e.value,y=He(e)):dt(e)?(f=()=>u(e),y=!0):$(e)?(_=!0,y=e.some(L=>dt(L)||He(L)),f=()=>e.map(L=>{if(fe(L))return L.value;if(dt(L))return u(L);if(K(L))return c?c(L,2):L()})):K(e)?t?f=c?()=>c(e,2):e:f=()=>{if(p){pt();try{p()}finally{mt()}}const L=Mt;Mt=a;try{return c?c(e,3,[m]):e(m)}finally{Mt=L}}:f=rt,t&&r){const L=f,j=r===!0?1/0:r;f=()=>ft(L(),j)}const x=Ni(),A=()=>{a.stop(),x&&x.active&&Nr(x.effects,a)};if(o&&t){const L=t;t=(...j)=>{L(...j),A()}}let C=_?new Array(e.length).fill(Qn):Qn;const P=L=>{if(!(!(a.flags&1)||!a.dirty&&!L))if(t){const j=a.run();if(r||y||(_?j.some((X,z)=>Tt(X,C[z])):Tt(j,C))){p&&p();const X=Mt;Mt=a;try{const z=[j,C===Qn?void 0:_&&C[0]===Qn?[]:C,m];C=j,c?c(t,3,z):t(...z)}finally{Mt=X}}}else a.run()};return l&&l(P),a=new Ii(f),a.scheduler=i?()=>i(P,!1):P,m=L=>Ra(L,!1,a),p=a.onStop=()=>{const L=as.get(a);if(L){if(c)c(L,4);else for(const j of L)j();as.delete(a)}},t?s?P(!0):C=a.run():i?i(P.bind(null,!0),!0):a.run(),A.pause=a.pause.bind(a),A.resume=a.resume.bind(a),A.stop=A,A}function ft(e,t=1/0,n){if(t<=0||!oe(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,fe(e))ft(e.value,t,n);else if($(e))for(let s=0;s{ft(s,t,n)});else if(Ci(e)){for(const s in e)ft(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&ft(e[s],t,n)}return e}/** -* @vue/runtime-core v3.5.17 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function Vn(e,t,n,s){try{return s?e(...s):e()}catch(r){Rs(r,t,n)}}function We(e,t,n,s){if(K(e)){const r=Vn(e,t,n,s);return r&&xi(r)&&r.catch(o=>{Rs(o,t,n)}),r}if($(e)){const r=[];for(let o=0;o>>1,r=xe[s],o=Ln(r);o=Ln(n)?xe.push(e):xe.splice(Aa(t),0,e),e.flags|=1,Zi()}}function Zi(){us||(us=Yi.then(tl))}function Oa(e){$(e)?Zt.push(...e):Et&&e.id===-1?Et.splice(Gt+1,0,e):e.flags&1||(Zt.push(e),e.flags|=1),Zi()}function ao(e,t,n=nt+1){for(;nLn(n)-Ln(s));if(Zt.length=0,Et){Et.push(...t);return}for(Et=t,Gt=0;Gte.id==null?e.flags&2?-1:1/0:e.id;function tl(e){try{for(nt=0;nt{s._d&&vo(-1);const o=fs(t);let i;try{i=e(...r)}finally{fs(o),s._d&&vo(1)}return i};return s._n=!0,s._c=!0,s._d=!0,s}function Fp(e,t){if(Ce===null)return e;const n=Ns(Ce),s=e.dirs||(e.dirs=[]);for(let r=0;re.__isTeleport,St=Symbol("_leaveCb"),Yn=Symbol("_enterCb");function rl(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Os(()=>{e.isMounted=!0}),dl(()=>{e.isUnmounting=!0}),e}const $e=[Function,Array],ol={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:$e,onEnter:$e,onAfterEnter:$e,onEnterCancelled:$e,onBeforeLeave:$e,onLeave:$e,onAfterLeave:$e,onLeaveCancelled:$e,onBeforeAppear:$e,onAppear:$e,onAfterAppear:$e,onAppearCancelled:$e},il=e=>{const t=e.subTree;return t.component?il(t.component):t},La={name:"BaseTransition",props:ol,setup(e,{slots:t}){const n=kl(),s=rl();return()=>{const r=t.default&&qr(t.default(),!0);if(!r||!r.length)return;const o=ll(r),i=Q(e),{mode:l}=i;if(s.isLeaving)return Js(o);const c=uo(o);if(!c)return Js(o);let u=Nn(c,i,s,n,f=>u=f);c.type!==Re&&Ht(c,u);let a=n.subTree&&uo(n.subTree);if(a&&a.type!==Re&&!Ft(c,a)&&il(n).type!==Re){let f=Nn(a,i,s,n);if(Ht(a,f),l==="out-in"&&c.type!==Re)return s.isLeaving=!0,f.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete f.afterLeave,a=void 0},Js(o);l==="in-out"&&c.type!==Re?f.delayLeave=(p,m,y)=>{const _=cl(s,a);_[String(a.key)]=a,p[St]=()=>{m(),p[St]=void 0,delete u.delayedLeave,a=void 0},u.delayedLeave=()=>{y(),delete u.delayedLeave,a=void 0}}:a=void 0}else a&&(a=void 0);return o}}};function ll(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==Re){t=n;break}}return t}const Na=La;function cl(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function Nn(e,t,n,s,r){const{appear:o,mode:i,persisted:l=!1,onBeforeEnter:c,onEnter:u,onAfterEnter:a,onEnterCancelled:f,onBeforeLeave:p,onLeave:m,onAfterLeave:y,onLeaveCancelled:_,onBeforeAppear:x,onAppear:A,onAfterAppear:C,onAppearCancelled:P}=t,L=String(e.key),j=cl(n,e),X=(I,W)=>{I&&We(I,s,9,W)},z=(I,W)=>{const ee=W[1];X(I,W),$(I)?I.every(F=>F.length<=1)&&ee():I.length<=1&&ee()},V={mode:i,persisted:l,beforeEnter(I){let W=c;if(!n.isMounted)if(o)W=x||c;else return;I[St]&&I[St](!0);const ee=j[L];ee&&Ft(e,ee)&&ee.el[St]&&ee.el[St](),X(W,[I])},enter(I){let W=u,ee=a,F=f;if(!n.isMounted)if(o)W=A||u,ee=C||a,F=P||f;else return;let Y=!1;const pe=I[Yn]=Ee=>{Y||(Y=!0,Ee?X(F,[I]):X(ee,[I]),V.delayedLeave&&V.delayedLeave(),I[Yn]=void 0)};W?z(W,[I,pe]):pe()},leave(I,W){const ee=String(e.key);if(I[Yn]&&I[Yn](!0),n.isUnmounting)return W();X(p,[I]);let F=!1;const Y=I[St]=pe=>{F||(F=!0,W(),pe?X(_,[I]):X(y,[I]),I[St]=void 0,j[ee]===e&&delete j[ee])};j[ee]=e,m?z(m,[I,Y]):Y()},clone(I){const W=Nn(I,t,n,s,r);return r&&r(W),W}};return V}function Js(e){if(Ts(e))return e=Ot(e),e.children=null,e}function uo(e){if(!Ts(e))return sl(e.type)&&e.children?ll(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&K(n.default))return n.default()}}function Ht(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Ht(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function qr(e,t=!1,n){let s=[],r=0;for(let o=0;o1)for(let o=0;ovn(y,t&&($(t)?t[_]:t),n,s,r));return}if(En(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&vn(e,t,n,s.component.subTree);return}const o=s.shapeFlag&4?Ns(s.component):s.el,i=r?null:o,{i:l,r:c}=e,u=t&&t.r,a=l.refs===ce?l.refs={}:l.refs,f=l.setupState,p=Q(f),m=f===ce?()=>!1:y=>se(p,y);if(u!=null&&u!==c&&(de(u)?(a[u]=null,m(u)&&(f[u]=null)):fe(u)&&(u.value=null)),K(c))Vn(c,l,12,[i,a]);else{const y=de(c),_=fe(c);if(y||_){const x=()=>{if(e.f){const A=y?m(c)?f[c]:a[c]:c.value;r?$(A)&&Nr(A,o):$(A)?A.includes(o)||A.push(o):y?(a[c]=[o],m(c)&&(f[c]=a[c])):(c.value=[o],e.k&&(a[e.k]=c.value))}else y?(a[c]=i,m(c)&&(f[c]=i)):_&&(c.value=i,e.k&&(a[e.k]=i))};i?(x.id=-1,ke(x,n)):x()}}}Es().requestIdleCallback;Es().cancelIdleCallback;const En=e=>!!e.type.__asyncLoader,Ts=e=>e.type.__isKeepAlive;function Ia(e,t){ul(e,"a",t)}function Ma(e,t){ul(e,"da",t)}function ul(e,t,n=ye){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(As(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Ts(r.parent.vnode)&&ka(s,t,n,r),r=r.parent}}function ka(e,t,n,s){const r=As(t,e,s,!0);Kr(()=>{Nr(s[t],r)},n)}function As(e,t,n=ye,s=!1){if(n){const r=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...i)=>{pt();const l=Kn(n),c=We(t,n,e,i);return l(),mt(),c});return s?r.unshift(o):r.push(o),o}}const gt=e=>(t,n=ye)=>{(!kn||e==="sp")&&As(e,(...s)=>t(...s),n)},Fa=gt("bm"),Os=gt("m"),Da=gt("bu"),fl=gt("u"),dl=gt("bum"),Kr=gt("um"),ja=gt("sp"),Ba=gt("rtg"),$a=gt("rtc");function Ua(e,t=ye){As("ec",e,t)}const hl="components";function Dp(e,t){return gl(hl,e,!0,t)||e}const pl=Symbol.for("v-ndc");function ml(e){return de(e)?gl(hl,e,!1)||e:e||pl}function gl(e,t,n=!0,s=!1){const r=Ce||ye;if(r){const o=r.type;{const l=Nu(o,!1);if(l&&(l===t||l===Ve(t)||l===vs(Ve(t))))return o}const i=fo(r[e]||o[e],t)||fo(r.appContext[e],t);return!i&&s?o:i}}function fo(e,t){return e&&(e[t]||e[Ve(t)]||e[vs(Ve(t))])}function Ha(e,t,n,s){let r;const o=n,i=$(e);if(i||de(e)){const l=i&&dt(e);let c=!1,u=!1;l&&(c=!He(e),u=At(e),e=xs(e)),r=new Array(e.length);for(let a=0,f=e.length;at(l,c,void 0,o));else{const l=Object.keys(e);r=new Array(l.length);for(let c=0,u=l.length;ce?Fl(e)?Ns(e):dr(e.parent):null,Sn=ge(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>dr(e.parent),$root:e=>dr(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>bl(e),$forceUpdate:e=>e.f||(e.f=()=>{Vr(e.update)}),$nextTick:e=>e.n||(e.n=Cs.bind(e.proxy)),$watch:e=>fu.bind(e)}),Gs=(e,t)=>e!==ce&&!e.__isScriptSetup&&se(e,t),Va={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:o,accessCache:i,type:l,appContext:c}=e;let u;if(t[0]!=="$"){const m=i[t];if(m!==void 0)switch(m){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return o[t]}else{if(Gs(s,t))return i[t]=1,s[t];if(r!==ce&&se(r,t))return i[t]=2,r[t];if((u=e.propsOptions[0])&&se(u,t))return i[t]=3,o[t];if(n!==ce&&se(n,t))return i[t]=4,n[t];hr&&(i[t]=0)}}const a=Sn[t];let f,p;if(a)return t==="$attrs"&&we(e.attrs,"get",""),a(e);if((f=l.__cssModules)&&(f=f[t]))return f;if(n!==ce&&se(n,t))return i[t]=4,n[t];if(p=c.config.globalProperties,se(p,t))return p[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:o}=e;return Gs(r,t)?(r[t]=n,!0):s!==ce&&se(s,t)?(s[t]=n,!0):se(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,propsOptions:o}},i){let l;return!!n[i]||e!==ce&&se(e,i)||Gs(t,i)||(l=o[0])&&se(l,i)||se(s,i)||se(Sn,i)||se(r.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:se(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function ho(e){return $(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let hr=!0;function qa(e){const t=bl(e),n=e.proxy,s=e.ctx;hr=!1,t.beforeCreate&&po(t.beforeCreate,e,"bc");const{data:r,computed:o,methods:i,watch:l,provide:c,inject:u,created:a,beforeMount:f,mounted:p,beforeUpdate:m,updated:y,activated:_,deactivated:x,beforeDestroy:A,beforeUnmount:C,destroyed:P,unmounted:L,render:j,renderTracked:X,renderTriggered:z,errorCaptured:V,serverPrefetch:I,expose:W,inheritAttrs:ee,components:F,directives:Y,filters:pe}=t;if(u&&Ka(u,s,null),i)for(const G in i){const te=i[G];K(te)&&(s[G]=te.bind(n))}if(r){const G=r.call(n,n);oe(G)&&(e.data=Hn(G))}if(hr=!0,o)for(const G in o){const te=o[G],it=K(te)?te.bind(n,n):K(te.get)?te.get.bind(n,n):rt,yt=!K(te)&&K(te.set)?te.set.bind(n):rt,Ge=De({get:it,set:yt});Object.defineProperty(s,G,{enumerable:!0,configurable:!0,get:()=>Ge.value,set:Te=>Ge.value=Te})}if(l)for(const G in l)yl(l[G],s,n,G);if(c){const G=K(c)?c.call(n):c;Reflect.ownKeys(G).forEach(te=>{$t(te,G[te])})}a&&po(a,e,"c");function ie(G,te){$(te)?te.forEach(it=>G(it.bind(n))):te&&G(te.bind(n))}if(ie(Fa,f),ie(Os,p),ie(Da,m),ie(fl,y),ie(Ia,_),ie(Ma,x),ie(Ua,V),ie($a,X),ie(Ba,z),ie(dl,C),ie(Kr,L),ie(ja,I),$(W))if(W.length){const G=e.exposed||(e.exposed={});W.forEach(te=>{Object.defineProperty(G,te,{get:()=>n[te],set:it=>n[te]=it})})}else e.exposed||(e.exposed={});j&&e.render===rt&&(e.render=j),ee!=null&&(e.inheritAttrs=ee),F&&(e.components=F),Y&&(e.directives=Y),I&&al(e)}function Ka(e,t,n=rt){$(e)&&(e=pr(e));for(const s in e){const r=e[s];let o;oe(r)?"default"in r?o=Le(r.from||s,r.default,!0):o=Le(r.from||s):o=Le(r),fe(o)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>o.value,set:i=>o.value=i}):t[s]=o}}function po(e,t,n){We($(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function yl(e,t,n,s){let r=s.includes(".")?Pl(n,s):()=>n[s];if(de(e)){const o=t[e];K(o)&&xn(r,o)}else if(K(e))xn(r,e.bind(n));else if(oe(e))if($(e))e.forEach(o=>yl(o,t,n,s));else{const o=K(e.handler)?e.handler.bind(n):t[e.handler];K(o)&&xn(r,o,e)}}function bl(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:o,config:{optionMergeStrategies:i}}=e.appContext,l=o.get(t);let c;return l?c=l:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(u=>hs(c,u,i,!0)),hs(c,t,i)),oe(t)&&o.set(t,c),c}function hs(e,t,n,s=!1){const{mixins:r,extends:o}=t;o&&hs(e,o,n,!0),r&&r.forEach(i=>hs(e,i,n,!0));for(const i in t)if(!(s&&i==="expose")){const l=Wa[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const Wa={data:mo,props:go,emits:go,methods:yn,computed:yn,beforeCreate:Se,created:Se,beforeMount:Se,mounted:Se,beforeUpdate:Se,updated:Se,beforeDestroy:Se,beforeUnmount:Se,destroyed:Se,unmounted:Se,activated:Se,deactivated:Se,errorCaptured:Se,serverPrefetch:Se,components:yn,directives:yn,watch:Ja,provide:mo,inject:za};function mo(e,t){return t?e?function(){return ge(K(e)?e.call(this,this):e,K(t)?t.call(this,this):t)}:t:e}function za(e,t){return yn(pr(e),pr(t))}function pr(e){if($(e)){const t={};for(let n=0;n1)return n&&K(t)?t.call(s&&s.proxy):t}}function Qa(){return!!(ye||Ce||Bt)}const wl={},vl=()=>Object.create(wl),El=e=>Object.getPrototypeOf(e)===wl;function Ya(e,t,n,s=!1){const r={},o=vl();e.propsDefaults=Object.create(null),Sl(e,t,r,o);for(const i in e.propsOptions[0])i in r||(r[i]=void 0);n?e.props=s?r:zi(r):e.type.props?e.props=r:e.props=o,e.attrs=o}function Za(e,t,n,s){const{props:r,attrs:o,vnode:{patchFlag:i}}=e,l=Q(r),[c]=e.propsOptions;let u=!1;if((s||i>0)&&!(i&16)){if(i&8){const a=e.vnode.dynamicProps;for(let f=0;f{c=!0;const[p,m]=xl(f,t,!0);ge(i,p),m&&l.push(...m)};!n&&t.mixins.length&&t.mixins.forEach(a),e.extends&&a(e.extends),e.mixins&&e.mixins.forEach(a)}if(!o&&!c)return oe(e)&&s.set(e,Qt),Qt;if($(o))for(let a=0;ae[0]==="_"||e==="$stable",zr=e=>$(e)?e.map(st):[st(e)],tu=(e,t,n)=>{if(t._n)return t;const s=ds((...r)=>zr(t(...r)),n);return s._c=!1,s},Rl=(e,t,n)=>{const s=e._ctx;for(const r in e){if(Wr(r))continue;const o=e[r];if(K(o))t[r]=tu(r,o,s);else if(o!=null){const i=zr(o);t[r]=()=>i}}},Cl=(e,t)=>{const n=zr(t);e.slots.default=()=>n},Tl=(e,t,n)=>{for(const s in t)(n||!Wr(s))&&(e[s]=t[s])},nu=(e,t,n)=>{const s=e.slots=vl();if(e.vnode.shapeFlag&32){const r=t.__;r&&cr(s,"__",r,!0);const o=t._;o?(Tl(s,t,n),n&&cr(s,"_",o,!0)):Rl(t,s)}else t&&Cl(e,t)},su=(e,t,n)=>{const{vnode:s,slots:r}=e;let o=!0,i=ce;if(s.shapeFlag&32){const l=t._;l?n&&l===1?o=!1:Tl(r,t,n):(o=!t.$stable,Rl(t,r)),i=t}else t&&(Cl(e,t),i={default:1});if(o)for(const l in r)!Wr(l)&&i[l]==null&&delete r[l]},ke=bu;function ru(e){return ou(e)}function ou(e,t){const n=Es();n.__VUE__=!0;const{insert:s,remove:r,patchProp:o,createElement:i,createText:l,createComment:c,setText:u,setElementText:a,parentNode:f,nextSibling:p,setScopeId:m=rt,insertStaticContent:y}=e,_=(d,h,g,w=null,S=null,E=null,N=void 0,O=null,T=!!h.dynamicChildren)=>{if(d===h)return;d&&!Ft(d,h)&&(w=v(d),Te(d,S,E,!0),d=null),h.patchFlag===-2&&(T=!1,h.dynamicChildren=null);const{type:R,ref:H,shapeFlag:k}=h;switch(R){case Ls:x(d,h,g,w);break;case Re:A(d,h,g,w);break;case Qs:d==null&&C(h,g,w,N);break;case Ue:F(d,h,g,w,S,E,N,O,T);break;default:k&1?j(d,h,g,w,S,E,N,O,T):k&6?Y(d,h,g,w,S,E,N,O,T):(k&64||k&128)&&R.process(d,h,g,w,S,E,N,O,T,B)}H!=null&&S?vn(H,d&&d.ref,E,h||d,!h):H==null&&d&&d.ref!=null&&vn(d.ref,null,E,d,!0)},x=(d,h,g,w)=>{if(d==null)s(h.el=l(h.children),g,w);else{const S=h.el=d.el;h.children!==d.children&&u(S,h.children)}},A=(d,h,g,w)=>{d==null?s(h.el=c(h.children||""),g,w):h.el=d.el},C=(d,h,g,w)=>{[d.el,d.anchor]=y(d.children,h,g,w,d.el,d.anchor)},P=({el:d,anchor:h},g,w)=>{let S;for(;d&&d!==h;)S=p(d),s(d,g,w),d=S;s(h,g,w)},L=({el:d,anchor:h})=>{let g;for(;d&&d!==h;)g=p(d),r(d),d=g;r(h)},j=(d,h,g,w,S,E,N,O,T)=>{h.type==="svg"?N="svg":h.type==="math"&&(N="mathml"),d==null?X(h,g,w,S,E,N,O,T):I(d,h,S,E,N,O,T)},X=(d,h,g,w,S,E,N,O)=>{let T,R;const{props:H,shapeFlag:k,transition:U,dirs:q}=d;if(T=d.el=i(d.type,E,H&&H.is,H),k&8?a(T,d.children):k&16&&V(d.children,T,null,w,S,Xs(d,E),N,O),q&&Lt(d,null,w,"created"),z(T,d,d.scopeId,N,w),H){for(const ae in H)ae!=="value"&&!bn(ae)&&o(T,ae,null,H[ae],E,w);"value"in H&&o(T,"value",null,H.value,E),(R=H.onVnodeBeforeMount)&&Ze(R,w,d)}q&&Lt(d,null,w,"beforeMount");const Z=iu(S,U);Z&&U.beforeEnter(T),s(T,h,g),((R=H&&H.onVnodeMounted)||Z||q)&&ke(()=>{R&&Ze(R,w,d),Z&&U.enter(T),q&&Lt(d,null,w,"mounted")},S)},z=(d,h,g,w,S)=>{if(g&&m(d,g),w)for(let E=0;E{for(let R=T;R{const O=h.el=d.el;let{patchFlag:T,dynamicChildren:R,dirs:H}=h;T|=d.patchFlag&16;const k=d.props||ce,U=h.props||ce;let q;if(g&&Nt(g,!1),(q=U.onVnodeBeforeUpdate)&&Ze(q,g,h,d),H&&Lt(h,d,g,"beforeUpdate"),g&&Nt(g,!0),(k.innerHTML&&U.innerHTML==null||k.textContent&&U.textContent==null)&&a(O,""),R?W(d.dynamicChildren,R,O,g,w,Xs(h,S),E):N||te(d,h,O,null,g,w,Xs(h,S),E,!1),T>0){if(T&16)ee(O,k,U,g,S);else if(T&2&&k.class!==U.class&&o(O,"class",null,U.class,S),T&4&&o(O,"style",k.style,U.style,S),T&8){const Z=h.dynamicProps;for(let ae=0;ae{q&&Ze(q,g,h,d),H&&Lt(h,d,g,"updated")},w)},W=(d,h,g,w,S,E,N)=>{for(let O=0;O{if(h!==g){if(h!==ce)for(const E in h)!bn(E)&&!(E in g)&&o(d,E,h[E],null,S,w);for(const E in g){if(bn(E))continue;const N=g[E],O=h[E];N!==O&&E!=="value"&&o(d,E,O,N,S,w)}"value"in g&&o(d,"value",h.value,g.value,S)}},F=(d,h,g,w,S,E,N,O,T)=>{const R=h.el=d?d.el:l(""),H=h.anchor=d?d.anchor:l("");let{patchFlag:k,dynamicChildren:U,slotScopeIds:q}=h;q&&(O=O?O.concat(q):q),d==null?(s(R,g,w),s(H,g,w),V(h.children||[],g,H,S,E,N,O,T)):k>0&&k&64&&U&&d.dynamicChildren?(W(d.dynamicChildren,U,g,S,E,N,O),(h.key!=null||S&&h===S.subTree)&&Al(d,h,!0)):te(d,h,g,H,S,E,N,O,T)},Y=(d,h,g,w,S,E,N,O,T)=>{h.slotScopeIds=O,d==null?h.shapeFlag&512?S.ctx.activate(h,g,w,N,T):pe(h,g,w,S,E,N,T):Ee(d,h,T)},pe=(d,h,g,w,S,E,N)=>{const O=d.component=Tu(d,w,S);if(Ts(d)&&(O.ctx.renderer=B),Au(O,!1,N),O.asyncDep){if(S&&S.registerDep(O,ie,N),!d.el){const T=O.subTree=me(Re);A(null,T,h,g)}}else ie(O,d,h,g,S,E,N)},Ee=(d,h,g)=>{const w=h.component=d.component;if(gu(d,h,g))if(w.asyncDep&&!w.asyncResolved){G(w,h,g);return}else w.next=h,w.update();else h.el=d.el,w.vnode=h},ie=(d,h,g,w,S,E,N)=>{const O=()=>{if(d.isMounted){let{next:k,bu:U,u:q,parent:Z,vnode:ae}=d;{const Qe=Ol(d);if(Qe){k&&(k.el=ae.el,G(d,k,N)),Qe.asyncDep.then(()=>{d.isUnmounted||O()});return}}let re=k,Ae;Nt(d,!1),k?(k.el=ae.el,G(d,k,N)):k=ae,U&&es(U),(Ae=k.props&&k.props.onVnodeBeforeUpdate)&&Ze(Ae,Z,k,ae),Nt(d,!0);const Oe=_o(d),Xe=d.subTree;d.subTree=Oe,_(Xe,Oe,f(Xe.el),v(Xe),d,S,E),k.el=Oe.el,re===null&&yu(d,Oe.el),q&&ke(q,S),(Ae=k.props&&k.props.onVnodeUpdated)&&ke(()=>Ze(Ae,Z,k,ae),S)}else{let k;const{el:U,props:q}=h,{bm:Z,m:ae,parent:re,root:Ae,type:Oe}=d,Xe=En(h);Nt(d,!1),Z&&es(Z),!Xe&&(k=q&&q.onVnodeBeforeMount)&&Ze(k,re,h),Nt(d,!0);{Ae.ce&&Ae.ce._def.shadowRoot!==!1&&Ae.ce._injectChildStyle(Oe);const Qe=d.subTree=_o(d);_(null,Qe,g,w,d,S,E),h.el=Qe.el}if(ae&&ke(ae,S),!Xe&&(k=q&&q.onVnodeMounted)){const Qe=h;ke(()=>Ze(k,re,Qe),S)}(h.shapeFlag&256||re&&En(re.vnode)&&re.vnode.shapeFlag&256)&&d.a&&ke(d.a,S),d.isMounted=!0,h=g=w=null}};d.scope.on();const T=d.effect=new Ii(O);d.scope.off();const R=d.update=T.run.bind(T),H=d.job=T.runIfDirty.bind(T);H.i=d,H.id=d.uid,T.scheduler=()=>Vr(H),Nt(d,!0),R()},G=(d,h,g)=>{h.component=d;const w=d.vnode.props;d.vnode=h,d.next=null,Za(d,h.props,w,g),su(d,h.children,g),pt(),ao(d),mt()},te=(d,h,g,w,S,E,N,O,T=!1)=>{const R=d&&d.children,H=d?d.shapeFlag:0,k=h.children,{patchFlag:U,shapeFlag:q}=h;if(U>0){if(U&128){yt(R,k,g,w,S,E,N,O,T);return}else if(U&256){it(R,k,g,w,S,E,N,O,T);return}}q&8?(H&16&&Be(R,S,E),k!==R&&a(g,k)):H&16?q&16?yt(R,k,g,w,S,E,N,O,T):Be(R,S,E,!0):(H&8&&a(g,""),q&16&&V(k,g,w,S,E,N,O,T))},it=(d,h,g,w,S,E,N,O,T)=>{d=d||Qt,h=h||Qt;const R=d.length,H=h.length,k=Math.min(R,H);let U;for(U=0;UH?Be(d,S,E,!0,!1,k):V(h,g,w,S,E,N,O,T,k)},yt=(d,h,g,w,S,E,N,O,T)=>{let R=0;const H=h.length;let k=d.length-1,U=H-1;for(;R<=k&&R<=U;){const q=d[R],Z=h[R]=T?xt(h[R]):st(h[R]);if(Ft(q,Z))_(q,Z,g,null,S,E,N,O,T);else break;R++}for(;R<=k&&R<=U;){const q=d[k],Z=h[U]=T?xt(h[U]):st(h[U]);if(Ft(q,Z))_(q,Z,g,null,S,E,N,O,T);else break;k--,U--}if(R>k){if(R<=U){const q=U+1,Z=qU)for(;R<=k;)Te(d[R],S,E,!0),R++;else{const q=R,Z=R,ae=new Map;for(R=Z;R<=U;R++){const Me=h[R]=T?xt(h[R]):st(h[R]);Me.key!=null&&ae.set(Me.key,R)}let re,Ae=0;const Oe=U-Z+1;let Xe=!1,Qe=0;const dn=new Array(Oe);for(R=0;R=Oe){Te(Me,S,E,!0);continue}let Ye;if(Me.key!=null)Ye=ae.get(Me.key);else for(re=Z;re<=U;re++)if(dn[re-Z]===0&&Ft(Me,h[re])){Ye=re;break}Ye===void 0?Te(Me,S,E,!0):(dn[Ye-Z]=R+1,Ye>=Qe?Qe=Ye:Xe=!0,_(Me,h[Ye],g,null,S,E,N,O,T),Ae++)}const so=Xe?lu(dn):Qt;for(re=so.length-1,R=Oe-1;R>=0;R--){const Me=Z+R,Ye=h[Me],ro=Me+1{const{el:E,type:N,transition:O,children:T,shapeFlag:R}=d;if(R&6){Ge(d.component.subTree,h,g,w);return}if(R&128){d.suspense.move(h,g,w);return}if(R&64){N.move(d,h,g,B);return}if(N===Ue){s(E,h,g);for(let k=0;kO.enter(E),S);else{const{leave:k,delayLeave:U,afterLeave:q}=O,Z=()=>{d.ctx.isUnmounted?r(E):s(E,h,g)},ae=()=>{k(E,()=>{Z(),q&&q()})};U?U(E,Z,ae):ae()}else s(E,h,g)},Te=(d,h,g,w=!1,S=!1)=>{const{type:E,props:N,ref:O,children:T,dynamicChildren:R,shapeFlag:H,patchFlag:k,dirs:U,cacheIndex:q}=d;if(k===-2&&(S=!1),O!=null&&(pt(),vn(O,null,g,d,!0),mt()),q!=null&&(h.renderCache[q]=void 0),H&256){h.ctx.deactivate(d);return}const Z=H&1&&U,ae=!En(d);let re;if(ae&&(re=N&&N.onVnodeBeforeUnmount)&&Ze(re,h,d),H&6)Jn(d.component,g,w);else{if(H&128){d.suspense.unmount(g,w);return}Z&&Lt(d,null,h,"beforeUnmount"),H&64?d.type.remove(d,h,g,B,w):R&&!R.hasOnce&&(E!==Ue||k>0&&k&64)?Be(R,h,g,!1,!0):(E===Ue&&k&384||!S&&H&16)&&Be(T,h,g),w&&Kt(d)}(ae&&(re=N&&N.onVnodeUnmounted)||Z)&&ke(()=>{re&&Ze(re,h,d),Z&&Lt(d,null,h,"unmounted")},g)},Kt=d=>{const{type:h,el:g,anchor:w,transition:S}=d;if(h===Ue){Wt(g,w);return}if(h===Qs){L(d);return}const E=()=>{r(g),S&&!S.persisted&&S.afterLeave&&S.afterLeave()};if(d.shapeFlag&1&&S&&!S.persisted){const{leave:N,delayLeave:O}=S,T=()=>N(g,E);O?O(d.el,E,T):T()}else E()},Wt=(d,h)=>{let g;for(;d!==h;)g=p(d),r(d),d=g;r(h)},Jn=(d,h,g)=>{const{bum:w,scope:S,job:E,subTree:N,um:O,m:T,a:R,parent:H,slots:{__:k}}=d;bo(T),bo(R),w&&es(w),H&&$(k)&&k.forEach(U=>{H.renderCache[U]=void 0}),S.stop(),E&&(E.flags|=8,Te(N,d,h,g)),O&&ke(O,h),ke(()=>{d.isUnmounted=!0},h),h&&h.pendingBranch&&!h.isUnmounted&&d.asyncDep&&!d.asyncResolved&&d.suspenseId===h.pendingId&&(h.deps--,h.deps===0&&h.resolve())},Be=(d,h,g,w=!1,S=!1,E=0)=>{for(let N=E;N{if(d.shapeFlag&6)return v(d.component.subTree);if(d.shapeFlag&128)return d.suspense.next();const h=p(d.anchor||d.el),g=h&&h[Pa];return g?p(g):h};let D=!1;const M=(d,h,g)=>{d==null?h._vnode&&Te(h._vnode,null,null,!0):_(h._vnode||null,d,h,null,null,null,g),h._vnode=d,D||(D=!0,ao(),el(),D=!1)},B={p:_,um:Te,m:Ge,r:Kt,mt:pe,mc:V,pc:te,pbc:W,n:v,o:e};return{render:M,hydrate:void 0,createApp:Xa(M)}}function Xs({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Nt({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function iu(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Al(e,t,n=!1){const s=e.children,r=t.children;if($(s)&&$(r))for(let o=0;o>1,e[n[l]]0&&(t[s]=n[o-1]),n[o]=s)}}for(o=n.length,i=n[o-1];o-- >0;)n[o]=i,i=t[i];return n}function Ol(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Ol(t)}function bo(e){if(e)for(let t=0;tLe(cu);function uu(e,t){return Jr(e,null,t)}function xn(e,t,n){return Jr(e,t,n)}function Jr(e,t,n=ce){const{immediate:s,deep:r,flush:o,once:i}=n,l=ge({},n),c=t&&s||!t&&o!=="post";let u;if(kn){if(o==="sync"){const m=au();u=m.__watcherHandles||(m.__watcherHandles=[])}else if(!c){const m=()=>{};return m.stop=rt,m.resume=rt,m.pause=rt,m}}const a=ye;l.call=(m,y,_)=>We(m,a,y,_);let f=!1;o==="post"?l.scheduler=m=>{ke(m,a&&a.suspense)}:o!=="sync"&&(f=!0,l.scheduler=(m,y)=>{y?m():Vr(m)}),l.augmentJob=m=>{t&&(m.flags|=4),f&&(m.flags|=2,a&&(m.id=a.uid,m.i=a))};const p=Ca(e,t,l);return kn&&(u?u.push(p):c&&p()),p}function fu(e,t,n){const s=this.proxy,r=de(e)?e.includes(".")?Pl(s,e):()=>s[e]:e.bind(s,s);let o;K(t)?o=t:(o=t.handler,n=t);const i=Kn(this),l=Jr(r,o.bind(s),n);return i(),l}function Pl(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;rt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ve(t)}Modifiers`]||e[`${Pt(t)}Modifiers`];function hu(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||ce;let r=n;const o=t.startsWith("update:"),i=o&&du(s,t.slice(7));i&&(i.trim&&(r=n.map(a=>de(a)?a.trim():a)),i.number&&(r=n.map(is)));let l,c=s[l=Vs(t)]||s[l=Vs(Ve(t))];!c&&o&&(c=s[l=Vs(Pt(t))]),c&&We(c,e,6,r);const u=s[l+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,We(u,e,6,r)}}function Ll(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const o=e.emits;let i={},l=!1;if(!K(e)){const c=u=>{const a=Ll(u,t,!0);a&&(l=!0,ge(i,a))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!o&&!l?(oe(e)&&s.set(e,null),null):($(o)?o.forEach(c=>i[c]=null):ge(i,o),oe(e)&&s.set(e,i),i)}function Ps(e,t){return!e||!_s(t)?!1:(t=t.slice(2).replace(/Once$/,""),se(e,t[0].toLowerCase()+t.slice(1))||se(e,Pt(t))||se(e,t))}function _o(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[o],slots:i,attrs:l,emit:c,render:u,renderCache:a,props:f,data:p,setupState:m,ctx:y,inheritAttrs:_}=e,x=fs(e);let A,C;try{if(n.shapeFlag&4){const L=r||s,j=L;A=st(u.call(j,L,a,f,m,p,y)),C=l}else{const L=t;A=st(L.length>1?L(f,{attrs:l,slots:i,emit:c}):L(f,null)),C=t.props?l:pu(l)}}catch(L){Rn.length=0,Rs(L,e,1),A=me(Re)}let P=A;if(C&&_!==!1){const L=Object.keys(C),{shapeFlag:j}=P;L.length&&j&7&&(o&&L.some(Lr)&&(C=mu(C,o)),P=Ot(P,C,!1,!0))}return n.dirs&&(P=Ot(P,null,!1,!0),P.dirs=P.dirs?P.dirs.concat(n.dirs):n.dirs),n.transition&&Ht(P,n.transition),A=P,fs(x),A}const pu=e=>{let t;for(const n in e)(n==="class"||n==="style"||_s(n))&&((t||(t={}))[n]=e[n]);return t},mu=(e,t)=>{const n={};for(const s in e)(!Lr(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function gu(e,t,n){const{props:s,children:r,component:o}=e,{props:i,children:l,patchFlag:c}=t,u=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?wo(s,i,u):!!i;if(c&8){const a=t.dynamicProps;for(let f=0;fe.__isSuspense;function bu(e,t){t&&t.pendingBranch?$(e)?t.effects.push(...e):t.effects.push(e):Oa(e)}const Ue=Symbol.for("v-fgt"),Ls=Symbol.for("v-txt"),Re=Symbol.for("v-cmt"),Qs=Symbol.for("v-stc"),Rn=[];let je=null;function qe(e=!1){Rn.push(je=e?null:[])}function _u(){Rn.pop(),je=Rn[Rn.length-1]||null}let In=1;function vo(e,t=!1){In+=e,e<0&&je&&t&&(je.hasOnce=!0)}function Il(e){return e.dynamicChildren=In>0?je||Qt:null,_u(),In>0&&je&&je.push(e),e}function Mn(e,t,n,s,r,o){return Il(Fe(e,t,n,s,r,o,!0))}function tn(e,t,n,s,r){return Il(me(e,t,n,s,r,!0))}function ps(e){return e?e.__v_isVNode===!0:!1}function Ft(e,t){return e.type===t.type&&e.key===t.key}const Ml=({key:e})=>e??null,ts=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?de(e)||fe(e)||K(e)?{i:Ce,r:e,k:t,f:!!n}:e:null);function Fe(e,t=null,n=null,s=0,r=null,o=e===Ue?0:1,i=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Ml(t),ref:t&&ts(t),scopeId:nl,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Ce};return l?(Gr(c,n),o&128&&e.normalize(c)):n&&(c.shapeFlag|=de(n)?8:16),In>0&&!i&&je&&(c.patchFlag>0||o&6)&&c.patchFlag!==32&&je.push(c),c}const me=wu;function wu(e,t=null,n=null,s=0,r=null,o=!1){if((!e||e===pl)&&(e=Re),ps(e)){const l=Ot(e,t,!0);return n&&Gr(l,n),In>0&&!o&&je&&(l.shapeFlag&6?je[je.indexOf(e)]=l:je.push(l)),l.patchFlag=-2,l}if(Iu(e)&&(e=e.__vccOpts),t){t=vu(t);let{class:l,style:c}=t;l&&!de(l)&&(t.class=an(l)),oe(c)&&(Ur(c)&&!$(c)&&(c=ge({},c)),t.style=Ss(c))}const i=de(e)?1:Nl(e)?128:sl(e)?64:oe(e)?4:K(e)?2:0;return Fe(e,t,n,s,r,i,o,!0)}function vu(e){return e?Ur(e)||El(e)?ge({},e):e:null}function Ot(e,t,n=!1,s=!1){const{props:r,ref:o,patchFlag:i,children:l,transition:c}=e,u=t?xu(r||{},t):r,a={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&Ml(u),ref:t&&t.ref?n&&o?$(o)?o.concat(ts(t)):[o,ts(t)]:ts(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ue?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ot(e.ssContent),ssFallback:e.ssFallback&&Ot(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&s&&Ht(a,c.clone(a)),a}function Eu(e=" ",t=0){return me(Ls,null,e,t)}function Su(e="",t=!1){return t?(qe(),tn(Re,null,e)):me(Re,null,e)}function st(e){return e==null||typeof e=="boolean"?me(Re):$(e)?me(Ue,null,e.slice()):ps(e)?xt(e):me(Ls,null,String(e))}function xt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ot(e)}function Gr(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if($(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),Gr(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!El(t)?t._ctx=Ce:r===3&&Ce&&(Ce.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else K(t)?(t={default:t,_ctx:Ce},n=32):(t=String(t),s&64?(n=16,t=[Eu(t)]):n=8);e.children=t,e.shapeFlag|=n}function xu(...e){const t={};for(let n=0;nye||Ce;let ms,gr;{const e=Es(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),o=>{r.length>1?r.forEach(i=>i(o)):r[0](o)}};ms=t("__VUE_INSTANCE_SETTERS__",n=>ye=n),gr=t("__VUE_SSR_SETTERS__",n=>kn=n)}const Kn=e=>{const t=ye;return ms(e),e.scope.on(),()=>{e.scope.off(),ms(t)}},Eo=()=>{ye&&ye.scope.off(),ms(null)};function Fl(e){return e.vnode.shapeFlag&4}let kn=!1;function Au(e,t=!1,n=!1){t&&gr(t);const{props:s,children:r}=e.vnode,o=Fl(e);Ya(e,s,o,t),nu(e,r,n||t);const i=o?Ou(e,t):void 0;return t&&gr(!1),i}function Ou(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Va);const{setup:s}=n;if(s){pt();const r=e.setupContext=s.length>1?Lu(e):null,o=Kn(e),i=Vn(s,e,0,[e.props,r]),l=xi(i);if(mt(),o(),(l||e.sp)&&!En(e)&&al(e),l){if(i.then(Eo,Eo),t)return i.then(c=>{So(e,c)}).catch(c=>{Rs(c,e,0)});e.asyncDep=i}else So(e,i)}else Dl(e)}function So(e,t,n){K(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:oe(t)&&(e.setupState=Xi(t)),Dl(e)}function Dl(e,t,n){const s=e.type;e.render||(e.render=s.render||rt);{const r=Kn(e);pt();try{qa(e)}finally{mt(),r()}}}const Pu={get(e,t){return we(e,"get",""),e[t]}};function Lu(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Pu),slots:e.slots,emit:e.emit,expose:t}}function Ns(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Xi(Hr(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Sn)return Sn[n](e)},has(t,n){return n in t||n in Sn}})):e.proxy}function Nu(e,t=!0){return K(e)?e.displayName||e.name:e.name||t&&e.__name}function Iu(e){return K(e)&&"__vccOpts"in e}const De=(e,t)=>xa(e,t,kn);function nn(e,t,n){const s=arguments.length;return s===2?oe(t)&&!$(t)?ps(t)?me(e,null,[t]):me(e,t):me(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&ps(n)&&(n=[n]),me(e,t,n))}const Mu="3.5.17";/** -* @vue/runtime-dom v3.5.17 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let yr;const xo=typeof window<"u"&&window.trustedTypes;if(xo)try{yr=xo.createPolicy("vue",{createHTML:e=>e})}catch{}const jl=yr?e=>yr.createHTML(e):e=>e,ku="http://www.w3.org/2000/svg",Fu="http://www.w3.org/1998/Math/MathML",at=typeof document<"u"?document:null,Ro=at&&at.createElement("template"),Du={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?at.createElementNS(ku,e):t==="mathml"?at.createElementNS(Fu,e):n?at.createElement(e,{is:n}):at.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>at.createTextNode(e),createComment:e=>at.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>at.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,o){const i=n?n.previousSibling:t.lastChild;if(r&&(r===o||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===o||!(r=r.nextSibling)););else{Ro.innerHTML=jl(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const l=Ro.content;if(s==="svg"||s==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},bt="transition",pn="animation",sn=Symbol("_vtc"),Bl={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},$l=ge({},ol,Bl),ju=e=>(e.displayName="Transition",e.props=$l,e),Bu=ju((e,{slots:t})=>nn(Na,Ul(e),t)),It=(e,t=[])=>{$(e)?e.forEach(n=>n(...t)):e&&e(...t)},Co=e=>e?$(e)?e.some(t=>t.length>1):e.length>1:!1;function Ul(e){const t={};for(const F in e)F in Bl||(t[F]=e[F]);if(e.css===!1)return t;const{name:n="v",type:s,duration:r,enterFromClass:o=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=o,appearActiveClass:u=i,appearToClass:a=l,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:m=`${n}-leave-to`}=e,y=$u(r),_=y&&y[0],x=y&&y[1],{onBeforeEnter:A,onEnter:C,onEnterCancelled:P,onLeave:L,onLeaveCancelled:j,onBeforeAppear:X=A,onAppear:z=C,onAppearCancelled:V=P}=t,I=(F,Y,pe,Ee)=>{F._enterCancelled=Ee,wt(F,Y?a:l),wt(F,Y?u:i),pe&&pe()},W=(F,Y)=>{F._isLeaving=!1,wt(F,f),wt(F,m),wt(F,p),Y&&Y()},ee=F=>(Y,pe)=>{const Ee=F?z:C,ie=()=>I(Y,F,pe);It(Ee,[Y,ie]),To(()=>{wt(Y,F?c:o),tt(Y,F?a:l),Co(Ee)||Ao(Y,s,_,ie)})};return ge(t,{onBeforeEnter(F){It(A,[F]),tt(F,o),tt(F,i)},onBeforeAppear(F){It(X,[F]),tt(F,c),tt(F,u)},onEnter:ee(!1),onAppear:ee(!0),onLeave(F,Y){F._isLeaving=!0;const pe=()=>W(F,Y);tt(F,f),F._enterCancelled?(tt(F,p),br()):(br(),tt(F,p)),To(()=>{F._isLeaving&&(wt(F,f),tt(F,m),Co(L)||Ao(F,s,x,pe))}),It(L,[F,pe])},onEnterCancelled(F){I(F,!1,void 0,!0),It(P,[F])},onAppearCancelled(F){I(F,!0,void 0,!0),It(V,[F])},onLeaveCancelled(F){W(F),It(j,[F])}})}function $u(e){if(e==null)return null;if(oe(e))return[Ys(e.enter),Ys(e.leave)];{const t=Ys(e);return[t,t]}}function Ys(e){return Uc(e)}function tt(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[sn]||(e[sn]=new Set)).add(t)}function wt(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[sn];n&&(n.delete(t),n.size||(e[sn]=void 0))}function To(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Uu=0;function Ao(e,t,n,s){const r=e._endId=++Uu,o=()=>{r===e._endId&&s()};if(n!=null)return setTimeout(o,n);const{type:i,timeout:l,propCount:c}=Hl(e,t);if(!i)return s();const u=i+"end";let a=0;const f=()=>{e.removeEventListener(u,p),o()},p=m=>{m.target===e&&++a>=c&&f()};setTimeout(()=>{a(n[y]||"").split(", "),r=s(`${bt}Delay`),o=s(`${bt}Duration`),i=Oo(r,o),l=s(`${pn}Delay`),c=s(`${pn}Duration`),u=Oo(l,c);let a=null,f=0,p=0;t===bt?i>0&&(a=bt,f=i,p=o.length):t===pn?u>0&&(a=pn,f=u,p=c.length):(f=Math.max(i,u),a=f>0?i>u?bt:pn:null,p=a?a===bt?o.length:c.length:0);const m=a===bt&&/\b(transform|all)(,|$)/.test(s(`${bt}Property`).toString());return{type:a,timeout:f,propCount:p,hasTransform:m}}function Oo(e,t){for(;e.lengthPo(n)+Po(e[s])))}function Po(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function br(){return document.body.offsetHeight}function Hu(e,t,n){const s=e[sn];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Lo=Symbol("_vod"),Vu=Symbol("_vsh"),qu=Symbol(""),Ku=/(^|;)\s*display\s*:/;function Wu(e,t,n){const s=e.style,r=de(n);let o=!1;if(n&&!r){if(t)if(de(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&ns(s,l,"")}else for(const i in t)n[i]==null&&ns(s,i,"");for(const i in n)i==="display"&&(o=!0),ns(s,i,n[i])}else if(r){if(t!==n){const i=s[qu];i&&(n+=";"+i),s.cssText=n,o=Ku.test(n)}}else t&&e.removeAttribute("style");Lo in e&&(e[Lo]=o?s.display:"",e[Vu]&&(s.display="none"))}const No=/\s*!important$/;function ns(e,t,n){if($(n))n.forEach(s=>ns(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=zu(e,t);No.test(n)?e.setProperty(Pt(s),n.replace(No,""),"important"):e[s]=n}}const Io=["Webkit","Moz","ms"],Zs={};function zu(e,t){const n=Zs[t];if(n)return n;let s=Ve(t);if(s!=="filter"&&s in e)return Zs[t]=s;s=vs(s);for(let r=0;rer||(Qu.then(()=>er=0),er=Date.now());function Zu(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;We(ef(s,n.value),t,5,[s])};return n.value=e,n.attached=Yu(),n}function ef(e,t){if($(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>r=>!r._stopped&&s&&s(r))}else return t}const Bo=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,tf=(e,t,n,s,r,o)=>{const i=r==="svg";t==="class"?Hu(e,s,i):t==="style"?Wu(e,n,s):_s(t)?Lr(t)||Gu(e,t,n,s,o):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):nf(e,t,s,i))?(Fo(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&ko(e,t,s,i,o,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!de(s))?Fo(e,Ve(t),s,o,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),ko(e,t,s,i))};function nf(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Bo(t)&&K(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Bo(t)&&de(n)?!1:t in e}const Vl=new WeakMap,ql=new WeakMap,gs=Symbol("_moveCb"),$o=Symbol("_enterCb"),sf=e=>(delete e.props.mode,e),rf=sf({name:"TransitionGroup",props:ge({},$l,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=kl(),s=rl();let r,o;return fl(()=>{if(!r.length)return;const i=e.moveClass||`${e.name||"v"}-move`;if(!uf(r[0].el,n.vnode.el,i)){r=[];return}r.forEach(lf),r.forEach(cf);const l=r.filter(af);br(),l.forEach(c=>{const u=c.el,a=u.style;tt(u,i),a.transform=a.webkitTransform=a.transitionDuration="";const f=u[gs]=p=>{p&&p.target!==u||(!p||/transform$/.test(p.propertyName))&&(u.removeEventListener("transitionend",f),u[gs]=null,wt(u,i))};u.addEventListener("transitionend",f)}),r=[]}),()=>{const i=Q(e),l=Ul(i);let c=i.tag||Ue;if(r=[],o)for(let u=0;u{l.split(/\s+/).forEach(c=>c&&s.classList.remove(c))}),n.split(/\s+/).forEach(l=>l&&s.classList.add(l)),s.style.display="none";const o=t.nodeType===1?t:t.parentNode;o.appendChild(s);const{hasTransform:i}=Hl(s);return o.removeChild(s),i}const rn=e=>{const t=e.props["onUpdate:modelValue"]||!1;return $(t)?n=>es(t,n):t};function ff(e){e.target.composing=!0}function Uo(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const ht=Symbol("_assign"),jp={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e[ht]=rn(r);const o=s||r.props&&r.props.type==="number";Ct(e,t?"change":"input",i=>{if(i.target.composing)return;let l=e.value;n&&(l=l.trim()),o&&(l=is(l)),e[ht](l)}),n&&Ct(e,"change",()=>{e.value=e.value.trim()}),t||(Ct(e,"compositionstart",ff),Ct(e,"compositionend",Uo),Ct(e,"change",Uo))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:o}},i){if(e[ht]=rn(i),e.composing)return;const l=(o||e.type==="number")&&!/^0\d/.test(e.value)?is(e.value):e.value,c=t??"";l!==c&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===c)||(e.value=c))}},Bp={deep:!0,created(e,t,n){e[ht]=rn(n),Ct(e,"change",()=>{const s=e._modelValue,r=Fn(e),o=e.checked,i=e[ht];if($(s)){const l=Mr(s,r),c=l!==-1;if(o&&!c)i(s.concat(r));else if(!o&&c){const u=[...s];u.splice(l,1),i(u)}}else if(cn(s)){const l=new Set(s);o?l.add(r):l.delete(r),i(l)}else i(Kl(e,o))})},mounted:Ho,beforeUpdate(e,t,n){e[ht]=rn(n),Ho(e,t,n)}};function Ho(e,{value:t,oldValue:n},s){e._modelValue=t;let r;if($(t))r=Mr(t,s.props.value)>-1;else if(cn(t))r=t.has(s.props.value);else{if(t===n)return;r=Un(t,Kl(e,!0))}e.checked!==r&&(e.checked=r)}const $p={deep:!0,created(e,{value:t,modifiers:{number:n}},s){const r=cn(t);Ct(e,"change",()=>{const o=Array.prototype.filter.call(e.options,i=>i.selected).map(i=>n?is(Fn(i)):Fn(i));e[ht](e.multiple?r?new Set(o):o:o[0]),e._assigning=!0,Cs(()=>{e._assigning=!1})}),e[ht]=rn(s)},mounted(e,{value:t}){Vo(e,t)},beforeUpdate(e,t,n){e[ht]=rn(n)},updated(e,{value:t}){e._assigning||Vo(e,t)}};function Vo(e,t){const n=e.multiple,s=$(t);if(!(n&&!s&&!cn(t))){for(let r=0,o=e.options.length;rString(u)===String(l)):i.selected=Mr(t,l)>-1}else i.selected=t.has(l);else if(Un(Fn(i),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Fn(e){return"_value"in e?e._value:e.value}function Kl(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const df=["ctrl","shift","alt","meta"],hf={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>df.some(n=>e[`${n}Key`]&&!t.includes(n))},Up=(e,t)=>{const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(r,...o)=>{for(let i=0;i{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=r=>{if(!("key"in r))return;const o=Pt(r.key);if(t.some(i=>i===o||pf[i]===o))return e(r)})},mf=ge({patchProp:tf},Du);let qo;function gf(){return qo||(qo=ru(mf))}const yf=(...e)=>{const t=gf().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=_f(s);if(!r)return;const o=t._component;!K(o)&&!o.render&&!o.template&&(o.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const i=n(r,!1,bf(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),i},t};function bf(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function _f(e){return de(e)?document.querySelector(e):e}/*! - * pinia v2.3.1 - * (c) 2025 Eduardo San Martin Morote - * @license MIT - */let Wl;const Is=e=>Wl=e,zl=Symbol();function _r(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var Cn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(Cn||(Cn={}));function wf(){const e=Li(!0),t=e.run(()=>en({}));let n=[],s=[];const r=Hr({install(o){Is(r),r._a=o,o.provide(zl,r),o.config.globalProperties.$pinia=r,s.forEach(i=>n.push(i)),s=[]},use(o){return this._a?n.push(o):s.push(o),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return r}const Jl=()=>{};function Ko(e,t,n,s=Jl){e.push(t);const r=()=>{const o=e.indexOf(t);o>-1&&(e.splice(o,1),s())};return!n&&Ni()&&Xc(r),r}function Jt(e,...t){e.slice().forEach(n=>{n(...t)})}const vf=e=>e(),Wo=Symbol(),tr=Symbol();function wr(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,s)=>e.set(s,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const s=t[n],r=e[n];_r(r)&&_r(s)&&e.hasOwnProperty(n)&&!fe(s)&&!dt(s)?e[n]=wr(r,s):e[n]=s}return e}const Ef=Symbol();function Sf(e){return!_r(e)||!e.hasOwnProperty(Ef)}const{assign:vt}=Object;function xf(e){return!!(fe(e)&&e.effect)}function Rf(e,t,n,s){const{state:r,actions:o,getters:i}=t,l=n.state.value[e];let c;function u(){l||(n.state.value[e]=r?r():{});const a=_a(n.state.value[e]);return vt(a,o,Object.keys(i||{}).reduce((f,p)=>(f[p]=Hr(De(()=>{Is(n);const m=n._s.get(e);return i[p].call(m,m)})),f),{}))}return c=Gl(e,u,t,n,s,!0),c}function Gl(e,t,n={},s,r,o){let i;const l=vt({actions:{}},n),c={deep:!0};let u,a,f=[],p=[],m;const y=s.state.value[e];!o&&!y&&(s.state.value[e]={}),en({});let _;function x(V){let I;u=a=!1,typeof V=="function"?(V(s.state.value[e]),I={type:Cn.patchFunction,storeId:e,events:m}):(wr(s.state.value[e],V),I={type:Cn.patchObject,payload:V,storeId:e,events:m});const W=_=Symbol();Cs().then(()=>{_===W&&(u=!0)}),a=!0,Jt(f,I,s.state.value[e])}const A=o?function(){const{state:I}=n,W=I?I():{};this.$patch(ee=>{vt(ee,W)})}:Jl;function C(){i.stop(),f=[],p=[],s._s.delete(e)}const P=(V,I="")=>{if(Wo in V)return V[tr]=I,V;const W=function(){Is(s);const ee=Array.from(arguments),F=[],Y=[];function pe(G){F.push(G)}function Ee(G){Y.push(G)}Jt(p,{args:ee,name:W[tr],store:j,after:pe,onError:Ee});let ie;try{ie=V.apply(this&&this.$id===e?this:j,ee)}catch(G){throw Jt(Y,G),G}return ie instanceof Promise?ie.then(G=>(Jt(F,G),G)).catch(G=>(Jt(Y,G),Promise.reject(G))):(Jt(F,ie),ie)};return W[Wo]=!0,W[tr]=I,W},L={_p:s,$id:e,$onAction:Ko.bind(null,p),$patch:x,$reset:A,$subscribe(V,I={}){const W=Ko(f,V,I.detached,()=>ee()),ee=i.run(()=>xn(()=>s.state.value[e],F=>{(I.flush==="sync"?a:u)&&V({storeId:e,type:Cn.direct,events:m},F)},vt({},c,I)));return W},$dispose:C},j=Hn(L);s._s.set(e,j);const z=(s._a&&s._a.runWithContext||vf)(()=>s._e.run(()=>(i=Li()).run(()=>t({action:P}))));for(const V in z){const I=z[V];if(fe(I)&&!xf(I)||dt(I))o||(y&&Sf(I)&&(fe(I)?I.value=y[V]:wr(I,y[V])),s.state.value[e][V]=I);else if(typeof I=="function"){const W=P(I,V);z[V]=W,l.actions[V]=I}}return vt(j,z),vt(Q(j),z),Object.defineProperty(j,"$state",{get:()=>s.state.value[e],set:V=>{x(I=>{vt(I,V)})}}),s._p.forEach(V=>{vt(j,i.run(()=>V({store:j,app:s._a,pinia:s,options:l})))}),y&&o&&n.hydrate&&n.hydrate(j.$state,y),u=!0,a=!0,j}/*! #__NO_SIDE_EFFECTS__ */function Cf(e,t,n){let s,r;const o=typeof t=="function";typeof e=="string"?(s=e,r=o?n:t):(r=e,s=e.id);function i(l,c){const u=Qa();return l=l||(u?Le(zl,null):null),l&&Is(l),l=Wl,l._s.has(s)||(o?Gl(s,t,r,l):Rf(s,r,l)),l._s.get(s)}return i.$id=s,i}function Tf(e){{const t=Q(e),n={};for(const s in t){const r=t[s];r.effect?n[s]=De({get:()=>e[s],set(o){e[s]=o}}):(fe(r)||dt(r))&&(n[s]=Ea(e,s))}return n}}/*! - * vue-router v4.5.1 - * (c) 2025 Eduardo San Martin Morote - * @license MIT - */const Xt=typeof document<"u";function Xl(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function Af(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&Xl(e.default)}const ne=Object.assign;function nr(e,t){const n={};for(const s in t){const r=t[s];n[s]=ze(r)?r.map(e):e(r)}return n}const Tn=()=>{},ze=Array.isArray,Ql=/#/g,Of=/&/g,Pf=/\//g,Lf=/=/g,Nf=/\?/g,Yl=/\+/g,If=/%5B/g,Mf=/%5D/g,Zl=/%5E/g,kf=/%60/g,ec=/%7B/g,Ff=/%7C/g,tc=/%7D/g,Df=/%20/g;function Xr(e){return encodeURI(""+e).replace(Ff,"|").replace(If,"[").replace(Mf,"]")}function jf(e){return Xr(e).replace(ec,"{").replace(tc,"}").replace(Zl,"^")}function vr(e){return Xr(e).replace(Yl,"%2B").replace(Df,"+").replace(Ql,"%23").replace(Of,"%26").replace(kf,"`").replace(ec,"{").replace(tc,"}").replace(Zl,"^")}function Bf(e){return vr(e).replace(Lf,"%3D")}function $f(e){return Xr(e).replace(Ql,"%23").replace(Nf,"%3F")}function Uf(e){return e==null?"":$f(e).replace(Pf,"%2F")}function Dn(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const Hf=/\/$/,Vf=e=>e.replace(Hf,"");function sr(e,t,n="/"){let s,r={},o="",i="";const l=t.indexOf("#");let c=t.indexOf("?");return l=0&&(c=-1),c>-1&&(s=t.slice(0,c),o=t.slice(c+1,l>-1?l:t.length),r=e(o)),l>-1&&(s=s||t.slice(0,l),i=t.slice(l,t.length)),s=zf(s??t,n),{fullPath:s+(o&&"?")+o+i,path:s,query:r,hash:Dn(i)}}function qf(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function zo(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function Kf(e,t,n){const s=t.matched.length-1,r=n.matched.length-1;return s>-1&&s===r&&on(t.matched[s],n.matched[r])&&nc(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function on(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function nc(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!Wf(e[n],t[n]))return!1;return!0}function Wf(e,t){return ze(e)?Jo(e,t):ze(t)?Jo(t,e):e===t}function Jo(e,t){return ze(t)?e.length===t.length&&e.every((n,s)=>n===t[s]):e.length===1&&e[0]===t}function zf(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),s=e.split("/"),r=s[s.length-1];(r===".."||r===".")&&s.push("");let o=n.length-1,i,l;for(i=0;i1&&o--;else break;return n.slice(0,o).join("/")+"/"+s.slice(i).join("/")}const _t={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var jn;(function(e){e.pop="pop",e.push="push"})(jn||(jn={}));var An;(function(e){e.back="back",e.forward="forward",e.unknown=""})(An||(An={}));function Jf(e){if(!e)if(Xt){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),Vf(e)}const Gf=/^[^#]+#/;function Xf(e,t){return e.replace(Gf,"#")+t}function Qf(e,t){const n=document.documentElement.getBoundingClientRect(),s=e.getBoundingClientRect();return{behavior:t.behavior,left:s.left-n.left-(t.left||0),top:s.top-n.top-(t.top||0)}}const Ms=()=>({left:window.scrollX,top:window.scrollY});function Yf(e){let t;if("el"in e){const n=e.el,s=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=Qf(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Go(e,t){return(history.state?history.state.position-t:-1)+e}const Er=new Map;function Zf(e,t){Er.set(e,t)}function ed(e){const t=Er.get(e);return Er.delete(e),t}let td=()=>location.protocol+"//"+location.host;function sc(e,t){const{pathname:n,search:s,hash:r}=t,o=e.indexOf("#");if(o>-1){let l=r.includes(e.slice(o))?e.slice(o).length:1,c=r.slice(l);return c[0]!=="/"&&(c="/"+c),zo(c,"")}return zo(n,e)+s+r}function nd(e,t,n,s){let r=[],o=[],i=null;const l=({state:p})=>{const m=sc(e,location),y=n.value,_=t.value;let x=0;if(p){if(n.value=m,t.value=p,i&&i===y){i=null;return}x=_?p.position-_.position:0}else s(m);r.forEach(A=>{A(n.value,y,{delta:x,type:jn.pop,direction:x?x>0?An.forward:An.back:An.unknown})})};function c(){i=n.value}function u(p){r.push(p);const m=()=>{const y=r.indexOf(p);y>-1&&r.splice(y,1)};return o.push(m),m}function a(){const{history:p}=window;p.state&&p.replaceState(ne({},p.state,{scroll:Ms()}),"")}function f(){for(const p of o)p();o=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",a)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",a,{passive:!0}),{pauseListeners:c,listen:u,destroy:f}}function Xo(e,t,n,s=!1,r=!1){return{back:e,current:t,forward:n,replaced:s,position:window.history.length,scroll:r?Ms():null}}function sd(e){const{history:t,location:n}=window,s={value:sc(e,n)},r={value:t.state};r.value||o(s.value,{back:null,current:s.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function o(c,u,a){const f=e.indexOf("#"),p=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+c:td()+e+c;try{t[a?"replaceState":"pushState"](u,"",p),r.value=u}catch(m){console.error(m),n[a?"replace":"assign"](p)}}function i(c,u){const a=ne({},t.state,Xo(r.value.back,c,r.value.forward,!0),u,{position:r.value.position});o(c,a,!0),s.value=c}function l(c,u){const a=ne({},r.value,t.state,{forward:c,scroll:Ms()});o(a.current,a,!0);const f=ne({},Xo(s.value,c,null),{position:a.position+1},u);o(c,f,!1),s.value=c}return{location:s,state:r,push:l,replace:i}}function rd(e){e=Jf(e);const t=sd(e),n=nd(e,t.state,t.location,t.replace);function s(o,i=!0){i||n.pauseListeners(),history.go(o)}const r=ne({location:"",base:e,go:s,createHref:Xf.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function od(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),rd(e)}function id(e){return typeof e=="string"||e&&typeof e=="object"}function rc(e){return typeof e=="string"||typeof e=="symbol"}const oc=Symbol("");var Qo;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(Qo||(Qo={}));function ln(e,t){return ne(new Error,{type:e,[oc]:!0},t)}function ct(e,t){return e instanceof Error&&oc in e&&(t==null||!!(e.type&t))}const Yo="[^/]+?",ld={sensitive:!1,strict:!1,start:!0,end:!0},cd=/[.+*?^${}()[\]/\\]/g;function ad(e,t){const n=ne({},ld,t),s=[];let r=n.start?"^":"";const o=[];for(const u of e){const a=u.length?[]:[90];n.strict&&!u.length&&(r+="/");for(let f=0;ft.length?t.length===1&&t[0]===80?1:-1:0}function ic(e,t){let n=0;const s=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const fd={type:0,value:""},dd=/[a-zA-Z0-9_]/;function hd(e){if(!e)return[[]];if(e==="/")return[[fd]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(m){throw new Error(`ERR (${n})/"${u}": ${m}`)}let n=0,s=n;const r=[];let o;function i(){o&&r.push(o),o=[]}let l=0,c,u="",a="";function f(){u&&(n===0?o.push({type:0,value:u}):n===1||n===2||n===3?(o.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:u,regexp:a,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),u="")}function p(){u+=c}for(;l{i(P)}:Tn}function i(f){if(rc(f)){const p=s.get(f);p&&(s.delete(f),n.splice(n.indexOf(p),1),p.children.forEach(i),p.alias.forEach(i))}else{const p=n.indexOf(f);p>-1&&(n.splice(p,1),f.record.name&&s.delete(f.record.name),f.children.forEach(i),f.alias.forEach(i))}}function l(){return n}function c(f){const p=bd(f,n);n.splice(p,0,f),f.record.name&&!ni(f)&&s.set(f.record.name,f)}function u(f,p){let m,y={},_,x;if("name"in f&&f.name){if(m=s.get(f.name),!m)throw ln(1,{location:f});x=m.record.name,y=ne(ei(p.params,m.keys.filter(P=>!P.optional).concat(m.parent?m.parent.keys.filter(P=>P.optional):[]).map(P=>P.name)),f.params&&ei(f.params,m.keys.map(P=>P.name))),_=m.stringify(y)}else if(f.path!=null)_=f.path,m=n.find(P=>P.re.test(_)),m&&(y=m.parse(_),x=m.record.name);else{if(m=p.name?s.get(p.name):n.find(P=>P.re.test(p.path)),!m)throw ln(1,{location:f,currentLocation:p});x=m.record.name,y=ne({},p.params,f.params),_=m.stringify(y)}const A=[];let C=m;for(;C;)A.unshift(C.record),C=C.parent;return{name:x,path:_,params:y,matched:A,meta:yd(A)}}e.forEach(f=>o(f));function a(){n.length=0,s.clear()}return{addRoute:o,resolve:u,removeRoute:i,clearRoutes:a,getRoutes:l,getRecordMatcher:r}}function ei(e,t){const n={};for(const s of t)s in e&&(n[s]=e[s]);return n}function ti(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:gd(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function gd(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const s in e.components)t[s]=typeof n=="object"?n[s]:n;return t}function ni(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function yd(e){return e.reduce((t,n)=>ne(t,n.meta),{})}function si(e,t){const n={};for(const s in e)n[s]=s in t?t[s]:e[s];return n}function bd(e,t){let n=0,s=t.length;for(;n!==s;){const o=n+s>>1;ic(e,t[o])<0?s=o:n=o+1}const r=_d(e);return r&&(s=t.lastIndexOf(r,s-1)),s}function _d(e){let t=e;for(;t=t.parent;)if(lc(t)&&ic(e,t)===0)return t}function lc({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function wd(e){const t={};if(e===""||e==="?")return t;const s=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ro&&vr(o)):[s&&vr(s)]).forEach(o=>{o!==void 0&&(t+=(t.length?"&":"")+n,o!=null&&(t+="="+o))})}return t}function vd(e){const t={};for(const n in e){const s=e[n];s!==void 0&&(t[n]=ze(s)?s.map(r=>r==null?null:""+r):s==null?s:""+s)}return t}const Ed=Symbol(""),oi=Symbol(""),ks=Symbol(""),Qr=Symbol(""),Sr=Symbol("");function mn(){let e=[];function t(s){return e.push(s),()=>{const r=e.indexOf(s);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Rt(e,t,n,s,r,o=i=>i()){const i=s&&(s.enterCallbacks[r]=s.enterCallbacks[r]||[]);return()=>new Promise((l,c)=>{const u=p=>{p===!1?c(ln(4,{from:n,to:t})):p instanceof Error?c(p):id(p)?c(ln(2,{from:t,to:p})):(i&&s.enterCallbacks[r]===i&&typeof p=="function"&&i.push(p),l())},a=o(()=>e.call(s&&s.instances[r],t,n,u));let f=Promise.resolve(a);e.length<3&&(f=f.then(u)),f.catch(p=>c(p))})}function rr(e,t,n,s,r=o=>o()){const o=[];for(const i of e)for(const l in i.components){let c=i.components[l];if(!(t!=="beforeRouteEnter"&&!i.instances[l]))if(Xl(c)){const a=(c.__vccOpts||c)[t];a&&o.push(Rt(a,n,s,i,l,r))}else{let u=c();o.push(()=>u.then(a=>{if(!a)throw new Error(`Couldn't resolve component "${l}" at "${i.path}"`);const f=Af(a)?a.default:a;i.mods[l]=a,i.components[l]=f;const m=(f.__vccOpts||f)[t];return m&&Rt(m,n,s,i,l,r)()}))}}return o}function ii(e){const t=Le(ks),n=Le(Qr),s=De(()=>{const c=Pe(e.to);return t.resolve(c)}),r=De(()=>{const{matched:c}=s.value,{length:u}=c,a=c[u-1],f=n.matched;if(!a||!f.length)return-1;const p=f.findIndex(on.bind(null,a));if(p>-1)return p;const m=li(c[u-2]);return u>1&&li(a)===m&&f[f.length-1].path!==m?f.findIndex(on.bind(null,c[u-2])):p}),o=De(()=>r.value>-1&&Td(n.params,s.value.params)),i=De(()=>r.value>-1&&r.value===n.matched.length-1&&nc(n.params,s.value.params));function l(c={}){if(Cd(c)){const u=t[Pe(e.replace)?"replace":"push"](Pe(e.to)).catch(Tn);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>u),u}return Promise.resolve()}return{route:s,href:De(()=>s.value.href),isActive:o,isExactActive:i,navigate:l}}function Sd(e){return e.length===1?e[0]:e}const xd=qn({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:ii,setup(e,{slots:t}){const n=Hn(ii(e)),{options:s}=Le(ks),r=De(()=>({[ci(e.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[ci(e.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const o=t.default&&Sd(t.default(n));return e.custom?o:nn("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},o)}}}),Rd=xd;function Cd(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Td(e,t){for(const n in t){const s=t[n],r=e[n];if(typeof s=="string"){if(s!==r)return!1}else if(!ze(r)||r.length!==s.length||s.some((o,i)=>o!==r[i]))return!1}return!0}function li(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const ci=(e,t,n)=>e??t??n,Ad=qn({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const s=Le(Sr),r=De(()=>e.route||s.value),o=Le(oi,0),i=De(()=>{let u=Pe(o);const{matched:a}=r.value;let f;for(;(f=a[u])&&!f.components;)u++;return u}),l=De(()=>r.value.matched[i.value]);$t(oi,De(()=>i.value+1)),$t(Ed,l),$t(Sr,r);const c=en();return xn(()=>[c.value,l.value,e.name],([u,a,f],[p,m,y])=>{a&&(a.instances[f]=u,m&&m!==a&&u&&u===p&&(a.leaveGuards.size||(a.leaveGuards=m.leaveGuards),a.updateGuards.size||(a.updateGuards=m.updateGuards))),u&&a&&(!m||!on(a,m)||!p)&&(a.enterCallbacks[f]||[]).forEach(_=>_(u))},{flush:"post"}),()=>{const u=r.value,a=e.name,f=l.value,p=f&&f.components[a];if(!p)return ai(n.default,{Component:p,route:u});const m=f.props[a],y=m?m===!0?u.params:typeof m=="function"?m(u):m:null,x=nn(p,ne({},y,t,{onVnodeUnmounted:A=>{A.component.isUnmounted&&(f.instances[a]=null)},ref:c}));return ai(n.default,{Component:x,route:u})||x}}});function ai(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const cc=Ad;function Od(e){const t=md(e.routes,e),n=e.parseQuery||wd,s=e.stringifyQuery||ri,r=e.history,o=mn(),i=mn(),l=mn(),c=ga(_t);let u=_t;Xt&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const a=nr.bind(null,v=>""+v),f=nr.bind(null,Uf),p=nr.bind(null,Dn);function m(v,D){let M,B;return rc(v)?(M=t.getRecordMatcher(v),B=D):B=v,t.addRoute(B,M)}function y(v){const D=t.getRecordMatcher(v);D&&t.removeRoute(D)}function _(){return t.getRoutes().map(v=>v.record)}function x(v){return!!t.getRecordMatcher(v)}function A(v,D){if(D=ne({},D||c.value),typeof v=="string"){const g=sr(n,v,D.path),w=t.resolve({path:g.path},D),S=r.createHref(g.fullPath);return ne(g,w,{params:p(w.params),hash:Dn(g.hash),redirectedFrom:void 0,href:S})}let M;if(v.path!=null)M=ne({},v,{path:sr(n,v.path,D.path).path});else{const g=ne({},v.params);for(const w in g)g[w]==null&&delete g[w];M=ne({},v,{params:f(g)}),D.params=f(D.params)}const B=t.resolve(M,D),le=v.hash||"";B.params=a(p(B.params));const d=qf(s,ne({},v,{hash:jf(le),path:B.path})),h=r.createHref(d);return ne({fullPath:d,hash:le,query:s===ri?vd(v.query):v.query||{}},B,{redirectedFrom:void 0,href:h})}function C(v){return typeof v=="string"?sr(n,v,c.value.path):ne({},v)}function P(v,D){if(u!==v)return ln(8,{from:D,to:v})}function L(v){return z(v)}function j(v){return L(ne(C(v),{replace:!0}))}function X(v){const D=v.matched[v.matched.length-1];if(D&&D.redirect){const{redirect:M}=D;let B=typeof M=="function"?M(v):M;return typeof B=="string"&&(B=B.includes("?")||B.includes("#")?B=C(B):{path:B},B.params={}),ne({query:v.query,hash:v.hash,params:B.path!=null?{}:v.params},B)}}function z(v,D){const M=u=A(v),B=c.value,le=v.state,d=v.force,h=v.replace===!0,g=X(M);if(g)return z(ne(C(g),{state:typeof g=="object"?ne({},le,g.state):le,force:d,replace:h}),D||M);const w=M;w.redirectedFrom=D;let S;return!d&&Kf(s,B,M)&&(S=ln(16,{to:w,from:B}),Ge(B,B,!0,!1)),(S?Promise.resolve(S):W(w,B)).catch(E=>ct(E)?ct(E,2)?E:yt(E):te(E,w,B)).then(E=>{if(E){if(ct(E,2))return z(ne({replace:h},C(E.to),{state:typeof E.to=="object"?ne({},le,E.to.state):le,force:d}),D||w)}else E=F(w,B,!0,h,le);return ee(w,B,E),E})}function V(v,D){const M=P(v,D);return M?Promise.reject(M):Promise.resolve()}function I(v){const D=Wt.values().next().value;return D&&typeof D.runWithContext=="function"?D.runWithContext(v):v()}function W(v,D){let M;const[B,le,d]=Pd(v,D);M=rr(B.reverse(),"beforeRouteLeave",v,D);for(const g of B)g.leaveGuards.forEach(w=>{M.push(Rt(w,v,D))});const h=V.bind(null,v,D);return M.push(h),Be(M).then(()=>{M=[];for(const g of o.list())M.push(Rt(g,v,D));return M.push(h),Be(M)}).then(()=>{M=rr(le,"beforeRouteUpdate",v,D);for(const g of le)g.updateGuards.forEach(w=>{M.push(Rt(w,v,D))});return M.push(h),Be(M)}).then(()=>{M=[];for(const g of d)if(g.beforeEnter)if(ze(g.beforeEnter))for(const w of g.beforeEnter)M.push(Rt(w,v,D));else M.push(Rt(g.beforeEnter,v,D));return M.push(h),Be(M)}).then(()=>(v.matched.forEach(g=>g.enterCallbacks={}),M=rr(d,"beforeRouteEnter",v,D,I),M.push(h),Be(M))).then(()=>{M=[];for(const g of i.list())M.push(Rt(g,v,D));return M.push(h),Be(M)}).catch(g=>ct(g,8)?g:Promise.reject(g))}function ee(v,D,M){l.list().forEach(B=>I(()=>B(v,D,M)))}function F(v,D,M,B,le){const d=P(v,D);if(d)return d;const h=D===_t,g=Xt?history.state:{};M&&(B||h?r.replace(v.fullPath,ne({scroll:h&&g&&g.scroll},le)):r.push(v.fullPath,le)),c.value=v,Ge(v,D,M,h),yt()}let Y;function pe(){Y||(Y=r.listen((v,D,M)=>{if(!Jn.listening)return;const B=A(v),le=X(B);if(le){z(ne(le,{replace:!0,force:!0}),B).catch(Tn);return}u=B;const d=c.value;Xt&&Zf(Go(d.fullPath,M.delta),Ms()),W(B,d).catch(h=>ct(h,12)?h:ct(h,2)?(z(ne(C(h.to),{force:!0}),B).then(g=>{ct(g,20)&&!M.delta&&M.type===jn.pop&&r.go(-1,!1)}).catch(Tn),Promise.reject()):(M.delta&&r.go(-M.delta,!1),te(h,B,d))).then(h=>{h=h||F(B,d,!1),h&&(M.delta&&!ct(h,8)?r.go(-M.delta,!1):M.type===jn.pop&&ct(h,20)&&r.go(-1,!1)),ee(B,d,h)}).catch(Tn)}))}let Ee=mn(),ie=mn(),G;function te(v,D,M){yt(v);const B=ie.list();return B.length?B.forEach(le=>le(v,D,M)):console.error(v),Promise.reject(v)}function it(){return G&&c.value!==_t?Promise.resolve():new Promise((v,D)=>{Ee.add([v,D])})}function yt(v){return G||(G=!v,pe(),Ee.list().forEach(([D,M])=>v?M(v):D()),Ee.reset()),v}function Ge(v,D,M,B){const{scrollBehavior:le}=e;if(!Xt||!le)return Promise.resolve();const d=!M&&ed(Go(v.fullPath,0))||(B||!M)&&history.state&&history.state.scroll||null;return Cs().then(()=>le(v,D,d)).then(h=>h&&Yf(h)).catch(h=>te(h,v,D))}const Te=v=>r.go(v);let Kt;const Wt=new Set,Jn={currentRoute:c,listening:!0,addRoute:m,removeRoute:y,clearRoutes:t.clearRoutes,hasRoute:x,getRoutes:_,resolve:A,options:e,push:L,replace:j,go:Te,back:()=>Te(-1),forward:()=>Te(1),beforeEach:o.add,beforeResolve:i.add,afterEach:l.add,onError:ie.add,isReady:it,install(v){const D=this;v.component("RouterLink",Rd),v.component("RouterView",cc),v.config.globalProperties.$router=D,Object.defineProperty(v.config.globalProperties,"$route",{enumerable:!0,get:()=>Pe(c)}),Xt&&!Kt&&c.value===_t&&(Kt=!0,L(r.location).catch(le=>{}));const M={};for(const le in _t)Object.defineProperty(M,le,{get:()=>c.value[le],enumerable:!0});v.provide(ks,D),v.provide(Qr,zi(M)),v.provide(Sr,c);const B=v.unmount;Wt.add(v),v.unmount=function(){Wt.delete(v),Wt.size<1&&(u=_t,Y&&Y(),Y=null,c.value=_t,Kt=!1,G=!1),B()}}};function Be(v){return v.reduce((D,M)=>D.then(()=>I(M)),Promise.resolve())}return Jn}function Pd(e,t){const n=[],s=[],r=[],o=Math.max(t.matched.length,e.matched.length);for(let i=0;ion(u,l))?s.push(l):n.push(l));const c=e.matched[i];c&&(t.matched.find(u=>on(u,c))||r.push(c))}return[n,s,r]}function Ld(){return Le(ks)}function Vp(e){return Le(Qr)}/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Nd=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */var Zn={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"};/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Id=({size:e,strokeWidth:t=2,absoluteStrokeWidth:n,color:s,iconNode:r,name:o,class:i,...l},{slots:c})=>nn("svg",{...Zn,width:e||Zn.width,height:e||Zn.height,stroke:s||Zn.stroke,"stroke-width":n?Number(t)*24/Number(e):t,class:["lucide",`lucide-${Nd(o??"icon")}`],...l},[...r.map(u=>nn(...u)),...c.default?[c.default()]:[]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const qt=(e,t)=>(n,{slots:s})=>nn(Id,{...n,iconNode:t,name:e},s);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Md=qt("CircleAlertIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const kd=qt("CircleCheckBigIcon",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Fd=qt("InfoIcon",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Dd=qt("MoonIcon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const jd=qt("SunIcon",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const Bd=qt("TriangleAlertIcon",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const $d=qt("XIcon",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),Ud=qn({__name:"ThemeToggle",setup(e){const t=Le("isDarkMode"),n=Le("setColorMode"),s=()=>{n(!t.value)};return(r,o)=>(qe(),Mn("button",{onClick:s,class:an(["fixed top-4 right-4 z-10 p-2 rounded-full transition-all duration-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500 transform hover:rotate-180",Pe(t)?"bg-gray-800 text-yellow-300":"bg-white text-gray-800"])},[Pe(t)?(qe(),tn(Pe(Dd),{key:1,class:"w-6 h-6"})):(qe(),tn(Pe(jd),{key:0,class:"w-6 h-6"}))],2))}});function ac(e,t){return function(){return e.apply(t,arguments)}}const{toString:Hd}=Object.prototype,{getPrototypeOf:Yr}=Object,{iterator:Fs,toStringTag:uc}=Symbol,Ds=(e=>t=>{const n=Hd.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Je=e=>(e=e.toLowerCase(),t=>Ds(t)===e),js=e=>t=>typeof t===e,{isArray:un}=Array,Bn=js("undefined");function Vd(e){return e!==null&&!Bn(e)&&e.constructor!==null&&!Bn(e.constructor)&&Ne(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const fc=Je("ArrayBuffer");function qd(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&fc(e.buffer),t}const Kd=js("string"),Ne=js("function"),dc=js("number"),Bs=e=>e!==null&&typeof e=="object",Wd=e=>e===!0||e===!1,ss=e=>{if(Ds(e)!=="object")return!1;const t=Yr(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(uc in e)&&!(Fs in e)},zd=Je("Date"),Jd=Je("File"),Gd=Je("Blob"),Xd=Je("FileList"),Qd=e=>Bs(e)&&Ne(e.pipe),Yd=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||Ne(e.append)&&((t=Ds(e))==="formdata"||t==="object"&&Ne(e.toString)&&e.toString()==="[object FormData]"))},Zd=Je("URLSearchParams"),[eh,th,nh,sh]=["ReadableStream","Request","Response","Headers"].map(Je),rh=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Wn(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let s,r;if(typeof e!="object"&&(e=[e]),un(e))for(s=0,r=e.length;s0;)if(r=n[s],t===r.toLowerCase())return r;return null}const Dt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,pc=e=>!Bn(e)&&e!==Dt;function xr(){const{caseless:e}=pc(this)&&this||{},t={},n=(s,r)=>{const o=e&&hc(t,r)||r;ss(t[o])&&ss(s)?t[o]=xr(t[o],s):ss(s)?t[o]=xr({},s):un(s)?t[o]=s.slice():t[o]=s};for(let s=0,r=arguments.length;s(Wn(t,(r,o)=>{n&&Ne(r)?e[o]=ac(r,n):e[o]=r},{allOwnKeys:s}),e),ih=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),lh=(e,t,n,s)=>{e.prototype=Object.create(t.prototype,s),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},ch=(e,t,n,s)=>{let r,o,i;const l={};if(t=t||{},e==null)return t;do{for(r=Object.getOwnPropertyNames(e),o=r.length;o-- >0;)i=r[o],(!s||s(i,e,t))&&!l[i]&&(t[i]=e[i],l[i]=!0);e=n!==!1&&Yr(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},ah=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const s=e.indexOf(t,n);return s!==-1&&s===n},uh=e=>{if(!e)return null;if(un(e))return e;let t=e.length;if(!dc(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},fh=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Yr(Uint8Array)),dh=(e,t)=>{const s=(e&&e[Fs]).call(e);let r;for(;(r=s.next())&&!r.done;){const o=r.value;t.call(e,o[0],o[1])}},hh=(e,t)=>{let n;const s=[];for(;(n=e.exec(t))!==null;)s.push(n);return s},ph=Je("HTMLFormElement"),mh=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,s,r){return s.toUpperCase()+r}),ui=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),gh=Je("RegExp"),mc=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),s={};Wn(n,(r,o)=>{let i;(i=t(r,o,e))!==!1&&(s[o]=i||r)}),Object.defineProperties(e,s)},yh=e=>{mc(e,(t,n)=>{if(Ne(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const s=e[n];if(Ne(s)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},bh=(e,t)=>{const n={},s=r=>{r.forEach(o=>{n[o]=!0})};return un(e)?s(e):s(String(e).split(t)),n},_h=()=>{},wh=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function vh(e){return!!(e&&Ne(e.append)&&e[uc]==="FormData"&&e[Fs])}const Eh=e=>{const t=new Array(10),n=(s,r)=>{if(Bs(s)){if(t.indexOf(s)>=0)return;if(!("toJSON"in s)){t[r]=s;const o=un(s)?[]:{};return Wn(s,(i,l)=>{const c=n(i,r+1);!Bn(c)&&(o[l]=c)}),t[r]=void 0,o}}return s};return n(e,0)},Sh=Je("AsyncFunction"),xh=e=>e&&(Bs(e)||Ne(e))&&Ne(e.then)&&Ne(e.catch),gc=((e,t)=>e?setImmediate:t?((n,s)=>(Dt.addEventListener("message",({source:r,data:o})=>{r===Dt&&o===n&&s.length&&s.shift()()},!1),r=>{s.push(r),Dt.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Ne(Dt.postMessage)),Rh=typeof queueMicrotask<"u"?queueMicrotask.bind(Dt):typeof process<"u"&&process.nextTick||gc,Ch=e=>e!=null&&Ne(e[Fs]),b={isArray:un,isArrayBuffer:fc,isBuffer:Vd,isFormData:Yd,isArrayBufferView:qd,isString:Kd,isNumber:dc,isBoolean:Wd,isObject:Bs,isPlainObject:ss,isReadableStream:eh,isRequest:th,isResponse:nh,isHeaders:sh,isUndefined:Bn,isDate:zd,isFile:Jd,isBlob:Gd,isRegExp:gh,isFunction:Ne,isStream:Qd,isURLSearchParams:Zd,isTypedArray:fh,isFileList:Xd,forEach:Wn,merge:xr,extend:oh,trim:rh,stripBOM:ih,inherits:lh,toFlatObject:ch,kindOf:Ds,kindOfTest:Je,endsWith:ah,toArray:uh,forEachEntry:dh,matchAll:hh,isHTMLForm:ph,hasOwnProperty:ui,hasOwnProp:ui,reduceDescriptors:mc,freezeMethods:yh,toObjectSet:bh,toCamelCase:mh,noop:_h,toFiniteNumber:wh,findKey:hc,global:Dt,isContextDefined:pc,isSpecCompliantForm:vh,toJSONObject:Eh,isAsyncFn:Sh,isThenable:xh,setImmediate:gc,asap:Rh,isIterable:Ch};function J(e,t,n,s,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),s&&(this.request=s),r&&(this.response=r,this.status=r.status?r.status:null)}b.inherits(J,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:b.toJSONObject(this.config),code:this.code,status:this.status}}});const yc=J.prototype,bc={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{bc[e]={value:e}});Object.defineProperties(J,bc);Object.defineProperty(yc,"isAxiosError",{value:!0});J.from=(e,t,n,s,r,o)=>{const i=Object.create(yc);return b.toFlatObject(e,i,function(c){return c!==Error.prototype},l=>l!=="isAxiosError"),J.call(i,e.message,t,n,s,r),i.cause=e,i.name=e.name,o&&Object.assign(i,o),i};const Th=null;function Rr(e){return b.isPlainObject(e)||b.isArray(e)}function _c(e){return b.endsWith(e,"[]")?e.slice(0,-2):e}function fi(e,t,n){return e?e.concat(t).map(function(r,o){return r=_c(r),!n&&o?"["+r+"]":r}).join(n?".":""):t}function Ah(e){return b.isArray(e)&&!e.some(Rr)}const Oh=b.toFlatObject(b,{},null,function(t){return/^is[A-Z]/.test(t)});function $s(e,t,n){if(!b.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=b.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(_,x){return!b.isUndefined(x[_])});const s=n.metaTokens,r=n.visitor||a,o=n.dots,i=n.indexes,c=(n.Blob||typeof Blob<"u"&&Blob)&&b.isSpecCompliantForm(t);if(!b.isFunction(r))throw new TypeError("visitor must be a function");function u(y){if(y===null)return"";if(b.isDate(y))return y.toISOString();if(b.isBoolean(y))return y.toString();if(!c&&b.isBlob(y))throw new J("Blob is not supported. Use a Buffer instead.");return b.isArrayBuffer(y)||b.isTypedArray(y)?c&&typeof Blob=="function"?new Blob([y]):Buffer.from(y):y}function a(y,_,x){let A=y;if(y&&!x&&typeof y=="object"){if(b.endsWith(_,"{}"))_=s?_:_.slice(0,-2),y=JSON.stringify(y);else if(b.isArray(y)&&Ah(y)||(b.isFileList(y)||b.endsWith(_,"[]"))&&(A=b.toArray(y)))return _=_c(_),A.forEach(function(P,L){!(b.isUndefined(P)||P===null)&&t.append(i===!0?fi([_],L,o):i===null?_:_+"[]",u(P))}),!1}return Rr(y)?!0:(t.append(fi(x,_,o),u(y)),!1)}const f=[],p=Object.assign(Oh,{defaultVisitor:a,convertValue:u,isVisitable:Rr});function m(y,_){if(!b.isUndefined(y)){if(f.indexOf(y)!==-1)throw Error("Circular reference detected in "+_.join("."));f.push(y),b.forEach(y,function(A,C){(!(b.isUndefined(A)||A===null)&&r.call(t,A,b.isString(C)?C.trim():C,_,p))===!0&&m(A,_?_.concat(C):[C])}),f.pop()}}if(!b.isObject(e))throw new TypeError("data must be an object");return m(e),t}function di(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(s){return t[s]})}function Zr(e,t){this._pairs=[],e&&$s(e,this,t)}const wc=Zr.prototype;wc.append=function(t,n){this._pairs.push([t,n])};wc.toString=function(t){const n=t?function(s){return t.call(this,s,di)}:di;return this._pairs.map(function(r){return n(r[0])+"="+n(r[1])},"").join("&")};function Ph(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function vc(e,t,n){if(!t)return e;const s=n&&n.encode||Ph;b.isFunction(n)&&(n={serialize:n});const r=n&&n.serialize;let o;if(r?o=r(t,n):o=b.isURLSearchParams(t)?t.toString():new Zr(t,n).toString(s),o){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class hi{constructor(){this.handlers=[]}use(t,n,s){return this.handlers.push({fulfilled:t,rejected:n,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){b.forEach(this.handlers,function(s){s!==null&&t(s)})}}const Ec={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Lh=typeof URLSearchParams<"u"?URLSearchParams:Zr,Nh=typeof FormData<"u"?FormData:null,Ih=typeof Blob<"u"?Blob:null,Mh={isBrowser:!0,classes:{URLSearchParams:Lh,FormData:Nh,Blob:Ih},protocols:["http","https","file","blob","url","data"]},eo=typeof window<"u"&&typeof document<"u",Cr=typeof navigator=="object"&&navigator||void 0,kh=eo&&(!Cr||["ReactNative","NativeScript","NS"].indexOf(Cr.product)<0),Fh=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Dh=eo&&window.location.href||"http://localhost",jh=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:eo,hasStandardBrowserEnv:kh,hasStandardBrowserWebWorkerEnv:Fh,navigator:Cr,origin:Dh},Symbol.toStringTag,{value:"Module"})),ve={...jh,...Mh};function Bh(e,t){return $s(e,new ve.classes.URLSearchParams,Object.assign({visitor:function(n,s,r,o){return ve.isNode&&b.isBuffer(n)?(this.append(s,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function $h(e){return b.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Uh(e){const t={},n=Object.keys(e);let s;const r=n.length;let o;for(s=0;s=n.length;return i=!i&&b.isArray(r)?r.length:i,c?(b.hasOwnProp(r,i)?r[i]=[r[i],s]:r[i]=s,!l):((!r[i]||!b.isObject(r[i]))&&(r[i]=[]),t(n,s,r[i],o)&&b.isArray(r[i])&&(r[i]=Uh(r[i])),!l)}if(b.isFormData(e)&&b.isFunction(e.entries)){const n={};return b.forEachEntry(e,(s,r)=>{t($h(s),r,n,0)}),n}return null}function Hh(e,t,n){if(b.isString(e))try{return(t||JSON.parse)(e),b.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(n||JSON.stringify)(e)}const zn={transitional:Ec,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const s=n.getContentType()||"",r=s.indexOf("application/json")>-1,o=b.isObject(t);if(o&&b.isHTMLForm(t)&&(t=new FormData(t)),b.isFormData(t))return r?JSON.stringify(Sc(t)):t;if(b.isArrayBuffer(t)||b.isBuffer(t)||b.isStream(t)||b.isFile(t)||b.isBlob(t)||b.isReadableStream(t))return t;if(b.isArrayBufferView(t))return t.buffer;if(b.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(o){if(s.indexOf("application/x-www-form-urlencoded")>-1)return Bh(t,this.formSerializer).toString();if((l=b.isFileList(t))||s.indexOf("multipart/form-data")>-1){const c=this.env&&this.env.FormData;return $s(l?{"files[]":t}:t,c&&new c,this.formSerializer)}}return o||r?(n.setContentType("application/json",!1),Hh(t)):t}],transformResponse:[function(t){const n=this.transitional||zn.transitional,s=n&&n.forcedJSONParsing,r=this.responseType==="json";if(b.isResponse(t)||b.isReadableStream(t))return t;if(t&&b.isString(t)&&(s&&!this.responseType||r)){const i=!(n&&n.silentJSONParsing)&&r;try{return JSON.parse(t)}catch(l){if(i)throw l.name==="SyntaxError"?J.from(l,J.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ve.classes.FormData,Blob:ve.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};b.forEach(["delete","get","head","post","put","patch"],e=>{zn.headers[e]={}});const Vh=b.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),qh=e=>{const t={};let n,s,r;return e&&e.split(` -`).forEach(function(i){r=i.indexOf(":"),n=i.substring(0,r).trim().toLowerCase(),s=i.substring(r+1).trim(),!(!n||t[n]&&Vh[n])&&(n==="set-cookie"?t[n]?t[n].push(s):t[n]=[s]:t[n]=t[n]?t[n]+", "+s:s)}),t},pi=Symbol("internals");function gn(e){return e&&String(e).trim().toLowerCase()}function rs(e){return e===!1||e==null?e:b.isArray(e)?e.map(rs):String(e)}function Kh(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=n.exec(e);)t[s[1]]=s[2];return t}const Wh=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function or(e,t,n,s,r){if(b.isFunction(s))return s.call(this,t,n);if(r&&(t=n),!!b.isString(t)){if(b.isString(s))return t.indexOf(s)!==-1;if(b.isRegExp(s))return s.test(t)}}function zh(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,s)=>n.toUpperCase()+s)}function Jh(e,t){const n=b.toCamelCase(" "+t);["get","set","has"].forEach(s=>{Object.defineProperty(e,s+n,{value:function(r,o,i){return this[s].call(this,t,r,o,i)},configurable:!0})})}let Ie=class{constructor(t){t&&this.set(t)}set(t,n,s){const r=this;function o(l,c,u){const a=gn(c);if(!a)throw new Error("header name must be a non-empty string");const f=b.findKey(r,a);(!f||r[f]===void 0||u===!0||u===void 0&&r[f]!==!1)&&(r[f||c]=rs(l))}const i=(l,c)=>b.forEach(l,(u,a)=>o(u,a,c));if(b.isPlainObject(t)||t instanceof this.constructor)i(t,n);else if(b.isString(t)&&(t=t.trim())&&!Wh(t))i(qh(t),n);else if(b.isObject(t)&&b.isIterable(t)){let l={},c,u;for(const a of t){if(!b.isArray(a))throw TypeError("Object iterator must return a key-value pair");l[u=a[0]]=(c=l[u])?b.isArray(c)?[...c,a[1]]:[c,a[1]]:a[1]}i(l,n)}else t!=null&&o(n,t,s);return this}get(t,n){if(t=gn(t),t){const s=b.findKey(this,t);if(s){const r=this[s];if(!n)return r;if(n===!0)return Kh(r);if(b.isFunction(n))return n.call(this,r,s);if(b.isRegExp(n))return n.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=gn(t),t){const s=b.findKey(this,t);return!!(s&&this[s]!==void 0&&(!n||or(this,this[s],s,n)))}return!1}delete(t,n){const s=this;let r=!1;function o(i){if(i=gn(i),i){const l=b.findKey(s,i);l&&(!n||or(s,s[l],l,n))&&(delete s[l],r=!0)}}return b.isArray(t)?t.forEach(o):o(t),r}clear(t){const n=Object.keys(this);let s=n.length,r=!1;for(;s--;){const o=n[s];(!t||or(this,this[o],o,t,!0))&&(delete this[o],r=!0)}return r}normalize(t){const n=this,s={};return b.forEach(this,(r,o)=>{const i=b.findKey(s,o);if(i){n[i]=rs(r),delete n[o];return}const l=t?zh(o):String(o).trim();l!==o&&delete n[o],n[l]=rs(r),s[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return b.forEach(this,(s,r)=>{s!=null&&s!==!1&&(n[r]=t&&b.isArray(s)?s.join(", "):s)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(` -`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const s=new this(t);return n.forEach(r=>s.set(r)),s}static accessor(t){const s=(this[pi]=this[pi]={accessors:{}}).accessors,r=this.prototype;function o(i){const l=gn(i);s[l]||(Jh(r,i),s[l]=!0)}return b.isArray(t)?t.forEach(o):o(t),this}};Ie.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);b.reduceDescriptors(Ie.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(s){this[n]=s}}});b.freezeMethods(Ie);function ir(e,t){const n=this||zn,s=t||n,r=Ie.from(s.headers);let o=s.data;return b.forEach(e,function(l){o=l.call(n,o,r.normalize(),t?t.status:void 0)}),r.normalize(),o}function xc(e){return!!(e&&e.__CANCEL__)}function fn(e,t,n){J.call(this,e??"canceled",J.ERR_CANCELED,t,n),this.name="CanceledError"}b.inherits(fn,J,{__CANCEL__:!0});function Rc(e,t,n){const s=n.config.validateStatus;!n.status||!s||s(n.status)?e(n):t(new J("Request failed with status code "+n.status,[J.ERR_BAD_REQUEST,J.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function Gh(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Xh(e,t){e=e||10;const n=new Array(e),s=new Array(e);let r=0,o=0,i;return t=t!==void 0?t:1e3,function(c){const u=Date.now(),a=s[o];i||(i=u),n[r]=c,s[r]=u;let f=o,p=0;for(;f!==r;)p+=n[f++],f=f%e;if(r=(r+1)%e,r===o&&(o=(o+1)%e),u-i{n=a,r=null,o&&(clearTimeout(o),o=null),e.apply(null,u)};return[(...u)=>{const a=Date.now(),f=a-n;f>=s?i(u,a):(r=u,o||(o=setTimeout(()=>{o=null,i(r)},s-f)))},()=>r&&i(r)]}const ys=(e,t,n=3)=>{let s=0;const r=Xh(50,250);return Qh(o=>{const i=o.loaded,l=o.lengthComputable?o.total:void 0,c=i-s,u=r(c),a=i<=l;s=i;const f={loaded:i,total:l,progress:l?i/l:void 0,bytes:c,rate:u||void 0,estimated:u&&l&&a?(l-i)/u:void 0,event:o,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(f)},n)},mi=(e,t)=>{const n=e!=null;return[s=>t[0]({lengthComputable:n,total:e,loaded:s}),t[1]]},gi=e=>(...t)=>b.asap(()=>e(...t)),Yh=ve.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ve.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ve.origin),ve.navigator&&/(msie|trident)/i.test(ve.navigator.userAgent)):()=>!0,Zh=ve.hasStandardBrowserEnv?{write(e,t,n,s,r,o){const i=[e+"="+encodeURIComponent(t)];b.isNumber(n)&&i.push("expires="+new Date(n).toGMTString()),b.isString(s)&&i.push("path="+s),b.isString(r)&&i.push("domain="+r),o===!0&&i.push("secure"),document.cookie=i.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function ep(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function tp(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Cc(e,t,n){let s=!ep(t);return e&&(s||n==!1)?tp(e,t):t}const yi=e=>e instanceof Ie?{...e}:e;function Vt(e,t){t=t||{};const n={};function s(u,a,f,p){return b.isPlainObject(u)&&b.isPlainObject(a)?b.merge.call({caseless:p},u,a):b.isPlainObject(a)?b.merge({},a):b.isArray(a)?a.slice():a}function r(u,a,f,p){if(b.isUndefined(a)){if(!b.isUndefined(u))return s(void 0,u,f,p)}else return s(u,a,f,p)}function o(u,a){if(!b.isUndefined(a))return s(void 0,a)}function i(u,a){if(b.isUndefined(a)){if(!b.isUndefined(u))return s(void 0,u)}else return s(void 0,a)}function l(u,a,f){if(f in t)return s(u,a);if(f in e)return s(void 0,u)}const c={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:l,headers:(u,a,f)=>r(yi(u),yi(a),f,!0)};return b.forEach(Object.keys(Object.assign({},e,t)),function(a){const f=c[a]||r,p=f(e[a],t[a],a);b.isUndefined(p)&&f!==l||(n[a]=p)}),n}const Tc=e=>{const t=Vt({},e);let{data:n,withXSRFToken:s,xsrfHeaderName:r,xsrfCookieName:o,headers:i,auth:l}=t;t.headers=i=Ie.from(i),t.url=vc(Cc(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&i.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let c;if(b.isFormData(n)){if(ve.hasStandardBrowserEnv||ve.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if((c=i.getContentType())!==!1){const[u,...a]=c?c.split(";").map(f=>f.trim()).filter(Boolean):[];i.setContentType([u||"multipart/form-data",...a].join("; "))}}if(ve.hasStandardBrowserEnv&&(s&&b.isFunction(s)&&(s=s(t)),s||s!==!1&&Yh(t.url))){const u=r&&o&&Zh.read(o);u&&i.set(r,u)}return t},np=typeof XMLHttpRequest<"u",sp=np&&function(e){return new Promise(function(n,s){const r=Tc(e);let o=r.data;const i=Ie.from(r.headers).normalize();let{responseType:l,onUploadProgress:c,onDownloadProgress:u}=r,a,f,p,m,y;function _(){m&&m(),y&&y(),r.cancelToken&&r.cancelToken.unsubscribe(a),r.signal&&r.signal.removeEventListener("abort",a)}let x=new XMLHttpRequest;x.open(r.method.toUpperCase(),r.url,!0),x.timeout=r.timeout;function A(){if(!x)return;const P=Ie.from("getAllResponseHeaders"in x&&x.getAllResponseHeaders()),j={data:!l||l==="text"||l==="json"?x.responseText:x.response,status:x.status,statusText:x.statusText,headers:P,config:e,request:x};Rc(function(z){n(z),_()},function(z){s(z),_()},j),x=null}"onloadend"in x?x.onloadend=A:x.onreadystatechange=function(){!x||x.readyState!==4||x.status===0&&!(x.responseURL&&x.responseURL.indexOf("file:")===0)||setTimeout(A)},x.onabort=function(){x&&(s(new J("Request aborted",J.ECONNABORTED,e,x)),x=null)},x.onerror=function(){s(new J("Network Error",J.ERR_NETWORK,e,x)),x=null},x.ontimeout=function(){let L=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const j=r.transitional||Ec;r.timeoutErrorMessage&&(L=r.timeoutErrorMessage),s(new J(L,j.clarifyTimeoutError?J.ETIMEDOUT:J.ECONNABORTED,e,x)),x=null},o===void 0&&i.setContentType(null),"setRequestHeader"in x&&b.forEach(i.toJSON(),function(L,j){x.setRequestHeader(j,L)}),b.isUndefined(r.withCredentials)||(x.withCredentials=!!r.withCredentials),l&&l!=="json"&&(x.responseType=r.responseType),u&&([p,y]=ys(u,!0),x.addEventListener("progress",p)),c&&x.upload&&([f,m]=ys(c),x.upload.addEventListener("progress",f),x.upload.addEventListener("loadend",m)),(r.cancelToken||r.signal)&&(a=P=>{x&&(s(!P||P.type?new fn(null,e,x):P),x.abort(),x=null)},r.cancelToken&&r.cancelToken.subscribe(a),r.signal&&(r.signal.aborted?a():r.signal.addEventListener("abort",a)));const C=Gh(r.url);if(C&&ve.protocols.indexOf(C)===-1){s(new J("Unsupported protocol "+C+":",J.ERR_BAD_REQUEST,e));return}x.send(o||null)})},rp=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let s=new AbortController,r;const o=function(u){if(!r){r=!0,l();const a=u instanceof Error?u:this.reason;s.abort(a instanceof J?a:new fn(a instanceof Error?a.message:a))}};let i=t&&setTimeout(()=>{i=null,o(new J(`timeout ${t} of ms exceeded`,J.ETIMEDOUT))},t);const l=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach(u=>{u.unsubscribe?u.unsubscribe(o):u.removeEventListener("abort",o)}),e=null)};e.forEach(u=>u.addEventListener("abort",o));const{signal:c}=s;return c.unsubscribe=()=>b.asap(l),c}},op=function*(e,t){let n=e.byteLength;if(n{const r=ip(e,t);let o=0,i,l=c=>{i||(i=!0,s&&s(c))};return new ReadableStream({async pull(c){try{const{done:u,value:a}=await r.next();if(u){l(),c.close();return}let f=a.byteLength;if(n){let p=o+=f;n(p)}c.enqueue(new Uint8Array(a))}catch(u){throw l(u),u}},cancel(c){return l(c),r.return()}},{highWaterMark:2})},Us=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",Ac=Us&&typeof ReadableStream=="function",cp=Us&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),Oc=(e,...t)=>{try{return!!e(...t)}catch{return!1}},ap=Ac&&Oc(()=>{let e=!1;const t=new Request(ve.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),_i=64*1024,Tr=Ac&&Oc(()=>b.isReadableStream(new Response("").body)),bs={stream:Tr&&(e=>e.body)};Us&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!bs[t]&&(bs[t]=b.isFunction(e[t])?n=>n[t]():(n,s)=>{throw new J(`Response type '${t}' is not supported`,J.ERR_NOT_SUPPORT,s)})})})(new Response);const up=async e=>{if(e==null)return 0;if(b.isBlob(e))return e.size;if(b.isSpecCompliantForm(e))return(await new Request(ve.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(b.isArrayBufferView(e)||b.isArrayBuffer(e))return e.byteLength;if(b.isURLSearchParams(e)&&(e=e+""),b.isString(e))return(await cp(e)).byteLength},fp=async(e,t)=>{const n=b.toFiniteNumber(e.getContentLength());return n??up(t)},dp=Us&&(async e=>{let{url:t,method:n,data:s,signal:r,cancelToken:o,timeout:i,onDownloadProgress:l,onUploadProgress:c,responseType:u,headers:a,withCredentials:f="same-origin",fetchOptions:p}=Tc(e);u=u?(u+"").toLowerCase():"text";let m=rp([r,o&&o.toAbortSignal()],i),y;const _=m&&m.unsubscribe&&(()=>{m.unsubscribe()});let x;try{if(c&&ap&&n!=="get"&&n!=="head"&&(x=await fp(a,s))!==0){let j=new Request(t,{method:"POST",body:s,duplex:"half"}),X;if(b.isFormData(s)&&(X=j.headers.get("content-type"))&&a.setContentType(X),j.body){const[z,V]=mi(x,ys(gi(c)));s=bi(j.body,_i,z,V)}}b.isString(f)||(f=f?"include":"omit");const A="credentials"in Request.prototype;y=new Request(t,{...p,signal:m,method:n.toUpperCase(),headers:a.normalize().toJSON(),body:s,duplex:"half",credentials:A?f:void 0});let C=await fetch(y,p);const P=Tr&&(u==="stream"||u==="response");if(Tr&&(l||P&&_)){const j={};["status","statusText","headers"].forEach(I=>{j[I]=C[I]});const X=b.toFiniteNumber(C.headers.get("content-length")),[z,V]=l&&mi(X,ys(gi(l),!0))||[];C=new Response(bi(C.body,_i,z,()=>{V&&V(),_&&_()}),j)}u=u||"text";let L=await bs[b.findKey(bs,u)||"text"](C,e);return!P&&_&&_(),await new Promise((j,X)=>{Rc(j,X,{data:L,headers:Ie.from(C.headers),status:C.status,statusText:C.statusText,config:e,request:y})})}catch(A){throw _&&_(),A&&A.name==="TypeError"&&/Load failed|fetch/i.test(A.message)?Object.assign(new J("Network Error",J.ERR_NETWORK,e,y),{cause:A.cause||A}):J.from(A,A&&A.code,e,y)}}),Ar={http:Th,xhr:sp,fetch:dp};b.forEach(Ar,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const wi=e=>`- ${e}`,hp=e=>b.isFunction(e)||e===null||e===!1,Pc={getAdapter:e=>{e=b.isArray(e)?e:[e];const{length:t}=e;let n,s;const r={};for(let o=0;o`adapter ${l} `+(c===!1?"is not supported by the environment":"is not available in the build"));let i=t?o.length>1?`since : -`+o.map(wi).join(` -`):" "+wi(o[0]):"as no adapter specified";throw new J("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return s},adapters:Ar};function lr(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new fn(null,e)}function vi(e){return lr(e),e.headers=Ie.from(e.headers),e.data=ir.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Pc.getAdapter(e.adapter||zn.adapter)(e).then(function(s){return lr(e),s.data=ir.call(e,e.transformResponse,s),s.headers=Ie.from(s.headers),s},function(s){return xc(s)||(lr(e),s&&s.response&&(s.response.data=ir.call(e,e.transformResponse,s.response),s.response.headers=Ie.from(s.response.headers))),Promise.reject(s)})}const Lc="1.10.0",Hs={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Hs[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});const Ei={};Hs.transitional=function(t,n,s){function r(o,i){return"[Axios v"+Lc+"] Transitional option '"+o+"'"+i+(s?". "+s:"")}return(o,i,l)=>{if(t===!1)throw new J(r(i," has been removed"+(n?" in "+n:"")),J.ERR_DEPRECATED);return n&&!Ei[i]&&(Ei[i]=!0,console.warn(r(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,i,l):!0}};Hs.spelling=function(t){return(n,s)=>(console.warn(`${s} is likely a misspelling of ${t}`),!0)};function pp(e,t,n){if(typeof e!="object")throw new J("options must be an object",J.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let r=s.length;for(;r-- >0;){const o=s[r],i=t[o];if(i){const l=e[o],c=l===void 0||i(l,o,e);if(c!==!0)throw new J("option "+o+" must be "+c,J.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new J("Unknown option "+o,J.ERR_BAD_OPTION)}}const os={assertOptions:pp,validators:Hs},et=os.validators;let Ut=class{constructor(t){this.defaults=t||{},this.interceptors={request:new hi,response:new hi}}async request(t,n){try{return await this._request(t,n)}catch(s){if(s instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const o=r.stack?r.stack.replace(/^.+\n/,""):"";try{s.stack?o&&!String(s.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(s.stack+=` -`+o):s.stack=o}catch{}}throw s}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Vt(this.defaults,n);const{transitional:s,paramsSerializer:r,headers:o}=n;s!==void 0&&os.assertOptions(s,{silentJSONParsing:et.transitional(et.boolean),forcedJSONParsing:et.transitional(et.boolean),clarifyTimeoutError:et.transitional(et.boolean)},!1),r!=null&&(b.isFunction(r)?n.paramsSerializer={serialize:r}:os.assertOptions(r,{encode:et.function,serialize:et.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),os.assertOptions(n,{baseUrl:et.spelling("baseURL"),withXsrfToken:et.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&b.merge(o.common,o[n.method]);o&&b.forEach(["delete","get","head","post","put","patch","common"],y=>{delete o[y]}),n.headers=Ie.concat(i,o);const l=[];let c=!0;this.interceptors.request.forEach(function(_){typeof _.runWhen=="function"&&_.runWhen(n)===!1||(c=c&&_.synchronous,l.unshift(_.fulfilled,_.rejected))});const u=[];this.interceptors.response.forEach(function(_){u.push(_.fulfilled,_.rejected)});let a,f=0,p;if(!c){const y=[vi.bind(this),void 0];for(y.unshift.apply(y,l),y.push.apply(y,u),p=y.length,a=Promise.resolve(n);f{if(!s._listeners)return;let o=s._listeners.length;for(;o-- >0;)s._listeners[o](r);s._listeners=null}),this.promise.then=r=>{let o;const i=new Promise(l=>{s.subscribe(l),o=l}).then(r);return i.cancel=function(){s.unsubscribe(o)},i},t(function(o,i,l){s.reason||(s.reason=new fn(o,i,l),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=s=>{t.abort(s)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Nc(function(r){t=r}),cancel:t}}};function gp(e){return function(n){return e.apply(null,n)}}function yp(e){return b.isObject(e)&&e.isAxiosError===!0}const Or={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Or).forEach(([e,t])=>{Or[t]=e});function Ic(e){const t=new Ut(e),n=ac(Ut.prototype.request,t);return b.extend(n,Ut.prototype,t,{allOwnKeys:!0}),b.extend(n,t,null,{allOwnKeys:!0}),n.create=function(r){return Ic(Vt(e,r))},n}const he=Ic(zn);he.Axios=Ut;he.CanceledError=fn;he.CancelToken=mp;he.isCancel=xc;he.VERSION=Lc;he.toFormData=$s;he.AxiosError=J;he.Cancel=he.CanceledError;he.all=function(t){return Promise.all(t)};he.spread=gp;he.isAxiosError=yp;he.mergeConfig=Vt;he.AxiosHeaders=Ie;he.formToJSON=e=>Sc(b.isHTMLForm(e)?new FormData(e):e);he.getAdapter=Pc.getAdapter;he.HttpStatusCode=Or;he.default=he;const{Axios:Wp,AxiosError:zp,CanceledError:Jp,isCancel:Gp,CancelToken:Xp,VERSION:Qp,all:Yp,Cancel:Zp,isAxiosError:em,spread:tm,toFormData:nm,AxiosHeaders:sm,HttpStatusCode:rm,formToJSON:om,getAdapter:im,mergeConfig:lm}=he,bp="",Mc=bp,to=he.create({baseURL:Mc,timeout:1e15,headers:{"Content-Type":"application/json"}});to.interceptors.request.use(e=>{const t=localStorage.getItem("token");return t&&(e.headers.Authorization=`Bearer ${t}`),e.url&&!e.url.startsWith("http")&&(e.url=`${Mc}/${e.url.replace(/^\//,"")}`),e},e=>Promise.reject(e));to.interceptors.response.use(e=>e.data,e=>{if(e.response)switch(e.response.status){case 401:console.error("未授权,请重新登录"),localStorage.clear(),window.location.href="/#/login";break;case 403:console.error("禁止访问");break;case 404:console.error("请求的资源不存在");break;default:console.error("发生错误:",e.response.data)}else e.request?console.error("未收到响应:",e.request):console.error("请求配置错误:",e.message);return Promise.reject(e)});const kc=Cf("alert",{state:()=>({alerts:[]}),actions:{showAlert(e,t="info",n=5e3){const s=Date.now(),r=Date.now();this.alerts.push({id:s,message:e,type:t,progress:100,duration:n,startTime:r}),setTimeout(()=>this.removeAlert(s),n)},removeAlert(e){const t=this.alerts.findIndex(n=>n.id===e);t>-1&&this.alerts.splice(t,1)},updateAlertProgress(e){const t=this.alerts.find(n=>n.id===e);if(t){const s=100-(Date.now()-t.startTime)/t.duration*100;t.progress=Math.max(0,s),t.progress<=0&&this.removeAlert(e)}}}}),_p={class:"p-4"},wp={class:"flex items-start"},vp={class:"flex-shrink-0"},Ep={class:"ml-3 flex-1 pt-0.5"},Sp=["innerHTML"],xp={class:"ml-4 flex-shrink-0 flex"},Rp=["onClick"],Cp={class:"h-1 bg-white bg-opacity-25"},Tp=qn({__name:"AlertComponent",setup(e){const t=kc(),{alerts:n}=Tf(t),{removeAlert:s,updateAlertProgress:r}=t,o={success:"from-green-500 to-green-600",error:"from-red-500 to-red-600",warning:"from-yellow-500 to-yellow-600",info:"from-blue-500 to-blue-600"},i={success:kd,error:Bd,warning:Md,info:Fd};let l;return Os(()=>{l=setInterval(()=>{n.value.forEach(c=>{r(c.id)})},100)}),Kr(()=>{clearInterval(l)}),(c,u)=>(qe(),tn(of,{name:"alert-fade",tag:"div",class:"fixed top-4 left-4 z-50 w-full sm:max-w-sm md:max-w-md space-y-4 px-4 sm:px-0"},{default:ds(()=>[(qe(!0),Mn(Ue,null,Ha(Pe(n),a=>(qe(),Mn("div",{key:a.id,class:an(["w-full rounded-lg shadow-xl overflow-hidden","bg-gradient-to-r",o[a.type]])},[Fe("div",_p,[Fe("div",wp,[Fe("div",vp,[(qe(),tn(ml(i[a.type]),{class:"h-6 w-6 text-white"}))]),Fe("div",Ep,[Fe("p",{class:"text-sm font-medium text-white",innerHTML:a.message},null,8,Sp)]),Fe("div",xp,[Fe("button",{onClick:f=>Pe(s)(a.id),class:"inline-flex text-white hover:text-gray-200 focus:outline-none transition-colors duration-200"},[u[0]||(u[0]=Fe("span",{class:"sr-only"},"关闭",-1)),me(Pe($d),{class:"h-5 w-5"})],8,Rp)])])]),Fe("div",Cp,[Fe("div",{class:"h-full bg-white transition-all duration-100 ease-out",style:Ss({width:`${a.progress}%`})},null,4)])],2))),128))]),_:1}))}}),Ap=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Op=Ap(Tp,[["__scopeId","data-v-0ce78a4a"]]),Pp={key:0,class:"loading-overlay"},Lp=qn({__name:"App",setup(e){const t=en(!1),n=en(!1),s=Ld(),r=kc(),o=()=>window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches,i=()=>{const c=localStorage.getItem("colorMode");return c?c==="dark":null},l=c=>{t.value=c,localStorage.setItem("colorMode",c?"dark":"light")};return Os(()=>{const c=i();l(c!==null?c:o()),to.post("/",{}).then(u=>{u.code===200&&(localStorage.setItem("config",JSON.stringify(u.detail)),u.detail.notify_title&&u.detail.notify_content&&localStorage.getItem("notify")!==u.detail.notify_title+u.detail.notify_content&&(localStorage.setItem("notify",u.detail.notify_title+u.detail.notify_content),r.showAlert(u.detail.notify_title+": "+u.detail.notify_content,"success")))})}),uu(()=>{document.documentElement.classList.toggle("dark",t.value)}),s.beforeEach((c,u,a)=>{n.value=!0,a()}),s.afterEach(()=>{setTimeout(()=>{n.value=!1},200)}),$t("isDarkMode",t),$t("setColorMode",l),$t("isLoading",n),(c,u)=>(qe(),Mn("div",{class:an(["app-container",t.value?"dark":"light"])},[me(Ud,{modelValue:t.value,"onUpdate:modelValue":u[0]||(u[0]=a=>t.value=a)},null,8,["modelValue"]),n.value?(qe(),Mn("div",Pp,u[1]||(u[1]=[Fe("div",{class:"loading-spinner"},null,-1)]))):Su("",!0),me(Pe(cc),null,{default:ds(({Component:a})=>[me(Bu,{name:"fade",mode:"out-in"},{default:ds(()=>[(qe(),tn(ml(a),{key:c.$route.fullPath}))]),_:2},1024)]),_:1}),me(Op)],2))}}),Np="modulepreload",Ip=function(e){return"/"+e},Si={},kt=function(t,n,s){let r=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),l=(i==null?void 0:i.nonce)||(i==null?void 0:i.getAttribute("nonce"));r=Promise.allSettled(n.map(c=>{if(c=Ip(c),c in Si)return;Si[c]=!0;const u=c.endsWith(".css"),a=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${a}`))return;const f=document.createElement("link");if(f.rel=u?"stylesheet":Np,u||(f.as="script"),f.crossOrigin="",f.href=c,l&&f.setAttribute("nonce",l),document.head.appendChild(f),u)return new Promise((p,m)=>{f.addEventListener("load",p),f.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${c}`)))})}))}function o(i){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=i,window.dispatchEvent(l),!l.defaultPrevented)throw i}return r.then(i=>{for(const l of i||[])l.status==="rejected"&&o(l.reason);return t().catch(o)})},Mp=()=>kt(()=>import("./SendFileView-DsSIurce.js"),__vite__mapDeps([0,1,2,3,4])),kp=Od({history:od("/"),routes:[{path:"/",name:"Retrieve",component:()=>kt(()=>import("./RetrievewFileView-DyKPLNPu.js"),__vite__mapDeps([5,1,6,2,7,3,8]))},{path:"/send",name:"Send",component:Mp},{path:"/admin",name:"Manage",component:()=>kt(()=>import("./AdminLayout-DlX3CUuP.js"),__vite__mapDeps([9,6,10])),redirect:"/admin/dashboard",children:[{path:"/admin/dashboard",name:"Dashboard",component:()=>kt(()=>import("./DashboardView-CykWLsDF.js"),__vite__mapDeps([11,2,7]))},{path:"/admin/files",name:"FileManage",component:()=>kt(()=>import("./FileManageView-BLdG4lo7.js"),__vite__mapDeps([12,2,3,13]))},{path:"/admin/settings",name:"Settings",component:()=>kt(()=>import("./SystemSettingsView-BvNjuhLF.js"),[])}]},{path:"/login",name:"Login",component:()=>kt(()=>import("./LoginView-DXxv6UDD.js"),__vite__mapDeps([14,6,15]))}]}),no=yf(Lp);no.use(wf());no.use(kp);no.mount("#app");export{tn as A,Ld as B,to as C,Tf as D,Vp as E,Ue as F,nn as G,fl as H,Cf as I,Hn as J,Kr as K,ml as L,Hp as M,Bp as N,Bu as T,$d as X,Ap as _,Mn as a,Fe as b,qt as c,qn as d,qe as e,De as f,me as g,Pe as h,Le as i,Up as j,ds as k,Su as l,Fp as m,an as n,Os as o,$p as p,Ss as q,en as r,Ha as s,Gc as t,kc as u,jp as v,xn as w,Eu as x,Dp as y,of as z}; diff --git a/themes/2025/assets/index-DVPU5oGt.css b/themes/2025/assets/index-DVPU5oGt.css new file mode 100644 index 000000000..bf752550e --- /dev/null +++ b/themes/2025/assets/index-DVPU5oGt.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),0 3px rgb(var(--tw-prose-kbd-shadows) / 10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: 17 24 39;--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: 255 255 255;--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-invert{--tw-prose-body: var(--tw-prose-invert-body);--tw-prose-headings: var(--tw-prose-invert-headings);--tw-prose-lead: var(--tw-prose-invert-lead);--tw-prose-links: var(--tw-prose-invert-links);--tw-prose-bold: var(--tw-prose-invert-bold);--tw-prose-counters: var(--tw-prose-invert-counters);--tw-prose-bullets: var(--tw-prose-invert-bullets);--tw-prose-hr: var(--tw-prose-invert-hr);--tw-prose-quotes: var(--tw-prose-invert-quotes);--tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);--tw-prose-captions: var(--tw-prose-invert-captions);--tw-prose-kbd: var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);--tw-prose-code: var(--tw-prose-invert-code);--tw-prose-pre-code: var(--tw-prose-invert-pre-code);--tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);--tw-prose-th-borders: var(--tw-prose-invert-th-borders);--tw-prose-td-borders: var(--tw-prose-invert-td-borders)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.-inset-2{top:-.5rem;right:-.5rem;bottom:-.5rem;left:-.5rem}.inset-0{top:0;right:0;bottom:0;left:0}.inset-1{top:.25rem;right:.25rem;bottom:.25rem;left:.25rem}.inset-y-0{top:0;bottom:0}.-bottom-0\.5{bottom:-.125rem}.-top-2{top:-.5rem}.left-0{left:0}.left-2{left:.5rem}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-2{right:.5rem}.right-24{right:6rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-3{top:.75rem}.top-4{top:1rem}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-\[85vh\]{max-height:85vh}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-16{width:4rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[200px\]{max-width:200px}.max-w-\[250px\]{max-width:250px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.-space-y-px>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(-1px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(-1px * var(--tw-space-y-reverse))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.divide-gray-700>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity, 1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-gray-700\/50{border-color:#37415180}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.border-indigo-500{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.border-indigo-600{--tw-border-opacity: 1;border-color:rgb(79 70 229 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-opacity-20{--tw-border-opacity: .2}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/60{background-color:#0009}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-900{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.bg-blue-900\/20{background-color:#1e3a8a33}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.bg-gray-700\/50{background-color:#37415180}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-800\/50{background-color:#1f293780}.bg-gray-800\/95{background-color:#1f2937f2}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900\/50{background-color:#11182780}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-900{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.bg-green-900\/30{background-color:#14532d4d}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-50{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.bg-indigo-500\/10{background-color:#6366f11a}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-indigo-900{--tw-bg-opacity: 1;background-color:rgb(49 46 129 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-900{--tw-bg-opacity: 1;background-color:rgb(88 28 135 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-900\/20{background-color:#7f1d1d33}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/50{background-color:#ffffff80}.bg-white\/70{background-color:#ffffffb3}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-900\/30{background-color:#713f124d}.bg-opacity-10{--tw-bg-opacity: .1}.bg-opacity-20{--tw-bg-opacity: .2}.bg-opacity-25{--tw-bg-opacity: .25}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-70{--tw-bg-opacity: .7}.bg-opacity-90{--tw-bg-opacity: .9}.bg-opacity-95{--tw-bg-opacity: .95}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-50{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-600{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-50{--tw-gradient-from: #f9fafb var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-800\/50{--tw-gradient-from: rgb(31 41 55 / .5) var(--tw-gradient-from-position);--tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900{--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900\/90{--tw-gradient-from: rgb(17 24 39 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-500{--tw-gradient-from: #22c55e var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-300{--tw-gradient-from: #a5b4fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(165 180 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-500{--tw-gradient-from: #6366f1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-600{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from: #ec4899 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 72 153 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #ef4444 var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from: #eab308 var(--tw-gradient-from-position);--tw-gradient-to: rgb(234 179 8 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-indigo-50{--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #eef2ff var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-indigo-900{--tw-gradient-to: rgb(49 46 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #312e81 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-300{--tw-gradient-to: rgb(216 180 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #d8b4fe var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-500{--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #a855f7 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-black\/90{--tw-gradient-to: rgb(0 0 0 / .9) var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.to-gray-700\/50{--tw-gradient-to: rgb(55 65 81 / .5) var(--tw-gradient-to-position)}.to-gray-800{--tw-gradient-to: #1f2937 var(--tw-gradient-to-position)}.to-green-600{--tw-gradient-to: #16a34a var(--tw-gradient-to-position)}.to-indigo-500{--tw-gradient-to: #6366f1 var(--tw-gradient-to-position)}.to-pink-300{--tw-gradient-to: #f9a8d4 var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to: #a855f7 var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to: #dc2626 var(--tw-gradient-to-position)}.to-white{--tw-gradient-to: #fff var(--tw-gradient-to-position)}.to-yellow-600{--tw-gradient-to: #ca8a04 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-right{background-position:right}.bg-no-repeat{background-repeat:no-repeat}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-10{padding-right:2.5rem}.pr-3{padding-right:.75rem}.pr-32{padding-right:8rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-0\.5{padding-top:.125rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-6{line-height:1.5rem}.tracking-wider{letter-spacing:.05em}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity, 1))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-indigo-500\/25{--tw-shadow-color: rgb(99 102 241 / .25);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-red-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.blur-md{--tw-blur: blur(12px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-lg{--tw-backdrop-blur: blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[appearance\:textfield\]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}@font-face{font-family:DingTalk;src:url(/assets/DingTalk-CT5a5scH.ttf) format("truetype")}*{font-family:DingTalk,sans-serif!important}.hover\:rotate-180:hover{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:rotate-90:hover{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.hover\:border-gray-500:hover{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.hover\:border-indigo-500:hover{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.hover\:bg-black:hover{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-400:hover{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-900\/30:hover{background-color:#1e3a8a4d}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600\/50:hover{background-color:#4b556380}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700\/50:hover{background-color:#37415180}.hover\:bg-green-100:hover{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.hover\:bg-green-400:hover{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-100:hover{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-400:hover{--tw-bg-opacity: 1;background-color:rgb(129 140 248 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-700:hover{--tw-bg-opacity: 1;background-color:rgb(67 56 202 / var(--tw-bg-opacity, 1))}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover\:bg-red-400:hover{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.hover\:bg-red-900\/30:hover{background-color:#7f1d1d4d}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-opacity-10:hover{--tw-bg-opacity: .1}.hover\:bg-opacity-20:hover{--tw-bg-opacity: .2}.hover\:bg-opacity-50:hover{--tw-bg-opacity: .5}.hover\:from-cyan-600:hover{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-cyan-700:hover{--tw-gradient-from: #0e7490 var(--tw-gradient-from-position);--tw-gradient-to: rgb(14 116 144 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-indigo-500:hover{--tw-gradient-from: #6366f1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-indigo-600:hover{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:via-purple-600:hover{--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #9333ea var(--tw-gradient-via-position), var(--tw-gradient-to)}.hover\:to-indigo-600:hover{--tw-gradient-to: #4f46e5 var(--tw-gradient-to-position)}.hover\:to-pink-600:hover{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.hover\:to-purple-600:hover{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.hover\:to-purple-700:hover{--tw-gradient-to: #7e22ce var(--tw-gradient-to-position)}.hover\:text-gray-200:hover{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-indigo-300:hover{--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-cyan-500\/50:hover{--tw-shadow-color: rgb(6 182 212 / .5);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-indigo-500\/35:hover{--tw-shadow-color: rgb(99 102 241 / .35);--tw-shadow: var(--tw-shadow-colored)}.focus\:z-10:focus{z-index:10}.focus\:border-cyan-500:focus{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity, 1))}.focus\:border-indigo-500:focus{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-inset:focus{--tw-ring-inset: inset}.focus\:ring-cyan-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-500\/50:focus{--tw-ring-color: rgb(99 102 241 / .5)}.focus\:ring-indigo-500\/70:focus{--tw-ring-color: rgb(99 102 241 / .7)}.focus\:ring-purple-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.focus\:ring-opacity-50:focus{--tw-ring-opacity: .5}.focus\:ring-offset-0:focus{--tw-ring-offset-width: 0px}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.group:focus-within .group-focus-within\:bg-indigo-500\/30{background-color:#6366f14d}.group:focus-within .group-focus-within\:bg-indigo-500\/50{background-color:#6366f180}.group:focus-within .group-focus-within\:text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.group:focus-within .group-focus-within\:text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.group:focus-within .group-focus-within\:opacity-100{opacity:1}.group:hover .group-hover\:translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.group:hover .group-hover\:border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.group:hover .group-hover\:text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:opacity-20{opacity:.2}@media (min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mb-3{margin-bottom:.75rem}.sm\:mb-4{margin-bottom:1rem}.sm\:mb-6{margin-bottom:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:mr-2{margin-right:.5rem}.sm\:h-4{height:1rem}.sm\:h-5{height:1.25rem}.sm\:h-6{height:1.5rem}.sm\:h-\[160px\]{height:160px}.sm\:w-4{width:1rem}.sm\:w-5{width:1.25rem}.sm\:w-6{width:1.5rem}.sm\:w-\[160px\]{width:160px}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-sm{max-width:24rem}.sm\:max-w-xl{max-width:36rem}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-4{gap:1rem}.sm\:gap-6{gap:1.5rem}.sm\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.sm\:p-0{padding:0}.sm\:p-2{padding:.5rem}.sm\:p-3{padding:.75rem}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3{padding-top:.75rem;padding-bottom:.75rem}.sm\:py-4{padding-top:1rem;padding-bottom:1rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 768px){.md\:max-w-md{max-width:28rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:relative{position:relative}.lg\:hidden{display:none}.lg\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (prefers-color-scheme: dark){.dark\:hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}}.\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.alert-fade-enter-active[data-v-0ce78a4a],.alert-fade-leave-active[data-v-0ce78a4a]{transition:all .5s cubic-bezier(.68,-.55,.265,1.55)}.alert-fade-enter-from[data-v-0ce78a4a],.alert-fade-leave-to[data-v-0ce78a4a]{opacity:0;transform:translate(-50px) scale(.95)}.app-container{min-height:100vh;width:100%;transition:background-color .5s ease}.light{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #eef2ff var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: #fff var(--tw-gradient-to-position)}.dark{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(49 46 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #312e81 var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: #000 var(--tw-gradient-to-position)}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:9999}.loading-spinner{width:50px;height:50px;border:3px solid #fff;border-top:3px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}} diff --git a/themes/2025/assets/index-DpAQhrHl.css b/themes/2025/assets/index-DpAQhrHl.css deleted file mode 100644 index b173dca45..000000000 --- a/themes/2025/assets/index-DpAQhrHl.css +++ /dev/null @@ -1 +0,0 @@ -*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),0 3px rgb(var(--tw-prose-kbd-shadows) / 10%);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: 17 24 39;--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: 255 255 255;--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-invert{--tw-prose-body: var(--tw-prose-invert-body);--tw-prose-headings: var(--tw-prose-invert-headings);--tw-prose-lead: var(--tw-prose-invert-lead);--tw-prose-links: var(--tw-prose-invert-links);--tw-prose-bold: var(--tw-prose-invert-bold);--tw-prose-counters: var(--tw-prose-invert-counters);--tw-prose-bullets: var(--tw-prose-invert-bullets);--tw-prose-hr: var(--tw-prose-invert-hr);--tw-prose-quotes: var(--tw-prose-invert-quotes);--tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);--tw-prose-captions: var(--tw-prose-invert-captions);--tw-prose-kbd: var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);--tw-prose-code: var(--tw-prose-invert-code);--tw-prose-pre-code: var(--tw-prose-invert-pre-code);--tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);--tw-prose-th-borders: var(--tw-prose-invert-th-borders);--tw-prose-td-borders: var(--tw-prose-invert-td-borders)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.-inset-2{top:-.5rem;right:-.5rem;bottom:-.5rem;left:-.5rem}.inset-0{top:0;right:0;bottom:0;left:0}.inset-1{top:.25rem;right:.25rem;bottom:.25rem;left:.25rem}.inset-y-0{top:0;bottom:0}.-bottom-0\.5{bottom:-.125rem}.-top-2{top:-.5rem}.left-0{left:0}.left-2{left:.5rem}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-2{right:.5rem}.right-24{right:6rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-3{top:.75rem}.top-4{top:1rem}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-16{height:4rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-\[85vh\]{max-height:85vh}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-0{width:0px}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-16{width:4rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[200px\]{max-width:200px}.max-w-\[250px\]{max-width:250px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.-space-y-px>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(-1px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(-1px * var(--tw-space-y-reverse))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(229 231 235 / var(--tw-divide-opacity, 1))}.divide-gray-700>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(55 65 81 / var(--tw-divide-opacity, 1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-gray-700\/50{border-color:#37415180}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.border-indigo-500{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.border-indigo-600{--tw-border-opacity: 1;border-color:rgb(79 70 229 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-opacity-20{--tw-border-opacity: .2}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/60{background-color:#0009}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-900{--tw-bg-opacity: 1;background-color:rgb(30 58 138 / var(--tw-bg-opacity, 1))}.bg-blue-900\/20{background-color:#1e3a8a33}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.bg-gray-700\/50{background-color:#37415180}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-800\/50{background-color:#1f293780}.bg-gray-800\/95{background-color:#1f2937f2}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900\/50{background-color:#11182780}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-900{--tw-bg-opacity: 1;background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1))}.bg-green-900\/30{background-color:#14532d4d}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-50{--tw-bg-opacity: 1;background-color:rgb(238 242 255 / var(--tw-bg-opacity, 1))}.bg-indigo-500\/10{background-color:#6366f11a}.bg-indigo-600{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.bg-indigo-900{--tw-bg-opacity: 1;background-color:rgb(49 46 129 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-900{--tw-bg-opacity: 1;background-color:rgb(88 28 135 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-900\/20{background-color:#7f1d1d33}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/50{background-color:#ffffff80}.bg-white\/70{background-color:#ffffffb3}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-900\/30{background-color:#713f124d}.bg-opacity-10{--tw-bg-opacity: .1}.bg-opacity-20{--tw-bg-opacity: .2}.bg-opacity-25{--tw-bg-opacity: .25}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-70{--tw-bg-opacity: .7}.bg-opacity-90{--tw-bg-opacity: .9}.bg-opacity-95{--tw-bg-opacity: .95}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-50{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500{--tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);--tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-600{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-50{--tw-gradient-from: #f9fafb var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-800\/50{--tw-gradient-from: rgb(31 41 55 / .5) var(--tw-gradient-from-position);--tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900{--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900\/90{--tw-gradient-from: rgb(17 24 39 / .9) var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-500{--tw-gradient-from: #22c55e var(--tw-gradient-from-position);--tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-300{--tw-gradient-from: #a5b4fc var(--tw-gradient-from-position);--tw-gradient-to: rgb(165 180 252 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-500{--tw-gradient-from: #6366f1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-600{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500{--tw-gradient-from: #ec4899 var(--tw-gradient-from-position);--tw-gradient-to: rgb(236 72 153 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-red-500{--tw-gradient-from: #ef4444 var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from: #eab308 var(--tw-gradient-from-position);--tw-gradient-to: rgb(234 179 8 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-indigo-50{--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #eef2ff var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-indigo-900{--tw-gradient-to: rgb(49 46 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #312e81 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-300{--tw-gradient-to: rgb(216 180 254 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #d8b4fe var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-500{--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #a855f7 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-black\/90{--tw-gradient-to: rgb(0 0 0 / .9) var(--tw-gradient-to-position)}.to-blue-600{--tw-gradient-to: #2563eb var(--tw-gradient-to-position)}.to-gray-700\/50{--tw-gradient-to: rgb(55 65 81 / .5) var(--tw-gradient-to-position)}.to-gray-800{--tw-gradient-to: #1f2937 var(--tw-gradient-to-position)}.to-green-600{--tw-gradient-to: #16a34a var(--tw-gradient-to-position)}.to-indigo-500{--tw-gradient-to: #6366f1 var(--tw-gradient-to-position)}.to-pink-300{--tw-gradient-to: #f9a8d4 var(--tw-gradient-to-position)}.to-pink-500{--tw-gradient-to: #ec4899 var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to: #a855f7 var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to: #dc2626 var(--tw-gradient-to-position)}.to-white{--tw-gradient-to: #fff var(--tw-gradient-to-position)}.to-yellow-600{--tw-gradient-to: #ca8a04 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.bg-right{background-position:right}.bg-no-repeat{background-repeat:no-repeat}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-10{padding-right:2.5rem}.pr-3{padding-right:.75rem}.pr-32{padding-right:8rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-0\.5{padding-top:.125rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-6{line-height:1.5rem}.tracking-wider{letter-spacing:.05em}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity, 1))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.placeholder-gray-400::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-400::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-indigo-500\/25{--tw-shadow-color: rgb(99 102 241 / .25);--tw-shadow: var(--tw-shadow-colored)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-red-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.blur-md{--tw-blur: blur(12px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-lg{--tw-backdrop-blur: blur(16px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[appearance\:textfield\]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}@font-face{font-family:DingTalk;src:url(/assets/DingTalk-CT5a5scH.ttf) format("truetype")}*{font-family:DingTalk,sans-serif!important}.hover\:rotate-180:hover{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:rotate-90:hover{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:scale-\[1\.02\]:hover{--tw-scale-x: 1.02;--tw-scale-y: 1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.hover\:border-gray-500:hover{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.hover\:border-indigo-500:hover{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.hover\:bg-black:hover{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-400:hover{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-900\/30:hover{background-color:#1e3a8a4d}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600\/50:hover{background-color:#4b556380}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700\/50:hover{background-color:#37415180}.hover\:bg-green-100:hover{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.hover\:bg-green-400:hover{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-100:hover{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-400:hover{--tw-bg-opacity: 1;background-color:rgb(129 140 248 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-700:hover{--tw-bg-opacity: 1;background-color:rgb(67 56 202 / var(--tw-bg-opacity, 1))}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover\:bg-red-400:hover{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.hover\:bg-red-900\/30:hover{background-color:#7f1d1d4d}.hover\:bg-white:hover{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-opacity-10:hover{--tw-bg-opacity: .1}.hover\:bg-opacity-20:hover{--tw-bg-opacity: .2}.hover\:bg-opacity-50:hover{--tw-bg-opacity: .5}.hover\:from-cyan-600:hover{--tw-gradient-from: #0891b2 var(--tw-gradient-from-position);--tw-gradient-to: rgb(8 145 178 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-cyan-700:hover{--tw-gradient-from: #0e7490 var(--tw-gradient-from-position);--tw-gradient-to: rgb(14 116 144 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-indigo-500:hover{--tw-gradient-from: #6366f1 var(--tw-gradient-from-position);--tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-indigo-600:hover{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:via-purple-600:hover{--tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #9333ea var(--tw-gradient-via-position), var(--tw-gradient-to)}.hover\:to-indigo-600:hover{--tw-gradient-to: #4f46e5 var(--tw-gradient-to-position)}.hover\:to-pink-600:hover{--tw-gradient-to: #db2777 var(--tw-gradient-to-position)}.hover\:to-purple-600:hover{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.hover\:to-purple-700:hover{--tw-gradient-to: #7e22ce var(--tw-gradient-to-position)}.hover\:text-gray-200:hover{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-indigo-300:hover{--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-cyan-500\/50:hover{--tw-shadow-color: rgb(6 182 212 / .5);--tw-shadow: var(--tw-shadow-colored)}.hover\:shadow-indigo-500\/35:hover{--tw-shadow-color: rgb(99 102 241 / .35);--tw-shadow: var(--tw-shadow-colored)}.focus\:z-10:focus{z-index:10}.focus\:border-cyan-500:focus{--tw-border-opacity: 1;border-color:rgb(6 182 212 / var(--tw-border-opacity, 1))}.focus\:border-indigo-500:focus{--tw-border-opacity: 1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-inset:focus{--tw-ring-inset: inset}.focus\:ring-cyan-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1))}.focus\:ring-indigo-500\/50:focus{--tw-ring-color: rgb(99 102 241 / .5)}.focus\:ring-indigo-500\/70:focus{--tw-ring-color: rgb(99 102 241 / .7)}.focus\:ring-purple-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.focus\:ring-opacity-50:focus{--tw-ring-opacity: .5}.focus\:ring-offset-0:focus{--tw-ring-offset-width: 0px}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.group:focus-within .group-focus-within\:bg-indigo-500\/30{background-color:#6366f14d}.group:focus-within .group-focus-within\:bg-indigo-500\/50{background-color:#6366f180}.group:focus-within .group-focus-within\:text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.group:focus-within .group-focus-within\:text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.group:focus-within .group-focus-within\:opacity-100{opacity:1}.group:hover .group-hover\:translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.group:hover .group-hover\:border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.group:hover .group-hover\:text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-indigo-600{--tw-text-opacity: 1;color:rgb(79 70 229 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:opacity-20{opacity:.2}@media (min-width: 640px){.sm\:my-8{margin-top:2rem;margin-bottom:2rem}.sm\:mb-3{margin-bottom:.75rem}.sm\:mb-4{margin-bottom:1rem}.sm\:mb-6{margin-bottom:1.5rem}.sm\:ml-4{margin-left:1rem}.sm\:mr-2{margin-right:.5rem}.sm\:h-4{height:1rem}.sm\:h-5{height:1.25rem}.sm\:h-6{height:1.5rem}.sm\:h-\[160px\]{height:160px}.sm\:w-4{width:1rem}.sm\:w-5{width:1.25rem}.sm\:w-6{width:1.5rem}.sm\:w-\[160px\]{width:160px}.sm\:w-auto{width:auto}.sm\:w-full{width:100%}.sm\:max-w-sm{max-width:24rem}.sm\:max-w-xl{max-width:36rem}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:gap-4{gap:1rem}.sm\:gap-6{gap:1.5rem}.sm\:space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.sm\:p-0{padding:0}.sm\:p-2{padding:.5rem}.sm\:p-3{padding:.75rem}.sm\:p-4{padding:1rem}.sm\:p-5{padding:1.25rem}.sm\:p-6{padding:1.5rem}.sm\:px-0{padding-left:0;padding-right:0}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3{padding-top:.75rem;padding-bottom:.75rem}.sm\:py-4{padding-top:1rem;padding-bottom:1rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 768px){.md\:max-w-md{max-width:28rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:relative{position:relative}.lg\:hidden{display:none}.lg\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (prefers-color-scheme: dark){.dark\:hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}}.\[\&\:\:-webkit-inner-spin-button\]\:appearance-none::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.\[\&\:\:-webkit-outer-spin-button\]\:appearance-none::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.alert-fade-enter-active[data-v-0ce78a4a],.alert-fade-leave-active[data-v-0ce78a4a]{transition:all .5s cubic-bezier(.68,-.55,.265,1.55)}.alert-fade-enter-from[data-v-0ce78a4a],.alert-fade-leave-to[data-v-0ce78a4a]{opacity:0;transform:translate(-50px) scale(.95)}.app-container{min-height:100vh;width:100%;transition:background-color .5s ease}.light{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #eef2ff var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: #fff var(--tw-gradient-to-position)}.dark{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);--tw-gradient-to: rgb(49 46 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #312e81 var(--tw-gradient-via-position), var(--tw-gradient-to);--tw-gradient-to: #000 var(--tw-gradient-to-position)}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999}.loading-spinner{width:50px;height:50px;border:3px solid #fff;border-top:3px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}} diff --git a/themes/2025/assets/trash-CAImX6bg.js b/themes/2025/assets/trash-CAImX6bg.js deleted file mode 100644 index c6844aaf1..000000000 --- a/themes/2025/assets/trash-CAImX6bg.js +++ /dev/null @@ -1,6 +0,0 @@ -import{c}from"./index-C-4-823a.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const e=c("TrashIcon",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}]]);export{e as T}; diff --git a/themes/2025/assets/trash-FNvP9-P8.js b/themes/2025/assets/trash-FNvP9-P8.js deleted file mode 100644 index 8a058d9e7..000000000 --- a/themes/2025/assets/trash-FNvP9-P8.js +++ /dev/null @@ -1,6 +0,0 @@ -import{c}from"./index-DKQ1YPO4.js";/** - * @license lucide-vue-next v0.445.0 - ISC - * - * This source code is licensed under the ISC license. - * See the LICENSE file in the root directory of this source tree. - */const e=c("TrashIcon",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}]]);export{e as T}; diff --git a/themes/2025/assets/trash-R3aCwIiM.js b/themes/2025/assets/trash-R3aCwIiM.js new file mode 100644 index 000000000..a99a98b81 --- /dev/null +++ b/themes/2025/assets/trash-R3aCwIiM.js @@ -0,0 +1,11 @@ +import{c as a}from"./index-BAgz5Ib8.js";/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const e=a("TextIcon",[["path",{d:"M17 6.1H3",key:"wptmhv"}],["path",{d:"M21 12.1H3",key:"1j38uz"}],["path",{d:"M15.1 18H3",key:"1nb16a"}]]);/** + * @license lucide-vue-next v0.445.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const c=a("TrashIcon",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}]]);export{e as T,c as a}; diff --git a/themes/2025/index.html b/themes/2025/index.html index bc115280a..27b20b4dc 100644 --- a/themes/2025/index.html +++ b/themes/2025/index.html @@ -13,8 +13,8 @@ {{title}} - - + +
    diff --git a/web/src/utils/clipboard.ts b/web/src/utils/clipboard.ts index 3b963aa26..68d03d7de 100644 --- a/web/src/utils/clipboard.ts +++ b/web/src/utils/clipboard.ts @@ -56,27 +56,27 @@ export const copyToClipboard = async ( } /** - * 生成并复制取件链接 - * @param code 取件码 + * 生成并复制领粮链接 + * @param code 粮票号 * @returns Promise 是否复制成功 */ export const copyRetrieveLink = async (code: string): Promise => { const link = `${window.location.origin}/#/?code=${code}` return copyToClipboard(link, { - successMsg: '取件链接已复制到剪贴板', - errorMsg: '复制失败,请手动复制取件链接' + successMsg: '领粮链接已复制到剪贴板', + errorMsg: '复制失败,请手动复制领粮链接' }) } /** - * 复制取件码 - * @param code 取件码 + * 复制粮票号 + * @param code 粮票号 * @returns Promise 是否复制成功 */ export const copyRetrieveCode = async (code: string): Promise => { return copyToClipboard(code, { - successMsg: '取件码已复制到剪贴板', - errorMsg: '复制失败,请手动复制取件码' + successMsg: '粮票号已复制到剪贴板', + errorMsg: '复制失败,请手动复制粮票号' }) } diff --git a/web/src/views/RetrievewFileView.vue b/web/src/views/RetrievewFileView.vue index b7855fc1e..fa92b2c79 100644 --- a/web/src/views/RetrievewFileView.vue +++ b/web/src/views/RetrievewFileView.vue @@ -24,7 +24,7 @@
    + :class="[isDarkMode ? 'text-gray-300' : 'text-gray-800']">粮票号
    @@ -63,7 +63,8 @@
    - + 安全加密 @@ -96,7 +97,10 @@ class="bg-opacity-50 rounded-lg p-4 flex items-center shadow-sm hover:shadow-lg transition duration-300 transform hover:scale-102" :class="[isDarkMode ? 'bg-gray-800 hover:bg-gray-700' : 'bg-gray-100 hover:bg-white']">
    - + +

    @@ -146,10 +150,10 @@ : 'bg-white bg-opacity-95' ]">

    - 粮食详情 + 领粮详情

    -
    +

    @@ -160,30 +164,30 @@

    - 取件日期:{{ selectedRecord.date }} + 投喂日期:{{ selectedRecord.date }}

    - 文件大小:{{ selectedRecord.size }} + 投喂大小:{{ selectedRecord.size }}

    - 文件内容: + {{ selectedRecord.type === "text" ? "文本内容:" : "文件内容:" }}

    @@ -192,13 +196,13 @@

    - 取件二维码 + 领粮二维码

    - 扫描二维码快速取件 + 扫描二维码快速领粮

    @@ -265,6 +269,7 @@ import { XIcon, TrashIcon, FileIcon, + TextIcon, CalendarIcon, HardDriveIcon, DownloadIcon, @@ -300,6 +305,7 @@ const route = useRoute() // 使用 receiveData 替代原来的 records const records = receiveData +console.log(records) const config = JSON.parse(localStorage.getItem('config') || '{}') onMounted(() => { @@ -332,7 +338,7 @@ const copyContent = async () => { } const handleSubmit = async () => { if (code.value.length !== 5) { - alertStore.showAlert('请输入5位取件码', 'error') + alertStore.showAlert('请输入5位粮票号', 'error') return } @@ -350,6 +356,7 @@ const handleSubmit = async () => { const newFileData = { id: Date.now(), code: res.detail.code, + type: res.detail.type, filename: res.detail.name, size: formatFileSize(res.detail.size), downloadUrl: isFile ? res.detail.text : null, @@ -375,14 +382,14 @@ const handleSubmit = async () => { } alertStore.showAlert('文件获取成功', 'success') } else { - alertStore.showAlert('无效的取件码', 'error') + alertStore.showAlert('无效的粮票号', 'error') } } else { alertStore.showAlert(res.detail || '获取文件失败', 'error') } } catch (err) { - console.error('取件失败:', err) - alertStore.showAlert('取件失败,请稍后重试', 'error') + console.error('领粮失败:', err) + alertStore.showAlert('领粮失败,请稍后重试', 'error') } finally { inputStatus.value.readonly = false inputStatus.value.loading = false diff --git a/web/src/views/SendFileView.vue b/web/src/views/SendFileView.vue index 303586dd6..74f686bed 100644 --- a/web/src/views/SendFileView.vue +++ b/web/src/views/SendFileView.vue @@ -182,7 +182,8 @@
    - + 安全加密 @@ -215,7 +216,10 @@ class="bg-opacity-50 rounded-lg p-4 flex items-center shadow-sm hover:shadow-lg transition duration-300 transform hover:scale-102" :class="[isDarkMode ? 'bg-gray-800 hover:bg-gray-700' : 'bg-gray-100 hover:bg-white']">
    - + +

    @@ -315,17 +319,17 @@

    - +
    - +
    -

    取件码

    +

    粮票号

    @@ -364,7 +368,7 @@

    - 扫描二维码快速取件 + 扫描二维码快速领粮

    @@ -374,7 +378,7 @@
    @@ -426,7 +430,7 @@ import { useAlertStore } from '@/stores/alertStore' const alertStore = useAlertStore() const sendRecords = computed(() => fileDataStore.shareData) - +console.log(sendRecords) const fileHash = ref('') const triggerFileUpload = () => { @@ -787,14 +791,14 @@ const handleSubmit = async () => { fileDataStore.addShareData(newRecord) // 显示发送成功消息 - alertStore.showAlert(`文件发送成功!取件码:${retrieveCode}`, 'success') + alertStore.showAlert(`文件发送成功!粮票号:${retrieveCode}`, 'success') // 重置表单 - 只重置文件和文本内容,保留过期信息 selectedFile.value = null textContent.value = '' uploadProgress.value = 0 // 显示详情 selectedRecord.value = newRecord - // 自动复制取件码链接 + // 自动复制粮票号链接 await copyRetrieveLink(retrieveCode) } else { throw new Error('服务器响应异常') diff --git a/web/src/views/manage/FileManageView.vue b/web/src/views/manage/FileManageView.vue index e52570a4b..21a32ac6b 100644 --- a/web/src/views/manage/FileManageView.vue +++ b/web/src/views/manage/FileManageView.vue @@ -64,7 +64,9 @@
    - + @@ -85,6 +87,12 @@ {{ Math.round((file.size / 1024 / 1024) * 100) / 100 }}MB + + + {{ file.used_count }}次 + +
    @@ -216,7 +224,7 @@

    - 编辑文件信息 + {{ editForm.text==null?"编辑文件信息":"编辑文信息" }}

    @@ -232,11 +240,11 @@
    - +

    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 literal 0 HcmV?d00001 diff --git a/web/src/App.vue b/web/src/App.vue new file mode 100644 index 000000000..7cdeb680e --- /dev/null +++ b/web/src/App.vue @@ -0,0 +1,148 @@ + + + + + diff --git a/web/src/assets/font/DingTalk.ttf b/web/src/assets/font/DingTalk.ttf new file mode 100644 index 0000000000000000000000000000000000000000..a5b78e63fdde9a1a53e1bd54ed818470effb561e GIT binary patch literal 85552 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 + +