diff --git a/ReadMe.md b/ReadMe.md index 9f85406..414b7f4 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -128,7 +128,6 @@ http.authorizeHttpRequests(auth -> auth graph TD 父工程 -->|主项目| auth-api -父工程 -->|代码生成器| generator-code auth-api -->|启动项、控制器| service service -->|mapper| dao service -->|包含domain、配置等| auth-core diff --git a/auh-api/src/main/java/cn/bunny/services/AuthServiceApplication.java b/auh-api/src/main/java/cn/bunny/services/AuthServiceApplication.java index e1635c1..a7bd896 100644 --- a/auh-api/src/main/java/cn/bunny/services/AuthServiceApplication.java +++ b/auh-api/src/main/java/cn/bunny/services/AuthServiceApplication.java @@ -1,5 +1,6 @@ package cn.bunny.services; +import org.dromara.x.file.storage.spring.EnableFileStorage; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -11,6 +12,7 @@ import org.springframework.transaction.annotation.EnableTransactionManagement; @MapperScan("cn.bunny.services.mapper") @ComponentScan("cn.bunny") @EnableScheduling +@EnableFileStorage @EnableCaching @EnableTransactionManagement @SpringBootApplication diff --git a/auh-api/src/main/java/cn/bunny/services/ReadMe.md b/auh-api/src/main/java/cn/bunny/services/ReadMe.md index c55259d..6a6c8b1 100644 --- a/auh-api/src/main/java/cn/bunny/services/ReadMe.md +++ b/auh-api/src/main/java/cn/bunny/services/ReadMe.md @@ -1,4 +1,38 @@ -# 生成系统需要的权限 +# 文档包含配置和一些其他说明 + +## 文件上传配置 + +如果需要其他平台,需要参考文档:https://x-file-storage.xuyanwu.cn/#/。 + +因为按照要求,删除、更新操作需要实现接口,所以目前的`FileRecorder`是实现了的,在`FileDetailService`。 + +```yaml +# 可以配置很多但只能使用一个!!!其他平台参考官方文档 +dromara: + x-file-storage: # 文件存储配置 + default-platform: local-plus-1 # 默认使用的存储平台 + # default-platform: minio-1 # 默认使用的存储平台 + thumbnail-suffix: ".min.jpg" # 缩略图后缀,例如【.min.jpg】【.png】 + local-plus: + - platform: local-plus-1 # 存储平台标识 + enable-storage: true # 启用存储 + enable-access: true # 启用访问(线上请使用 Nginx 配置,效率更高) + domain: ${dromara.local-plus.domain} + base-path: ${dromara.local-plus.base-path} + path-patterns: ${dromara.local-plus.path-patterns} + storage-path: ${dromara.local-plus.storage-path} + minio: + - platform: minio-1 # 存储平台标识 + enable-storage: true # 启用存储 + end-point: ${dromara.minio.endpointUrl} + domain: ${dromara.minio.endpointUrl}/${dromara.minio.bucket-name} + bucket-name: ${dromara.minio.bucket-name} + access-key: ${dromara.minio.accessKey} + secret-key: ${dromara.minio.secretKey} + base-path: ${dromara.minio.base-path} +``` + +## 生成系统需要的权限 ```java import cn.bunny.services.AuthServiceApplication; @@ -77,4 +111,59 @@ public class BuildPermissionApiTest { }); } } +``` + +## MInio权限设置 + +如果其他平台也需要,根据自己需求进行添加,不需要可以删除这个文件。 + +```java +/** + * 如果项目使用的是minio,创建桶的时候需要设置公开权限 + * 在这里初始化的时候会自动设置公开权限 + */ +@Configuration +@ConditionalOnProperty(name = "dromara.x-file-storage.minio.bucket-name") +@Data +public class MinioConfiguration { + + /* 地址 */ + private String domain; + /* 访问秘钥 */ + private String accessKey; + /* 私有秘钥 */ + private String secretKey; + /* 桶名称 */ + private String bucketName; + + @Bean + public MinioClient minioClient() { + MinioClient minioClient = MinioClient.builder().endpoint(domain).credentials(accessKey, secretKey).build(); + + try { + // 判断桶是否存在,不存在则创建,并且可以有公开访问权限 + boolean found = minioClient.bucketExists(BucketExistsArgs.builder().bucket(bucketName).build()); + if (!found) { + minioClient.makeBucket(MakeBucketArgs.builder().bucket(bucketName).build()); + String publicPolicy = String.format("{\n" + + " \"Version\": \"2012-10-17\",\n" + + " \"Statement\": [\n" + + " {\n" + + " \"Effect\": \"Allow\",\n" + + " \"Principal\": \"*\",\n" + + " \"Action\": [\"s3:GetObject\"],\n" + + " \"Resource\": [\"arn:aws:s3:::%s/*\"]\n" + + " }\n" + + " ]\n" + + "}", bucketName); + + minioClient.setBucketPolicy(SetBucketPolicyArgs.builder().bucket(bucketName).config(publicPolicy).build()); + } + } catch (Exception exception) { + exception.getStackTrace(); + } + + return minioClient; + } +} ``` \ No newline at end of file diff --git a/auh-api/src/main/java/cn/bunny/services/controller/system/FilesController.java b/auh-api/src/main/java/cn/bunny/services/controller/file/FilesController.java similarity index 81% rename from auh-api/src/main/java/cn/bunny/services/controller/system/FilesController.java rename to auh-api/src/main/java/cn/bunny/services/controller/file/FilesController.java index 064709d..21b58e8 100644 --- a/auh-api/src/main/java/cn/bunny/services/controller/system/FilesController.java +++ b/auh-api/src/main/java/cn/bunny/services/controller/file/FilesController.java @@ -1,17 +1,16 @@ -package cn.bunny.services.controller.system; +package cn.bunny.services.controller.file; -import cn.bunny.services.domain.common.constant.MinioConstant; +import cn.bunny.services.domain.common.constant.FileStorageConstant; import cn.bunny.services.domain.common.enums.ResultCodeEnum; import cn.bunny.services.domain.common.model.vo.result.PageResult; import cn.bunny.services.domain.common.model.vo.result.Result; import cn.bunny.services.domain.system.files.dto.FileUploadDto; -import cn.bunny.services.domain.system.files.dto.FilesAddDto; +import cn.bunny.services.domain.system.files.dto.FilesAddOrUpdateDto; import cn.bunny.services.domain.system.files.dto.FilesDto; -import cn.bunny.services.domain.system.files.dto.FilesUpdateDto; import cn.bunny.services.domain.system.files.entity.Files; import cn.bunny.services.domain.system.files.vo.FileInfoVo; import cn.bunny.services.domain.system.files.vo.FilesVo; -import cn.bunny.services.service.system.FilesService; +import cn.bunny.services.service.file.FilesService; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; @@ -23,7 +22,6 @@ import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Map; -import java.util.Set; /** *

@@ -56,14 +54,14 @@ public class FilesController { @Operation(summary = "更新文件", description = "更新系统文件", tags = "files::update") @PutMapping() - public Result updateFiles(@Valid FilesUpdateDto dto) { + public Result updateFiles(@Valid FilesAddOrUpdateDto dto) { filesService.updateFiles(dto); return Result.success(ResultCodeEnum.UPDATE_SUCCESS); } @Operation(summary = "添加文件", description = "添加系统文件", tags = "files::add") @PostMapping() - public Result addFiles(@Valid FilesAddDto dto) { + public Result addFiles(@Valid FilesAddOrUpdateDto dto) { filesService.addFiles(dto); return Result.success(ResultCodeEnum.ADD_SUCCESS); } @@ -81,17 +79,10 @@ public class FilesController { return filesService.downloadFilesByFileId(fileId); } - @Operation(summary = "获取所有文件类型", description = "获取所有文件类型", tags = "files::query") - @GetMapping("private/getMediaTypeList") - public Result> getMediaTypeList() { - Set list = filesService.getMediaTypeList(); - return Result.success(list); - } - @Operation(summary = "获取所有文件存储基础路径", description = "获取所有文件存储基础路径", tags = "files::query") @GetMapping("private/getAllFilesStoragePath") public Result> getAllFilesStoragePath() { - Map typeMap = MinioConstant.typeMap; + Map typeMap = FileStorageConstant.typeMap; List list = typeMap.keySet().stream().toList(); return Result.success(list); diff --git a/auh-api/src/main/java/cn/bunny/services/controller/file/FilesParDetailController.java b/auh-api/src/main/java/cn/bunny/services/controller/file/FilesParDetailController.java new file mode 100644 index 0000000..1d0541c --- /dev/null +++ b/auh-api/src/main/java/cn/bunny/services/controller/file/FilesParDetailController.java @@ -0,0 +1,69 @@ +package cn.bunny.services.controller.file; + +import cn.bunny.services.domain.common.enums.ResultCodeEnum; +import cn.bunny.services.domain.common.model.vo.result.PageResult; +import cn.bunny.services.domain.common.model.vo.result.Result; +import cn.bunny.services.domain.system.files.dto.FilesParDetailDto; +import cn.bunny.services.domain.system.files.entity.FilesParDetail; +import cn.bunny.services.domain.system.files.vo.FilesParDetailVo; +import cn.bunny.services.service.file.FilesParDetailService; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; +import jakarta.validation.Valid; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + *

+ * 文件分片信息表,仅在手动分片上传时使用 前端控制器 + *

+ * + * @author Bunny + * @since 2025-05-08 23:01:19 + */ +@Tag(name = "文件分片信息表,仅在手动分片上传时使用", description = "文件分片信息表,仅在手动分片上传时使用相关接口") +@RestController +@RequestMapping("/api/filesParDetail") +public class FilesParDetailController { + + @Resource + private FilesParDetailService filesPardetailService; + + @Operation(summary = "分页查询文件分片信息表,仅在手动分片上传时使用", description = "分页文件分片信息表,仅在手动分片上传时使用", tags = "filesParDetail::query") + @GetMapping("{page}/{limit}") + public Result> getFilesParDetailPage( + @Parameter(name = "page", description = "当前页", required = true) + @PathVariable("page") Integer page, + @Parameter(name = "limit", description = "每页记录数", required = true) + @PathVariable("limit") Integer limit, + FilesParDetailDto dto) { + Page pageParams = new Page<>(page, limit); + PageResult pageResult = filesPardetailService.getFilesParDetailPage(pageParams, dto); + return Result.success(pageResult); + } + + @Operation(summary = "添加文件分片信息表,仅在手动分片上传时使用", description = "添加文件分片信息表,仅在手动分片上传时使用", tags = "filesParDetail::add") + @PostMapping() + public Result addFilesParDetail(@Valid @RequestBody FilesParDetailDto dto) { + filesPardetailService.addFilesParDetail(dto); + return Result.success(ResultCodeEnum.ADD_SUCCESS); + } + + @Operation(summary = "更新文件分片信息表,仅在手动分片上传时使用", description = "更新文件分片信息表,仅在手动分片上传时使用", tags = "filesParDetail::update") + @PutMapping() + public Result updateFilesParDetail(@Valid @RequestBody FilesParDetailDto dto) { + filesPardetailService.updateFilesParDetail(dto); + return Result.success(ResultCodeEnum.UPDATE_SUCCESS); + } + + @Operation(summary = "删除文件分片信息表,仅在手动分片上传时使用", description = "删除文件分片信息表,仅在手动分片上传时使用", tags = "filesParDetail::delete") + @DeleteMapping() + public Result deleteFilesParDetail(@RequestBody List ids) { + filesPardetailService.deleteFilesParDetail(ids); + return Result.success(ResultCodeEnum.DELETE_SUCCESS); + } +} \ No newline at end of file diff --git a/auh-api/src/main/resources/application-dev.yml b/auh-api/src/main/resources/application-dev.yml index 1b6ced0..aa8102f 100644 --- a/auh-api/src/main/resources/application-dev.yml +++ b/auh-api/src/main/resources/application-dev.yml @@ -31,11 +31,17 @@ bunny: database: 0 password: "123456" +dromara: + local-plus: + # 访问域名,例如:“http://127.0.0.1:8030/file”,注意后面要和 path-patterns 名字一样 + domain: /api/local-file + # 访问路径,使用本地在SpringSecurity中要配置权限,如果是和我一样就不用修改了,如果不是api开头,上线需要配置nginx + path-patterns: /api/local-file/** + storage-path: D:/Temp # 存储路径 + base-path: "" # 基础路径 minio: endpointUrl: "http://192.168.3.137:9000" # 连接地址 accessKey: bunny # 用户名 secretKey: "12345678" # 登录密码 bucket-name: auth-admin # 指定哪个桶 - - backPath: "D:\\MyData\\backup" - + base-path: "" # 基础路径 \ No newline at end of file diff --git a/auh-api/src/main/resources/application.yml b/auh-api/src/main/resources/application.yml index d49babf..8927ca5 100644 --- a/auh-api/src/main/resources/application.yml +++ b/auh-api/src/main/resources/application.yml @@ -12,7 +12,9 @@ spring: name: bunny-service servlet: multipart: - max-file-size: 6MB + max-file-size: 20MB + max-request-size: 20MB + resolve-lazily: true datasource: type: com.zaxxer.hikari.HikariDataSource driver-class-name: com.mysql.cj.jdbc.Driver @@ -80,6 +82,29 @@ spring: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8 +# 可以配置很多但只能使用一个!!!其他平台参考官方文档 +dromara: + x-file-storage: # 文件存储配置 + default-platform: local-plus-1 # 默认使用的存储平台 + # default-platform: minio-1 # 默认使用的存储平台 + thumbnail-suffix: ".min.jpg" # 缩略图后缀,例如【.min.jpg】【.png】 + local-plus: + - platform: local-plus-1 # 存储平台标识 + enable-storage: true # 启用存储 + enable-access: true # 启用访问(线上请使用 Nginx 配置,效率更高) + domain: ${dromara.local-plus.domain} + base-path: ${dromara.local-plus.base-path} + path-patterns: ${dromara.local-plus.path-patterns} + storage-path: ${dromara.local-plus.storage-path} + minio: + - platform: minio-1 # 存储平台标识 + enable-storage: true # 启用存储 + end-point: ${dromara.minio.endpointUrl} + domain: ${dromara.minio.endpointUrl}/${dromara.minio.bucket-name} + bucket-name: ${dromara.minio.bucket-name} + access-key: ${dromara.minio.accessKey} + secret-key: ${dromara.minio.secretKey} + base-path: ${dromara.minio.base-path} mybatis-plus: mapper-locations: classpath:mapper/**/*.xml diff --git a/auh-api/src/main/resources/templates/index.html b/auh-api/src/main/resources/templates/index.html index 4e3e1c0..3a1b59f 100644 --- a/auh-api/src/main/resources/templates/index.html +++ b/auh-api/src/main/resources/templates/index.html @@ -3,14 +3,6 @@ - - - bunny-admin-server项目介绍 @@ -68,7 +78,8 @@
  • 登录优化:使用登录策略方便以后扩展登录方式
  • 邮件发送模板:邮件发送用的是模板方法模式
  • -
  • 密码校验:登录密码校验器,改用自带的不是md5加密,看起来像这样:$2a$10$h5BUwmMaVcEuu7Bz0TPPy.PQV8JP6CFJlbHTgT78G1s0YPIu2kfXe +
  • 密码校验:登录密码校验器,改用自带的不是md5加密,看起来像这样:$2a$10$gD2mTVaqIjfgciN.5vQ7uemf.PYNYLFQL4BZdnYswZEjAuC543Vhe + 这个表示 admin123 的密码;重置或者登不进去就输入这个密码
  • 接口请求路径:将原本请求路径/admin改为/api
@@ -79,23 +90,7 @@ - - - -

技术栈

@@ -107,7 +102,7 @@ 打开接口文档-swagger - 查看在线项目 + 查看在线项目 查看本地项目 diff --git a/auth-core/pom.xml b/auth-core/pom.xml index ea4b308..abbb495 100644 --- a/auth-core/pom.xml +++ b/auth-core/pom.xml @@ -119,6 +119,11 @@ io.minio minio + + org.dromara.x-file-storage + x-file-storage-spring + 2.2.1 + diff --git a/auth-core/src/main/java/cn/bunny/services/minio/MinioProperties.java b/auth-core/src/main/java/cn/bunny/services/config/MinioConfiguration.java similarity index 81% rename from auth-core/src/main/java/cn/bunny/services/minio/MinioProperties.java rename to auth-core/src/main/java/cn/bunny/services/config/MinioConfiguration.java index 604ac4e..ce3d0f0 100644 --- a/auth-core/src/main/java/cn/bunny/services/minio/MinioProperties.java +++ b/auth-core/src/main/java/cn/bunny/services/config/MinioConfiguration.java @@ -1,4 +1,4 @@ -package cn.bunny.services.minio; +package cn.bunny.services.config; import io.minio.BucketExistsArgs; import io.minio.MakeBucketArgs; @@ -6,19 +6,21 @@ import io.minio.MinioClient; import io.minio.SetBucketPolicyArgs; import lombok.Data; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +/** + * 如果项目使用的是minio,创建桶的时候需要设置公开权限 + * 在这里初始化的时候会自动设置公开权限 + * 不需要可以删除这个文件 + */ @Configuration -@ConfigurationProperties(prefix = "bunny.minio") -// 当属性有值时这个配置才生效 -@ConditionalOnProperty(name = "bunny.minio.bucket-name") +@ConditionalOnProperty(name = "dromara.x-file-storage.minio.bucket-name") @Data -public class MinioProperties { +public class MinioConfiguration { /* 地址 */ - private String endpointUrl; + private String domain; /* 访问秘钥 */ private String accessKey; /* 私有秘钥 */ @@ -28,7 +30,7 @@ public class MinioProperties { @Bean public MinioClient minioClient() { - MinioClient minioClient = MinioClient.builder().endpoint(endpointUrl).credentials(accessKey, secretKey).build(); + MinioClient minioClient = MinioClient.builder().endpoint(domain).credentials(accessKey, secretKey).build(); try { // 判断桶是否存在,不存在则创建,并且可以有公开访问权限 diff --git a/auth-core/src/main/java/cn/bunny/services/domain/common/constant/FileStorageConstant.java b/auth-core/src/main/java/cn/bunny/services/domain/common/constant/FileStorageConstant.java new file mode 100644 index 0000000..60303bc --- /dev/null +++ b/auth-core/src/main/java/cn/bunny/services/domain/common/constant/FileStorageConstant.java @@ -0,0 +1,35 @@ +package cn.bunny.services.domain.common.constant; + +import lombok.Data; + +import java.util.HashMap; +import java.util.Map; + +@Data +public class FileStorageConstant { + public static final String FAVICON = "favicon"; + public static final String AVATAR = "avatar"; + public static final String MESSAGE = "message"; + public static final String CAROUSEL = "carousel"; + public static final String BACKUP = "backup"; + public static final String IMAGES = "images"; + public static final String VIDEO = "video"; + public static final Map typeMap = new HashMap<>(); + + static { + typeMap.put(FAVICON, "/" + FAVICON + "/"); + typeMap.put(AVATAR, "/" + AVATAR + "/"); + typeMap.put(MESSAGE, "/" + MESSAGE + "/"); + typeMap.put(CAROUSEL, "/" + CAROUSEL + "/"); + typeMap.put(BACKUP, "/" + BACKUP + "/"); + typeMap.put(IMAGES, "/" + IMAGES + "/"); + typeMap.put(VIDEO, "/" + VIDEO + "/"); + typeMap.put("default", "/" + "default" + "/"); + } + + public static String getType(String type) { + String value = typeMap.get(type); + if (value != null) return value; + throw new RuntimeException("上传类型错误或缺失"); + } +} diff --git a/auth-core/src/main/java/cn/bunny/services/domain/common/constant/MinioConstant.java b/auth-core/src/main/java/cn/bunny/services/domain/common/constant/MinioConstant.java deleted file mode 100644 index 643081d..0000000 --- a/auth-core/src/main/java/cn/bunny/services/domain/common/constant/MinioConstant.java +++ /dev/null @@ -1,35 +0,0 @@ -package cn.bunny.services.domain.common.constant; - -import lombok.Data; - -import java.util.HashMap; -import java.util.Map; - -@Data -public class MinioConstant { - public static final String favicon = "favicon"; - public static final String avatar = "avatar"; - public static final String message = "message"; - public static final String carousel = "carousel"; - public static final String feedback = "feedback"; - public static final String backup = "backup"; - public static final Map typeMap = new HashMap<>(); - - static { - typeMap.put(favicon, "/favicon/"); - typeMap.put(avatar, "/avatar/"); - typeMap.put(message, "/message/"); - typeMap.put(carousel, "/carousel/"); - typeMap.put(feedback, "/feedback/"); - typeMap.put(backup, "/backup/"); - typeMap.put("images", "/images/"); - typeMap.put("video", "/video/"); - typeMap.put("default", "/default/"); - } - - public static String getType(String type) { - String value = typeMap.get(type); - if (value != null) return value; - throw new RuntimeException("上传类型错误或缺失"); - } -} diff --git a/auth-core/src/main/java/cn/bunny/services/domain/common/model/dto/minio/MinioUploadFileInfo.java b/auth-core/src/main/java/cn/bunny/services/domain/common/model/dto/minio/MinioUploadFileInfo.java deleted file mode 100644 index ac8d0cc..0000000 --- a/auth-core/src/main/java/cn/bunny/services/domain/common/model/dto/minio/MinioUploadFileInfo.java +++ /dev/null @@ -1,31 +0,0 @@ -package cn.bunny.services.domain.common.model.dto.minio; - -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -@Data -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Schema(name = "MinioFilePath", title = "Minion上传返回西悉尼") -public class MinioUploadFileInfo { - - @Schema(name = "filename", title = "文件名") - private String filename; - - @Schema(name = "uuidFilename", title = "uuid文件名,防止重复") - private String uuidFilename; - - @Schema(name = "timeUuidFilename", title = "时间+uuid文件名") - private String timeUuidFilename; - - @Schema(name = "filepath", title = "文件路径") - private String filepath; - - @Schema(name = "bucketNameFilepath", title = "上传桶名称文件路径") - private String bucketNameFilepath; - -} diff --git a/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FileUploadDto.java b/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FileUploadDto.java index 63e9a48..1f6686e 100644 --- a/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FileUploadDto.java +++ b/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FileUploadDto.java @@ -24,4 +24,7 @@ public class FileUploadDto { @NotBlank(message = "文件类型不能为空") private String type; + @Schema(name = "platform", title = "指定的平台") + private String platform; + } \ No newline at end of file diff --git a/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesAddDto.java b/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesAddOrUpdateDto.java similarity index 75% rename from auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesAddDto.java rename to auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesAddOrUpdateDto.java index 264a4da..08dcbbf 100644 --- a/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesAddDto.java +++ b/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesAddOrUpdateDto.java @@ -3,7 +3,6 @@ package cn.bunny.services.domain.system.files.dto; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.Min; import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotEmpty; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -15,7 +14,10 @@ import java.util.List; @AllArgsConstructor @NoArgsConstructor @Schema(name = "FilesAddDto对象", title = "添加文件", description = "添加文件") -public class FilesAddDto { +public class FilesAddOrUpdateDto { + + @Schema(name = "id", title = "主键") + private Long id; @Schema(name = "filepath", title = "文件在服务器上的存储路径") @NotBlank(message = "存储路径不能为空") @@ -25,8 +27,10 @@ public class FilesAddDto { @Min(value = 0L, message = "最小值为0") private Integer downloadCount = 0; - @Schema(name = "files", title = "文件") - @NotEmpty(message = "文件不能为空") + @Schema(name = "files", title = "文件列表,添加时为列表") private List files; + @Schema(name = "file", title = "文件,修改时为 file") + private MultipartFile file; + } \ No newline at end of file diff --git a/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesDto.java b/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesDto.java index bb591f4..3ae2cbb 100644 --- a/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesDto.java +++ b/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesDto.java @@ -19,8 +19,14 @@ public class FilesDto { @Schema(name = "filepath", title = "文件在服务器上的存储路径") private String filepath; - @Schema(name = "fileType", title = "文件的MIME类型") - private String fileType; + @Schema(name = "contentType", title = "文件的MIME类型") + private String contentType; + + @Schema(name = "ext", title = "扩展名") + private String ext; + + @Schema(name = "platform", title = "存储平台") + private String platform; @Schema(name = "downloadCount", title = "下载数量") private Integer downloadCount; diff --git a/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesParDetailDto.java b/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesParDetailDto.java new file mode 100644 index 0000000..7d15bfe --- /dev/null +++ b/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesParDetailDto.java @@ -0,0 +1,54 @@ +package cn.bunny.services.domain.system.files.dto; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Schema(name = "FilesParDetailDTO对象", title = "文件分片信息表,仅在手动分片上传时使用", description = "文件分片信息表,仅在手动分片上传时使用的DTO对象") +public class FilesParDetailDto { + + @Schema(name = "id", title = "分片id") + private String id; + + @Schema(name = "platform", title = "存储平台") + private String platform; + + @Schema(name = "uploadId", title = "上传ID,仅在手动分片上传时使用") + private String uploadId; + + @Schema(name = "eTag", title = "分片 ETag") + private String eTag; + + @Schema(name = "partNumber", title = "分片号。每一个上传的分片都有一个分片号,一般情况下取值范围是1~10000") + private Integer partNumber; + + @Schema(name = "partSize", title = "文件大小,单位字节") + private Long partSize; + + @Schema(name = "hashInfo", title = "哈希信息") + private String hashInfo; + + @Schema(name = "createUser", title = "创建用户") + private Long createUser; + + @Schema(name = "updateUser", title = "操作用户") + private Long updateUser; + + @Schema(name = "createTime", title = "创建时间") + private LocalDateTime createTime; + + @Schema(name = "updateTime", title = "记录文件最后修改的时间戳") + private LocalDateTime updateTime; + + @Schema(name = "isDeleted", title = "文件是否被删除") + private Boolean isDeleted; + +} \ No newline at end of file diff --git a/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesUpdateDto.java b/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesUpdateDto.java deleted file mode 100644 index cd6d3a6..0000000 --- a/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/FilesUpdateDto.java +++ /dev/null @@ -1,39 +0,0 @@ -package cn.bunny.services.domain.system.files.dto; - -import io.swagger.v3.oas.annotations.media.Schema; -import jakarta.validation.constraints.Min; -import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotNull; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; -import org.springframework.web.multipart.MultipartFile; - -@Data -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Schema(name = "FilesUpdateDto对象", title = "更新文件", description = "文件管理") -public class FilesUpdateDto { - - @Schema(name = "id", title = "主键") - @NotNull(message = "id不能为空") - private Long id; - - @Schema(name = "filename", title = "文件的名称") - @NotBlank(message = "文件的名称不能为空") - private String filename; - - @Schema(name = "fileType", title = "文件的MIME类型") - @NotBlank(message = "文件类型不能为空") - private String fileType; - - @Schema(name = "downloadCount", title = "下载数量") - @Min(value = 0L, message = "最小值为0") - private Integer downloadCount; - - @Schema(name = "file", title = "文件") - private MultipartFile files; - -} \ No newline at end of file diff --git a/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/UploadThumbnail.java b/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/UploadThumbnail.java new file mode 100644 index 0000000..63478f3 --- /dev/null +++ b/auth-core/src/main/java/cn/bunny/services/domain/system/files/dto/UploadThumbnail.java @@ -0,0 +1,36 @@ +package cn.bunny.services.domain.system.files.dto; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.web.multipart.MultipartFile; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Schema(name = "UploadThumbnail对象", title = "上传图片文件") +public class UploadThumbnail { + + @Schema(name = "file", title = "图片") + MultipartFile file; + + @Schema(name = "preType", title = "类型(路径)") + String preType; + + @Schema(name = "thumbnailSuffix", title = "缩略图后缀") + String thumbnailSuffix; + + @Schema(name = "saveThFilename", title = "保存文件名称,不包含扩展名") + String saveThFilename; + + @Schema(name = "thumbnailWidth", title = "宽度") + Integer thumbnailWidth; + + @Schema(name = "thumbnailHeight", title = "高度") + Integer thumbnailHeight; + + +} diff --git a/auth-core/src/main/java/cn/bunny/services/domain/system/files/entity/Files.java b/auth-core/src/main/java/cn/bunny/services/domain/system/files/entity/Files.java index 802c02b..f7b26d3 100644 --- a/auth-core/src/main/java/cn/bunny/services/domain/system/files/entity/Files.java +++ b/auth-core/src/main/java/cn/bunny/services/domain/system/files/entity/Files.java @@ -1,6 +1,7 @@ package cn.bunny.services.domain.system.files.entity; import cn.bunny.services.domain.common.model.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.v3.oas.annotations.media.Schema; import lombok.EqualsAndHashCode; @@ -8,38 +9,97 @@ import lombok.Getter; import lombok.Setter; import lombok.experimental.Accessors; -/** - *

- * 系统文件表 - *

- * - * @author Bunny - * @since 2024-10-04 - */ @EqualsAndHashCode(callSuper = true) @Getter @Setter @Accessors(chain = true) @TableName("sys_files") -@Schema(name = "Files对象", title = "系统文件表", description = "系统文件管理") +@Schema(name = "Files对象", title = "文件记录") public class Files extends BaseEntity { - @Schema(name = "filename", title = "文件的名称") + @Schema(name = "thSize", title = "缩略图大小,单位字节") + private Long thSize; + + @Schema(name = "size", title = "文件大小,单位字节") + private Long size; + + @Schema(name = "fileSizeStr", title = "文件大小(字符串)") + private String fileSizeStr; + + @Schema(name = "uploadStatus", title = "上传状态,仅在手动分片上传时使用,1:初始化完成,2:上传完成") + private Integer uploadStatus; + + @Schema(name = "filename", title = "文件名称") private String filename; - @Schema(name = "filepath", title = "文件在服务器上的存储路径") + @Schema(name = "objectType", title = "文件所属对象类型,例如用户头像,评价图片") + private String objectType; + + @Schema(name = "hashInfo", title = "哈希信息") + private String hashInfo; + + @Schema(name = "platform", title = "存储平台") + private String platform; + + @Schema(name = "thMetadata", title = "缩略图元数据") + private String thMetadata; + + @Schema(name = "thUrl", title = "缩略图访问路径") + private String thUrl; + + @Schema(name = "thUserMetadata", title = "缩略图用户元数据") + private String thUserMetadata; + + @Schema(name = "uploadId", title = "上传ID,仅在手动分片上传时使用") + private String uploadId; + + @Schema(name = "fileAcl", title = "文件ACL") + private String fileAcl; + + @Schema(name = "url", title = "文件访问地址") + private String url; + + @Schema(name = "thFilename", title = "缩略图名称") + private String thFilename; + + @Schema(name = "userMetadata", title = "文件用户元数据") + private String userMetadata; + + @Schema(name = "filepath", title = "存储路径") private String filepath; - @Schema(name = "fileSize", title = "文件的大小,以字节为单位") - private Long fileSize; + @Schema(name = "attr", title = "附加属性") + private String attr; - @Schema(name = "fileType", title = "文件的MIME类型") - private String fileType; + @Schema(name = "ext", title = "文件扩展名") + private String ext; + + @Schema(name = "thContentType", title = "缩略图MIME类型") + private String thContentType; + + @Schema(name = "metadata", title = "文件元数据") + private String metadata; + + @Schema(name = "objectId", title = "文件所属对象id") + private String objectId; @Schema(name = "downloadCount", title = "下载数量") private Integer downloadCount; - @Schema(name = "isDeleted", title = "是否被删除") + @Schema(name = "thFileAcl", title = "缩略图文件ACL") + private String thFileAcl; + + @Schema(name = "originalFilename", title = "原始文件名") + private String originalFilename; + + @Schema(name = "contentType", title = "MIME类型") + private String contentType; + + @Schema(name = "basePath", title = "基础存储路径") + private String basePath; + + @Schema(name = "isDeleted", title = "文件是否被删除") + @TableField(exist = false) private Boolean isDeleted; } \ No newline at end of file diff --git a/auth-core/src/main/java/cn/bunny/services/domain/system/files/entity/FilesParDetail.java b/auth-core/src/main/java/cn/bunny/services/domain/system/files/entity/FilesParDetail.java new file mode 100644 index 0000000..7109fd0 --- /dev/null +++ b/auth-core/src/main/java/cn/bunny/services/domain/system/files/entity/FilesParDetail.java @@ -0,0 +1,37 @@ +package cn.bunny.services.domain.system.files.entity; + +import cn.bunny.services.domain.common.model.entity.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.Setter; +import lombok.experimental.Accessors; + +@EqualsAndHashCode(callSuper = true) +@Getter +@Setter +@Accessors(chain = true) +@TableName("sys_files_part_detail") +@Schema(name = "FilesParDetail对象", title = "文件分片信息表,仅在手动分片上传时使用", description = "文件分片信息表,仅在手动分片上传时使用的实体类对象") +public class FilesParDetail extends BaseEntity { + + @Schema(name = "platform", title = "存储平台") + private String platform; + + @Schema(name = "uploadId", title = "上传ID,仅在手动分片上传时使用") + private String uploadId; + + @Schema(name = "eTag", title = "分片 ETag") + private String eTag; + + @Schema(name = "partNumber", title = "分片号。每一个上传的分片都有一个分片号,一般情况下取值范围是1~10000") + private Integer partNumber; + + @Schema(name = "partSize", title = "文件大小,单位字节") + private Long partSize; + + @Schema(name = "hashInfo", title = "哈希信息") + private String hashInfo; + +} \ No newline at end of file diff --git a/auth-core/src/main/java/cn/bunny/services/domain/system/files/vo/FileInfoVo.java b/auth-core/src/main/java/cn/bunny/services/domain/system/files/vo/FileInfoVo.java index ca75152..a700cc3 100644 --- a/auth-core/src/main/java/cn/bunny/services/domain/system/files/vo/FileInfoVo.java +++ b/auth-core/src/main/java/cn/bunny/services/domain/system/files/vo/FileInfoVo.java @@ -15,22 +15,85 @@ import lombok.*; @Schema(name = "FileInfoVo对象", title = "管理端返回文件信息", description = "管理端返回文件信息") public class FileInfoVo extends BaseVo { - @Schema(name = "url", title = "文件的路径") - private String url; + @Schema(name = "thSize", title = "缩略图大小,单位字节") + private Long thSize; - @Schema(name = "filename", title = "文件的名称") + @Schema(name = "size", title = "文件大小,单位字节") + private Long size; + + @Schema(name = "fileSizeStr", title = "文件大小(字符串)") + private String fileSizeStr; + + @Schema(name = "uploadStatus", title = "上传状态,仅在手动分片上传时使用,1:初始化完成,2:上传完成") + private Integer uploadStatus; + + @Schema(name = "filename", title = "文件名称") private String filename; - @Schema(name = "filepath", title = "文件在服务器上的存储路径") + @Schema(name = "objectType", title = "文件所属对象类型,例如用户头像,评价图片") + private String objectType; + + @Schema(name = "hashInfo", title = "哈希信息") + private String hashInfo; + + @Schema(name = "platform", title = "存储平台") + private String platform; + + @Schema(name = "thMetadata", title = "缩略图元数据") + private String thMetadata; + + @Schema(name = "thUrl", title = "缩略图访问路径") + private String thUrl; + + @Schema(name = "thUserMetadata", title = "缩略图用户元数据") + private String thUserMetadata; + + @Schema(name = "uploadId", title = "上传ID,仅在手动分片上传时使用") + private String uploadId; + + @Schema(name = "fileAcl", title = "文件ACL") + private String fileAcl; + + @Schema(name = "url", title = "文件访问地址") + private String url; + + @Schema(name = "thFilename", title = "缩略图名称") + private String thFilename; + + @Schema(name = "userMetadata", title = "文件用户元数据") + private String userMetadata; + + @Schema(name = "filepath", title = "存储路径") private String filepath; - @Schema(name = "fileSize", title = "文件的大小,以字节为单位") - private Long fileSize; + @Schema(name = "attr", title = "附加属性") + private String attr; - @Schema(name = "size", title = "文件大小") - private String size; + @Schema(name = "ext", title = "文件扩展名") + private String ext; - @Schema(name = "fileType", title = "文件的MIME类型") - private String fileType; + @Schema(name = "thContentType", title = "缩略图MIME类型") + private String thContentType; + + @Schema(name = "metadata", title = "文件元数据") + private String metadata; + + @Schema(name = "objectId", title = "文件所属对象id") + private String objectId; + + @Schema(name = "downloadCount", title = "下载数量") + private Integer downloadCount; + + @Schema(name = "thFileAcl", title = "缩略图文件ACL") + private String thFileAcl; + + @Schema(name = "originalFilename", title = "原始文件名") + private String originalFilename; + + @Schema(name = "contentType", title = "MIME类型") + private String contentType; + + @Schema(name = "basePath", title = "基础存储路径") + private String basePath; } diff --git a/auth-core/src/main/java/cn/bunny/services/domain/system/files/vo/FilesParDetailVo.java b/auth-core/src/main/java/cn/bunny/services/domain/system/files/vo/FilesParDetailVo.java new file mode 100644 index 0000000..473a97e --- /dev/null +++ b/auth-core/src/main/java/cn/bunny/services/domain/system/files/vo/FilesParDetailVo.java @@ -0,0 +1,53 @@ +package cn.bunny.services.domain.system.files.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Schema(name = "FilesParDetailVO对象", title = "文件分片信息表,仅在手动分片上传时使用", description = "文件分片信息表,仅在手动分片上传时使用的VO对象") +public class FilesParDetailVo { + + @Schema(name = "id", title = "分片id") + private String id; + + @Schema(name = "platform", title = "存储平台") + private String platform; + + @Schema(name = "uploadId", title = "上传ID,仅在手动分片上传时使用") + private String uploadId; + + @Schema(name = "eTag", title = "分片 ETag") + private String eTag; + + @Schema(name = "partNumber", title = "分片号。每一个上传的分片都有一个分片号,一般情况下取值范围是1~10000") + private Integer partNumber; + + @Schema(name = "partSize", title = "文件大小,单位字节") + private Long partSize; + + @Schema(name = "hashInfo", title = "哈希信息") + private String hashInfo; + + @Schema(name = "createUser", title = "创建用户") + private Long createUser; + + @Schema(name = "updateUser", title = "操作用户") + private Long updateUser; + + @Schema(name = "createTime", title = "创建时间") + private LocalDateTime createTime; + + @Schema(name = "updateTime", title = "记录文件最后修改的时间戳") + private LocalDateTime updateTime; + + @Schema(name = "isDeleted", title = "文件是否被删除") + private Boolean isDeleted; + +} + diff --git a/auth-core/src/main/java/cn/bunny/services/minio/MinioHelper.java b/auth-core/src/main/java/cn/bunny/services/minio/MinioHelper.java deleted file mode 100644 index 73c5f47..0000000 --- a/auth-core/src/main/java/cn/bunny/services/minio/MinioHelper.java +++ /dev/null @@ -1,111 +0,0 @@ -package cn.bunny.services.minio; - -import cn.bunny.services.domain.common.constant.UserConstant; -import jakarta.annotation.Resource; -import org.springframework.stereotype.Component; -import org.springframework.util.StringUtils; - -import java.util.regex.Matcher; -import java.util.regex.Pattern; -import java.util.regex.PatternSyntaxException; - -@Component -public class MinioHelper { - - @Resource - private MinioProperties properties; - - /** - * 格式化用户头像URL - * - *

实现头像URL的统一存储和访问格式转换:

- * - *
    - *
  1. 存储处理:将带HTTP前缀的头像URL转换为数据库存储格式 - *
      - *
    • 匹配正则表达式:^https?://.*?/(.*)
    • - *
    • 提取路径部分:matcher.group(1)
    • - *
    • 转换为存储格式:"/" + 提取的路径
    • - *
    - *
  2. - *
  3. 访问处理:返回带HTTP前缀的完整访问URL
  4. - *
- * - *

典型用例:

- *
-     * 输入:"http|s://example.com/images/avatar.jpg"
-     * 存储:"images/avatar.jpg"
-     * 访问:"http|s://xxx/images/avatar.jpg"
-     * 
- * - * @param avatar 头像URL(可能包含HTTP前缀或数据库存储格式) - * @return 格式化后的头像URL(确保包含HTTP前缀) - * @throws PatternSyntaxException 当正则表达式匹配失败时抛出 - * @throws IllegalArgumentException 当头像参数为空时抛出 - */ - public String formatUserAvatar(String avatar) { - // 如果用户没有头像或者用户头像和默认头像相同,返回默认头像 - String userAvatar = UserConstant.USER_AVATAR; - if (!StringUtils.hasText(avatar) || avatar.equals(userAvatar)) return userAvatar; - - // 替换前端发送的host前缀,将其删除,只保留路径名称 - String regex = "^https?://.*?/(.*)"; - Pattern pattern = Pattern.compile(regex); - Matcher matcher = pattern.matcher(avatar); - - // 如果没有匹配 - if (!matcher.matches()) return avatar; - - // 匹配后返回内容 - return "/" + matcher.group(1); - } - - /** - * 检查并格式化用户头像URL - * - *

处理逻辑:

- *
    - *
  1. 当头像为空或与默认头像相同时,返回系统默认头像
  2. - *
  3. 尝试移除头像URL中的HTTP协议和域名部分(如果存在)
  4. - *
  5. 最终返回MinIO存储中的完整对象访问路径
  6. - *
- * - * @param avatar 用户头像URL,可能为以下格式: - * - 空/null(使用默认头像) - * - 完整HTTP URL(如"http|s://example.com/images/1.jpg") - * - MinIO对象路径(如"images/1.jpg") - * @return 格式化后的头像URL,保证是可访问的完整路径 - * - 默认头像(当输入无效时) - * - MinIO完整访问路径(处理成功时) - * @see UserConstant#USER_AVATAR 默认头像常量 - * @see #getObjectNameFullPath MinIO路径处理方法 - */ - public String getUserAvatar(String avatar) { - // 如果用户没有头像或者用户头像和默认头像相同,返回默认头像 - String userAvatar = UserConstant.USER_AVATAR; - if (!StringUtils.hasText(avatar) || avatar.equals(userAvatar)) return userAvatar; - - // 替换前端发送的host前缀,将其删除,只保留路径名称 - String regex = "^https?://.*?/(.*)"; - Pattern pattern = Pattern.compile(regex); - Matcher matcher = pattern.matcher(avatar); - - // 如果没有匹配 - if (matcher.matches()) return avatar; - - // 匹配后返回内容 - return getObjectNameFullPath(avatar); - } - - /** - * 获取Minio全路径名,Object带有桶名称 - * - * @param objectName 对象名称 - * @return 全路径 - */ - public String getObjectNameFullPath(String objectName) { - String url = properties.getEndpointUrl(); - - return url + objectName; - } -} diff --git a/auth-core/src/main/java/cn/bunny/services/minio/MinioService.java b/auth-core/src/main/java/cn/bunny/services/minio/MinioService.java deleted file mode 100644 index b9fbb56..0000000 --- a/auth-core/src/main/java/cn/bunny/services/minio/MinioService.java +++ /dev/null @@ -1,227 +0,0 @@ -package cn.bunny.services.minio; - -import cn.bunny.services.domain.common.constant.MinioConstant; -import cn.bunny.services.domain.common.model.dto.minio.MinioUploadFileInfo; -import cn.bunny.services.domain.common.enums.ResultCodeEnum; -import cn.bunny.services.exception.AuthCustomerException; -import io.minio.*; -import io.minio.messages.DeleteError; -import io.minio.messages.DeleteObject; -import jakarta.annotation.Resource; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; -import org.springframework.util.StringUtils; -import org.springframework.web.multipart.MultipartFile; - -import java.io.IOException; -import java.io.InputStream; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.List; -import java.util.UUID; - -/** - * Minio操作工具类 简化操作步骤 - * 自定义封装 - */ -@Slf4j -@Service -public class MinioService { - - @Resource - private MinioProperties properties; - - @Resource - private MinioClient minioClient; - - /** - * 上传文件到MinIO并返回文件处理信息 - * - *

文件存储规则:

- *
    - *
  • 按日期分目录存储(格式:yyyy/MM-dd)
  • - *
  • 使用UUID重命名文件防止冲突
  • - *
  • 保留原始文件名信息
  • - *
  • 支持按类型分类存储(通过minioPreType参数)
  • - *
- * - *

返回信息包含:

- *
    - *
  1. 原始文件名
  2. - *
  3. UUID重命名后的文件名
  4. - *
  5. 带日期路径的文件名
  6. - *
  7. 完整存储路径(不含桶名)
  8. - *
  9. 完整访问路径(含桶名)
  10. - *
- * - * @param file 上传的文件对象(不可为空) - * @param minioPreType 文件类型前缀(用于分类存储,参考MinioConstant定义) - * @return 文件处理信息对象(包含各种路径信息),当file为null时返回null - * @throws IOException 当文件流读取异常时抛出 - * @throws AuthCustomerException 当上传失败时抛出(错误码:UPLOAD_ERROR) - * @see MinioConstant 文件类型前缀常量 - * @see MinioUploadFileInfo 返回信息数据结构 - */ - public MinioUploadFileInfo uploadWithFileInfo(MultipartFile file, String minioPreType) throws IOException { - if (file == null) return null; - - // 上传文件时的桶名称 - String bucketName = properties.getBucketName(); - - // 上传对象 - try { - String uuid = UUID.randomUUID().toString(); - // 定义日期时间格式 - String dateFormatter = new SimpleDateFormat("yyyy/MM-dd").format(new Date()); - // 文件后缀 - String extension = ""; - - // 原始文件名 - String filename = file.getOriginalFilename(); - if (StringUtils.hasText(filename) && filename.contains(".")) { - extension = "." + filename.substring(filename.lastIndexOf(".") + 1); - } - - // UUID防止重名 - String uuidFilename = uuid + extension; - - // 拼接时间+UUID文件名 加上时间路径 - String timeUuidFilename = dateFormatter + "/" + uuidFilename; - - // 上传根文件夹+拼接时间+UUID文件名 - String filepath = MinioConstant.getType(minioPreType) + timeUuidFilename; - - // 桶名称+上传根文件夹+拼接时间+UUID文件名 - String buckNameFilepath = "/" + bucketName + MinioConstant.getType(minioPreType) + timeUuidFilename; - - // 设置及Minio基础信息 - MinioUploadFileInfo minioUploadFIleInfo = new MinioUploadFileInfo(); - minioUploadFIleInfo.setFilename(filename); - minioUploadFIleInfo.setUuidFilename(uuidFilename); - minioUploadFIleInfo.setTimeUuidFilename(timeUuidFilename); - minioUploadFIleInfo.setFilepath(filepath); - minioUploadFIleInfo.setBucketNameFilepath(buckNameFilepath); - - minioClient.putObject(PutObjectArgs.builder().bucket(bucketName).object(minioUploadFIleInfo.getFilepath()).stream(file.getInputStream(), file.getSize(), -1).build()); - - return minioUploadFIleInfo; - } catch (Exception exception) { - throw new AuthCustomerException(ResultCodeEnum.UPLOAD_ERROR); - } - } - - /** - * 获取默认存储桶中的文件字节数组 - * - *

注意:会一次性读取全部文件内容到内存,大文件慎用

- * - * @param objectName 对象全路径名称(包含目录路径) - * @return 文件内容的字节数组 - * @throws AuthCustomerException 当获取失败时抛出(错误码:{@link ResultCodeEnum#GET_BUCKET_EXCEPTION}) - */ - public byte[] getBucketObjectByte(String objectName) { - String bucketName = properties.getBucketName(); - - try { - GetObjectResponse getObjectResponse = minioClient.getObject(GetObjectArgs.builder().bucket(bucketName).object(objectName).build()); - - return getObjectResponse.readAllBytes(); - } catch (Exception exception) { - exception.printStackTrace(); - } - throw new AuthCustomerException(ResultCodeEnum.GET_BUCKET_EXCEPTION); - } - - /** - * 上传文件到指定存储桶 - * - * @param bucketName 存储桶名称 - * @param filename 对象存储路径(包含文件名) - * @param inputStream 文件输入流(调用方负责关闭) - * @param size 文件大小(字节) - * @throws AuthCustomerException 当上传失败时抛出(错误码:{@link ResultCodeEnum#UPLOAD_ERROR}) - */ - public void putObject(String bucketName, String filename, InputStream inputStream, Long size) { - try { - minioClient.putObject(PutObjectArgs.builder().bucket(bucketName).object(filename).stream(inputStream, size, -1).build()); - } catch (Exception exception) { - log.error("上传文件失败:{}", (Object) exception.getStackTrace()); - throw new AuthCustomerException(ResultCodeEnum.UPLOAD_ERROR); - } - } - - /** - * 批量删除存储桶中的对象文件 - * - * @param list 要删除的对象路径列表 - * @throws AuthCustomerException 当删除失败时抛出(包含错误对象信息) - */ - public void removeObjects(List list) { - try { - String bucketName = properties.getBucketName(); - List objectList = list.stream().map(DeleteObject::new).toList(); - - Iterable> results = minioClient.removeObjects(RemoveObjectsArgs.builder().bucket(bucketName).objects(objectList).build()); - for (Result result : results) { - DeleteError error = result.get(); - throw new AuthCustomerException("Error in deleting object " + error.objectName() + "; " + error.message()); - } - } catch (Exception exception) { - exception.printStackTrace(); - } - } - - /** - * 更新存储桶中的文件(覆盖写入) - * - * @param bucketName 存储桶名称 - * @param filepath 对象存储路径 - * @param file 新的文件对象 - * @throws AuthCustomerException 当更新失败时抛出 - */ - public void updateFile(String bucketName, String filepath, MultipartFile file) { - try { - putObject(bucketName, filepath, file.getInputStream(), file.getSize()); - } catch (IOException e) { - throw new AuthCustomerException(e.getMessage()); - } - } - - /** - * 检查并创建存储桶(如果不存在) - * - * @param bucketName 存储桶名称 - * @return true-已存在,false-新创建 - * @throws AuthCustomerException 当操作失败时抛出 - */ - public boolean createBucketIfNotExists(String bucketName) { - boolean found = false; - try { - found = minioClient.bucketExists(BucketExistsArgs.builder().bucket(bucketName).build()); - - // 如果 bucket 不存在就创建 - if (!found) makeBucket(bucketName); - - return found; - } catch (Exception exception) { - log.error("判断桶是否存在 ------ 失败消息:{}", exception.getLocalizedMessage()); - exception.getStackTrace(); - } - throw new AuthCustomerException("未初始化 bucket"); - } - - /** - * 创建新的存储桶 - * - * @param bucketName 存储桶名称(需符合命名规范) - * @throws AuthCustomerException 当创建失败时抛出 - */ - public void makeBucket(String bucketName) { - try { - minioClient.makeBucket(MakeBucketArgs.builder().bucket(bucketName).build()); - } catch (Exception exception) { - exception.getStackTrace(); - throw new AuthCustomerException("创建失败"); - } - } -} diff --git a/dao/src/main/java/cn/bunny/services/mapper/system/FilesMapper.java b/dao/src/main/java/cn/bunny/services/mapper/file/FilesMapper.java similarity index 95% rename from dao/src/main/java/cn/bunny/services/mapper/system/FilesMapper.java rename to dao/src/main/java/cn/bunny/services/mapper/file/FilesMapper.java index fde0635..1d83dad 100644 --- a/dao/src/main/java/cn/bunny/services/mapper/system/FilesMapper.java +++ b/dao/src/main/java/cn/bunny/services/mapper/file/FilesMapper.java @@ -1,4 +1,4 @@ -package cn.bunny.services.mapper.system; +package cn.bunny.services.mapper.file; import cn.bunny.services.domain.system.files.dto.FilesDto; import cn.bunny.services.domain.system.files.entity.Files; diff --git a/dao/src/main/java/cn/bunny/services/mapper/file/FilesParDetailMapper.java b/dao/src/main/java/cn/bunny/services/mapper/file/FilesParDetailMapper.java new file mode 100644 index 0000000..a4063a2 --- /dev/null +++ b/dao/src/main/java/cn/bunny/services/mapper/file/FilesParDetailMapper.java @@ -0,0 +1,31 @@ +package cn.bunny.services.mapper.file; + +import cn.bunny.services.domain.system.files.dto.FilesParDetailDto; +import cn.bunny.services.domain.system.files.entity.FilesParDetail; +import cn.bunny.services.domain.system.files.vo.FilesParDetailVo; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +/** + *

+ * 文件分片信息表,仅在手动分片上传时使用 Mapper 接口 + *

+ * + * @author Bunny + * @since 2025-05-08 23:01:19 + */ +@Mapper +public interface FilesParDetailMapper extends BaseMapper { + + /** + * * 分页查询文件分片信息表,仅在手动分片上传时使用内容 + * + * @param pageParams 文件分片信息表,仅在手动分片上传时使用分页参数 + * @param dto 文件分片信息表,仅在手动分片上传时使用查询表单 + * @return 文件分片信息表,仅在手动分片上传时使用分页结果 + */ + IPage selectListByPage(@Param("page") Page pageParams, @Param("dto") FilesParDetailDto dto); +} diff --git a/dao/src/main/resources/mapper/file/FilesMapper.xml b/dao/src/main/resources/mapper/file/FilesMapper.xml new file mode 100644 index 0000000..d126729 --- /dev/null +++ b/dao/src/main/resources/mapper/file/FilesMapper.xml @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dao/src/main/resources/mapper/file/FilesPardetailMapper.xml b/dao/src/main/resources/mapper/file/FilesPardetailMapper.xml new file mode 100644 index 0000000..d608107 --- /dev/null +++ b/dao/src/main/resources/mapper/file/FilesPardetailMapper.xml @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dao/src/main/resources/mapper/system/FilesMapper.xml b/dao/src/main/resources/mapper/system/FilesMapper.xml deleted file mode 100644 index 55ea370..0000000 --- a/dao/src/main/resources/mapper/system/FilesMapper.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - id, create_time, update_time, create_user, update_user, is_deleted, filename, filepath, file_size, file_type, - download_count - - - - - - diff --git a/generator-code/pom.xml b/generator-code/pom.xml deleted file mode 100644 index 5a6519e..0000000 --- a/generator-code/pom.xml +++ /dev/null @@ -1,117 +0,0 @@ - - 4.0.0 - - cn.bunny - auth-server - 0.0.1-SNAPSHOT - - - generator-code - jar - - generator-code - https://maven.apache.org - - - UTF-8 - - - - - org.springframework.boot - spring-boot-starter-web - - - org.springframework.boot - spring-boot-devtools - runtime - true - - - org.springframework.boot - spring-boot-starter-validation - - - org.springframework.boot - spring-boot-starter-thymeleaf - - - - junit - junit - - - org.springframework.boot - spring-boot-starter-test - - - - - - - - - com.mysql - mysql-connector-j - - - com.zaxxer - HikariCP - - - org.springframework.boot - spring-boot-starter-jdbc - - - com.github.jsqlparser - jsqlparser - 5.1 - - - - - org.projectlombok - lombok - - - cn.hutool - hutool-all - - - - - com.github.xiaoymin - knife4j-openapi3-jakarta-spring-boot-starter - - - org.springdoc - springdoc-openapi-starter-webmvc-ui - 2.8.6 - - - io.swagger - swagger-annotations - 1.6.14 - - - - - com.alibaba.fastjson2 - fastjson2 - - - - - com.google.guava - guava - 33.4.7-jre - - - - org.apache.velocity - velocity-engine-core - 2.3 - - - diff --git a/generator-code/src/main/java/cn/bunny/GeneratorCodeMainApplication.java b/generator-code/src/main/java/cn/bunny/GeneratorCodeMainApplication.java deleted file mode 100644 index c74b41e..0000000 --- a/generator-code/src/main/java/cn/bunny/GeneratorCodeMainApplication.java +++ /dev/null @@ -1,11 +0,0 @@ -package cn.bunny; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; - -@SpringBootApplication -public class GeneratorCodeMainApplication { - public static void main(String[] args) { - SpringApplication.run(GeneratorCodeMainApplication.class, args); - } -} diff --git a/generator-code/src/main/java/cn/bunny/config/ControllerStringParamTrimConfig.java b/generator-code/src/main/java/cn/bunny/config/ControllerStringParamTrimConfig.java deleted file mode 100644 index 0c20692..0000000 --- a/generator-code/src/main/java/cn/bunny/config/ControllerStringParamTrimConfig.java +++ /dev/null @@ -1,50 +0,0 @@ -package cn.bunny.config; - -import com.fasterxml.jackson.core.JsonParser; -import com.fasterxml.jackson.databind.DeserializationContext; -import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; -import org.springframework.beans.propertyeditors.StringTrimmerEditor; -import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer; -import org.springframework.context.annotation.Bean; -import org.springframework.web.bind.WebDataBinder; -import org.springframework.web.bind.annotation.ControllerAdvice; -import org.springframework.web.bind.annotation.InitBinder; - -import java.io.IOException; - -/** - * 去除前端传递的空格 - */ -@ControllerAdvice -public class ControllerStringParamTrimConfig { - - /** - * 创建 String trim 编辑器 - * 构造方法中 boolean 参数含义为如果是空白字符串,是否转换为null - * 即如果为true,那么 " " 会被转换为 null,否者为 "" - */ - @InitBinder - public void initBinder(WebDataBinder binder) { - StringTrimmerEditor propertyEditor = new StringTrimmerEditor(false); - // 为 String 类对象注册编辑器 - binder.registerCustomEditor(String.class, propertyEditor); - } - - @Bean - public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() { - return jacksonObjectMapperBuilder -> { - // 为 String 类型自定义反序列化操作 - jacksonObjectMapperBuilder - .deserializerByType(String.class, new StdScalarDeserializer(String.class) { - @Override - public String deserialize(JsonParser jsonParser, DeserializationContext ctx) throws IOException { - // // 去除全部空格 - // return StringUtils.trimAllWhitespace(jsonParser.getValueAsString()); - - // 仅去除前后空格 - return jsonParser.getValueAsString().trim(); - } - }); - }; - } -} \ No newline at end of file diff --git a/generator-code/src/main/java/cn/bunny/config/Knife4jConfig.java b/generator-code/src/main/java/cn/bunny/config/Knife4jConfig.java deleted file mode 100644 index 5efac43..0000000 --- a/generator-code/src/main/java/cn/bunny/config/Knife4jConfig.java +++ /dev/null @@ -1,44 +0,0 @@ -package cn.bunny.config; - -import io.swagger.v3.oas.models.ExternalDocumentation; -import io.swagger.v3.oas.models.OpenAPI; -import io.swagger.v3.oas.models.info.Contact; -import io.swagger.v3.oas.models.info.Info; -import io.swagger.v3.oas.models.info.License; -import lombok.extern.slf4j.Slf4j; -import org.springdoc.core.models.GroupedOpenApi; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -@Configuration -@Slf4j -public class Knife4jConfig { - - @Value("${server.port}") - private String port; - - @Bean - public OpenAPI openAPI() { - String url = "http://localhost:" + port; - - // 作者等信息 - Contact contact = new Contact().name("Bunny").email("1319900154@qq.com").url(url); - // 使用协议 - License license = new License().name("MIT").url("https://mit-license.org"); - // 相关信息 - Info info = new Info().title("Bunny-Admin") - .contact(contact).license(license) - .description("Bunny代码生成器") - .summary("Bunny的代码生成器") - .termsOfService(url) - .version("v1.0.0"); - - return new OpenAPI().info(info).externalDocs(new ExternalDocumentation()); - } - - @Bean - public GroupedOpenApi all() { - return GroupedOpenApi.builder().group("全部请求接口").pathsToMatch("/api/**").build(); - } -} diff --git a/generator-code/src/main/java/cn/bunny/config/VmsHolder.java b/generator-code/src/main/java/cn/bunny/config/VmsHolder.java deleted file mode 100644 index 0e7651e..0000000 --- a/generator-code/src/main/java/cn/bunny/config/VmsHolder.java +++ /dev/null @@ -1,18 +0,0 @@ -package cn.bunny.config; - -import jakarta.annotation.PostConstruct; -import org.apache.velocity.app.Velocity; -import org.springframework.stereotype.Component; - -import java.util.Properties; - -@Component -public class VmsHolder { - - @PostConstruct - public void init() { - Properties prop = new Properties(); - prop.put("file.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); - Velocity.init(prop); - } -} diff --git a/generator-code/src/main/java/cn/bunny/controller/IndexController.java b/generator-code/src/main/java/cn/bunny/controller/IndexController.java deleted file mode 100644 index 059fe0c..0000000 --- a/generator-code/src/main/java/cn/bunny/controller/IndexController.java +++ /dev/null @@ -1,13 +0,0 @@ -package cn.bunny.controller; - -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.GetMapping; - -@Controller -public class IndexController { - - @GetMapping("/") - public String index() { - return "index"; - } -} diff --git a/generator-code/src/main/java/cn/bunny/controller/SqlParserController.java b/generator-code/src/main/java/cn/bunny/controller/SqlParserController.java deleted file mode 100644 index 6441078..0000000 --- a/generator-code/src/main/java/cn/bunny/controller/SqlParserController.java +++ /dev/null @@ -1,38 +0,0 @@ -package cn.bunny.controller; - -import cn.bunny.core.SqlParserCore; -import cn.bunny.dao.entity.ColumnMetaData; -import cn.bunny.dao.result.Result; -import cn.bunny.dao.vo.TableInfoVo; -import cn.bunny.service.SqlParserService; -import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.tags.Tag; -import jakarta.annotation.Resource; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.util.List; - -@Tag(name = "解析SQL", description = "解析SQL接口") -@RestController -@RequestMapping("/api/sqlParser") -public class SqlParserController { - - @Resource - private SqlParserService sqlParserService; - - @Operation(summary = "解析SQL成表信息", description = "解析SQL成表信息") - @PostMapping("tableInfo") - public Result tableInfo(String sql) { - TableInfoVo vo = sqlParserService.tableInfo(sql); - return Result.success(vo); - } - - @Operation(summary = "解析SQL成列数据", description = "解析SQL成列数据") - @PostMapping("columnMetaData") - public Result> columnMetaData(String sql) { - List vo = SqlParserCore.parserColumnInfo(sql); - return Result.success(vo); - } -} diff --git a/generator-code/src/main/java/cn/bunny/controller/TableController.java b/generator-code/src/main/java/cn/bunny/controller/TableController.java deleted file mode 100644 index b53163d..0000000 --- a/generator-code/src/main/java/cn/bunny/controller/TableController.java +++ /dev/null @@ -1,81 +0,0 @@ -package cn.bunny.controller; - -import cn.bunny.dao.entity.ColumnMetaData; -import cn.bunny.dao.entity.DatabaseInfoMetaData; -import cn.bunny.dao.result.Result; -import cn.bunny.dao.vo.TableInfoVo; -import cn.bunny.service.TableService; -import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.tags.Tag; -import jakarta.annotation.Resource; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.util.List; -import java.util.stream.Collectors; - -@Tag(name = "数据库表控制器", description = "数据库表信息接口") -@RestController -@RequestMapping("/api/table") -public class TableController { - - @Value("${bunny.master.database}") - private String currentDatabase; - - @Resource - private TableService tableService; - - @Operation(summary = "当前数据库信息", description = "当前连接的数据库信息") - @GetMapping("databaseInfoMetaData") - public Result databaseInfoMetaData() { - DatabaseInfoMetaData databaseInfoMetaData = tableService.databaseInfoMetaData(); - return Result.success(databaseInfoMetaData); - } - - @Operation(summary = "当前配置的数据库", description = "当前配置的数据库") - @GetMapping("currentDatabaseName") - public Result getCurrentDatabaseName() { - return Result.success(currentDatabase); - } - - @Operation(summary = "数据库所有的表", description = "获取[当前/所有]数据库表") - @GetMapping("databaseTableList") - public Result> databaseTableList(String dbName) { - List list = tableService.databaseTableList(dbName); - return Result.success(list); - } - - @Operation(summary = "所有的数据库名称", description = "当前数据库所有的数据库名称") - @GetMapping("databaseList") - public Result> databaseList() { - List allDb = tableService.databaseTableList(null); - - // 将当前数据库表分组,以数据库名称为key - List list = allDb.stream() - .collect(Collectors.groupingBy(TableInfoVo::getTableCat)) - .values().stream() - .map(tableInfoVos -> { - TableInfoVo tableInfoVo = tableInfoVos.get(0); - tableInfoVo.setTableName(null); - return tableInfoVo; - }).toList(); - - return Result.success(list); - } - - @Operation(summary = "表属性", description = "获取当前查询表属性") - @GetMapping("tableMetaData") - public Result tableMetaData(String tableName) { - TableInfoVo tableMetaData = tableService.tableMetaData(tableName); - return Result.success(tableMetaData); - } - - @Operation(summary = "表的列属性", description = "获取当前查询表中列属性") - @GetMapping("tableColumnInfo") - public Result> tableColumnInfo(String tableName) { - List columnInfo = tableService.tableColumnInfo(tableName); - return Result.success(columnInfo); - } -} diff --git a/generator-code/src/main/java/cn/bunny/controller/VmsController.java b/generator-code/src/main/java/cn/bunny/controller/VmsController.java deleted file mode 100644 index dace7af..0000000 --- a/generator-code/src/main/java/cn/bunny/controller/VmsController.java +++ /dev/null @@ -1,45 +0,0 @@ -package cn.bunny.controller; - -import cn.bunny.dao.dto.VmsArgumentDto; -import cn.bunny.dao.result.Result; -import cn.bunny.dao.vo.GeneratorVo; -import cn.bunny.dao.vo.VmsPathVo; -import cn.bunny.service.VmsService; -import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.tags.Tag; -import jakarta.annotation.Resource; -import jakarta.validation.Valid; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import java.util.List; -import java.util.Map; - -@Tag(name = "生成器", description = "代码生成器接口") -@RestController -@RequestMapping("/api/vms") -public class VmsController { - - @Resource - private VmsService vmsService; - - @Operation(summary = "获取vms文件路径", description = "获取所有vms下的文件路径") - @GetMapping("vmsResourcePathList") - public Result>> vmsResourcePathList() { - Map> list = vmsService.vmsResourcePathList(); - return Result.success(list); - } - - @Operation(summary = "生成代码", description = "生成代码") - @PostMapping("generator") - public Result> generator(@Valid @RequestBody VmsArgumentDto dto) { - List list = vmsService.generator(dto); - return Result.success(list); - } - - @Operation(summary = "打包成zip下载", description = "打包成zip下载") - @PostMapping("downloadByZip") - public ResponseEntity downloadByZip(@Valid @RequestBody VmsArgumentDto dto) { - return vmsService.downloadByZip(dto); - } -} diff --git a/generator-code/src/main/java/cn/bunny/core/DatabaseInfoCore.java b/generator-code/src/main/java/cn/bunny/core/DatabaseInfoCore.java deleted file mode 100644 index 58c7789..0000000 --- a/generator-code/src/main/java/cn/bunny/core/DatabaseInfoCore.java +++ /dev/null @@ -1,196 +0,0 @@ -package cn.bunny.core; - -import cn.bunny.dao.entity.ColumnMetaData; -import cn.bunny.dao.entity.DatabaseInfoMetaData; -import cn.bunny.dao.entity.TableMetaData; -import jakarta.annotation.Resource; -import lombok.SneakyThrows; -import org.apache.commons.lang3.StringUtils; -import org.springframework.stereotype.Component; - -import javax.sql.DataSource; -import java.sql.Connection; -import java.sql.DatabaseMetaData; -import java.sql.ResultSet; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -/* 数据库信息内容 */ -@Component -public class DatabaseInfoCore { - - @Resource - private DataSource dataSource; - - /** - * 获取表的所有主键列名 - * - * @param tableName 表名 - * @return 主键列名的集合 - */ - @SneakyThrows - public Set getPrimaryKeyColumns(String tableName) { - // 主键的key - Set primaryKeys = new HashSet<>(); - - try (Connection connection = dataSource.getConnection()) { - DatabaseMetaData metaData = connection.getMetaData(); - - // 当前表的主键 - ResultSet pkResultSet = metaData.getPrimaryKeys(null, null, tableName); - - while (pkResultSet.next()) { - // 列字段 - String columnName = pkResultSet.getString("COLUMN_NAME").toLowerCase(); - primaryKeys.add(columnName); - } - - return primaryKeys; - } - } - - /** - * 获取表注释信息 - * - * @param tableName 数据库表名 - * @return 表信息 - */ - @SneakyThrows - public TableMetaData tableInfoMetaData(String tableName) { - TableMetaData tableMetaData; - - try (Connection connection = dataSource.getConnection()) { - DatabaseMetaData metaData = connection.getMetaData(); - ResultSet tables = metaData.getTables(null, null, tableName, new String[]{"TABLE"}); - - // 获取表的注释信息 - if (tables.next()) { - // 备注信息 - String remarks = tables.getString("REMARKS"); - - // 数组名称 - String tableCat = tables.getString("TABLE_CAT"); - - // 通常是"TABLE" - String tableType = tables.getString("TABLE_TYPE"); - - tableMetaData = TableMetaData.builder() - .tableName(tableName) - .comment(remarks) - .tableCat(tableCat) - .tableType(tableType) - .build(); - } else { - throw new RuntimeException("数据表不存在"); - } - - return tableMetaData; - } - } - - /** - * 获取[当前/所有]数据库表 - * - * @return 所有表信息 - */ - @SneakyThrows - public List databaseTableList(String dbName) { - // 当前数据库数据库所有的表 - List allTableInfo = new ArrayList<>(); - - try (Connection connection = dataSource.getConnection()) { - DatabaseMetaData metaData = connection.getMetaData(); - - // 当前数据库中所有的表 - ResultSet tables = metaData.getTables(dbName, null, "%", new String[]{"TABLE"}); - - while (tables.next()) { - // 表名称 - dbName = tables.getString("TABLE_NAME"); - - // 设置表信息 - TableMetaData tableMetaData = tableInfoMetaData(dbName); - - allTableInfo.add(tableMetaData); - } - } - - return allTableInfo; - } - - /** - * 获取当前表的列属性 - * - * @param tableName 表名称 - * @return 当前表所有的列内容 - */ - @SneakyThrows - public List tableColumnInfo(String tableName) { - try (Connection connection = dataSource.getConnection()) { - DatabaseMetaData metaData = connection.getMetaData(); - List columns = new ArrayList<>(); - // 当前表的主键 - Set primaryKeyColumns = getPrimaryKeyColumns(tableName); - - // 当前表的列信息 - try (ResultSet columnsRs = metaData.getColumns(null, null, tableName, null)) { - while (columnsRs.next()) { - ColumnMetaData column = new ColumnMetaData(); - // 列字段 - String columnName = columnsRs.getString("COLUMN_NAME"); - // 将当前表的列类型转成 Java 类型 - String javaType = TypeConvertCore.convertToJavaType(column.getJdbcType()); - - // 设置列字段 - column.setColumnName(columnName); - // 列字段转成 下划线 -> 小驼峰 - column.setLowercaseName(TypeConvertCore.convertToCamelCase(column.getColumnName())); - // 列字段转成 下划线 -> 大驼峰名称 - column.setUppercaseName(TypeConvertCore.convertToCamelCase(column.getColumnName(), true)); - // 字段类型 - column.setJdbcType(columnsRs.getString("TYPE_NAME")); - // 字段类型转 Java 类型 - column.setJavaType(javaType); - // 字段类型转 JavaScript 类型 - column.setJavascriptType(StringUtils.uncapitalize(javaType)); - // 备注信息 - column.setComment(columnsRs.getString("REMARKS")); - - // 确保 primaryKeyColumns 不为空 - if (!primaryKeyColumns.isEmpty()) { - // 是否是主键 - boolean isPrimaryKey = primaryKeyColumns.contains(columnName); - column.setIsPrimaryKey(isPrimaryKey); - } - columns.add(column); - } - } - - columns.get(0).setIsPrimaryKey(true); - return columns; - } - } - - /** - * 数据库所有的信息 - * - * @return 当前连接的数据库信息属性 - */ - @SneakyThrows - public DatabaseInfoMetaData databaseInfoMetaData() { - try (Connection connection = dataSource.getConnection()) { - DatabaseMetaData metaData = connection.getMetaData(); - - return DatabaseInfoMetaData.builder() - .databaseProductName(metaData.getDatabaseProductName()) - .databaseProductVersion(metaData.getDatabaseProductVersion()) - .driverName(metaData.getDriverName()) - .driverVersion(metaData.getDriverVersion()) - .url(metaData.getURL()) - .username(metaData.getUserName()) - .build(); - } - } -} diff --git a/generator-code/src/main/java/cn/bunny/core/ResourceFileCore.java b/generator-code/src/main/java/cn/bunny/core/ResourceFileCore.java deleted file mode 100644 index 8656fbe..0000000 --- a/generator-code/src/main/java/cn/bunny/core/ResourceFileCore.java +++ /dev/null @@ -1,134 +0,0 @@ -package cn.bunny.core; - -import java.io.File; -import java.io.IOException; -import java.net.URISyntaxException; -import java.net.URL; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Enumeration; -import java.util.List; -import java.util.jar.JarEntry; -import java.util.jar.JarFile; -import java.util.stream.Stream; - -/* 当前生产/开发下的资源文件 */ -public class ResourceFileCore { - - /** - * 获取目标文件夹下所有文件完整路径 - * - * @param dirname 文件夹名称 - * @return 目标文件完整路径 - * @throws IOException IOException - */ - public static List getAbsoluteFiles(String dirname) throws IOException { - List fileNames = new ArrayList<>(); - - // 加载当前类 - ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); - Enumeration urls = classLoader.getResources(dirname); - - while (urls.hasMoreElements()) { - URL url = urls.nextElement(); - if (url.getProtocol().equals("file")) { - // 文件系统 - File file = new File(url.getFile()); - if (file.isDirectory()) { - addFullFilesFromDirectory(file, fileNames); - } - } else if (url.getProtocol().equals("jar")) { - // JAR文件 - String jarPath = url.getPath().substring(5, url.getPath().indexOf("!")); - try (JarFile jar = new JarFile(jarPath)) { - Enumeration entries = jar.entries(); - while (entries.hasMoreElements()) { - String name = entries.nextElement().getName(); - if (name.startsWith(dirname + "/") && !name.endsWith("/")) { - fileNames.add(name); - } - } - } - } - } - - return fileNames; - } - - /** - * 添加文件 - * 获取目标文件夹下所有文件完整路径 - * - * @param directory 文件夹 - * @param fileNames 文件名称 - */ - private static void addFullFilesFromDirectory(File directory, List fileNames) { - File[] files = directory.listFiles(); - if (files != null) { - for (File file : files) { - if (file.isFile()) { - fileNames.add(file.getPath()); - } else if (file.isDirectory()) { - addFullFilesFromDirectory(file, fileNames); - } - } - } - } - - /** - * 获取相对文件夹路径 - * - * @return 相对当前的文件夹路径 - * @throws IOException IOException - * @throws URISyntaxException URISyntaxException - */ - public static List getRelativeFiles(String dirname) throws IOException, URISyntaxException { - ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); - URL resource = classLoader.getResource(dirname); - - if (resource == null) return Collections.emptyList(); - - // 处理JAR包内的情况 - if (resource.getProtocol().equals("jar")) { - return getFilesFromJar(resource, dirname); - } else { - // 处理文件系统情况 - return getFilesFromFileSystem(resource); - } - } - - private static List getFilesFromJar(URL jarUrl, String dirname) throws IOException { - List fileNames = new ArrayList<>(); - String jarPath = jarUrl.getPath().substring(5, jarUrl.getPath().indexOf("!")); - - try (JarFile jar = new JarFile(jarPath)) { - jar.entries().asIterator() - .forEachRemaining(entry -> { - String name = entry.getName(); - String prefix = dirname + "/"; - - if (name.startsWith(prefix) && !name.endsWith("/")) { - fileNames.add(name.substring(prefix.length())); - } - }); - } - - return fileNames; - } - - private static List getFilesFromFileSystem(URL resource) throws IOException, URISyntaxException { - Path filepath = Paths.get(resource.toURI()); - - try (Stream paths = Files.walk(filepath)) { - return paths.filter(Files::isRegularFile) - .map(filepath::relativize) - .map(Path::toString) - // 统一使用/作为分隔符 - .map(s -> s.replace('\\', '/')) - .toList(); - } - } -} diff --git a/generator-code/src/main/java/cn/bunny/core/SqlParserCore.java b/generator-code/src/main/java/cn/bunny/core/SqlParserCore.java deleted file mode 100644 index 43a914d..0000000 --- a/generator-code/src/main/java/cn/bunny/core/SqlParserCore.java +++ /dev/null @@ -1,110 +0,0 @@ -package cn.bunny.core; - -import cn.bunny.dao.entity.ColumnMetaData; -import cn.bunny.dao.entity.TableMetaData; -import lombok.SneakyThrows; -import net.sf.jsqlparser.JSQLParserException; -import net.sf.jsqlparser.parser.CCJSqlParserUtil; -import net.sf.jsqlparser.statement.Statement; -import net.sf.jsqlparser.statement.create.table.CreateTable; -import org.apache.commons.lang3.StringUtils; - -import java.util.List; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -public class SqlParserCore { - - /** - * 解析 sql 表信息 - * - * @param sql sql字符串 - * @return 表西悉尼 - */ - @SneakyThrows - public static TableMetaData parserTableInfo(String sql) { - TableMetaData tableInfo = new TableMetaData(); - - // 解析sql - Statement statement; - try { - statement = CCJSqlParserUtil.parse(sql); - } catch (JSQLParserException e) { - throw new RuntimeException("SQL解析失败"); - } - if (!(statement instanceof CreateTable createTable)) { - throw new IllegalArgumentException("缺少SQL语句"); - } - - // 设置表基本信息 - String tableName = createTable.getTable().getName().replaceAll("`", ""); - tableInfo.setTableName(tableName); - tableInfo.setTableType("TABLE"); - String tableOptionsStrings = String.join(" ", createTable.getTableOptionsStrings()); - - // 注释信息 - Pattern pattern = Pattern.compile("COMMENT\\s*=\\s*'(.*?)'", Pattern.CASE_INSENSITIVE); - Matcher matcher = pattern.matcher(tableOptionsStrings); - if (matcher.find()) { - tableInfo.setComment(matcher.group(1)); - } - - return tableInfo; - } - - /** - * 解析 sql 列信息 - * - * @param sql sql字符串 - * @return 列属性列表 - */ - @SneakyThrows - public static List parserColumnInfo(String sql) { - // 解析sql - Statement statement; - try { - statement = CCJSqlParserUtil.parse(sql); - } catch (JSQLParserException e) { - throw new RuntimeException("SQL解析失败"); - } - - if (!(statement instanceof CreateTable createTable)) { - throw new IllegalArgumentException("缺少SQL语句"); - } - - return createTable.getColumnDefinitions() - .stream().map(column -> { - // 列信息 - ColumnMetaData columnInfo = new ColumnMetaData(); - - // 列名称 - columnInfo.setColumnName(column.getColumnName()); - - // 设置 JDBC 类型 - String dataType = column.getColDataType().getDataType(); - columnInfo.setJdbcType(dataType); - - // 设置 Java 类型 - String javaType = TypeConvertCore.convertToJavaType(dataType.contains("varchar") ? "varchar" : dataType); - columnInfo.setJavaType(javaType); - - // 设置 JavaScript 类型 - columnInfo.setJavascriptType(StringUtils.uncapitalize(javaType)); - - // 列字段转成 下划线 -> 小驼峰 - columnInfo.setLowercaseName(TypeConvertCore.convertToCamelCase(column.getColumnName())); - // 列字段转成 下划线 -> 大驼峰名称 - columnInfo.setUppercaseName(TypeConvertCore.convertToCamelCase(column.getColumnName(), true)); - - // 解析注释 - List columnSpecs = column.getColumnSpecs(); - String columnSpecsString = String.join(" ", columnSpecs); - Matcher columnSpecsStringMatcher = Pattern.compile("COMMENT\\s*'(.*?)'", Pattern.CASE_INSENSITIVE).matcher(columnSpecsString); - if (columnSpecsStringMatcher.find()) { - columnInfo.setComment(columnSpecsStringMatcher.group(1)); - } - - return columnInfo; - }).toList(); - } -} diff --git a/generator-code/src/main/java/cn/bunny/core/TypeConvertCore.java b/generator-code/src/main/java/cn/bunny/core/TypeConvertCore.java deleted file mode 100644 index 3811e5d..0000000 --- a/generator-code/src/main/java/cn/bunny/core/TypeConvertCore.java +++ /dev/null @@ -1,61 +0,0 @@ -package cn.bunny.core; - -import com.google.common.base.CaseFormat; -import org.assertj.core.util.introspection.CaseFormatUtils; - -/* 类型转换,数据库转Java类型等 */ -public class TypeConvertCore { - - /** - * 将数据库类型转换为Java类型 - */ - public static String convertToJavaType(String columnType) { - if (columnType == null) return "Object"; - - columnType = columnType.toLowerCase(); - return switch (columnType) { - case "varchar" , "char" , "text" , "longtext" , "mediumtext" , "tinytext" -> "String"; - case "int" , "integer" , "tinyint" , "smallint" -> "Integer"; - case "bigint" -> "Long"; - case "decimal" , "numeric" -> "BigDecimal"; - case "float" -> "Float"; - case "double" -> "Double"; - case "boolean" , "bit" , "tinyint unsigned" -> "Boolean"; - case "date" , "year" -> "Date"; - case "time" -> "Time"; - case "datetime" , "timestamp" -> "LocalDateTime"; - case "blob" , "longblob" , "mediumblob" , "tinyblob" -> "byte[]"; - default -> "Object"; - }; - } - - /** - * 下划线命名转驼峰命名 - */ - public static String convertToCamelCase(String name) { - return convertToCamelCase(name, false); - } - - /** - * 下划线命名转驼峰命名 - * - * @param name 原始名称,传入的值可以是 - * `xxx_xxx` `CaseFormat` - * `caseFormat` - * @param firstLetterCapital 首字母是否大写 - */ - public static String convertToCamelCase(String name, boolean firstLetterCapital) { - if (name == null || name.isEmpty()) return name; - - // 转成小驼峰 - String lowerCamelCase = CaseFormatUtils.toCamelCase(name); - - // 首字母不大写 - if (!firstLetterCapital) { - return lowerCamelCase; - } - - // 将小驼峰转成大驼峰 - return CaseFormat.LOWER_CAMEL.to(CaseFormat.UPPER_CAMEL, lowerCamelCase); - } -} diff --git a/generator-code/src/main/java/cn/bunny/core/vms/AbstractVmsGenerator.java b/generator-code/src/main/java/cn/bunny/core/vms/AbstractVmsGenerator.java deleted file mode 100644 index 1fa4715..0000000 --- a/generator-code/src/main/java/cn/bunny/core/vms/AbstractVmsGenerator.java +++ /dev/null @@ -1,62 +0,0 @@ -package cn.bunny.core.vms; - -import cn.bunny.dao.entity.ColumnMetaData; -import cn.bunny.dao.entity.TableMetaData; -import org.apache.velocity.VelocityContext; - -import java.io.StringWriter; -import java.util.List; - -/** - * 模板方法模式 - * 如果需要继承 AbstractVmsGenerator - */ -public abstract class AbstractVmsGenerator { - - /** - * 添加生成内容 - */ - abstract void addContext(VelocityContext context); - - /** - * Velocity 生成模板 - * - * @param context VelocityContext - * @param writer StringWriter 写入 - */ - abstract void templateMerge(VelocityContext context, StringWriter writer); - - /** - * 生成模板 - * - * @param tableMetaData 表属性 - * @param columnInfoList 列属性数组 - * @return StringWriter - */ - public final StringWriter generatorCodeTemplate(TableMetaData tableMetaData, List columnInfoList) { - VelocityContext context = new VelocityContext(); - - // 添加要生成的属性 - StringWriter writer = new StringWriter(); - List list = columnInfoList.stream().map(ColumnMetaData::getColumnName).toList(); - - // vm 不能直接写 `{` 需要转换下 - context.put("leftBrace", "{"); - - // 当前的表名 - context.put("tableName", tableMetaData.getTableName()); - - // 当前表的列信息 - context.put("columnInfoList", columnInfoList); - - // 数据库sql列 - context.put("baseColumnList", String.join(",", list)); - - // 添加需要生成的内容 - addContext(context); - - templateMerge(context, writer); - - return writer; - } -} diff --git a/generator-code/src/main/java/cn/bunny/core/vms/VmsArgumentDtoBaseVmsGenerator.java b/generator-code/src/main/java/cn/bunny/core/vms/VmsArgumentDtoBaseVmsGenerator.java deleted file mode 100644 index 159ac53..0000000 --- a/generator-code/src/main/java/cn/bunny/core/vms/VmsArgumentDtoBaseVmsGenerator.java +++ /dev/null @@ -1,85 +0,0 @@ -package cn.bunny.core.vms; - -import cn.bunny.core.TypeConvertCore; -import cn.bunny.dao.dto.VmsArgumentDto; -import org.apache.velocity.Template; -import org.apache.velocity.VelocityContext; -import org.apache.velocity.app.Velocity; - -import java.io.StringWriter; -import java.text.SimpleDateFormat; -import java.util.Date; - -/** - * 使用模板方法,方便扩展 - * 如果需要继承 AbstractVmsGenerator - */ -public class VmsArgumentDtoBaseVmsGenerator extends AbstractVmsGenerator { - - private final VmsArgumentDto dto; - private final String path; - - /** - * @param dto 类名称可以自定义,格式为 xxx_xxx - * @param path 当前路径 - */ - public VmsArgumentDtoBaseVmsGenerator(VmsArgumentDto dto, String path) { - this.dto = dto; - this.path = path; - } - - /** - * 添加生成内容 - * - * @param context VelocityContext - */ - @Override - void addContext(VelocityContext context) { - // 当前日期 - String date = new SimpleDateFormat(dto.getSimpleDateFormat()).format(new Date()); - context.put("date", date); - - // 作者名字 - context.put("author", dto.getAuthor()); - - // 每个 Controller 上的请求前缀 - context.put("requestMapping", dto.getRequestMapping()); - - // 表字段的注释内容 - context.put("comment", dto.getComment()); - - // 设置包名称 - context.put("package", dto.getPackageName()); - - // 类名称如果是小驼峰,需要 [手写] 为 [下划线] 之后由 [代码 -> 小驼峰/大驼峰] - String className = dto.getClassName(); - // 去除表开头前缀 - String tablePrefixes = dto.getTablePrefixes(); - // 将 表前缀 转成数组 - String replaceTableName = ""; - for (String prefix : tablePrefixes.split("[,,]")) { - replaceTableName = className.replace(prefix, ""); - } - - // 将类名称转成小驼峰 - String toCamelCase = TypeConvertCore.convertToCamelCase(replaceTableName); - context.put("classLowercaseName", toCamelCase); - - // 将类名称转成大驼峰 - String convertToCamelCase = TypeConvertCore.convertToCamelCase(replaceTableName, true); - context.put("classUppercaseName", convertToCamelCase); - } - - /** - * Velocity 生成模板 - * - * @param context VelocityContext - * @param writer StringWriter 写入 - */ - @Override - void templateMerge(VelocityContext context, StringWriter writer) { - // Velocity 生成模板 - Template servicePathTemplate = Velocity.getTemplate("vms/" + path, "UTF-8"); - servicePathTemplate.merge(context, writer); - } -} diff --git a/generator-code/src/main/java/cn/bunny/dao/dto/VmsArgumentDto.java b/generator-code/src/main/java/cn/bunny/dao/dto/VmsArgumentDto.java deleted file mode 100644 index 58c894e..0000000 --- a/generator-code/src/main/java/cn/bunny/dao/dto/VmsArgumentDto.java +++ /dev/null @@ -1,53 +0,0 @@ -package cn.bunny.dao.dto; - -import jakarta.validation.constraints.NotBlank; -import jakarta.validation.constraints.NotNull; -import jakarta.validation.constraints.Pattern; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.util.List; - -@Data -@AllArgsConstructor -@NoArgsConstructor -public class VmsArgumentDto { - - /* 作者名称 */ - String author = "Bunny"; - - /* 包名称 */ - String packageName = "cn.bunny.services"; - - /* requestMapping 名称 */ - String requestMapping = "/api"; - - /* 类名称,格式为:xxx xxx_xxx */ - @NotBlank(message = "类名称不能为空") - @NotNull(message = "类名称不能为空") - @Pattern(regexp = "^(?:[a-z][a-z0-9_]*|[_a-z][a-z0-9_]*)$", message = "类名称不合法") - private String className; - - /* 表名称 */ - @NotBlank(message = "表名称不能为空") - @NotNull(message = "表名称不能为空") - @Pattern(regexp = "^(?:[a-z][a-z0-9_]*|[_a-z][a-z0-9_]*)$", message = "表名称不合法") - private String tableName; - - /* 时间格式 */ - private String simpleDateFormat = "yyyy-MM-dd HH:mm:ss"; - - /* 去除表前缀 */ - private String tablePrefixes = "t_,sys_,qrtz_,log_"; - - /* 注释内容 */ - private String comment; - - /* 路径 */ - private List path; - - /* SQL 语句 */ - private String sql; -} - diff --git a/generator-code/src/main/java/cn/bunny/dao/entity/ColumnMetaData.java b/generator-code/src/main/java/cn/bunny/dao/entity/ColumnMetaData.java deleted file mode 100644 index d2c10d0..0000000 --- a/generator-code/src/main/java/cn/bunny/dao/entity/ColumnMetaData.java +++ /dev/null @@ -1,38 +0,0 @@ -package cn.bunny.dao.entity; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -@Data -@Builder -@AllArgsConstructor -@NoArgsConstructor -public class ColumnMetaData { - - /* 列名称 */ - private String columnName; - - /* 字段名称,小驼峰名称 */ - private String lowercaseName; - - /* 大驼峰名称 */ - private String uppercaseName; - - /* 数据库字段类型 */ - private String jdbcType; - - /* Java类型 */ - private String javaType; - - /* Javascript类型 */ - private String javascriptType; - - /* 是否为主键 */ - private Boolean isPrimaryKey; - - /* 字段注释 */ - private String comment; - -} \ No newline at end of file diff --git a/generator-code/src/main/java/cn/bunny/dao/entity/DatabaseInfoMetaData.java b/generator-code/src/main/java/cn/bunny/dao/entity/DatabaseInfoMetaData.java deleted file mode 100644 index e6741c7..0000000 --- a/generator-code/src/main/java/cn/bunny/dao/entity/DatabaseInfoMetaData.java +++ /dev/null @@ -1,31 +0,0 @@ -package cn.bunny.dao.entity; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -@Data -@Builder -@AllArgsConstructor -@NoArgsConstructor -public class DatabaseInfoMetaData { - - /* 数据库产品名称 */ - private String databaseProductName; - - /* 数据库产品版本 */ - private String databaseProductVersion; - - /* 驱动名称 */ - private String driverName; - - /* 数据库驱动版本 */ - private String driverVersion; - - /* 数据链接url */ - private String url; - - /* 数据库用户 */ - private String username; -} \ No newline at end of file diff --git a/generator-code/src/main/java/cn/bunny/dao/entity/TableMetaData.java b/generator-code/src/main/java/cn/bunny/dao/entity/TableMetaData.java deleted file mode 100644 index 502c817..0000000 --- a/generator-code/src/main/java/cn/bunny/dao/entity/TableMetaData.java +++ /dev/null @@ -1,33 +0,0 @@ -package cn.bunny.dao.entity; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.util.List; - -@Data -@Builder -@AllArgsConstructor -@NoArgsConstructor -public class TableMetaData { - - /* 表名 */ - private String tableName; - - /* 注释内容 */ - private String comment; - - /* 表目录 */ - private String tableCat; - - /* 表类型(通常是"TABLE") */ - private String tableType; - - /* 类名 */ - private String className; - - /* 列名称 */ - private List columns; -} \ No newline at end of file diff --git a/generator-code/src/main/java/cn/bunny/dao/result/PageResult.java b/generator-code/src/main/java/cn/bunny/dao/result/PageResult.java deleted file mode 100644 index c18b55e..0000000 --- a/generator-code/src/main/java/cn/bunny/dao/result/PageResult.java +++ /dev/null @@ -1,34 +0,0 @@ -package cn.bunny.dao.result; - -import io.swagger.v3.oas.annotations.media.Schema; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.util.List; - -/** - * 封装分页查询结果 - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Schema(name = "PageResult 对象" , title = "分页返回结果" , description = "分页返回结果" ) -public class PageResult implements Serializable { - - @Schema(name = "pageNo" , title = "当前页" ) - private Long pageNo; - - @Schema(name = "pageSize" , title = "每页记录数" ) - private Long pageSize; - - @Schema(name = "total" , title = "总记录数" ) - private Long total; - - @Schema(name = "list" , title = "当前页数据集合" ) - private List list; - -} \ No newline at end of file diff --git a/generator-code/src/main/java/cn/bunny/dao/result/Result.java b/generator-code/src/main/java/cn/bunny/dao/result/Result.java deleted file mode 100644 index a8eca29..0000000 --- a/generator-code/src/main/java/cn/bunny/dao/result/Result.java +++ /dev/null @@ -1,173 +0,0 @@ -package cn.bunny.dao.result; - -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -@Data -@AllArgsConstructor -@NoArgsConstructor -public class Result { - // 状态码 - private Integer code; - // 返回消息 - private String message; - // 返回数据 - private T data; - - /** - * * 自定义返回体 - * - * @param data 返回体 - * @return Result - */ - protected static Result build(T data) { - Result result = new Result<>(); - result.setData(data); - return result; - } - - /** - * * 自定义返回体,使用ResultCodeEnum构建 - * - * @param body 返回体 - * @param codeEnum 返回状态码 - * @return Result - */ - public static Result build(T body, ResultCodeEnum codeEnum) { - Result result = build(body); - result.setCode(codeEnum.getCode()); - result.setMessage(codeEnum.getMessage()); - return result; - } - - /** - * * 自定义返回体 - * - * @param body 返回体 - * @param code 返回状态码 - * @param message 返回消息 - * @return Result - */ - public static Result build(T body, Integer code, String message) { - Result result = build(body); - result.setCode(code); - result.setMessage(message); - result.setData(null); - return result; - } - - /** - * * 操作成功 - * - * @return Result - */ - public static Result success() { - return success(null, ResultCodeEnum.SUCCESS); - } - - /** - * * 操作成功 - * - * @param data baseCategory1List - */ - public static Result success(T data) { - return build(data, ResultCodeEnum.SUCCESS); - } - - /** - * * 操作成功-状态码 - * - * @param codeEnum 状态码 - */ - public static Result success(ResultCodeEnum codeEnum) { - return success(null, codeEnum); - } - - /** - * * 操作成功-自定义返回数据和状态码 - * - * @param data 返回体 - * @param codeEnum 状态码 - */ - public static Result success(T data, ResultCodeEnum codeEnum) { - return build(data, codeEnum); - } - - /** - * * 操作失败-自定义返回数据和状态码 - * - * @param data 返回体 - * @param message 错误信息 - */ - public static Result success(T data, String message) { - return build(data, 200, message); - } - - /** - * * 操作失败-自定义返回数据和状态码 - * - * @param data 返回体 - * @param code 状态码 - * @param message 错误信息 - */ - public static Result success(T data, Integer code, String message) { - return build(data, code, message); - } - - /** - * * 操作失败 - */ - public static Result error() { - return Result.build(null); - } - - /** - * * 操作失败-自定义返回数据 - * - * @param data 返回体 - */ - public static Result error(T data) { - return build(data, ResultCodeEnum.FAIL); - } - - /** - * * 操作失败-状态码 - * - * @param codeEnum 状态码 - */ - public static Result error(ResultCodeEnum codeEnum) { - return build(null, codeEnum); - } - - /** - * * 操作失败-自定义返回数据和状态码 - * - * @param data 返回体 - * @param codeEnum 状态码 - */ - public static Result error(T data, ResultCodeEnum codeEnum) { - return build(data, codeEnum); - } - - /** - * * 操作失败-自定义返回数据和状态码 - * - * @param data 返回体 - * @param code 状态码 - * @param message 错误信息 - */ - public static Result error(T data, Integer code, String message) { - return build(data, code, message); - } - - /** - * * 操作失败-自定义返回数据和状态码 - * - * @param data 返回体 - * @param message 错误信息 - */ - public static Result error(T data, String message) { - return build(null, 500, message); - } -} diff --git a/generator-code/src/main/java/cn/bunny/dao/result/ResultCodeEnum.java b/generator-code/src/main/java/cn/bunny/dao/result/ResultCodeEnum.java deleted file mode 100644 index 54ab69d..0000000 --- a/generator-code/src/main/java/cn/bunny/dao/result/ResultCodeEnum.java +++ /dev/null @@ -1,90 +0,0 @@ -package cn.bunny.dao.result; - -import lombok.Getter; - -/** - * 统一返回结果状态信息类 - */ -@Getter -public enum ResultCodeEnum { - // 成功操作 200 - SUCCESS(200, "操作成功"), - ADD_SUCCESS(200, "添加成功"), - UPDATE_SUCCESS(200, "修改成功"), - DELETE_SUCCESS(200, "删除成功"), - SORT_SUCCESS(200, "排序成功"), - SUCCESS_UPLOAD(200, "上传成功"), - SUCCESS_LOGOUT(200, "退出成功"), - LOGOUT_SUCCESS(200, "退出成功"), - EMAIL_CODE_REFRESH(200, "邮箱验证码已刷新"), - EMAIL_CODE_SEND_SUCCESS(200, "邮箱验证码已发送"), - - // 验证错误 201 - USERNAME_OR_PASSWORD_NOT_EMPTY(201, "用户名或密码不能为空"), - EMAIL_CODE_NOT_EMPTY(201, "邮箱验证码不能为空"), - SEND_EMAIL_CODE_NOT_EMPTY(201, "请先发送邮箱验证码"), - EMAIL_CODE_NOT_MATCHING(201, "邮箱验证码不匹配"), - LOGIN_ERROR(500, "账号或密码错误"), - LOGIN_ERROR_USERNAME_PASSWORD_NOT_EMPTY(201, "登录信息不能为空"), - GET_BUCKET_EXCEPTION(201, "获取文件信息失败"), - SEND_MAIL_CODE_ERROR(201, "邮件发送失败"), - EMAIL_CODE_EMPTY(201, "邮箱验证码过期或不存在"), - EMAIL_EXIST(201, "邮箱已存在"), - REQUEST_IS_EMPTY(201, "请求数据为空"), - DATA_TOO_LARGE(201, "请求数据为空"), - UPDATE_NEW_PASSWORD_SAME_AS_OLD_PASSWORD(201, "新密码与密码相同"), - - // 数据相关 206 - ILLEGAL_REQUEST(206, "非法请求"), - REPEAT_SUBMIT(206, "重复提交"), - DATA_ERROR(206, "数据异常"), - EMAIL_USER_TEMPLATE_IS_EMPTY(206, "邮件模板为空"), - EMAIL_TEMPLATE_IS_EMPTY(206, "邮件模板为空"), - EMAIL_USER_IS_EMPTY(206, "关联邮件用户配置为空"), - DATA_EXIST(206, "数据已存在"), - DATA_NOT_EXIST(206, "数据不存在"), - ALREADY_USER_EXCEPTION(206, "用户已存在"), - USER_IS_EMPTY(206, "用户不存在"), - FILE_NOT_EXIST(206, "文件不存在"), - NEW_PASSWORD_SAME_OLD_PASSWORD(206, "新密码不能和旧密码相同"), - MISSING_TEMPLATE_FILES(206, "缺少模板文件"), - - // 身份过期 208 - LOGIN_AUTH(208, "请先登陆"), - AUTHENTICATION_EXPIRED(208, "身份验证过期"), - SESSION_EXPIRATION(208, "会话过期"), - - // 209 - THE_SAME_USER_HAS_LOGGED_IN(209, "相同用户已登录"), - - // 提示错误 - UPDATE_ERROR(216, "修改失败"), - URL_ENCODE_ERROR(216, "URL编码失败"), - ILLEGAL_CALLBACK_REQUEST_ERROR(217, "非法回调请求"), - FETCH_USERINFO_ERROR(219, "获取用户信息失败"), - ILLEGAL_DATA_REQUEST(219, "非法数据请求"), - CLASS_NOT_FOUND(219, "类名不存在"), - ADMIN_ROLE_CAN_NOT_DELETED(219, "无法删除admin角色"), - MENU_RANK_NEED_LARGER_THAN_THE_PARENT(219, "设置路由等级需要大于或等于父级的路由等级"), - - // 无权访问 403 - FAIL_NO_ACCESS_DENIED(403, "无权访问"), - FAIL_NO_ACCESS_DENIED_USER_OFFLINE(403, "用户强制下线"), - TOKEN_PARSING_FAILED(403, "token解析失败"), - FAIL_NO_ACCESS_DENIED_USER_LOCKED(403, "该账户已封禁"), - - // 系统错误 500 - UNKNOWN_EXCEPTION(500, "服务异常"), - SERVICE_ERROR(500, "服务异常"), - UPLOAD_ERROR(500, "上传失败"), - FAIL(500, "失败"), - ; - - private final Integer code; - private final String message; - - ResultCodeEnum(Integer code, String message) { - this.code = code; - this.message = message; - } -} \ No newline at end of file diff --git a/generator-code/src/main/java/cn/bunny/dao/vo/GeneratorVo.java b/generator-code/src/main/java/cn/bunny/dao/vo/GeneratorVo.java deleted file mode 100644 index 8223b84..0000000 --- a/generator-code/src/main/java/cn/bunny/dao/vo/GeneratorVo.java +++ /dev/null @@ -1,25 +0,0 @@ -package cn.bunny.dao.vo; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -@Data -@Builder -@AllArgsConstructor -@NoArgsConstructor -public class GeneratorVo { - - /* 生成的代码 */ - private String code; - - /* 表名 */ - private String tableName; - - /* 注释内容 */ - private String comment; - - /* 生成类型路径 */ - private String path; -} diff --git a/generator-code/src/main/java/cn/bunny/dao/vo/TableInfoVo.java b/generator-code/src/main/java/cn/bunny/dao/vo/TableInfoVo.java deleted file mode 100644 index c60e480..0000000 --- a/generator-code/src/main/java/cn/bunny/dao/vo/TableInfoVo.java +++ /dev/null @@ -1,29 +0,0 @@ -package cn.bunny.dao.vo; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -@Data -@Builder -@AllArgsConstructor -@NoArgsConstructor -public class TableInfoVo { - - /* 表目录 */ - private String tableCat; - - /* 表名 */ - private String tableName; - - /* 表类型(通常是"TABLE") */ - private String tableType; - - /* 注释内容 */ - private String comment; - - /* 类名 */ - private String className; - -} diff --git a/generator-code/src/main/java/cn/bunny/dao/vo/VmsPathVo.java b/generator-code/src/main/java/cn/bunny/dao/vo/VmsPathVo.java deleted file mode 100644 index a8ee0dd..0000000 --- a/generator-code/src/main/java/cn/bunny/dao/vo/VmsPathVo.java +++ /dev/null @@ -1,23 +0,0 @@ -package cn.bunny.dao.vo; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -@Data -@Builder -@AllArgsConstructor -@NoArgsConstructor -public class VmsPathVo { - - /* 路径名称 */ - private String name; - - /* 显示的label */ - private String label; - - /* 文件夹最上级目录名称 */ - private String type; - -} diff --git a/generator-code/src/main/java/cn/bunny/exception/GeneratorCodeException.java b/generator-code/src/main/java/cn/bunny/exception/GeneratorCodeException.java deleted file mode 100644 index 8ee61aa..0000000 --- a/generator-code/src/main/java/cn/bunny/exception/GeneratorCodeException.java +++ /dev/null @@ -1,40 +0,0 @@ -package cn.bunny.exception; - -import cn.bunny.dao.result.ResultCodeEnum; -import lombok.Getter; -import lombok.NoArgsConstructor; -import lombok.ToString; -import lombok.extern.slf4j.Slf4j; - -@NoArgsConstructor -@Getter -@ToString -@Slf4j -public class GeneratorCodeException extends RuntimeException { - // 状态码 - Integer code; - - // 描述信息 - String message = "服务异常"; - - // 返回结果状态 - ResultCodeEnum resultCodeEnum; - - public GeneratorCodeException(Integer code, String message) { - super(message); - this.code = code; - this.message = message; - } - - public GeneratorCodeException(String message) { - super(message); - this.message = message; - } - - public GeneratorCodeException(ResultCodeEnum codeEnum) { - super(codeEnum.getMessage()); - this.code = codeEnum.getCode(); - this.message = codeEnum.getMessage(); - this.resultCodeEnum = codeEnum; - } -} diff --git a/generator-code/src/main/java/cn/bunny/exception/GlobalExceptionHandler.java b/generator-code/src/main/java/cn/bunny/exception/GlobalExceptionHandler.java deleted file mode 100644 index ce50ad5..0000000 --- a/generator-code/src/main/java/cn/bunny/exception/GlobalExceptionHandler.java +++ /dev/null @@ -1,105 +0,0 @@ -package cn.bunny.exception; - - -import cn.bunny.dao.result.Result; -import cn.bunny.dao.result.ResultCodeEnum; -import lombok.extern.slf4j.Slf4j; -import org.springframework.context.support.DefaultMessageSourceResolvable; -import org.springframework.util.StringUtils; -import org.springframework.web.bind.MethodArgumentNotValidException; -import org.springframework.web.bind.annotation.ExceptionHandler; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.bind.annotation.RestControllerAdvice; - -import java.sql.SQLIntegrityConstraintViolationException; -import java.util.regex.Matcher; -import java.util.regex.Pattern; -import java.util.stream.Collectors; - -/** - * 全局异常拦截器 - */ -@RestControllerAdvice -@Slf4j -public class GlobalExceptionHandler { - // 自定义异常信息 - @ExceptionHandler(GeneratorCodeException.class) - @ResponseBody - public Result exceptionHandler(GeneratorCodeException exception) { - Integer code = exception.getCode() != null ? exception.getCode() : 500; - return Result.error(null, code, exception.getMessage()); - } - - // 运行时异常信息 - @ExceptionHandler(RuntimeException.class) - @ResponseBody - public Result exceptionHandler(RuntimeException exception) { - String message = exception.getMessage(); - message = StringUtils.hasText(message) ? message : "服务器异常"; - exception.printStackTrace(); - - // 解析异常 - String jsonParseError = "JSON parse error (.*)"; - Matcher jsonParseErrorMatcher = Pattern.compile(jsonParseError).matcher(message); - if (jsonParseErrorMatcher.find()) { - return Result.error(null, 500, "JSON解析异常 " + jsonParseErrorMatcher.group(1)); - } - - // 数据过大 - String dataTooLongError = "Data too long for column (.*?) at row 1"; - Matcher dataTooLongErrorMatcher = Pattern.compile(dataTooLongError).matcher(message); - if (dataTooLongErrorMatcher.find()) { - return Result.error(null, 500, dataTooLongErrorMatcher.group(1) + " 字段数据过大"); - } - - // 主键冲突 - String primaryKeyError = "Duplicate entry '(.*?)' for key .*"; - Matcher primaryKeyErrorMatcher = Pattern.compile(primaryKeyError).matcher(message); - if (primaryKeyErrorMatcher.find()) { - return Result.error(null, 500, "[" + primaryKeyErrorMatcher.group(1) + "]已存在"); - } - - // corn表达式错误 - String cronExpression = "CronExpression '(.*?)' is invalid"; - Matcher cronExpressionMatcher = Pattern.compile(cronExpression).matcher(message); - if (cronExpressionMatcher.find()) { - return Result.error(null, 500, "表达式 " + cronExpressionMatcher.group(1) + " 不合法"); - } - - log.error("GlobalExceptionHandler===>运行时异常信息:{}", message); - return Result.error(null, 500, message); - } - - // 表单验证字段 - @ExceptionHandler(MethodArgumentNotValidException.class) - public Result handleValidationExceptions(MethodArgumentNotValidException ex) { - String errorMessage = ex.getBindingResult().getFieldErrors().stream() - .map(DefaultMessageSourceResolvable::getDefaultMessage) - .collect(Collectors.joining(", ")); - return Result.error(null, 201, errorMessage); - } - - // 特定异常处理 - @ExceptionHandler(ArithmeticException.class) - @ResponseBody - public Result error(ArithmeticException exception) { - log.error("GlobalExceptionHandler===>特定异常信息:{}", exception.getMessage()); - - return Result.error(null, 500, exception.getMessage()); - } - - // 处理SQL异常 - @ExceptionHandler(SQLIntegrityConstraintViolationException.class) - @ResponseBody - public Result exceptionHandler(SQLIntegrityConstraintViolationException exception) { - log.error("GlobalExceptionHandler===>处理SQL异常:{}", exception.getMessage()); - - String message = exception.getMessage(); - if (message.contains("Duplicate entry")) { - // 错误信息 - return Result.error(ResultCodeEnum.USER_IS_EMPTY); - } else { - return Result.error(ResultCodeEnum.UNKNOWN_EXCEPTION); - } - } -} diff --git a/generator-code/src/main/java/cn/bunny/service/SqlParserService.java b/generator-code/src/main/java/cn/bunny/service/SqlParserService.java deleted file mode 100644 index ba63a2f..0000000 --- a/generator-code/src/main/java/cn/bunny/service/SqlParserService.java +++ /dev/null @@ -1,13 +0,0 @@ -package cn.bunny.service; - -import cn.bunny.dao.vo.TableInfoVo; - -public interface SqlParserService { - /** - * 解析SQL内容 - * - * @param sql Sql语句 - * @return 表信息内容 - */ - TableInfoVo tableInfo(String sql); -} diff --git a/generator-code/src/main/java/cn/bunny/service/TableService.java b/generator-code/src/main/java/cn/bunny/service/TableService.java deleted file mode 100644 index bca186f..0000000 --- a/generator-code/src/main/java/cn/bunny/service/TableService.java +++ /dev/null @@ -1,40 +0,0 @@ -package cn.bunny.service; - -import cn.bunny.dao.entity.ColumnMetaData; -import cn.bunny.dao.entity.DatabaseInfoMetaData; -import cn.bunny.dao.vo.TableInfoVo; - -import java.util.List; - -public interface TableService { - - /** - * 获取表属性 - * - * @param tableName 表名称 - * @return 表属性 - */ - TableInfoVo tableMetaData(String tableName); - - /** - * 获取所有数据库 - * - * @return 所有表信息 - */ - List databaseTableList(String tableName); - - /** - * 获取列属性 - * - * @param tableName 表名称 - * @return 当前表所有的列内容 - */ - List tableColumnInfo(String tableName); - - /** - * 数据库所有的信息 - * - * @return 当前连接的数据库信息属性 - */ - DatabaseInfoMetaData databaseInfoMetaData(); -} diff --git a/generator-code/src/main/java/cn/bunny/service/VmsService.java b/generator-code/src/main/java/cn/bunny/service/VmsService.java deleted file mode 100644 index 12d9c1b..0000000 --- a/generator-code/src/main/java/cn/bunny/service/VmsService.java +++ /dev/null @@ -1,37 +0,0 @@ -package cn.bunny.service; - -import cn.bunny.dao.dto.VmsArgumentDto; -import cn.bunny.dao.vo.GeneratorVo; -import cn.bunny.dao.vo.VmsPathVo; -import jakarta.validation.Valid; -import org.springframework.http.ResponseEntity; - -import java.util.List; -import java.util.Map; - -public interface VmsService { - /** - * 生成服务端代码 - * - * @param dto VmsArgumentDto - * @return 生成内容 - */ - List generator(VmsArgumentDto dto); - - /** - * 获取vms文件路径 - * - * @return vms下的文件路径 - */ - Map> vmsResourcePathList(); - - /** - * 打包成zip下载 - * - * @param dto VmsArgumentDto - * @return zip 文件 - */ - ResponseEntity downloadByZip(@Valid VmsArgumentDto dto); - - -} diff --git a/generator-code/src/main/java/cn/bunny/service/impl/SqlParserServiceImpl.java b/generator-code/src/main/java/cn/bunny/service/impl/SqlParserServiceImpl.java deleted file mode 100644 index 72378f4..0000000 --- a/generator-code/src/main/java/cn/bunny/service/impl/SqlParserServiceImpl.java +++ /dev/null @@ -1,27 +0,0 @@ -package cn.bunny.service.impl; - -import cn.bunny.core.SqlParserCore; -import cn.bunny.dao.entity.TableMetaData; -import cn.bunny.dao.vo.TableInfoVo; -import cn.bunny.service.SqlParserService; -import org.springframework.beans.BeanUtils; -import org.springframework.stereotype.Service; - -@Service -public class SqlParserServiceImpl implements SqlParserService { - - /** - * 解析SQL内容 - * - * @param sql Sql语句 - * @return 表信息内容 - */ - @Override - public TableInfoVo tableInfo(String sql) { - TableInfoVo tableInfoVo = new TableInfoVo(); - - TableMetaData tableMetaData = SqlParserCore.parserTableInfo(sql); - BeanUtils.copyProperties(tableMetaData, tableInfoVo); - return tableInfoVo; - } -} diff --git a/generator-code/src/main/java/cn/bunny/service/impl/TableServiceImpl.java b/generator-code/src/main/java/cn/bunny/service/impl/TableServiceImpl.java deleted file mode 100644 index c34420f..0000000 --- a/generator-code/src/main/java/cn/bunny/service/impl/TableServiceImpl.java +++ /dev/null @@ -1,79 +0,0 @@ -package cn.bunny.service.impl; - -import cn.bunny.core.DatabaseInfoCore; -import cn.bunny.dao.entity.ColumnMetaData; -import cn.bunny.dao.entity.DatabaseInfoMetaData; -import cn.bunny.dao.entity.TableMetaData; -import cn.bunny.dao.vo.TableInfoVo; -import cn.bunny.service.TableService; -import jakarta.annotation.Resource; -import lombok.SneakyThrows; -import org.springframework.beans.BeanUtils; -import org.springframework.stereotype.Service; - -import java.util.List; - -@Service -public class TableServiceImpl implements TableService { - - @Resource - private DatabaseInfoCore databaseInfoCore; - - /** - * 获取表属性 - * - * @param tableName 表名称 - * @return 表属性 - */ - @SneakyThrows - @Override - public TableInfoVo tableMetaData(String tableName) { - TableInfoVo tableInfoVo = new TableInfoVo(); - - TableMetaData tableMetaData = databaseInfoCore.tableInfoMetaData(tableName); - BeanUtils.copyProperties(tableMetaData, tableInfoVo); - - return tableInfoVo; - } - - /** - * 获取[当前/所有]数据库表 - * - * @return 所有表信息 - */ - @SneakyThrows - @Override - public List databaseTableList(String dbName) { - List allTableInfo = databaseInfoCore.databaseTableList(dbName); - - return allTableInfo.stream().map(tableMetaData -> { - TableInfoVo tableInfoVo = new TableInfoVo(); - BeanUtils.copyProperties(tableMetaData, tableInfoVo); - - return tableInfoVo; - }).toList(); - } - - /** - * 获取当前表的列属性 - * - * @param tableName 表名称 - * @return 当前表所有的列内容 - */ - @SneakyThrows - @Override - public List tableColumnInfo(String tableName) { - return databaseInfoCore.tableColumnInfo(tableName); - } - - /** - * 数据库所有的信息 - * - * @return 当前连接的数据库信息属性 - */ - @SneakyThrows - @Override - public DatabaseInfoMetaData databaseInfoMetaData() { - return databaseInfoCore.databaseInfoMetaData(); - } -} diff --git a/generator-code/src/main/java/cn/bunny/service/impl/VmsServiceImpl.java b/generator-code/src/main/java/cn/bunny/service/impl/VmsServiceImpl.java deleted file mode 100644 index ddeaeea..0000000 --- a/generator-code/src/main/java/cn/bunny/service/impl/VmsServiceImpl.java +++ /dev/null @@ -1,153 +0,0 @@ -package cn.bunny.service.impl; - -import cn.bunny.core.DatabaseInfoCore; -import cn.bunny.core.ResourceFileCore; -import cn.bunny.core.SqlParserCore; -import cn.bunny.core.vms.VmsArgumentDtoBaseVmsGenerator; -import cn.bunny.dao.dto.VmsArgumentDto; -import cn.bunny.dao.entity.ColumnMetaData; -import cn.bunny.dao.entity.TableMetaData; -import cn.bunny.dao.vo.GeneratorVo; -import cn.bunny.dao.vo.VmsPathVo; -import cn.bunny.service.VmsService; -import cn.bunny.utils.VmsUtil; -import cn.hutool.crypto.digest.MD5; -import jakarta.annotation.Resource; -import lombok.SneakyThrows; -import org.springframework.http.HttpHeaders; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.stereotype.Service; -import org.springframework.util.StringUtils; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.StringWriter; -import java.nio.charset.StandardCharsets; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; -import java.util.zip.ZipEntry; -import java.util.zip.ZipOutputStream; - -@Service -public class VmsServiceImpl implements VmsService { - - @Resource - private DatabaseInfoCore databaseInfoCore; - - /** - * 生成服务端代码 - * - * @param dto VmsArgumentDto - * @return 生成内容 - */ - @Override - public List generator(VmsArgumentDto dto) { - String tableName = dto.getTableName(); - String sql = dto.getSql(); - - // 表格属性名 和 列信息 - TableMetaData tableMetaData; - List columnInfoList; - - // 判断是否有 SQL 如果有SQL 优先解析并生成SQL相关内容 - if (StringUtils.hasText(sql)) { - tableMetaData = SqlParserCore.parserTableInfo(sql); - columnInfoList = SqlParserCore.parserColumnInfo(sql); - } else { - tableMetaData = databaseInfoCore.tableInfoMetaData(tableName); - columnInfoList = databaseInfoCore.tableColumnInfo(tableName).stream().distinct().toList(); - } - - return dto.getPath().stream().map(path -> { - // 生成模板 - VmsArgumentDtoBaseVmsGenerator vmsArgumentDtoBaseVmsGenerator = new VmsArgumentDtoBaseVmsGenerator(dto, path); - StringWriter writer = vmsArgumentDtoBaseVmsGenerator.generatorCodeTemplate(tableMetaData, columnInfoList); - - // 处理 vm 文件名 - path = VmsUtil.handleVmFilename(path, dto.getClassName()); - - return GeneratorVo.builder() - .code(writer.toString()) - .comment(tableMetaData.getComment()) - .tableName(tableMetaData.getTableName()) - .path(path) - .build(); - }).toList(); - } - - /** - * 获取vms文件路径 - * - * @return vms下的文件路径 - */ - @SneakyThrows - @Override - public Map> vmsResourcePathList() { - // 读取当前项目中所有的 vm 模板发给前端 - List vmsRelativeFiles = ResourceFileCore.getRelativeFiles("vms"); - - return vmsRelativeFiles.stream().map(vmFile -> { - String[] filepathList = vmFile.split("/"); - String filename = filepathList[filepathList.length - 1].replace(".vm", ""); - - return VmsPathVo.builder().name(vmFile).label(filename).type(filepathList[0]).build(); - }) - .collect(Collectors.groupingBy(VmsPathVo::getType)); - } - - /** - * 打包成zip下载 - * - * @param dto VmsArgumentDto - * @return zip 文件 - */ - @Override - public ResponseEntity downloadByZip(VmsArgumentDto dto) { - // 需要下载的数据 - List generatorVoList = generator(dto); - - // 1. 创建临时ZIP文件 - ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); - try (ZipOutputStream zipOutputStream = new ZipOutputStream(byteArrayOutputStream)) { - // 2. 遍历并创建 - generatorVoList.forEach(generatorVo -> { - // zip中的路径 - String path = generatorVo.getPath().replace(".vm", ""); - - // zip中的文件 - String code = generatorVo.getCode(); - - ZipEntry zipEntry = new ZipEntry(path); - try { - // 如果有 / 会转成文件夹 - zipOutputStream.putNextEntry(zipEntry); - - // 写入文件 - zipOutputStream.write(code.getBytes(StandardCharsets.UTF_8)); - zipOutputStream.closeEntry(); - } catch (IOException e) { - throw new RuntimeException(e); - } - }); - } catch (IOException e) { - throw new RuntimeException(e); - } - - // 2.1 文件不重名 - long currentTimeMillis = System.currentTimeMillis(); - String digestHex = MD5.create().digestHex(currentTimeMillis + ""); - - // 3. 准备响应 - HttpHeaders headers = new HttpHeaders(); - headers.add("Content-Disposition", "attachment; filename=" + "vms-" + digestHex + ".zip"); - headers.add("Cache-Control", "no-cache, no-store, must-revalidate"); - headers.add("Pragma", "no-cache"); - headers.add("Expires", "0"); - - ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(byteArrayOutputStream.toByteArray()); - return new ResponseEntity<>(byteArrayInputStream.readAllBytes(), headers, HttpStatus.OK); - } -} diff --git a/generator-code/src/main/java/cn/bunny/utils/VmsUtil.java b/generator-code/src/main/java/cn/bunny/utils/VmsUtil.java deleted file mode 100644 index 447c562..0000000 --- a/generator-code/src/main/java/cn/bunny/utils/VmsUtil.java +++ /dev/null @@ -1,59 +0,0 @@ -package cn.bunny.utils; - -import cn.bunny.core.TypeConvertCore; -import com.google.common.base.CaseFormat; - -import java.util.Map; - -public class VmsUtil { - - private static final Map TYPE_MAPPINGS = Map.of( - "controller", "Controller", - "service", "Service", - "serviceImpl", "ServiceImpl", - "mapper", "Mapper", - "resourceMapper", "Mapper" - ); - - /** - * 处理 vm 文件名 - * - * @param path 文件路径 - * @param className 类名 - */ - public static String handleVmFilename(String path, String className) { - String[] splitPaths = path.split("/"); - int splitPathsSize = splitPaths.length - 1; - - // 大驼峰名称 - String CamelCase = TypeConvertCore.convertToCamelCase(className, true); - // 小驼峰名称 - String camelCase = TypeConvertCore.convertToCamelCase(className); - // 当前文件名 - String filename = splitPaths[splitPathsSize]; - filename = filename.replace(".vm", ""); - - String[] split = filename.split("\\."); - // 文件名称 - String name = split[0]; - // 文件扩展名 - String extension = ""; - if (split.length >= 2) { - extension = split[1]; - } - - // 判断是否是 Java 或者 xml 文件 - String typeMappingsFilename = TYPE_MAPPINGS.get(name); - typeMappingsFilename = typeMappingsFilename == null ? "" : typeMappingsFilename; - if (filename.contains("java") || filename.contains("xml")) { - filename = CamelCase + typeMappingsFilename + "." + extension; - } - - if (filename.contains("vue") && !filename.contains("index")) { - filename = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_HYPHEN, camelCase) + "-" + name + "." + extension; - } - - splitPaths[splitPathsSize] = filename; - return String.join("/", splitPaths); - } -} diff --git a/generator-code/src/main/resources/application-dev.yml b/generator-code/src/main/resources/application-dev.yml deleted file mode 100644 index 0ed5983..0000000 --- a/generator-code/src/main/resources/application-dev.yml +++ /dev/null @@ -1,7 +0,0 @@ -bunny: - master: - host: 192.168.3.137 # localhost - port: 3306 - database: auth_admin - username: root - password: "123456" diff --git a/generator-code/src/main/resources/application.yml b/generator-code/src/main/resources/application.yml deleted file mode 100644 index df0fbdf..0000000 --- a/generator-code/src/main/resources/application.yml +++ /dev/null @@ -1,17 +0,0 @@ -server: - port: 8800 - -spring: - profiles: - active: dev - application: - name: generator-code - thymeleaf: - check-template-location: false - - datasource: - type: com.zaxxer.hikari.HikariDataSource - driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://${bunny.master.host}:${bunny.master.port}/${bunny.master.database}?serverTimezone=GMT%2B8&useSSL=false&characterEncoding=utf-8&allowPublicKeyRetrieval=true - username: ${bunny.master.username} - password: ${bunny.master.password} \ No newline at end of file diff --git a/generator-code/src/main/resources/banner.txt b/generator-code/src/main/resources/banner.txt deleted file mode 100644 index f8a20fa..0000000 --- a/generator-code/src/main/resources/banner.txt +++ /dev/null @@ -1,10 +0,0 @@ - _ _ -| |__ _ _ _ __ _ __ _ _ (_) __ ___ ____ _ -| '_ \| | | | '_ \| '_ \| | | | | |/ _` \ \ / / _` | -| |_) | |_| | | | | | | | |_| | | | (_| |\ V | (_| | -|_.__/ \__,_|_| |_|_| |_|\__, | _/ |\__,_| \_/ \__,_| - |___/ |__/ - -Service Name${spring.application.name} -SpringBoot Version: ${spring-boot.version}${spring-boot.formatted-version} -SpringActive:${spring.profiles.active} diff --git a/generator-code/src/main/resources/database.sqlite b/generator-code/src/main/resources/database.sqlite deleted file mode 100644 index e69de29..0000000 diff --git a/generator-code/src/main/resources/logback.xml b/generator-code/src/main/resources/logback.xml deleted file mode 100644 index fe0a953..0000000 --- a/generator-code/src/main/resources/logback.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - logback - - - - - - - - - - - - INFO - - - %cyan([%thread %d{yyyy-MM-dd HH:mm:ss}]) %yellow(%-5level) %green(%logger{100}).%boldRed(%method)-%boldMagenta(%line)-%blue(%msg%n) - - ${ENCODING} - - - - - - logs/${datetime}/financial-server.log - true - - %date{yyyy-MM-dd HH:mm:ss} [%-5level] %thread %file:%line %logger %msg%n - ${ENCODING} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/400.html b/generator-code/src/main/resources/static/error/400.html deleted file mode 100644 index fc1e212..0000000 --- a/generator-code/src/main/resources/static/error/400.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - 400 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

HTTP 400 - Bad Request

-
-
错误说明:因为错误的语法导致服务器无法理解请求信息。
-
原因1:客户端发起的请求不符合服务器对请求的某些限制,或者请求本身存在一定的错误。
-
解决办法:
-
链接中有特殊字符或者链接长度过长导致,请对应修改.
-
原因2:request header 或者 cookie 过大所引起
-
解决办法:
-
crtl+shift+delete 快捷键清除cookie.
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/403.html b/generator-code/src/main/resources/static/error/403.html deleted file mode 100644 index 6c281b0..0000000 --- a/generator-code/src/main/resources/static/error/403.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - 403 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

403 - Forbidden 禁止访问: 访问被拒绝

-
-
错误说明:禁止访问,服务器拒绝访问
-
原因1:未找到默认的索引文件
-
解决办法:
-
IIS中【启用默认内容文档】选项中将默认打开文档修改为程序首页文件格式,如:index.html或者index.php
-
原因2:文件夹安全权限导致
-
解决办法:
-
程序文件-右击-属性-安全-Users-修改为读取和执行权限
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/404.html b/generator-code/src/main/resources/static/error/404.html deleted file mode 100644 index 6cc5d1e..0000000 --- a/generator-code/src/main/resources/static/error/404.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - 404 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

404 - Page Not Found 未找到

-
-
错误说明:请求的页面不存在
-
原因1:访问的文档权限不够
-
解决办法:
-
修改文件权限为755,windos系统修改目录权限为可写可读。
-
原因2:防火墙的原因
-
解决办法:
-
先关闭让防火墙通过WWW服务。
-
原因3:站点根目录无默认访问文件
-
解决办法:
-
在根目录中创建index.html或者创建index.php。
-
原因4:站点配置目录不正确
-
解决办法:
-
将网站应用程序复制到站点目录中,或者修改站点配置目录指定到应用程序目录中。
-
原因5:站点使用了伪静态
-
解决办法:
-
将伪静态规则删除,或者重新编写正确的伪静态规则,或关闭伪静态配置。
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/500.html b/generator-code/src/main/resources/static/error/500.html deleted file mode 100644 index 6071bf4..0000000 --- a/generator-code/src/main/resources/static/error/500.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - 500 - 服务器错误 - - - - -
-

:'(

-

服务器开小差啦!管理员正在修理中...

-

还请阁下静候站点恢复~

-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/501.html b/generator-code/src/main/resources/static/error/501.html deleted file mode 100644 index 48ac544..0000000 --- a/generator-code/src/main/resources/static/error/501.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - 501 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

HTTP 501 - Not Implemented

-
-
错误说明:服务器没有相应的执行动作来完成当前请求。
-
原因1:Web 服务器不支持实现此请求所需的功能
-
解决办法:
-
可以用来HttpWebRequest指定一个UserAgent来试试的,有时候你可以换电脑来测试一下的。
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/502.html b/generator-code/src/main/resources/static/error/502.html deleted file mode 100644 index ea44be2..0000000 --- a/generator-code/src/main/resources/static/error/502.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - 502 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

HTTP 502 - Bad Gateway 没有响应

-
-
错误说明:坏的网关,http向后端节点请求,没有响应
-
原因1:DNS 缓冲
-
解决办法:
-
在dos窗口运行 ipconfig /flushdns,该命令会刷新DNS缓冲。
-
原因2:浏览器代理
-
解决办法:
-
关掉代理。
-
原因3:dns 被劫持了,即使使用国外的dns,也会被劫持
-
解决办法:
-
- 去掉VPN服务器的DNS。切换另外的dns。在windows系统中,可以在本地网络连接的属性中,去掉默认的dns,选用国外的dns,比如google的或opendns。 -
-
原因4:php执行超时
-
解决办法:
-
修改/usr/local/php/etc/php.ini 将max_execution_time 改为300。
-
原因5:nginx等待时间超时
-
解决办法:
-
适当增加nginx.conf配置文件中FastCGI的timeout时间。
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/503.html b/generator-code/src/main/resources/static/error/503.html deleted file mode 100644 index c6fec86..0000000 --- a/generator-code/src/main/resources/static/error/503.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - 503 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

HTTP 503 - Service Unavailable 服务不可用

-
-
错误说明:服务当前不可用
-
原因1:服务不可用状态
-
解决办法:
-
服务器或许就是正在维护或者暂停了,你可以联系一下服务器空间商。
-
原因2:程序占用资源太多
-
解决办法:
-
通过设置应用程序池把账户改为NetworkService即可解决。
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/504.html b/generator-code/src/main/resources/static/error/504.html deleted file mode 100644 index 2980dd0..0000000 --- a/generator-code/src/main/resources/static/error/504.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - 504 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

HTTP 504 - Gateway Timeout 网关超时

-
-
错误说明:网关超时,服务器响应时间,达到超出设定的范围
-
原因1:后端电脑之间 IP 通讯缓慢而产生
-
解决办法:
-
如果您的 Web 服务器由某一网站托管, 只有负责那个网站设置的人员才能解决这个问题。
-
原因2:由于nginx默认的fastcgi进程响应的缓冲区太小造成的错误
-
解决办法:
-
一般默认的fastcgi进程响应的缓冲区是8K,这时可以设置大一点,在nginx.conf里,加入:fastcgi_buffers 8 - 128k这表示设置fastcgi缓冲区为8块128k大小的空间。当然如果在进行某一项即时的操作, 可能需要nginx的超时参数调大点, - 例如设置成60秒:send_timeout 60;经过这两个参数的调整,一般不会再提示“504 Gateway Time-out”错误,问题基本解决。 -
-
原因3:PHP环境的配置问题
-
解决办法:
-
更改php-fpm的几处配置: 把max_children由之前的10改为现在的30,这样就可以保证有充足的php-cgi进程可以被使用; - 把request_terminate_timeout由之前的0s改为60s,这样php-cgi进程 处理脚本的超时时间就是60秒,可以防止进程都被挂起,提高利用效率。 - 接着再更改nginx的几个配置项,减少FastCGI的请求次数,尽量维持buffers不变: fastcgi_buffers由 4 64k 改为 2 - 256k; fastcgi_buffer_size 由 64k 改为 128K; fastcgi_busy_buffers_size 由 128K 改为 256K; - fastcgi_temp_file_write_size 由 128K 改为 256K。 重新加载php-fpm和nginx的配置,再次测试,如果没有出现“504 - Gateway Time-out”错误,问题解决。 -
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/505.html b/generator-code/src/main/resources/static/error/505.html deleted file mode 100644 index 1cd5dd5..0000000 --- a/generator-code/src/main/resources/static/error/505.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - 505 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

HTTP 505 - HTTP Version Not Supported

-
-
错误说明:HTTP 版本不受支持。
-
原因1:您的 Web 服务器不支持,或拒绝支持客户端(如您的浏览器)在发送给服务器的 HTTP 请求数据流中指定的 HTTP - 协议版本 -
-
解决办法:
-
升级您的 Web 服务器软件。
-
原因2:http请求格式的错误
-
解决办法:
-
对照一下自己的代码,从打印的信息中终于找到问题所在。可能在请求后面多加了一个空格。http协议真是很严格了。 -
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/506.html b/generator-code/src/main/resources/static/error/506.html deleted file mode 100644 index 8160abd..0000000 --- a/generator-code/src/main/resources/static/error/506.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - 506 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

HTTP 506 - Variant Also Negotiates

-
-
错误说明:
-
原因1:服务器存在内部配置错误
-
解决办法:
-
被请求的协商变元资源被配置为在透明内容协商中使用自己,因此在一个协商处理中不是一个合适的重点。
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/507.html b/generator-code/src/main/resources/static/error/507.html deleted file mode 100644 index fb6c7e7..0000000 --- a/generator-code/src/main/resources/static/error/507.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - 507 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

HTTP 507 - Insufficient Storage

-
-
错误说明:
-
原因1:服务器无法存储完成请求所必须的内容
-
解决办法:
-
这个状况被认为是临时的。WebDAV (RFC 4918)。
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/509.html b/generator-code/src/main/resources/static/error/509.html deleted file mode 100644 index 520abbd..0000000 --- a/generator-code/src/main/resources/static/error/509.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - 509 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

HTTP 509 - Bandwidth Limit Exceeded

-
-
错误说明:
-
原因1:网站流量已经超出您所购买的方案限制即服务器达到带宽限制
-
解决办法:
-
1.升级方案 2.等到下个月后流量重新计算,网站即可正常浏览。
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/error/510.html b/generator-code/src/main/resources/static/error/510.html deleted file mode 100644 index 95b2f9f..0000000 --- a/generator-code/src/main/resources/static/error/510.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - 510 错误 - phpstudy - - - - - - - - - - - - - - - -
-
-

HTTP 510 - Not Extended

-
-
错误说明:
-
原因1:获取资源所需要的策略并没有被满足
-
解决办法:
-
需要请求有额外的扩展内容,服务器才能处理请求。
-
-
-
- - \ No newline at end of file diff --git a/generator-code/src/main/resources/static/favicon.ico b/generator-code/src/main/resources/static/favicon.ico deleted file mode 100644 index 17f9dd1..0000000 Binary files a/generator-code/src/main/resources/static/favicon.ico and /dev/null differ diff --git a/generator-code/src/main/resources/static/static/css/404-XvabTZcV.css b/generator-code/src/main/resources/static/static/css/404-XvabTZcV.css deleted file mode 100644 index 237e122..0000000 --- a/generator-code/src/main/resources/static/static/css/404-XvabTZcV.css +++ /dev/null @@ -1 +0,0 @@ -.page-container[data-v-128c8218]{display:flex;padding:100px}.page-container .pic-404[data-v-128c8218]{width:600px;overflow:hidden}.page-container .pic-404__parent[data-v-128c8218]{width:100%}.page-container .pic-404__child.left[data-v-128c8218]{top:17px;left:220px;width:80px;opacity:0;animation-name:cloudLeft-128c8218;animation-duration:2s;animation-timing-function:linear;animation-delay:1s;animation-fill-mode:forwards}.page-container .pic-404__child.mid[data-v-128c8218]{top:10px;left:420px;width:46px;opacity:0;animation-name:cloudMid-128c8218;animation-duration:2s;animation-timing-function:linear;animation-delay:1.2s;animation-fill-mode:forwards}.page-container .pic-404__child.right[data-v-128c8218]{top:100px;left:500px;width:62px;opacity:0;animation-name:cloudRight-128c8218;animation-duration:2s;animation-timing-function:linear;animation-delay:1s;animation-fill-mode:forwards}@keyframes cloudLeft-128c8218{0%{top:17px;left:220px;opacity:0}20%{top:33px;left:188px;opacity:1}80%{top:81px;left:92px;opacity:1}to{top:97px;left:60px;opacity:0}}@keyframes cloudMid-128c8218{0%{top:10px;left:420px;opacity:0}20%{top:40px;left:360px;opacity:1}70%{top:130px;left:180px;opacity:1}to{top:160px;left:120px;opacity:0}}@keyframes cloudRight-128c8218{0%{top:100px;left:500px;opacity:0}20%{top:120px;left:460px;opacity:1}80%{top:180px;left:340px;opacity:1}to{top:200px;left:300px;opacity:0}}.page-container .bullshit[data-v-128c8218]{width:300px;padding:30px 0;overflow:hidden}.page-container .bullshit__oops[data-v-128c8218]{margin-bottom:20px;font-size:32px;font-weight:700;line-height:40px;color:#1482f0;opacity:0;animation-name:slideUp-128c8218;animation-duration:.5s;animation-fill-mode:forwards}.page-container .bullshit__headline[data-v-128c8218]{margin-bottom:10px;font-size:20px;font-weight:700;line-height:24px;color:#222;opacity:0;animation-name:slideUp-128c8218;animation-duration:.5s;animation-delay:.1s;animation-fill-mode:forwards}.page-container .bullshit__info[data-v-128c8218]{margin-bottom:30px;font-size:13px;line-height:21px;color:gray;opacity:0;animation-name:slideUp-128c8218;animation-duration:.5s;animation-delay:.2s;animation-fill-mode:forwards}.page-container .bullshit__return-home[data-v-128c8218]{display:block;float:left;width:110px;height:36px;font-size:14px;line-height:36px;color:#fff;text-align:center;cursor:pointer;background:#1482f0;border-radius:100px;opacity:0;animation-name:slideUp-128c8218;animation-duration:.5s;animation-delay:.3s;animation-fill-mode:forwards}@keyframes slideUp-128c8218{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}} diff --git a/generator-code/src/main/resources/static/static/css/index-B0-KdCP2.css b/generator-code/src/main/resources/static/static/css/index-B0-KdCP2.css deleted file mode 100644 index f1ea58f..0000000 --- a/generator-code/src/main/resources/static/static/css/index-B0-KdCP2.css +++ /dev/null @@ -1 +0,0 @@ -@charset "UTF-8";*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pos-absolute{position:absolute}.pos-relative{position:relative}.right-0{right:0}[cols~="24"]{grid-template-columns:repeat(24,minmax(0,1fr))}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-4{margin-top:1rem;margin-bottom:1rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.block{display:block}.hidden{display:none}.w-\[200px\]{width:200px}.w-full{width:100%}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.transform{transform:translate(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotate(var(--un-rotate-z)) skew(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.cursor-pointer{cursor:pointer}.border{border-width:1px}.p-2{padding:.5rem}.text-center{text-align:center}.font-size-\[22px\]{font-size:22px}.c-primary{--un-text-opacity:1;color:rgb(2 122 255 / var(--un-text-opacity))}.color-blue{--un-text-opacity:1;color:rgb(96 165 250 / var(--un-text-opacity))}[color~="#ff69b4"]{--un-text-opacity:1;color:rgb(255 105 180 / var(--un-text-opacity))}.font-bold{font-weight:700}.tab{-moz-tab-size:4;-o-tab-size:4;tab-size:4}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotate-reverse{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.fade-enter-active,.fade-leave-active{transition:opacity .28s}.fade-enter,.fade-leave-active{opacity:0}.fade-transform-leave-active,.fade-transform-enter-active{transition:all .38s}.fade-transform-enter-from{opacity:0;transform:translate(-30px)}.fade-transform-leave-to{opacity:0;transform:translate(30px)}.breadcrumb-enter-active{transition:all .4s}.breadcrumb-leave-active{position:absolute;transition:all .3s}.breadcrumb-enter-from,.breadcrumb-leave-active{opacity:0;transform:translate(20px)}.outer-most .el-collapse-transition-leave-active,.outer-most .el-collapse-transition-enter-active{transition:.2s all ease-in-out!important}.horizontal-collapse-transition{transition:var(--pure-transition-duration) all!important}.slide-enter-active,.slide-leave-active{transition:opacity .3s,transform .3s}.slide-enter-from,.slide-leave-to{opacity:0;transform:translate(-30%)}.dashed-circle{width:46px;height:46px;line-height:40px;font-size:16px;text-align:center;border:2px dashed;border-radius:50%}.hover{transition:all .3s;cursor:pointer}.hover:hover{color:var(--color-hover)}::-webkit-scrollbar{width:8px;height:8px;background-color:var(--el-text-color-secondary)}::-webkit-scrollbar-track{background-color:#ebecef;border-radius:5px;box-shadow:inset 0 0 6px #ebecef}::-webkit-scrollbar-thumb{background-color:#d0d2d6;border-radius:5px;box-shadow:inset 0 0 6px #d0d2d6}:root{--colot-primary: #027AFF;--color-primary-secondary: #00FFFF;--color-info: #7CC1FF;--color-hover: #1C8ADF;--color-warning: #FFBE44;--color-warning-secondary: #FEDB65;--background-color: #051135} diff --git a/generator-code/src/main/resources/static/static/css/index-DFq_RgoD.css b/generator-code/src/main/resources/static/static/css/index-DFq_RgoD.css deleted file mode 100644 index c17581c..0000000 --- a/generator-code/src/main/resources/static/static/css/index-DFq_RgoD.css +++ /dev/null @@ -1 +0,0 @@ -.database-info[data-v-5045df9f]{display:flex;justify-content:space-between;flex-wrap:wrap;flex-direction:column}.database-info p[data-v-5045df9f]{margin:5px 0 0} diff --git a/generator-code/src/main/resources/static/static/css/vendor-lSrybVH6.css b/generator-code/src/main/resources/static/static/css/vendor-lSrybVH6.css deleted file mode 100644 index 396edaa..0000000 --- a/generator-code/src/main/resources/static/static/css/vendor-lSrybVH6.css +++ /dev/null @@ -1,7 +0,0 @@ -@charset "UTF-8";/*! -* animate.css - https://animate.style/ -* Version - 4.1.1 -* Licensed under the MIT license - http://opensource.org/licenses/MIT -* -* Copyright (c) 2020 Animate.css -*/:root{--animate-duration: 1s;--animate-delay: 1s;--animate-repeat: 1}.animate__animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-duration:var(--animate-duration);animation-duration:var(--animate-duration);-webkit-animation-fill-mode:both;animation-fill-mode:both}.animate__animated.animate__infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animate__animated.animate__repeat-1{-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-iteration-count:var(--animate-repeat);animation-iteration-count:var(--animate-repeat)}.animate__animated.animate__repeat-2{-webkit-animation-iteration-count:2;animation-iteration-count:2;-webkit-animation-iteration-count:calc(var(--animate-repeat) * 2);animation-iteration-count:calc(var(--animate-repeat) * 2)}.animate__animated.animate__repeat-3{-webkit-animation-iteration-count:3;animation-iteration-count:3;-webkit-animation-iteration-count:calc(var(--animate-repeat) * 3);animation-iteration-count:calc(var(--animate-repeat) * 3)}.animate__animated.animate__delay-1s{-webkit-animation-delay:1s;animation-delay:1s;-webkit-animation-delay:var(--animate-delay);animation-delay:var(--animate-delay)}.animate__animated.animate__delay-2s{-webkit-animation-delay:2s;animation-delay:2s;-webkit-animation-delay:calc(var(--animate-delay) * 2);animation-delay:calc(var(--animate-delay) * 2)}.animate__animated.animate__delay-3s{-webkit-animation-delay:3s;animation-delay:3s;-webkit-animation-delay:calc(var(--animate-delay) * 3);animation-delay:calc(var(--animate-delay) * 3)}.animate__animated.animate__delay-4s{-webkit-animation-delay:4s;animation-delay:4s;-webkit-animation-delay:calc(var(--animate-delay) * 4);animation-delay:calc(var(--animate-delay) * 4)}.animate__animated.animate__delay-5s{-webkit-animation-delay:5s;animation-delay:5s;-webkit-animation-delay:calc(var(--animate-delay) * 5);animation-delay:calc(var(--animate-delay) * 5)}.animate__animated.animate__faster{-webkit-animation-duration:.5s;animation-duration:.5s;-webkit-animation-duration:calc(var(--animate-duration) / 2);animation-duration:calc(var(--animate-duration) / 2)}.animate__animated.animate__fast{-webkit-animation-duration:.8s;animation-duration:.8s;-webkit-animation-duration:calc(var(--animate-duration) * .8);animation-duration:calc(var(--animate-duration) * .8)}.animate__animated.animate__slow{-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-duration:calc(var(--animate-duration) * 2);animation-duration:calc(var(--animate-duration) * 2)}.animate__animated.animate__slower{-webkit-animation-duration:3s;animation-duration:3s;-webkit-animation-duration:calc(var(--animate-duration) * 3);animation-duration:calc(var(--animate-duration) * 3)}@media print,(prefers-reduced-motion: reduce){.animate__animated{-webkit-animation-duration:1ms!important;animation-duration:1ms!important;-webkit-transition-duration:1ms!important;transition-duration:1ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important}.animate__animated[class*=Out]{opacity:0}}@-webkit-keyframes bounce{0%,20%,53%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}40%,43%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-30px,0) scaleY(1.1);transform:translate3d(0,-30px,0) scaleY(1.1)}70%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-15px,0) scaleY(1.05);transform:translate3d(0,-15px,0) scaleY(1.05)}80%{-webkit-transition-timing-function:cubic-bezier(.215,.61,.355,1);transition-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0) scaleY(.95);transform:translateZ(0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-4px,0) scaleY(1.02);transform:translate3d(0,-4px,0) scaleY(1.02)}}@keyframes bounce{0%,20%,53%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}40%,43%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-30px,0) scaleY(1.1);transform:translate3d(0,-30px,0) scaleY(1.1)}70%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-15px,0) scaleY(1.05);transform:translate3d(0,-15px,0) scaleY(1.05)}80%{-webkit-transition-timing-function:cubic-bezier(.215,.61,.355,1);transition-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0) scaleY(.95);transform:translateZ(0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-4px,0) scaleY(1.02);transform:translate3d(0,-4px,0) scaleY(1.02)}}.animate__bounce{-webkit-animation-name:bounce;animation-name:bounce;-webkit-transform-origin:center bottom;transform-origin:center bottom}@-webkit-keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}.animate__flash{-webkit-animation-name:flash;animation-name:flash}@-webkit-keyframes pulse{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}50%{-webkit-transform:scale3d(1.05,1.05,1.05);transform:scale3d(1.05,1.05,1.05)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes pulse{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}50%{-webkit-transform:scale3d(1.05,1.05,1.05);transform:scale3d(1.05,1.05,1.05)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__pulse{-webkit-animation-name:pulse;animation-name:pulse;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}@-webkit-keyframes rubberBand{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}30%{-webkit-transform:scale3d(1.25,.75,1);transform:scale3d(1.25,.75,1)}40%{-webkit-transform:scale3d(.75,1.25,1);transform:scale3d(.75,1.25,1)}50%{-webkit-transform:scale3d(1.15,.85,1);transform:scale3d(1.15,.85,1)}65%{-webkit-transform:scale3d(.95,1.05,1);transform:scale3d(.95,1.05,1)}75%{-webkit-transform:scale3d(1.05,.95,1);transform:scale3d(1.05,.95,1)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes rubberBand{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}30%{-webkit-transform:scale3d(1.25,.75,1);transform:scale3d(1.25,.75,1)}40%{-webkit-transform:scale3d(.75,1.25,1);transform:scale3d(.75,1.25,1)}50%{-webkit-transform:scale3d(1.15,.85,1);transform:scale3d(1.15,.85,1)}65%{-webkit-transform:scale3d(.95,1.05,1);transform:scale3d(.95,1.05,1)}75%{-webkit-transform:scale3d(1.05,.95,1);transform:scale3d(1.05,.95,1)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__rubberBand{-webkit-animation-name:rubberBand;animation-name:rubberBand}@-webkit-keyframes shakeX{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(-10px,0,0);transform:translate3d(-10px,0,0)}20%,40%,60%,80%{-webkit-transform:translate3d(10px,0,0);transform:translate3d(10px,0,0)}}@keyframes shakeX{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(-10px,0,0);transform:translate3d(-10px,0,0)}20%,40%,60%,80%{-webkit-transform:translate3d(10px,0,0);transform:translate3d(10px,0,0)}}.animate__shakeX{-webkit-animation-name:shakeX;animation-name:shakeX}@-webkit-keyframes shakeY{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(0,-10px,0);transform:translate3d(0,-10px,0)}20%,40%,60%,80%{-webkit-transform:translate3d(0,10px,0);transform:translate3d(0,10px,0)}}@keyframes shakeY{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(0,-10px,0);transform:translate3d(0,-10px,0)}20%,40%,60%,80%{-webkit-transform:translate3d(0,10px,0);transform:translate3d(0,10px,0)}}.animate__shakeY{-webkit-animation-name:shakeY;animation-name:shakeY}@-webkit-keyframes headShake{0%{-webkit-transform:translateX(0);transform:translate(0)}6.5%{-webkit-transform:translateX(-6px) rotateY(-9deg);transform:translate(-6px) rotateY(-9deg)}18.5%{-webkit-transform:translateX(5px) rotateY(7deg);transform:translate(5px) rotateY(7deg)}31.5%{-webkit-transform:translateX(-3px) rotateY(-5deg);transform:translate(-3px) rotateY(-5deg)}43.5%{-webkit-transform:translateX(2px) rotateY(3deg);transform:translate(2px) rotateY(3deg)}50%{-webkit-transform:translateX(0);transform:translate(0)}}@keyframes headShake{0%{-webkit-transform:translateX(0);transform:translate(0)}6.5%{-webkit-transform:translateX(-6px) rotateY(-9deg);transform:translate(-6px) rotateY(-9deg)}18.5%{-webkit-transform:translateX(5px) rotateY(7deg);transform:translate(5px) rotateY(7deg)}31.5%{-webkit-transform:translateX(-3px) rotateY(-5deg);transform:translate(-3px) rotateY(-5deg)}43.5%{-webkit-transform:translateX(2px) rotateY(3deg);transform:translate(2px) rotateY(3deg)}50%{-webkit-transform:translateX(0);transform:translate(0)}}.animate__headShake{-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-name:headShake;animation-name:headShake}@-webkit-keyframes swing{20%{-webkit-transform:rotate3d(0,0,1,15deg);transform:rotate3d(0,0,1,15deg)}40%{-webkit-transform:rotate3d(0,0,1,-10deg);transform:rotate3d(0,0,1,-10deg)}60%{-webkit-transform:rotate3d(0,0,1,5deg);transform:rotate3d(0,0,1,5deg)}80%{-webkit-transform:rotate3d(0,0,1,-5deg);transform:rotate3d(0,0,1,-5deg)}to{-webkit-transform:rotate3d(0,0,1,0deg);transform:rotate3d(0,0,1,0)}}@keyframes swing{20%{-webkit-transform:rotate3d(0,0,1,15deg);transform:rotate3d(0,0,1,15deg)}40%{-webkit-transform:rotate3d(0,0,1,-10deg);transform:rotate3d(0,0,1,-10deg)}60%{-webkit-transform:rotate3d(0,0,1,5deg);transform:rotate3d(0,0,1,5deg)}80%{-webkit-transform:rotate3d(0,0,1,-5deg);transform:rotate3d(0,0,1,-5deg)}to{-webkit-transform:rotate3d(0,0,1,0deg);transform:rotate3d(0,0,1,0)}}.animate__swing{-webkit-transform-origin:top center;transform-origin:top center;-webkit-animation-name:swing;animation-name:swing}@-webkit-keyframes tada{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}10%,20%{-webkit-transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg);transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg)}30%,50%,70%,90%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg)}40%,60%,80%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes tada{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}10%,20%{-webkit-transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg);transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg)}30%,50%,70%,90%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg)}40%,60%,80%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__tada{-webkit-animation-name:tada;animation-name:tada}@-webkit-keyframes wobble{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}15%{-webkit-transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg);transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{-webkit-transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg);transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{-webkit-transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg);transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{-webkit-transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg);transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{-webkit-transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg);transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes wobble{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}15%{-webkit-transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg);transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{-webkit-transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg);transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{-webkit-transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg);transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{-webkit-transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg);transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{-webkit-transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg);transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__wobble{-webkit-animation-name:wobble;animation-name:wobble}@-webkit-keyframes jello{0%,11.1%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}22.2%{-webkit-transform:skewX(-12.5deg) skewY(-12.5deg);transform:skew(-12.5deg) skewY(-12.5deg)}33.3%{-webkit-transform:skewX(6.25deg) skewY(6.25deg);transform:skew(6.25deg) skewY(6.25deg)}44.4%{-webkit-transform:skewX(-3.125deg) skewY(-3.125deg);transform:skew(-3.125deg) skewY(-3.125deg)}55.5%{-webkit-transform:skewX(1.5625deg) skewY(1.5625deg);transform:skew(1.5625deg) skewY(1.5625deg)}66.6%{-webkit-transform:skewX(-.78125deg) skewY(-.78125deg);transform:skew(-.78125deg) skewY(-.78125deg)}77.7%{-webkit-transform:skewX(.390625deg) skewY(.390625deg);transform:skew(.390625deg) skewY(.390625deg)}88.8%{-webkit-transform:skewX(-.1953125deg) skewY(-.1953125deg);transform:skew(-.1953125deg) skewY(-.1953125deg)}}@keyframes jello{0%,11.1%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}22.2%{-webkit-transform:skewX(-12.5deg) skewY(-12.5deg);transform:skew(-12.5deg) skewY(-12.5deg)}33.3%{-webkit-transform:skewX(6.25deg) skewY(6.25deg);transform:skew(6.25deg) skewY(6.25deg)}44.4%{-webkit-transform:skewX(-3.125deg) skewY(-3.125deg);transform:skew(-3.125deg) skewY(-3.125deg)}55.5%{-webkit-transform:skewX(1.5625deg) skewY(1.5625deg);transform:skew(1.5625deg) skewY(1.5625deg)}66.6%{-webkit-transform:skewX(-.78125deg) skewY(-.78125deg);transform:skew(-.78125deg) skewY(-.78125deg)}77.7%{-webkit-transform:skewX(.390625deg) skewY(.390625deg);transform:skew(.390625deg) skewY(.390625deg)}88.8%{-webkit-transform:skewX(-.1953125deg) skewY(-.1953125deg);transform:skew(-.1953125deg) skewY(-.1953125deg)}}.animate__jello{-webkit-animation-name:jello;animation-name:jello;-webkit-transform-origin:center;transform-origin:center}@-webkit-keyframes heartBeat{0%{-webkit-transform:scale(1);transform:scale(1)}14%{-webkit-transform:scale(1.3);transform:scale(1.3)}28%{-webkit-transform:scale(1);transform:scale(1)}42%{-webkit-transform:scale(1.3);transform:scale(1.3)}70%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes heartBeat{0%{-webkit-transform:scale(1);transform:scale(1)}14%{-webkit-transform:scale(1.3);transform:scale(1.3)}28%{-webkit-transform:scale(1);transform:scale(1)}42%{-webkit-transform:scale(1.3);transform:scale(1.3)}70%{-webkit-transform:scale(1);transform:scale(1)}}.animate__heartBeat{-webkit-animation-name:heartBeat;animation-name:heartBeat;-webkit-animation-duration:1.3s;animation-duration:1.3s;-webkit-animation-duration:calc(var(--animate-duration) * 1.3);animation-duration:calc(var(--animate-duration) * 1.3);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}@-webkit-keyframes backInDown{0%{-webkit-transform:translateY(-1200px) scale(.7);transform:translateY(-1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInDown{0%{-webkit-transform:translateY(-1200px) scale(.7);transform:translateY(-1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInDown{-webkit-animation-name:backInDown;animation-name:backInDown}@-webkit-keyframes backInLeft{0%{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInLeft{0%{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInLeft{-webkit-animation-name:backInLeft;animation-name:backInLeft}@-webkit-keyframes backInRight{0%{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInRight{0%{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInRight{-webkit-animation-name:backInRight;animation-name:backInRight}@-webkit-keyframes backInUp{0%{-webkit-transform:translateY(1200px) scale(.7);transform:translateY(1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInUp{0%{-webkit-transform:translateY(1200px) scale(.7);transform:translateY(1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInUp{-webkit-animation-name:backInUp;animation-name:backInUp}@-webkit-keyframes backOutDown{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(700px) scale(.7);transform:translateY(700px) scale(.7);opacity:.7}}@keyframes backOutDown{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(700px) scale(.7);transform:translateY(700px) scale(.7);opacity:.7}}.animate__backOutDown{-webkit-animation-name:backOutDown;animation-name:backOutDown}@-webkit-keyframes backOutLeft{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}}@keyframes backOutLeft{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}}.animate__backOutLeft{-webkit-animation-name:backOutLeft;animation-name:backOutLeft}@-webkit-keyframes backOutRight{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}}@keyframes backOutRight{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}}.animate__backOutRight{-webkit-animation-name:backOutRight;animation-name:backOutRight}@-webkit-keyframes backOutUp{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(-700px) scale(.7);transform:translateY(-700px) scale(.7);opacity:.7}}@keyframes backOutUp{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(-700px) scale(.7);transform:translateY(-700px) scale(.7);opacity:.7}}.animate__backOutUp{-webkit-animation-name:backOutUp;animation-name:backOutUp}@-webkit-keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}60%{opacity:1;-webkit-transform:scale3d(1.03,1.03,1.03);transform:scale3d(1.03,1.03,1.03)}80%{-webkit-transform:scale3d(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}60%{opacity:1;-webkit-transform:scale3d(1.03,1.03,1.03);transform:scale3d(1.03,1.03,1.03)}80%{-webkit-transform:scale3d(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__bounceIn{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInDown{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,-3000px,0) scaleY(3);transform:translate3d(0,-3000px,0) scaleY(3)}60%{opacity:1;-webkit-transform:translate3d(0,25px,0) scaleY(.9);transform:translate3d(0,25px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,-10px,0) scaleY(.95);transform:translate3d(0,-10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,5px,0) scaleY(.985);transform:translate3d(0,5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInDown{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,-3000px,0) scaleY(3);transform:translate3d(0,-3000px,0) scaleY(3)}60%{opacity:1;-webkit-transform:translate3d(0,25px,0) scaleY(.9);transform:translate3d(0,25px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,-10px,0) scaleY(.95);transform:translate3d(0,-10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,5px,0) scaleY(.985);transform:translate3d(0,5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInDown{-webkit-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(-3000px,0,0) scaleX(3);transform:translate3d(-3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(25px,0,0) scaleX(1);transform:translate3d(25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(-10px,0,0) scaleX(.98);transform:translate3d(-10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(5px,0,0) scaleX(.995);transform:translate3d(5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(-3000px,0,0) scaleX(3);transform:translate3d(-3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(25px,0,0) scaleX(1);transform:translate3d(25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(-10px,0,0) scaleX(.98);transform:translate3d(-10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(5px,0,0) scaleX(.995);transform:translate3d(5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInLeft{-webkit-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(3000px,0,0) scaleX(3);transform:translate3d(3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(-25px,0,0) scaleX(1);transform:translate3d(-25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(10px,0,0) scaleX(.98);transform:translate3d(10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(-5px,0,0) scaleX(.995);transform:translate3d(-5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(3000px,0,0) scaleX(3);transform:translate3d(3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(-25px,0,0) scaleX(1);transform:translate3d(-25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(10px,0,0) scaleX(.98);transform:translate3d(10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(-5px,0,0) scaleX(.995);transform:translate3d(-5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInRight{-webkit-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceInUp{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,3000px,0) scaleY(5);transform:translate3d(0,3000px,0) scaleY(5)}60%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,10px,0) scaleY(.95);transform:translate3d(0,10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-5px,0) scaleY(.985);transform:translate3d(0,-5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInUp{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,3000px,0) scaleY(5);transform:translate3d(0,3000px,0) scaleY(5)}60%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,10px,0) scaleY(.95);transform:translate3d(0,10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-5px,0) scaleY(.985);transform:translate3d(0,-5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInUp{-webkit-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes bounceOut{20%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}50%,55%{opacity:1;-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}to{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}}@keyframes bounceOut{20%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}50%,55%{opacity:1;-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}to{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}}.animate__bounceOut{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-animation-name:bounceOut;animation-name:bounceOut}@-webkit-keyframes bounceOutDown{20%{-webkit-transform:translate3d(0,10px,0) scaleY(.985);transform:translate3d(0,10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,2000px,0) scaleY(3);transform:translate3d(0,2000px,0) scaleY(3)}}@keyframes bounceOutDown{20%{-webkit-transform:translate3d(0,10px,0) scaleY(.985);transform:translate3d(0,10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,2000px,0) scaleY(3);transform:translate3d(0,2000px,0) scaleY(3)}}.animate__bounceOutDown{-webkit-animation-name:bounceOutDown;animation-name:bounceOutDown}@-webkit-keyframes bounceOutLeft{20%{opacity:1;-webkit-transform:translate3d(20px,0,0) scaleX(.9);transform:translate3d(20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0) scaleX(2);transform:translate3d(-2000px,0,0) scaleX(2)}}@keyframes bounceOutLeft{20%{opacity:1;-webkit-transform:translate3d(20px,0,0) scaleX(.9);transform:translate3d(20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0) scaleX(2);transform:translate3d(-2000px,0,0) scaleX(2)}}.animate__bounceOutLeft{-webkit-animation-name:bounceOutLeft;animation-name:bounceOutLeft}@-webkit-keyframes bounceOutRight{20%{opacity:1;-webkit-transform:translate3d(-20px,0,0) scaleX(.9);transform:translate3d(-20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(2000px,0,0) scaleX(2);transform:translate3d(2000px,0,0) scaleX(2)}}@keyframes bounceOutRight{20%{opacity:1;-webkit-transform:translate3d(-20px,0,0) scaleX(.9);transform:translate3d(-20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(2000px,0,0) scaleX(2);transform:translate3d(2000px,0,0) scaleX(2)}}.animate__bounceOutRight{-webkit-animation-name:bounceOutRight;animation-name:bounceOutRight}@-webkit-keyframes bounceOutUp{20%{-webkit-transform:translate3d(0,-10px,0) scaleY(.985);transform:translate3d(0,-10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,20px,0) scaleY(.9);transform:translate3d(0,20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0) scaleY(3);transform:translate3d(0,-2000px,0) scaleY(3)}}@keyframes bounceOutUp{20%{-webkit-transform:translate3d(0,-10px,0) scaleY(.985);transform:translate3d(0,-10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,20px,0) scaleY(.9);transform:translate3d(0,20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0) scaleY(3);transform:translate3d(0,-2000px,0) scaleY(3)}}.animate__bounceOutUp{-webkit-animation-name:bounceOutUp;animation-name:bounceOutUp}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate__fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInDownBig{-webkit-animation-name:fadeInDownBig;animation-name:fadeInDownBig}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInLeftBig{-webkit-animation-name:fadeInLeftBig;animation-name:fadeInLeftBig}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInRightBig{-webkit-animation-name:fadeInRightBig;animation-name:fadeInRightBig}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInUpBig{-webkit-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes fadeInTopLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInTopLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInTopLeft{-webkit-animation-name:fadeInTopLeft;animation-name:fadeInTopLeft}@-webkit-keyframes fadeInTopRight{0%{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInTopRight{0%{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInTopRight{-webkit-animation-name:fadeInTopRight;animation-name:fadeInTopRight}@-webkit-keyframes fadeInBottomLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInBottomLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInBottomLeft{-webkit-animation-name:fadeInBottomLeft;animation-name:fadeInBottomLeft}@-webkit-keyframes fadeInBottomRight{0%{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInBottomRight{0%{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInBottomRight{-webkit-animation-name:fadeInBottomRight;animation-name:fadeInBottomRight}@-webkit-keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.animate__fadeOut{-webkit-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOutDown{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes fadeOutDown{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}.animate__fadeOutDown{-webkit-animation-name:fadeOutDown;animation-name:fadeOutDown}@-webkit-keyframes fadeOutDownBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}}@keyframes fadeOutDownBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}}.animate__fadeOutDownBig{-webkit-animation-name:fadeOutDownBig;animation-name:fadeOutDownBig}@-webkit-keyframes fadeOutLeft{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes fadeOutLeft{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}.animate__fadeOutLeft{-webkit-animation-name:fadeOutLeft;animation-name:fadeOutLeft}@-webkit-keyframes fadeOutLeftBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}}@keyframes fadeOutLeftBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}}.animate__fadeOutLeftBig{-webkit-animation-name:fadeOutLeftBig;animation-name:fadeOutLeftBig}@-webkit-keyframes fadeOutRight{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes fadeOutRight{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.animate__fadeOutRight{-webkit-animation-name:fadeOutRight;animation-name:fadeOutRight}@-webkit-keyframes fadeOutRightBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}}@keyframes fadeOutRightBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}}.animate__fadeOutRightBig{-webkit-animation-name:fadeOutRightBig;animation-name:fadeOutRightBig}@-webkit-keyframes fadeOutUp{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes fadeOutUp{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}.animate__fadeOutUp{-webkit-animation-name:fadeOutUp;animation-name:fadeOutUp}@-webkit-keyframes fadeOutUpBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}}@keyframes fadeOutUpBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}}.animate__fadeOutUpBig{-webkit-animation-name:fadeOutUpBig;animation-name:fadeOutUpBig}@-webkit-keyframes fadeOutTopLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}}@keyframes fadeOutTopLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}}.animate__fadeOutTopLeft{-webkit-animation-name:fadeOutTopLeft;animation-name:fadeOutTopLeft}@-webkit-keyframes fadeOutTopRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}}@keyframes fadeOutTopRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}}.animate__fadeOutTopRight{-webkit-animation-name:fadeOutTopRight;animation-name:fadeOutTopRight}@-webkit-keyframes fadeOutBottomRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}}@keyframes fadeOutBottomRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}}.animate__fadeOutBottomRight{-webkit-animation-name:fadeOutBottomRight;animation-name:fadeOutBottomRight}@-webkit-keyframes fadeOutBottomLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}}@keyframes fadeOutBottomLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}}.animate__fadeOutBottomLeft{-webkit-animation-name:fadeOutBottomLeft;animation-name:fadeOutBottomLeft}@-webkit-keyframes flip{0%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,-360deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(-360deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-190deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-190deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-170deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-170deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) scale3d(.95,.95,.95) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scale3d(.95,.95,.95) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}to{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}@keyframes flip{0%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,-360deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(-360deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-190deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-190deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-170deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-170deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) scale3d(.95,.95,.95) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scale3d(.95,.95,.95) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}to{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}.animate__animated.animate__flip{-webkit-backface-visibility:visible;backface-visibility:visible;-webkit-animation-name:flip;animation-name:flip}@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotateX(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotateX(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes flipInX{0%{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotateX(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotateX(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}.animate__flipInX{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInX;animation-name:flipInX}@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-20deg);transform:perspective(400px) rotateY(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(0,1,0,10deg);transform:perspective(400px) rotateY(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-5deg);transform:perspective(400px) rotateY(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes flipInY{0%{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-20deg);transform:perspective(400px) rotateY(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(0,1,0,10deg);transform:perspective(400px) rotateY(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-5deg);transform:perspective(400px) rotateY(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}.animate__flipInY{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInY;animation-name:flipInY}@-webkit-keyframes flipOutX{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}@keyframes flipOutX{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}.animate__flipOutX{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-animation-name:flipOutX;animation-name:flipOutX;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}@-webkit-keyframes flipOutY{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-15deg);transform:perspective(400px) rotateY(-15deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}@keyframes flipOutY{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-15deg);transform:perspective(400px) rotateY(-15deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}.animate__flipOutY{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipOutY;animation-name:flipOutY}@-webkit-keyframes lightSpeedInRight{0%{-webkit-transform:translate3d(100%,0,0) skewX(-30deg);transform:translate3d(100%,0,0) skew(-30deg);opacity:0}60%{-webkit-transform:skewX(20deg);transform:skew(20deg);opacity:1}80%{-webkit-transform:skewX(-5deg);transform:skew(-5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes lightSpeedInRight{0%{-webkit-transform:translate3d(100%,0,0) skewX(-30deg);transform:translate3d(100%,0,0) skew(-30deg);opacity:0}60%{-webkit-transform:skewX(20deg);transform:skew(20deg);opacity:1}80%{-webkit-transform:skewX(-5deg);transform:skew(-5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__lightSpeedInRight{-webkit-animation-name:lightSpeedInRight;animation-name:lightSpeedInRight;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}@-webkit-keyframes lightSpeedInLeft{0%{-webkit-transform:translate3d(-100%,0,0) skewX(30deg);transform:translate3d(-100%,0,0) skew(30deg);opacity:0}60%{-webkit-transform:skewX(-20deg);transform:skew(-20deg);opacity:1}80%{-webkit-transform:skewX(5deg);transform:skew(5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes lightSpeedInLeft{0%{-webkit-transform:translate3d(-100%,0,0) skewX(30deg);transform:translate3d(-100%,0,0) skew(30deg);opacity:0}60%{-webkit-transform:skewX(-20deg);transform:skew(-20deg);opacity:1}80%{-webkit-transform:skewX(5deg);transform:skew(5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__lightSpeedInLeft{-webkit-animation-name:lightSpeedInLeft;animation-name:lightSpeedInLeft;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}@-webkit-keyframes lightSpeedOutRight{0%{opacity:1}to{-webkit-transform:translate3d(100%,0,0) skewX(30deg);transform:translate3d(100%,0,0) skew(30deg);opacity:0}}@keyframes lightSpeedOutRight{0%{opacity:1}to{-webkit-transform:translate3d(100%,0,0) skewX(30deg);transform:translate3d(100%,0,0) skew(30deg);opacity:0}}.animate__lightSpeedOutRight{-webkit-animation-name:lightSpeedOutRight;animation-name:lightSpeedOutRight;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}@-webkit-keyframes lightSpeedOutLeft{0%{opacity:1}to{-webkit-transform:translate3d(-100%,0,0) skewX(-30deg);transform:translate3d(-100%,0,0) skew(-30deg);opacity:0}}@keyframes lightSpeedOutLeft{0%{opacity:1}to{-webkit-transform:translate3d(-100%,0,0) skewX(-30deg);transform:translate3d(-100%,0,0) skew(-30deg);opacity:0}}.animate__lightSpeedOutLeft{-webkit-animation-name:lightSpeedOutLeft;animation-name:lightSpeedOutLeft;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}@-webkit-keyframes rotateIn{0%{-webkit-transform:rotate3d(0,0,1,-200deg);transform:rotate3d(0,0,1,-200deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateIn{0%{-webkit-transform:rotate3d(0,0,1,-200deg);transform:rotate3d(0,0,1,-200deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateIn{-webkit-animation-name:rotateIn;animation-name:rotateIn;-webkit-transform-origin:center;transform-origin:center}@-webkit-keyframes rotateInDownLeft{0%{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInDownLeft{0%{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInDownLeft{-webkit-animation-name:rotateInDownLeft;animation-name:rotateInDownLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateInDownRight{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInDownRight{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInDownRight{-webkit-animation-name:rotateInDownRight;animation-name:rotateInDownRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes rotateInUpLeft{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInUpLeft{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInUpLeft{-webkit-animation-name:rotateInUpLeft;animation-name:rotateInUpLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateInUpRight{0%{-webkit-transform:rotate3d(0,0,1,-90deg);transform:rotate3d(0,0,1,-90deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInUpRight{0%{-webkit-transform:rotate3d(0,0,1,-90deg);transform:rotate3d(0,0,1,-90deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInUpRight{-webkit-animation-name:rotateInUpRight;animation-name:rotateInUpRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes rotateOut{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,200deg);transform:rotate3d(0,0,1,200deg);opacity:0}}@keyframes rotateOut{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,200deg);transform:rotate3d(0,0,1,200deg);opacity:0}}.animate__rotateOut{-webkit-animation-name:rotateOut;animation-name:rotateOut;-webkit-transform-origin:center;transform-origin:center}@-webkit-keyframes rotateOutDownLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}}@keyframes rotateOutDownLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}}.animate__rotateOutDownLeft{-webkit-animation-name:rotateOutDownLeft;animation-name:rotateOutDownLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateOutDownRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}@keyframes rotateOutDownRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}.animate__rotateOutDownRight{-webkit-animation-name:rotateOutDownRight;animation-name:rotateOutDownRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes rotateOutUpLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}@keyframes rotateOutUpLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}.animate__rotateOutUpLeft{-webkit-animation-name:rotateOutUpLeft;animation-name:rotateOutUpLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateOutUpRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,90deg);transform:rotate3d(0,0,1,90deg);opacity:0}}@keyframes rotateOutUpRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,90deg);transform:rotate3d(0,0,1,90deg);opacity:0}}.animate__rotateOutUpRight{-webkit-animation-name:rotateOutUpRight;animation-name:rotateOutUpRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes hinge{0%{-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate3d(0,0,1,80deg);transform:rotate3d(0,0,1,80deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%,80%{-webkit-transform:rotate3d(0,0,1,60deg);transform:rotate3d(0,0,1,60deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}to{-webkit-transform:translate3d(0,700px,0);transform:translate3d(0,700px,0);opacity:0}}@keyframes hinge{0%{-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate3d(0,0,1,80deg);transform:rotate3d(0,0,1,80deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%,80%{-webkit-transform:rotate3d(0,0,1,60deg);transform:rotate3d(0,0,1,60deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}to{-webkit-transform:translate3d(0,700px,0);transform:translate3d(0,700px,0);opacity:0}}.animate__hinge{-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-duration:calc(var(--animate-duration) * 2);animation-duration:calc(var(--animate-duration) * 2);-webkit-animation-name:hinge;animation-name:hinge;-webkit-transform-origin:top left;transform-origin:top left}@-webkit-keyframes jackInTheBox{0%{opacity:0;-webkit-transform:scale(.1) rotate(30deg);transform:scale(.1) rotate(30deg);-webkit-transform-origin:center bottom;transform-origin:center bottom}50%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}70%{-webkit-transform:rotate(3deg);transform:rotate(3deg)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes jackInTheBox{0%{opacity:0;-webkit-transform:scale(.1) rotate(30deg);transform:scale(.1) rotate(30deg);-webkit-transform-origin:center bottom;transform-origin:center bottom}50%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}70%{-webkit-transform:rotate(3deg);transform:rotate(3deg)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.animate__jackInTheBox{-webkit-animation-name:jackInTheBox;animation-name:jackInTheBox}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg);transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes rollIn{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg);transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__rollIn{-webkit-animation-name:rollIn;animation-name:rollIn}@-webkit-keyframes rollOut{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg);transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg)}}@keyframes rollOut{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg);transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg)}}.animate__rollOut{-webkit-animation-name:rollOut;animation-name:rollOut}@-webkit-keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}.animate__zoomIn{-webkit-animation-name:zoomIn;animation-name:zoomIn}@-webkit-keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInDown{-webkit-animation-name:zoomInDown;animation-name:zoomInDown}@-webkit-keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(10px,0,0);transform:scale3d(.475,.475,.475) translate3d(10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(10px,0,0);transform:scale3d(.475,.475,.475) translate3d(10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInLeft{-webkit-animation-name:zoomInLeft;animation-name:zoomInLeft}@-webkit-keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInRight{-webkit-animation-name:zoomInRight;animation-name:zoomInRight}@-webkit-keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInUp{-webkit-animation-name:zoomInUp;animation-name:zoomInUp}@-webkit-keyframes zoomOut{0%{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}.animate__zoomOut{-webkit-animation-name:zoomOut;animation-name:zoomOut}@-webkit-keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomOutDown{-webkit-animation-name:zoomOutDown;animation-name:zoomOutDown;-webkit-transform-origin:center bottom;transform-origin:center bottom}@-webkit-keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(42px,0,0);transform:scale3d(.475,.475,.475) translate3d(42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(-2000px,0,0);transform:scale(.1) translate3d(-2000px,0,0)}}@keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(42px,0,0);transform:scale3d(.475,.475,.475) translate3d(42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(-2000px,0,0);transform:scale(.1) translate3d(-2000px,0,0)}}.animate__zoomOutLeft{-webkit-animation-name:zoomOutLeft;animation-name:zoomOutLeft;-webkit-transform-origin:left center;transform-origin:left center}@-webkit-keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-42px,0,0);transform:scale3d(.475,.475,.475) translate3d(-42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(2000px,0,0);transform:scale(.1) translate3d(2000px,0,0)}}@keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-42px,0,0);transform:scale3d(.475,.475,.475) translate3d(-42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(2000px,0,0);transform:scale(.1) translate3d(2000px,0,0)}}.animate__zoomOutRight{-webkit-animation-name:zoomOutRight;animation-name:zoomOutRight;-webkit-transform-origin:right center;transform-origin:right center}@-webkit-keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomOutUp{-webkit-animation-name:zoomOutUp;animation-name:zoomOutUp;-webkit-transform-origin:center bottom;transform-origin:center bottom}@-webkit-keyframes slideInDown{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInDown{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInDown{-webkit-animation-name:slideInDown;animation-name:slideInDown}@-webkit-keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInLeft{-webkit-animation-name:slideInLeft;animation-name:slideInLeft}@-webkit-keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInRight{-webkit-animation-name:slideInRight;animation-name:slideInRight}@-webkit-keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInUp{-webkit-animation-name:slideInUp;animation-name:slideInUp}@-webkit-keyframes slideOutDown{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes slideOutDown{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}.animate__slideOutDown{-webkit-animation-name:slideOutDown;animation-name:slideOutDown}@-webkit-keyframes slideOutLeft{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes slideOutLeft{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}.animate__slideOutLeft{-webkit-animation-name:slideOutLeft;animation-name:slideOutLeft}@-webkit-keyframes slideOutRight{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes slideOutRight{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.animate__slideOutRight{-webkit-animation-name:slideOutRight;animation-name:slideOutRight}@-webkit-keyframes slideOutUp{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes slideOutUp{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}.animate__slideOutUp{-webkit-animation-name:slideOutUp;animation-name:slideOutUp}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-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]){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;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;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::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}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-keyword,.hljs-formula{color:#c678dd}.hljs-section,.hljs-name,.hljs-selector-tag,.hljs-deletion,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string{color:#98c379}.hljs-attr,.hljs-variable,.hljs-template-variable,.hljs-type,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-number{color:#d19a66}.hljs-symbol,.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-title.class_,.hljs-class .hljs-title{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline} diff --git a/generator-code/src/main/resources/static/static/js/404-DYq3ki41.js b/generator-code/src/main/resources/static/static/js/404-DYq3ki41.js deleted file mode 100644 index faf7fb0..0000000 --- a/generator-code/src/main/resources/static/static/js/404-DYq3ki41.js +++ /dev/null @@ -1 +0,0 @@ -import{h as v,c as a,a as f,p as s,b as t,q as e,t as l,j as c}from"./vendor-BT0L8wkZ.js";import{_ as d}from"./index-BZjZ3Az-.js";const i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJgAAACKCAMAAABhAnODAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAMAUExURUdwTPf6/v////f6/v////////////z9//////////////////7+//v///f6/v////f5/vz///////////////j6/vf7/v////////////v8//////j7/v7+//////////////////////////////////////v8/+nx/fv9//b6/vr7/v////f5/vj7//////j7/vj7//f5/vD2/f///////////////+jy/P////////j6//////f6/v////f7/vj6/vf6/vL3/f////////j7/vv8//////3///f6/vf6/vb6/v////r8//f7/fL3/P///////////+jw/PT4/v3+//////////////7+//b6/v///////+jx/P///+jy/f////f6/uz0/eny/PT9/+jx/PT4/uz0/f////f6/vb6/vv9//z9//////3+//r8//f6/vj7/+ny/P////f6/////////+jw/Pf6/v////f6/vj7/v////f6/fT4//j7//b7//////b6/evy/P///+vz/P////////T3/v///+jx/P3+/////+nx+/f6/v///////+jw/Pj6/v///+nx/P///+vz/P////////////j7/vj7//H2/P///+zz/Pb6/v////////////P3/v39/////+/1/v///+jx++jx/Pj6/unx/ff6/+fx/Pf6/+jx/Ony/Ojx/Pz+//H3/v////7+//b6/vj8//7+//b5/v////b6/uz0/ff6/fj6//v8//j5/fb7//////v9/vn8//v8//f5//f6/vP3/Ojx/ez0/u31/v////f5/f///////////+z0/Pz9/+rz/+nw++30/Or0/fj//+jx/f////////f7//v9/+fw++nw/f////b4/v///+jw/f////P4/vj//+fz+/r8/u/2/unw//////f5/fb6/vb7//////b6/f3+//////L3/vr9/+/1/fT3/ff7/v////n8/vf6/v///+fw+/b5/fP4/f////T4/lxP5j4AAAD6dFJOUwD+9P3lAfb9pvsC/BIO+gnmDM3h7/PtBMLqvPn0NU5AId3+gajrK8T0Fc2/29/S4sXC47/4W8ho+psHMMD8GLvN97nyGfG++h74yMsGbJ/Dddjx5L5E1t/XN9PUjvzo7dHh2uge/sLBtdjs7r/s48rW08bFtMrE8NxS2cAKpy18c2OR0SPPiCnLvv35mdS9bV7z1Tlbl8woy7ToVMuw1c+63qLFM3zOD9i20N+6+GSqT5pLvOfb0Uifrn/ux5e3z4s7G41QVlrEvnzMx7GCaYXt4vw+icDeJG0alHj2jGl56FB5rcAmQfXBInOF13KSlNCEtNSBpOo946pl6lljAAAF7ElEQVR42u3ceVQTRxwH8AVCyk0gUAhKqwFRFAKIgALhEgS5WlBUsCCHCNJntYBCDQL6tGKtVbxqRUXrgYp4lko98BZ7n/a+Sy97X7QO62uRPHgBdjeTzcxm+l6+/2f4PDKZ3+zsb5eiMOdyw8UAZ9/I87VXqx0oQmJ/qfb2eFojkoDUmuvuNgZFvXf9lyQ7mjlnk5bVeBnA1JRRU15Cc+Xwr0CUIKjJqvpo6kYTThQd7S8FPZkl2DfqffKHp+JobZEEpAN1yuzxm5LdU5b50hBRLJSD/rxihRWVcO2K/1QYFG3XkQYG5ElsKNuU1PE0ZLrGycDgnMEFe4GmzSQKf5UqcamW2bVo9ATAkOV4XLWafzpufqIqUjU2j2HxUvo7AuZY34fDdUnJOJPyolTtRwIU2/tWjXvdpIA14k0Ylgct06srK6C9PbLDbTLgyoKnka+lkTBTXukHtEQaixj2KtRvcSHQmlxbpK7TJjCujQAia5IRuuaWwLicR8HAgKc5MpdLItQXeQHAZT8y2ApUE0wdC1SuBiiXxFRo2NdxMC6TGUBgmL0C6h82GggNS4VyLbUUGnYUyhU9EwgMC4tG/UUigv3lC7PmJwHBYd2FzUW/H8ni3k2XyAwAU6dia0xM0lk2WDAwGKw32fnfnepg2JapgIFh6sx5KXDej5o7al9TMmC9mZh/rrNRXRHscgFBMHUKDjyQJHED5MF6s5ZU2D1GmBFmhBlhRpgR9n+FiUV9sbAiCobkJBszDHiQCgOvkQqTP0YoDEy4n1AYSA8jFAZEIwiFAR9vQmFgmwOhMLCbVJilEWaEGWGQ2bS1nkCY/XLHno8oAle1EAVbeeWN/r1wVOC6bDJgVieL5QM/6pR482ChoWE2t0Yyfly292azAWH72sQcQzzSWTTNELDkIIhD+9bpRQXCwhJeh73HIf/jVGmFULCMndY6jRZ/IeZcPXaY7fo0PiOKy+VYYV5bTHkN6LMYAHwwl2vh/IaTlskBPljsGRG/wXKWWAJUkQ1h/e0Zz28oJ1cxMpbpb02DWBFtfjyHCk9Hxhr289Crt9u0WRRXIxrbUK6jkLGs2xh6d0+rWzkO62aTl4mQscBXqxmmfVV/M2uPDbo/IXgPOtZud8Zl4uKAFpjnoWyOaehYwSznPGFDuiGz3EZyDzU7Fx1r9hdse0HGprBHOWw+29Cx9mxgPRdOYe2udfNhGsovWI6M9VyKC2vRvszVfDV/ymCbDOEy7/RZFXd/Mnd7k6YN5TIvfryJa+91FaJjp3JKq3oo18nIWPEfRnDuCR0g28wrx7UOW7IAGUv+rLZTzRWw7e+0MgfdT3Gn1mda9imhYf8gY63J1H452wjtckbFWpwBceX4E7SLfhgNawbU/Y+5w6FdXUhY0g1wt//K4f9haxGwZOsh274b4F3b9Wel74c9w2+SQLvsECzz8E9wnRdu5sdv+QD+PC7TDNoVp+cyb7FSl9Z8hVAzP9xdp3PVj+BdJXotXLo+ghRTAusy0WcjGKJz30J3y8s3JJhnvqkHj8d37x61PbFqep5W11TeV7CTIvS5lbzrRiU37GOermdW690V8G7nIuS7Ckd+LQFD7g0VzMtiWdZ4XRHNDOL/yNHQ1um9jUo0a6vTrVDE3U1jdowd1K9vxuMw6SH9nmtma+o+UKe5SftW5/LjOYKicMDuLiK76vqugaMxlx/db4zm1/UWhrcwlx9ed2zf3PH5cNzlh9+t5O7uf3GXH76wO7jLD3YY3/KDGca//GCFSYPMKQJhTg+GUhR5MH3LDyaY/uUHD8zVnaIIhM3C8gIGvWE5IdjeP6IPDFn5YUo9b5j1pFgKY6o2H5rIC1aM/2VFNp+WFuoKQ1t+OA47v1ynCwx1+eFM9TvNkDD05UdLzN8+MUc7DEf5gTgtO35sDCcMT/mBisPmQ9msMNdMypDxfr+UEYat/OiQ7188OBiWE+JCEZGwT6ZpwMQexLw7j6KsvjlRoYZhLj88Enr8WEv3nWIvisDYdv5JGdOf/wBvCt5Mksy8ZAAAAABJRU5ErkJggg==",j={class:"page-container"},A={class:"bullshit"},n=d(v({__name:"404",setup(v){const d=l();return(v,l)=>(f(),a("div",j,[l[2]||(l[2]=s('
404404404404
',1)),t("div",A,[l[1]||(l[1]=s('
OOPS!
All rights reserved wallstreetcn
The webmaster said that you can not enter this page...
Please check that the URL you entered is correct, or click the button below to return to the homepage.
',4)),t("a",{class:"bullshit__return-home",href:"/",onClick:l[0]||(l[0]=e((v=>c(d).replace("/")),["prevent"]))}," Back to home ")])]))}}),[["__scopeId","data-v-128c8218"]]);export{n as default}; diff --git a/generator-code/src/main/resources/static/static/js/index-BZjZ3Az-.js b/generator-code/src/main/resources/static/static/js/index-BZjZ3Az-.js deleted file mode 100644 index 5e62f6b..0000000 --- a/generator-code/src/main/resources/static/static/js/index-BZjZ3Az-.js +++ /dev/null @@ -1,2 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["static/js/404-DYq3ki41.js","static/js/vendor-BT0L8wkZ.js","static/css/vendor-lSrybVH6.css","static/css/404-XvabTZcV.css","static/js/index-DwLjqHOd.js","static/js/index-Dn1v0MTU.js","static/js/table-R7-h5oL5.js","static/js/index-DNjCtrgM.js","static/css/index-DFq_RgoD.css"])))=>i.map(i=>d[i]); -import{o as e,c as t,a as n,b as r,d as o,r as s,e as a,f as i,g as c,s as l,h as d,u,i as m,j as p,N as f,w as h,k as _,l as y,T as v,m as E,n as g}from"./vendor-BT0L8wkZ.js";!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))t(e);new MutationObserver((e=>{for(const n of e)if("childList"===n.type)for(const e of n.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&t(e)})).observe(document,{childList:!0,subtree:!0})}function t(e){if(e.ep)return;e.ep=!0;const t=function(e){const t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?t.credentials="include":"anonymous"===e.crossOrigin?t.credentials="omit":t.credentials="same-origin",t}(e);fetch(e.href,t)}}();const w={},P=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){document.getElementsByTagName("link");const e=document.querySelector("meta[property=csp-nonce]"),n=(null==e?void 0:e.nonce)||(null==e?void 0:e.getAttribute("nonce"));r=Promise.allSettled(t.map((e=>{if((e=function(e){return"/"+e}(e))in w)return;w[e]=!0;const t=e.endsWith(".css"),r=t?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${e}"]${r}`))return;const o=document.createElement("link");return o.rel=t?"stylesheet":"modulepreload",t||(o.as="script"),o.crossOrigin="",o.href=e,n&&o.setAttribute("nonce",n),document.head.appendChild(o),t?new Promise(((t,n)=>{o.addEventListener("load",t),o.addEventListener("error",(()=>n(new Error(`Unable to preload CSS for ${e}`))))})):void 0})))}function o(e){const t=new Event("vite:preloadError",{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then((t=>{for(const e of t||[])"rejected"===e.status&&o(e.reason);return e().catch(o)}))},b=[{path:"/error",component:()=>P((()=>import("./404-DYq3ki41.js")),__vite__mapDeps([0,1,2,3])),meta:{hidden:!0}}],L=(e,t)=>{const n=e.__vccOpts||e;for(const[r,o]of t)n[r]=o;return n},O={class:"container m-auto"},x={class:"container mx-auto"};const A=L({},[["render",function(e,a){const i=s("router-view");return n(),t("div",O,[a[0]||(a[0]=r("h1",{class:"mt-4 text-center font-bold font-size-[22px] c-primary"},"代码生成器",-1)),r("main",x,[o(i)]),a[1]||(a[1]=r("footer",{class:"my-4 text-center"},[r("p",null,"© 2025 Bunny.保留所有权利.")],-1))])}]]),j=[...[{path:"/redirect",component:A,meta:{hidden:!0},children:[{path:"/redirect/:path(.*)",component:()=>P((()=>import("./index-DwLjqHOd.js")),__vite__mapDeps([4,1,2]))}]}],...[{path:"/",name:"/",component:A,redirect:"/home",meta:{transition:"fade"},children:[{path:"/home",name:"home",component:()=>P((()=>import("./index-Dn1v0MTU.js")),__vite__mapDeps([5,1,2,6]))},{path:"/generator-code",name:"generatorCode",component:()=>P((()=>import("./index-DNjCtrgM.js")),__vite__mapDeps([7,1,2,6,8]))}]}],...b],k=a({history:i(),routes:j,scrollBehavior:()=>({left:0,top:0,behavior:"smooth"})}),S=c();const T={install(t){(e=>{e.use(k)})(t),function(e){S.use(l),e.use(S)}(t),(t=>{t.use(e)})(t)}};const I=L(d({setup(){window.$message=u()}}),[["render",function(e,t,n,r,o,s){return" "}]]);g(d({__name:"App",setup:e=>(e,t)=>{const r=s("router-view");return n(),m(p(f),null,{default:h((()=>[o(p(_),null,{default:h((()=>[o(I),o(p(y),null,{default:h((()=>[o(r,null,{default:h((({Component:e,route:t})=>[o(v,{name:t.meta.transition||"fade-transform",mode:"out-in"},{default:h((()=>[(n(),m(E(e),{key:t.path}))])),_:2},1032,["name"])])),_:1})])),_:1})])),_:1})])),_:1})}})).use(T).mount("#app");export{L as _}; diff --git a/generator-code/src/main/resources/static/static/js/index-DNjCtrgM.js b/generator-code/src/main/resources/static/static/js/index-DNjCtrgM.js deleted file mode 100644 index 9045de9..0000000 --- a/generator-code/src/main/resources/static/static/js/index-DNjCtrgM.js +++ /dev/null @@ -1 +0,0 @@ -var e=Object.defineProperty,a=Object.defineProperties,t=Object.getOwnPropertyDescriptors,l=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable,s=(a,t,l)=>t in a?e(a,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):a[t]=l,o=(e,a,t)=>new Promise(((l,r)=>{var n=e=>{try{o(t.next(e))}catch(a){r(a)}},s=e=>{try{o(t.throw(e))}catch(a){r(a)}},o=e=>e.done?l(e.value):Promise.resolve(e.value).then(n,s);o((t=t.apply(e,a)).next())}));import{H as u,d as i,v as d,D as c,h as p,I as m,J as v,A as g,i as f,a as b,j as y,C as h,z as _,c as w,b as k,K as C,w as O,E as N,L as q,M as S,u as x,O as P,P as U,Q as j,R as L,S as W,U as R,V as T,W as M,F as A,X as D,Y as I,o as E,Z as V,_ as $,$ as F,a0 as z,a1 as K,a2 as Q,a3 as B,a4 as H,B as J,t as Z,a5 as X,a6 as Y}from"./vendor-BT0L8wkZ.js";import{s as G,u as ee}from"./table-R7-h5oL5.js";import{_ as ae}from"./index-BZjZ3Az-.js";const te=u("vmsStore",{state:()=>({generators:[],serverOptions:[],webOptions:[],formValue:{author:"Bunny",packageName:"cn.bunny.services",requestMapping:"/api",className:"",tableName:"",simpleDateFormat:"yyyy-MM-dd HH:mm:ss",tablePrefixes:"t_,sys_,qrtz_,log_",comment:"",path:[]},formOption:{generatorServer:[],generatorWeb:[]}}),getters:{},actions:{generator(e){return o(this,null,(function*(){const o=yield(e=>G({url:"/vms/generator",method:"post",data:e}))(e);this.generators=o.data.map((e=>{return o=((e,a)=>{for(var t in a||(a={}))r.call(a,t)&&s(e,t,a[t]);if(l)for(var t of l(a))n.call(a,t)&&s(e,t,a[t]);return e})({},e),u={path:e.path.replace(".vm","")},a(o,t(u));var o,u})),window.$message.success(`生成成功,共 ${this.generators.length} 数据`)}))},getVmsResourcePathList(){return o(this,null,(function*(){const e=yield G({url:"/vms/vmsResourcePathList",method:"get"});if(200!==e.code)return{};this.webOptions=e.data.web,this.serverOptions=e.data.server}))}}}),le=[{title:"序号",key:"no",titleAlign:"center",align:"center",render:(e,a)=>a+1},{title:"列名称",key:"columnName",titleAlign:"center",align:"center",render:e=>i(d,{type:"primary"},{default:()=>[e.columnName]})},{title:"字段名称",key:"lowercaseName",titleAlign:"center",align:"center",render:e=>i(d,null,{default:()=>[e.lowercaseName]})},{title:"数据库字段类型",key:"jdbcType",titleAlign:"center",align:"center",render:e=>i(d,null,{default:()=>[e.jdbcType]})},{title:"Java类型",key:"javaType",titleAlign:"center",align:"center",render:e=>i(d,{type:"warning"},{default:()=>[e.javaType]})},{title:"是否为主键",key:"isPrimaryKey",titleAlign:"center",align:"center",render:e=>e.isPrimaryKey?i(d,{type:"error"},{default:()=>[c("是")]}):i(d,{type:"success"},{default:()=>[c("否")]})},{title:"字段注释",key:"comment",titleAlign:"center",align:"center",render:e=>i(d,{type:"info"},{default:()=>[e.comment]})}],re=p({__name:"index",setup(e){const a=m(),t=ee(),l=v([]),r=v(!1),n=()=>o(this,null,(function*(){r.value=!0;const e=a.query.tableName;l.value=yield t.getTableColumnInfo(e),r.value=!1}));return g((()=>{n()})),(e,a)=>(b(),f(y(h),{bordered:!0,columns:y(le),data:l.value,loading:r.value},null,8,["columns","data","loading"]))}}),ne={class:"database-info"},se=ae(p({__name:"index",setup(e){const a=ee(),{databaseInfoMeta:t}=_(a);return g((()=>{a.getDatabaseInfoMeta()})),(e,a)=>(b(),w("div",ne,[k("p",null,[a[0]||(a[0]=c(" 数据库产品名称: ")),i(y(C),{type:"primary"},{default:O((()=>{var e;return[c(N(null==(e=y(t))?void 0:e.databaseProductName),1)]})),_:1})]),k("p",null,[a[1]||(a[1]=c(" 数据库产品版本: ")),i(y(C),{type:"primary"},{default:O((()=>{var e;return[c(N(null==(e=y(t))?void 0:e.databaseProductVersion),1)]})),_:1})]),k("p",null,[a[2]||(a[2]=c(" 驱动名称: ")),i(y(C),{type:"primary"},{default:O((()=>{var e;return[c(N(null==(e=y(t))?void 0:e.driverName),1)]})),_:1})]),k("p",null,[a[3]||(a[3]=c(" 数据库驱动版本: ")),i(y(C),{type:"primary"},{default:O((()=>{var e;return[c(N(null==(e=y(t))?void 0:e.driverVersion),1)]})),_:1})]),k("p",null,[a[4]||(a[4]=c(" 数据库用户: ")),i(y(C),{type:"primary"},{default:O((()=>{var e;return[c(N(null==(e=y(t))?void 0:e.username),1)]})),_:1})])]))}}),[["__scopeId","data-v-5045df9f"]]),oe=p({__name:"select-button-group",props:{data:{type:Array,required:!0},selected:{type:Array,default:()=>[]},idKey:{type:String,default:"name"}},emits:["update:selected"],setup(e,{emit:a}){const t=e,l=a,r=()=>{const e=t.data.map((e=>e[t.idKey]));l("update:selected",[...e])},n=()=>{const e=t.selected,a=t.data.map((e=>e[t.idKey])).filter((a=>!e.includes(a)));l("update:selected",a)},s=()=>{l("update:selected",[])};return(e,a)=>(b(),f(y(q),{size:"small"},{default:O((()=>[i(y(S),{round:"",type:"primary",onClick:r},{default:O((()=>a[0]||(a[0]=[c("全选")]))),_:1}),i(y(S),{type:"warning",onClick:n},{default:O((()=>a[1]||(a[1]=[c("反选")]))),_:1}),i(y(S),{round:"",type:"error",onClick:s},{default:O((()=>a[2]||(a[2]=[c("全不选")]))),_:1})])),_:1}))}});function ue(e,a){const t=new File([e],a,{type:"text/plain"}),l=URL.createObjectURL(t),r=document.createElement("a");r.href=l,r.download=a,document.body.appendChild(r),r.click(),requestIdleCallback((()=>{document.body.removeChild(r),URL.revokeObjectURL(r.href)}))}const ie=te(),{formValue:de,formOption:ce}=_(ie),pe=e=>{de.value.tableName=e.toString();let a=e;de.value.tablePrefixes.split(/[,,]/).forEach((e=>{a=a.replace(e,"")})),de.value.className=a},me=()=>{ce.value.generatorServer=ie.serverOptions.map((e=>e.name)),ce.value.generatorWeb=ie.webOptions.map((e=>e.name))},ve=()=>{const e=ie.serverOptions.map((e=>e.name)),a=ce.value.generatorServer;ce.value.generatorServer=e.filter((e=>!a.includes(e)));const t=ie.webOptions.map((e=>e.name)),l=ce.value.generatorWeb;ce.value.generatorWeb=t.filter((e=>!l.includes(e)))},ge=()=>{ce.value.generatorServer=[],ce.value.generatorWeb=[],de.value.path=[]},fe=()=>{const e=ce.value.generatorWeb,a=ce.value.generatorServer;de.value.path=[...a,...e],de.value.path.length<=0&&window.$message.error("选择要生成的模板")},be=te(),{formOption:ye}=_(be),he=()=>ye.value.generatorServer.length>0||ye.value.generatorWeb.length>0,_e={author:{required:!0,trigger:["blur","change","input"],message:"作者不能为空"},packageName:{required:!0,trigger:["blur","change","input"],message:"包名不能为空"},requestMapping:{required:!0,trigger:["blur","change","input"],message:"请求路径不能为空"},className:{required:!0,trigger:["blur","change","input"],message:"类名不能为空"},tableName:{required:!0,trigger:["blur","change","input"],message:"表名不能为空"},simpleDateFormat:{required:!0,trigger:["blur","change","input"],message:"日期格式不能为空"},generatorServer:[{required:!0,trigger:["blur","change","input"],message:"选择要生成的服务端",validator:he}],generatorWeb:[{required:!0,trigger:["blur","change","input"],message:"选择要生成的前端",validator:he}]},we={class:"flex flex-wrap flex-col w-full"},ke=p({__name:"generator-form",setup(e){const a=m(),t=te(),{formValue:l,formOption:r}=_(t),n=x(),s=v(),u=P((()=>!(r.value.generatorWeb.length>0||r.value.generatorServer.length>0))),d=v(),p=e=>{var a;e.preventDefault(),null==(a=s.value)||a.validate((e=>o(this,null,(function*(){e?e.forEach((e=>{e.forEach((e=>{n.error(`${e.message}->${e.field}`)}))})):(fe(),yield t.generator(l.value))}))))},h=()=>{t.generators=[]},C=()=>{t.generators.forEach((e=>{ue(e.code,e.path.split("/")[1])}))},E=()=>o(this,null,(function*(){fe();var e;(e=>{try{const a=e.headers["content-disposition"];let t="download.zip";if(a){const e=a.match(/filename="?(.+)"?/);e&&e[1]&&(t=e[1])}const l=window.URL.createObjectURL(new Blob([e.data])),r=document.createElement("a");r.href=l,r.setAttribute("download",t),document.body.appendChild(r),r.click(),r.remove(),window.URL.revokeObjectURL(l)}catch(a){}})(yield(e=l.value,G({url:"/vms/downloadByZip",method:"POST",data:e,responseType:"blob"})))})),V=()=>o(this,null,(function*(){if(!d.value)return void n.warning("SQL 为空");const e={sql:d.value},{data:a}=yield(e=>G({url:"/sqlParser/tableInfo",method:"POST",params:e}))(e);l.value.comment=a.comment,l.value.tableName=a.tableName,pe(a.tableName)}));return g((()=>{const e=a.query.tableName;pe(e),t.getVmsResourcePathList()})),(e,a)=>(b(),f(y(U),{ref_key:"formRef",ref:s,"label-width":80,model:y(l),rules:y(_e)},{default:O((()=>[i(y(j),{cols:"24","item-responsive":"",responsive:"screen"},{default:O((()=>[i(y(L),{label:"如果有sql会生成sql中的信息,点击【解析SQL】会替换【表名称】和【注释名称】",path:"sql",span:"24"},{default:O((()=>[k("div",we,[i(y(W),{value:d.value,"onUpdate:value":a[0]||(a[0]=e=>d.value=e),autosize:{minRows:3},class:"w-full",placeholder:"SQL语句",type:"textarea"},null,8,["value"]),i(y(q),{class:"mt-2"},{default:O((()=>[i(y(S),{type:"primary",onClick:V},{default:O((()=>a[14]||(a[14]=[c("解析SQL")]))),_:1}),i(y(S),{type:"error",onClick:a[1]||(a[1]=e=>d.value=null)},{default:O((()=>a[15]||(a[15]=[c("清空输入框")]))),_:1})])),_:1})])])),_:1})])),_:1}),i(y(j),{cols:24,"x-gap":5,"item-responsive":"",responsive:"screen"},{default:O((()=>[i(y(L),{label:"作者名称",path:"author",span:"12 m:8 l:6"},{default:O((()=>[i(y(W),{value:y(l).author,"onUpdate:value":a[2]||(a[2]=e=>y(l).author=e),placeholder:"作者名称"},null,8,["value"])])),_:1}),i(y(L),{label:"requestMapping名称",path:"requestMapping",span:"12 m:8 l:6"},{default:O((()=>[i(y(W),{value:y(l).requestMapping,"onUpdate:value":a[3]||(a[3]=e=>y(l).requestMapping=e),placeholder:"requestMapping名称"},null,8,["value"])])),_:1}),i(y(L),{label:"表名称",path:"tableName",span:"24 m:8 l:6"},{default:O((()=>[i(y(W),{value:y(l).tableName,"onUpdate:value":a[4]||(a[4]=e=>y(l).tableName=e),placeholder:"表名称"},null,8,["value"])])),_:1}),i(y(L),{label:"类名称",path:"className",span:"24 m:8 l:6"},{default:O((()=>[i(y(W),{value:y(l).className,"onUpdate:value":a[5]||(a[5]=e=>y(l).className=e),placeholder:"类名称"},null,8,["value"])])),_:1}),i(y(L),{label:"包名称",path:"packageName",span:"24 m:8 l:6"},{default:O((()=>[i(y(W),{value:y(l).packageName,"onUpdate:value":a[6]||(a[6]=e=>y(l).packageName=e),placeholder:"包名称"},null,8,["value"])])),_:1}),i(y(L),{label:"时间格式",path:"simpleDateFormat",span:"24 m:8 l:6"},{default:O((()=>[i(y(W),{value:y(l).simpleDateFormat,"onUpdate:value":a[7]||(a[7]=e=>y(l).simpleDateFormat=e),placeholder:"时间格式"},null,8,["value"])])),_:1}),i(y(L),{label:"去除开头前缀",path:"tablePrefixes",span:"12 m:8 l:6"},{default:O((()=>[i(y(W),{value:y(l).tablePrefixes,"onUpdate:value":a[8]||(a[8]=e=>y(l).tablePrefixes=e),placeholder:"去除开头前缀"},null,8,["value"])])),_:1}),i(y(L),{label:"注释名称",path:"comment",span:"12 m:8 l:6"},{default:O((()=>[i(y(W),{value:y(l).comment,"onUpdate:value":a[9]||(a[9]=e=>y(l).comment=e),placeholder:"修改注释名称"},null,8,["value"])])),_:1})])),_:1}),i(y(j),{cols:24,"x-gap":5,"item-responsive":"",responsive:"screen"},{default:O((()=>[i(y(L),{label:"生成后端",path:"generatorServer",span:"24 m:24 l:12"},{default:O((()=>[i(y(R),{value:y(r).generatorServer,"onUpdate:value":a[11]||(a[11]=e=>y(r).generatorServer=e)},{default:O((()=>[i(y(T),null,{default:O((()=>[(b(!0),w(A,null,M(y(t).serverOptions,((e,a)=>(b(),f(y(I),{key:a,value:e.name},{default:O((()=>[c(N(e.label),1)])),_:2},1032,["value"])))),128)),i(oe,{selected:y(r).generatorServer,"onUpdate:selected":a[10]||(a[10]=e=>y(r).generatorServer=e),data:y(t).serverOptions,"id-key":"name"},null,8,["selected","data"])])),_:1})])),_:1},8,["value"])])),_:1}),i(y(L),{label:"生成前端",path:"generatorWeb",span:"24 m:24 l:12"},{default:O((()=>[i(y(R),{value:y(r).generatorWeb,"onUpdate:value":a[13]||(a[13]=e=>y(r).generatorWeb=e)},{default:O((()=>[i(y(T),null,{default:O((()=>[(b(!0),w(A,null,M(y(t).webOptions,((e,a)=>(b(),f(y(I),{key:a,value:e.name,"onUpdate:value":a=>e.name=a},{default:O((()=>[c(N(e.label),1)])),_:2},1032,["value","onUpdate:value"])))),128)),i(oe,{selected:y(r).generatorWeb,"onUpdate:selected":a[12]||(a[12]=e=>y(r).generatorWeb=e),data:y(t).webOptions,"id-key":"name"},null,8,["selected","data"])])),_:1})])),_:1},8,["value"])])),_:1})])),_:1}),i(y(j),{cols:"24","item-responsive":"",responsive:"screen"},{default:O((()=>[i(y(D),{class:"mt-2",span:"24 m:12 l:8"},{default:O((()=>[i(y(S),{"attr-type":"button",type:"success",onClick:y(me)},{default:O((()=>a[16]||(a[16]=[c("全部选择")]))),_:1},8,["onClick"]),i(y(S),{"attr-type":"button",type:"warning",onClick:y(ve)},{default:O((()=>a[17]||(a[17]=[c("全部反选")]))),_:1},8,["onClick"]),i(y(S),{"attr-type":"button",type:"error",onClick:y(ge)},{default:O((()=>a[18]||(a[18]=[c("全选取消")]))),_:1},8,["onClick"])])),_:1}),i(y(D),{class:"mt-2",span:"24 m:12 l:8"},{default:O((()=>[i(y(S),{"attr-type":"button",type:"success",onClick:p},{default:O((()=>a[19]||(a[19]=[c("开始生成")]))),_:1}),i(y(S),{"attr-type":"button",type:"error",onClick:h},{default:O((()=>a[20]||(a[20]=[c("清空已生成")]))),_:1}),i(y(S),{disabled:!(y(t).generators.length>0),"attr-type":"button",type:"primary",onClick:C},{default:O((()=>[c(" 下载全部 "+N(y(t).generators.length),1)])),_:1},8,["disabled"])])),_:1}),i(y(D),{class:"mt-2",span:"24 m:12 l:8"},{default:O((()=>[i(y(S),{disabled:y(u),"attr-type":"button",class:"w-full",type:"success",onClick:E},{default:O((()=>a[21]||(a[21]=[c(" 下载zip ")]))),_:1},8,["disabled"])])),_:1})])),_:1})])),_:1},8,["model","rules"]))}}),Ce=e=>{const a=document.createElement("textarea");a.value=e,a.style.position="fixed",document.body.appendChild(a),a.select();try{document.execCommand("copy")?window.$message.success("复制成功!"):window.$message.success("复制失败!")}catch(t){window.$message.success("复制失败!请手动复制")}finally{document.body.removeChild(a)}},Oe=p({__name:"generator-preview",setup(e){const a=E.component,t=V(),l=x(),r=te();return(e,n)=>$((b(),f(y(z),{class:"mt-4 p-2 border"},{default:O((()=>[(b(!0),w(A,null,M(y(r).generators,((e,r)=>(b(),f(y(K),{key:r,name:e.path,title:e.path,class:"pos-relative"},{"header-extra":O((()=>[i(y(S),{quaternary:"",type:"info",onClick:a=>((e,a)=>{const r=a.split("/"),n=v(r.at(-1));t.info({title:"修改文件名",positiveText:"下载",negativeText:"取消",content:()=>i(W,{placeholder:"Tiny Input",clearable:!0,value:n.value,onInput:e=>n.value=e},null),onPositiveClick:()=>{ue(e,n.value)},onNegativeClick:()=>{l.info("取消下载")}})})(e.code,e.path)},{default:O((()=>n[0]||(n[0]=[c("下载")]))),_:2},1032,["onClick"])])),default:O((()=>[i(y(S),{class:"pos-absolute right-0",color:"#ff69b4",quaternary:"",onClick:a=>y(Ce)(e.code)},{icon:O((()=>[i(y(Q),null,{default:O((()=>[i(y(B))])),_:1})])),default:O((()=>[n[1]||(n[1]=c(" 复制 "))])),_:2},1032,["onClick"]),i(y(a),{autodetect:!0,code:e.code,language:"JavaScript"},null,8,["code"])])),_:2},1032,["name","title"])))),128))])),_:1},512)),[[F,y(r).generators.length>0]])}}),Ne=p({__name:"index",setup(e){const a=Z(),t=m(),l=ee(),r=te(),{formValue:n}=_(r),s=H({tableName:"",comment:"",tableCat:"",tableType:""}),u=()=>o(this,null,(function*(){const e=t.query.tableName,a=yield l.getTableMetaData(e);Object.assign(s,a),n.value.comment=s.comment}));return g((()=>{u()})),(e,l)=>(b(),f(y(J),null,{header:O((()=>[i(y(J),{title:"数据库信息"},{default:O((()=>[k("span",{class:"color-blue cursor-pointer",onClick:l[0]||(l[0]=e=>y(a).push("/"))},"回到首页"),k("ul",null,[k("li",null,"表名:"+N(y(t).query.tableName),1),k("li",null,"表注释:"+N(s.comment),1),k("li",null,"数据库名:"+N(s.tableCat),1),k("li",null,"类型:"+N(s.tableType),1)])])),_:1})])),default:O((()=>[i(y(Y),{animated:"",type:"line"},{default:O((()=>[i(y(X),{name:"generator-code",tab:"生成"},{default:O((()=>[i(ke),i(Oe)])),_:1}),i(y(X),{name:"connect-info",tab:"连接信息"},{default:O((()=>[i(se)])),_:1}),i(y(X),{name:"columns-info",tab:"列字段"},{default:O((()=>[i(re)])),_:1})])),_:1})])),_:1}))}});export{Ne as default}; diff --git a/generator-code/src/main/resources/static/static/js/index-Dn1v0MTU.js b/generator-code/src/main/resources/static/static/js/index-Dn1v0MTU.js deleted file mode 100644 index 140c9f4..0000000 --- a/generator-code/src/main/resources/static/static/js/index-Dn1v0MTU.js +++ /dev/null @@ -1 +0,0 @@ -import{t as e,d as t,v as a,x as l,y as n,h as r,z as s,A as i,c as o,a as c,w as u,j as d,B as m,C as p,F as b,b as g,D as y,E as f,G as v}from"./vendor-BT0L8wkZ.js";import{u as h,g as k}from"./table-R7-h5oL5.js";function D(){const l=e(),n=e=>{l.replace({path:"/generator-code",query:{tableName:e.tableName}}).then()};return[{title:"序号",key:"no",titleAlign:"center",align:"center",render:(e,t)=>t+1},{title:"数据库名称",key:"tableCat",titleAlign:"center",align:"center",render:e=>t(a,{type:"primary"},{default:()=>[e.tableCat]})},{title:"表类型",key:"tableType",titleAlign:"center",align:"center",render:e=>t(a,null,{default:()=>[e.tableType]})},{title:"表名",key:"tableName",titleAlign:"center",align:"center",render:e=>t(a,{type:"info",onClick:()=>n(e)},{default:()=>[e.tableName]})},{title:"注释内容",key:"comment",titleAlign:"center",align:"center",render:e=>t(a,{type:"info",onClick:()=>n(e)},{default:()=>[e.comment]})}]}const L=({node:e,option:t})=>l(n,null,{trigger:()=>e,default:()=>t.comment}),N={class:"mt-2"},x=r({__name:"index",setup(e){const l=h(),{tableList:n,dbList:r,tableListLoading:x,currentDatabaseName:A}=s(l),_=e=>{l.currentDatabaseName=null!=e?e:void 0,l.getDatabaseTableList()},C=()=>{return e=this,t=null,a=function*(){const e=yield k();200===e.code&&(l.currentDatabaseName=e.data),yield l.getDatabaseTableList()},new Promise(((l,n)=>{var r=e=>{try{i(a.next(e))}catch(t){n(t)}},s=e=>{try{i(a.throw(e))}catch(t){n(t)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,s);i((a=a.apply(e,t)).next())}));var e,t,a};return i((()=>{C(),l.getDatabaseList()})),(e,l)=>(c(),o(b,null,[t(d(m),{class:"my-2",title:"提示"},{default:u((()=>[g("p",null,[l[2]||(l[2]=y(" 点击 ")),t(d(a),null,{default:u((()=>l[0]||(l[0]=[y("表名")]))),_:1}),l[3]||(l[3]=y(" 或 ")),t(d(a),null,{default:u((()=>l[1]||(l[1]=[y("注释内容")]))),_:1}),l[4]||(l[4]=y(" 跳转 "))]),g("p",N,[l[5]||(l[5]=y(" 数据库共 ")),t(d(a),{type:"info"},{default:u((()=>[y(f(d(n).length),1)])),_:1}),l[6]||(l[6]=y(" 张表 "))]),t(d(v),{"on-update-value":_,options:d(r),"render-option":d(L),value:d(A),class:"mt-2 w-[200px]","clear-filter-after-select":"",clearable:"",placeholder:"选择数据库"},null,8,["options","render-option","value"])])),_:1}),t(d(p),{bordered:!0,columns:d(D)(),data:d(n),loading:d(x)},null,8,["columns","data","loading"])],64))}});export{x as default}; diff --git a/generator-code/src/main/resources/static/static/js/index-DwLjqHOd.js b/generator-code/src/main/resources/static/static/js/index-DwLjqHOd.js deleted file mode 100644 index 551f824..0000000 --- a/generator-code/src/main/resources/static/static/js/index-DwLjqHOd.js +++ /dev/null @@ -1 +0,0 @@ -import{h as a,I as e,t as s,c as r,a as t}from"./vendor-BT0L8wkZ.js";const p=a({__name:"index",setup(a){const p=e(),n=s(),{params:o,query:u}=p,{path:c}=o;return n.replace({path:"/"+c,query:u}),(a,e)=>(t(),r("div"))}});export{p as default}; diff --git a/generator-code/src/main/resources/static/static/js/table-R7-h5oL5.js b/generator-code/src/main/resources/static/static/js/table-R7-h5oL5.js deleted file mode 100644 index 08fc40d..0000000 --- a/generator-code/src/main/resources/static/static/js/table-R7-h5oL5.js +++ /dev/null @@ -1 +0,0 @@ -var e=(e,t,a)=>new Promise(((s,r)=>{var o=e=>{try{i(a.next(e))}catch(t){r(t)}},n=e=>{try{i(a.throw(e))}catch(t){r(t)}},i=e=>e.done?s(e.value):Promise.resolve(e.value).then(o,n);i((a=a.apply(e,t)).next())}));import{a7 as t,a8 as a,H as s}from"./vendor-BT0L8wkZ.js";const r=t.create({baseURL:"/api",timeout:5e4,headers:{"Content-Type":"application/json;charset=utf-8"},paramsSerializer:e=>a.stringify(e)});r.interceptors.request.use((e=>{const t=localStorage.getItem("accessToken");return t&&(e.headers.Authorization=t),e}),(e=>Promise.reject(e))),r.interceptors.response.use((e=>{if("blob"===e.config.responseType||"arraybuffer"===e.config.responseType)return e;if(200===e.status){const{code:t,message:a}=e.data;return 200!==t&&window.$message.error(a),e.data}return Promise.reject(e.data.message||"Error")}),(e=>{if(e.response.data){const{code:t,message:a}=e.response.data;500===t?window.$message.error(a):window.$message.error(a||"系统出错")}return Promise.reject(e.message)}));const o=()=>r({url:"/table/currentDatabaseName",method:"GET"}),n=s("tableStore",{state:()=>({currentDatabaseName:void 0,databaseInfoMeta:void 0,tableList:[],tableListLoading:!1,dbList:[]}),getters:{},actions:{getDatabaseInfoMeta(){return e(this,null,(function*(){const e=yield r({url:"/table/databaseInfoMetaData",method:"GET"});200===e.code&&(this.databaseInfoMeta=e.data)}))},getDatabaseList(){return e(this,null,(function*(){this.tableListLoading=!0;const e=yield r({url:"/table/databaseList",method:"GET"});if(200!==e.code)return void(this.tableListLoading=!1);const t=e.data.map((e=>({label:e.tableCat,value:e.tableCat,comment:e.comment})));t.unshift({label:"无",value:void 0,comment:"查询全部"}),this.dbList=t,this.tableListLoading=!1}))},getDatabaseTableList(){return e(this,null,(function*(){const e={dbName:this.currentDatabaseName},t=yield(a=e,r({url:"/table/databaseTableList",method:"get",params:a}));var a;this.tableList=t.data}))},getTableMetaData(t){return e(this,null,(function*(){const e=yield(a={tableName:t},r({url:"/table/tableMetaData",method:"get",params:a}));var a;return 200!==e.code?{}:e.data}))},getTableColumnInfo(t){return e(this,null,(function*(){const e=yield(a={tableName:t},r({url:"/table/tableColumnInfo",method:"get",params:a}));var a;return 200!==e.code?{}:e.data}))}}});export{o as g,r as s,n as u}; diff --git a/generator-code/src/main/resources/static/static/js/vendor-BT0L8wkZ.js b/generator-code/src/main/resources/static/static/js/vendor-BT0L8wkZ.js deleted file mode 100644 index d801a71..0000000 --- a/generator-code/src/main/resources/static/static/js/vendor-BT0L8wkZ.js +++ /dev/null @@ -1,36 +0,0 @@ -var e=Object.defineProperty,t=Object.defineProperties,n=Object.getOwnPropertyDescriptors,r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable,a=(e,t)=>(t=Symbol[e])?t:Symbol.for("Symbol."+e),l=(t,n,r)=>n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[n]=r,s=(e,t)=>{for(var n in t||(t={}))o.call(t,n)&&l(e,n,t[n]);if(r)for(var n of r(t))i.call(t,n)&&l(e,n,t[n]);return e},c=(e,t,n)=>new Promise(((r,o)=>{var i=e=>{try{l(n.next(e))}catch(t){o(t)}},a=e=>{try{l(n.throw(e))}catch(t){o(t)}},l=e=>e.done?r(e.value):Promise.resolve(e.value).then(i,a);l((n=n.apply(e,t)).next())})),d=function(e,t){this[0]=e,this[1]=t},u=(e,t,n)=>{var r=(e,t,o,i)=>{try{var a=n[e](t),l=(t=a.value)instanceof d,s=a.done;Promise.resolve(l?t[0]:t).then((n=>l?r("return"===e?e:"next",t[1]?{done:n.done,value:n.value}:n,o,i):o({value:n,done:s}))).catch((e=>r("throw",e,o,i)))}catch(c){i(c)}},o=e=>i[e]=t=>new Promise(((n,o)=>r(e,t,n,o))),i={};return n=n.apply(e,t),i[a("asyncIterator")]=()=>i,o("next"),o("throw"),o("return"),i},p=e=>{var t,n=e[a("asyncIterator")],r=!1,o={};return null==n?(n=e[a("iterator")](),t=e=>o[e]=t=>n[e](t)):(n=n.call(e),t=e=>o[e]=t=>{if(r){if(r=!1,"throw"===e)throw t;return t}return r=!0,{done:!1,value:new d(new Promise((r=>{var o=n[e](t);o instanceof Object||(e=>{throw TypeError(e)})("Object expected"),r(o)})),1)}}),o[a("iterator")]=()=>o,t("next"),"throw"in n?t("throw"):o.throw=e=>{throw e},"return"in n&&t("return"),o}; -/** -* @vue/shared v3.5.13 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/ -/*! #__NO_SIDE_EFFECTS__ */ -function f(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return e=>e in t}const h={},g=[],b=()=>{},v=()=>!1,m=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),y=e=>e.startsWith("onUpdate:"),x=Object.assign,w=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},C=Object.prototype.hasOwnProperty,S=(e,t)=>C.call(e,t),k=Array.isArray,_=e=>"[object Map]"===z(e),E=e=>"[object Set]"===z(e),R=e=>"function"==typeof e,O=e=>"string"==typeof e,A=e=>"symbol"==typeof e,P=e=>null!==e&&"object"==typeof e,T=e=>(P(e)||R(e))&&R(e.then)&&R(e.catch),$=Object.prototype.toString,z=e=>$.call(e),M=e=>"[object Object]"===z(e),F=e=>O(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,N=f(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),B=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},I=/-(\w)/g,L=B((e=>e.replace(I,((e,t)=>t?t.toUpperCase():"")))),j=/\B([A-Z])/g,D=B((e=>e.replace(j,"-$1").toLowerCase())),H=B((e=>e.charAt(0).toUpperCase()+e.slice(1))),W=B((e=>e?`on${H(e)}`:"")),U=(e,t)=>!Object.is(e,t),q=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},V=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let G;const Z=()=>G||(G="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{});function X(e){if(k(e)){const t={};for(let n=0;n{if(e){const n=e.split(Y);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}function te(e){let t="";if(O(e))t=e;else if(k(e))for(let n=0;n!(!e||!0!==e.__v_isRef),ie=e=>O(e)?e:null==e?"":k(e)||P(e)&&(e.toString===$||!R(e.toString))?oe(e)?ie(e.value):JSON.stringify(e,ae,2):String(e),ae=(e,t)=>oe(t)?ae(e,t.value):_(t)?{[`Map(${t.size})`]:[...t.entries()].reduce(((e,[t,n],r)=>(e[le(t,r)+" =>"]=n,e)),{})}:E(t)?{[`Set(${t.size})`]:[...t.values()].map((e=>le(e)))}:A(t)?le(t):!P(t)||k(t)||M(t)?t:String(t),le=(e,t="")=>{var n;return A(e)?`Symbol(${null!=(n=e.description)?n:t})`:e}; -/** -* @vue/reactivity v3.5.13 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/ -let se,ce;class de{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=se,!e&&se&&(this.index=(se.scopes||(se.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){let e,t;if(this._isPaused=!0,this.scopes)for(e=0,t=this.scopes.length;e0)return;if(be){let e=be;for(be=void 0;e;){const t=e.next;e.next=void 0,e.flags&=-9,e=t}}let e;for(;ge;){let n=ge;for(ge=void 0;n;){const r=n.next;if(n.next=void 0,n.flags&=-9,1&n.flags)try{n.trigger()}catch(t){e||(e=t)}n=r}}if(e)throw e}function we(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Ce(e){let t,n=e.depsTail,r=n;for(;r;){const e=r.prevDep;-1===r.version?(r===n&&(n=e),_e(r),Ee(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=e}e.deps=t,e.depsTail=n}function Se(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ke(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ke(e){if(4&e.flags&&!(16&e.flags))return;if(e.flags&=-17,e.globalVersion===$e)return;e.globalVersion=$e;const t=e.dep;if(e.flags|=2,t.version>0&&!e.isSSR&&e.deps&&!Se(e))return void(e.flags&=-3);const n=ce,r=Re;ce=e,Re=!0;try{we(e);const n=e.fn(e._value);(0===t.version||U(n,e._value))&&(e._value=n,t.version++)}catch(o){throw t.version++,o}finally{ce=n,Re=r,Ce(e),e.flags&=-3}}function _e(e,t=!1){const{dep:n,prevSub:r,nextSub:o}=e;if(r&&(r.nextSub=o,e.prevSub=void 0),o&&(o.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let e=n.computed.deps;e;e=e.nextDep)_e(e,!0)}t||--n.sc||!n.map||n.map.delete(n.key)}function Ee(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Re=!0;const Oe=[];function Ae(){Oe.push(Re),Re=!1}function Pe(){const e=Oe.pop();Re=void 0===e||e}function Te(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const e=ce;ce=void 0;try{t()}finally{ce=e}}}let $e=0;class ze{constructor(e,t){this.sub=e,this.dep=t,this.version=t.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Me{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(e){if(!ce||!Re||ce===this.computed)return;let t=this.activeLink;if(void 0===t||t.sub!==ce)t=this.activeLink=new ze(ce,this),ce.deps?(t.prevDep=ce.depsTail,ce.depsTail.nextDep=t,ce.depsTail=t):ce.deps=ce.depsTail=t,Fe(t);else if(-1===t.version&&(t.version=this.version,t.nextDep)){const e=t.nextDep;e.prevDep=t.prevDep,t.prevDep&&(t.prevDep.nextDep=e),t.prevDep=ce.depsTail,t.nextDep=void 0,ce.depsTail.nextDep=t,ce.depsTail=t,ce.deps===t&&(ce.deps=e)}return t}trigger(e){this.version++,$e++,this.notify(e)}notify(e){ye();try{0;for(let e=this.subs;e;e=e.prevSub)e.sub.notify()&&e.sub.dep.notify()}finally{xe()}}}function Fe(e){if(e.dep.sc++,4&e.sub.flags){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let e=t.deps;e;e=e.nextDep)Fe(e)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Ne=new WeakMap,Be=Symbol(""),Ie=Symbol(""),Le=Symbol("");function je(e,t,n){if(Re&&ce){let t=Ne.get(e);t||Ne.set(e,t=new Map);let r=t.get(n);r||(t.set(n,r=new Me),r.map=t,r.key=n),r.track()}}function De(e,t,n,r,o,i){const a=Ne.get(e);if(!a)return void $e++;const l=e=>{e&&e.trigger()};if(ye(),"clear"===t)a.forEach(l);else{const o=k(e),i=o&&F(n);if(o&&"length"===n){const e=Number(r);a.forEach(((t,n)=>{("length"===n||n===Le||!A(n)&&n>=e)&&l(t)}))}else switch((void 0!==n||a.has(void 0))&&l(a.get(n)),i&&l(a.get(Le)),t){case"add":o?i&&l(a.get("length")):(l(a.get(Be)),_(e)&&l(a.get(Ie)));break;case"delete":o||(l(a.get(Be)),_(e)&&l(a.get(Ie)));break;case"set":_(e)&&l(a.get(Be))}}xe()}function He(e){const t=Rt(e);return t===e?t:(je(t,0,Le),_t(e)?t:t.map(At))}function We(e){return je(e=Rt(e),0,Le),e}const Ue={__proto__:null,[Symbol.iterator](){return qe(this,Symbol.iterator,At)},concat(...e){return He(this).concat(...e.map((e=>k(e)?He(e):e)))},entries(){return qe(this,"entries",(e=>(e[1]=At(e[1]),e)))},every(e,t){return Ve(this,"every",e,t,void 0,arguments)},filter(e,t){return Ve(this,"filter",e,t,(e=>e.map(At)),arguments)},find(e,t){return Ve(this,"find",e,t,At,arguments)},findIndex(e,t){return Ve(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Ve(this,"findLast",e,t,At,arguments)},findLastIndex(e,t){return Ve(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Ve(this,"forEach",e,t,void 0,arguments)},includes(...e){return Ze(this,"includes",e)},indexOf(...e){return Ze(this,"indexOf",e)},join(e){return He(this).join(e)},lastIndexOf(...e){return Ze(this,"lastIndexOf",e)},map(e,t){return Ve(this,"map",e,t,void 0,arguments)},pop(){return Xe(this,"pop")},push(...e){return Xe(this,"push",e)},reduce(e,...t){return Ge(this,"reduce",e,t)},reduceRight(e,...t){return Ge(this,"reduceRight",e,t)},shift(){return Xe(this,"shift")},some(e,t){return Ve(this,"some",e,t,void 0,arguments)},splice(...e){return Xe(this,"splice",e)},toReversed(){return He(this).toReversed()},toSorted(e){return He(this).toSorted(e)},toSpliced(...e){return He(this).toSpliced(...e)},unshift(...e){return Xe(this,"unshift",e)},values(){return qe(this,"values",At)}};function qe(e,t,n){const r=We(e),o=r[t]();return r===e||_t(e)||(o._next=o.next,o.next=()=>{const e=o._next();return e.value&&(e.value=n(e.value)),e}),o}const Ke=Array.prototype;function Ve(e,t,n,r,o,i){const a=We(e),l=a!==e&&!_t(e),s=a[t];if(s!==Ke[t]){const t=s.apply(e,i);return l?At(t):t}let c=n;a!==e&&(l?c=function(t,r){return n.call(this,At(t),r,e)}:n.length>2&&(c=function(t,r){return n.call(this,t,r,e)}));const d=s.call(a,c,r);return l&&o?o(d):d}function Ge(e,t,n,r){const o=We(e);let i=n;return o!==e&&(_t(e)?n.length>3&&(i=function(t,r,o){return n.call(this,t,r,o,e)}):i=function(t,r,o){return n.call(this,t,At(r),o,e)}),o[t](i,...r)}function Ze(e,t,n){const r=Rt(e);je(r,0,Le);const o=r[t](...n);return-1!==o&&!1!==o||!Et(n[0])?o:(n[0]=Rt(n[0]),r[t](...n))}function Xe(e,t,n=[]){Ae(),ye();const r=Rt(e)[t].apply(e,n);return xe(),Pe(),r}const Qe=f("__proto__,__v_isRef,__isVue"),Ye=new Set(Object.getOwnPropertyNames(Symbol).filter((e=>"arguments"!==e&&"caller"!==e)).map((e=>Symbol[e])).filter(A));function Je(e){A(e)||(e=String(e));const t=Rt(this);return je(t,0,e),t.hasOwnProperty(e)}class et{constructor(e=!1,t=!1){this._isReadonly=e,this._isShallow=t}get(e,t,n){if("__v_skip"===t)return e.__v_skip;const r=this._isReadonly,o=this._isShallow;if("__v_isReactive"===t)return!r;if("__v_isReadonly"===t)return r;if("__v_isShallow"===t)return o;if("__v_raw"===t)return n===(r?o?vt:bt:o?gt:ht).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(n)?e:void 0;const i=k(e);if(!r){let e;if(i&&(e=Ue[t]))return e;if("hasOwnProperty"===t)return Je}const a=Reflect.get(e,t,Tt(e)?e:n);return(A(t)?Ye.has(t):Qe(t))?a:(r||je(e,0,t),o?a:Tt(a)?i&&F(t)?a:a.value:P(a)?r?wt(a):yt(a):a)}}class tt extends et{constructor(e=!1){super(!1,e)}set(e,t,n,r){let o=e[t];if(!this._isShallow){const t=kt(o);if(_t(n)||kt(n)||(o=Rt(o),n=Rt(n)),!k(e)&&Tt(o)&&!Tt(n))return!t&&(o.value=n,!0)}const i=k(e)&&F(t)?Number(t)e,lt=e=>Reflect.getPrototypeOf(e);function st(e){return function(...t){return"delete"!==e&&("clear"===e?void 0:this)}}function ct(e,t){const n={get(n){const r=this.__v_raw,o=Rt(r),i=Rt(n);e||(U(n,i)&&je(o,0,n),je(o,0,i));const{has:a}=lt(o),l=t?at:e?Pt:At;return a.call(o,n)?l(r.get(n)):a.call(o,i)?l(r.get(i)):void(r!==o&&r.get(n))},get size(){const t=this.__v_raw;return!e&&je(Rt(t),0,Be),Reflect.get(t,"size",t)},has(t){const n=this.__v_raw,r=Rt(n),o=Rt(t);return e||(U(t,o)&&je(r,0,t),je(r,0,o)),t===o?n.has(t):n.has(t)||n.has(o)},forEach(n,r){const o=this,i=o.__v_raw,a=Rt(i),l=t?at:e?Pt:At;return!e&&je(a,0,Be),i.forEach(((e,t)=>n.call(r,l(e),l(t),o)))}};x(n,e?{add:st("add"),set:st("set"),delete:st("delete"),clear:st("clear")}:{add(e){t||_t(e)||kt(e)||(e=Rt(e));const n=Rt(this);return lt(n).has.call(n,e)||(n.add(e),De(n,"add",e,e)),this},set(e,n){t||_t(n)||kt(n)||(n=Rt(n));const r=Rt(this),{has:o,get:i}=lt(r);let a=o.call(r,e);a||(e=Rt(e),a=o.call(r,e));const l=i.call(r,e);return r.set(e,n),a?U(n,l)&&De(r,"set",e,n):De(r,"add",e,n),this},delete(e){const t=Rt(this),{has:n,get:r}=lt(t);let o=n.call(t,e);o||(e=Rt(e),o=n.call(t,e)),r&&r.call(t,e);const i=t.delete(e);return o&&De(t,"delete",e,void 0),i},clear(){const e=Rt(this),t=0!==e.size,n=e.clear();return t&&De(e,"clear",void 0,void 0),n}});return["keys","values","entries",Symbol.iterator].forEach((r=>{n[r]=function(e,t,n){return function(...r){const o=this.__v_raw,i=Rt(o),a=_(i),l="entries"===e||e===Symbol.iterator&&a,s="keys"===e&&a,c=o[e](...r),d=n?at:t?Pt:At;return!t&&je(i,0,s?Ie:Be),{next(){const{value:e,done:t}=c.next();return t?{value:e,done:t}:{value:l?[d(e[0]),d(e[1])]:d(e),done:t}},[Symbol.iterator](){return this}}}}(r,e,t)})),n}function dt(e,t){const n=ct(e,t);return(t,r,o)=>"__v_isReactive"===r?!e:"__v_isReadonly"===r?e:"__v_raw"===r?t:Reflect.get(S(n,r)&&r in t?n:t,r,o)}const ut={get:dt(!1,!1)},pt={get:dt(!1,!0)},ft={get:dt(!0,!1)},ht=new WeakMap,gt=new WeakMap,bt=new WeakMap,vt=new WeakMap;function mt(e){return e.__v_skip||!Object.isExtensible(e)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}((e=>z(e).slice(8,-1))(e))}function yt(e){return kt(e)?e:Ct(e,!1,rt,ut,ht)}function xt(e){return Ct(e,!1,it,pt,gt)}function wt(e){return Ct(e,!0,ot,ft,bt)}function Ct(e,t,n,r,o){if(!P(e))return e;if(e.__v_raw&&(!t||!e.__v_isReactive))return e;const i=o.get(e);if(i)return i;const a=mt(e);if(0===a)return e;const l=new Proxy(e,2===a?r:n);return o.set(e,l),l}function St(e){return kt(e)?St(e.__v_raw):!(!e||!e.__v_isReactive)}function kt(e){return!(!e||!e.__v_isReadonly)}function _t(e){return!(!e||!e.__v_isShallow)}function Et(e){return!!e&&!!e.__v_raw}function Rt(e){const t=e&&e.__v_raw;return t?Rt(t):e}function Ot(e){return!S(e,"__v_skip")&&Object.isExtensible(e)&&K(e,"__v_skip",!0),e}const At=e=>P(e)?yt(e):e,Pt=e=>P(e)?wt(e):e;function Tt(e){return!!e&&!0===e.__v_isRef}function $t(e){return Mt(e,!1)}function zt(e){return Mt(e,!0)}function Mt(e,t){return Tt(e)?e:new Ft(e,t)}class Ft{constructor(e,t){this.dep=new Me,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=t?e:Rt(e),this._value=t?e:At(e),this.__v_isShallow=t}get value(){return this.dep.track(),this._value}set value(e){const t=this._rawValue,n=this.__v_isShallow||_t(e)||kt(e);e=n?e:Rt(e),U(e,t)&&(this._rawValue=e,this._value=n?e:At(e),this.dep.trigger())}}function Nt(e){return Tt(e)?e.value:e}const Bt={get:(e,t,n)=>"__v_raw"===t?e:Nt(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return Tt(o)&&!Tt(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function It(e){return St(e)?e:new Proxy(e,Bt)}class Lt{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0}get value(){const e=this._object[this._key];return this._value=void 0===e?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){return function(e,t){const n=Ne.get(e);return n&&n.get(t)}(Rt(this._object),this._key)}}class jt{constructor(e){this._getter=e,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Dt(e,t,n){return Tt(e)?e:R(e)?new jt(e):P(e)&&arguments.length>1?Ht(e,t,n):$t(e)}function Ht(e,t,n){const r=e[t];return Tt(r)?r:new Lt(e,t,n)}class Wt{constructor(e,t,n){this.fn=e,this.setter=t,this._value=void 0,this.dep=new Me(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=$e-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!t,this.isSSR=n}notify(){if(this.flags|=16,!(8&this.flags)&&ce!==this)return me(this,!0),!0}get value(){const e=this.dep.track();return ke(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}const Ut={},qt=new WeakMap;let Kt;function Vt(e,t,n=h){const{immediate:r,deep:o,once:i,scheduler:a,augmentJob:l,call:s}=n,c=e=>o?e:_t(e)||!1===o||0===o?Gt(e,1):Gt(e);let d,u,p,f,g=!1,v=!1;if(Tt(e)?(u=()=>e.value,g=_t(e)):St(e)?(u=()=>c(e),g=!0):k(e)?(v=!0,g=e.some((e=>St(e)||_t(e))),u=()=>e.map((e=>Tt(e)?e.value:St(e)?c(e):R(e)?s?s(e,2):e():void 0))):u=R(e)?t?s?()=>s(e,2):e:()=>{if(p){Ae();try{p()}finally{Pe()}}const t=Kt;Kt=d;try{return s?s(e,3,[f]):e(f)}finally{Kt=t}}:b,t&&o){const e=u,t=!0===o?1/0:o;u=()=>Gt(e(),t)}const m=pe(),y=()=>{d.stop(),m&&m.active&&w(m.effects,d)};if(i&&t){const e=t;t=(...t)=>{e(...t),y()}}let x=v?new Array(e.length).fill(Ut):Ut;const C=e=>{if(1&d.flags&&(d.dirty||e))if(t){const e=d.run();if(o||g||(v?e.some(((e,t)=>U(e,x[t]))):U(e,x))){p&&p();const n=Kt;Kt=d;try{const n=[e,x===Ut?void 0:v&&x[0]===Ut?[]:x,f];s?s(t,3,n):t(...n),x=e}finally{Kt=n}}}else d.run()};return l&&l(C),d=new he(u),d.scheduler=a?()=>a(C,!1):C,f=e=>function(e,t=!1,n=Kt){if(n){let t=qt.get(n);t||qt.set(n,t=[]),t.push(e)}}(e,!1,d),p=d.onStop=()=>{const e=qt.get(d);if(e){if(s)s(e,4);else for(const t of e)t();qt.delete(d)}},t?r?C(!0):x=d.run():a?a(C.bind(null,!0),!0):d.run(),y.pause=d.pause.bind(d),y.resume=d.resume.bind(d),y.stop=y,y}function Gt(e,t=1/0,n){if(t<=0||!P(e)||e.__v_skip)return e;if((n=n||new Set).has(e))return e;if(n.add(e),t--,Tt(e))Gt(e.value,t,n);else if(k(e))for(let r=0;r{Gt(e,t,n)}));else if(M(e)){for(const r in e)Gt(e[r],t,n);for(const r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&Gt(e[r],t,n)}return e} -/** -* @vue/runtime-core v3.5.13 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function Zt(e,t,n,r){try{return r?e(...r):e()}catch(o){Qt(o,t,n)}}function Xt(e,t,n,r){if(R(e)){const o=Zt(e,t,n,r);return o&&T(o)&&o.catch((e=>{Qt(e,t,n)})),o}if(k(e)){const o=[];for(let i=0;i=un(n)?Yt.push(e):Yt.splice(function(e){let t=Jt+1,n=Yt.length;for(;t>>1,o=Yt[r],i=un(o);iun(e)-un(t)));if(en.length=0,tn)return void tn.push(...e);for(tn=e,nn=0;nnnull==e.id?2&e.flags?-1:1/0:e.id;function pn(e){try{for(Jt=0;Jt{r._d&&No(-1);const o=gn(t);let i;try{i=e(...n)}finally{gn(o),r._d&&No(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function vn(e,t){if(null===fn)return e;const n=fi(fn),r=e.dirs||(e.dirs=[]);for(let o=0;oe.__isTeleport,wn=e=>e&&(e.disabled||""===e.disabled),Cn=e=>e&&(e.defer||""===e.defer),Sn=e=>"undefined"!=typeof SVGElement&&e instanceof SVGElement,kn=e=>"function"==typeof MathMLElement&&e instanceof MathMLElement,_n=(e,t)=>{const n=e&&e.to;if(O(n)){if(t){return t(n)}return null}return n},En={name:"Teleport",__isTeleport:!0,process(e,t,n,r,o,i,a,l,s,c){const{mc:d,pc:u,pbc:p,o:{insert:f,querySelector:h,createText:g,createComment:b}}=c,v=wn(t.props);let{shapeFlag:m,children:y,dynamicChildren:x}=t;if(null==e){const e=t.el=g(""),c=t.anchor=g("");f(e,n,r),f(c,n,r);const u=(e,t)=>{16&m&&(o&&o.isCE&&(o.ce._teleportTarget=e),d(y,e,t,o,i,a,l,s))},p=()=>{const e=t.target=_n(t.props,h),n=Pn(e,t,g,f);e&&("svg"!==a&&Sn(e)?a="svg":"mathml"!==a&&kn(e)&&(a="mathml"),v||(u(e,n),An(t,!1)))};v&&(u(n,c),An(t,!0)),Cn(t.props)?oo((()=>{p(),t.el.__isMounted=!0}),i):p()}else{if(Cn(t.props)&&!e.el.__isMounted)return void oo((()=>{En.process(e,t,n,r,o,i,a,l,s,c),delete e.el.__isMounted}),i);t.el=e.el,t.targetStart=e.targetStart;const d=t.anchor=e.anchor,f=t.target=e.target,g=t.targetAnchor=e.targetAnchor,b=wn(e.props),m=b?n:f,y=b?d:g;if("svg"===a||Sn(f)?a="svg":("mathml"===a||kn(f))&&(a="mathml"),x?(p(e.dynamicChildren,x,m,o,i,a,l),so(e,t,!0)):s||u(e,t,m,y,o,i,a,l,!1),v)b?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Rn(t,n,d,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const e=t.target=_n(t.props,h);e&&Rn(t,e,null,c,0)}else b&&Rn(t,f,g,c,1);An(t,v)}},remove(e,t,n,{um:r,o:{remove:o}},i){const{shapeFlag:a,children:l,anchor:s,targetStart:c,targetAnchor:d,target:u,props:p}=e;if(u&&(o(c),o(d)),i&&o(s),16&a){const e=i||!wn(p);for(let o=0;o{e.isMounted=!0})),ar((()=>{e.isUnmounting=!0})),e}const Mn=[Function,Array],Fn={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Mn,onEnter:Mn,onAfterEnter:Mn,onEnterCancelled:Mn,onBeforeLeave:Mn,onLeave:Mn,onAfterLeave:Mn,onLeaveCancelled:Mn,onBeforeAppear:Mn,onAppear:Mn,onAfterAppear:Mn,onAppearCancelled:Mn},Nn=e=>{const t=e.subTree;return t.component?Nn(t.component):t};function Bn(e){let t=e[0];if(e.length>1)for(const n of e)if(n.type!==Po){t=n;break}return t}const In={name:"BaseTransition",props:Fn,setup(e,{slots:t}){const n=ri(),r=zn();return()=>{const o=t.default&&Un(t.default(),!0);if(!o||!o.length)return;const i=Bn(o),a=Rt(e),{mode:l}=a;if(r.isLeaving)return Dn(i);const s=Hn(i);if(!s)return Dn(i);let c=jn(s,a,r,n,(e=>c=e));s.type!==Po&&Wn(s,c);let d=n.subTree&&Hn(n.subTree);if(d&&d.type!==Po&&!Do(s,d)&&Nn(n).type!==Po){let e=jn(d,a,r,n);if(Wn(d,e),"out-in"===l&&s.type!==Po)return r.isLeaving=!0,e.afterLeave=()=>{r.isLeaving=!1,8&n.job.flags||n.update(),delete e.afterLeave,d=void 0},Dn(i);"in-out"===l&&s.type!==Po?e.delayLeave=(e,t,n)=>{Ln(r,d)[String(d.key)]=d,e[Tn]=()=>{t(),e[Tn]=void 0,delete c.delayedLeave,d=void 0},c.delayedLeave=()=>{n(),delete c.delayedLeave,d=void 0}}:d=void 0}else d&&(d=void 0);return i}}};function Ln(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function jn(e,t,n,r,o){const{appear:i,mode:a,persisted:l=!1,onBeforeEnter:s,onEnter:c,onAfterEnter:d,onEnterCancelled:u,onBeforeLeave:p,onLeave:f,onAfterLeave:h,onLeaveCancelled:g,onBeforeAppear:b,onAppear:v,onAfterAppear:m,onAppearCancelled:y}=t,x=String(e.key),w=Ln(n,e),C=(e,t)=>{e&&Xt(e,r,9,t)},S=(e,t)=>{const n=t[1];C(e,t),k(e)?e.every((e=>e.length<=1))&&n():e.length<=1&&n()},_={mode:a,persisted:l,beforeEnter(t){let r=s;if(!n.isMounted){if(!i)return;r=b||s}t[Tn]&&t[Tn](!0);const o=w[x];o&&Do(e,o)&&o.el[Tn]&&o.el[Tn](),C(r,[t])},enter(e){let t=c,r=d,o=u;if(!n.isMounted){if(!i)return;t=v||c,r=m||d,o=y||u}let a=!1;const l=e[$n]=t=>{a||(a=!0,C(t?o:r,[e]),_.delayedLeave&&_.delayedLeave(),e[$n]=void 0)};t?S(t,[e,l]):l()},leave(t,r){const o=String(e.key);if(t[$n]&&t[$n](!0),n.isUnmounting)return r();C(p,[t]);let i=!1;const a=t[Tn]=n=>{i||(i=!0,r(),C(n?g:h,[t]),t[Tn]=void 0,w[o]===e&&delete w[o])};w[o]=e,f?S(f,[t,a]):a()},clone(e){const i=jn(e,t,n,r,o);return o&&o(i),i}};return _}function Dn(e){if(Zn(e))return(e=Ko(e)).children=null,e}function Hn(e){if(!Zn(e))return xn(e.type)&&e.children?Bn(e.children):e;const{shapeFlag:t,children:n}=e;if(n){if(16&t)return n[0];if(32&t&&R(n.default))return n.default()}}function Wn(e,t){6&e.shapeFlag&&e.component?(e.transition=t,Wn(e.component.subTree,t)):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Un(e,t=!1,n){let r=[],o=0;for(let i=0;i1)for(let i=0;ix({name:e.name},t,{setup:e}))():e}function Kn(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Vn(e,t,n,r,o=!1){if(k(e))return void e.forEach(((e,i)=>Vn(e,t&&(k(t)?t[i]:t),n,r,o)));if(Gn(r)&&!o)return void(512&r.shapeFlag&&r.type.__asyncResolved&&r.component.subTree.component&&Vn(e,t,n,r.component.subTree));const i=4&r.shapeFlag?fi(r.component):r.el,a=o?null:i,{i:l,r:s}=e,c=t&&t.r,d=l.refs===h?l.refs={}:l.refs,u=l.setupState,p=Rt(u),f=u===h?()=>!1:e=>S(p,e);if(null!=c&&c!==s&&(O(c)?(d[c]=null,f(c)&&(u[c]=null)):Tt(c)&&(c.value=null)),R(s))Zt(s,l,12,[a,d]);else{const t=O(s),r=Tt(s);if(t||r){const l=()=>{if(e.f){const n=t?f(s)?u[s]:d[s]:s.value;o?k(n)&&w(n,i):k(n)?n.includes(i)||n.push(i):t?(d[s]=[i],f(s)&&(u[s]=d[s])):(s.value=[i],e.k&&(d[e.k]=s.value))}else t?(d[s]=a,f(s)&&(u[s]=a)):r&&(s.value=a,e.k&&(d[e.k]=a))};a?(l.id=-1,oo(l,n)):l()}}}Z().requestIdleCallback,Z().cancelIdleCallback;const Gn=e=>!!e.type.__asyncLoader,Zn=e=>e.type.__isKeepAlive;function Xn(e,t){Yn(e,"a",t)}function Qn(e,t){Yn(e,"da",t)}function Yn(e,t,n=ni){const r=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(er(t,r,n),n){let e=n.parent;for(;e&&e.parent;)Zn(e.parent.vnode)&&Jn(r,t,n,e),e=e.parent}}function Jn(e,t,n,r){const o=er(t,e,r,!0);lr((()=>{w(r[t],o)}),n)}function er(e,t,n=ni,r=!1){if(n){const o=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...r)=>{Ae();const o=ai(n),i=Xt(t,n,e,r);return o(),Pe(),i});return r?o.unshift(i):o.push(i),i}}const tr=e=>(t,n=ni)=>{ci&&"sp"!==e||er(e,((...e)=>t(...e)),n)},nr=tr("bm"),rr=tr("m"),or=tr("bu"),ir=tr("u"),ar=tr("bum"),lr=tr("um"),sr=tr("sp"),cr=tr("rtg"),dr=tr("rtc");function ur(e,t=ni){er("ec",e,t)}const pr="components";function fr(e,t){return br(pr,e,!0,t)||e}const hr=Symbol.for("v-ndc");function gr(e){return O(e)?br(pr,e,!1)||e:e||hr}function br(e,t,n=!0,r=!1){const o=fn||ni;if(o){const n=o.type;{const e=hi(n,!1);if(e&&(e===t||e===L(t)||e===H(L(t))))return n}const i=vr(o[e]||n[e],t)||vr(o.appContext[e],t);return!i&&r?n:i}}function vr(e,t){return e&&(e[t]||e[L(t)]||e[H(L(t))])}function mr(e,t,n,r){let o;const i=n,a=k(e);if(a||O(e)){let n=!1;a&&St(e)&&(n=!_t(e),e=We(e)),o=new Array(e.length);for(let r=0,a=e.length;rt(e,n,void 0,i)));else{const n=Object.keys(e);o=new Array(n.length);for(let r=0,a=n.length;r!jo(e)||e.type!==Po&&!(e.type===Oo&&!xr(e.children))))?e:null}const wr=e=>e?si(e)?fi(e):wr(e.parent):null,Cr=x(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=>wr(e.parent),$root:e=>wr(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Pr(e),$forceUpdate:e=>e.f||(e.f=()=>{ln(e.update)}),$nextTick:e=>e.n||(e.n=an.bind(e.proxy)),$watch:e=>vo.bind(e)}),Sr=(e,t)=>e!==h&&!e.__isScriptSetup&&S(e,t),kr={get({_:e},t){if("__v_skip"===t)return!0;const{ctx:n,setupState:r,data:o,props:i,accessCache:a,type:l,appContext:s}=e;let c;if("$"!==t[0]){const l=a[t];if(void 0!==l)switch(l){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return i[t]}else{if(Sr(r,t))return a[t]=1,r[t];if(o!==h&&S(o,t))return a[t]=2,o[t];if((c=e.propsOptions[0])&&S(c,t))return a[t]=3,i[t];if(n!==h&&S(n,t))return a[t]=4,n[t];Er&&(a[t]=0)}}const d=Cr[t];let u,p;return d?("$attrs"===t&&je(e.attrs,0,""),d(e)):(u=l.__cssModules)&&(u=u[t])?u:n!==h&&S(n,t)?(a[t]=4,n[t]):(p=s.config.globalProperties,S(p,t)?p[t]:void 0)},set({_:e},t,n){const{data:r,setupState:o,ctx:i}=e;return Sr(o,t)?(o[t]=n,!0):r!==h&&S(r,t)?(r[t]=n,!0):!S(e.props,t)&&(("$"!==t[0]||!(t.slice(1)in e))&&(i[t]=n,!0))},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:i}},a){let l;return!!n[a]||e!==h&&S(e,a)||Sr(t,a)||(l=i[0])&&S(l,a)||S(r,a)||S(Cr,a)||S(o.config.globalProperties,a)},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:S(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function _r(e){return k(e)?e.reduce(((e,t)=>(e[t]=null,e)),{}):e}let Er=!0;function Rr(e){const t=Pr(e),n=e.proxy,r=e.ctx;Er=!1,t.beforeCreate&&Or(t.beforeCreate,e,"bc");const{data:o,computed:i,methods:a,watch:l,provide:s,inject:c,created:d,beforeMount:u,mounted:p,beforeUpdate:f,updated:h,activated:g,deactivated:v,beforeDestroy:m,beforeUnmount:y,destroyed:x,unmounted:w,render:C,renderTracked:S,renderTriggered:_,errorCaptured:E,serverPrefetch:O,expose:A,inheritAttrs:T,components:$,directives:z,filters:M}=t;if(c&&function(e,t){k(e)&&(e=Mr(e));for(const n in e){const r=e[n];let o;o=P(r)?"default"in r?Wr(r.from||n,r.default,!0):Wr(r.from||n):Wr(r),Tt(o)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>o.value,set:e=>o.value=e}):t[n]=o}}(c,r,null),a)for(const b in a){const e=a[b];R(e)&&(r[b]=e.bind(n))}if(o){const t=o.call(n,n);P(t)&&(e.data=yt(t))}if(Er=!0,i)for(const k in i){const e=i[k],t=R(e)?e.bind(n,n):R(e.get)?e.get.bind(n,n):b,o=!R(e)&&R(e.set)?e.set.bind(n):b,a=gi({get:t,set:o});Object.defineProperty(r,k,{enumerable:!0,configurable:!0,get:()=>a.value,set:e=>a.value=e})}if(l)for(const b in l)Ar(l[b],r,n,b);if(s){const e=R(s)?s.call(n):s;Reflect.ownKeys(e).forEach((t=>{Hr(t,e[t])}))}function F(e,t){k(t)?t.forEach((t=>e(t.bind(n)))):t&&e(t.bind(n))}if(d&&Or(d,e,"c"),F(nr,u),F(rr,p),F(or,f),F(ir,h),F(Xn,g),F(Qn,v),F(ur,E),F(dr,S),F(cr,_),F(ar,y),F(lr,w),F(sr,O),k(A))if(A.length){const t=e.exposed||(e.exposed={});A.forEach((e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t})}))}else e.exposed||(e.exposed={});C&&e.render===b&&(e.render=C),null!=T&&(e.inheritAttrs=T),$&&(e.components=$),z&&(e.directives=z),O&&Kn(e)}function Or(e,t,n){Xt(k(e)?e.map((e=>e.bind(t.proxy))):e.bind(t.proxy),t,n)}function Ar(e,t,n,r){let o=r.includes(".")?mo(n,r):()=>n[r];if(O(e)){const n=t[e];R(n)&&go(o,n)}else if(R(e))go(o,e.bind(n));else if(P(e))if(k(e))e.forEach((e=>Ar(e,t,n,r)));else{const r=R(e.handler)?e.handler.bind(n):t[e.handler];R(r)&&go(o,r,e)}}function Pr(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:i,config:{optionMergeStrategies:a}}=e.appContext,l=i.get(t);let s;return l?s=l:o.length||n||r?(s={},o.length&&o.forEach((e=>Tr(s,e,a,!0))),Tr(s,t,a)):s=t,P(t)&&i.set(t,s),s}function Tr(e,t,n,r=!1){const{mixins:o,extends:i}=t;i&&Tr(e,i,n,!0),o&&o.forEach((t=>Tr(e,t,n,!0)));for(const a in t)if(r&&"expose"===a);else{const r=$r[a]||n&&n[a];e[a]=r?r(e[a],t[a]):t[a]}return e}const $r={data:zr,props:Br,emits:Br,methods:Nr,computed:Nr,beforeCreate:Fr,created:Fr,beforeMount:Fr,mounted:Fr,beforeUpdate:Fr,updated:Fr,beforeDestroy:Fr,beforeUnmount:Fr,destroyed:Fr,unmounted:Fr,activated:Fr,deactivated:Fr,errorCaptured:Fr,serverPrefetch:Fr,components:Nr,directives:Nr,watch:function(e,t){if(!e)return t;if(!t)return e;const n=x(Object.create(null),e);for(const r in t)n[r]=Fr(e[r],t[r]);return n},provide:zr,inject:function(e,t){return Nr(Mr(e),Mr(t))}};function zr(e,t){return t?e?function(){return x(R(e)?e.call(this,this):e,R(t)?t.call(this,this):t)}:t:e}function Mr(e){if(k(e)){const t={};for(let n=0;n(o.has(e)||(e&&R(e.install)?(o.add(e),e.install(l,...t)):R(e)&&(o.add(e),e(l,...t))),l),mixin:e=>(r.mixins.includes(e)||r.mixins.push(e),l),component:(e,t)=>t?(r.components[e]=t,l):r.components[e],directive:(e,t)=>t?(r.directives[e]=t,l):r.directives[e],mount(o,i,s){if(!a){const i=l._ceVNode||qo(t,n);return i.appContext=r,!0===s?s="svg":!1===s&&(s=void 0),e(i,o,s),a=!0,l._container=o,o.__vue_app__=l,fi(i.component)}},onUnmount(e){i.push(e)},unmount(){a&&(Xt(i,l._instance,16),e(null,l._container),delete l._container.__vue_app__)},provide:(e,t)=>(r.provides[e]=t,l),runWithContext(e){const t=Dr;Dr=l;try{return e()}finally{Dr=t}}};return l}}let Dr=null;function Hr(e,t){if(ni){let n=ni.provides;const r=ni.parent&&ni.parent.provides;r===n&&(n=ni.provides=Object.create(r)),n[e]=t}else;}function Wr(e,t,n=!1){const r=ni||fn;if(r||Dr){const o=Dr?Dr._context.provides:r?null==r.parent?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides:void 0;if(o&&e in o)return o[e];if(arguments.length>1)return n&&R(t)?t.call(r&&r.proxy):t}}const Ur={},qr=()=>Object.create(Ur),Kr=e=>Object.getPrototypeOf(e)===Ur;function Vr(e,t,n,r){const[o,i]=e.propsOptions;let a,l=!1;if(t)for(let s in t){if(N(s))continue;const c=t[s];let d;o&&S(o,d=L(s))?i&&i.includes(d)?(a||(a={}))[d]=c:n[d]=c:Co(e.emitsOptions,s)||s in r&&c===r[s]||(r[s]=c,l=!0)}if(i){const t=Rt(n),r=a||h;for(let a=0;a{s=!0;const[n,r]=Xr(e,t,!0);x(a,n),r&&l.push(...r)};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}if(!i&&!s)return P(e)&&r.set(e,g),g;if(k(i))for(let d=0;d"_"===e[0]||"$stable"===e,Jr=e=>k(e)?e.map(Zo):[Zo(e)],eo=(e,t,n)=>{if(t._n)return t;const r=bn(((...e)=>Jr(t(...e))),n);return r._c=!1,r},to=(e,t,n)=>{const r=e._ctx;for(const o in e){if(Yr(o))continue;const n=e[o];if(R(n))t[o]=eo(0,n,r);else if(null!=n){const e=Jr(n);t[o]=()=>e}}},no=(e,t)=>{const n=Jr(t);e.slots.default=()=>n},ro=(e,t,n)=>{for(const r in t)(n||"_"!==r)&&(e[r]=t[r])},oo=function(e,t){t&&t.pendingBranch?k(e)?t.effects.push(...e):t.effects.push(e):(k(n=e)?en.push(...n):tn&&-1===n.id?tn.splice(nn+1,0,n):1&n.flags||(en.push(n),n.flags|=1),sn());var n};function io(e){return function(e){Z().__VUE__=!0;const{insert:t,remove:n,patchProp:r,createElement:o,createText:i,createComment:a,setText:l,setElementText:s,parentNode:c,nextSibling:d,setScopeId:u=b,insertStaticContent:p}=e,f=(e,t,n,r=null,o=null,i=null,a=void 0,l=null,s=!!t.dynamicChildren)=>{if(e===t)return;e&&!Do(e,t)&&(r=Y(e),U(e,o,i,!0),e=null),-2===t.patchFlag&&(s=!1,t.dynamicChildren=null);const{type:c,ref:d,shapeFlag:u}=t;switch(c){case Ao:v(e,t,n,r);break;case Po:m(e,t,n,r);break;case To:null==e&&y(t,n,r,a);break;case Oo:P(e,t,n,r,o,i,a,l,s);break;default:1&u?C(e,t,n,r,o,i,a,l,s):6&u?$(e,t,n,r,o,i,a,l,s):(64&u||128&u)&&c.process(e,t,n,r,o,i,a,l,s,te)}null!=d&&o&&Vn(d,e&&e.ref,i,t||e,!t)},v=(e,n,r,o)=>{if(null==e)t(n.el=i(n.children),r,o);else{const t=n.el=e.el;n.children!==e.children&&l(t,n.children)}},m=(e,n,r,o)=>{null==e?t(n.el=a(n.children||""),r,o):n.el=e.el},y=(e,t,n,r)=>{[e.el,e.anchor]=p(e.children,t,n,r,e.el,e.anchor)},x=({el:e,anchor:n},r,o)=>{let i;for(;e&&e!==n;)i=d(e),t(e,r,o),e=i;t(n,r,o)},w=({el:e,anchor:t})=>{let r;for(;e&&e!==t;)r=d(e),n(e),e=r;n(t)},C=(e,t,n,r,o,i,a,l,s)=>{"svg"===t.type?a="svg":"math"===t.type&&(a="mathml"),null==e?k(t,n,r,o,i,a,l,s):R(e,t,o,i,a,l,s)},k=(e,n,i,a,l,c,d,u)=>{let p,f;const{props:h,shapeFlag:g,transition:b,dirs:v}=e;if(p=e.el=o(e.type,c,h&&h.is,h),8&g?s(p,e.children):16&g&&E(e.children,p,null,a,l,ao(e,c),d,u),v&&mn(e,null,a,"created"),_(p,e,e.scopeId,d,a),h){for(const e in h)"value"===e||N(e)||r(p,e,null,h[e],c,a);"value"in h&&r(p,"value",null,h.value,c),(f=h.onVnodeBeforeMount)&&Jo(f,a,e)}v&&mn(e,null,a,"beforeMount");const m=function(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}(l,b);m&&b.beforeEnter(p),t(p,n,i),((f=h&&h.onVnodeMounted)||m||v)&&oo((()=>{f&&Jo(f,a,e),m&&b.enter(p),v&&mn(e,null,a,"mounted")}),l)},_=(e,t,n,r,o)=>{if(n&&u(e,n),r)for(let i=0;i{for(let c=s;c{const c=t.el=e.el;let{patchFlag:d,dynamicChildren:u,dirs:p}=t;d|=16&e.patchFlag;const f=e.props||h,g=t.props||h;let b;if(n&&lo(n,!1),(b=g.onVnodeBeforeUpdate)&&Jo(b,n,t,e),p&&mn(t,e,n,"beforeUpdate"),n&&lo(n,!0),(f.innerHTML&&null==g.innerHTML||f.textContent&&null==g.textContent)&&s(c,""),u?O(e.dynamicChildren,u,c,n,o,ao(t,i),a):l||I(e,t,c,null,n,o,ao(t,i),a,!1),d>0){if(16&d)A(c,f,g,n,i);else if(2&d&&f.class!==g.class&&r(c,"class",null,g.class,i),4&d&&r(c,"style",f.style,g.style,i),8&d){const e=t.dynamicProps;for(let t=0;t{b&&Jo(b,n,t,e),p&&mn(t,e,n,"updated")}),o)},O=(e,t,n,r,o,i,a)=>{for(let l=0;l{if(t!==n){if(t!==h)for(const a in t)N(a)||a in n||r(e,a,t[a],null,i,o);for(const a in n){if(N(a))continue;const l=n[a],s=t[a];l!==s&&"value"!==a&&r(e,a,s,l,i,o)}"value"in n&&r(e,"value",t.value,n.value,i)}},P=(e,n,r,o,a,l,s,c,d)=>{const u=n.el=e?e.el:i(""),p=n.anchor=e?e.anchor:i("");let{patchFlag:f,dynamicChildren:h,slotScopeIds:g}=n;g&&(c=c?c.concat(g):g),null==e?(t(u,r,o),t(p,r,o),E(n.children||[],r,p,a,l,s,c,d)):f>0&&64&f&&h&&e.dynamicChildren?(O(e.dynamicChildren,h,r,a,l,s,c),(null!=n.key||a&&n===a.subTree)&&so(e,n,!0)):I(e,n,r,p,a,l,s,c,d)},$=(e,t,n,r,o,i,a,l,s)=>{t.slotScopeIds=l,null==e?512&t.shapeFlag?o.ctx.activate(t,n,r,a,s):z(t,n,r,o,i,a,s):M(e,t,s)},z=(e,t,n,r,o,i,a)=>{const l=e.component=function(e,t,n){const r=e.type,o=(t?t.appContext:e.appContext)||ei,i={uid:ti++,vnode:e,type:r,parent:t,appContext:o,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new de(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(o.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:Xr(r,o),emitsOptions:wo(r,o),emit:null,emitted:null,propsDefaults:h,inheritAttrs:r.inheritAttrs,ctx:h,data:h,props:h,attrs:h,slots:h,refs:h,setupState:h,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};i.ctx={_:i},i.root=t?t.root:i,i.emit=xo.bind(null,i),e.ce&&e.ce(i);return i}(e,r,o);if(Zn(e)&&(l.ctx.renderer=te),function(e,t=!1,n=!1){t&&ii(t);const{props:r,children:o}=e.vnode,i=si(e);(function(e,t,n,r=!1){const o={},i=qr();e.propsDefaults=Object.create(null),Vr(e,t,o,i);for(const a in e.propsOptions[0])a in o||(o[a]=void 0);n?e.props=r?o:xt(o):e.type.props?e.props=o:e.props=i,e.attrs=i})(e,r,i,t),((e,t,n)=>{const r=e.slots=qr();if(32&e.vnode.shapeFlag){const e=t._;e?(ro(r,t,n),n&&K(r,"_",e,!0)):to(t,r)}else t&&no(e,t)})(e,o,n);const a=i?function(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,kr);const{setup:r}=n;if(r){Ae();const n=e.setupContext=r.length>1?function(e){const t=t=>{e.exposed=t||{}};return{attrs:new Proxy(e.attrs,pi),slots:e.slots,emit:e.emit,expose:t}}(e):null,o=ai(e),i=Zt(r,e,0,[e.props,n]),a=T(i);if(Pe(),o(),!a&&!e.sp||Gn(e)||Kn(e),a){if(i.then(li,li),t)return i.then((t=>{di(e,t)})).catch((t=>{Qt(t,e,0)}));e.asyncDep=i}else di(e,i)}else ui(e)}(e,t):void 0;t&&ii(!1)}(l,!1,a),l.asyncDep){if(o&&o.registerDep(l,F,a),!e.el){const e=l.subTree=qo(Po);m(null,e,t,n)}}else F(l,e,t,n,o,i,a)},M=(e,t,n)=>{const r=t.component=e.component;if(function(e,t,n){const{props:r,children:o,component:i}=e,{props:a,children:l,patchFlag:s}=t,c=i.emitsOptions;if(t.dirs||t.transition)return!0;if(!(n&&s>=0))return!(!o&&!l||l&&l.$stable)||r!==a&&(r?!a||Eo(r,a,c):!!a);if(1024&s)return!0;if(16&s)return r?Eo(r,a,c):!!a;if(8&s){const e=t.dynamicProps;for(let t=0;t{const l=()=>{if(e.isMounted){let{next:t,bu:n,u:r,parent:s,vnode:d}=e;{const n=co(e);if(n)return t&&(t.el=d.el,B(e,t,a)),void n.asyncDep.then((()=>{e.isUnmounted||l()}))}let u,p=t;lo(e,!1),t?(t.el=d.el,B(e,t,a)):t=d,n&&q(n),(u=t.props&&t.props.onVnodeBeforeUpdate)&&Jo(u,s,t,d),lo(e,!0);const h=So(e),g=e.subTree;e.subTree=h,f(g,h,c(g.el),Y(g),e,o,i),t.el=h.el,null===p&&function({vnode:e,parent:t},n){for(;t;){const r=t.subTree;if(r.suspense&&r.suspense.activeBranch===e&&(r.el=e.el),r!==e)break;(e=t.vnode).el=n,t=t.parent}}(e,h.el),r&&oo(r,o),(u=t.props&&t.props.onVnodeUpdated)&&oo((()=>Jo(u,s,t,d)),o)}else{let a;const{el:l,props:s}=t,{bm:c,m:d,parent:u,root:p,type:h}=e,g=Gn(t);lo(e,!1),c&&q(c),!g&&(a=s&&s.onVnodeBeforeMount)&&Jo(a,u,t),lo(e,!0);{p.ce&&p.ce._injectChildStyle(h);const a=e.subTree=So(e);f(null,a,n,r,e,o,i),t.el=a.el}if(d&&oo(d,o),!g&&(a=s&&s.onVnodeMounted)){const e=t;oo((()=>Jo(a,u,e)),o)}(256&t.shapeFlag||u&&Gn(u.vnode)&&256&u.vnode.shapeFlag)&&e.a&&oo(e.a,o),e.isMounted=!0,t=n=r=null}};e.scope.on();const s=e.effect=new he(l);e.scope.off();const d=e.update=s.run.bind(s),u=e.job=s.runIfDirty.bind(s);u.i=e,u.id=e.uid,s.scheduler=()=>ln(u),lo(e,!0),d()},B=(e,t,n)=>{t.component=e;const r=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,r){const{props:o,attrs:i,vnode:{patchFlag:a}}=e,l=Rt(o),[s]=e.propsOptions;let c=!1;if(!(r||a>0)||16&a){let r;Vr(e,t,o,i)&&(c=!0);for(const i in l)t&&(S(t,i)||(r=D(i))!==i&&S(t,r))||(s?!n||void 0===n[i]&&void 0===n[r]||(o[i]=Gr(s,l,i,void 0,e,!0)):delete o[i]);if(i!==l)for(const e in i)t&&S(t,e)||(delete i[e],c=!0)}else if(8&a){const n=e.vnode.dynamicProps;for(let r=0;r{const{vnode:r,slots:o}=e;let i=!0,a=h;if(32&r.shapeFlag){const e=t._;e?n&&1===e?i=!1:ro(o,t,n):(i=!t.$stable,to(t,o)),a=t}else t&&(no(e,t),a={default:1});if(i)for(const l in o)Yr(l)||null!=a[l]||delete o[l]})(e,t.children,n),Ae(),cn(e),Pe()},I=(e,t,n,r,o,i,a,l,c=!1)=>{const d=e&&e.children,u=e?e.shapeFlag:0,p=t.children,{patchFlag:f,shapeFlag:h}=t;if(f>0){if(128&f)return void H(d,p,n,r,o,i,a,l,c);if(256&f)return void j(d,p,n,r,o,i,a,l,c)}8&h?(16&u&&Q(d,o,i),p!==d&&s(n,p)):16&u?16&h?H(d,p,n,r,o,i,a,l,c):Q(d,o,i,!0):(8&u&&s(n,""),16&h&&E(p,n,r,o,i,a,l,c))},j=(e,t,n,r,o,i,a,l,s)=>{t=t||g;const c=(e=e||g).length,d=t.length,u=Math.min(c,d);let p;for(p=0;pd?Q(e,o,i,!0,!1,u):E(t,n,r,o,i,a,l,s,u)},H=(e,t,n,r,o,i,a,l,s)=>{let c=0;const d=t.length;let u=e.length-1,p=d-1;for(;c<=u&&c<=p;){const r=e[c],d=t[c]=s?Xo(t[c]):Zo(t[c]);if(!Do(r,d))break;f(r,d,n,null,o,i,a,l,s),c++}for(;c<=u&&c<=p;){const r=e[u],c=t[p]=s?Xo(t[p]):Zo(t[p]);if(!Do(r,c))break;f(r,c,n,null,o,i,a,l,s),u--,p--}if(c>u){if(c<=p){const e=p+1,u=ep)for(;c<=u;)U(e[c],o,i,!0),c++;else{const h=c,b=c,v=new Map;for(c=b;c<=p;c++){const e=t[c]=s?Xo(t[c]):Zo(t[c]);null!=e.key&&v.set(e.key,c)}let m,y=0;const x=p-b+1;let w=!1,C=0;const S=new Array(x);for(c=0;c=x){U(r,o,i,!0);continue}let d;if(null!=r.key)d=v.get(r.key);else for(m=b;m<=p;m++)if(0===S[m-b]&&Do(r,t[m])){d=m;break}void 0===d?U(r,o,i,!0):(S[d-b]=c+1,d>=C?C=d:w=!0,f(r,t[d],n,null,o,i,a,l,s),y++)}const k=w?function(e){const t=e.slice(),n=[0];let r,o,i,a,l;const s=e.length;for(r=0;r>1,e[n[l]]0&&(t[r]=n[i-1]),n[i]=r)}}i=n.length,a=n[i-1];for(;i-- >0;)n[i]=a,a=t[a];return n}(S):g;for(m=k.length-1,c=x-1;c>=0;c--){const e=b+c,u=t[e],p=e+1{const{el:a,type:l,transition:s,children:c,shapeFlag:d}=e;if(6&d)return void W(e.component.subTree,n,r,o);if(128&d)return void e.suspense.move(n,r,o);if(64&d)return void l.move(e,n,r,te);if(l===Oo){t(a,n,r);for(let e=0;es.enter(a)),i);else{const{leave:e,delayLeave:o,afterLeave:i}=s,l=()=>t(a,n,r),c=()=>{e(a,(()=>{l(),i&&i()}))};o?o(a,l,c):c()}else t(a,n,r)},U=(e,t,n,r=!1,o=!1)=>{const{type:i,props:a,ref:l,children:s,dynamicChildren:c,shapeFlag:d,patchFlag:u,dirs:p,cacheIndex:f}=e;if(-2===u&&(o=!1),null!=l&&Vn(l,null,n,e,!0),null!=f&&(t.renderCache[f]=void 0),256&d)return void t.ctx.deactivate(e);const h=1&d&&p,g=!Gn(e);let b;if(g&&(b=a&&a.onVnodeBeforeUnmount)&&Jo(b,t,e),6&d)X(e.component,n,r);else{if(128&d)return void e.suspense.unmount(n,r);h&&mn(e,null,t,"beforeUnmount"),64&d?e.type.remove(e,t,n,te,r):c&&!c.hasOnce&&(i!==Oo||u>0&&64&u)?Q(c,t,n,!1,!0):(i===Oo&&384&u||!o&&16&d)&&Q(s,t,n),r&&V(e)}(g&&(b=a&&a.onVnodeUnmounted)||h)&&oo((()=>{b&&Jo(b,t,e),h&&mn(e,null,t,"unmounted")}),n)},V=e=>{const{type:t,el:r,anchor:o,transition:i}=e;if(t===Oo)return void G(r,o);if(t===To)return void w(e);const a=()=>{n(r),i&&!i.persisted&&i.afterLeave&&i.afterLeave()};if(1&e.shapeFlag&&i&&!i.persisted){const{leave:t,delayLeave:n}=i,o=()=>t(r,a);n?n(e.el,a,o):o()}else a()},G=(e,t)=>{let r;for(;e!==t;)r=d(e),n(e),e=r;n(t)},X=(e,t,n)=>{const{bum:r,scope:o,job:i,subTree:a,um:l,m:s,a:c}=e;uo(s),uo(c),r&&q(r),o.stop(),i&&(i.flags|=8,U(a,e,t,n)),l&&oo(l,t),oo((()=>{e.isUnmounted=!0}),t),t&&t.pendingBranch&&!t.isUnmounted&&e.asyncDep&&!e.asyncResolved&&e.suspenseId===t.pendingId&&(t.deps--,0===t.deps&&t.resolve())},Q=(e,t,n,r=!1,o=!1,i=0)=>{for(let a=i;a{if(6&e.shapeFlag)return Y(e.component.subTree);if(128&e.shapeFlag)return e.suspense.next();const t=d(e.anchor||e.el),n=t&&t[yn];return n?d(n):t};let J=!1;const ee=(e,t,n)=>{null==e?t._vnode&&U(t._vnode,null,null,!0):f(t._vnode||null,e,t,null,null,null,n),t._vnode=e,J||(J=!0,cn(),dn(),J=!1)},te={p:f,um:U,m:W,r:V,mt:z,mc:E,pc:I,pbc:O,n:Y,o:e};let ne;return{render:ee,hydrate:ne,createApp:jr(ee)}}(e)}function ao({type:e,props:t},n){return"svg"===n&&"foreignObject"===e||"mathml"===n&&"annotation-xml"===e&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function lo({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function so(e,t,n=!1){const r=e.children,o=t.children;if(k(r)&&k(o))for(let i=0;iWr(po);function ho(e,t){return bo(e,null,t)}function go(e,t,n){return bo(e,t,n)}function bo(e,t,n=h){const{immediate:r,deep:o,flush:i,once:a}=n,l=x({},n),s=t&&r||!t&&"post"!==i;let c;if(ci)if("sync"===i){const e=fo();c=e.__watcherHandles||(e.__watcherHandles=[])}else if(!s){const e=()=>{};return e.stop=b,e.resume=b,e.pause=b,e}const d=ni;l.call=(e,t,n)=>Xt(e,d,t,n);let u=!1;"post"===i?l.scheduler=e=>{oo(e,d&&d.suspense)}:"sync"!==i&&(u=!0,l.scheduler=(e,t)=>{t?e():ln(e)}),l.augmentJob=e=>{t&&(e.flags|=4),u&&(e.flags|=2,d&&(e.id=d.uid,e.i=d))};const p=Vt(e,t,l);return ci&&(c?c.push(p):s&&p()),p}function vo(e,t,n){const r=this.proxy,o=O(e)?e.includes(".")?mo(r,e):()=>r[e]:e.bind(r,r);let i;R(t)?i=t:(i=t.handler,n=t);const a=ai(this),l=bo(o,i.bind(r),n);return a(),l}function mo(e,t){const n=t.split(".");return()=>{let t=e;for(let e=0;e"modelValue"===t||"model-value"===t?e.modelModifiers:e[`${t}Modifiers`]||e[`${L(t)}Modifiers`]||e[`${D(t)}Modifiers`];function xo(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||h;let o=n;const i=t.startsWith("update:"),a=i&&yo(r,t.slice(7));let l;a&&(a.trim&&(o=n.map((e=>O(e)?e.trim():e))),a.number&&(o=n.map(V)));let s=r[l=W(t)]||r[l=W(L(t))];!s&&i&&(s=r[l=W(D(t))]),s&&Xt(s,e,6,o);const c=r[l+"Once"];if(c){if(e.emitted){if(e.emitted[l])return}else e.emitted={};e.emitted[l]=!0,Xt(c,e,6,o)}}function wo(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(void 0!==o)return o;const i=e.emits;let a={},l=!1;if(!R(e)){const r=e=>{const n=wo(e,t,!0);n&&(l=!0,x(a,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return i||l?(k(i)?i.forEach((e=>a[e]=null)):x(a,i),P(e)&&r.set(e,a),a):(P(e)&&r.set(e,null),null)}function Co(e,t){return!(!e||!m(t))&&(t=t.slice(2).replace(/Once$/,""),S(e,t[0].toLowerCase()+t.slice(1))||S(e,D(t))||S(e,t))}function So(e){const{type:t,vnode:n,proxy:r,withProxy:o,propsOptions:[i],slots:a,attrs:l,emit:s,render:c,renderCache:d,props:u,data:p,setupState:f,ctx:h,inheritAttrs:g}=e,b=gn(e);let v,m;try{if(4&n.shapeFlag){const e=o||r,t=e;v=Zo(c.call(t,e,d,u,f,p,h)),m=l}else{const e=t;0,v=Zo(e.length>1?e(u,{attrs:l,slots:a,emit:s}):e(u,null)),m=t.props?l:ko(l)}}catch(w){$o.length=0,Qt(w,e,1),v=qo(Po)}let x=v;if(m&&!1!==g){const e=Object.keys(m),{shapeFlag:t}=x;e.length&&7&t&&(i&&e.some(y)&&(m=_o(m,i)),x=Ko(x,m,!1,!0))}return n.dirs&&(x=Ko(x,null,!1,!0),x.dirs=x.dirs?x.dirs.concat(n.dirs):n.dirs),n.transition&&Wn(x,n.transition),v=x,gn(b),v}const ko=e=>{let t;for(const n in e)("class"===n||"style"===n||m(n))&&((t||(t={}))[n]=e[n]);return t},_o=(e,t)=>{const n={};for(const r in e)y(r)&&r.slice(9)in t||(n[r]=e[r]);return n};function Eo(e,t,n){const r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let o=0;oe.__isSuspense;const Oo=Symbol.for("v-fgt"),Ao=Symbol.for("v-txt"),Po=Symbol.for("v-cmt"),To=Symbol.for("v-stc"),$o=[];let zo=null;function Mo(e=!1){$o.push(zo=e?null:[])}let Fo=1;function No(e,t=!1){Fo+=e,e<0&&zo&&t&&(zo.hasOnce=!0)}function Bo(e){return e.dynamicChildren=Fo>0?zo||g:null,$o.pop(),zo=$o[$o.length-1]||null,Fo>0&&zo&&zo.push(e),e}function Io(e,t,n,r,o,i){return Bo(Uo(e,t,n,r,o,i,!0))}function Lo(e,t,n,r,o){return Bo(qo(e,t,n,r,o,!0))}function jo(e){return!!e&&!0===e.__v_isVNode}function Do(e,t){return e.type===t.type&&e.key===t.key}const Ho=({key:e})=>null!=e?e:null,Wo=({ref:e,ref_key:t,ref_for:n})=>("number"==typeof e&&(e=""+e),null!=e?O(e)||Tt(e)||R(e)?{i:fn,r:e,k:t,f:!!n}:e:null);function Uo(e,t=null,n=null,r=0,o=null,i=(e===Oo?0:1),a=!1,l=!1){const s={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Ho(t),ref:t&&Wo(t),scopeId:hn,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:i,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:fn};return l?(Qo(s,n),128&i&&e.normalize(s)):n&&(s.shapeFlag|=O(n)?8:16),Fo>0&&!a&&zo&&(s.patchFlag>0||6&i)&&32!==s.patchFlag&&zo.push(s),s}const qo=function(e,t=null,n=null,r=0,o=null,i=!1){e&&e!==hr||(e=Po);if(jo(e)){const r=Ko(e,t,!0);return n&&Qo(r,n),Fo>0&&!i&&zo&&(6&r.shapeFlag?zo[zo.indexOf(e)]=r:zo.push(r)),r.patchFlag=-2,r}a=e,R(a)&&"__vccOpts"in a&&(e=e.__vccOpts);var a;if(t){t=function(e){return e?Et(e)||Kr(e)?x({},e):e:null}(t);let{class:e,style:n}=t;e&&!O(e)&&(t.class=te(e)),P(n)&&(Et(n)&&!k(n)&&(n=x({},n)),t.style=X(n))}const l=O(e)?1:Ro(e)?128:xn(e)?64:P(e)?4:R(e)?2:0;return Uo(e,t,n,r,o,l,i,!0)};function Ko(e,t,n=!1,r=!1){const{props:o,ref:i,patchFlag:a,children:l,transition:s}=e,c=t?Yo(o||{},t):o,d={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&Ho(c),ref:t&&t.ref?n&&i?k(i)?i.concat(Wo(t)):[i,Wo(t)]:Wo(t):i,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!==Oo?-1===a?16:16|a:a,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:s,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ko(e.ssContent),ssFallback:e.ssFallback&&Ko(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return s&&r&&Wn(d,s.clone(d)),d}function Vo(e=" ",t=0){return qo(Ao,null,e,t)}function Go(e,t){const n=qo(To,null,e);return n.staticCount=t,n}function Zo(e){return null==e||"boolean"==typeof e?qo(Po):k(e)?qo(Oo,null,e.slice()):jo(e)?Xo(e):qo(Ao,null,String(e))}function Xo(e){return null===e.el&&-1!==e.patchFlag||e.memo?e:Ko(e)}function Qo(e,t){let n=0;const{shapeFlag:r}=e;if(null==t)t=null;else if(k(t))n=16;else if("object"==typeof t){if(65&r){const n=t.default;return void(n&&(n._c&&(n._d=!1),Qo(e,n()),n._c&&(n._d=!0)))}{n=32;const r=t._;r||Kr(t)?3===r&&fn&&(1===fn.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=fn}}else R(t)?(t={default:t,_ctx:fn},n=32):(t=String(t),64&r?(n=16,t=[Vo(t)]):n=8);e.children=t,e.shapeFlag|=n}function Yo(...e){const t={};for(let n=0;nni||fn;let oi,ii;{const e=Z(),t=(t,n)=>{let r;return(r=e[t])||(r=e[t]=[]),r.push(n),e=>{r.length>1?r.forEach((t=>t(e))):r[0](e)}};oi=t("__VUE_INSTANCE_SETTERS__",(e=>ni=e)),ii=t("__VUE_SSR_SETTERS__",(e=>ci=e))}const ai=e=>{const t=ni;return oi(e),e.scope.on(),()=>{e.scope.off(),oi(t)}},li=()=>{ni&&ni.scope.off(),oi(null)};function si(e){return 4&e.vnode.shapeFlag}let ci=!1;function di(e,t,n){R(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:P(t)&&(e.setupState=It(t)),ui(e)}function ui(e,t,n){const r=e.type;e.render||(e.render=r.render||b);{const t=ai(e);Ae();try{Rr(e)}finally{Pe(),t()}}}const pi={get:(e,t)=>(je(e,0,""),e[t])};function fi(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(It(Ot(e.exposed)),{get:(t,n)=>n in t?t[n]:n in Cr?Cr[n](e):void 0,has:(e,t)=>t in e||t in Cr})):e.proxy}function hi(e,t=!0){return R(e)?e.displayName||e.name:e.name||t&&e.__name}const gi=(e,t)=>{const n=function(e,t,n=!1){let r,o;return R(e)?r=e:(r=e.get,o=e.set),new Wt(r,o,n)}(e,0,ci);return n};function bi(e,t,n){const r=arguments.length;return 2===r?P(t)&&!k(t)?jo(t)?qo(e,null,[t]):qo(e,t):qo(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):3===r&&jo(n)&&(n=[n]),qo(e,t,n))}const vi="3.5.13"; -/** -* @vue/runtime-dom v3.5.13 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let mi;const yi="undefined"!=typeof window&&window.trustedTypes;if(yi)try{mi=yi.createPolicy("vue",{createHTML:e=>e})}catch(XT){}const xi=mi?e=>mi.createHTML(e):e=>e,wi="undefined"!=typeof document?document:null,Ci=wi&&wi.createElement("template"),Si={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o="svg"===t?wi.createElementNS("http://www.w3.org/2000/svg",e):"mathml"===t?wi.createElementNS("http://www.w3.org/1998/Math/MathML",e):n?wi.createElement(e,{is:n}):wi.createElement(e);return"select"===e&&r&&null!=r.multiple&&o.setAttribute("multiple",r.multiple),o},createText:e=>wi.createTextNode(e),createComment:e=>wi.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>wi.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,i){const a=n?n.previousSibling:t.lastChild;if(o&&(o===i||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),o!==i&&(o=o.nextSibling););else{Ci.innerHTML=xi("svg"===r?`${e}`:"mathml"===r?`${e}`:e);const o=Ci.content;if("svg"===r||"mathml"===r){const e=o.firstChild;for(;e.firstChild;)o.appendChild(e.firstChild);o.removeChild(e)}t.insertBefore(o,n)}return[a?a.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},ki="transition",_i="animation",Ei=Symbol("_vtc"),Ri={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},Oi=x({},Fn,Ri),Ai=(e=>(e.displayName="Transition",e.props=Oi,e))(((e,{slots:t})=>bi(In,$i(e),t))),Pi=(e,t=[])=>{k(e)?e.forEach((e=>e(...t))):e&&e(...t)},Ti=e=>!!e&&(k(e)?e.some((e=>e.length>1)):e.length>1);function $i(e){const t={};for(const x in e)x in Ri||(t[x]=e[x]);if(!1===e.css)return t;const{name:n="v",type:r,duration:o,enterFromClass:i=`${n}-enter-from`,enterActiveClass:a=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:s=i,appearActiveClass:c=a,appearToClass:d=l,leaveFromClass:u=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:f=`${n}-leave-to`}=e,h=function(e){if(null==e)return null;if(P(e))return[zi(e.enter),zi(e.leave)];{const t=zi(e);return[t,t]}}(o),g=h&&h[0],b=h&&h[1],{onBeforeEnter:v,onEnter:m,onEnterCancelled:y,onLeave:w,onLeaveCancelled:C,onBeforeAppear:S=v,onAppear:k=m,onAppearCancelled:_=y}=t,E=(e,t,n,r)=>{e._enterCancelled=r,Fi(e,t?d:l),Fi(e,t?c:a),n&&n()},R=(e,t)=>{e._isLeaving=!1,Fi(e,u),Fi(e,f),Fi(e,p),t&&t()},O=e=>(t,n)=>{const o=e?k:m,a=()=>E(t,e,n);Pi(o,[t,a]),Ni((()=>{Fi(t,e?s:i),Mi(t,e?d:l),Ti(o)||Ii(t,r,g,a)}))};return x(t,{onBeforeEnter(e){Pi(v,[e]),Mi(e,i),Mi(e,a)},onBeforeAppear(e){Pi(S,[e]),Mi(e,s),Mi(e,c)},onEnter:O(!1),onAppear:O(!0),onLeave(e,t){e._isLeaving=!0;const n=()=>R(e,t);Mi(e,u),e._enterCancelled?(Mi(e,p),Hi()):(Hi(),Mi(e,p)),Ni((()=>{e._isLeaving&&(Fi(e,u),Mi(e,f),Ti(w)||Ii(e,r,b,n))})),Pi(w,[e,n])},onEnterCancelled(e){E(e,!1,void 0,!0),Pi(y,[e])},onAppearCancelled(e){E(e,!0,void 0,!0),Pi(_,[e])},onLeaveCancelled(e){R(e),Pi(C,[e])}})}function zi(e){const t=(e=>{const t=O(e)?Number(e):NaN;return isNaN(t)?e:t})(e);return t}function Mi(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.add(t))),(e[Ei]||(e[Ei]=new Set)).add(t)}function Fi(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.remove(t)));const n=e[Ei];n&&(n.delete(t),n.size||(e[Ei]=void 0))}function Ni(e){requestAnimationFrame((()=>{requestAnimationFrame(e)}))}let Bi=0;function Ii(e,t,n,r){const o=e._endId=++Bi,i=()=>{o===e._endId&&r()};if(null!=n)return setTimeout(i,n);const{type:a,timeout:l,propCount:s}=Li(e,t);if(!a)return r();const c=a+"end";let d=0;const u=()=>{e.removeEventListener(c,p),i()},p=t=>{t.target===e&&++d>=s&&u()};setTimeout((()=>{d(n[e]||"").split(", "),o=r(`${ki}Delay`),i=r(`${ki}Duration`),a=ji(o,i),l=r(`${_i}Delay`),s=r(`${_i}Duration`),c=ji(l,s);let d=null,u=0,p=0;t===ki?a>0&&(d=ki,u=a,p=i.length):t===_i?c>0&&(d=_i,u=c,p=s.length):(u=Math.max(a,c),d=u>0?a>c?ki:_i:null,p=d?d===ki?i.length:s.length:0);return{type:d,timeout:u,propCount:p,hasTransform:d===ki&&/\b(transform|all)(,|$)/.test(r(`${ki}Property`).toString())}}function ji(e,t){for(;e.lengthDi(t)+Di(e[n]))))}function Di(e){return"auto"===e?0:1e3*Number(e.slice(0,-1).replace(",","."))}function Hi(){return document.body.offsetHeight}const Wi=Symbol("_vod"),Ui=Symbol("_vsh"),qi={beforeMount(e,{value:t},{transition:n}){e[Wi]="none"===e.style.display?"":e.style.display,n&&t?n.beforeEnter(e):Ki(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),Ki(e,!0),r.enter(e)):r.leave(e,(()=>{Ki(e,!1)})):Ki(e,t))},beforeUnmount(e,{value:t}){Ki(e,t)}};function Ki(e,t){e.style.display=t?e[Wi]:"none",e[Ui]=!t}const Vi=Symbol(""),Gi=/(^|;)\s*display\s*:/;const Zi=/\s*!important$/;function Xi(e,t,n){if(k(n))n.forEach((n=>Xi(e,t,n)));else if(null==n&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=function(e,t){const n=Yi[t];if(n)return n;let r=L(t);if("filter"!==r&&r in e)return Yi[t]=r;r=H(r);for(let o=0;o{if(e._vts){if(e._vts<=n.attached)return}else e._vts=Date.now();Xt(function(e,t){if(k(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map((e=>t=>!t._stopped&&e&&e(t)))}return t}(e,n.value),t,5,[e])};return n.value=e,n.attached=la(),n}(r,o);!function(e,t,n,r){e.addEventListener(t,n,r)}(e,n,a,l)}else a&&(!function(e,t,n,r){e.removeEventListener(t,n,r)}(e,n,a,l),i[t]=void 0)}}const oa=/(?:Once|Passive|Capture)$/;let ia=0;const aa=Promise.resolve(),la=()=>ia||(aa.then((()=>ia=0)),ia=Date.now());const sa=e=>111===e.charCodeAt(0)&&110===e.charCodeAt(1)&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123;const ca=new WeakMap,da=new WeakMap,ua=Symbol("_moveCb"),pa=Symbol("_enterCb"),fa=(e=>(delete e.props.mode,e))({name:"TransitionGroup",props:x({},Oi,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=ri(),r=zn();let o,i;return ir((()=>{if(!o.length)return;const t=e.moveClass||`${e.name||"v"}-move`;if(!function(e,t,n){const r=e.cloneNode(),o=e[Ei];o&&o.forEach((e=>{e.split(/\s+/).forEach((e=>e&&r.classList.remove(e)))}));n.split(/\s+/).forEach((e=>e&&r.classList.add(e))),r.style.display="none";const i=1===t.nodeType?t:t.parentNode;i.appendChild(r);const{hasTransform:a}=Li(r);return i.removeChild(r),a}(o[0].el,n.vnode.el,t))return;o.forEach(ha),o.forEach(ga);const r=o.filter(ba);Hi(),r.forEach((e=>{const n=e.el,r=n.style;Mi(n,t),r.transform=r.webkitTransform=r.transitionDuration="";const o=n[ua]=e=>{e&&e.target!==n||e&&!/transform$/.test(e.propertyName)||(n.removeEventListener("transitionend",o),n[ua]=null,Fi(n,t))};n.addEventListener("transitionend",o)}))})),()=>{const a=Rt(e),l=$i(a);let s=a.tag||Oo;if(o=[],i)for(let e=0;ee.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&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>va.some((n=>e[`${n}Key`]&&!t.includes(n)))},ya=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(n,...r)=>{for(let e=0;e{const a="svg"===o;"class"===t?function(e,t,n){const r=e[Ei];r&&(t=(t?[t,...r]:[...r]).join(" ")),null==t?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}(e,r,a):"style"===t?function(e,t,n){const r=e.style,o=O(n);let i=!1;if(n&&!o){if(t)if(O(t))for(const e of t.split(";")){const t=e.slice(0,e.indexOf(":")).trim();null==n[t]&&Xi(r,t,"")}else for(const e in t)null==n[e]&&Xi(r,e,"");for(const e in n)"display"===e&&(i=!0),Xi(r,e,n[e])}else if(o){if(t!==n){const e=r[Vi];e&&(n+=";"+e),r.cssText=n,i=Gi.test(n)}}else t&&e.removeAttribute("style");Wi in e&&(e[Wi]=i?r.display:"",e[Ui]&&(r.display="none"))}(e,n,r):m(t)?y(t)||ra(e,t,0,r,i):("."===t[0]?(t=t.slice(1),1):"^"===t[0]?(t=t.slice(1),0):function(e,t,n,r){if(r)return"innerHTML"===t||"textContent"===t||!!(t in e&&sa(t)&&R(n));if("spellcheck"===t||"draggable"===t||"translate"===t)return!1;if("form"===t)return!1;if("list"===t&&"INPUT"===e.tagName)return!1;if("type"===t&&"TEXTAREA"===e.tagName)return!1;if("width"===t||"height"===t){const t=e.tagName;if("IMG"===t||"VIDEO"===t||"CANVAS"===t||"SOURCE"===t)return!1}if(sa(t)&&O(n))return!1;return t in e}(e,t,r,a))?(ta(e,t,r),e.tagName.includes("-")||"value"!==t&&"checked"!==t&&"selected"!==t||ea(e,t,r,a,0,"value"!==t)):!e._isVueCE||!/[A-Z]/.test(t)&&O(r)?("true-value"===t?e._trueValue=r:"false-value"===t&&(e._falseValue=r),ea(e,t,r,a)):ta(e,L(t),r,0,t)}},Si);let wa;const Ca=(...e)=>{const t=(wa||(wa=io(xa))).createApp(...e),{mount:n}=t;return t.mount=e=>{const r=function(e){if(O(e)){return document.querySelector(e)}return e}(e);if(!r)return;const o=t._component;R(o)||o.render||o.template||(o.template=r.innerHTML),1===r.nodeType&&(r.textContent="");const i=n(r,!1,function(e){if(e instanceof SVGElement)return"svg";if("function"==typeof MathMLElement&&e instanceof MathMLElement)return"mathml"}(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),i},t};var Sa,ka,_a,Ea,Ra,Oa,Aa,Pa,Ta,$a,za,Ma,Fa,Na,Ba,Ia,La,ja,Da,Ha,Wa,Ua,qa,Ka,Va,Ga,Za,Xa,Qa,Ya,Ja,el,tl,nl,rl,ol,il,al,ll,sl,cl,dl,ul,pl,fl,hl,gl,bl,vl,ml,yl,xl,wl,Cl,Sl,kl,_l,El,Rl,Ol,Al,Pl,Tl,$l,zl,Ml,Fl,Nl,Bl,Il,Ll,jl,Dl,Hl,Wl,Ul,ql="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function Kl(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Vl(e){if(e.__esModule)return e;var t=e.default;if("function"==typeof t){var n=function e(){return this instanceof e?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach((function(t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})})),n}function Gl(){if(ka)return Sa;function e(t){return t instanceof Map?t.clear=t.delete=t.set=function(){throw new Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=function(){throw new Error("set is read-only")}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach((n=>{const r=t[n],o=typeof r;"object"!==o&&"function"!==o||Object.isFrozen(r)||e(r)})),t}ka=1;class t{constructor(e){void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function n(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function r(e,...t){const n=Object.create(null);for(const r in e)n[r]=e[r];return t.forEach((function(e){for(const t in e)n[t]=e[t]})),n}const o=e=>!!e.scope;class i{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=n(e)}openNode(e){if(!o(e))return;const t=((e,{prefix:t})=>{if(e.startsWith("language:"))return e.replace("language:","language-");if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map(((e,t)=>`${e}${"_".repeat(t+1)}`))].join(" ")}return`${t}${e}`})(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){o(e)&&(this.buffer+="")}value(){return this.buffer}span(e){this.buffer+=``}}const a=(e={})=>{const t={children:[]};return Object.assign(t,e),t};class l{constructor(){this.rootNode=a(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t=a({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t),t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{l._collapse(e)})))}}class s extends l{constructor(e){super(),this.options=e}addText(e){""!==e&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){const n=e.root;t&&(n.scope=`language:${t}`),this.add(n)}toHTML(){return new i(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function c(e){return e?"string"==typeof e?e:e.source:null}function d(e){return f("(?=",e,")")}function u(e){return f("(?:",e,")*")}function p(e){return f("(?:",e,")?")}function f(...e){return e.map((e=>c(e))).join("")}function h(...e){const t=function(e){const t=e[e.length-1];return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}(e);return"("+(t.capture?"":"?:")+e.map((e=>c(e))).join("|")+")"}function g(e){return new RegExp(e.toString()+"|").exec("").length-1}const b=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function v(e,{joinWith:t}){let n=0;return e.map((e=>{n+=1;const t=n;let r=c(e),o="";for(;r.length>0;){const e=b.exec(r);if(!e){o+=r;break}o+=r.substring(0,e.index),r=r.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?o+="\\"+String(Number(e[1])+t):(o+=e[0],"("===e[0]&&n++)}return o})).map((e=>`(${e})`)).join(t)}const m="[a-zA-Z]\\w*",y="[a-zA-Z_]\\w*",x="\\b\\d+(\\.\\d+)?",w="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",C="\\b(0b[01]+)",S={begin:"\\\\[\\s\\S]",relevance:0},k={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[S]},_={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[S]},E=function(e,t,n={}){const o=r({scope:"comment",begin:e,end:t,contains:[]},n);o.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const i=h("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return o.contains.push({begin:f(/[ ]+/,"(",i,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),o},R=E("//","$"),O=E("/\\*","\\*/"),A=E("#","$"),P={scope:"number",begin:x,relevance:0},T={scope:"number",begin:w,relevance:0},$={scope:"number",begin:C,relevance:0},z={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[S,{begin:/\[/,end:/\]/,relevance:0,contains:[S]}]},M={scope:"title",begin:m,relevance:0},F={scope:"title",begin:y,relevance:0},N={begin:"\\.\\s*"+y,relevance:0};var B=Object.freeze({__proto__:null,APOS_STRING_MODE:k,BACKSLASH_ESCAPE:S,BINARY_NUMBER_MODE:$,BINARY_NUMBER_RE:C,COMMENT:E,C_BLOCK_COMMENT_MODE:O,C_LINE_COMMENT_MODE:R,C_NUMBER_MODE:T,C_NUMBER_RE:w,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})},HASH_COMMENT_MODE:A,IDENT_RE:m,MATCH_NOTHING_RE:/\b\B/,METHOD_GUARD:N,NUMBER_MODE:P,NUMBER_RE:x,PHRASAL_WORDS_MODE:{begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},QUOTE_STRING_MODE:_,REGEXP_MODE:z,RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=f(t,/.*\b/,e.binary,/\b.*/)),r({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)},TITLE_MODE:M,UNDERSCORE_IDENT_RE:y,UNDERSCORE_TITLE_MODE:F});function I(e,t){"."===e.input[e.index-1]&&t.ignoreMatch()}function L(e,t){void 0!==e.className&&(e.scope=e.className,delete e.className)}function j(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=I,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,void 0===e.relevance&&(e.relevance=0))}function D(e,t){Array.isArray(e.illegal)&&(e.illegal=h(...e.illegal))}function H(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function W(e,t){void 0===e.relevance&&(e.relevance=1)}const U=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},e);Object.keys(e).forEach((t=>{delete e[t]})),e.keywords=n.keywords,e.begin=f(n.beforeMatch,d(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},q=["of","and","for","in","not","or","if","then","parent","list","value"];function K(e,t,n="keyword"){const r=Object.create(null);return"string"==typeof e?o(n,e.split(" ")):Array.isArray(e)?o(n,e):Object.keys(e).forEach((function(n){Object.assign(r,K(e[n],t,n))})),r;function o(e,n){t&&(n=n.map((e=>e.toLowerCase()))),n.forEach((function(t){const n=t.split("|");r[n[0]]=[e,V(n[0],n[1])]}))}}function V(e,t){return t?Number(t):function(e){return q.includes(e.toLowerCase())}(e)?0:1}const G={},Z=(e,t)=>{G[`${e}/${t}`]||(G[`${e}/${t}`]=!0)},X=new Error;function Q(e,t,{key:n}){let r=0;const o=e[n],i={},a={};for(let l=1;l<=t.length;l++)a[l+r]=o[l],i[l+r]=!0,r+=g(t[l-1]);e[n]=a,e[n]._emit=i,e[n]._multi=!0}function Y(e){!function(e){e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope,delete e.scope)}(e),"string"==typeof e.beginScope&&(e.beginScope={_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope}),function(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw X;if("object"!=typeof e.beginScope||null===e.beginScope)throw X;Q(e,e.begin,{key:"beginScope"}),e.begin=v(e.begin,{joinWith:""})}}(e),function(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw X;if("object"!=typeof e.endScope||null===e.endScope)throw X;Q(e,e.end,{key:"endScope"}),e.end=v(e.end,{joinWith:""})}}(e)}function J(e){function t(t,n){return new RegExp(c(t),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(n?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=g(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null);const e=this.regexes.map((e=>e[1]));this.matcherRe=t(v(e,{joinWith:"|"}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;const t=this.matcherRe.exec(e);if(!t)return null;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),r=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,r)}}class o{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))),t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;let n=t.exec(e);if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)}return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&this.considerAll()),n}}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=r(e.classNameAliases||{}),function n(i,a){const l=i;if(i.isCompiled)return l;[L,H,Y,U].forEach((e=>e(i,a))),e.compilerExtensions.forEach((e=>e(i,a))),i.__beforeBegin=null,[j,D,W].forEach((e=>e(i,a))),i.isCompiled=!0;let s=null;return"object"==typeof i.keywords&&i.keywords.$pattern&&(i.keywords=Object.assign({},i.keywords),s=i.keywords.$pattern,delete i.keywords.$pattern),s=s||/\w+/,i.keywords&&(i.keywords=K(i.keywords,e.case_insensitive)),l.keywordPatternRe=t(s,!0),a&&(i.begin||(i.begin=/\B|\b/),l.beginRe=t(l.begin),i.end||i.endsWithParent||(i.end=/\B|\b/),i.end&&(l.endRe=t(l.end)),l.terminatorEnd=c(l.end)||"",i.endsWithParent&&a.terminatorEnd&&(l.terminatorEnd+=(i.end?"|":"")+a.terminatorEnd)),i.illegal&&(l.illegalRe=t(i.illegal)),i.contains||(i.contains=[]),i.contains=[].concat(...i.contains.map((function(e){return function(e){e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((function(t){return r(e,{variants:null},t)})));if(e.cachedVariants)return e.cachedVariants;if(ee(e))return r(e,{starts:e.starts?r(e.starts):null});if(Object.isFrozen(e))return r(e);return e}("self"===e?i:e)}))),i.contains.forEach((function(e){n(e,l)})),i.starts&&n(i.starts,a),l.matcher=function(e){const t=new o;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:"begin"}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end"}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t}(l),l}(e)}function ee(e){return!!e&&(e.endsWithParent||ee(e.starts))}class te extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}}const ne=n,re=r,oe=Symbol("nomatch"),ie=function(n){const r=Object.create(null),o=Object.create(null),i=[];let a=!0;const l="Could not find the language '{}', did you forget to load/include a language module?",c={disableAutodetect:!0,name:"Plain text",contains:[]};let g={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:s};function b(e){return g.noHighlightRe.test(e)}function v(e,t,n){let r="",o="";"object"==typeof t?(r=e,n=t.ignoreIllegals,o=t.language):(Z("10.7.0","highlight(lang, code, ...args) has been deprecated."),Z("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),o=e,r=t),void 0===n&&(n=!0);const i={code:r,language:o};E("before:highlight",i);const a=i.result?i.result:m(i.language,i.code,n);return a.code=i.code,E("after:highlight",a),a}function m(e,n,o,i){const s=Object.create(null);function c(){if(!E.keywords)return void O.addText(A);let e=0;E.keywordPatternRe.lastIndex=0;let t=E.keywordPatternRe.exec(A),n="";for(;t;){n+=A.substring(e,t.index);const o=C.case_insensitive?t[0].toLowerCase():t[0],i=(r=o,E.keywords[r]);if(i){const[e,r]=i;if(O.addText(n),n="",s[o]=(s[o]||0)+1,s[o]<=7&&(P+=r),e.startsWith("_"))n+=t[0];else{const n=C.classNameAliases[e]||e;u(t[0],n)}}else n+=t[0];e=E.keywordPatternRe.lastIndex,t=E.keywordPatternRe.exec(A)}var r;n+=A.substring(e),O.addText(n)}function d(){null!=E.subLanguage?function(){if(""===A)return;let e=null;if("string"==typeof E.subLanguage){if(!r[E.subLanguage])return void O.addText(A);e=m(E.subLanguage,A,!0,R[E.subLanguage]),R[E.subLanguage]=e._top}else e=y(A,E.subLanguage.length?E.subLanguage:null);E.relevance>0&&(P+=e.relevance),O.__addSublanguage(e._emitter,e.language)}():c(),A=""}function u(e,t){""!==e&&(O.startScope(t),O.addText(e),O.endScope())}function p(e,t){let n=1;const r=t.length-1;for(;n<=r;){if(!e._emit[n]){n++;continue}const r=C.classNameAliases[e[n]]||e[n],o=t[n];r?u(o,r):(A=o,c(),A=""),n++}}function f(e,t){return e.scope&&"string"==typeof e.scope&&O.openNode(C.classNameAliases[e.scope]||e.scope),e.beginScope&&(e.beginScope._wrap?(u(A,C.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap),A=""):e.beginScope._multi&&(p(e.beginScope,t),A="")),E=Object.create(e,{parent:{value:E}}),E}function h(e,n,r){let o=function(e,t){const n=e&&e.exec(t);return n&&0===n.index}(e.endRe,r);if(o){if(e["on:end"]){const r=new t(e);e["on:end"](n,r),r.isMatchIgnored&&(o=!1)}if(o){for(;e.endsParent&&e.parent;)e=e.parent;return e}}if(e.endsWithParent)return h(e.parent,n,r)}function b(e){return 0===E.matcher.regexIndex?(A+=e[0],1):(z=!0,0)}function v(e){const t=e[0],r=n.substring(e.index),o=h(E,e,r);if(!o)return oe;const i=E;E.endScope&&E.endScope._wrap?(d(),u(t,E.endScope._wrap)):E.endScope&&E.endScope._multi?(d(),p(E.endScope,e)):i.skip?A+=t:(i.returnEnd||i.excludeEnd||(A+=t),d(),i.excludeEnd&&(A=t));do{E.scope&&O.closeNode(),E.skip||E.subLanguage||(P+=E.relevance),E=E.parent}while(E!==o.parent);return o.starts&&f(o.starts,e),i.returnEnd?0:t.length}let x={};function w(r,i){const l=i&&i[0];if(A+=r,null==l)return d(),0;if("begin"===x.type&&"end"===i.type&&x.index===i.index&&""===l){if(A+=n.slice(i.index,i.index+1),!a){const t=new Error(`0 width match regex (${e})`);throw t.languageName=e,t.badRule=x.rule,t}return 1}if(x=i,"begin"===i.type)return function(e){const n=e[0],r=e.rule,o=new t(r),i=[r.__beforeBegin,r["on:begin"]];for(const t of i)if(t&&(t(e,o),o.isMatchIgnored))return b(n);return r.skip?A+=n:(r.excludeBegin&&(A+=n),d(),r.returnBegin||r.excludeBegin||(A=n)),f(r,e),r.returnBegin?0:n.length}(i);if("illegal"===i.type&&!o){const e=new Error('Illegal lexeme "'+l+'" for mode "'+(E.scope||"")+'"');throw e.mode=E,e}if("end"===i.type){const e=v(i);if(e!==oe)return e}if("illegal"===i.type&&""===l)return A+="\n",1;if($>1e5&&$>3*i.index){throw new Error("potential infinite loop, way more iterations than matches")}return A+=l,l.length}const C=S(e);if(!C)throw l.replace("{}",e),new Error('Unknown language: "'+e+'"');const k=J(C);let _="",E=i||k;const R={},O=new g.__emitter(g);!function(){const e=[];for(let t=E;t!==C;t=t.parent)t.scope&&e.unshift(t.scope);e.forEach((e=>O.openNode(e)))}();let A="",P=0,T=0,$=0,z=!1;try{if(C.__emitTokens)C.__emitTokens(n,O);else{for(E.matcher.considerAll();;){$++,z?z=!1:E.matcher.considerAll(),E.matcher.lastIndex=T;const e=E.matcher.exec(n);if(!e)break;const t=w(n.substring(T,e.index),e);T=e.index+t}w(n.substring(T))}return O.finalize(),_=O.toHTML(),{language:e,value:_,relevance:P,illegal:!1,_emitter:O,_top:E}}catch(M){if(M.message&&M.message.includes("Illegal"))return{language:e,value:ne(n),illegal:!0,relevance:0,_illegalBy:{message:M.message,index:T,context:n.slice(T-100,T+100),mode:M.mode,resultSoFar:_},_emitter:O};if(a)return{language:e,value:ne(n),illegal:!1,relevance:0,errorRaised:M,_emitter:O,_top:E};throw M}}function y(e,t){t=t||g.languages||Object.keys(r);const n=function(e){const t={value:ne(e),illegal:!1,relevance:0,_top:c,_emitter:new g.__emitter(g)};return t._emitter.addText(e),t}(e),o=t.filter(S).filter(_).map((t=>m(t,e,!1)));o.unshift(n);const i=o.sort(((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(S(e.language).supersetOf===t.language)return 1;if(S(t.language).supersetOf===e.language)return-1}return 0})),[a,l]=i,s=a;return s.secondBest=l,s}function x(e){let t=null;const n=function(e){let t=e.className+" ";t+=e.parentNode?e.parentNode.className:"";const n=g.languageDetectRe.exec(t);if(n){const e=S(n[1]);return e||l.replace("{}",n[1]),e?n[1]:"no-highlight"}return t.split(/\s+/).find((e=>b(e)||S(e)))}(e);if(b(n))return;if(E("before:highlightElement",{el:e,language:n}),e.dataset.highlighted)return;if(e.children.length>0&&(g.ignoreUnescapedHTML,g.throwUnescapedHTML)){throw new te("One of your code blocks includes unescaped HTML.",e.innerHTML)}t=e;const r=t.textContent,i=n?v(r,{language:n,ignoreIllegals:!0}):y(r);e.innerHTML=i.value,e.dataset.highlighted="yes",function(e,t,n){const r=t&&o[t]||n;e.classList.add("hljs"),e.classList.add(`language-${r}`)}(e,n,i.language),e.result={language:i.language,re:i.relevance,relevance:i.relevance},i.secondBest&&(e.secondBest={language:i.secondBest.language,relevance:i.secondBest.relevance}),E("after:highlightElement",{el:e,result:i,text:r})}let w=!1;function C(){if("loading"===document.readyState)return w||window.addEventListener("DOMContentLoaded",(function(){C()}),!1),void(w=!0);document.querySelectorAll(g.cssSelector).forEach(x)}function S(e){return e=(e||"").toLowerCase(),r[e]||r[o[e]]}function k(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach((e=>{o[e.toLowerCase()]=t}))}function _(e){const t=S(e);return t&&!t.disableAutodetect}function E(e,t){const n=e;i.forEach((function(e){e[n]&&e[n](t)}))}Object.assign(n,{highlight:v,highlightAuto:y,highlightAll:C,highlightElement:x,highlightBlock:function(e){return Z("10.7.0","highlightBlock will be removed entirely in v12.0"),Z("10.7.0","Please use highlightElement now."),x(e)},configure:function(e){g=re(g,e)},initHighlighting:()=>{C(),Z("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")},initHighlightingOnLoad:function(){C(),Z("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")},registerLanguage:function(e,t){let o=null;try{o=t(n)}catch(i){if("Language definition for '{}' could not be registered.".replace("{}",e),!a)throw i;o=c}o.name||(o.name=e),r[e]=o,o.rawDefinition=t.bind(null,n),o.aliases&&k(o.aliases,{languageName:e})},unregisterLanguage:function(e){delete r[e];for(const t of Object.keys(o))o[t]===e&&delete o[t]},listLanguages:function(){return Object.keys(r)},getLanguage:S,registerAliases:k,autoDetection:_,inherit:re,addPlugin:function(e){!function(e){e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{e["before:highlightBlock"](Object.assign({block:t.el},t))}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{e["after:highlightBlock"](Object.assign({block:t.el},t))})}(e),i.push(e)},removePlugin:function(e){const t=i.indexOf(e);-1!==t&&i.splice(t,1)}}),n.debugMode=function(){a=!1},n.safeMode=function(){a=!0},n.versionString="11.11.1",n.regex={concat:f,lookahead:d,either:h,optional:p,anyNumberOfTimes:u};for(const t in B)"object"==typeof B[t]&&e(B[t]);return Object.assign(n,B),n},ae=ie({});return ae.newInstance=()=>ie({}),Sa=ae,ae.HighlightJS=ae,ae.default=ae,Sa}function Zl(){if(Ea)return _a;return Ea=1,_a=function(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},i=e.inherit(o,{begin:/\(/,end:/\)/}),a=e.inherit(e.APOS_STRING_MODE,{className:"string"}),l=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),s={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[o,l,a,i,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,i,l,a]}]}]},e.COMMENT(//,{relevance:10}),{begin://,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[s],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[s],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:s}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}}function Xl(){if(Oa)return Ra;return Oa=1,Ra=function(e){const t=e.regex,n={},r={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:t.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},r]});const o={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},i=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),a={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},l={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,o]};o.contains.push(l);const s={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,n]},c=e.SHEBANG({binary:`(${["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"].join("|")})`,relevance:10}),d={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],literal:["true","false"],built_in:["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset","alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias","set","shopt","autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp","chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"]},contains:[c,e.SHEBANG(),d,s,i,a,{match:/(\/[a-z._-]+)+/},l,{match:/\\"/},{className:"string",begin:/'/,end:/'/},{match:/\\'/},n]}}}function Ql(){if(Pa)return Aa;return Pa=1,Aa=function(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",o="[a-zA-Z_]\\w*::",i="("+r+"|"+t.optional(o)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",a={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},l={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},s={className:"number",variants:[{match:/\b(0b[01']+)/},{match:/(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/},{match:/(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/},{match:/(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(l,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},d={className:"title",begin:t.optional(o)+e.IDENT_RE,relevance:0},u=t.optional(o)+e.IDENT_RE+"\\s*\\(",p={keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","typeof","typeof_unqual","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"],type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_BitInt","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal96","_Decimal128","_Decimal64x","_Decimal128x","_Float16","_Float32","_Float64","_Float128","_Float32x","_Float64x","_Float128x","const","static","constexpr","complex","bool","imaginary"],literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"},f=[c,a,n,e.C_BLOCK_COMMENT_MODE,s,l],h={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:p,contains:f.concat([{begin:/\(/,end:/\)/,keywords:p,contains:f.concat(["self"]),relevance:0}]),relevance:0},g={begin:"("+i+"[\\*&\\s]+)+"+u,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:p,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:p,relevance:0},{begin:u,returnBegin:!0,contains:[e.inherit(d,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,l,s,a,{begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,l,s,a]}]},a,n,e.C_BLOCK_COMMENT_MODE,c]};return{name:"C",aliases:["h"],keywords:p,disableAutodetect:!0,illegal:"=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:c,strings:l,keywords:p}}}}function Yl(){if($a)return Ta;return $a=1,Ta=function(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",o="[a-zA-Z_]\\w*::",i="(?!struct)("+r+"|"+t.optional(o)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",a={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},l={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},s={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(l,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},d={className:"title",begin:t.optional(o)+e.IDENT_RE,relevance:0},u=t.optional(o)+e.IDENT_RE+"\\s*\\(",p={type:["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],keyword:["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"]},f={className:"function.dispatch",relevance:0,keywords:{_hint:["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"]},begin:t.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/))},h=[f,c,a,n,e.C_BLOCK_COMMENT_MODE,s,l],g={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:p,contains:h.concat([{begin:/\(/,end:/\)/,keywords:p,contains:h.concat(["self"]),relevance:0}]),relevance:0},b={className:"function",begin:"("+i+"[\\*&\\s]+)+"+u,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:p,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:p,relevance:0},{begin:u,returnBegin:!0,contains:[d],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[l,s]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,l,s,a,{begin:/\(/,end:/\)/,keywords:p,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,l,s,a]}]},a,n,e.C_BLOCK_COMMENT_MODE,c]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:p,illegal:"",keywords:p,contains:["self",a]},{begin:e.IDENT_RE+"::",keywords:p},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}}function Jl(){if(Ma)return za;return Ma=1,za=function(e){const t={keyword:["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"].concat(["add","alias","and","ascending","args","async","await","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value|0","var","when","where","with","yield"]),built_in:["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],literal:["default","false","null","true"]},n=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),r={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},o={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},i=e.inherit(o,{illegal:/\n/}),a={className:"subst",begin:/\{/,end:/\}/,keywords:t},l=e.inherit(a,{illegal:/\n/}),s={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},e.BACKSLASH_ESCAPE,l]},c={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},a]},d=e.inherit(c,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},l]});a.contains=[c,s,o,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,r,e.C_BLOCK_COMMENT_MODE],l.contains=[d,s,i,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,r,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const u={variants:[{className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},c,s,o,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},p={begin:"<",end:">",contains:[{beginKeywords:"in out"},n]},f=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",h={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:t,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"\x3c!--|--\x3e"},{begin:""}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},u,r,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},n,p,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[n,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[n,p,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+f+"\\s+)+"+e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:t,contains:[{beginKeywords:["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"].join(" "),relevance:0},{begin:e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[e.TITLE_MODE,p],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:t,relevance:0,contains:[u,r,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},h]}}}function es(){if(Na)return Fa;Na=1;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video","defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),n=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),r=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),o=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();return Fa=function(i){const a=i.regex,l=(e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}))(i),s=[i.APOS_STRING_MODE,i.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[l.BLOCK_COMMENT,{begin:/-(webkit|moz|ms|o)-(?=[a-z])/},l.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0},l.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+n.join("|")+")"},{begin:":(:)?("+r.join("|")+")"}]},l.CSS_VARIABLE,{className:"attribute",begin:"\\b("+o.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[l.BLOCK_COMMENT,l.HEXCOLOR,l.IMPORTANT,l.CSS_NUMBER_MODE,...s,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...s,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},l.FUNCTION_DISPATCH]},{begin:a.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:/@-?\w[\w]*(-\w+)*/},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",attribute:t.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...s,l.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+e.join("|")+")\\b"}]}}}function ts(){if(Ia)return Ba;return Ia=1,Ba=function(e){const t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},n={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.regex.concat(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},r={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},o={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},i=e.inherit(r,{contains:[]}),a=e.inherit(o,{contains:[]});r.contains.push(a),o.contains.push(i);let l=[t,n];return[r,o,i,a].forEach((e=>{e.contains=e.contains.concat(l)})),l=l.concat(r,o),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:l},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:l}]}]},t,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},r,o,{className:"quote",begin:"^>\\s+",contains:l,end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{begin:"^[-\\*]{3,}",end:"$"},n,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}}function ns(){if(ja)return La;return ja=1,La=function(e){const t=e.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:t.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:t.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}}function rs(){if(Ha)return Da;return Ha=1,Da=function(e){const t=e.regex,n="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",r=t.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),o=t.concat(r,/(::\w+)*/),i={"variable.constant":["__FILE__","__LINE__","__ENCODING__"],"variable.language":["self","super"],keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield","include","extend","prepend","public","private","protected","raise","throw"],built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"],literal:["true","false","nil"]},a={className:"doctag",begin:"@[A-Za-z]+"},l={begin:"#<",end:">"},s=[e.COMMENT("#","$",{contains:[a]}),e.COMMENT("^=begin","^=end",{contains:[a],relevance:10}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],c={className:"subst",begin:/#\{/,end:/\}/,keywords:i},d={className:"string",contains:[e.BACKSLASH_ESCAPE,c],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:t.concat(/<<[-~]?'?/,t.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,c]})]}]},u="[0-9](_?[0-9])*",p={className:"number",relevance:0,variants:[{begin:`\\b([1-9](_?[0-9])*|0)(\\.(${u}))?([eE][+-]?(${u})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},f={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:i}]},h=[d,{variants:[{match:[/class\s+/,o,/\s+<\s+/,o]},{match:[/\b(class|module)\s+/,o]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:i},{match:[/(include|extend)\s+/,o],scope:{2:"title.class"},keywords:i},{relevance:0,match:[o,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:r,scope:"title.class"},{match:[/def/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[f]},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[d,{begin:n}],relevance:0},p,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:i},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,c],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(l,s),relevance:0}].concat(l,s);c.contains=h,f.contains=h;const g=[{begin:/^\s*=>/,starts:{end:"$",contains:h}},{className:"meta.prompt",begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])",starts:{end:"$",keywords:i,contains:h}}];return s.unshift(l),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:i,illegal:/\/\*/,contains:[e.SHEBANG({binary:"ruby"})].concat(g).concat(s).concat(h)}}}function os(){if(Ua)return Wa;return Ua=1,Wa=function(e){const t={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:t,illegal:"o(e,t,n-1)))}return Za=function(e){const t=e.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",i=n+o("(?:<"+n+"~~~(?:\\s*,\\s*"+n+"~~~)*>)?",/~~~/g,2),a={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},l={className:"meta",begin:"@"+n,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},s={className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:a,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[t.concat(/(?!else)/,n),/\s+/,n,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,n],className:{1:"keyword",3:"title.class"},contains:[s,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+i+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:a,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:a,relevance:0,contains:[l,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,r,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},r,l]}}}function ss(){if(Ya)return Qa;Ya=1;const e="[A-Za-z$_][0-9A-Za-z$_]*",t=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],n=["true","false","null","undefined","NaN","Infinity"],r=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],o=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],i=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],a=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],l=[].concat(i,r,o);return Qa=function(s){const c=s.regex,d=e,u="<>",p="",f={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{const n=e[0].length+e.index,r=e.input[n];if("<"===r||","===r)return void t.ignoreMatch();let o;">"===r&&(((e,{after:t})=>{const n="`${e}\\s*\\(`)),c.concat("(?!",z.join("|"),")")),d,c.lookahead(/\s*\(/)),className:"title.function",relevance:0};var z;const M={begin:c.concat(/\./,c.lookahead(c.concat(d,/(?![0-9A-Za-z$_(])/))),end:d,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},F={match:[/get|set/,/\s+/,d,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},O]},N="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+s.UNDERSCORE_IDENT_RE+")\\s*=>",B={match:[/const|var|let/,/\s+/,d,/\s*/,/=\s*/,/(async\s*)?/,c.lookahead(N)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[O]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:h,exports:{PARAMS_CONTAINS:R,CLASS_REFERENCE:P},illegal:/#(?![$_A-z])/,contains:[s.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},s.APOS_STRING_MODE,s.QUOTE_STRING_MODE,x,w,C,S,k,{match:/\$\d+/},m,P,{scope:"attr",match:d+c.lookahead(":"),relevance:0},B,{begin:"("+s.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[k,s.REGEXP_MODE,{className:"function",begin:N,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:s.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:h,contains:R}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:u,end:p},{match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:f.begin,"on:begin":f.isTrulyOpeningTag,end:f.end}],subLanguage:"xml",contains:[{begin:f.begin,end:f.end,skip:!0,contains:["self"]}]}]},T,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+s.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[O,s.inherit(s.TITLE_MODE,{begin:d,className:"title.function"})]},{match:/\.\.\./,relevance:0},M,{match:"\\$"+d,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[O]},$,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},A,F,{match:/\$[(.]/}]}}}function cs(){if(el)return Ja;return el=1,Ja=function(e){const t=["true","false","null"],n={scope:"literal",beginKeywords:t.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:t},contains:[{className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},{match:/[{}[\],:]/,className:"punctuation",relevance:0},e.QUOTE_STRING_MODE,n,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}}function ds(){if(nl)return tl;nl=1;var e="[0-9](_*[0-9])*",t=`\\.(${e})`,n="[0-9a-fA-F](_*[0-9a-fA-F])*",r={className:"number",variants:[{begin:`(\\b(${e})((${t})|\\.)?|(${t}))[eE][+-]?(${e})[fFdD]?\\b`},{begin:`\\b(${e})((${t})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${t})[fFdD]?\\b`},{begin:`\\b(${e})[fFdD]\\b`},{begin:`\\b0[xX]((${n})\\.?|(${n})?\\.(${n}))[pP][+-]?(${e})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${n})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};return tl=function(e){const t={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},n={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},o={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},i={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},a={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[i,o]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,i,o]}]};o.contains.push(a);const l={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},s={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(a,{className:"string"}),"self"]}]},c=r,d=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),u={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},p=u;return p.variants[1].contains=[u],u.variants[1].contains=[p],{name:"Kotlin",aliases:["kt","kts"],keywords:t,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,d,{className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},n,l,s,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:t,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin://,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:t,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[u,e.C_LINE_COMMENT_MODE,d],relevance:0},e.C_LINE_COMMENT_MODE,d,l,s,a,e.C_NUMBER_MODE]},d]},{begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},l,s]},a,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:"\n"},c]}}}function us(){if(ol)return rl;ol=1;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video","defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),n=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),r=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),o=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),i=n.concat(r).sort().reverse();return rl=function(a){const l=(e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}))(a),s=i,c="[\\w-]+",d="("+c+"|@\\{"+c+"\\})",u=[],p=[],f=function(e){return{className:"string",begin:"~?"+e+".*?"+e}},h=function(e,t,n){return{className:e,begin:t,relevance:n}},g={$pattern:/[a-z-]+/,keyword:"and or not only",attribute:t.join(" ")},b={begin:"\\(",end:"\\)",contains:p,keywords:g,relevance:0};p.push(a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,f("'"),f('"'),l.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},l.HEXCOLOR,b,h("variable","@@?"+c,10),h("variable","@\\{"+c+"\\}"),h("built_in","~?`[^`]*?`"),{className:"attribute",begin:c+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},l.IMPORTANT,{beginKeywords:"and not"},l.FUNCTION_DISPATCH);const v=p.concat({begin:/\{/,end:/\}/,contains:u}),m={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(p)},y={begin:d+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},l.CSS_VARIABLE,{className:"attribute",begin:"\\b("+o.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:p}}]},x={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:g,returnEnd:!0,contains:p,relevance:0}},w={className:"variable",variants:[{begin:"@"+c+"\\s*:",relevance:15},{begin:"@"+c}],starts:{end:"[;}]",returnEnd:!0,contains:v}},C={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:d,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:"[<='$\"]",relevance:0,contains:[a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,m,h("keyword","all\\b"),h("variable","@\\{"+c+"\\}"),{begin:"\\b("+e.join("|")+")\\b",className:"selector-tag"},l.CSS_NUMBER_MODE,h("selector-tag",d,0),h("selector-id","#"+d),h("selector-class","\\."+d,0),h("selector-tag","&",0),l.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+n.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+r.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:v},{begin:"!important"},l.FUNCTION_DISPATCH]},S={begin:c+`:(:)?(${s.join("|")})`,returnBegin:!0,contains:[C]};return u.push(a.C_LINE_COMMENT_MODE,a.C_BLOCK_COMMENT_MODE,x,w,S,y,C,m,l.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:"[=>'/<($\"]",contains:u}}}function ps(){if(al)return il;return al=1,il=function(e){const t="\\[=*\\[",n="\\]=*\\]",r={begin:t,end:n,contains:["self"]},o=[e.COMMENT("--(?!"+t+")","$"),e.COMMENT("--"+t,n,{contains:[r],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:o.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:o}].concat(o)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:t,end:n,contains:[r],relevance:5}])}}}function fs(){if(sl)return ll;return sl=1,ll=function(e){const t={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%\{/,end:/\}/},a={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},l={scope:"variable",variants:[{begin:/\$\d/},{begin:t.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[a]},s={className:"number",variants:[{match:/0?\.[0-9][0-9_]+\b/},{match:/\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/},{match:/\b0[0-7][0-7_]*\b/},{match:/\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/},{match:/\b0b[0-1][0-1_]*\b/}],relevance:0},c=[e.BACKSLASH_ESCAPE,o,l],d=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],u=(e,r,o="\\1")=>{const i="\\1"===o?o:t.concat(o,r);return t.concat(t.concat("(?:",e,")"),r,/(?:\\.|[^\\\/])*?/,i,/(?:\\.|[^\\\/])*?/,o,n)},p=(e,r,o)=>t.concat(t.concat("(?:",e,")"),r,/(?:\\.|[^\\\/])*?/,o,n),f=[l,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),i,{className:"string",contains:c,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},s,{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:u("s|tr|y",t.either(...d,{capture:!0}))},{begin:u("s|tr|y","\\(","\\)")},{begin:u("s|tr|y","\\[","\\]")},{begin:u("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:p("(?:m|qr)?",/\//,/\//)},{begin:p("m|qr",t.either(...d,{capture:!0}),/\1/)},{begin:p("m|qr",/\(/,/\)/)},{begin:p("m|qr",/\[/,/\]/)},{begin:p("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,a]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,a,s]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return o.contains=f,i.contains=f,{name:"Perl",aliases:["pl","pm"],keywords:r,contains:f}}}function gs(){if(pl)return ul;return pl=1,ul=function(e){const t=/[a-zA-Z@][a-zA-Z0-9_]*/,n={$pattern:t,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:{"variable.language":["this","super"],$pattern:t,keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"],literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"],built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"],type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"]},illegal:"/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+n.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:n,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}}function bs(){if(hl)return fl;return hl=1,fl=function(e){const t=e.regex,n=/(?![A-Za-z0-9])(?![$])/,r=t.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,n),o=t.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,n),i=t.concat(/[A-Z]+/,n),a={scope:"variable",match:"\\$+"+r},l={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},s=e.inherit(e.APOS_STRING_MODE,{illegal:null}),c="[ \t\n]",d={scope:"string",variants:[e.inherit(e.QUOTE_STRING_MODE,{illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(l)}),s,{begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:e.QUOTE_STRING_MODE.contains.concat(l),"on:begin":(e,t)=>{t.data._beginMatch=e[1]||e[2]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}},e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/})]},u={scope:"number",variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"}],relevance:0},p=["false","null","true"],f=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],h=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],g={keyword:f,literal:(e=>{const t=[];return e.forEach((e=>{t.push(e),e.toLowerCase()===e?t.push(e.toUpperCase()):t.push(e.toLowerCase())})),t})(p),built_in:h},b=e=>e.map((e=>e.replace(/\|\d+$/,""))),v={variants:[{match:[/new/,t.concat(c,"+"),t.concat("(?!",b(h).join("\\b|"),"\\b)"),o],scope:{1:"keyword",4:"title.class"}}]},m=t.concat(r,"\\b(?!\\()"),y={variants:[{match:[t.concat(/::/,t.lookahead(/(?!class\b)/)),m],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[o,t.concat(/::/,t.lookahead(/(?!class\b)/)),m],scope:{1:"title.class",3:"variable.constant"}},{match:[o,t.concat("::",t.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[o,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},x={scope:"attr",match:t.concat(r,t.lookahead(":"),t.lookahead(/(?!::)/))},w={relevance:0,begin:/\(/,end:/\)/,keywords:g,contains:[x,a,y,e.C_BLOCK_COMMENT_MODE,d,u,v]},C={relevance:0,match:[/\b/,t.concat("(?!fn\\b|function\\b|",b(f).join("\\b|"),"|",b(h).join("\\b|"),"\\b)"),r,t.concat(c,"*"),t.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[w]};w.contains.push(C);const S=[x,y,e.C_BLOCK_COMMENT_MODE,d,u,v],k={begin:t.concat(/#\[\s*\\?/,t.either(o,i)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:p,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:p,keyword:["new","array"]},contains:["self",...S]},...S,{scope:"meta",variants:[{match:o},{match:i}]}]};return{case_insensitive:!1,keywords:g,contains:[k,e.HASH_COMMENT_MODE,e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:e.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},{scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},{scope:"variable.language",match:/\$this\b/},a,C,y,{match:[/const/,/\s/,r],scope:{1:"keyword",3:"variable.constant"}},v,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:g,contains:["self",k,a,y,e.C_BLOCK_COMMENT_MODE,d,u]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},e.UNDERSCORE_TITLE_MODE]},d,u]}}}function vs(){if(bl)return gl;return bl=1,gl=function(e){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},e.inherit(e.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}}function ms(){if(ml)return vl;return ml=1,vl=function(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}}function ys(){if(xl)return yl;return xl=1,yl=function(e){const t=e.regex,n=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),r=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],o={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},i={className:"meta",begin:/^(>>>|\.\.\.) /},a={className:"subst",begin:/\{/,end:/\}/,keywords:o,illegal:/#/},l={begin:/\{\{/,relevance:0},s={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,i],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,i],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,i,l,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,i,l,a]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,l,a]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,l,a]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},c="[0-9](_?[0-9])*",d=`(\\b(${c}))?\\.(${c})|\\b(${c})\\.`,u=`\\b|${r.join("|")}`,p={className:"number",relevance:0,variants:[{begin:`(\\b(${c})|(${d}))[eE][+-]?(${c})[jJ]?(?=${u})`},{begin:`(${d})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${u})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${u})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${u})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${u})`},{begin:`\\b(${c})[jJ](?=${u})`}]},f={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:o,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},h={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:o,contains:["self",i,p,s,e.HASH_COMMENT_MODE]}]};return a.contains=[s,p,i],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:o,illegal:/(<\/|\?)|=>/,contains:[i,p,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},s,f,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[h]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[p,h,s]}]}}}function xs(){if(Cl)return wl;return Cl=1,wl=function(e){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}}function ws(){if(kl)return Sl;return kl=1,Sl=function(e){const t=e.regex,n=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,r=t.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),o=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,i=t.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:n,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},contains:[e.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:t.lookahead(t.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:n},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),e.HASH_COMMENT_MODE,{scope:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[o,r]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,r]},{scope:{1:"punctuation",2:"number"},match:[i,r]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,r]}]},{scope:{3:"operator"},match:[n,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:o},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:i},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}}function Cs(){if(El)return _l;return El=1,_l=function(e){const t=e.regex,n=/(r#)?/,r=t.concat(n,e.UNDERSCORE_IDENT_RE),o=t.concat(n,e.IDENT_RE),i={className:"title.function.invoke",relevance:0,begin:t.concat(/\b/,/(?!let|for|while|if|else|match\b)/,o,t.lookahead(/\s*\(/))},a="([ui](8|16|32|64|128|size)|f(32|64))?",l=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],s=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",type:s,keyword:["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],literal:["true","false","Some","None","Ok","Err"],built_in:l},illegal:""},i]}}}function Ss(){if(Ol)return Rl;Ol=1;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video","defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),n=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),r=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),o=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();return Rl=function(i){const a=(e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}))(i),l=r,s=n,c="@[a-z-]+",d={className:"variable",begin:"(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[i.C_LINE_COMMENT_MODE,i.C_BLOCK_COMMENT_MODE,a.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},a.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+e.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+s.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+l.join("|")+")"},d,{begin:/\(/,end:/\)/,contains:[a.CSS_NUMBER_MODE]},a.CSS_VARIABLE,{className:"attribute",begin:"\\b("+o.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:/:/,end:/[;}{]/,relevance:0,contains:[a.BLOCK_COMMENT,d,a.HEXCOLOR,a.CSS_NUMBER_MODE,i.QUOTE_STRING_MODE,i.APOS_STRING_MODE,a.IMPORTANT,a.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:c,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only",attribute:t.join(" ")},contains:[{begin:c,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},d,i.QUOTE_STRING_MODE,i.APOS_STRING_MODE,a.HEXCOLOR,a.CSS_NUMBER_MODE]},a.FUNCTION_DISPATCH]}}}function ks(){if(Pl)return Al;return Pl=1,Al=function(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}}function _s(){if($l)return Tl;return $l=1,Tl=function(e){const t=e.regex,n=e.COMMENT("--","$"),r=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],o=r,i=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year","add","asc","collation","desc","final","first","last","view"].filter((e=>!r.includes(e))),a={match:t.concat(/\b/,t.either(...o),/\s*\(/),relevance:0,keywords:{built_in:o}};function l(e){return t.concat(/\b/,t.either(...e.map((e=>e.replace(/\s+/,"\\s+")))),/\b/)}const s={scope:"keyword",match:l(["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"]),relevance:0};return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:function(e,{exceptions:t,when:n}={}){const r=n;return t=t||[],e.map((e=>e.match(/\|\d+$/)||t.includes(e)?e:r(e)?`${e}|0`:e))}(i,{when:e=>e.length<3}),literal:["true","false","unknown"],type:["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],built_in:["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"]},contains:[{scope:"type",match:l(["double precision","large object","with timezone","without timezone"])},s,a,{scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},{scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},{begin:/"/,end:/"/,contains:[{match:/""/}]},e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,{scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0}]}}}function Es(){if(Ml)return zl;function e(e){return e?"string"==typeof e?e:e.source:null}function t(e){return n("(?=",e,")")}function n(...t){return t.map((t=>e(t))).join("")}function r(...t){const n=function(e){const t=e[e.length-1];return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}(t);return"("+(n.capture?"":"?:")+t.map((t=>e(t))).join("|")+")"}Ml=1;const o=e=>n(/\b/,e,/\w$/.test(e)?/\b/:/\B/),i=["Protocol","Type"].map(o),a=["init","self"].map(o),l=["Any","Self"],s=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","borrowing","break","case","catch","class","consume","consuming","continue","convenience","copy","default","defer","deinit","didSet","distributed","do","dynamic","each","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","macro","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","package","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],c=["false","nil","true"],d=["assignment","associativity","higherThan","left","lowerThan","none","right"],u=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],p=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],f=r(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),h=r(f,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),g=n(f,h,"*"),b=r(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),v=r(b,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),m=n(b,v,"*"),y=n(/[A-Z]/,v,"*"),x=["attached","autoclosure",n(/convention\(/,r("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",n(/objc\(/,m,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],w=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];return zl=function(e){const f={match:/\s+/,relevance:0},b=e.COMMENT("/\\*","\\*/",{contains:["self"]}),C=[e.C_LINE_COMMENT_MODE,b],S={match:[/\./,r(...i,...a)],className:{2:"keyword"}},k={match:n(/\./,r(...s)),relevance:0},_=s.filter((e=>"string"==typeof e)).concat(["_|0"]),E={variants:[{className:"keyword",match:r(...s.filter((e=>"string"!=typeof e)).concat(l).map(o),...a)}]},R={$pattern:r(/\b\w+/,/#\w+/),keyword:_.concat(u),literal:c},O=[S,k,E],A=[{match:n(/\./,r(...p)),relevance:0},{className:"built_in",match:n(/\b/,r(...p),/(?=\()/)}],P={match:/->/,relevance:0},T=[P,{className:"operator",relevance:0,variants:[{match:g},{match:`\\.(\\.|${h})+`}]}],$="([0-9]_*)+",z="([0-9a-fA-F]_*)+",M={className:"number",relevance:0,variants:[{match:`\\b(${$})(\\.(${$}))?([eE][+-]?(${$}))?\\b`},{match:`\\b0x(${z})(\\.(${z}))?([pP][+-]?(${$}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},F=(e="")=>({className:"subst",variants:[{match:n(/\\/,e,/[0\\tnr"']/)},{match:n(/\\/,e,/u\{[0-9a-fA-F]{1,8}\}/)}]}),N=(e="")=>({className:"subst",match:n(/\\/,e,/[\t ]*(?:[\r\n]|\r\n)/)}),B=(e="")=>({className:"subst",label:"interpol",begin:n(/\\/,e,/\(/),end:/\)/}),I=(e="")=>({begin:n(e,/"""/),end:n(/"""/,e),contains:[F(e),N(e),B(e)]}),L=(e="")=>({begin:n(e,/"/),end:n(/"/,e),contains:[F(e),B(e)]}),j={className:"string",variants:[I(),I("#"),I("##"),I("###"),L(),L("#"),L("##"),L("###")]},D=[e.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[e.BACKSLASH_ESCAPE]}],H={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:D},W=e=>{const t=n(e,/\//),r=n(/\//,e);return{begin:t,end:r,contains:[...D,{scope:"comment",begin:`#(?!.*${r})`,end:/$/}]}},U={scope:"regexp",variants:[W("###"),W("##"),W("#"),H]},q={match:n(/`/,m,/`/)},K=[q,{className:"variable",match:/\$\d+/},{className:"variable",match:`\\$${v}+`}],V=[{match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:w,contains:[...T,M,j]}]}},{scope:"keyword",match:n(/@/,r(...x),t(r(/\(/,/\s+/)))},{scope:"meta",match:n(/@/,m)}],G={match:t(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:n(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,v,"+")},{className:"type",match:y,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:n(/\s+&\s+/,t(y)),relevance:0}]},Z={begin://,keywords:R,contains:[...C,...O,...V,P,G]};G.contains.push(Z);const X={begin:/\(/,end:/\)/,relevance:0,keywords:R,contains:["self",{match:n(m,/\s*:/),keywords:"_|0",relevance:0},...C,U,...O,...A,...T,M,j,...K,...V,G]},Q={begin://,keywords:"repeat each",contains:[...C,G]},Y={begin:/\(/,end:/\)/,keywords:R,contains:[{begin:r(t(n(m,/\s*:/)),t(n(m,/\s+/,m,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:m}]},...C,...O,...T,M,j,...V,G,X],endsParent:!0,illegal:/["']/},J={match:[/(func|macro)/,/\s+/,r(q.match,m,g)],className:{1:"keyword",3:"title.function"},contains:[Q,Y,f],illegal:[/\[/,/%/]},ee={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[Q,Y,f],illegal:/\[|%/},te={match:[/operator/,/\s+/,g],className:{1:"keyword",3:"title"}},ne={begin:[/precedencegroup/,/\s+/,y],className:{1:"keyword",3:"title"},contains:[G],keywords:[...d,...c],end:/}/},re={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,m,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:R,contains:[Q,...O,{begin:/:/,end:/\{/,keywords:R,contains:[{scope:"title.class.inherited",match:y},...O],relevance:0}]};for(const t of j.variants){const e=t.contains.find((e=>"interpol"===e.label));e.keywords=R;const n=[...O,...A,...T,M,j,...K];e.contains=[...n,{begin:/\(/,end:/\)/,contains:["self",...n]}]}return{name:"Swift",keywords:R,contains:[...C,J,ee,{match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},{match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},re,te,ne,{beginKeywords:"import",end:/$/,contains:[...C],relevance:0},U,...O,...A,...T,M,j,...K,...V,G,X]}}}function Rs(){if(Nl)return Fl;return Nl=1,Fl=function(e){const t="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",r={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},o=e.inherit(r,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),i={className:"number",begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b"},a={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},l={begin:/\{/,end:/\}/,contains:[a],illegal:"\\n",relevance:0},s={begin:"\\[",end:"\\]",contains:[a],illegal:"\\n",relevance:0},c=[{className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},i,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},l,s,{className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},r],d=[...c];return d.pop(),d.push(o),a.contains=d,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:c}}}function Os(){if(Il)return Bl;Il=1;const e="[A-Za-z$_][0-9A-Za-z$_]*",t=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],n=["true","false","null","undefined","NaN","Infinity"],r=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],o=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],i=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],a=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],l=[].concat(i,r,o);return Bl=function(s){const c=s.regex,d=function(s){const c=s.regex,d=e,u="<>",p="",f={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(e,t)=>{const n=e[0].length+e.index,r=e.input[n];if("<"===r||","===r)return void t.ignoreMatch();let o;">"===r&&(((e,{after:t})=>{const n="`${e}\\s*\\(`)),c.concat("(?!",z.join("|"),")")),d,c.lookahead(/\s*\(/)),className:"title.function",relevance:0};var z;const M={begin:c.concat(/\./,c.lookahead(c.concat(d,/(?![0-9A-Za-z$_(])/))),end:d,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},F={match:[/get|set/,/\s+/,d,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},O]},N="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+s.UNDERSCORE_IDENT_RE+")\\s*=>",B={match:[/const|var|let/,/\s+/,d,/\s*/,/=\s*/,/(async\s*)?/,c.lookahead(N)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[O]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:h,exports:{PARAMS_CONTAINS:R,CLASS_REFERENCE:P},illegal:/#(?![$_A-z])/,contains:[s.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},s.APOS_STRING_MODE,s.QUOTE_STRING_MODE,x,w,C,S,k,{match:/\$\d+/},m,P,{scope:"attr",match:d+c.lookahead(":"),relevance:0},B,{begin:"("+s.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[k,s.REGEXP_MODE,{className:"function",begin:N,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:s.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:h,contains:R}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:u,end:p},{match:/<[A-Za-z0-9\\._:-]+\s*\/>/},{begin:f.begin,"on:begin":f.isTrulyOpeningTag,end:f.end}],subLanguage:"xml",contains:[{begin:f.begin,end:f.end,skip:!0,contains:["self"]}]}]},T,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+s.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[O,s.inherit(s.TITLE_MODE,{begin:d,className:"title.function"})]},{match:/\.\.\./,relevance:0},M,{match:"\\$"+d,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[O]},$,{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},A,F,{match:/\$[(.]/}]}}(s),u=e,p=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],f={begin:[/namespace/,/\s+/,s.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},h={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:p},contains:[d.exports.CLASS_REFERENCE]},g={$pattern:e,keyword:t.concat(["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"]),literal:n,built_in:l.concat(p),"variable.language":a},b={className:"meta",begin:"@"+u},v=(e,t,n)=>{const r=e.contains.findIndex((e=>e.label===t));if(-1===r)throw new Error("can not find mode to replace");e.contains.splice(r,1,n)};Object.assign(d.keywords,g),d.exports.PARAMS_CONTAINS.push(b);const m=d.contains.find((e=>"attr"===e.scope)),y=Object.assign({},m,{match:c.concat(u,c.lookahead(/\s*\?:/))});return d.exports.PARAMS_CONTAINS.push([d.exports.CLASS_REFERENCE,m,y]),d.contains=d.contains.concat([b,f,h,y]),v(d,"shebang",s.SHEBANG()),v(d,"use_strict",{className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/}),d.contains.find((e=>"func.def"===e.label)).relevance=0,Object.assign(d,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),d}}function As(){if(jl)return Ll;return jl=1,Ll=function(e){const t=e.regex,n=/\d{1,2}\/\d{1,2}\/\d{4}/,r=/\d{4}-\d{1,2}-\d{1,2}/,o=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,i=/\d{1,2}(:\d{1,2}){1,2}/,a={className:"literal",variants:[{begin:t.concat(/# */,t.either(r,n),/ *#/)},{begin:t.concat(/# */,i,/ *#/)},{begin:t.concat(/# */,o,/ *#/)},{begin:t.concat(/# */,t.either(r,n),/ +/,t.either(o,i),/ *#/)}]},l=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),s=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[{className:"string",begin:/"(""|[^/n])"C\b/},{className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},a,{className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},{className:"label",begin:/^\w+:/},l,s,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:"const disable else elseif enable end externalsource if region then"},contains:[s]}]}}}function Ps(){if(Hl)return Dl;return Hl=1,Dl=function(e){e.regex;const t=e.COMMENT(/\(;/,/;\)/);return t.contains.push("self"),{name:"WebAssembly",keywords:{$pattern:/[\w.]+/,keyword:["anyfunc","block","br","br_if","br_table","call","call_indirect","data","drop","elem","else","end","export","func","global.get","global.set","local.get","local.set","local.tee","get_global","get_local","global","if","import","local","loop","memory","memory.grow","memory.size","module","mut","nop","offset","param","result","return","select","set_global","set_local","start","table","tee_local","then","type","unreachable"]},contains:[e.COMMENT(/;;/,/$/),t,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},{className:"variable",begin:/\$[\w_]+/},{match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},{begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},e.QUOTE_STRING_MODE,{match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},{className:"keyword",match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/},{className:"number",relevance:0,match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/}]}}}!function(){if(Ul)return Wl;Ul=1;var e=Gl();e.registerLanguage("xml",Zl()),e.registerLanguage("bash",Xl()),e.registerLanguage("c",Ql()),e.registerLanguage("cpp",Yl()),e.registerLanguage("csharp",Jl()),e.registerLanguage("css",es()),e.registerLanguage("markdown",ts()),e.registerLanguage("diff",ns()),e.registerLanguage("ruby",rs()),e.registerLanguage("go",os()),e.registerLanguage("graphql",is()),e.registerLanguage("ini",as()),e.registerLanguage("java",ls()),e.registerLanguage("javascript",ss()),e.registerLanguage("json",cs()),e.registerLanguage("kotlin",ds()),e.registerLanguage("less",us()),e.registerLanguage("lua",ps()),e.registerLanguage("makefile",fs()),e.registerLanguage("perl",hs()),e.registerLanguage("objectivec",gs()),e.registerLanguage("php",bs()),e.registerLanguage("php-template",vs()),e.registerLanguage("plaintext",ms()),e.registerLanguage("python",ys()),e.registerLanguage("python-repl",xs()),e.registerLanguage("r",ws()),e.registerLanguage("rust",Cs()),e.registerLanguage("scss",Ss()),e.registerLanguage("shell",ks()),e.registerLanguage("sql",_s()),e.registerLanguage("swift",Es()),e.registerLanguage("yaml",Rs()),e.registerLanguage("typescript",Os()),e.registerLanguage("vbnet",As()),e.registerLanguage("wasm",Ps()),e.HighlightJS=e,e.default=e,Wl=e}();const Ts=Kl(Gl());var $s=qn({props:{code:{type:String,required:!0},language:{type:String,default:""},autodetect:{type:Boolean,default:!0},ignoreIllegals:{type:Boolean,default:!0}},setup:function(e){var t=$t(e.language);go((function(){return e.language}),(function(e){t.value=e}));var n=gi((function(){return e.autodetect||!t.value})),r=gi((function(){return!n.value&&!Ts.getLanguage(t.value)}));return{className:gi((function(){return r.value?"":"hljs "+t.value})),highlightedCode:gi((function(){var o;if(r.value)return e.code.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'");if(n.value){var i=Ts.highlightAuto(e.code);return t.value=null!==(o=i.language)&&void 0!==o?o:"",i.value}return(i=Ts.highlight(e.code,{language:t.value,ignoreIllegals:e.ignoreIllegals})).value}))}},render:function(){return bi("pre",{},[bi("code",{class:this.className,innerHTML:this.highlightedCode})])}}),zs={install:function(e){e.component("highlightjs",$s)},component:$s}; -/*! - * vue-router v4.5.0 - * (c) 2024 Eduardo San Martin Morote - * @license MIT - */const Ms="undefined"!=typeof document;function Fs(e){return"object"==typeof e||"displayName"in e||"props"in e||"__vccOpts"in e}const Ns=Object.assign;function Bs(e,t){const n={};for(const r in t){const o=t[r];n[r]=Ls(o)?o.map(e):e(o)}return n}const Is=()=>{},Ls=Array.isArray,js=/#/g,Ds=/&/g,Hs=/\//g,Ws=/=/g,Us=/\?/g,qs=/\+/g,Ks=/%5B/g,Vs=/%5D/g,Gs=/%5E/g,Zs=/%60/g,Xs=/%7B/g,Qs=/%7C/g,Ys=/%7D/g,Js=/%20/g;function ec(e){return encodeURI(""+e).replace(Qs,"|").replace(Ks,"[").replace(Vs,"]")}function tc(e){return ec(e).replace(qs,"%2B").replace(Js,"+").replace(js,"%23").replace(Ds,"%26").replace(Zs,"`").replace(Xs,"{").replace(Ys,"}").replace(Gs,"^")}function nc(e){return null==e?"":function(e){return ec(e).replace(js,"%23").replace(Us,"%3F")}(e).replace(Hs,"%2F")}function rc(e){try{return decodeURIComponent(""+e)}catch(t){}return""+e}const oc=/\/$/;function ic(e,t,n="/"){let r,o={},i="",a="";const l=t.indexOf("#");let s=t.indexOf("?");return l=0&&(s=-1),s>-1&&(r=t.slice(0,s),i=t.slice(s+1,l>-1?l:t.length),o=e(i)),l>-1&&(r=r||t.slice(0,l),a=t.slice(l,t.length)),r=function(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/"),o=r[r.length-1];".."!==o&&"."!==o||r.push("");let i,a,l=n.length-1;for(i=0;i1&&l--}return n.slice(0,l).join("/")+"/"+r.slice(i).join("/")}(null!=r?r:t,n),{fullPath:r+(i&&"?")+i+a,path:r,query:o,hash:rc(a)}}function ac(e,t){return t&&e.toLowerCase().startsWith(t.toLowerCase())?e.slice(t.length)||"/":e}function lc(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function sc(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!cc(e[n],t[n]))return!1;return!0}function cc(e,t){return Ls(e)?dc(e,t):Ls(t)?dc(t,e):e===t}function dc(e,t){return Ls(t)?e.length===t.length&&e.every(((e,n)=>e===t[n])):1===e.length&&e[0]===t}const uc={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var pc,fc,hc,gc;function bc(e){if(!e)if(Ms){const t=document.querySelector("base");e=(e=t&&t.getAttribute("href")||"/").replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return"/"!==e[0]&&"#"!==e[0]&&(e="/"+e),e.replace(oc,"")}(fc=pc||(pc={})).pop="pop",fc.push="push",(gc=hc||(hc={})).back="back",gc.forward="forward",gc.unknown="";const vc=/^[^#]+#/;function mc(e,t){return e.replace(vc,"#")+t}const yc=()=>({left:window.scrollX,top:window.scrollY});function xc(e){let t;if("el"in e){const n=e.el,r="string"==typeof n&&n.startsWith("#"),o="string"==typeof n?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!o)return;t=function(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}(o,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(null!=t.left?t.left:window.scrollX,null!=t.top?t.top:window.scrollY)}function wc(e,t){return(history.state?history.state.position-t:-1)+e}const Cc=new Map;function Sc(e,t){const{pathname:n,search:r,hash:o}=t,i=e.indexOf("#");if(i>-1){let t=o.includes(e.slice(i))?e.slice(i).length:1,n=o.slice(t);return"/"!==n[0]&&(n="/"+n),ac(n,"")}return ac(n,e)+r+o}function kc(e,t,n,r=!1,o=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:o?yc():null}}function _c(e){const{history:t,location:n}=window,r={value:Sc(e,n)},o={value:t.state};function i(r,i,a){const l=e.indexOf("#"),s=l>-1?(n.host&&document.querySelector("base")?e:e.slice(l))+r:location.protocol+"//"+location.host+e+r;try{t[a?"replaceState":"pushState"](i,"",s),o.value=i}catch(c){n[a?"replace":"assign"](s)}}return o.value||i(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0),{location:r,state:o,push:function(e,n){const a=Ns({},o.value,t.state,{forward:e,scroll:yc()});i(a.current,a,!0),i(e,Ns({},kc(r.value,e,null),{position:a.position+1},n),!1),r.value=e},replace:function(e,n){i(e,Ns({},t.state,kc(o.value.back,e,o.value.forward,!0),n,{position:o.value.position}),!0),r.value=e}}}function Ec(e){const t=_c(e=bc(e)),n=function(e,t,n,r){let o=[],i=[],a=null;const l=({state:i})=>{const l=Sc(e,location),s=n.value,c=t.value;let d=0;if(i){if(n.value=l,t.value=i,a&&a===s)return void(a=null);d=c?i.position-c.position:0}else r(l);o.forEach((e=>{e(n.value,s,{delta:d,type:pc.pop,direction:d?d>0?hc.forward:hc.back:hc.unknown})}))};function s(){const{history:e}=window;e.state&&e.replaceState(Ns({},e.state,{scroll:yc()}),"")}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",s,{passive:!0}),{pauseListeners:function(){a=n.value},listen:function(e){o.push(e);const t=()=>{const t=o.indexOf(e);t>-1&&o.splice(t,1)};return i.push(t),t},destroy:function(){for(const e of i)e();i=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",s)}}}(e,t.state,t.location,t.replace);const r=Ns({location:"",base:e,go:function(e,t=!0){t||n.pauseListeners(),history.go(e)},createHref:mc.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 Rc(e){return(e=location.host?e||location.pathname+location.search:"").includes("#")||(e+="#"),Ec(e)}function Oc(e){return"string"==typeof e||"symbol"==typeof e}const Ac=Symbol("");var Pc,Tc;function $c(e,t){return Ns(new Error,{type:e,[Ac]:!0},t)}function zc(e,t){return e instanceof Error&&Ac in e&&(null==t||!!(e.type&t))}(Tc=Pc||(Pc={}))[Tc.aborted=4]="aborted",Tc[Tc.cancelled=8]="cancelled",Tc[Tc.duplicated=16]="duplicated";const Mc="[^/]+?",Fc={sensitive:!1,strict:!1,start:!0,end:!0},Nc=/[.+*?^${}()[\]/\\]/g;function Bc(e,t){let n=0;for(;nt.length?1===t.length&&80===t[0]?1:-1:0}function Ic(e,t){let n=0;const r=e.score,o=t.score;for(;n0&&t[t.length-1]<0}const jc={type:0,value:""},Dc=/[a-zA-Z0-9_]/;function Hc(e,t,n){const r=function(e,t){const n=Ns({},Fc,t),r=[];let o=n.start?"^":"";const i=[];for(const s of e){const e=s.length?[]:[90];n.strict&&!s.length&&(o+="/");for(let t=0;t1&&("*"===l||"+"===l)&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),i.push({type:1,value:c,regexp:d,repeatable:"*"===l||"+"===l,optional:"*"===l||"?"===l})):t("Invalid state to consume buffer"),c="")}function p(){c+=l}for(;s{i(p)}:Is}function i(e){if(Oc(e)){const t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(i),t.alias.forEach(i))}else{const t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(i),e.alias.forEach(i))}}function a(e){const t=function(e,t){let n=0,r=t.length;for(;n!==r;){const o=n+r>>1;Ic(e,t[o])<0?r=o:n=o+1}const o=function(e){let t=e;for(;t=t.parent;)if(Xc(t)&&0===Ic(e,t))return t;return}(e);o&&(r=t.lastIndexOf(o,r-1));return r}(e,n);n.splice(t,0,e),e.record.name&&!Vc(e)&&r.set(e.record.name,e)}return t=Zc({strict:!1,end:!0,sensitive:!1},t),e.forEach((e=>o(e))),{addRoute:o,resolve:function(e,t){let o,i,a,l={};if("name"in e&&e.name){if(o=r.get(e.name),!o)throw $c(1,{location:e});a=o.record.name,l=Ns(Uc(t.params,o.keys.filter((e=>!e.optional)).concat(o.parent?o.parent.keys.filter((e=>e.optional)):[]).map((e=>e.name))),e.params&&Uc(e.params,o.keys.map((e=>e.name)))),i=o.stringify(l)}else if(null!=e.path)i=e.path,o=n.find((e=>e.re.test(i))),o&&(l=o.parse(i),a=o.record.name);else{if(o=t.name?r.get(t.name):n.find((e=>e.re.test(t.path))),!o)throw $c(1,{location:e,currentLocation:t});a=o.record.name,l=Ns({},t.params,e.params),i=o.stringify(l)}const s=[];let c=o;for(;c;)s.unshift(c.record),c=c.parent;return{name:a,path:i,params:l,matched:s,meta:Gc(s)}},removeRoute:i,clearRoutes:function(){n.length=0,r.clear()},getRoutes:function(){return n},getRecordMatcher:function(e){return r.get(e)}}}function Uc(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function qc(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:Kc(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 Kc(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]="object"==typeof n?n[r]:n;return t}function Vc(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Gc(e){return e.reduce(((e,t)=>Ns(e,t.meta)),{})}function Zc(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function Xc({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Qc(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let r=0;re&&tc(e))):[r&&tc(r)]).forEach((e=>{void 0!==e&&(t+=(t.length?"&":"")+n,null!=e&&(t+="="+e))}))}return t}function Jc(e){const t={};for(const n in e){const r=e[n];void 0!==r&&(t[n]=Ls(r)?r.map((e=>null==e?null:""+e)):null==r?r:""+r)}return t}const ed=Symbol(""),td=Symbol(""),nd=Symbol(""),rd=Symbol(""),od=Symbol("");function id(){let e=[];return{add:function(t){return e.push(t),()=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)}},list:()=>e.slice(),reset:function(){e=[]}}}function ad(e,t,n,r,o,i=e=>e()){const a=r&&(r.enterCallbacks[o]=r.enterCallbacks[o]||[]);return()=>new Promise(((l,s)=>{const c=e=>{var i;!1===e?s($c(4,{from:n,to:t})):e instanceof Error?s(e):"string"==typeof(i=e)||i&&"object"==typeof i?s($c(2,{from:t,to:e})):(a&&r.enterCallbacks[o]===a&&"function"==typeof e&&a.push(e),l())},d=i((()=>e.call(r&&r.instances[o],t,n,c)));let u=Promise.resolve(d);e.length<3&&(u=u.then(c)),u.catch((e=>s(e)))}))}function ld(e,t,n,r,o=e=>e()){const i=[];for(const a of e)for(const e in a.components){let l=a.components[e];if("beforeRouteEnter"===t||a.instances[e])if(Fs(l)){const s=(l.__vccOpts||l)[t];s&&i.push(ad(s,n,r,a,e,o))}else{let s=l();i.push((()=>s.then((i=>{if(!i)throw new Error(`Couldn't resolve component "${e}" at "${a.path}"`);const l=(s=i).__esModule||"Module"===s[Symbol.toStringTag]||s.default&&Fs(s.default)?i.default:i;var s;a.mods[e]=i,a.components[e]=l;const c=(l.__vccOpts||l)[t];return c&&ad(c,n,r,a,e,o)()}))))}}return i}function sd(e){const t=Wr(nd),n=Wr(rd),r=gi((()=>{const n=Nt(e.to);return t.resolve(n)})),o=gi((()=>{const{matched:e}=r.value,{length:t}=e,o=e[t-1],i=n.matched;if(!o||!i.length)return-1;const a=i.findIndex(lc.bind(null,o));if(a>-1)return a;const l=dd(e[t-2]);return t>1&&dd(o)===l&&i[i.length-1].path!==l?i.findIndex(lc.bind(null,e[t-2])):a})),i=gi((()=>o.value>-1&&function(e,t){for(const n in t){const r=t[n],o=e[n];if("string"==typeof r){if(r!==o)return!1}else if(!Ls(o)||o.length!==r.length||r.some(((e,t)=>e!==o[t])))return!1}return!0}(n.params,r.value.params))),a=gi((()=>o.value>-1&&o.value===n.matched.length-1&&sc(n.params,r.value.params)));return{route:r,href:gi((()=>r.value.href)),isActive:i,isExactActive:a,navigate:function(n={}){if(function(e){if(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)return;if(e.defaultPrevented)return;if(void 0!==e.button&&0!==e.button)return;if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}e.preventDefault&&e.preventDefault();return!0}(n)){const n=t[Nt(e.replace)?"replace":"push"](Nt(e.to)).catch(Is);return e.viewTransition&&"undefined"!=typeof document&&"startViewTransition"in document&&document.startViewTransition((()=>n)),n}return Promise.resolve()}}}const cd=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"}},useLink:sd,setup(e,{slots:t}){const n=yt(sd(e)),{options:r}=Wr(nd),o=gi((()=>({[ud(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[ud(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive})));return()=>{const r=t.default&&(1===(i=t.default(n)).length?i[0]:i);var i;return e.custom?r:bi("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},r)}}});function dd(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const ud=(e,t,n)=>null!=e?e:null!=t?t:n;function pd(e,t){if(!e)return null;const n=e(t);return 1===n.length?n[0]:n}const fd=qn({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=Wr(od),o=gi((()=>e.route||r.value)),i=Wr(td,0),a=gi((()=>{let e=Nt(i);const{matched:t}=o.value;let n;for(;(n=t[e])&&!n.components;)e++;return e})),l=gi((()=>o.value.matched[a.value]));Hr(td,gi((()=>a.value+1))),Hr(ed,l),Hr(od,o);const s=$t();return go((()=>[s.value,l.value,e.name]),(([e,t,n],[r,o,i])=>{t&&(t.instances[n]=e,o&&o!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=o.leaveGuards),t.updateGuards.size||(t.updateGuards=o.updateGuards))),!e||!t||o&&lc(t,o)&&r||(t.enterCallbacks[n]||[]).forEach((t=>t(e)))}),{flush:"post"}),()=>{const r=o.value,i=e.name,a=l.value,c=a&&a.components[i];if(!c)return pd(n.default,{Component:c,route:r});const d=a.props[i],u=d?!0===d?r.params:"function"==typeof d?d(r):d:null,p=bi(c,Ns({},u,t,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(a.instances[i]=null)},ref:s}));return pd(n.default,{Component:p,route:r})||p}}});function hd(e){const t=Wc(e.routes,e),n=e.parseQuery||Qc,r=e.stringifyQuery||Yc,o=e.history,i=id(),a=id(),l=id(),s=zt(uc);let c=uc;Ms&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const d=Bs.bind(null,(e=>""+e)),u=Bs.bind(null,nc),p=Bs.bind(null,rc);function f(e,i){if(i=Ns({},i||s.value),"string"==typeof e){const r=ic(n,e,i.path),a=t.resolve({path:r.path},i),l=o.createHref(r.fullPath);return Ns(r,a,{params:p(a.params),hash:rc(r.hash),redirectedFrom:void 0,href:l})}let a;if(null!=e.path)a=Ns({},e,{path:ic(n,e.path,i.path).path});else{const t=Ns({},e.params);for(const e in t)null==t[e]&&delete t[e];a=Ns({},e,{params:u(t)}),i.params=u(i.params)}const l=t.resolve(a,i),c=e.hash||"";l.params=d(p(l.params));const f=function(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}(r,Ns({},e,{hash:(h=c,ec(h).replace(Xs,"{").replace(Ys,"}").replace(Gs,"^")),path:l.path}));var h;const g=o.createHref(f);return Ns({fullPath:f,hash:c,query:r===Yc?Jc(e.query):e.query||{}},l,{redirectedFrom:void 0,href:g})}function h(e){return"string"==typeof e?ic(n,e,s.value.path):Ns({},e)}function g(e,t){if(c!==e)return $c(8,{from:t,to:e})}function b(e){return m(e)}function v(e){const t=e.matched[e.matched.length-1];if(t&&t.redirect){const{redirect:n}=t;let r="function"==typeof n?n(e):n;return"string"==typeof r&&(r=r.includes("?")||r.includes("#")?r=h(r):{path:r},r.params={}),Ns({query:e.query,hash:e.hash,params:null!=r.path?{}:e.params},r)}}function m(e,t){const n=c=f(e),o=s.value,i=e.state,a=e.force,l=!0===e.replace,d=v(n);if(d)return m(Ns(h(d),{state:"object"==typeof d?Ns({},i,d.state):i,force:a,replace:l}),t||n);const u=n;let p;return u.redirectedFrom=t,!a&&function(e,t,n){const r=t.matched.length-1,o=n.matched.length-1;return r>-1&&r===o&&lc(t.matched[r],n.matched[o])&&sc(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}(r,o,n)&&(p=$c(16,{to:u,from:o}),T(o,o,!0,!1)),(p?Promise.resolve(p):w(u,o)).catch((e=>zc(e)?zc(e,2)?e:P(e):A(e,u,o))).then((e=>{if(e){if(zc(e,2))return m(Ns({replace:l},h(e.to),{state:"object"==typeof e.to?Ns({},i,e.to.state):i,force:a}),t||u)}else e=S(u,o,!0,l,i);return C(u,o,e),e}))}function y(e,t){const n=g(e,t);return n?Promise.reject(n):Promise.resolve()}function x(e){const t=M.values().next().value;return t&&"function"==typeof t.runWithContext?t.runWithContext(e):e()}function w(e,t){let n;const[r,o,l]=function(e,t){const n=[],r=[],o=[],i=Math.max(t.matched.length,e.matched.length);for(let a=0;alc(e,i)))?r.push(i):n.push(i));const l=e.matched[a];l&&(t.matched.find((e=>lc(e,l)))||o.push(l))}return[n,r,o]}(e,t);n=ld(r.reverse(),"beforeRouteLeave",e,t);for(const i of r)i.leaveGuards.forEach((r=>{n.push(ad(r,e,t))}));const s=y.bind(null,e,t);return n.push(s),N(n).then((()=>{n=[];for(const r of i.list())n.push(ad(r,e,t));return n.push(s),N(n)})).then((()=>{n=ld(o,"beforeRouteUpdate",e,t);for(const r of o)r.updateGuards.forEach((r=>{n.push(ad(r,e,t))}));return n.push(s),N(n)})).then((()=>{n=[];for(const r of l)if(r.beforeEnter)if(Ls(r.beforeEnter))for(const o of r.beforeEnter)n.push(ad(o,e,t));else n.push(ad(r.beforeEnter,e,t));return n.push(s),N(n)})).then((()=>(e.matched.forEach((e=>e.enterCallbacks={})),n=ld(l,"beforeRouteEnter",e,t,x),n.push(s),N(n)))).then((()=>{n=[];for(const r of a.list())n.push(ad(r,e,t));return n.push(s),N(n)})).catch((e=>zc(e,8)?e:Promise.reject(e)))}function C(e,t,n){l.list().forEach((r=>x((()=>r(e,t,n)))))}function S(e,t,n,r,i){const a=g(e,t);if(a)return a;const l=t===uc,c=Ms?history.state:{};n&&(r||l?o.replace(e.fullPath,Ns({scroll:l&&c&&c.scroll},i)):o.push(e.fullPath,i)),s.value=e,T(e,t,n,l),P()}let k;function _(){k||(k=o.listen(((e,t,n)=>{if(!F.listening)return;const r=f(e),i=v(r);if(i)return void m(Ns(i,{replace:!0,force:!0}),r).catch(Is);c=r;const a=s.value;var l,d;Ms&&(l=wc(a.fullPath,n.delta),d=yc(),Cc.set(l,d)),w(r,a).catch((e=>zc(e,12)?e:zc(e,2)?(m(Ns(h(e.to),{force:!0}),r).then((e=>{zc(e,20)&&!n.delta&&n.type===pc.pop&&o.go(-1,!1)})).catch(Is),Promise.reject()):(n.delta&&o.go(-n.delta,!1),A(e,r,a)))).then((e=>{(e=e||S(r,a,!1))&&(n.delta&&!zc(e,8)?o.go(-n.delta,!1):n.type===pc.pop&&zc(e,20)&&o.go(-1,!1)),C(r,a,e)})).catch(Is)})))}let E,R=id(),O=id();function A(e,t,n){P(e);const r=O.list();return r.length&&r.forEach((r=>r(e,t,n))),Promise.reject(e)}function P(e){return E||(E=!e,_(),R.list().forEach((([t,n])=>e?n(e):t())),R.reset()),e}function T(t,n,r,o){const{scrollBehavior:i}=e;if(!Ms||!i)return Promise.resolve();const a=!r&&function(e){const t=Cc.get(e);return Cc.delete(e),t}(wc(t.fullPath,0))||(o||!r)&&history.state&&history.state.scroll||null;return an().then((()=>i(t,n,a))).then((e=>e&&xc(e))).catch((e=>A(e,t,n)))}const $=e=>o.go(e);let z;const M=new Set,F={currentRoute:s,listening:!0,addRoute:function(e,n){let r,o;return Oc(e)?(r=t.getRecordMatcher(e),o=n):o=e,t.addRoute(o,r)},removeRoute:function(e){const n=t.getRecordMatcher(e);n&&t.removeRoute(n)},clearRoutes:t.clearRoutes,hasRoute:function(e){return!!t.getRecordMatcher(e)},getRoutes:function(){return t.getRoutes().map((e=>e.record))},resolve:f,options:e,push:b,replace:function(e){return b(Ns(h(e),{replace:!0}))},go:$,back:()=>$(-1),forward:()=>$(1),beforeEach:i.add,beforeResolve:a.add,afterEach:l.add,onError:O.add,isReady:function(){return E&&s.value!==uc?Promise.resolve():new Promise(((e,t)=>{R.add([e,t])}))},install(e){e.component("RouterLink",cd),e.component("RouterView",fd),e.config.globalProperties.$router=this,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>Nt(s)}),Ms&&!z&&s.value===uc&&(z=!0,b(o.location).catch((e=>{})));const t={};for(const r in uc)Object.defineProperty(t,r,{get:()=>s.value[r],enumerable:!0});e.provide(nd,this),e.provide(rd,xt(t)),e.provide(od,s);const n=e.unmount;M.add(e),e.unmount=function(){M.delete(e),M.size<1&&(c=uc,k&&k(),k=null,s.value=uc,z=!1,E=!1),n()}}};function N(e){return e.reduce(((e,t)=>e.then((()=>x(t)))),Promise.resolve())}return F}function gd(){return Wr(nd)}function bd(e){return Wr(rd)} -/*! - * pinia v2.3.1 - * (c) 2025 Eduardo San Martin Morote - * @license MIT - */let vd;const md=e=>vd=e,yd=Symbol();function xd(e){return e&&"object"==typeof e&&"[object Object]"===Object.prototype.toString.call(e)&&"function"!=typeof e.toJSON}var wd,Cd;function Sd(){const e=ue(!0),t=e.run((()=>$t({})));let n=[],r=[];const o=Ot({install(e){md(o),o._a=e,e.provide(yd,o),e.config.globalProperties.$pinia=o,r.forEach((e=>n.push(e))),r=[]},use(e){return this._a?n.push(e):r.push(e),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return o}(Cd=wd||(wd={})).direct="direct",Cd.patchObject="patch object",Cd.patchFunction="patch function";const kd=()=>{};function _d(e,t,n,r=kd){e.push(t);const o=()=>{const n=e.indexOf(t);n>-1&&(e.splice(n,1),r())};var i;return!n&&pe()&&(i=o,se&&se.cleanups.push(i)),o}function Ed(e,...t){e.slice().forEach((e=>{e(...t)}))}const Rd=e=>e(),Od=Symbol(),Ad=Symbol();function Pd(e,t){e instanceof Map&&t instanceof Map?t.forEach(((t,n)=>e.set(n,t))):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const r=t[n],o=e[n];xd(o)&&xd(r)&&e.hasOwnProperty(n)&&!Tt(r)&&!St(r)?e[n]=Pd(o,r):e[n]=r}return e}const Td=Symbol();const{assign:$d}=Object;function zd(e,t,n,r){const{state:o,actions:i,getters:a}=t,l=n.state.value[e];let s;return s=Md(e,(function(){l||(n.state.value[e]=o?o():{});const t=function(e){const t=k(e)?new Array(e.length):{};for(const n in e)t[n]=Ht(e,n);return t}(n.state.value[e]);return $d(t,i,Object.keys(a||{}).reduce(((t,r)=>(t[r]=Ot(gi((()=>{md(n);const t=n._s.get(e);return a[r].call(t,t)}))),t)),{}))}),t,n,r,!0),s}function Md(e,t,n={},r,o,i){let a;const l=$d({actions:{}},n),s={deep:!0};let c,d,u,p=[],f=[];const h=r.state.value[e];let g;function b(t){let n;c=d=!1,"function"==typeof t?(t(r.state.value[e]),n={type:wd.patchFunction,storeId:e,events:u}):(Pd(r.state.value[e],t),n={type:wd.patchObject,payload:t,storeId:e,events:u});const o=g=Symbol();an().then((()=>{g===o&&(c=!0)})),d=!0,Ed(p,n,r.state.value[e])}i||h||(r.state.value[e]={}),$t({});const v=i?function(){const{state:e}=n,t=e?e():{};this.$patch((e=>{$d(e,t)}))}:kd;const m=(t,n="")=>{if(Od in t)return t[Ad]=n,t;const o=function(){md(r);const n=Array.from(arguments),i=[],a=[];let l;Ed(f,{args:n,name:o[Ad],store:y,after:function(e){i.push(e)},onError:function(e){a.push(e)}});try{l=t.apply(this&&this.$id===e?this:y,n)}catch(s){throw Ed(a,s),s}return l instanceof Promise?l.then((e=>(Ed(i,e),e))).catch((e=>(Ed(a,e),Promise.reject(e)))):(Ed(i,l),l)};return o[Od]=!0,o[Ad]=n,o},y=yt({_p:r,$id:e,$onAction:_d.bind(null,f),$patch:b,$reset:v,$subscribe(t,n={}){const o=_d(p,t,n.detached,(()=>i())),i=a.run((()=>go((()=>r.state.value[e]),(r=>{("sync"===n.flush?d:c)&&t({storeId:e,type:wd.direct,events:u},r)}),$d({},s,n))));return o},$dispose:function(){a.stop(),p=[],f=[],r._s.delete(e)}});r._s.set(e,y);const x=(r._a&&r._a.runWithContext||Rd)((()=>r._e.run((()=>(a=ue()).run((()=>t({action:m})))))));for(const S in x){const t=x[S];if(Tt(t)&&(!Tt(C=t)||!C.effect)||St(t))i||(!h||xd(w=t)&&w.hasOwnProperty(Td)||(Tt(t)?t.value=h[S]:Pd(t,h[S])),r.state.value[e][S]=t);else if("function"==typeof t){const e=m(t,S);x[S]=e,l.actions[S]=t}}var w,C;return $d(y,x),$d(Rt(y),x),Object.defineProperty(y,"$state",{get:()=>r.state.value[e],set:e=>{b((t=>{$d(t,e)}))}}),r._p.forEach((e=>{$d(y,a.run((()=>e({store:y,app:r._a,pinia:r,options:l}))))})),h&&i&&n.hydrate&&n.hydrate(y.$state,h),c=!0,d=!0,y} -/*! #__NO_SIDE_EFFECTS__ */function Fd(e,t,n){let r,o;const i="function"==typeof t;function a(e,n){(e=e||(!!(ni||fn||Dr)?Wr(yd,null):null))&&md(e),(e=vd)._s.has(r)||(i?Md(r,t,o,e):zd(r,o,e));return e._s.get(r)}return"string"==typeof e?(r=e,o=i?n:t):(o=e,r=e.id),a.$id=r,a}function Nd(e){{const t=Rt(e),n={};for(const r in t){const o=t[r];o.effect?n[r]=gi({get:()=>e[r],set(t){e[r]=t}}):(Tt(o)||St(o))&&(n[r]=Dt(e,r))}return n}}function Bd(e,t){var n;return e="object"==typeof(n=e)&&null!==n?e:Object.create(null),new Proxy(e,{get:(e,n,r)=>"key"===n?Reflect.get(e,n,r):Reflect.get(e,n,r)||Reflect.get(t,n,r)})}function Id(e,{storage:t,serializer:n,key:r,debug:o}){try{const o=null==t?void 0:t.getItem(r);o&&e.$patch(null==n?void 0:n.deserialize(o))}catch(XT){}}function Ld(e,{storage:t,serializer:n,key:r,paths:o,debug:i}){try{const i=Array.isArray(o)?function(e,t){return t.reduce(((t,n)=>{const r=n.split(".");return function(e,t,n){return t.slice(0,-1).reduce(((e,t)=>/^(__proto__)$/.test(t)?{}:e[t]=e[t]||{}),e)[t[t.length-1]]=n,e}(t,r,function(e,t){return t.reduce(((e,t)=>null==e?void 0:e[t]),e)}(e,r))}),{})}(e,o):e;t.setItem(r,n.serialize(i))}catch(XT){}}var jd=function(e={}){return t=>{const{auto:n=!1}=e,{options:{persist:r=n},store:o,pinia:i}=t;if(!r)return;if(!(o.$id in i.state.value)){const e=i._s.get(o.$id.replace("__hot:",""));return void(e&&Promise.resolve().then((()=>e.$persist())))}const a=(Array.isArray(r)?r.map((t=>Bd(t,e))):[Bd(r,e)]).map(function(e,t){return n=>{var r;try{const{storage:o=localStorage,beforeRestore:i,afterRestore:a,serializer:l={serialize:JSON.stringify,deserialize:JSON.parse},key:s=t.$id,paths:c=null,debug:d=!1}=n;return{storage:o,beforeRestore:i,afterRestore:a,serializer:l,key:(null!=(r=e.key)?r:e=>e)("string"==typeof s?s:s(t.$id)),paths:c,debug:d}}catch(XT){return n.debug,null}}}(e,o)).filter(Boolean);o.$persist=()=>{a.forEach((e=>{Ld(o.$state,e)}))},o.$hydrate=({runHooks:e=!0}={})=>{a.forEach((n=>{const{beforeRestore:r,afterRestore:i}=n;e&&(null==r||r(t)),Id(o,n),e&&(null==i||i(t))}))},a.forEach((e=>{const{beforeRestore:n,afterRestore:r}=e;null==n||n(t),Id(o,e),null==r||r(t),o.$subscribe(((t,n)=>{Ld(n,e)}),{detached:!0})}))}}();const Dd=/\s*,(?![^(]*\))\s*/g,Hd=/\s+/g;function Wd(e){let t=[""];return e.forEach((e=>{(e=e&&e.trim())&&(t=e.includes("&")?function(e,t){const n=[];return t.split(Dd).forEach((t=>{let r=function(e){let t=0;for(let n=0;n{n.push((e&&e+" ")+t)}));if(1===r)return void e.forEach((e=>{n.push(t.replace("&",e))}));let o=[t];for(;r--;){const t=[];o.forEach((n=>{e.forEach((e=>{t.push(n.replace("&",e))}))})),o=t}o.forEach((e=>n.push(e)))})),n}(t,e):function(e,t){const n=[];return t.split(Dd).forEach((t=>{e.forEach((e=>{n.push((e&&e+" ")+t)}))})),n}(t,e))})),t.join(", ").replace(Hd," ")}function Ud(e){if(!e)return;const t=e.parentElement;t&&t.removeChild(e)}function qd(e,t){return(null!=t?t:document.head).querySelector(`style[cssr-id="${e}"]`)}function Kd(e){return!!e&&/^\s*@(s|m)/.test(e)}const Vd=/[A-Z]/g;function Gd(e){return e.replace(Vd,(e=>"-"+e.toLowerCase()))}function Zd(e,t,n,r){if(!t)return"";const o=function(e,t,n){return"function"==typeof e?e({context:t.context,props:n}):e}(t,n,r);if(!o)return"";if("string"==typeof o)return`${e} {\n${o}\n}`;const i=Object.keys(o);if(0===i.length)return n.config.keepEmptyBlock?e+" {\n}":"";const a=e?[e+" {"]:[];return i.forEach((e=>{const t=o[e];"raw"!==e?(e=Gd(e),null!=t&&a.push(` ${e}${function(e,t=" "){return"object"==typeof e&&null!==e?" {\n"+Object.entries(e).map((e=>t+` ${Gd(e[0])}: ${e[1]};`)).join("\n")+"\n"+t+"}":`: ${e};`}(t)}`)):a.push("\n"+t+"\n")})),e&&a.push("}"),a.join("\n")}function Xd(e,t,n){e&&e.forEach((e=>{if(Array.isArray(e))Xd(e,t,n);else if("function"==typeof e){const r=e(t);Array.isArray(r)?Xd(r,t,n):r&&n(r)}else e&&n(e)}))}function Qd(e,t,n,r,o){const i=e.$;let a="";if(i&&"string"!=typeof i)if("function"==typeof i){const e=i({context:r.context,props:o});Kd(e)?a=e:t.push(e)}else if(i.before&&i.before(r.context),i.$&&"string"!=typeof i.$){if(i.$){const e=i.$({context:r.context,props:o});Kd(e)?a=e:t.push(e)}}else Kd(i.$)?a=i.$:t.push(i.$);else Kd(i)?a=i:t.push(i);const l=Wd(t),s=Zd(l,e.props,r,o);a?n.push(`${a} {`):s.length&&n.push(s),e.children&&Xd(e.children,{context:r.context,props:o},(e=>{if("string"==typeof e){const t=Zd(l,{raw:e},r,o);n.push(t)}else Qd(e,t,n,r,o)})),t.pop(),a&&n.push("}"),i&&i.after&&i.after(r.context)}function Yd(e){for(var t,n=0,r=0,o=e.length;o>=4;++r,o-=4)t=1540483477*(65535&(t=255&e.charCodeAt(r)|(255&e.charCodeAt(++r))<<8|(255&e.charCodeAt(++r))<<16|(255&e.charCodeAt(++r))<<24))+(59797*(t>>>16)<<16),n=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&n)+(59797*(n>>>16)<<16);switch(o){case 3:n^=(255&e.charCodeAt(r+2))<<16;case 2:n^=(255&e.charCodeAt(r+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(r)))+(59797*(n>>>16)<<16)}return(((n=1540483477*(65535&(n^=n>>>13))+(59797*(n>>>16)<<16))^n>>>15)>>>0).toString(36)}function Jd(e,t){e.push(t)}function eu(e,t,n,r,o,i,a,l,s){let c;if(void 0===n&&(c=t.render(r),n=Yd(c)),s)return void s.adapter(n,null!=c?c:t.render(r));void 0===l&&(l=document.head);const d=qd(n,l);if(null!==d&&!i)return d;const u=null!=d?d:function(e){const t=document.createElement("style");return t.setAttribute("cssr-id",e),t}(n);if(void 0===c&&(c=t.render(r)),u.textContent=c,null!==d)return d;if(a){const e=l.querySelector(`meta[name="${a}"]`);if(e)return l.insertBefore(u,e),Jd(t.els,u),u}return o?l.insertBefore(u,l.querySelector("style, link")):l.appendChild(u),Jd(t.els,u),u}function tu(e){return function(e,t,n){const r=[];return Qd(e,[],r,t,n),r.join("\n\n")}(this,this.instance,e)}function nu(e={}){const{id:t,ssr:n,props:r,head:o=!1,force:i=!1,anchorMetaName:a,parent:l}=e;return eu(this.instance,this,t,r,o,i,a,l,n)}function ru(e={}){const{id:t,parent:n}=e;!function(e,t,n,r){const{els:o}=t;if(void 0===n)o.forEach(Ud),t.els=[];else{const e=qd(n,r);e&&o.includes(e)&&(Ud(e),t.els=o.filter((t=>t!==e)))}}(this.instance,this,t,n)}"undefined"!=typeof window&&(window.__cssrContext={});const ou=function(e,t,n,r){return{instance:e,$:t,props:n,children:r,els:[],render:tu,mount:nu,unmount:ru}};function iu(e={}){const t={c:(...e)=>function(e,t,n,r){return Array.isArray(t)?ou(e,{$:null},null,t):Array.isArray(n)?ou(e,t,null,n):Array.isArray(r)?ou(e,t,n,r):ou(e,t,n,null)}(t,...e),use:(e,...n)=>e.install(t,...n),find:qd,context:{},config:e};return t}const au=".n-",lu=iu(),su=function(e){let t,n=".",r="__",o="--";if(e){let t=e.blockPrefix;t&&(n=t),t=e.elementPrefix,t&&(r=t),t=e.modifierPrefix,t&&(o=t)}const i={install(e){t=e.c;const n=e.context;n.bem={},n.bem.b=null,n.bem.els=null}};return Object.assign(i,{cB:(...e)=>t(function(e){let t,r;return{before(e){t=e.bem.b,r=e.bem.els,e.bem.els=null},after(e){e.bem.b=t,e.bem.els=r},$:({context:t,props:r})=>(e="string"==typeof e?e:e({context:t,props:r}),t.bem.b=e,`${(null==r?void 0:r.bPrefix)||n}${t.bem.b}`)}}(e[0]),e[1],e[2]),cE:(...e)=>t(function(e){let t;return{before(e){t=e.bem.els},after(e){e.bem.els=t},$:({context:t,props:o})=>(e="string"==typeof e?e:e({context:t,props:o}),t.bem.els=e.split(",").map((e=>e.trim())),t.bem.els.map((e=>`${(null==o?void 0:o.bPrefix)||n}${t.bem.b}${r}${e}`)).join(", "))}}(e[0]),e[1],e[2]),cM:(...e)=>{return t((i=e[0],{$({context:e,props:t}){const a=(i="string"==typeof i?i:i({context:e,props:t})).split(",").map((e=>e.trim()));function l(i){return a.map((a=>`&${(null==t?void 0:t.bPrefix)||n}${e.bem.b}${void 0!==i?`${r}${i}`:""}${o}${a}`)).join(", ")}const s=e.bem.els;return null!==s?l(s[0]):l()}}),e[1],e[2]);var i},cNotM:(...e)=>{return t((i=e[0],{$({context:e,props:t}){i="string"==typeof i?i:i({context:e,props:t});const a=e.bem.els;return`&:not(${(null==t?void 0:t.bPrefix)||n}${e.bem.b}${null!==a&&a.length>0?`${r}${a[0]}`:""}${o}${i})`}}),e[1],e[2]);var i}}),i}({blockPrefix:au,elementPrefix:"__",modifierPrefix:"--"});lu.use(su);const{c:cu,find:du}=lu,{cB:uu,cE:pu,cM:fu,cNotM:hu}=su;function gu(e){return cu((({props:{bPrefix:e}})=>`${e||au}modal, ${e||au}drawer`),[e])}function bu(e){return cu((({props:{bPrefix:e}})=>`${e||au}popover`),[e])}function vu(e){return cu((({props:{bPrefix:e}})=>`&${e||au}modal`),e)}const mu=(...e)=>cu(">",[uu(...e)]);function yu(e,t){return e+("default"===t?"":t.replace(/^[a-z]/,(e=>e.toUpperCase())))}let xu=[];const wu=new WeakMap;function Cu(){xu.forEach((e=>e(...wu.get(e)))),xu=[]}function Su(e,...t){wu.set(e,t),xu.includes(e)||1===xu.push(e)&&requestAnimationFrame(Cu)}function ku(e,t){let{target:n}=e;for(;n;){if(n.dataset&&void 0!==n.dataset[t])return!0;n=n.parentElement}return!1}function _u(e){return e.composedPath()[0]||null}function Eu(e,t){var n;if(null==e)return;const r=function(e){if("number"==typeof e)return{"":e.toString()};const t={};return e.split(/ +/).forEach((e=>{if(""===e)return;const[n,r]=e.split(":");void 0===r?t[""]=n:t[n]=r})),t}(e);if(void 0===t)return r[""];if("string"==typeof t)return null!==(n=r[t])&&void 0!==n?n:r[""];if(Array.isArray(t)){for(let e=t.length-1;e>=0;--e){const n=t[e];if(n in r)return r[n]}return r[""]}{let e,n=-1;return Object.keys(r).forEach((o=>{const i=Number(o);!Number.isNaN(i)&&t>=i&&i>=n&&(n=i,e=r[o])})),e}}function Ru(e){return"string"==typeof e?e.endsWith("px")?Number(e.slice(0,e.length-2)):Number(e):e}function Ou(e){if(null!=e)return"number"==typeof e?`${e}px`:e.endsWith("px")?e:`${e}px`}function Au(e,t){const n=e.trim().split(/\s+/g),r={top:n[0]};switch(n.length){case 1:r.right=n[0],r.bottom=n[0],r.left=n[0];break;case 2:r.right=n[1],r.left=n[1],r.bottom=n[0];break;case 3:r.right=n[1],r.bottom=n[2],r.left=n[1];break;case 4:r.right=n[1],r.bottom=n[2],r.left=n[3];break;default:throw new Error("[seemly/getMargin]:"+e+" is not a valid value.")}return void 0===t?r:r[t]}const Pu={aliceblue:"#F0F8FF",antiquewhite:"#FAEBD7",aqua:"#0FF",aquamarine:"#7FFFD4",azure:"#F0FFFF",beige:"#F5F5DC",bisque:"#FFE4C4",black:"#000",blanchedalmond:"#FFEBCD",blue:"#00F",blueviolet:"#8A2BE2",brown:"#A52A2A",burlywood:"#DEB887",cadetblue:"#5F9EA0",chartreuse:"#7FFF00",chocolate:"#D2691E",coral:"#FF7F50",cornflowerblue:"#6495ED",cornsilk:"#FFF8DC",crimson:"#DC143C",cyan:"#0FF",darkblue:"#00008B",darkcyan:"#008B8B",darkgoldenrod:"#B8860B",darkgray:"#A9A9A9",darkgrey:"#A9A9A9",darkgreen:"#006400",darkkhaki:"#BDB76B",darkmagenta:"#8B008B",darkolivegreen:"#556B2F",darkorange:"#FF8C00",darkorchid:"#9932CC",darkred:"#8B0000",darksalmon:"#E9967A",darkseagreen:"#8FBC8F",darkslateblue:"#483D8B",darkslategray:"#2F4F4F",darkslategrey:"#2F4F4F",darkturquoise:"#00CED1",darkviolet:"#9400D3",deeppink:"#FF1493",deepskyblue:"#00BFFF",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1E90FF",firebrick:"#B22222",floralwhite:"#FFFAF0",forestgreen:"#228B22",fuchsia:"#F0F",gainsboro:"#DCDCDC",ghostwhite:"#F8F8FF",gold:"#FFD700",goldenrod:"#DAA520",gray:"#808080",grey:"#808080",green:"#008000",greenyellow:"#ADFF2F",honeydew:"#F0FFF0",hotpink:"#FF69B4",indianred:"#CD5C5C",indigo:"#4B0082",ivory:"#FFFFF0",khaki:"#F0E68C",lavender:"#E6E6FA",lavenderblush:"#FFF0F5",lawngreen:"#7CFC00",lemonchiffon:"#FFFACD",lightblue:"#ADD8E6",lightcoral:"#F08080",lightcyan:"#E0FFFF",lightgoldenrodyellow:"#FAFAD2",lightgray:"#D3D3D3",lightgrey:"#D3D3D3",lightgreen:"#90EE90",lightpink:"#FFB6C1",lightsalmon:"#FFA07A",lightseagreen:"#20B2AA",lightskyblue:"#87CEFA",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#B0C4DE",lightyellow:"#FFFFE0",lime:"#0F0",limegreen:"#32CD32",linen:"#FAF0E6",magenta:"#F0F",maroon:"#800000",mediumaquamarine:"#66CDAA",mediumblue:"#0000CD",mediumorchid:"#BA55D3",mediumpurple:"#9370DB",mediumseagreen:"#3CB371",mediumslateblue:"#7B68EE",mediumspringgreen:"#00FA9A",mediumturquoise:"#48D1CC",mediumvioletred:"#C71585",midnightblue:"#191970",mintcream:"#F5FFFA",mistyrose:"#FFE4E1",moccasin:"#FFE4B5",navajowhite:"#FFDEAD",navy:"#000080",oldlace:"#FDF5E6",olive:"#808000",olivedrab:"#6B8E23",orange:"#FFA500",orangered:"#FF4500",orchid:"#DA70D6",palegoldenrod:"#EEE8AA",palegreen:"#98FB98",paleturquoise:"#AFEEEE",palevioletred:"#DB7093",papayawhip:"#FFEFD5",peachpuff:"#FFDAB9",peru:"#CD853F",pink:"#FFC0CB",plum:"#DDA0DD",powderblue:"#B0E0E6",purple:"#800080",rebeccapurple:"#663399",red:"#F00",rosybrown:"#BC8F8F",royalblue:"#4169E1",saddlebrown:"#8B4513",salmon:"#FA8072",sandybrown:"#F4A460",seagreen:"#2E8B57",seashell:"#FFF5EE",sienna:"#A0522D",silver:"#C0C0C0",skyblue:"#87CEEB",slateblue:"#6A5ACD",slategray:"#708090",slategrey:"#708090",snow:"#FFFAFA",springgreen:"#00FF7F",steelblue:"#4682B4",tan:"#D2B48C",teal:"#008080",thistle:"#D8BFD8",tomato:"#FF6347",turquoise:"#40E0D0",violet:"#EE82EE",wheat:"#F5DEB3",white:"#FFF",whitesmoke:"#F5F5F5",yellow:"#FF0",yellowgreen:"#9ACD32",transparent:"#0000"};function Tu(e,t,n){t/=100,n/=100;let r=(r,o=(r+e/60)%6)=>n-n*t*Math.max(Math.min(o,4-o,1),0);return[255*r(5),255*r(3),255*r(1)]}function $u(e,t,n){n/=100;let r=(t/=100)*Math.min(n,1-n),o=(t,o=(t+e/30)%12)=>n-r*Math.max(Math.min(o-3,9-o,1),-1);return[255*o(0),255*o(8),255*o(4)]}const zu="^\\s*",Mu="\\s*$",Fu="\\s*((\\.\\d+)|(\\d+(\\.\\d*)?))%\\s*",Nu="\\s*((\\.\\d+)|(\\d+(\\.\\d*)?))\\s*",Bu="([0-9A-Fa-f])",Iu="([0-9A-Fa-f]{2})",Lu=new RegExp(`${zu}hsl\\s*\\(${Nu},${Fu},${Fu}\\)${Mu}`),ju=new RegExp(`${zu}hsv\\s*\\(${Nu},${Fu},${Fu}\\)${Mu}`),Du=new RegExp(`${zu}hsla\\s*\\(${Nu},${Fu},${Fu},${Nu}\\)${Mu}`),Hu=new RegExp(`${zu}hsva\\s*\\(${Nu},${Fu},${Fu},${Nu}\\)${Mu}`),Wu=new RegExp(`${zu}rgb\\s*\\(${Nu},${Nu},${Nu}\\)${Mu}`),Uu=new RegExp(`${zu}rgba\\s*\\(${Nu},${Nu},${Nu},${Nu}\\)${Mu}`),qu=new RegExp(`${zu}#${Bu}${Bu}${Bu}${Mu}`),Ku=new RegExp(`${zu}#${Iu}${Iu}${Iu}${Mu}`),Vu=new RegExp(`${zu}#${Bu}${Bu}${Bu}${Bu}${Mu}`),Gu=new RegExp(`${zu}#${Iu}${Iu}${Iu}${Iu}${Mu}`);function Zu(e){return parseInt(e,16)}function Xu(e){try{let t;if(t=Ku.exec(e))return[Zu(t[1]),Zu(t[2]),Zu(t[3]),1];if(t=Wu.exec(e))return[op(t[1]),op(t[5]),op(t[9]),1];if(t=Uu.exec(e))return[op(t[1]),op(t[5]),op(t[9]),np(t[13])];if(t=qu.exec(e))return[Zu(t[1]+t[1]),Zu(t[2]+t[2]),Zu(t[3]+t[3]),1];if(t=Gu.exec(e))return[Zu(t[1]),Zu(t[2]),Zu(t[3]),np(Zu(t[4])/255)];if(t=Vu.exec(e))return[Zu(t[1]+t[1]),Zu(t[2]+t[2]),Zu(t[3]+t[3]),np(Zu(t[4]+t[4])/255)];if(e in Pu)return Xu(Pu[e]);if(Lu.test(e)||Du.test(e)){const[t,n,r,o]=function(e){try{let t;if(t=Du.exec(e))return[rp(t[1]),ip(t[5]),ip(t[9]),np(t[13])];if(t=Lu.exec(e))return[rp(t[1]),ip(t[5]),ip(t[9]),1];throw new Error(`[seemly/hsla]: Invalid color value ${e}.`)}catch(XT){throw XT}}(e);return[...$u(t,n,r),o]}if(ju.test(e)||Hu.test(e)){const[t,n,r,o]=function(e){try{let t;if(t=Hu.exec(e))return[rp(t[1]),ip(t[5]),ip(t[9]),np(t[13])];if(t=ju.exec(e))return[rp(t[1]),ip(t[5]),ip(t[9]),1];throw new Error(`[seemly/hsva]: Invalid color value ${e}.`)}catch(XT){throw XT}}(e);return[...Tu(t,n,r),o]}throw new Error(`[seemly/rgba]: Invalid color value ${e}.`)}catch(XT){throw XT}}function Qu(e,t,n,r){return`rgba(${op(e)}, ${op(t)}, ${op(n)}, ${o=r,o>1?1:o<0?0:o})`;var o}function Yu(e,t,n,r,o){return op((e*t*(1-r)+n*r)/o)}function Ju(e,t){Array.isArray(e)||(e=Xu(e)),Array.isArray(t)||(t=Xu(t));const n=e[3],r=t[3],o=np(n+r-n*r);return Qu(Yu(e[0],n,t[0],r,o),Yu(e[1],n,t[1],r,o),Yu(e[2],n,t[2],r,o),o)}function ep(e,t){const[n,r,o,i=1]=Array.isArray(e)?e:Xu(e);return"number"==typeof t.alpha?Qu(n,r,o,t.alpha):Qu(n,r,o,i)}function tp(e,t){const[n,r,o,i=1]=Array.isArray(e)?e:Xu(e),{lightness:a=1,alpha:l=1}=t;return function(e){const[t,n,r]=e;if(3 in e)return`rgba(${op(t)}, ${op(n)}, ${op(r)}, ${np(e[3])})`;return`rgba(${op(t)}, ${op(n)}, ${op(r)}, 1)`}([n*a,r*a,o*a,i*l])}function np(e){const t=Math.round(100*Number(e))/100;return t>1?1:t<0?0:t}function rp(e){const t=Math.round(Number(e));return t>=360||t<0?0:t}function op(e){const t=Math.round(Number(e));return t>255?255:t<0?0:t}function ip(e){const t=Math.round(Number(e));return t>100?100:t<0?0:t}function ap(e=8){return Math.random().toString(16).slice(2,2+e)}function lp(e,t){const n=[];for(let r=0;r{t.contains(sp(e))||n(e)};return{mousemove:e,touchstart:e}}if("clickoutside"===e){let e=!1;const r=n=>{e=!t.contains(sp(n))},o=r=>{e&&(t.contains(sp(r))||n(r))};return{mousedown:r,mouseup:o,touchstart:r,touchend:o}}return{}}(e,t,n)),i}const{on:up,off:pp}=function(){if("undefined"==typeof window)return{on:()=>{},off:()=>{}};const e=new WeakMap,t=new WeakMap;function n(){e.set(this,!0)}function r(){e.set(this,!0),t.set(this,!0)}function o(e,t,n){const r=e[t];return e[t]=function(){return n.apply(e,arguments),r.apply(e,arguments)},e}function i(e,t){e[t]=Event.prototype[t]}const a=new WeakMap,l=Object.getOwnPropertyDescriptor(Event.prototype,"currentTarget");function s(){var e;return null!==(e=a.get(this))&&void 0!==e?e:null}function c(e,t){void 0!==l&&Object.defineProperty(e,"currentTarget",{configurable:!0,enumerable:!0,get:null!=t?t:l.get})}const d={bubble:{},capture:{}},u={},p=function(){const l=function(l){const{type:u,eventPhase:p,bubbles:f}=l,h=sp(l);if(2===p)return;const g=1===p?"capture":"bubble";let b=h;const v=[];for(;null===b&&(b=window),v.push(b),b!==window;)b=b.parentNode||null;const m=d.capture[u],y=d.bubble[u];if(o(l,"stopPropagation",n),o(l,"stopImmediatePropagation",r),c(l,s),"capture"===g){if(void 0===m)return;for(let n=v.length-1;n>=0&&!e.has(l);--n){const e=v[n],r=m.get(e);if(void 0!==r){a.set(l,e);for(const e of r){if(t.has(l))break;e(l)}}if(0===n&&!f&&void 0!==y){const n=y.get(e);if(void 0!==n)for(const e of n){if(t.has(l))break;e(l)}}}}else if("bubble"===g){if(void 0===y)return;for(let n=0;nt(e)))};return e.displayName="evtdUnifiedWindowEventHandler",e}();function h(e,t){const n=d[e];return void 0===n[t]&&(n[t]=new Map,window.addEventListener(t,p,"capture"===e)),n[t]}function g(e,t){let n=e.get(t);return void 0===n&&e.set(t,n=new Set),n}function b(e,t,n,r){const o=function(e,t,n,r){if("mousemoveoutside"===e||"clickoutside"===e){const o=dp(e,t,n);return Object.keys(o).forEach((e=>{pp(e,document,o[e],r)})),!0}return!1}(e,t,n,r);if(o)return;const i=!0===r||"object"==typeof r&&!0===r.capture,a=i?"capture":"bubble",l=h(a,e),s=g(l,t);if(t===window){if(!function(e,t,n,r){const o=d[t][n];if(void 0!==o){const t=o.get(e);if(void 0!==t&&t.has(r))return!0}return!1}(t,i?"bubble":"capture",e,n)&&function(e,t){const n=u[e];return!(void 0===n||!n.has(t))}(e,n)){const t=u[e];t.delete(n),0===t.size&&(window.removeEventListener(e,f),u[e]=void 0)}}s.has(n)&&s.delete(n),0===s.size&&l.delete(t),0===l.size&&(window.removeEventListener(e,p,"capture"===a),d[a][e]=void 0)}return{on:function(e,t,n,r){let o;o="object"==typeof r&&!0===r.once?i=>{b(e,t,o,r),n(i)}:n;if(function(e,t,n,r){if("mousemoveoutside"===e||"clickoutside"===e){const o=dp(e,t,n);return Object.keys(o).forEach((e=>{up(e,document,o[e],r)})),!0}return!1}(e,t,o,r))return;const i=g(h(!0===r||"object"==typeof r&&!0===r.capture?"capture":"bubble",e),t);if(i.has(o)||i.add(o),t===window){const t=function(e){return void 0===u[e]&&(u[e]=new Set,window.addEventListener(e,f)),u[e]}(e);t.has(o)||t.add(o)}},off:b}}();function fp(e){const t=$t(!!e.value);if(t.value)return wt(t);const n=go(e,(e=>{e&&(t.value=!0,n())}));return wt(t)}function hp(e){const t=gi(e),n=$t(t.value);return go(t,(e=>{n.value=e})),"function"==typeof e?n:{__v_isRef:!0,get value(){return n.value},set value(t){e.set(t)}}}function gp(){return null!==ri()}const bp="undefined"!=typeof window;let vp,mp;var yp,xp;function wp(e){if(mp)return;let t=!1;rr((()=>{mp||null==vp||vp.then((()=>{t||e()}))})),ar((()=>{t=!0}))}vp=bp?null===(xp=null===(yp=document)||void 0===yp?void 0:yp.fonts)||void 0===xp?void 0:xp.ready:void 0,mp=!1,void 0!==vp?vp.then((()=>{mp=!0})):mp=!0;const Cp=$t(null);function Sp(e){if(e.clientX>0||e.clientY>0)Cp.value={x:e.clientX,y:e.clientY};else{const{target:t}=e;if(t instanceof Element){const{left:e,top:n,width:r,height:o}=t.getBoundingClientRect();Cp.value=e>0||n>0?{x:e+r/2,y:n+o/2}:{x:0,y:0}}else Cp.value=null}}let kp=0,_p=!0;function Ep(){if(!bp)return wt($t(null));0===kp&&up("click",document,Sp,!0);const e=()=>{kp+=1};return _p&&(_p=gp())?(nr(e),ar((()=>{kp-=1,0===kp&&pp("click",document,Sp,!0)}))):e(),wt(Cp)}const Rp=$t(void 0);let Op=0;function Ap(){Rp.value=Date.now()}let Pp=!0;function Tp(e){if(!bp)return wt($t(!1));const t=$t(!1);let n=null;function r(){null!==n&&window.clearTimeout(n)}function o(){r(),t.value=!0,n=window.setTimeout((()=>{t.value=!1}),e)}0===Op&&up("click",window,Ap,!0);const i=()=>{Op+=1,up("click",window,o,!0)};return Pp&&(Pp=gp())?(nr(i),ar((()=>{Op-=1,0===Op&&pp("click",window,Ap,!0),pp("click",window,o,!0),r()}))):i(),wt(t)}function $p(e,t){return go(e,(e=>{void 0!==e&&(t.value=e)})),gi((()=>void 0===e.value?t.value:e.value))}function zp(){const e=$t(!1);return rr((()=>{e.value=!0})),wt(e)}function Mp(e,t){return gi((()=>{for(const n of t)if(void 0!==e[n])return e[n];return e[t[t.length-1]]}))}const Fp="undefined"!=typeof window&&(/iPad|iPhone|iPod/.test(navigator.platform)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1)&&!window.MSStream;const Np={xs:0,s:640,m:1024,l:1280,xl:1536,"2xl":1920};const Bp={};const Ip="n-internal-select-menu",Lp="n-internal-select-menu-body",jp="n-drawer-body",Dp="n-modal-body",Hp="n-modal",Wp="n-popover-body",Up="__disabled__";function qp(e){const t=Wr(Dp,null),n=Wr(jp,null),r=Wr(Wp,null),o=Wr(Lp,null),i=$t();if("undefined"!=typeof document){i.value=document.fullscreenElement;const e=()=>{i.value=document.fullscreenElement};rr((()=>{up("fullscreenchange",document,e)})),ar((()=>{pp("fullscreenchange",document,e)}))}return hp((()=>{var a;const{to:l}=e;return void 0!==l?!1===l?Up:!0===l?i.value||"body":l:(null==t?void 0:t.value)?null!==(a=t.value.$el)&&void 0!==a?a:t.value:(null==n?void 0:n.value)?n.value:(null==r?void 0:r.value)?r.value:(null==o?void 0:o.value)?o.value:null!=l?l:i.value||"body"}))}function Kp(e,t,n){var r;const o=Wr(e,null);if(null===o)return;const i=null===(r=ri())||void 0===r?void 0:r.proxy;function a(e,n){if(!o)return;const r=o[t];void 0!==n&&function(e,t){e[t]||(e[t]=[]);e[t].splice(e[t].findIndex((e=>e===i)),1)}(r,n),void 0!==e&&function(e,t){e[t]||(e[t]=[]);~e[t].findIndex((e=>e===i))||e[t].push(i)}(r,e)}go(n,a),a(n.value),ar((()=>{a(void 0,n.value)}))}qp.tdkey=Up,qp.propTo={type:[String,Object,Boolean],default:void 0};const Vp="undefined"!=typeof document&&"undefined"!=typeof window;let Gp=!1;const Zp=$t(!1);function Xp(){Zp.value=!0}function Qp(){Zp.value=!1}let Yp=0;let Jp=0,ef="",tf="",nf="",rf="";const of=$t("0px");function af(e,t,n="default"){const r=t[n];if(void 0===r)throw new Error(`[vueuc/${e}]: slot[${n}] is empty.`);return r()}function lf(e,t=!0,n=[]){return e.forEach((e=>{if(null!==e)if("object"==typeof e)if(Array.isArray(e))lf(e,t,n);else if(e.type===Oo){if(null===e.children)return;Array.isArray(e.children)&&lf(e.children,t,n)}else e.type!==Po&&n.push(e);else"string"!=typeof e&&"number"!=typeof e||n.push(Vo(String(e)))})),n}function sf(e,t,n="default"){const r=t[n];if(void 0===r)throw new Error(`[vueuc/${e}]: slot[${n}] is empty.`);const o=lf(r());if(1===o.length)return o[0];throw new Error(`[vueuc/${e}]: slot[${n}] should have exactly one child.`)}let cf=null;function df(){if(null===cf&&(cf=document.getElementById("v-binder-view-measurer"),null===cf)){cf=document.createElement("div"),cf.id="v-binder-view-measurer";const{style:e}=cf;e.position="fixed",e.left="0",e.right="0",e.top="0",e.bottom="0",e.pointerEvents="none",e.visibility="hidden",document.body.appendChild(cf)}return cf.getBoundingClientRect()}function uf(e){const t=e.getBoundingClientRect(),n=df();return{left:t.left-n.left,top:t.top-n.top,bottom:n.height+n.top-t.bottom,right:n.width+n.left-t.right,width:t.width,height:t.height}}function pf(e){if(null===e)return null;const t=function(e){return 9===e.nodeType?null:e.parentNode}(e);if(null===t)return null;if(9===t.nodeType)return document;if(1===t.nodeType){const{overflow:e,overflowX:n,overflowY:r}=getComputedStyle(t);if(/(auto|scroll|overlay)/.test(e+r+n))return t}return pf(t)}const ff=qn({name:"Binder",props:{syncTargetWithParent:Boolean,syncTarget:{type:Boolean,default:!0}},setup(e){var t;Hr("VBinder",null===(t=ri())||void 0===t?void 0:t.proxy);const n=Wr("VBinder",null),r=$t(null);let o=[];const i=()=>{for(const e of o)pp("scroll",e,l,!0);o=[]},a=new Set,l=()=>{Su(s)},s=()=>{a.forEach((e=>e()))},c=new Set,d=()=>{c.forEach((e=>e()))};return ar((()=>{pp("resize",window,d),i()})),{targetRef:r,setTargetRef:t=>{r.value=t,n&&e.syncTargetWithParent&&n.setTargetRef(t)},addScrollListener:e=>{0===a.size&&(()=>{let e=r.value;for(;e=pf(e),null!==e;)o.push(e);for(const t of o)up("scroll",t,l,!0)})(),a.has(e)||a.add(e)},removeScrollListener:e=>{a.has(e)&&a.delete(e),0===a.size&&i()},addResizeListener:e=>{0===c.size&&up("resize",window,d),c.has(e)||c.add(e)},removeResizeListener:e=>{c.has(e)&&c.delete(e),0===c.size&&pp("resize",window,d)}}},render(){return af("binder",this.$slots)}}),hf=qn({name:"Target",setup(){const{setTargetRef:e,syncTarget:t}=Wr("VBinder");return{syncTarget:t,setTargetDirective:{mounted:e,updated:e}}},render(){const{syncTarget:e,setTargetDirective:t}=this;return e?vn(sf("follower",this.$slots),[[t]]):sf("follower",this.$slots)}}),gf="@@mmoContext",bf={mounted(e,{value:t}){e[gf]={handler:void 0},"function"==typeof t&&(e[gf].handler=t,up("mousemoveoutside",e,t))},updated(e,{value:t}){const n=e[gf];"function"==typeof t?n.handler?n.handler!==t&&(pp("mousemoveoutside",e,n.handler),n.handler=t,up("mousemoveoutside",e,t)):(e[gf].handler=t,up("mousemoveoutside",e,t)):n.handler&&(pp("mousemoveoutside",e,n.handler),n.handler=void 0)},unmounted(e){const{handler:t}=e[gf];t&&pp("mousemoveoutside",e,t),e[gf].handler=void 0}},vf="@@coContext",mf={mounted(e,{value:t,modifiers:n}){e[vf]={handler:void 0},"function"==typeof t&&(e[vf].handler=t,up("clickoutside",e,t,{capture:n.capture}))},updated(e,{value:t,modifiers:n}){const r=e[vf];"function"==typeof t?r.handler?r.handler!==t&&(pp("clickoutside",e,r.handler,{capture:n.capture}),r.handler=t,up("clickoutside",e,t,{capture:n.capture})):(e[vf].handler=t,up("clickoutside",e,t,{capture:n.capture})):r.handler&&(pp("clickoutside",e,r.handler,{capture:n.capture}),r.handler=void 0)},unmounted(e,{modifiers:t}){const{handler:n}=e[vf];n&&pp("clickoutside",e,n,{capture:t.capture}),e[vf].handler=void 0}};const yf=new class{constructor(){this.elementZIndex=new Map,this.nextZIndex=2e3}get elementCount(){return this.elementZIndex.size}ensureZIndex(e,t){const{elementZIndex:n}=this;if(void 0!==t)return e.style.zIndex=`${t}`,void n.delete(e);const{nextZIndex:r}=this;if(n.has(e)){if(n.get(e)+1===this.nextZIndex)return}e.style.zIndex=`${r}`,n.set(e,r),this.nextZIndex=r+1,this.squashState()}unregister(e,t){const{elementZIndex:n}=this;n.has(e)&&n.delete(e),this.squashState()}squashState(){const{elementCount:e}=this;e||(this.nextZIndex=2e3),this.nextZIndex-e>2500&&this.rearrange()}rearrange(){const e=Array.from(this.elementZIndex.entries());e.sort(((e,t)=>e[1]-t[1])),this.nextZIndex=2e3,e.forEach((e=>{const t=e[0],n=this.nextZIndex++;`${n}`!==t.style.zIndex&&(t.style.zIndex=`${n}`)}))}},xf="@@ziContext",wf={mounted(e,t){const{value:n={}}=t,{zIndex:r,enabled:o}=n;e[xf]={enabled:!!o,initialized:!1},o&&(yf.ensureZIndex(e,r),e[xf].initialized=!0)},updated(e,t){const{value:n={}}=t,{zIndex:r,enabled:o}=n,i=e[xf].enabled;o&&!i&&(yf.ensureZIndex(e,r),e[xf].initialized=!0),e[xf].enabled=!!o},unmounted(e,t){if(!e[xf].initialized)return;const{value:n={}}=t,{zIndex:r}=n;yf.unregister(e,r)}};const Cf="undefined"!=typeof document;function Sf(){if(Cf)return;const e=Wr("@css-render/vue3-ssr",null);return null!==e?{adapter:(t,n)=>function(e,t,n){const{styles:r,ids:o}=n;o.has(e)||null!==r&&(o.add(e),r.push(function(e,t){return``}(e,t)))}(t,n,e),context:e}:void 0}const{c:kf}=iu(),_f="vueuc-style";function Ef(e){return e&-e}class Rf{constructor(e,t){this.l=e,this.min=t;const n=new Array(e+1);for(let r=0;rr)throw new Error("[FinweckTree.sum]: `i` is larger than length.");let o=e*n;for(;e>0;)o+=t[e],e-=Ef(e);return o}getBound(e){let t=0,n=this.l;for(;n>t;){const r=Math.floor((t+n)/2),o=this.sum(r);if(o>e)n=r;else{if(!(o({showTeleport:fp(Dt(e,"show")),mergedTo:gi((()=>{const{to:t}=e;return null!=t?t:"body"}))}),render(){return this.showTeleport?this.disabled?af("lazy-teleport",this.$slots):bi(On,{disabled:this.disabled,to:this.mergedTo},af("lazy-teleport",this.$slots)):null}}),Pf={top:"bottom",bottom:"top",left:"right",right:"left"},Tf={start:"end",center:"center",end:"start"},$f={top:"height",bottom:"height",left:"width",right:"width"},zf={"bottom-start":"top left",bottom:"top center","bottom-end":"top right","top-start":"bottom left",top:"bottom center","top-end":"bottom right","right-start":"top left",right:"center left","right-end":"bottom left","left-start":"top right",left:"center right","left-end":"bottom right"},Mf={"bottom-start":"bottom left",bottom:"bottom center","bottom-end":"bottom right","top-start":"top left",top:"top center","top-end":"top right","right-start":"top right",right:"center right","right-end":"bottom right","left-start":"top left",left:"center left","left-end":"bottom left"},Ff={"bottom-start":"right","bottom-end":"left","top-start":"right","top-end":"left","right-start":"bottom","right-end":"top","left-start":"bottom","left-end":"top"},Nf={top:!0,bottom:!1,left:!0,right:!1},Bf={top:"end",bottom:"start",left:"end",right:"start"};const If=kf([kf(".v-binder-follower-container",{position:"absolute",left:"0",right:"0",top:"0",height:"0",pointerEvents:"none",zIndex:"auto"}),kf(".v-binder-follower-content",{position:"absolute",zIndex:"auto"},[kf("> *",{pointerEvents:"all"})])]),Lf=qn({name:"Follower",inheritAttrs:!1,props:{show:Boolean,enabled:{type:Boolean,default:void 0},placement:{type:String,default:"bottom"},syncTrigger:{type:Array,default:["resize","scroll"]},to:[String,Object],flip:{type:Boolean,default:!0},internalShift:Boolean,x:Number,y:Number,width:String,minWidth:String,containerClass:String,teleportDisabled:Boolean,zindexable:{type:Boolean,default:!0},zIndex:Number,overlap:Boolean},setup(e){const t=Wr("VBinder"),n=hp((()=>void 0!==e.enabled?e.enabled:e.show)),r=$t(null),o=$t(null),i=()=>{const{syncTrigger:n}=e;n.includes("scroll")&&t.addScrollListener(s),n.includes("resize")&&t.addResizeListener(s)},a=()=>{t.removeScrollListener(s),t.removeResizeListener(s)};rr((()=>{n.value&&(s(),i())}));const l=Sf();If.mount({id:"vueuc/binder",head:!0,anchorMetaName:_f,ssr:l}),ar((()=>{a()})),wp((()=>{n.value&&s()}));const s=()=>{if(!n.value)return;const i=r.value;if(null===i)return;const a=t.targetRef,{x:l,y:s,overlap:c}=e,d=void 0!==l&&void 0!==s?function(e,t){const n=df();return{top:t,left:e,height:0,width:0,right:n.width-e,bottom:n.height-t}}(l,s):uf(a);i.style.setProperty("--v-target-width",`${Math.round(d.width)}px`),i.style.setProperty("--v-target-height",`${Math.round(d.height)}px`);const{width:u,minWidth:p,placement:f,internalShift:h,flip:g}=e;i.setAttribute("v-placement",f),c?i.setAttribute("v-overlap",""):i.removeAttribute("v-overlap");const{style:b}=i;b.width="target"===u?`${d.width}px`:void 0!==u?u:"",b.minWidth="target"===p?`${d.width}px`:void 0!==p?p:"";const v=uf(i),m=uf(o.value),{left:y,top:x,placement:w}=function(e,t,n,r,o,i){if(!o||i)return{placement:e,top:0,left:0};const[a,l]=e.split("-");let s=null!=l?l:"center",c={top:0,left:0};const d=(e,o,i)=>{let a=0,l=0;const s=n[e]-t[o]-t[e];return s>0&&r&&(i?l=Nf[o]?s:-s:a=Nf[o]?s:-s),{left:a,top:l}},u="left"===a||"right"===a;if("center"!==s){const r=Ff[e],o=Pf[r],i=$f[r];if(n[i]>t[i]){if(t[r]+t[i]t[o]&&(s=Tf[l])}else{const e="bottom"===a||"top"===a?"left":"top",r=Pf[e],o=$f[e],i=(n[o]-t[o])/2;(t[e]t[r]?(s=Bf[e],c=d(o,e,u)):(s=Bf[r],c=d(o,r,u)))}let p=a;return t[a]{e?(i(),c()):a()}));const c=()=>{an().then(s).catch((e=>{}))};["placement","x","y","internalShift","flip","width","overlap","minWidth"].forEach((t=>{go(Dt(e,t),s)})),["teleportDisabled"].forEach((t=>{go(Dt(e,t),c)})),go(Dt(e,"syncTrigger"),(e=>{e.includes("resize")?t.addResizeListener(s):t.removeResizeListener(s),e.includes("scroll")?t.addScrollListener(s):t.removeScrollListener(s)}));const d=zp(),u=hp((()=>{const{to:t}=e;if(void 0!==t)return t;d.value}));return{VBinder:t,mergedEnabled:n,offsetContainerRef:o,followerRef:r,mergedTo:u,syncPosition:s}},render(){return bi(Af,{show:this.show,to:this.mergedTo,disabled:this.teleportDisabled},{default:()=>{var e,t;const n=bi("div",{class:["v-binder-follower-container",this.containerClass],ref:"offsetContainerRef"},[bi("div",{class:"v-binder-follower-content",ref:"followerRef"},null===(t=(e=this.$slots).default)||void 0===t?void 0:t.call(e))]);return this.zindexable?vn(n,[[wf,{enabled:this.mergedEnabled,zIndex:this.zIndex}]]):n}})}});var jf,Df,Hf=[],Wf="ResizeObserver loop completed with undelivered notifications.";(Df=jf||(jf={})).BORDER_BOX="border-box",Df.CONTENT_BOX="content-box",Df.DEVICE_PIXEL_CONTENT_BOX="device-pixel-content-box";var Uf,qf=function(e){return Object.freeze(e)},Kf=function(){return function(e,t){this.inlineSize=e,this.blockSize=t,qf(this)}}(),Vf=function(){function e(e,t,n,r){return this.x=e,this.y=t,this.width=n,this.height=r,this.top=this.y,this.left=this.x,this.bottom=this.top+this.height,this.right=this.left+this.width,qf(this)}return e.prototype.toJSON=function(){var e=this;return{x:e.x,y:e.y,top:e.top,right:e.right,bottom:e.bottom,left:e.left,width:e.width,height:e.height}},e.fromRect=function(t){return new e(t.x,t.y,t.width,t.height)},e}(),Gf=function(e){return e instanceof SVGElement&&"getBBox"in e},Zf=function(e){if(Gf(e)){var t=e.getBBox(),n=t.width,r=t.height;return!n&&!r}var o=e,i=o.offsetWidth,a=o.offsetHeight;return!(i||a||e.getClientRects().length)},Xf=function(e){var t;if(e instanceof Element)return!0;var n=null===(t=null==e?void 0:e.ownerDocument)||void 0===t?void 0:t.defaultView;return!!(n&&e instanceof n.Element)},Qf="undefined"!=typeof window?window:{},Yf=new WeakMap,Jf=/auto|scroll/,eh=/^tb|vertical/,th=/msie|trident/i.test(Qf.navigator&&Qf.navigator.userAgent),nh=function(e){return parseFloat(e||"0")},rh=function(e,t,n){return void 0===e&&(e=0),void 0===t&&(t=0),void 0===n&&(n=!1),new Kf((n?t:e)||0,(n?e:t)||0)},oh=qf({devicePixelContentBoxSize:rh(),borderBoxSize:rh(),contentBoxSize:rh(),contentRect:new Vf(0,0,0,0)}),ih=function(e,t){if(void 0===t&&(t=!1),Yf.has(e)&&!t)return Yf.get(e);if(Zf(e))return Yf.set(e,oh),oh;var n=getComputedStyle(e),r=Gf(e)&&e.ownerSVGElement&&e.getBBox(),o=!th&&"border-box"===n.boxSizing,i=eh.test(n.writingMode||""),a=!r&&Jf.test(n.overflowY||""),l=!r&&Jf.test(n.overflowX||""),s=r?0:nh(n.paddingTop),c=r?0:nh(n.paddingRight),d=r?0:nh(n.paddingBottom),u=r?0:nh(n.paddingLeft),p=r?0:nh(n.borderTopWidth),f=r?0:nh(n.borderRightWidth),h=r?0:nh(n.borderBottomWidth),g=u+c,b=s+d,v=(r?0:nh(n.borderLeftWidth))+f,m=p+h,y=l?e.offsetHeight-m-e.clientHeight:0,x=a?e.offsetWidth-v-e.clientWidth:0,w=o?g+v:0,C=o?b+m:0,S=r?r.width:nh(n.width)-w-x,k=r?r.height:nh(n.height)-C-y,_=S+g+x+v,E=k+b+y+m,R=qf({devicePixelContentBoxSize:rh(Math.round(S*devicePixelRatio),Math.round(k*devicePixelRatio),i),borderBoxSize:rh(_,E,i),contentBoxSize:rh(S,k,i),contentRect:new Vf(u,s,S,k)});return Yf.set(e,R),R},ah=function(e,t,n){var r=ih(e,n),o=r.borderBoxSize,i=r.contentBoxSize,a=r.devicePixelContentBoxSize;switch(t){case jf.DEVICE_PIXEL_CONTENT_BOX:return a;case jf.BORDER_BOX:return o;default:return i}},lh=function(){return function(e){var t=ih(e);this.target=e,this.contentRect=t.contentRect,this.borderBoxSize=qf([t.borderBoxSize]),this.contentBoxSize=qf([t.contentBoxSize]),this.devicePixelContentBoxSize=qf([t.devicePixelContentBoxSize])}}(),sh=function(e){if(Zf(e))return 1/0;for(var t=0,n=e.parentNode;n;)t+=1,n=n.parentNode;return t},ch=function(){var e=1/0,t=[];Hf.forEach((function(n){if(0!==n.activeTargets.length){var r=[];n.activeTargets.forEach((function(t){var n=new lh(t.target),o=sh(t.target);r.push(n),t.lastReportedSize=ah(t.target,t.observedBox),oe?t.activeTargets.push(n):t.skippedTargets.push(n))}))}))},uh=function(){var e,t=0;for(dh(t);Hf.some((function(e){return e.activeTargets.length>0}));)t=ch(),dh(t);return Hf.some((function(e){return e.skippedTargets.length>0}))&&("function"==typeof ErrorEvent?e=new ErrorEvent("error",{message:Wf}):((e=document.createEvent("Event")).initEvent("error",!1,!1),e.message=Wf),window.dispatchEvent(e)),t>0},ph=[],fh=function(e){if(!Uf){var t=0,n=document.createTextNode("");new MutationObserver((function(){return ph.splice(0).forEach((function(e){return e()}))})).observe(n,{characterData:!0}),Uf=function(){n.textContent="".concat(t?t--:t++)}}ph.push(e),Uf()},hh=0,gh={attributes:!0,characterData:!0,childList:!0,subtree:!0},bh=["resize","load","transitionend","animationend","animationstart","animationiteration","keyup","keydown","mouseup","mousedown","mouseover","mouseout","blur","focus"],vh=function(e){return void 0===e&&(e=0),Date.now()+e},mh=!1,yh=new(function(){function e(){var e=this;this.stopped=!0,this.listener=function(){return e.schedule()}}return e.prototype.run=function(e){var t=this;if(void 0===e&&(e=250),!mh){mh=!0;var n,r=vh(e);n=function(){var n=!1;try{n=uh()}finally{if(mh=!1,e=r-vh(),!hh)return;n?t.run(1e3):e>0?t.run(e):t.start()}},fh((function(){requestAnimationFrame(n)}))}},e.prototype.schedule=function(){this.stop(),this.run()},e.prototype.observe=function(){var e=this,t=function(){return e.observer&&e.observer.observe(document.body,gh)};document.body?t():Qf.addEventListener("DOMContentLoaded",t)},e.prototype.start=function(){var e=this;this.stopped&&(this.stopped=!1,this.observer=new MutationObserver(this.listener),this.observe(),bh.forEach((function(t){return Qf.addEventListener(t,e.listener,!0)})))},e.prototype.stop=function(){var e=this;this.stopped||(this.observer&&this.observer.disconnect(),bh.forEach((function(t){return Qf.removeEventListener(t,e.listener,!0)})),this.stopped=!0)},e}()),xh=function(e){!hh&&e>0&&yh.start(),!(hh+=e)&&yh.stop()},wh=function(){function e(e,t){this.target=e,this.observedBox=t||jf.CONTENT_BOX,this.lastReportedSize={inlineSize:0,blockSize:0}}return e.prototype.isActive=function(){var e,t=ah(this.target,this.observedBox,!0);return e=this.target,Gf(e)||function(e){switch(e.tagName){case"INPUT":if("image"!==e.type)break;case"VIDEO":case"AUDIO":case"EMBED":case"OBJECT":case"CANVAS":case"IFRAME":case"IMG":return!0}return!1}(e)||"inline"!==getComputedStyle(e).display||(this.lastReportedSize=t),this.lastReportedSize.inlineSize!==t.inlineSize||this.lastReportedSize.blockSize!==t.blockSize},e}(),Ch=function(){return function(e,t){this.activeTargets=[],this.skippedTargets=[],this.observationTargets=[],this.observer=e,this.callback=t}}(),Sh=new WeakMap,kh=function(e,t){for(var n=0;n=0&&(o&&Hf.splice(Hf.indexOf(n),1),n.observationTargets.splice(r,1),xh(-1))},e.disconnect=function(e){var t=this,n=Sh.get(e);n.observationTargets.slice().forEach((function(n){return t.unobserve(e,n.target)})),n.activeTargets.splice(0,n.activeTargets.length)},e}(),Eh=function(){function e(e){if(0===arguments.length)throw new TypeError("Failed to construct 'ResizeObserver': 1 argument required, but only 0 present.");if("function"!=typeof e)throw new TypeError("Failed to construct 'ResizeObserver': The callback provided as parameter 1 is not a function.");_h.connect(this,e)}return e.prototype.observe=function(e,t){if(0===arguments.length)throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': 1 argument required, but only 0 present.");if(!Xf(e))throw new TypeError("Failed to execute 'observe' on 'ResizeObserver': parameter 1 is not of type 'Element");_h.observe(this,e,t)},e.prototype.unobserve=function(e){if(0===arguments.length)throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': 1 argument required, but only 0 present.");if(!Xf(e))throw new TypeError("Failed to execute 'unobserve' on 'ResizeObserver': parameter 1 is not of type 'Element");_h.unobserve(this,e)},e.prototype.disconnect=function(){_h.disconnect(this)},e.toString=function(){return"function ResizeObserver () { [polyfill code] }"},e}();const Rh=new class{constructor(){this.handleResize=this.handleResize.bind(this),this.observer=new("undefined"!=typeof window&&window.ResizeObserver||Eh)(this.handleResize),this.elHandlersMap=new Map}handleResize(e){for(const t of e){const e=this.elHandlersMap.get(t.target);void 0!==e&&e(t)}}registerHandler(e,t){this.elHandlersMap.set(e,t),this.observer.observe(e)}unregisterHandler(e){this.elHandlersMap.has(e)&&(this.elHandlersMap.delete(e),this.observer.unobserve(e))}},Oh=qn({name:"ResizeObserver",props:{onResize:Function},setup(e){let t=!1;const n=ri().proxy;function r(t){const{onResize:n}=e;void 0!==n&&n(t)}rr((()=>{const e=n.$el;void 0!==e&&(e.nextElementSibling!==e.nextSibling&&3===e.nodeType&&""!==e.nodeValue||null!==e.nextElementSibling&&(Rh.registerHandler(e.nextElementSibling,r),t=!0))})),ar((()=>{t&&Rh.unregisterHandler(n.$el.nextElementSibling)}))},render(){return yr(this.$slots,"default")}});let Ah,Ph;function Th(){return"undefined"==typeof document?1:(void 0===Ph&&(Ph="chrome"in window?window.devicePixelRatio:1),Ph)}const $h="VVirtualListXScroll";const zh=qn({name:"VirtualListRow",props:{index:{type:Number,required:!0},item:{type:Object,required:!0}},setup(){const{startIndexRef:e,endIndexRef:t,columnsRef:n,getLeft:r,renderColRef:o,renderItemWithColsRef:i}=Wr($h);return{startIndex:e,endIndex:t,columns:n,renderCol:o,renderItemWithCols:i,getLeft:r}},render(){const{startIndex:e,endIndex:t,columns:n,renderCol:r,renderItemWithCols:o,getLeft:i,item:a}=this;if(null!=o)return o({itemIndex:this.index,startColIndex:e,endColIndex:t,allColumns:n,item:a,getLeft:i});if(null!=r){const o=[];for(let l=e;l<=t;++l){const e=n[l];o.push(r({column:e,left:i(l),item:a}))}return o}return null}}),Mh=kf(".v-vl",{maxHeight:"inherit",height:"100%",overflow:"auto",minWidth:"1px"},[kf("&:not(.v-vl--show-scrollbar)",{scrollbarWidth:"none"},[kf("&::-webkit-scrollbar, &::-webkit-scrollbar-track-piece, &::-webkit-scrollbar-thumb",{width:0,height:0,display:"none"})])]),Fh=qn({name:"VirtualList",inheritAttrs:!1,props:{showScrollbar:{type:Boolean,default:!0},columns:{type:Array,default:()=>[]},renderCol:Function,renderItemWithCols:Function,items:{type:Array,default:()=>[]},itemSize:{type:Number,required:!0},itemResizable:Boolean,itemsStyle:[String,Object],visibleItemsTag:{type:[String,Object],default:"div"},visibleItemsProps:Object,ignoreItemResize:Boolean,onScroll:Function,onWheel:Function,onResize:Function,defaultScrollKey:[Number,String],defaultScrollIndex:Number,keyField:{type:String,default:"key"},paddingTop:{type:[Number,String],default:0},paddingBottom:{type:[Number,String],default:0}},setup(e){const t=Sf();Mh.mount({id:"vueuc/virtual-list",head:!0,anchorMetaName:_f,ssr:t}),rr((()=>{const{defaultScrollIndex:t,defaultScrollKey:n}=e;null!=t?b({index:t}):null!=n&&b({key:n})}));let n=!1,r=!1;Xn((()=>{n=!1,r?b({top:f.value,left:a.value}):r=!0})),Qn((()=>{n=!0,r||(r=!0)}));const o=hp((()=>{if(null==e.renderCol&&null==e.renderItemWithCols)return;if(0===e.columns.length)return;let t=0;return e.columns.forEach((e=>{t+=e.width})),t})),i=gi((()=>{const t=new Map,{keyField:n}=e;return e.items.forEach(((e,r)=>{t.set(e[n],r)})),t})),{scrollLeftRef:a,listWidthRef:l}=function({columnsRef:e,renderColRef:t,renderItemWithColsRef:n}){const r=$t(0),o=$t(0),i=gi((()=>{const t=e.value;if(0===t.length)return null;const n=new Rf(t.length,0);return t.forEach(((e,t)=>{n.add(t,e.width)})),n})),a=hp((()=>{const e=i.value;return null!==e?Math.max(e.getBound(o.value)-1,0):0})),l=hp((()=>{const t=i.value;return null!==t?Math.min(t.getBound(o.value+r.value)+1,e.value.length-1):0}));return Hr($h,{startIndexRef:a,endIndexRef:l,columnsRef:e,renderColRef:t,renderItemWithColsRef:n,getLeft:e=>{const t=i.value;return null!==t?t.sum(e):0}}),{listWidthRef:r,scrollLeftRef:o}}({columnsRef:Dt(e,"columns"),renderColRef:Dt(e,"renderCol"),renderItemWithColsRef:Dt(e,"renderItemWithCols")}),s=$t(null),c=$t(void 0),d=new Map,u=gi((()=>{const{items:t,itemSize:n,keyField:r}=e,o=new Rf(t.length,n);return t.forEach(((e,t)=>{const n=e[r],i=d.get(n);void 0!==i&&o.add(t,i)})),o})),p=$t(0),f=$t(0),h=hp((()=>Math.max(u.value.getBound(f.value-Ru(e.paddingTop))-1,0))),g=gi((()=>{const{value:t}=c;if(void 0===t)return[];const{items:n,itemSize:r}=e,o=h.value,i=Math.min(o+Math.ceil(t/r+1),n.length-1),a=[];for(let e=o;e<=i;++e)a.push(n[e]);return a})),b=(e,t)=>{if("number"==typeof e)return void x(e,t,"auto");const{left:n,top:r,index:o,key:a,position:l,behavior:s,debounce:c=!0}=e;if(void 0!==n||void 0!==r)x(n,r,s);else if(void 0!==o)y(o,s,c);else if(void 0!==a){const e=i.value.get(a);void 0!==e&&y(e,s,c)}else"bottom"===l?x(0,Number.MAX_SAFE_INTEGER,s):"top"===l&&x(0,0,s)};let v,m=null;function y(t,n,r){const{value:o}=u,i=o.sum(t)+Ru(e.paddingTop);if(r){v=t,null!==m&&window.clearTimeout(m),m=window.setTimeout((()=>{v=void 0,m=null}),16);const{scrollTop:e,offsetHeight:r}=s.value;if(i>e){const a=o.get(t);i+a<=e+r||s.value.scrollTo({left:0,top:i+a-r,behavior:n})}else s.value.scrollTo({left:0,top:i,behavior:n})}else s.value.scrollTo({left:0,top:i,behavior:n})}function x(e,t,n){s.value.scrollTo({left:e,top:t,behavior:n})}const w=!("undefined"!=typeof document&&(void 0===Ah&&(Ah="matchMedia"in window&&window.matchMedia("(pointer:coarse)").matches),Ah));let C=!1;function S(){const{value:e}=s;null!=e&&(f.value=e.scrollTop,a.value=e.scrollLeft)}function k(e){let t=e;for(;null!==t;){if("none"===t.style.display)return!0;t=t.parentElement}return!1}return{listHeight:c,listStyle:{overflow:"auto"},keyToIndex:i,itemsStyle:gi((()=>{const{itemResizable:t}=e,n=Ou(u.value.sum());return p.value,[e.itemsStyle,{boxSizing:"content-box",width:Ou(o.value),height:t?"":n,minHeight:t?n:"",paddingTop:Ou(e.paddingTop),paddingBottom:Ou(e.paddingBottom)}]})),visibleItemsStyle:gi((()=>(p.value,{transform:`translateY(${Ou(u.value.sum(h.value))})`}))),viewportItems:g,listElRef:s,itemsElRef:$t(null),scrollTo:b,handleListResize:function(t){if(n)return;if(k(t.target))return;if(null==e.renderCol&&null==e.renderItemWithCols){if(t.contentRect.height===c.value)return}else if(t.contentRect.height===c.value&&t.contentRect.width===l.value)return;c.value=t.contentRect.height,l.value=t.contentRect.width;const{onResize:r}=e;void 0!==r&&r(t)},handleListScroll:function(t){var n;null===(n=e.onScroll)||void 0===n||n.call(e,t),w&&C||S()},handleListWheel:function(t){var n;if(null===(n=e.onWheel)||void 0===n||n.call(e,t),w){const e=s.value;if(null!=e){if(0===t.deltaX){if(0===e.scrollTop&&t.deltaY<=0)return;if(e.scrollTop+e.offsetHeight>=e.scrollHeight&&t.deltaY>=0)return}t.preventDefault(),e.scrollTop+=t.deltaY/Th(),e.scrollLeft+=t.deltaX/Th(),S(),C=!0,Su((()=>{C=!1}))}}},handleItemResize:function(t,r){var o,a,l;if(n)return;if(e.ignoreItemResize)return;if(k(r.target))return;const{value:c}=u,f=i.value.get(t),h=c.get(f),g=null!==(l=null===(a=null===(o=r.borderBoxSize)||void 0===o?void 0:o[0])||void 0===a?void 0:a.blockSize)&&void 0!==l?l:r.contentRect.height;if(g===h)return;0===g-e.itemSize?d.delete(t):d.set(t,g-e.itemSize);const b=g-h;if(0===b)return;c.add(f,b);const m=s.value;if(null!=m){if(void 0===v){const e=c.sum(f);m.scrollTop>e&&m.scrollBy(0,b)}else if(fm.scrollTop+m.offsetHeight&&m.scrollBy(0,b)}S()}p.value++}}},render(){const{itemResizable:e,keyField:t,keyToIndex:n,visibleItemsTag:r}=this;return bi(Oh,{onResize:this.handleListResize},{default:()=>{var o,i;return bi("div",Yo(this.$attrs,{class:["v-vl",this.showScrollbar&&"v-vl--show-scrollbar"],onScroll:this.handleListScroll,onWheel:this.handleListWheel,ref:"listElRef"}),[0!==this.items.length?bi("div",{ref:"itemsElRef",class:"v-vl-items",style:this.itemsStyle},[bi(r,Object.assign({class:"v-vl-visible-items",style:this.visibleItemsStyle},this.visibleItemsProps),{default:()=>{const{renderCol:r,renderItemWithCols:o}=this;return this.viewportItems.map((i=>{const a=i[t],l=n.get(a),s=null!=r?bi(zh,{index:l,item:i}):void 0,c=null!=o?bi(zh,{index:l,item:i}):void 0,d=this.$slots.default({item:i,renderedCols:s,renderedItemWithCols:c,index:l})[0];return e?bi(Oh,{key:a,onResize:e=>this.handleItemResize(a,e)},{default:()=>d}):(d.key=a,d)}))}})]):null===(i=(o=this.$slots).empty)||void 0===i?void 0:i.call(o)])}})}}),Nh=kf(".v-x-scroll",{overflow:"auto",scrollbarWidth:"none"},[kf("&::-webkit-scrollbar",{width:0,height:0})]),Bh=qn({name:"XScroll",props:{disabled:Boolean,onScroll:Function},setup(){const e=$t(null);const t=Sf();Nh.mount({id:"vueuc/x-scroll",head:!0,anchorMetaName:_f,ssr:t});const n={scrollTo(...t){var n;null===(n=e.value)||void 0===n||n.scrollTo(...t)}};return Object.assign({selfRef:e,handleWheel:function(e){e.currentTarget.offsetWidthd){const{updateCounter:n}=e;for(let r=t;r>=0;--r){const o=g-1-r;void 0!==n?n(o):s.textContent=`${o}`;const i=s.offsetWidth;if(f-=u[r],f+i<=d||0===r){h=!0,t=r-1,p&&(-1===t?(p.style.maxWidth=d-i+"px",p.style.boxSizing="border-box"):p.style.maxWidth="");const{onUpdateCount:n}=e;n&&n(o);break}}}}const{onUpdateOverflow:b}=e;h?void 0!==b&&b(!0):(void 0!==b&&b(!1),s.setAttribute(Ih,""))}const i=Sf();return Lh.mount({id:"vueuc/overflow",head:!0,anchorMetaName:_f,ssr:i}),rr((()=>o({showAllItemsBeforeCalculate:!1}))),{selfRef:n,counterRef:r,sync:o}},render(){const{$slots:e}=this;return an((()=>this.sync({showAllItemsBeforeCalculate:!1}))),bi("div",{class:"v-overflow",ref:"selfRef"},[yr(e,"default"),e.counter?e.counter():bi("span",{style:{display:"inline-block"},ref:"counterRef"}),e.tail?e.tail():null])}});function Dh(e){return e instanceof HTMLElement}function Hh(e){for(let t=0;t=0;t--){const n=e.childNodes[t];if(Dh(n)&&(Uh(n)||Wh(n)))return!0}return!1}function Uh(e){if(!function(e){if(e.tabIndex>0||0===e.tabIndex&&null!==e.getAttribute("tabIndex"))return!0;if(e.getAttribute("disabled"))return!1;switch(e.nodeName){case"A":return!!e.href&&"ignore"!==e.rel;case"INPUT":return"hidden"!==e.type&&"file"!==e.type;case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}}(e))return!1;try{e.focus({preventScroll:!0})}catch(XT){}return document.activeElement===e}let qh=[];const Kh=qn({name:"FocusTrap",props:{disabled:Boolean,active:Boolean,autoFocus:{type:Boolean,default:!0},onEsc:Function,initialFocusTo:String,finalFocusTo:String,returnFocusOnDeactivated:{type:Boolean,default:!0}},setup(e){const t=ap(),n=$t(null),r=$t(null);let o=!1,i=!1;const a="undefined"==typeof document?null:document.activeElement;function l(){return qh[qh.length-1]===t}function s(t){var n;"Escape"===t.code&&l()&&(null===(n=e.onEsc)||void 0===n||n.call(e,t))}function c(e){if(!i&&l()){const t=d();if(null===t)return;if(t.contains(_u(e)))return;p("first")}}function d(){const e=n.value;if(null===e)return null;let t=e;for(;!(t=t.nextSibling,null===t||t instanceof Element&&"DIV"===t.tagName););return t}function u(){var n;if(e.disabled)return;if(document.removeEventListener("focus",c,!0),qh=qh.filter((e=>e!==t)),l())return;const{finalFocusTo:r}=e;void 0!==r?null===(n=Of(r))||void 0===n||n.focus({preventScroll:!0}):e.returnFocusOnDeactivated&&a instanceof HTMLElement&&(i=!0,a.focus({preventScroll:!0}),i=!1)}function p(t){if(l()&&e.active){const e=n.value,o=r.value;if(null!==e&&null!==o){const n=d();if(null==n||n===o)return i=!0,e.focus({preventScroll:!0}),void(i=!1);i=!0;const r="first"===t?Hh(n):Wh(n);i=!1,r||(i=!0,e.focus({preventScroll:!0}),i=!1)}}}return rr((()=>{go((()=>e.active),(n=>{n?(!function(){var n;if(e.disabled)return;if(qh.push(t),e.autoFocus){const{initialFocusTo:t}=e;void 0===t?p("first"):null===(n=Of(t))||void 0===n||n.focus({preventScroll:!0})}o=!0,document.addEventListener("focus",c,!0)}(),up("keydown",document,s)):(pp("keydown",document,s),o&&u())}),{immediate:!0})})),ar((()=>{pp("keydown",document,s),o&&u()})),{focusableStartRef:n,focusableEndRef:r,focusableStyle:"position: absolute; height: 0; width: 0;",handleStartFocus:function(e){if(i)return;const t=d();null!==t&&(null!==e.relatedTarget&&t.contains(e.relatedTarget)?p("last"):p("first"))},handleEndFocus:function(e){i||(null!==e.relatedTarget&&e.relatedTarget===n.value?p("last"):p("first"))}}},render(){const{default:e}=this.$slots;if(void 0===e)return null;if(this.disabled)return e();const{active:t,focusableStyle:n}=this;return bi(Oo,null,[bi("div",{"aria-hidden":"true",tabindex:t?"0":"-1",ref:"focusableStartRef",style:n,onFocus:this.handleStartFocus}),e(),bi("div",{"aria-hidden":"true",style:n,ref:"focusableEndRef",tabindex:t?"0":"-1",onFocus:this.handleEndFocus})])}});function Vh(e,t){t&&(rr((()=>{const{value:n}=e;n&&Rh.registerHandler(n,t)})),go(e,((e,t)=>{t&&Rh.unregisterHandler(t)}),{deep:!1}),ar((()=>{const{value:t}=e;t&&Rh.unregisterHandler(t)})))}function Gh(e){return e.replace(/#|\(|\)|,|\s|\./g,"_")}const Zh=/^(\d|\.)+$/,Xh=/(\d|\.)+/;function Qh(e,{c:t=1,offset:n=0,attachPx:r=!0}={}){if("number"==typeof e){const r=(e+n)*t;return 0===r?"0":`${r}px`}if("string"==typeof e){if(Zh.test(e)){const o=(Number(e)+n)*t;return r?0===o?"0":`${o}px`:`${o}`}{const r=Xh.exec(e);return r?e.replace(Xh,String((Number(r[0])+n)*t)):e}}return e}function Yh(e){const{left:t,right:n,top:r,bottom:o}=Au(e);return`${r} ${t} ${o} ${n}`}let Jh;const eg=new WeakSet;function tg(e){switch(typeof e){case"string":return e||void 0;case"number":return String(e);default:return}}function ng(e){switch(e){case"tiny":return"mini";case"small":return"tiny";case"medium":return"small";case"large":return"medium";case"huge":return"large"}throw new Error(`${e} has no smaller size.`)}function rg(e,t){throw new Error(`[naive/${e}]: ${t}`)}function og(e,...t){if(!Array.isArray(e))return e(...t);e.forEach((e=>og(e,...t)))}function ig(e){return t=>{e.value=t?t.$el:null}}function ag(e,t=!0,n=[]){return e.forEach((e=>{if(null!==e)if("object"==typeof e)if(Array.isArray(e))ag(e,t,n);else if(e.type===Oo){if(null===e.children)return;Array.isArray(e.children)&&ag(e.children,t,n)}else{if(e.type===Po&&t)return;n.push(e)}else"string"!=typeof e&&"number"!=typeof e||n.push(Vo(String(e)))})),n}function lg(e,t="default",n=[]){const r=e.$slots[t];return void 0===r?n:r()}function sg(e,t=[],n){const r={};return t.forEach((t=>{r[t]=e[t]})),Object.assign(r,n)}function cg(e){return Object.keys(e)}function dg(e){const t=e.filter((e=>void 0!==e));if(0!==t.length)return 1===t.length?t[0]:t=>{e.forEach((e=>{e&&e(t)}))}}function ug(e,t=[],n){const r={};return Object.getOwnPropertyNames(e).forEach((n=>{t.includes(n)||(r[n]=e[n])})),Object.assign(r,n)}function pg(e,...t){return"function"==typeof e?e(...t):"string"==typeof e?Vo(e):"number"==typeof e?Vo(String(e)):null}function fg(e){return e.some((e=>!jo(e)||e.type!==Po&&!(e.type===Oo&&!fg(e.children))))?e:null}function hg(e,t){return e&&fg(e())||t()}function gg(e,t,n){return e&&fg(e(t))||n(t)}function bg(e,t){return t(e&&fg(e())||null)}function vg(e){return!(e&&fg(e()))}const mg=qn({render(){var e,t;return null===(t=(e=this.$slots).default)||void 0===t?void 0:t.call(e)}}),yg="n-config-provider",xg="n";function wg(e={},t={defaultBordered:!0}){const n=Wr(yg,null);return{inlineThemeDisabled:null==n?void 0:n.inlineThemeDisabled,mergedRtlRef:null==n?void 0:n.mergedRtlRef,mergedComponentPropsRef:null==n?void 0:n.mergedComponentPropsRef,mergedBreakpointsRef:null==n?void 0:n.mergedBreakpointsRef,mergedBorderedRef:gi((()=>{var r,o;const{bordered:i}=e;return void 0!==i?i:null===(o=null!==(r=null==n?void 0:n.mergedBorderedRef.value)&&void 0!==r?r:t.defaultBordered)||void 0===o||o})),mergedClsPrefixRef:n?n.mergedClsPrefixRef:zt(xg),namespaceRef:gi((()=>null==n?void 0:n.mergedNamespaceRef.value))}}function Cg(){const e=Wr(yg,null);return e?e.mergedClsPrefixRef:zt(xg)}function Sg(e,t,n,r){n||rg("useThemeClass","cssVarsRef is not passed");const o=Wr(yg,null),i=null==o?void 0:o.mergedThemeHashRef,a=null==o?void 0:o.styleMountTarget,l=$t(""),s=Sf();let c;const d=`__${e}`;return ho((()=>{(()=>{let e=d;const o=t?t.value:void 0,u=null==i?void 0:i.value;u&&(e+=`-${u}`),o&&(e+=`-${o}`);const{themeOverrides:p,builtinThemeOverrides:f}=r;p&&(e+=`-${Yd(JSON.stringify(p))}`),f&&(e+=`-${Yd(JSON.stringify(f))}`),l.value=e,c=()=>{const t=n.value;let r="";for(const e in t)r+=`${e}: ${t[e]};`;cu(`.${e}`,r).mount({id:e,ssr:s,parent:a}),c=void 0}})()})),{themeClass:l,onRender:()=>{null==c||c()}}}const kg="n-form-item";function _g(e,{defaultSize:t="medium",mergedSize:n,mergedDisabled:r}={}){const o=Wr(kg,null);Hr(kg,null);const i=gi(n?()=>n(o):()=>{const{size:n}=e;if(n)return n;if(o){const{mergedSize:e}=o;if(void 0!==e.value)return e.value}return t}),a=gi(r?()=>r(o):()=>{const{disabled:t}=e;return void 0!==t?t:!!o&&o.disabled.value}),l=gi((()=>{const{status:t}=e;return t||(null==o?void 0:o.mergedValidationStatus.value)}));return ar((()=>{o&&o.restoreValidation()})),{mergedSizeRef:i,mergedDisabledRef:a,mergedStatusRef:l,nTriggerFormBlur(){o&&o.handleContentBlur()},nTriggerFormChange(){o&&o.handleContentChange()},nTriggerFormFocus(){o&&o.handleContentFocus()},nTriggerFormInput(){o&&o.handleContentInput()}}}const Eg={name:"en-US",global:{undo:"Undo",redo:"Redo",confirm:"Confirm",clear:"Clear"},Popconfirm:{positiveText:"Confirm",negativeText:"Cancel"},Cascader:{placeholder:"Please Select",loading:"Loading",loadingRequiredMessage:e=>`Please load all ${e}'s descendants before checking it.`},Time:{dateFormat:"yyyy-MM-dd",dateTimeFormat:"yyyy-MM-dd HH:mm:ss"},DatePicker:{yearFormat:"yyyy",monthFormat:"MMM",dayFormat:"eeeeee",yearTypeFormat:"yyyy",monthTypeFormat:"yyyy-MM",dateFormat:"yyyy-MM-dd",dateTimeFormat:"yyyy-MM-dd HH:mm:ss",quarterFormat:"yyyy-qqq",weekFormat:"YYYY-w",clear:"Clear",now:"Now",confirm:"Confirm",selectTime:"Select Time",selectDate:"Select Date",datePlaceholder:"Select Date",datetimePlaceholder:"Select Date and Time",monthPlaceholder:"Select Month",yearPlaceholder:"Select Year",quarterPlaceholder:"Select Quarter",weekPlaceholder:"Select Week",startDatePlaceholder:"Start Date",endDatePlaceholder:"End Date",startDatetimePlaceholder:"Start Date and Time",endDatetimePlaceholder:"End Date and Time",startMonthPlaceholder:"Start Month",endMonthPlaceholder:"End Month",monthBeforeYear:!0,firstDayOfWeek:6,today:"Today"},DataTable:{checkTableAll:"Select all in the table",uncheckTableAll:"Unselect all in the table",confirm:"Confirm",clear:"Clear"},LegacyTransfer:{sourceTitle:"Source",targetTitle:"Target"},Transfer:{selectAll:"Select all",unselectAll:"Unselect all",clearAll:"Clear",total:e=>`Total ${e} items`,selected:e=>`${e} items selected`},Empty:{description:"No Data"},Select:{placeholder:"Please Select"},TimePicker:{placeholder:"Select Time",positiveText:"OK",negativeText:"Cancel",now:"Now",clear:"Clear"},Pagination:{goto:"Goto",selectionSuffix:"page"},DynamicTags:{add:"Add"},Log:{loading:"Loading"},Input:{placeholder:"Please Input"},InputNumber:{placeholder:"Please Input"},DynamicInput:{create:"Create"},ThemeEditor:{title:"Theme Editor",clearAllVars:"Clear All Variables",clearSearch:"Clear Search",filterCompName:"Filter Component Name",filterVarName:"Filter Variable Name",import:"Import",export:"Export",restore:"Reset to Default"},Image:{tipPrevious:"Previous picture (←)",tipNext:"Next picture (→)",tipCounterclockwise:"Counterclockwise",tipClockwise:"Clockwise",tipZoomOut:"Zoom out",tipZoomIn:"Zoom in",tipDownload:"Download",tipClose:"Close (Esc)",tipOriginalSize:"Zoom to original size"}};function Rg(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}function Og(e){return(t,n)=>{let r;if("formatting"===((null==n?void 0:n.context)?String(n.context):"standalone")&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth,o=(null==n?void 0:n.width)?String(n.width):t;r=e.formattingValues[o]||e.formattingValues[t]}else{const t=e.defaultWidth,o=(null==n?void 0:n.width)?String(n.width):e.defaultWidth;r=e.values[o]||e.values[t]}return r[e.argumentCallback?e.argumentCallback(t):t]}}function Ag(e){return(t,n={})=>{const r=n.width,o=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],i=t.match(o);if(!i)return null;const a=i[0],l=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],s=Array.isArray(l)?function(e,t){for(let n=0;ne.test(a))):function(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n;return}(l,(e=>e.test(a)));let c;c=e.valueCallback?e.valueCallback(s):s,c=n.valueCallback?n.valueCallback(c):c;return{value:c,rest:t.slice(a.length)}}}const Pg={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Tg={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},$g={ordinalNumber:(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:Og({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:Og({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:Og({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:Og({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:Og({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},zg={ordinalNumber:(Mg={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,t={})=>{const n=e.match(Mg.matchPattern);if(!n)return null;const r=n[0],o=e.match(Mg.parsePattern);if(!o)return null;let i=Mg.valueCallback?Mg.valueCallback(o[0]):o[0];return i=t.valueCallback?t.valueCallback(i):i,{value:i,rest:e.slice(r.length)}}),era:Ag({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:Ag({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:Ag({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:Ag({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:Ag({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};var Mg;const Fg={code:"en-US",formatDistance:(e,t,n)=>{let r;const o=Pg[e];return r="string"==typeof o?o:1===t?o.one:o.other.replace("{{count}}",t.toString()),(null==n?void 0:n.addSuffix)?n.comparison&&n.comparison>0?"in "+r:r+" ago":r},formatLong:{date:Rg({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:Rg({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:Rg({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},formatRelative:(e,t,n,r)=>Tg[e],localize:$g,match:zg,options:{weekStartsOn:0,firstWeekContainsDate:1}},Ng={name:"en-US",locale:Fg};var Bg="object"==typeof global&&global&&global.Object===Object&&global,Ig="object"==typeof self&&self&&self.Object===Object&&self,Lg=Bg||Ig||Function("return this")(),jg=Lg.Symbol,Dg=Object.prototype,Hg=Dg.hasOwnProperty,Wg=Dg.toString,Ug=jg?jg.toStringTag:void 0;var qg=Object.prototype.toString;var Kg=jg?jg.toStringTag:void 0;function Vg(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Kg&&Kg in Object(e)?function(e){var t=Hg.call(e,Ug),n=e[Ug];try{e[Ug]=void 0;var r=!0}catch(XT){}var o=Wg.call(e);return r&&(t?e[Ug]=n:delete e[Ug]),o}(e):function(e){return qg.call(e)}(e)}function Gg(e){return null!=e&&"object"==typeof e}function Zg(e){return"symbol"==typeof e||Gg(e)&&"[object Symbol]"==Vg(e)}function Xg(e,t){for(var n=-1,r=null==e?0:e.length,o=Array(r);++n0){if(++Pb>=800)return arguments[0]}else Pb=0;return Ab.apply(void 0,arguments)}),Fb=/^(?:0|[1-9]\d*)$/;function Nb(e,t){var n=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==n||"symbol"!=n&&Fb.test(e))&&e>-1&&e%1==0&&e-1&&e%1==0&&e<=9007199254740991}function Ub(e){return null!=e&&Wb(e.length)&&!ub(e)}var qb=Object.prototype;function Kb(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||qb)}function Vb(e){return Gg(e)&&"[object Arguments]"==Vg(e)}var Gb=Object.prototype,Zb=Gb.hasOwnProperty,Xb=Gb.propertyIsEnumerable,Qb=Vb(function(){return arguments}())?Vb:function(e){return Gg(e)&&Zb.call(e,"callee")&&!Xb.call(e,"callee")};var Yb="object"==typeof exports&&exports&&!exports.nodeType&&exports,Jb=Yb&&"object"==typeof module&&module&&!module.nodeType&&module,ev=Jb&&Jb.exports===Yb?Lg.Buffer:void 0,tv=(ev?ev.isBuffer:void 0)||function(){return!1},nv={};nv["[object Float32Array]"]=nv["[object Float64Array]"]=nv["[object Int8Array]"]=nv["[object Int16Array]"]=nv["[object Int32Array]"]=nv["[object Uint8Array]"]=nv["[object Uint8ClampedArray]"]=nv["[object Uint16Array]"]=nv["[object Uint32Array]"]=!0,nv["[object Arguments]"]=nv["[object Array]"]=nv["[object ArrayBuffer]"]=nv["[object Boolean]"]=nv["[object DataView]"]=nv["[object Date]"]=nv["[object Error]"]=nv["[object Function]"]=nv["[object Map]"]=nv["[object Number]"]=nv["[object Object]"]=nv["[object RegExp]"]=nv["[object Set]"]=nv["[object String]"]=nv["[object WeakMap]"]=!1;var rv="object"==typeof exports&&exports&&!exports.nodeType&&exports,ov=rv&&"object"==typeof module&&module&&!module.nodeType&&module,iv=ov&&ov.exports===rv&&Bg.process,av=function(){try{var e=ov&&ov.require&&ov.require("util").types;return e||iv&&iv.binding&&iv.binding("util")}catch(XT){}}(),lv=av&&av.isTypedArray,sv=lv?function(e){return function(t){return e(t)}}(lv):function(e){return Gg(e)&&Wb(e.length)&&!!nv[Vg(e)]},cv=Object.prototype.hasOwnProperty;function dv(e,t){var n=Qg(e),r=!n&&Qb(e),o=!n&&!r&&tv(e),i=!n&&!r&&!o&&sv(e),a=n||r||o||i,l=a?function(e,t){for(var n=-1,r=Array(e);++n-1},Rv.prototype.set=function(e,t){var n=this.__data__,r=_v(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this};var Ov=kb(Lg,"Map");function Av(e,t){var n,r,o=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?o["string"==typeof t?"string":"hash"]:o.map}function Pv(e){var t=-1,n=null==e?0:e.length;for(this.clear();++to?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var i=Array(o);++rl))return!1;var c=i.get(e),d=i.get(t);if(c&&d)return c==t&&d==e;var u=-1,p=!0,f=2&n?new Mm:void 0;for(i.set(e,t),i.set(t,e);++u=t||n<0||u&&e-c>=i}function g(){var e=oy();if(h(e))return b(e);l=setTimeout(g,function(e){var n=t-(e-s);return u?ay(n,i-(e-c)):n}(e))}function b(e){return l=void 0,p&&r?f(e):(r=o=void 0,a)}function v(){var e=oy(),n=h(e);if(r=arguments,o=this,s=e,n){if(void 0===l)return function(e){return c=e,l=setTimeout(g,t),d?f(e):a}(s);if(u)return clearTimeout(l),l=setTimeout(g,t),f(s)}return void 0===l&&(l=setTimeout(g,t)),a}return t=cb(t)||0,ob(n)&&(d=!!n.leading,i=(u="maxWait"in n)?iy(cb(n.maxWait)||0,t):i,p="trailing"in n?!!n.trailing:p),v.cancel=function(){void 0!==l&&clearTimeout(l),c=0,r=s=o=l=void 0},v.flush=function(){return void 0===l?a:b(oy())},v}function sy(e,t,n){(void 0!==n&&!Ib(e[t],n)||void 0===n&&!(t in e))&&Bb(e,t,n)}function cy(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}function dy(e){return function(e,t,n){var r=!n;n||(n={});for(var o=-1,i=t.length;++o1?t[r-1]:void 0,i=r>2?t[2]:void 0;for(o=hy.length>3&&"function"==typeof o?(r--,o):void 0,i&&function(e,t,n){if(!ob(n))return!1;var r=typeof t;return!!("number"==r?Ub(n)&&Nb(t,n.length):"string"==r&&t in n)&&Ib(n[t],e)}(t[0],t[1],i)&&(o=r<3?void 0:o,r=1),e=Object(e);++n{var n,r;return null!==(r=null===(n=null==t?void 0:t.value)||void 0===n?void 0:n[e])&&void 0!==r?r:Eg[e]})),o=gi((()=>{var e;return null!==(e=null==n?void 0:n.value)&&void 0!==e?e:Ng}));return{dateLocaleRef:o,localeRef:r}}const my="naive-ui-style";function yy(e,t,n){if(!t)return;const r=Sf(),o=gi((()=>{const{value:n}=t;if(!n)return;const r=n[e];return r||void 0})),i=Wr(yg,null),a=()=>{ho((()=>{const{value:t}=n,a=`${t}${e}Rtl`;if(function(e,t){if(void 0===e)return!1;if(t){const{context:{ids:n}}=t;return n.has(e)}return null!==qd(e)}(a,r))return;const{value:l}=o;l&&l.style.mount({id:a,head:!0,anchorMetaName:my,props:{bPrefix:t?`.${t}-`:void 0},ssr:r,parent:null==i?void 0:i.styleMountTarget})}))};return r?a():nr(a),o}const xy={fontFamily:'v-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',fontFamilyMono:"v-mono, SFMono-Regular, Menlo, Consolas, Courier, monospace",fontWeight:"400",fontWeightStrong:"500",cubicBezierEaseInOut:"cubic-bezier(.4, 0, .2, 1)",cubicBezierEaseOut:"cubic-bezier(0, 0, .2, 1)",cubicBezierEaseIn:"cubic-bezier(.4, 0, 1, 1)",borderRadius:"3px",borderRadiusSmall:"2px",fontSize:"14px",fontSizeMini:"12px",fontSizeTiny:"12px",fontSizeSmall:"14px",fontSizeMedium:"14px",fontSizeLarge:"15px",fontSizeHuge:"16px",lineHeight:"1.6",heightMini:"16px",heightTiny:"22px",heightSmall:"28px",heightMedium:"34px",heightLarge:"40px",heightHuge:"46px"},{fontSize:wy,fontFamily:Cy,lineHeight:Sy}=xy,ky=cu("body",`\n margin: 0;\n font-size: ${wy};\n font-family: ${Cy};\n line-height: ${Sy};\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: transparent;\n`,[cu("input","\n font-family: inherit;\n font-size: inherit;\n ")]);function _y(e,t,n){if(!t)return;const r=Sf(),o=Wr(yg,null),i=()=>{const i=n.value;t.mount({id:void 0===i?e:i+e,head:!0,anchorMetaName:my,props:{bPrefix:i?`.${i}-`:void 0},ssr:r,parent:null==o?void 0:o.styleMountTarget}),(null==o?void 0:o.preflightStyleDisabled)||ky.mount({id:"n-global",head:!0,anchorMetaName:my,ssr:r,parent:null==o?void 0:o.styleMountTarget})};r?i():nr(i)}function Ey(e,t,n,r,o,i){const a=Sf(),l=Wr(yg,null);if(n){const e=()=>{const e=null==i?void 0:i.value;n.mount({id:void 0===e?t:e+t,head:!0,props:{bPrefix:e?`.${e}-`:void 0},anchorMetaName:my,ssr:a,parent:null==l?void 0:l.styleMountTarget}),(null==l?void 0:l.preflightStyleDisabled)||ky.mount({id:"n-global",head:!0,anchorMetaName:my,ssr:a,parent:null==l?void 0:l.styleMountTarget})};a?e():nr(e)}const s=gi((()=>{var t;const{theme:{common:n,self:i,peers:a={}}={},themeOverrides:s={},builtinThemeOverrides:c={}}=o,{common:d,peers:u}=s,{common:p,[e]:{common:f,self:h,peers:g={}}={}}=(null==l?void 0:l.mergedThemeRef.value)||{},{common:b,[e]:v={}}=(null==l?void 0:l.mergedThemeOverridesRef.value)||{},{common:m,peers:y={}}=v,x=gy({},n||f||p||r.common,b,m,d);return{common:x,self:gy(null===(t=i||h||r.self)||void 0===t?void 0:t(x),c,v,s),peers:gy({},r.peers,g,a),peerOverrides:gy({},c.peers,y,u)}}));return s}Ey.props={theme:Object,themeOverrides:Object,builtinThemeOverrides:Object};const Ry=uu("base-icon","\n height: 1em;\n width: 1em;\n line-height: 1em;\n text-align: center;\n display: inline-block;\n position: relative;\n fill: currentColor;\n transform: translateZ(0);\n",[cu("svg","\n height: 1em;\n width: 1em;\n ")]),Oy=qn({name:"BaseIcon",props:{role:String,ariaLabel:String,ariaDisabled:{type:Boolean,default:void 0},ariaHidden:{type:Boolean,default:void 0},clsPrefix:{type:String,required:!0},onClick:Function,onMousedown:Function,onMouseup:Function},setup(e){_y("-base-icon",Ry,Dt(e,"clsPrefix"))},render(){return bi("i",{class:`${this.clsPrefix}-base-icon`,onClick:this.onClick,onMousedown:this.onMousedown,onMouseup:this.onMouseup,role:this.role,"aria-label":this.ariaLabel,"aria-hidden":this.ariaHidden,"aria-disabled":this.ariaDisabled},this.$slots)}}),Ay=qn({name:"BaseIconSwitchTransition",setup(e,{slots:t}){const n=zp();return()=>bi(Ai,{name:"icon-switch-transition",appear:n.value},t)}}),Py=qn({name:"Add",render:()=>bi("svg",{width:"512",height:"512",viewBox:"0 0 512 512",fill:"none",xmlns:"http://www.w3.org/2000/svg"},bi("path",{d:"M256 112V400M400 256H112",stroke:"currentColor","stroke-width":"32","stroke-linecap":"round","stroke-linejoin":"round"}))}),Ty=qn({name:"ArrowDown",render:()=>bi("svg",{viewBox:"0 0 28 28",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},bi("g",{stroke:"none","stroke-width":"1","fill-rule":"evenodd"},bi("g",{"fill-rule":"nonzero"},bi("path",{d:"M23.7916,15.2664 C24.0788,14.9679 24.0696,14.4931 23.7711,14.206 C23.4726,13.9188 22.9978,13.928 22.7106,14.2265 L14.7511,22.5007 L14.7511,3.74792 C14.7511,3.33371 14.4153,2.99792 14.0011,2.99792 C13.5869,2.99792 13.2511,3.33371 13.2511,3.74793 L13.2511,22.4998 L5.29259,14.2265 C5.00543,13.928 4.53064,13.9188 4.23213,14.206 C3.93361,14.4931 3.9244,14.9679 4.21157,15.2664 L13.2809,24.6944 C13.6743,25.1034 14.3289,25.1034 14.7223,24.6944 L23.7916,15.2664 Z"}))))});function $y(e,t){const n=qn({render:()=>t()});return qn({name:cm(e),setup(){var t;const r=null===(t=Wr(yg,null))||void 0===t?void 0:t.mergedIconsRef;return()=>{var t;const o=null===(t=null==r?void 0:r.value)||void 0===t?void 0:t[e];return o?o():bi(n,null)}}})}const zy=qn({name:"Backward",render:()=>bi("svg",{viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},bi("path",{d:"M12.2674 15.793C11.9675 16.0787 11.4927 16.0672 11.2071 15.7673L6.20572 10.5168C5.9298 10.2271 5.9298 9.7719 6.20572 9.48223L11.2071 4.23177C11.4927 3.93184 11.9675 3.92031 12.2674 4.206C12.5673 4.49169 12.5789 4.96642 12.2932 5.26634L7.78458 9.99952L12.2932 14.7327C12.5789 15.0326 12.5673 15.5074 12.2674 15.793Z",fill:"currentColor"}))}),My=qn({name:"Checkmark",render:()=>bi("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"},bi("g",{fill:"none"},bi("path",{d:"M14.046 3.486a.75.75 0 0 1-.032 1.06l-7.93 7.474a.85.85 0 0 1-1.188-.022l-2.68-2.72a.75.75 0 1 1 1.068-1.053l2.234 2.267l7.468-7.038a.75.75 0 0 1 1.06.032z",fill:"currentColor"})))}),Fy=qn({name:"ChevronDown",render:()=>bi("svg",{viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},bi("path",{d:"M3.14645 5.64645C3.34171 5.45118 3.65829 5.45118 3.85355 5.64645L8 9.79289L12.1464 5.64645C12.3417 5.45118 12.6583 5.45118 12.8536 5.64645C13.0488 5.84171 13.0488 6.15829 12.8536 6.35355L8.35355 10.8536C8.15829 11.0488 7.84171 11.0488 7.64645 10.8536L3.14645 6.35355C2.95118 6.15829 2.95118 5.84171 3.14645 5.64645Z",fill:"currentColor"}))}),Ny=qn({name:"ChevronLeft",render:()=>bi("svg",{viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},bi("path",{d:"M10.3536 3.14645C10.5488 3.34171 10.5488 3.65829 10.3536 3.85355L6.20711 8L10.3536 12.1464C10.5488 12.3417 10.5488 12.6583 10.3536 12.8536C10.1583 13.0488 9.84171 13.0488 9.64645 12.8536L5.14645 8.35355C4.95118 8.15829 4.95118 7.84171 5.14645 7.64645L9.64645 3.14645C9.84171 2.95118 10.1583 2.95118 10.3536 3.14645Z",fill:"currentColor"}))}),By=qn({name:"ChevronRight",render:()=>bi("svg",{viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},bi("path",{d:"M5.64645 3.14645C5.45118 3.34171 5.45118 3.65829 5.64645 3.85355L9.79289 8L5.64645 12.1464C5.45118 12.3417 5.45118 12.6583 5.64645 12.8536C5.84171 13.0488 6.15829 13.0488 6.35355 12.8536L10.8536 8.35355C11.0488 8.15829 11.0488 7.84171 10.8536 7.64645L6.35355 3.14645C6.15829 2.95118 5.84171 2.95118 5.64645 3.14645Z",fill:"currentColor"}))}),Iy=$y("clear",(()=>bi("svg",{viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},bi("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},bi("g",{fill:"currentColor","fill-rule":"nonzero"},bi("path",{d:"M8,2 C11.3137085,2 14,4.6862915 14,8 C14,11.3137085 11.3137085,14 8,14 C4.6862915,14 2,11.3137085 2,8 C2,4.6862915 4.6862915,2 8,2 Z M6.5343055,5.83859116 C6.33943736,5.70359511 6.07001296,5.72288026 5.89644661,5.89644661 L5.89644661,5.89644661 L5.83859116,5.9656945 C5.70359511,6.16056264 5.72288026,6.42998704 5.89644661,6.60355339 L5.89644661,6.60355339 L7.293,8 L5.89644661,9.39644661 L5.83859116,9.4656945 C5.70359511,9.66056264 5.72288026,9.92998704 5.89644661,10.1035534 L5.89644661,10.1035534 L5.9656945,10.1614088 C6.16056264,10.2964049 6.42998704,10.2771197 6.60355339,10.1035534 L6.60355339,10.1035534 L8,8.707 L9.39644661,10.1035534 L9.4656945,10.1614088 C9.66056264,10.2964049 9.92998704,10.2771197 10.1035534,10.1035534 L10.1035534,10.1035534 L10.1614088,10.0343055 C10.2964049,9.83943736 10.2771197,9.57001296 10.1035534,9.39644661 L10.1035534,9.39644661 L8.707,8 L10.1035534,6.60355339 L10.1614088,6.5343055 C10.2964049,6.33943736 10.2771197,6.07001296 10.1035534,5.89644661 L10.1035534,5.89644661 L10.0343055,5.83859116 C9.83943736,5.70359511 9.57001296,5.72288026 9.39644661,5.89644661 L9.39644661,5.89644661 L8,7.293 L6.60355339,5.89644661 Z"})))))),Ly=$y("close",(()=>bi("svg",{viewBox:"0 0 12 12",version:"1.1",xmlns:"http://www.w3.org/2000/svg","aria-hidden":!0},bi("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},bi("g",{fill:"currentColor","fill-rule":"nonzero"},bi("path",{d:"M2.08859116,2.2156945 L2.14644661,2.14644661 C2.32001296,1.97288026 2.58943736,1.95359511 2.7843055,2.08859116 L2.85355339,2.14644661 L6,5.293 L9.14644661,2.14644661 C9.34170876,1.95118446 9.65829124,1.95118446 9.85355339,2.14644661 C10.0488155,2.34170876 10.0488155,2.65829124 9.85355339,2.85355339 L6.707,6 L9.85355339,9.14644661 C10.0271197,9.32001296 10.0464049,9.58943736 9.91140884,9.7843055 L9.85355339,9.85355339 C9.67998704,10.0271197 9.41056264,10.0464049 9.2156945,9.91140884 L9.14644661,9.85355339 L6,6.707 L2.85355339,9.85355339 C2.65829124,10.0488155 2.34170876,10.0488155 2.14644661,9.85355339 C1.95118446,9.65829124 1.95118446,9.34170876 2.14644661,9.14644661 L5.293,6 L2.14644661,2.85355339 C1.97288026,2.67998704 1.95359511,2.41056264 2.08859116,2.2156945 L2.14644661,2.14644661 L2.08859116,2.2156945 Z"})))))),jy=qn({name:"Empty",render:()=>bi("svg",{viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg"},bi("path",{d:"M26 7.5C26 11.0899 23.0899 14 19.5 14C15.9101 14 13 11.0899 13 7.5C13 3.91015 15.9101 1 19.5 1C23.0899 1 26 3.91015 26 7.5ZM16.8536 4.14645C16.6583 3.95118 16.3417 3.95118 16.1464 4.14645C15.9512 4.34171 15.9512 4.65829 16.1464 4.85355L18.7929 7.5L16.1464 10.1464C15.9512 10.3417 15.9512 10.6583 16.1464 10.8536C16.3417 11.0488 16.6583 11.0488 16.8536 10.8536L19.5 8.20711L22.1464 10.8536C22.3417 11.0488 22.6583 11.0488 22.8536 10.8536C23.0488 10.6583 23.0488 10.3417 22.8536 10.1464L20.2071 7.5L22.8536 4.85355C23.0488 4.65829 23.0488 4.34171 22.8536 4.14645C22.6583 3.95118 22.3417 3.95118 22.1464 4.14645L19.5 6.79289L16.8536 4.14645Z",fill:"currentColor"}),bi("path",{d:"M25 22.75V12.5991C24.5572 13.0765 24.053 13.4961 23.5 13.8454V16H17.5L17.3982 16.0068C17.0322 16.0565 16.75 16.3703 16.75 16.75C16.75 18.2688 15.5188 19.5 14 19.5C12.4812 19.5 11.25 18.2688 11.25 16.75L11.2432 16.6482C11.1935 16.2822 10.8797 16 10.5 16H4.5V7.25C4.5 6.2835 5.2835 5.5 6.25 5.5H12.2696C12.4146 4.97463 12.6153 4.47237 12.865 4H6.25C4.45507 4 3 5.45507 3 7.25V22.75C3 24.5449 4.45507 26 6.25 26H21.75C23.5449 26 25 24.5449 25 22.75ZM4.5 22.75V17.5H9.81597L9.85751 17.7041C10.2905 19.5919 11.9808 21 14 21L14.215 20.9947C16.2095 20.8953 17.842 19.4209 18.184 17.5H23.5V22.75C23.5 23.7165 22.7165 24.5 21.75 24.5H6.25C5.2835 24.5 4.5 23.7165 4.5 22.75Z",fill:"currentColor"}))}),Dy=$y("error",(()=>bi("svg",{viewBox:"0 0 48 48",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},bi("g",{stroke:"none","stroke-width":"1","fill-rule":"evenodd"},bi("g",{"fill-rule":"nonzero"},bi("path",{d:"M24,4 C35.045695,4 44,12.954305 44,24 C44,35.045695 35.045695,44 24,44 C12.954305,44 4,35.045695 4,24 C4,12.954305 12.954305,4 24,4 Z M17.8838835,16.1161165 L17.7823881,16.0249942 C17.3266086,15.6583353 16.6733914,15.6583353 16.2176119,16.0249942 L16.1161165,16.1161165 L16.0249942,16.2176119 C15.6583353,16.6733914 15.6583353,17.3266086 16.0249942,17.7823881 L16.1161165,17.8838835 L22.233,24 L16.1161165,30.1161165 L16.0249942,30.2176119 C15.6583353,30.6733914 15.6583353,31.3266086 16.0249942,31.7823881 L16.1161165,31.8838835 L16.2176119,31.9750058 C16.6733914,32.3416647 17.3266086,32.3416647 17.7823881,31.9750058 L17.8838835,31.8838835 L24,25.767 L30.1161165,31.8838835 L30.2176119,31.9750058 C30.6733914,32.3416647 31.3266086,32.3416647 31.7823881,31.9750058 L31.8838835,31.8838835 L31.9750058,31.7823881 C32.3416647,31.3266086 32.3416647,30.6733914 31.9750058,30.2176119 L31.8838835,30.1161165 L25.767,24 L31.8838835,17.8838835 L31.9750058,17.7823881 C32.3416647,17.3266086 32.3416647,16.6733914 31.9750058,16.2176119 L31.8838835,16.1161165 L31.7823881,16.0249942 C31.3266086,15.6583353 30.6733914,15.6583353 30.2176119,16.0249942 L30.1161165,16.1161165 L24,22.233 L17.8838835,16.1161165 L17.7823881,16.0249942 L17.8838835,16.1161165 Z"})))))),Hy=qn({name:"Eye",render:()=>bi("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},bi("path",{d:"M255.66 112c-77.94 0-157.89 45.11-220.83 135.33a16 16 0 0 0-.27 17.77C82.92 340.8 161.8 400 255.66 400c92.84 0 173.34-59.38 221.79-135.25a16.14 16.14 0 0 0 0-17.47C428.89 172.28 347.8 112 255.66 112z",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"32"}),bi("circle",{cx:"256",cy:"256",r:"80",fill:"none",stroke:"currentColor","stroke-miterlimit":"10","stroke-width":"32"}))}),Wy=qn({name:"EyeOff",render:()=>bi("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"},bi("path",{d:"M432 448a15.92 15.92 0 0 1-11.31-4.69l-352-352a16 16 0 0 1 22.62-22.62l352 352A16 16 0 0 1 432 448z",fill:"currentColor"}),bi("path",{d:"M255.66 384c-41.49 0-81.5-12.28-118.92-36.5c-34.07-22-64.74-53.51-88.7-91v-.08c19.94-28.57 41.78-52.73 65.24-72.21a2 2 0 0 0 .14-2.94L93.5 161.38a2 2 0 0 0-2.71-.12c-24.92 21-48.05 46.76-69.08 76.92a31.92 31.92 0 0 0-.64 35.54c26.41 41.33 60.4 76.14 98.28 100.65C162 402 207.9 416 255.66 416a239.13 239.13 0 0 0 75.8-12.58a2 2 0 0 0 .77-3.31l-21.58-21.58a4 4 0 0 0-3.83-1a204.8 204.8 0 0 1-51.16 6.47z",fill:"currentColor"}),bi("path",{d:"M490.84 238.6c-26.46-40.92-60.79-75.68-99.27-100.53C349 110.55 302 96 255.66 96a227.34 227.34 0 0 0-74.89 12.83a2 2 0 0 0-.75 3.31l21.55 21.55a4 4 0 0 0 3.88 1a192.82 192.82 0 0 1 50.21-6.69c40.69 0 80.58 12.43 118.55 37c34.71 22.4 65.74 53.88 89.76 91a.13.13 0 0 1 0 .16a310.72 310.72 0 0 1-64.12 72.73a2 2 0 0 0-.15 2.95l19.9 19.89a2 2 0 0 0 2.7.13a343.49 343.49 0 0 0 68.64-78.48a32.2 32.2 0 0 0-.1-34.78z",fill:"currentColor"}),bi("path",{d:"M256 160a95.88 95.88 0 0 0-21.37 2.4a2 2 0 0 0-1 3.38l112.59 112.56a2 2 0 0 0 3.38-1A96 96 0 0 0 256 160z",fill:"currentColor"}),bi("path",{d:"M165.78 233.66a2 2 0 0 0-3.38 1a96 96 0 0 0 115 115a2 2 0 0 0 1-3.38z",fill:"currentColor"}))}),Uy=qn({name:"FastBackward",render:()=>bi("svg",{viewBox:"0 0 20 20",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},bi("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},bi("g",{fill:"currentColor","fill-rule":"nonzero"},bi("path",{d:"M8.73171,16.7949 C9.03264,17.0795 9.50733,17.0663 9.79196,16.7654 C10.0766,16.4644 10.0634,15.9897 9.76243,15.7051 L4.52339,10.75 L17.2471,10.75 C17.6613,10.75 17.9971,10.4142 17.9971,10 C17.9971,9.58579 17.6613,9.25 17.2471,9.25 L4.52112,9.25 L9.76243,4.29275 C10.0634,4.00812 10.0766,3.53343 9.79196,3.2325 C9.50733,2.93156 9.03264,2.91834 8.73171,3.20297 L2.31449,9.27241 C2.14819,9.4297 2.04819,9.62981 2.01448,9.8386 C2.00308,9.89058 1.99707,9.94459 1.99707,10 C1.99707,10.0576 2.00356,10.1137 2.01585,10.1675 C2.05084,10.3733 2.15039,10.5702 2.31449,10.7254 L8.73171,16.7949 Z"}))))}),qy=qn({name:"FastForward",render:()=>bi("svg",{viewBox:"0 0 20 20",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},bi("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},bi("g",{fill:"currentColor","fill-rule":"nonzero"},bi("path",{d:"M11.2654,3.20511 C10.9644,2.92049 10.4897,2.93371 10.2051,3.23464 C9.92049,3.53558 9.93371,4.01027 10.2346,4.29489 L15.4737,9.25 L2.75,9.25 C2.33579,9.25 2,9.58579 2,10.0000012 C2,10.4142 2.33579,10.75 2.75,10.75 L15.476,10.75 L10.2346,15.7073 C9.93371,15.9919 9.92049,16.4666 10.2051,16.7675 C10.4897,17.0684 10.9644,17.0817 11.2654,16.797 L17.6826,10.7276 C17.8489,10.5703 17.9489,10.3702 17.9826,10.1614 C17.994,10.1094 18,10.0554 18,10.0000012 C18,9.94241 17.9935,9.88633 17.9812,9.83246 C17.9462,9.62667 17.8467,9.42976 17.6826,9.27455 L11.2654,3.20511 Z"}))))}),Ky=qn({name:"Filter",render:()=>bi("svg",{viewBox:"0 0 28 28",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},bi("g",{stroke:"none","stroke-width":"1","fill-rule":"evenodd"},bi("g",{"fill-rule":"nonzero"},bi("path",{d:"M17,19 C17.5522847,19 18,19.4477153 18,20 C18,20.5522847 17.5522847,21 17,21 L11,21 C10.4477153,21 10,20.5522847 10,20 C10,19.4477153 10.4477153,19 11,19 L17,19 Z M21,13 C21.5522847,13 22,13.4477153 22,14 C22,14.5522847 21.5522847,15 21,15 L7,15 C6.44771525,15 6,14.5522847 6,14 C6,13.4477153 6.44771525,13 7,13 L21,13 Z M24,7 C24.5522847,7 25,7.44771525 25,8 C25,8.55228475 24.5522847,9 24,9 L4,9 C3.44771525,9 3,8.55228475 3,8 C3,7.44771525 3.44771525,7 4,7 L24,7 Z"}))))}),Vy=qn({name:"Forward",render:()=>bi("svg",{viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},bi("path",{d:"M7.73271 4.20694C8.03263 3.92125 8.50737 3.93279 8.79306 4.23271L13.7944 9.48318C14.0703 9.77285 14.0703 10.2281 13.7944 10.5178L8.79306 15.7682C8.50737 16.0681 8.03263 16.0797 7.73271 15.794C7.43279 15.5083 7.42125 15.0336 7.70694 14.7336L12.2155 10.0005L7.70694 5.26729C7.42125 4.96737 7.43279 4.49264 7.73271 4.20694Z",fill:"currentColor"}))}),Gy=$y("info",(()=>bi("svg",{viewBox:"0 0 28 28",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},bi("g",{stroke:"none","stroke-width":"1","fill-rule":"evenodd"},bi("g",{"fill-rule":"nonzero"},bi("path",{d:"M14,2 C20.6274,2 26,7.37258 26,14 C26,20.6274 20.6274,26 14,26 C7.37258,26 2,20.6274 2,14 C2,7.37258 7.37258,2 14,2 Z M14,11 C13.4477,11 13,11.4477 13,12 L13,12 L13,20 C13,20.5523 13.4477,21 14,21 C14.5523,21 15,20.5523 15,20 L15,20 L15,12 C15,11.4477 14.5523,11 14,11 Z M14,6.75 C13.3096,6.75 12.75,7.30964 12.75,8 C12.75,8.69036 13.3096,9.25 14,9.25 C14.6904,9.25 15.25,8.69036 15.25,8 C15.25,7.30964 14.6904,6.75 14,6.75 Z"})))))),Zy=qn({name:"More",render:()=>bi("svg",{viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},bi("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},bi("g",{fill:"currentColor","fill-rule":"nonzero"},bi("path",{d:"M4,7 C4.55228,7 5,7.44772 5,8 C5,8.55229 4.55228,9 4,9 C3.44772,9 3,8.55229 3,8 C3,7.44772 3.44772,7 4,7 Z M8,7 C8.55229,7 9,7.44772 9,8 C9,8.55229 8.55229,9 8,9 C7.44772,9 7,8.55229 7,8 C7,7.44772 7.44772,7 8,7 Z M12,7 C12.5523,7 13,7.44772 13,8 C13,8.55229 12.5523,9 12,9 C11.4477,9 11,8.55229 11,8 C11,7.44772 11.4477,7 12,7 Z"}))))}),Xy=$y("success",(()=>bi("svg",{viewBox:"0 0 48 48",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},bi("g",{stroke:"none","stroke-width":"1","fill-rule":"evenodd"},bi("g",{"fill-rule":"nonzero"},bi("path",{d:"M24,4 C35.045695,4 44,12.954305 44,24 C44,35.045695 35.045695,44 24,44 C12.954305,44 4,35.045695 4,24 C4,12.954305 12.954305,4 24,4 Z M32.6338835,17.6161165 C32.1782718,17.1605048 31.4584514,17.1301307 30.9676119,17.5249942 L30.8661165,17.6161165 L20.75,27.732233 L17.1338835,24.1161165 C16.6457281,23.6279612 15.8542719,23.6279612 15.3661165,24.1161165 C14.9105048,24.5717282 14.8801307,25.2915486 15.2749942,25.7823881 L15.3661165,25.8838835 L19.8661165,30.3838835 C20.3217282,30.8394952 21.0415486,30.8698693 21.5323881,30.4750058 L21.6338835,30.3838835 L32.6338835,19.3838835 C33.1220388,18.8957281 33.1220388,18.1042719 32.6338835,17.6161165 Z"})))))),Qy=$y("warning",(()=>bi("svg",{viewBox:"0 0 24 24",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},bi("g",{stroke:"none","stroke-width":"1","fill-rule":"evenodd"},bi("g",{"fill-rule":"nonzero"},bi("path",{d:"M12,2 C17.523,2 22,6.478 22,12 C22,17.522 17.523,22 12,22 C6.477,22 2,17.522 2,12 C2,6.478 6.477,2 12,2 Z M12.0018002,15.0037242 C11.450254,15.0037242 11.0031376,15.4508407 11.0031376,16.0023869 C11.0031376,16.553933 11.450254,17.0010495 12.0018002,17.0010495 C12.5533463,17.0010495 13.0004628,16.553933 13.0004628,16.0023869 C13.0004628,15.4508407 12.5533463,15.0037242 12.0018002,15.0037242 Z M11.99964,7 C11.4868042,7.00018474 11.0642719,7.38637706 11.0066858,7.8837365 L11,8.00036004 L11.0018003,13.0012393 L11.00857,13.117858 C11.0665141,13.6151758 11.4893244,14.0010638 12.0021602,14.0008793 C12.514996,14.0006946 12.9375283,13.6145023 12.9951144,13.1171428 L13.0018002,13.0005193 L13,7.99964009 L12.9932303,7.8830214 C12.9352861,7.38570354 12.5124758,6.99981552 11.99964,7 Z"})))))),{cubicBezierEaseInOut:Yy}=xy;function Jy({originalTransform:e="",left:t=0,top:n=0,transition:r=`all .3s ${Yy} !important`}={}){return[cu("&.icon-switch-transition-enter-from, &.icon-switch-transition-leave-to",{transform:`${e} scale(0.75)`,left:t,top:n,opacity:0}),cu("&.icon-switch-transition-enter-to, &.icon-switch-transition-leave-from",{transform:`scale(1) ${e}`,left:t,top:n,opacity:1}),cu("&.icon-switch-transition-enter-active, &.icon-switch-transition-leave-active",{transformOrigin:"center",position:"absolute",left:t,top:n,transition:r})]}const ex=uu("base-clear","\n flex-shrink: 0;\n height: 1em;\n width: 1em;\n position: relative;\n",[cu(">",[pu("clear","\n font-size: var(--n-clear-size);\n height: 1em;\n width: 1em;\n cursor: pointer;\n color: var(--n-clear-color);\n transition: color .3s var(--n-bezier);\n display: flex;\n ",[cu("&:hover","\n color: var(--n-clear-color-hover)!important;\n "),cu("&:active","\n color: var(--n-clear-color-pressed)!important;\n ")]),pu("placeholder","\n display: flex;\n "),pu("clear, placeholder","\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translateX(-50%) translateY(-50%);\n ",[Jy({originalTransform:"translateX(-50%) translateY(-50%)",left:"50%",top:"50%"})])])]),tx=qn({name:"BaseClear",props:{clsPrefix:{type:String,required:!0},show:Boolean,onClear:Function},setup:e=>(_y("-base-clear",ex,Dt(e,"clsPrefix")),{handleMouseDown(e){e.preventDefault()}}),render(){const{clsPrefix:e}=this;return bi("div",{class:`${e}-base-clear`},bi(Ay,null,{default:()=>{var t,n;return this.show?bi("div",{key:"dismiss",class:`${e}-base-clear__clear`,onClick:this.onClear,onMousedown:this.handleMouseDown,"data-clear":!0},hg(this.$slots.icon,(()=>[bi(Oy,{clsPrefix:e},{default:()=>bi(Iy,null)})]))):bi("div",{key:"icon",class:`${e}-base-clear__placeholder`},null===(n=(t=this.$slots).placeholder)||void 0===n?void 0:n.call(t))}}))}}),nx=uu("base-close","\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n background-color: transparent;\n color: var(--n-close-icon-color);\n border-radius: var(--n-close-border-radius);\n height: var(--n-close-size);\n width: var(--n-close-size);\n font-size: var(--n-close-icon-size);\n outline: none;\n border: none;\n position: relative;\n padding: 0;\n",[fu("absolute","\n height: var(--n-close-icon-size);\n width: var(--n-close-icon-size);\n "),cu("&::before",'\n content: "";\n position: absolute;\n width: var(--n-close-size);\n height: var(--n-close-size);\n left: 50%;\n top: 50%;\n transform: translateY(-50%) translateX(-50%);\n transition: inherit;\n border-radius: inherit;\n '),hu("disabled",[cu("&:hover","\n color: var(--n-close-icon-color-hover);\n "),cu("&:hover::before","\n background-color: var(--n-close-color-hover);\n "),cu("&:focus::before","\n background-color: var(--n-close-color-hover);\n "),cu("&:active","\n color: var(--n-close-icon-color-pressed);\n "),cu("&:active::before","\n background-color: var(--n-close-color-pressed);\n ")]),fu("disabled","\n cursor: not-allowed;\n color: var(--n-close-icon-color-disabled);\n background-color: transparent;\n "),fu("round",[cu("&::before","\n border-radius: 50%;\n ")])]),rx=qn({name:"BaseClose",props:{isButtonTag:{type:Boolean,default:!0},clsPrefix:{type:String,required:!0},disabled:{type:Boolean,default:void 0},focusable:{type:Boolean,default:!0},round:Boolean,onClick:Function,absolute:Boolean},setup:e=>(_y("-base-close",nx,Dt(e,"clsPrefix")),()=>{const{clsPrefix:t,disabled:n,absolute:r,round:o,isButtonTag:i}=e;return bi(i?"button":"div",{type:i?"button":void 0,tabindex:n||!e.focusable?-1:0,"aria-disabled":n,"aria-label":"close",role:i?void 0:"button",disabled:n,class:[`${t}-base-close`,r&&`${t}-base-close--absolute`,n&&`${t}-base-close--disabled`,o&&`${t}-base-close--round`],onMousedown:t=>{e.focusable||t.preventDefault()},onClick:e.onClick},bi(Oy,{clsPrefix:t},{default:()=>bi(Ly,null)}))})}),ox=qn({name:"FadeInExpandTransition",props:{appear:Boolean,group:Boolean,mode:String,onLeave:Function,onAfterLeave:Function,onAfterEnter:Function,width:Boolean,reverse:Boolean},setup(e,{slots:t}){function n(t){e.width?t.style.maxWidth=`${t.offsetWidth}px`:t.style.maxHeight=`${t.offsetHeight}px`,t.offsetWidth}function r(t){e.width?t.style.maxWidth="0":t.style.maxHeight="0",t.offsetWidth;const{onLeave:n}=e;n&&n()}function o(t){e.width?t.style.maxWidth="":t.style.maxHeight="";const{onAfterLeave:n}=e;n&&n()}function i(t){if(t.style.transition="none",e.width){const e=t.offsetWidth;t.style.maxWidth="0",t.offsetWidth,t.style.transition="",t.style.maxWidth=`${e}px`}else if(e.reverse)t.style.maxHeight=`${t.offsetHeight}px`,t.offsetHeight,t.style.transition="",t.style.maxHeight="0";else{const e=t.offsetHeight;t.style.maxHeight="0",t.offsetWidth,t.style.transition="",t.style.maxHeight=`${e}px`}t.offsetWidth}function a(t){var n;e.width?t.style.maxWidth="":e.reverse||(t.style.maxHeight=""),null===(n=e.onAfterEnter)||void 0===n||n.call(e)}return()=>{const{group:l,width:s,appear:c,mode:d}=e,u=l?fa:Ai,p={name:s?"fade-in-width-expand-transition":"fade-in-height-expand-transition",appear:c,onEnter:i,onAfterEnter:a,onBeforeLeave:n,onLeave:r,onAfterLeave:o};return l||(p.mode=d),bi(u,p,t)}}}),ix=qn({props:{onFocus:Function,onBlur:Function},setup:e=>()=>bi("div",{style:"width: 0; height: 0",tabindex:0,onFocus:e.onFocus,onBlur:e.onBlur})}),ax=cu([cu("@keyframes rotator","\n 0% {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n }\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }"),uu("base-loading","\n position: relative;\n line-height: 0;\n width: 1em;\n height: 1em;\n ",[pu("transition-wrapper","\n position: absolute;\n width: 100%;\n height: 100%;\n ",[Jy()]),pu("placeholder","\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translateX(-50%) translateY(-50%);\n ",[Jy({left:"50%",top:"50%",originalTransform:"translateX(-50%) translateY(-50%)"})]),pu("container","\n animation: rotator 3s linear infinite both;\n ",[pu("icon","\n height: 1em;\n width: 1em;\n ")])])]),lx="1.6s",sx={strokeWidth:{type:Number,default:28},stroke:{type:String,default:void 0}},cx=qn({name:"BaseLoading",props:Object.assign({clsPrefix:{type:String,required:!0},show:{type:Boolean,default:!0},scale:{type:Number,default:1},radius:{type:Number,default:100}},sx),setup(e){_y("-base-loading",ax,Dt(e,"clsPrefix"))},render(){const{clsPrefix:e,radius:t,strokeWidth:n,stroke:r,scale:o}=this,i=t/o;return bi("div",{class:`${e}-base-loading`,role:"img","aria-label":"loading"},bi(Ay,null,{default:()=>this.show?bi("div",{key:"icon",class:`${e}-base-loading__transition-wrapper`},bi("div",{class:`${e}-base-loading__container`},bi("svg",{class:`${e}-base-loading__icon`,viewBox:`0 0 ${2*i} ${2*i}`,xmlns:"http://www.w3.org/2000/svg",style:{color:r}},bi("g",null,bi("animateTransform",{attributeName:"transform",type:"rotate",values:`0 ${i} ${i};270 ${i} ${i}`,begin:"0s",dur:lx,fill:"freeze",repeatCount:"indefinite"}),bi("circle",{class:`${e}-base-loading__icon`,fill:"none",stroke:"currentColor","stroke-width":n,"stroke-linecap":"round",cx:i,cy:i,r:t-n/2,"stroke-dasharray":5.67*t,"stroke-dashoffset":18.48*t},bi("animateTransform",{attributeName:"transform",type:"rotate",values:`0 ${i} ${i};135 ${i} ${i};450 ${i} ${i}`,begin:"0s",dur:lx,fill:"freeze",repeatCount:"indefinite"}),bi("animate",{attributeName:"stroke-dashoffset",values:`${5.67*t};${1.42*t};${5.67*t}`,begin:"0s",dur:lx,fill:"freeze",repeatCount:"indefinite"})))))):bi("div",{key:"placeholder",class:`${e}-base-loading__placeholder`},this.$slots)}))}}),{cubicBezierEaseInOut:dx}=xy;function ux({name:e="fade-in",enterDuration:t="0.2s",leaveDuration:n="0.2s",enterCubicBezier:r=dx,leaveCubicBezier:o=dx}={}){return[cu(`&.${e}-transition-enter-active`,{transition:`all ${t} ${r}!important`}),cu(`&.${e}-transition-leave-active`,{transition:`all ${n} ${o}!important`}),cu(`&.${e}-transition-enter-from, &.${e}-transition-leave-to`,{opacity:0}),cu(`&.${e}-transition-leave-from, &.${e}-transition-enter-to`,{opacity:1})]}const px="#FFF",fx="#000",hx="#000",gx="#fff",bx="#fff",vx="#fff",mx="#fff",yx="0.82",xx="0.72",wx="0.38",Cx="0.24",Sx="0.18",kx="0.6",_x="0.5",Ex="0.2",Rx=".08",Ox="0",Ax="0.25",Px="0.4",Tx="#36ad6a",$x="#18a058",zx="#0c7a43",Mx="#36ad6a",Fx="#4098fc",Nx="#2080f0",Bx="#1060c9",Ix="#4098fc",Lx="#de576d",jx="#d03050",Dx="#ab1f3f",Hx="#de576d",Wx="#fcb040",Ux="#f0a020",qx="#c97c10",Kx="#fcb040",Vx="#36ad6a",Gx="#18a058",Zx="#0c7a43",Xx="#36ad6a",Qx=Xu(px),Yx=Xu(fx),Jx=`rgba(${Yx.slice(0,3).join(", ")}, `;function ew(e){return`${Jx+String(e)})`}function tw(e){const t=Array.from(Yx);return t[3]=Number(e),Ju(Qx,t)}const nw=Object.assign(Object.assign({name:"common"},xy),{baseColor:px,primaryColor:$x,primaryColorHover:Tx,primaryColorPressed:zx,primaryColorSuppl:Mx,infoColor:Nx,infoColorHover:Fx,infoColorPressed:Bx,infoColorSuppl:Ix,successColor:Gx,successColorHover:Vx,successColorPressed:Zx,successColorSuppl:Xx,warningColor:Ux,warningColorHover:Wx,warningColorPressed:qx,warningColorSuppl:Kx,errorColor:jx,errorColorHover:Lx,errorColorPressed:Dx,errorColorSuppl:Hx,textColorBase:hx,textColor1:"rgb(31, 34, 37)",textColor2:"rgb(51, 54, 57)",textColor3:"rgb(118, 124, 130)",textColorDisabled:tw(Cx),placeholderColor:tw(Cx),placeholderColorDisabled:tw(Sx),iconColor:tw(Cx),iconColorHover:tp(tw(Cx),{lightness:.75}),iconColorPressed:tp(tw(Cx),{lightness:.9}),iconColorDisabled:tw(Sx),opacity1:yx,opacity2:xx,opacity3:wx,opacity4:Cx,opacity5:Sx,dividerColor:"rgb(239, 239, 245)",borderColor:"rgb(224, 224, 230)",closeIconColor:tw(Number(kx)),closeIconColorHover:tw(Number(kx)),closeIconColorPressed:tw(Number(kx)),closeColorHover:"rgba(0, 0, 0, .09)",closeColorPressed:"rgba(0, 0, 0, .13)",clearColor:tw(Cx),clearColorHover:tp(tw(Cx),{lightness:.75}),clearColorPressed:tp(tw(Cx),{lightness:.9}),scrollbarColor:ew(Ax),scrollbarColorHover:ew(Px),scrollbarWidth:"5px",scrollbarHeight:"5px",scrollbarBorderRadius:"5px",progressRailColor:tw(Rx),railColor:"rgb(219, 219, 223)",popoverColor:gx,tableColor:bx,cardColor:bx,modalColor:vx,bodyColor:mx,tagColor:"#eee",avatarColor:tw(Ex),invertedColor:"rgb(0, 20, 40)",inputColor:tw(Ox),codeColor:"rgb(244, 244, 248)",tabColor:"rgb(247, 247, 250)",actionColor:"rgb(250, 250, 252)",tableHeaderColor:"rgb(250, 250, 252)",hoverColor:"rgb(243, 243, 245)",tableColorHover:"rgba(0, 0, 100, 0.03)",tableColorStriped:"rgba(0, 0, 100, 0.02)",pressedColor:"rgb(237, 237, 239)",opacityDisabled:_x,inputColorDisabled:"rgb(250, 250, 252)",buttonColor2:"rgba(46, 51, 56, .05)",buttonColor2Hover:"rgba(46, 51, 56, .09)",buttonColor2Pressed:"rgba(46, 51, 56, .13)",boxShadow1:"0 1px 2px -2px rgba(0, 0, 0, .08), 0 3px 6px 0 rgba(0, 0, 0, .06), 0 5px 12px 4px rgba(0, 0, 0, .04)",boxShadow2:"0 3px 6px -4px rgba(0, 0, 0, .12), 0 6px 16px 0 rgba(0, 0, 0, .08), 0 9px 28px 8px rgba(0, 0, 0, .05)",boxShadow3:"0 6px 16px -9px rgba(0, 0, 0, .08), 0 9px 28px 0 rgba(0, 0, 0, .05), 0 12px 48px 16px rgba(0, 0, 0, .03)"}),rw={railInsetHorizontalBottom:"auto 2px 4px 2px",railInsetHorizontalTop:"4px 2px auto 2px",railInsetVerticalRight:"2px 4px 2px auto",railInsetVerticalLeft:"2px auto 2px 4px",railColor:"transparent"};const ow={name:"Scrollbar",common:nw,self:function(e){const{scrollbarColor:t,scrollbarColorHover:n,scrollbarHeight:r,scrollbarWidth:o,scrollbarBorderRadius:i}=e;return Object.assign(Object.assign({},rw),{height:r,width:o,borderRadius:i,color:t,colorHover:n})}},iw=uu("scrollbar","\n overflow: hidden;\n position: relative;\n z-index: auto;\n height: 100%;\n width: 100%;\n",[cu(">",[uu("scrollbar-container","\n width: 100%;\n overflow: scroll;\n height: 100%;\n min-height: inherit;\n max-height: inherit;\n scrollbar-width: none;\n ",[cu("&::-webkit-scrollbar, &::-webkit-scrollbar-track-piece, &::-webkit-scrollbar-thumb","\n width: 0;\n height: 0;\n display: none;\n "),cu(">",[uu("scrollbar-content","\n box-sizing: border-box;\n min-width: 100%;\n ")])])]),cu(">, +",[uu("scrollbar-rail","\n position: absolute;\n pointer-events: none;\n user-select: none;\n background: var(--n-scrollbar-rail-color);\n -webkit-user-select: none;\n ",[fu("horizontal","\n height: var(--n-scrollbar-height);\n ",[cu(">",[pu("scrollbar","\n height: var(--n-scrollbar-height);\n border-radius: var(--n-scrollbar-border-radius);\n right: 0;\n ")])]),fu("horizontal--top","\n top: var(--n-scrollbar-rail-top-horizontal-top); \n right: var(--n-scrollbar-rail-right-horizontal-top); \n bottom: var(--n-scrollbar-rail-bottom-horizontal-top); \n left: var(--n-scrollbar-rail-left-horizontal-top); \n "),fu("horizontal--bottom","\n top: var(--n-scrollbar-rail-top-horizontal-bottom); \n right: var(--n-scrollbar-rail-right-horizontal-bottom); \n bottom: var(--n-scrollbar-rail-bottom-horizontal-bottom); \n left: var(--n-scrollbar-rail-left-horizontal-bottom); \n "),fu("vertical","\n width: var(--n-scrollbar-width);\n ",[cu(">",[pu("scrollbar","\n width: var(--n-scrollbar-width);\n border-radius: var(--n-scrollbar-border-radius);\n bottom: 0;\n ")])]),fu("vertical--left","\n top: var(--n-scrollbar-rail-top-vertical-left); \n right: var(--n-scrollbar-rail-right-vertical-left); \n bottom: var(--n-scrollbar-rail-bottom-vertical-left); \n left: var(--n-scrollbar-rail-left-vertical-left); \n "),fu("vertical--right","\n top: var(--n-scrollbar-rail-top-vertical-right); \n right: var(--n-scrollbar-rail-right-vertical-right); \n bottom: var(--n-scrollbar-rail-bottom-vertical-right); \n left: var(--n-scrollbar-rail-left-vertical-right); \n "),fu("disabled",[cu(">",[pu("scrollbar","pointer-events: none;")])]),cu(">",[pu("scrollbar","\n z-index: 1;\n position: absolute;\n cursor: pointer;\n pointer-events: all;\n background-color: var(--n-scrollbar-color);\n transition: background-color .2s var(--n-scrollbar-bezier);\n ",[ux(),cu("&:hover","background-color: var(--n-scrollbar-color-hover);")])])])])]),aw=qn({name:"Scrollbar",props:Object.assign(Object.assign({},Ey.props),{duration:{type:Number,default:0},scrollable:{type:Boolean,default:!0},xScrollable:Boolean,trigger:{type:String,default:"hover"},useUnifiedContainer:Boolean,triggerDisplayManually:Boolean,container:Function,content:Function,containerClass:String,containerStyle:[String,Object],contentClass:[String,Array],contentStyle:[String,Object],horizontalRailStyle:[String,Object],verticalRailStyle:[String,Object],onScroll:Function,onWheel:Function,onResize:Function,internalOnUpdateScrollLeft:Function,internalHoistYRail:Boolean,yPlacement:{type:String,default:"right"},xPlacement:{type:String,default:"bottom"}}),inheritAttrs:!1,setup(e){const{mergedClsPrefixRef:t,inlineThemeDisabled:n,mergedRtlRef:r}=wg(e),o=yy("Scrollbar",r,t),i=$t(null),a=$t(null),l=$t(null),s=$t(null),c=$t(null),d=$t(null),u=$t(null),p=$t(null),f=$t(null),h=$t(null),g=$t(null),b=$t(0),v=$t(0),m=$t(!1),y=$t(!1);let x,w,C=!1,S=!1,k=0,_=0,E=0,R=0;const O=Fp,A=Ey("Scrollbar","-scrollbar",iw,ow,e,t),P=gi((()=>{const{value:e}=p,{value:t}=d,{value:n}=h;return null===e||null===t||null===n?0:Math.min(e,n*e/t+1.5*Ru(A.value.self.width))})),T=gi((()=>`${P.value}px`)),$=gi((()=>{const{value:e}=f,{value:t}=u,{value:n}=g;return null===e||null===t||null===n?0:n*e/t+1.5*Ru(A.value.self.height)})),z=gi((()=>`${$.value}px`)),M=gi((()=>{const{value:e}=p,{value:t}=b,{value:n}=d,{value:r}=h;if(null===e||null===n||null===r)return 0;{const o=n-e;return o?t/o*(r-P.value):0}})),F=gi((()=>`${M.value}px`)),N=gi((()=>{const{value:e}=f,{value:t}=v,{value:n}=u,{value:r}=g;if(null===e||null===n||null===r)return 0;{const o=n-e;return o?t/o*(r-$.value):0}})),B=gi((()=>`${N.value}px`)),I=gi((()=>{const{value:e}=p,{value:t}=d;return null!==e&&null!==t&&t>e})),L=gi((()=>{const{value:e}=f,{value:t}=u;return null!==e&&null!==t&&t>e})),j=gi((()=>{const{trigger:t}=e;return"none"===t||m.value})),D=gi((()=>{const{trigger:t}=e;return"none"===t||y.value})),H=gi((()=>{const{container:t}=e;return t?t():a.value})),W=gi((()=>{const{content:t}=e;return t?t():l.value})),U=(t,n)=>{if(!e.scrollable)return;if("number"==typeof t)return void K(t,null!=n?n:0,0,!1,"auto");const{left:r,top:o,index:i,elSize:a,position:l,behavior:s,el:c,debounce:d=!0}=t;void 0===r&&void 0===o||K(null!=r?r:0,null!=o?o:0,0,!1,s),void 0!==c?K(0,c.offsetTop,c.offsetHeight,d,s):void 0!==i&&void 0!==a?K(0,i*a,a,d,s):"bottom"===l?K(0,Number.MAX_SAFE_INTEGER,0,!1,s):"top"===l&&K(0,0,0,!1,s)},q=function(e){const t={isDeactivated:!1};let n=!1;return Xn((()=>{t.isDeactivated=!1,n?e():n=!0})),Qn((()=>{t.isDeactivated=!0,n||(n=!0)})),t}((()=>{e.container||U({top:b.value,left:v.value})}));function K(e,t,n,r,o){const{value:i}=H;if(i){if(r){const{scrollTop:r,offsetHeight:a}=i;if(t>r)return void(t+n<=r+a||i.scrollTo({left:e,top:t+n-a,behavior:o}))}i.scrollTo({left:e,top:t,behavior:o})}}function V(){!function(){void 0!==w&&window.clearTimeout(w);w=window.setTimeout((()=>{y.value=!1}),e.duration)}(),function(){void 0!==x&&window.clearTimeout(x);x=window.setTimeout((()=>{m.value=!1}),e.duration)}()}function G(){const{value:e}=H;e&&(b.value=e.scrollTop,v.value=e.scrollLeft*((null==o?void 0:o.value)?-1:1))}function Z(){const{value:e}=H;e&&(b.value=e.scrollTop,v.value=e.scrollLeft*((null==o?void 0:o.value)?-1:1),p.value=e.offsetHeight,f.value=e.offsetWidth,d.value=e.scrollHeight,u.value=e.scrollWidth);const{value:t}=c,{value:n}=s;t&&(g.value=t.offsetWidth),n&&(h.value=n.offsetHeight)}function X(){e.scrollable&&(e.useUnifiedContainer?Z():(!function(){const{value:e}=W;e&&(d.value=e.offsetHeight,u.value=e.offsetWidth);const{value:t}=H;t&&(p.value=t.offsetHeight,f.value=t.offsetWidth);const{value:n}=c,{value:r}=s;n&&(g.value=n.offsetWidth),r&&(h.value=r.offsetHeight)}(),G()))}function Q(e){var t;return!(null===(t=i.value)||void 0===t?void 0:t.contains(_u(e)))}function Y(t){if(!S)return;void 0!==x&&window.clearTimeout(x),void 0!==w&&window.clearTimeout(w);const{value:n}=f,{value:r}=u,{value:i}=$;if(null===n||null===r)return;const a=(null==o?void 0:o.value)?window.innerWidth-t.clientX-E:t.clientX-E,l=r-n;let s=_+a*(r-n)/(n-i);s=Math.min(l,s),s=Math.max(s,0);const{value:c}=H;if(c){c.scrollLeft=s*((null==o?void 0:o.value)?-1:1);const{internalOnUpdateScrollLeft:t}=e;t&&t(s)}}function J(e){e.preventDefault(),e.stopPropagation(),pp("mousemove",window,Y,!0),pp("mouseup",window,J,!0),S=!1,X(),Q(e)&&V()}function ee(e){if(!C)return;void 0!==x&&window.clearTimeout(x),void 0!==w&&window.clearTimeout(w);const{value:t}=p,{value:n}=d,{value:r}=P;if(null===t||null===n)return;const o=e.clientY-R,i=n-t;let a=k+o*(n-t)/(t-r);a=Math.min(i,a),a=Math.max(a,0);const{value:l}=H;l&&(l.scrollTop=a)}function te(e){e.preventDefault(),e.stopPropagation(),pp("mousemove",window,ee,!0),pp("mouseup",window,te,!0),C=!1,X(),Q(e)&&V()}ho((()=>{const{value:e}=L,{value:n}=I,{value:r}=t,{value:o}=c,{value:i}=s;o&&(e?o.classList.remove(`${r}-scrollbar-rail--disabled`):o.classList.add(`${r}-scrollbar-rail--disabled`)),i&&(n?i.classList.remove(`${r}-scrollbar-rail--disabled`):i.classList.add(`${r}-scrollbar-rail--disabled`))})),rr((()=>{e.container||X()})),ar((()=>{void 0!==x&&window.clearTimeout(x),void 0!==w&&window.clearTimeout(w),pp("mousemove",window,ee,!0),pp("mouseup",window,te,!0)}));const ne=gi((()=>{const{common:{cubicBezierEaseInOut:e},self:{color:t,colorHover:n,height:r,width:i,borderRadius:a,railInsetHorizontalTop:l,railInsetHorizontalBottom:s,railInsetVerticalRight:c,railInsetVerticalLeft:d,railColor:u}}=A.value,{top:p,right:f,bottom:h,left:g}=Au(l),{top:b,right:v,bottom:m,left:y}=Au(s),{top:x,right:w,bottom:C,left:S}=Au((null==o?void 0:o.value)?Yh(c):c),{top:k,right:_,bottom:E,left:R}=Au((null==o?void 0:o.value)?Yh(d):d);return{"--n-scrollbar-bezier":e,"--n-scrollbar-color":t,"--n-scrollbar-color-hover":n,"--n-scrollbar-border-radius":a,"--n-scrollbar-width":i,"--n-scrollbar-height":r,"--n-scrollbar-rail-top-horizontal-top":p,"--n-scrollbar-rail-right-horizontal-top":f,"--n-scrollbar-rail-bottom-horizontal-top":h,"--n-scrollbar-rail-left-horizontal-top":g,"--n-scrollbar-rail-top-horizontal-bottom":b,"--n-scrollbar-rail-right-horizontal-bottom":v,"--n-scrollbar-rail-bottom-horizontal-bottom":m,"--n-scrollbar-rail-left-horizontal-bottom":y,"--n-scrollbar-rail-top-vertical-right":x,"--n-scrollbar-rail-right-vertical-right":w,"--n-scrollbar-rail-bottom-vertical-right":C,"--n-scrollbar-rail-left-vertical-right":S,"--n-scrollbar-rail-top-vertical-left":k,"--n-scrollbar-rail-right-vertical-left":_,"--n-scrollbar-rail-bottom-vertical-left":E,"--n-scrollbar-rail-left-vertical-left":R,"--n-scrollbar-rail-color":u}})),re=n?Sg("scrollbar",void 0,ne,e):void 0,oe={scrollTo:U,scrollBy:(t,n)=>{if(!e.scrollable)return;const{value:r}=H;r&&("object"==typeof t?r.scrollBy(t):r.scrollBy(t,n||0))},sync:X,syncUnifiedContainer:Z,handleMouseEnterWrapper:function(){!function(){void 0!==x&&window.clearTimeout(x);m.value=!0}(),function(){void 0!==w&&window.clearTimeout(w);y.value=!0}(),X()},handleMouseLeaveWrapper:function(){V()}};return Object.assign(Object.assign({},oe),{mergedClsPrefix:t,rtlEnabled:o,containerScrollTop:b,wrapperRef:i,containerRef:a,contentRef:l,yRailRef:s,xRailRef:c,needYBar:I,needXBar:L,yBarSizePx:T,xBarSizePx:z,yBarTopPx:F,xBarLeftPx:B,isShowXBar:j,isShowYBar:D,isIos:O,handleScroll:function(t){const{onScroll:n}=e;n&&n(t),G()},handleContentResize:()=>{q.isDeactivated||X()},handleContainerResize:t=>{if(q.isDeactivated)return;const{onResize:n}=e;n&&n(t),X()},handleYScrollMouseDown:function(e){e.preventDefault(),e.stopPropagation(),C=!0,up("mousemove",window,ee,!0),up("mouseup",window,te,!0),k=b.value,R=e.clientY},handleXScrollMouseDown:function(e){e.preventDefault(),e.stopPropagation(),S=!0,up("mousemove",window,Y,!0),up("mouseup",window,J,!0),_=v.value,E=(null==o?void 0:o.value)?window.innerWidth-e.clientX:e.clientX},cssVars:n?void 0:ne,themeClass:null==re?void 0:re.themeClass,onRender:null==re?void 0:re.onRender})},render(){var e;const{$slots:t,mergedClsPrefix:n,triggerDisplayManually:r,rtlEnabled:o,internalHoistYRail:i,yPlacement:a,xPlacement:l,xScrollable:s}=this;if(!this.scrollable)return null===(e=t.default)||void 0===e?void 0:e.call(t);const c="none"===this.trigger,d=(e,t)=>bi("div",{ref:"yRailRef",class:[`${n}-scrollbar-rail`,`${n}-scrollbar-rail--vertical`,`${n}-scrollbar-rail--vertical--${a}`,e],"data-scrollbar-rail":!0,style:[t||"",this.verticalRailStyle],"aria-hidden":!0},bi(c?mg:Ai,c?null:{name:"fade-in-transition"},{default:()=>this.needYBar&&this.isShowYBar&&!this.isIos?bi("div",{class:`${n}-scrollbar-rail__scrollbar`,style:{height:this.yBarSizePx,top:this.yBarTopPx},onMousedown:this.handleYScrollMouseDown}):null})),u=()=>{var e,a;return null===(e=this.onRender)||void 0===e||e.call(this),bi("div",Yo(this.$attrs,{role:"none",ref:"wrapperRef",class:[`${n}-scrollbar`,this.themeClass,o&&`${n}-scrollbar--rtl`],style:this.cssVars,onMouseenter:r?void 0:this.handleMouseEnterWrapper,onMouseleave:r?void 0:this.handleMouseLeaveWrapper}),[this.container?null===(a=t.default)||void 0===a?void 0:a.call(t):bi("div",{role:"none",ref:"containerRef",class:[`${n}-scrollbar-container`,this.containerClass],style:this.containerStyle,onScroll:this.handleScroll,onWheel:this.onWheel},bi(Oh,{onResize:this.handleContentResize},{default:()=>bi("div",{ref:"contentRef",role:"none",style:[{width:this.xScrollable?"fit-content":null},this.contentStyle],class:[`${n}-scrollbar-content`,this.contentClass]},t)})),i?null:d(void 0,void 0),s&&bi("div",{ref:"xRailRef",class:[`${n}-scrollbar-rail`,`${n}-scrollbar-rail--horizontal`,`${n}-scrollbar-rail--horizontal--${l}`],style:this.horizontalRailStyle,"data-scrollbar-rail":!0,"aria-hidden":!0},bi(c?mg:Ai,c?null:{name:"fade-in-transition"},{default:()=>this.needXBar&&this.isShowXBar&&!this.isIos?bi("div",{class:`${n}-scrollbar-rail__scrollbar`,style:{width:this.xBarSizePx,right:o?this.xBarLeftPx:void 0,left:o?void 0:this.xBarLeftPx},onMousedown:this.handleXScrollMouseDown}):null}))])},p=this.container?u():bi(Oh,{onResize:this.handleContainerResize},{default:u});return i?bi(Oo,null,p,d(this.themeClass,this.cssVars)):p}}),lw=aw;function sw(e){return Array.isArray(e)?e:[e]}const cw="STOP";function dw(e,t){const n=t(e);void 0!==e.children&&n!==cw&&e.children.forEach((e=>dw(e,t)))}function uw(e){return e.children}function pw(e){return e.key}function fw(){return!1}function hw(e){return!0===e.disabled}function gw(e){var t;return null==e?[]:Array.isArray(e)?e:null!==(t=e.checkedKeys)&&void 0!==t?t:[]}function bw(e){var t;return null==e||Array.isArray(e)?[]:null!==(t=e.indeterminateKeys)&&void 0!==t?t:[]}function vw(e,t){const n=new Set(e);return t.forEach((e=>{n.has(e)||n.add(e)})),Array.from(n)}function mw(e,t){const n=new Set(e);return t.forEach((e=>{n.has(e)&&n.delete(e)})),Array.from(n)}function yw(e){return"group"===(null==e?void 0:e.type)}class xw extends Error{constructor(){super(),this.message="SubtreeNotLoadedError: checking a subtree whose required nodes are not fully loaded."}}function ww(e,t,n,r){const o=Sw(t,n,r,!1),i=Sw(e,n,r,!0),a=function(e,t){const n=new Set;return e.forEach((e=>{const r=t.treeNodeMap.get(e);if(void 0!==r){let e=r.parent;for(;null!==e&&!e.disabled&&!n.has(e.key);)n.add(e.key),e=e.parent}})),n}(e,n),l=[];return o.forEach((e=>{(i.has(e)||a.has(e))&&l.push(e)})),l.forEach((e=>o.delete(e))),o}function Cw(e,t){const{checkedKeys:n,keysToCheck:r,keysToUncheck:o,indeterminateKeys:i,cascade:a,leafOnly:l,checkStrategy:s,allowNotLoaded:c}=e;if(!a)return void 0!==r?{checkedKeys:vw(n,r),indeterminateKeys:Array.from(i)}:void 0!==o?{checkedKeys:mw(n,o),indeterminateKeys:Array.from(i)}:{checkedKeys:Array.from(n),indeterminateKeys:Array.from(i)};const{levelTreeNodeMap:d}=t;let u;u=void 0!==o?ww(o,n,t,c):void 0!==r?function(e,t,n,r){return Sw(t.concat(e),n,r,!1)}(r,n,t,c):Sw(n,t,c,!1);const p="parent"===s,f="child"===s||l,h=u,g=new Set;for(let b=Math.max.apply(null,Array.from(d.keys()));b>=0;b-=1){const e=0===b,t=d.get(b);for(const n of t){if(n.isLeaf)continue;const{key:t,shallowLoaded:r}=n;if(f&&r&&n.children.forEach((e=>{!e.disabled&&!e.isLeaf&&e.shallowLoaded&&h.has(e.key)&&h.delete(e.key)})),n.disabled||!r)continue;let o=!0,i=!1,a=!0;for(const e of n.children){const t=e.key;if(!e.disabled)if(a&&(a=!1),h.has(t))i=!0;else{if(g.has(t)){i=!0,o=!1;break}if(o=!1,i)break}}o&&!a?(p&&n.children.forEach((e=>{!e.disabled&&h.has(e.key)&&h.delete(e.key)})),h.add(t)):i&&g.add(t),e&&f&&h.has(t)&&h.delete(t)}}return{checkedKeys:Array.from(h),indeterminateKeys:Array.from(g)}}function Sw(e,t,n,r){const{treeNodeMap:o,getChildren:i}=t,a=new Set,l=new Set(e);return e.forEach((e=>{const t=o.get(e);void 0!==t&&dw(t,(e=>{if(e.disabled)return cw;const{key:t}=e;if(!a.has(t)&&(a.add(t),l.add(t),function(e,t){return!1===e.isLeaf&&!Array.isArray(t(e))}(e.rawNode,i))){if(r)return cw;if(!n)throw new xw}}))})),l}function kw(e,t){const n=e.siblings,r=n.length,{index:o}=e;return t?n[(o+1)%r]:o===n.length-1?null:n[o+1]}function _w(e,t,{loop:n=!1,includeDisabled:r=!1}={}){const o="prev"===t?Ew:kw,i={reverse:"prev"===t};let a=!1,l=null;return function t(s){if(null!==s){if(s===e)if(a){if(!e.disabled&&!e.isGroup)return void(l=e)}else a=!0;else if((!s.disabled||r)&&!s.ignored&&!s.isGroup)return void(l=s);if(s.isGroup){const e=Rw(s,i);null!==e?l=e:t(o(s,n))}else{const e=o(s,!1);if(null!==e)t(e);else{const e=function(e){return e.parent}(s);(null==e?void 0:e.isGroup)?t(o(e,n)):n&&t(o(s,!0))}}}}(e),l}function Ew(e,t){const n=e.siblings,r=n.length,{index:o}=e;return t?n[(o-1+r)%r]:0===o?null:n[o-1]}function Rw(e,t={}){const{reverse:n=!1}=t,{children:r}=e;if(r){const{length:e}=r,o=n?-1:e,i=n?-1:1;for(let a=n?e-1:0;a!==o;a+=i){const e=r[a];if(!e.disabled&&!e.ignored){if(!e.isGroup)return e;{const n=Rw(e,t);if(null!==n)return n}}}}return null}const Ow={getChild(){return this.ignored?null:Rw(this)},getParent(){const{parent:e}=this;return(null==e?void 0:e.isGroup)?e.getParent():e},getNext(e={}){return _w(this,"next",e)},getPrev(e={}){return _w(this,"prev",e)}};function Aw(e,t,n,r,o,i=null,a=0){const l=[];return e.forEach(((s,c)=>{var d;const u=Object.create(r);if(u.rawNode=s,u.siblings=l,u.level=a,u.index=c,u.isFirstChild=0===c,u.isLastChild=c+1===e.length,u.parent=i,!u.ignored){const e=o(s);Array.isArray(e)&&(u.children=Aw(e,t,n,r,o,u,a+1))}l.push(u),t.set(u.key,u),n.has(a)||n.set(a,[]),null===(d=n.get(a))||void 0===d||d.push(u)})),l}function Pw(e,t={}){var n;const r=new Map,o=new Map,{getDisabled:i=hw,getIgnored:a=fw,getIsGroup:l=yw,getKey:s=pw}=t,c=null!==(n=t.getChildren)&&void 0!==n?n:uw,d=t.ignoreEmptyChildren?e=>{const t=c(e);return Array.isArray(t)?t.length?t:null:t}:c,u=Object.assign({get key(){return s(this.rawNode)},get disabled(){return i(this.rawNode)},get isGroup(){return l(this.rawNode)},get isLeaf(){return function(e,t){const{isLeaf:n}=e;return void 0!==n?n:!t(e)}(this.rawNode,d)},get shallowLoaded(){return function(e,t){const{isLeaf:n}=e;return!(!1===n&&!Array.isArray(t(e)))}(this.rawNode,d)},get ignored(){return a(this.rawNode)},contains(e){return function(e,t){const n=e.key;for(;t;){if(t.key===n)return!0;t=t.parent}return!1}(this,e)}},Ow),p=Aw(e,r,o,u,d);function f(e){if(null==e)return null;const t=r.get(e);return t&&!t.ignored?t:null}const h={treeNodes:p,treeNodeMap:r,levelTreeNodeMap:o,maxLevel:Math.max(...o.keys()),getChildren:d,getFlattenedNodes:e=>function(e,t){const n=t?new Set(t):void 0,r=[];return function e(t){t.forEach((t=>{r.push(t),t.isLeaf||!t.children||t.ignored||(t.isGroup||void 0===n||n.has(t.key))&&e(t.children)}))}(e),r}(p,e),getNode:function(e){if(null==e)return null;const t=r.get(e);return!t||t.isGroup||t.ignored?null:t},getPrev:function(e,t){const n=f(e);return n?n.getPrev(t):null},getNext:function(e,t){const n=f(e);return n?n.getNext(t):null},getParent:function(e){const t=f(e);return t?t.getParent():null},getChild:function(e){const t=f(e);return t?t.getChild():null},getFirstAvailableNode:()=>function(e){if(0===e.length)return null;const t=e[0];return t.isGroup||t.ignored||t.disabled?t.getNext():t}(p),getPath:(e,t={})=>function(e,{includeGroup:t=!1,includeSelf:n=!0},r){var o;const i=r.treeNodeMap;let a=null==e?null:null!==(o=i.get(e))&&void 0!==o?o:null;const l={keyPath:[],treeNodePath:[],treeNode:a};if(null==a?void 0:a.ignored)return l.treeNode=null,l;for(;a;)a.ignored||!t&&a.isGroup||l.treeNodePath.push(a),a=a.parent;return l.treeNodePath.reverse(),n||l.treeNodePath.pop(),l.keyPath=l.treeNodePath.map((e=>e.key)),l}(e,t,h),getCheckedKeys(e,t={}){const{cascade:n=!0,leafOnly:r=!1,checkStrategy:o="all",allowNotLoaded:i=!1}=t;return Cw({checkedKeys:gw(e),indeterminateKeys:bw(e),cascade:n,leafOnly:r,checkStrategy:o,allowNotLoaded:i},h)},check(e,t,n={}){const{cascade:r=!0,leafOnly:o=!1,checkStrategy:i="all",allowNotLoaded:a=!1}=n;return Cw({checkedKeys:gw(t),indeterminateKeys:bw(t),keysToCheck:null==e?[]:sw(e),cascade:r,leafOnly:o,checkStrategy:i,allowNotLoaded:a},h)},uncheck(e,t,n={}){const{cascade:r=!0,leafOnly:o=!1,checkStrategy:i="all",allowNotLoaded:a=!1}=n;return Cw({checkedKeys:gw(t),indeterminateKeys:bw(t),keysToUncheck:null==e?[]:sw(e),cascade:r,leafOnly:o,checkStrategy:i,allowNotLoaded:a},h)},getNonLeafKeys:(e={})=>function(e,t={}){const{preserveGroup:n=!1}=t,r=[],o=n?e=>{e.isLeaf||(r.push(e.key),i(e.children))}:e=>{e.isLeaf||(e.isGroup||r.push(e.key),i(e.children))};function i(e){e.forEach(o)}return i(e),r}(p,e)};return h}const Tw={iconSizeTiny:"28px",iconSizeSmall:"34px",iconSizeMedium:"40px",iconSizeLarge:"46px",iconSizeHuge:"52px"};const $w={name:"Empty",common:nw,self:function(e){const{textColorDisabled:t,iconColor:n,textColor2:r,fontSizeTiny:o,fontSizeSmall:i,fontSizeMedium:a,fontSizeLarge:l,fontSizeHuge:s}=e;return Object.assign(Object.assign({},Tw),{fontSizeTiny:o,fontSizeSmall:i,fontSizeMedium:a,fontSizeLarge:l,fontSizeHuge:s,textColor:t,iconColor:n,extraTextColor:r})}},zw=uu("empty","\n display: flex;\n flex-direction: column;\n align-items: center;\n font-size: var(--n-font-size);\n",[pu("icon","\n width: var(--n-icon-size);\n height: var(--n-icon-size);\n font-size: var(--n-icon-size);\n line-height: var(--n-icon-size);\n color: var(--n-icon-color);\n transition:\n color .3s var(--n-bezier);\n ",[cu("+",[pu("description","\n margin-top: 8px;\n ")])]),pu("description","\n transition: color .3s var(--n-bezier);\n color: var(--n-text-color);\n "),pu("extra","\n text-align: center;\n transition: color .3s var(--n-bezier);\n margin-top: 12px;\n color: var(--n-extra-text-color);\n ")]),Mw=qn({name:"Empty",props:Object.assign(Object.assign({},Ey.props),{description:String,showDescription:{type:Boolean,default:!0},showIcon:{type:Boolean,default:!0},size:{type:String,default:"medium"},renderIcon:Function}),slots:Object,setup(e){const{mergedClsPrefixRef:t,inlineThemeDisabled:n,mergedComponentPropsRef:r}=wg(e),o=Ey("Empty","-empty",zw,$w,e,t),{localeRef:i}=vy("Empty"),a=gi((()=>{var t,n,o;return null!==(t=e.description)&&void 0!==t?t:null===(o=null===(n=null==r?void 0:r.value)||void 0===n?void 0:n.Empty)||void 0===o?void 0:o.description})),l=gi((()=>{var e,t;return(null===(t=null===(e=null==r?void 0:r.value)||void 0===e?void 0:e.Empty)||void 0===t?void 0:t.renderIcon)||(()=>bi(jy,null))})),s=gi((()=>{const{size:t}=e,{common:{cubicBezierEaseInOut:n},self:{[yu("iconSize",t)]:r,[yu("fontSize",t)]:i,textColor:a,iconColor:l,extraTextColor:s}}=o.value;return{"--n-icon-size":r,"--n-font-size":i,"--n-bezier":n,"--n-text-color":a,"--n-icon-color":l,"--n-extra-text-color":s}})),c=n?Sg("empty",gi((()=>{let t="";const{size:n}=e;return t+=n[0],t})),s,e):void 0;return{mergedClsPrefix:t,mergedRenderIcon:l,localizedDescription:gi((()=>a.value||i.value.description)),cssVars:n?void 0:s,themeClass:null==c?void 0:c.themeClass,onRender:null==c?void 0:c.onRender}},render(){const{$slots:e,mergedClsPrefix:t,onRender:n}=this;return null==n||n(),bi("div",{class:[`${t}-empty`,this.themeClass],style:this.cssVars},this.showIcon?bi("div",{class:`${t}-empty__icon`},e.icon?e.icon():bi(Oy,{clsPrefix:t},{default:this.mergedRenderIcon})):null,this.showDescription?bi("div",{class:`${t}-empty__description`},e.default?e.default():this.localizedDescription):null,e.extra?bi("div",{class:`${t}-empty__extra`},e.extra()):null)}}),Fw={height:"calc(var(--n-option-height) * 7.6)",paddingTiny:"4px 0",paddingSmall:"4px 0",paddingMedium:"4px 0",paddingLarge:"4px 0",paddingHuge:"4px 0",optionPaddingTiny:"0 12px",optionPaddingSmall:"0 12px",optionPaddingMedium:"0 12px",optionPaddingLarge:"0 12px",optionPaddingHuge:"0 12px",loadingSize:"18px"};const Nw={name:"InternalSelectMenu",common:nw,peers:{Scrollbar:ow,Empty:$w},self:function(e){const{borderRadius:t,popoverColor:n,textColor3:r,dividerColor:o,textColor2:i,primaryColorPressed:a,textColorDisabled:l,primaryColor:s,opacityDisabled:c,hoverColor:d,fontSizeTiny:u,fontSizeSmall:p,fontSizeMedium:f,fontSizeLarge:h,fontSizeHuge:g,heightTiny:b,heightSmall:v,heightMedium:m,heightLarge:y,heightHuge:x}=e;return Object.assign(Object.assign({},Fw),{optionFontSizeTiny:u,optionFontSizeSmall:p,optionFontSizeMedium:f,optionFontSizeLarge:h,optionFontSizeHuge:g,optionHeightTiny:b,optionHeightSmall:v,optionHeightMedium:m,optionHeightLarge:y,optionHeightHuge:x,borderRadius:t,color:n,groupHeaderTextColor:r,actionDividerColor:o,optionTextColor:i,optionTextColorPressed:a,optionTextColorDisabled:l,optionTextColorActive:s,optionOpacityDisabled:c,optionCheckColor:s,optionColorPending:d,optionColorActive:"rgba(0, 0, 0, 0)",optionColorActivePending:d,actionTextColor:i,loadingColor:s})}},Bw=qn({name:"NBaseSelectGroupHeader",props:{clsPrefix:{type:String,required:!0},tmNode:{type:Object,required:!0}},setup(){const{renderLabelRef:e,renderOptionRef:t,labelFieldRef:n,nodePropsRef:r}=Wr(Ip);return{labelField:n,nodeProps:r,renderLabel:e,renderOption:t}},render(){const{clsPrefix:e,renderLabel:t,renderOption:n,nodeProps:r,tmNode:{rawNode:o}}=this,i=null==r?void 0:r(o),a=t?t(o,!1):pg(o[this.labelField],o,!1),l=bi("div",Object.assign({},i,{class:[`${e}-base-select-group-header`,null==i?void 0:i.class]}),a);return o.render?o.render({node:l,option:o}):n?n({node:l,option:o,selected:!1}):l}});const Iw=qn({name:"NBaseSelectOption",props:{clsPrefix:{type:String,required:!0},tmNode:{type:Object,required:!0}},setup(e){const{valueRef:t,pendingTmNodeRef:n,multipleRef:r,valueSetRef:o,renderLabelRef:i,renderOptionRef:a,labelFieldRef:l,valueFieldRef:s,showCheckmarkRef:c,nodePropsRef:d,handleOptionClick:u,handleOptionMouseEnter:p}=Wr(Ip),f=hp((()=>{const{value:t}=n;return!!t&&e.tmNode.key===t.key}));return{multiple:r,isGrouped:hp((()=>{const{tmNode:t}=e,{parent:n}=t;return n&&"group"===n.rawNode.type})),showCheckmark:c,nodeProps:d,isPending:f,isSelected:hp((()=>{const{value:n}=t,{value:i}=r;if(null===n)return!1;const a=e.tmNode.rawNode[s.value];if(i){const{value:e}=o;return e.has(a)}return n===a})),labelField:l,renderLabel:i,renderOption:a,handleMouseMove:function(t){const{tmNode:n}=e,{value:r}=f;n.disabled||r||p(t,n)},handleMouseEnter:function(t){const{tmNode:n}=e;n.disabled||p(t,n)},handleClick:function(t){const{tmNode:n}=e;n.disabled||u(t,n)}}},render(){const{clsPrefix:e,tmNode:{rawNode:t},isSelected:n,isPending:r,isGrouped:o,showCheckmark:i,nodeProps:a,renderOption:l,renderLabel:s,handleClick:c,handleMouseEnter:d,handleMouseMove:u}=this,p=function(e,t){return bi(Ai,{name:"fade-in-scale-up-transition"},{default:()=>e?bi(Oy,{clsPrefix:t,class:`${t}-base-select-option__check`},{default:()=>bi(My)}):null})}(n,e),f=s?[s(t,n),i&&p]:[pg(t[this.labelField],t,n),i&&p],h=null==a?void 0:a(t),g=bi("div",Object.assign({},h,{class:[`${e}-base-select-option`,t.class,null==h?void 0:h.class,{[`${e}-base-select-option--disabled`]:t.disabled,[`${e}-base-select-option--selected`]:n,[`${e}-base-select-option--grouped`]:o,[`${e}-base-select-option--pending`]:r,[`${e}-base-select-option--show-checkmark`]:i}],style:[(null==h?void 0:h.style)||"",t.style||""],onClick:dg([c,null==h?void 0:h.onClick]),onMouseenter:dg([d,null==h?void 0:h.onMouseenter]),onMousemove:dg([u,null==h?void 0:h.onMousemove])}),bi("div",{class:`${e}-base-select-option__content`},f));return t.render?t.render({node:g,option:t,selected:n}):l?l({node:g,option:t,selected:n}):g}}),{cubicBezierEaseIn:Lw,cubicBezierEaseOut:jw}=xy;function Dw({transformOrigin:e="inherit",duration:t=".2s",enterScale:n=".9",originalTransform:r="",originalTransition:o=""}={}){return[cu("&.fade-in-scale-up-transition-leave-active",{transformOrigin:e,transition:`opacity ${t} ${Lw}, transform ${t} ${Lw} ${o&&`,${o}`}`}),cu("&.fade-in-scale-up-transition-enter-active",{transformOrigin:e,transition:`opacity ${t} ${jw}, transform ${t} ${jw} ${o&&`,${o}`}`}),cu("&.fade-in-scale-up-transition-enter-from, &.fade-in-scale-up-transition-leave-to",{opacity:0,transform:`${r} scale(${n})`}),cu("&.fade-in-scale-up-transition-leave-from, &.fade-in-scale-up-transition-enter-to",{opacity:1,transform:`${r} scale(1)`})]}const Hw=uu("base-select-menu","\n line-height: 1.5;\n outline: none;\n z-index: 0;\n position: relative;\n border-radius: var(--n-border-radius);\n transition:\n background-color .3s var(--n-bezier),\n box-shadow .3s var(--n-bezier);\n background-color: var(--n-color);\n",[uu("scrollbar","\n max-height: var(--n-height);\n "),uu("virtual-list","\n max-height: var(--n-height);\n "),uu("base-select-option","\n min-height: var(--n-option-height);\n font-size: var(--n-option-font-size);\n display: flex;\n align-items: center;\n ",[pu("content","\n z-index: 1;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n ")]),uu("base-select-group-header","\n min-height: var(--n-option-height);\n font-size: .93em;\n display: flex;\n align-items: center;\n "),uu("base-select-menu-option-wrapper","\n position: relative;\n width: 100%;\n "),pu("loading, empty","\n display: flex;\n padding: 12px 32px;\n flex: 1;\n justify-content: center;\n "),pu("loading","\n color: var(--n-loading-color);\n font-size: var(--n-loading-size);\n "),pu("header","\n padding: 8px var(--n-option-padding-left);\n font-size: var(--n-option-font-size);\n transition: \n color .3s var(--n-bezier),\n border-color .3s var(--n-bezier);\n border-bottom: 1px solid var(--n-action-divider-color);\n color: var(--n-action-text-color);\n "),pu("action","\n padding: 8px var(--n-option-padding-left);\n font-size: var(--n-option-font-size);\n transition: \n color .3s var(--n-bezier),\n border-color .3s var(--n-bezier);\n border-top: 1px solid var(--n-action-divider-color);\n color: var(--n-action-text-color);\n "),uu("base-select-group-header","\n position: relative;\n cursor: default;\n padding: var(--n-option-padding);\n color: var(--n-group-header-text-color);\n "),uu("base-select-option","\n cursor: pointer;\n position: relative;\n padding: var(--n-option-padding);\n transition:\n color .3s var(--n-bezier),\n opacity .3s var(--n-bezier);\n box-sizing: border-box;\n color: var(--n-option-text-color);\n opacity: 1;\n ",[fu("show-checkmark","\n padding-right: calc(var(--n-option-padding-right) + 20px);\n "),cu("&::before",'\n content: "";\n position: absolute;\n left: 4px;\n right: 4px;\n top: 0;\n bottom: 0;\n border-radius: var(--n-border-radius);\n transition: background-color .3s var(--n-bezier);\n '),cu("&:active","\n color: var(--n-option-text-color-pressed);\n "),fu("grouped","\n padding-left: calc(var(--n-option-padding-left) * 1.5);\n "),fu("pending",[cu("&::before","\n background-color: var(--n-option-color-pending);\n ")]),fu("selected","\n color: var(--n-option-text-color-active);\n ",[cu("&::before","\n background-color: var(--n-option-color-active);\n "),fu("pending",[cu("&::before","\n background-color: var(--n-option-color-active-pending);\n ")])]),fu("disabled","\n cursor: not-allowed;\n ",[hu("selected","\n color: var(--n-option-text-color-disabled);\n "),fu("selected","\n opacity: var(--n-option-opacity-disabled);\n ")]),pu("check","\n font-size: 16px;\n position: absolute;\n right: calc(var(--n-option-padding-right) - 4px);\n top: calc(50% - 7px);\n color: var(--n-option-check-color);\n transition: color .3s var(--n-bezier);\n ",[Dw({enterScale:"0.5"})])])]),Ww=qn({name:"InternalSelectMenu",props:Object.assign(Object.assign({},Ey.props),{clsPrefix:{type:String,required:!0},scrollable:{type:Boolean,default:!0},treeMate:{type:Object,required:!0},multiple:Boolean,size:{type:String,default:"medium"},value:{type:[String,Number,Array],default:null},autoPending:Boolean,virtualScroll:{type:Boolean,default:!0},show:{type:Boolean,default:!0},labelField:{type:String,default:"label"},valueField:{type:String,default:"value"},loading:Boolean,focusable:Boolean,renderLabel:Function,renderOption:Function,nodeProps:Function,showCheckmark:{type:Boolean,default:!0},onMousedown:Function,onScroll:Function,onFocus:Function,onBlur:Function,onKeyup:Function,onKeydown:Function,onTabOut:Function,onMouseenter:Function,onMouseleave:Function,onResize:Function,resetMenuOnOptionsChange:{type:Boolean,default:!0},inlineThemeDisabled:Boolean,onToggle:Function}),setup(e){const{mergedClsPrefixRef:t,mergedRtlRef:n}=wg(e),r=yy("InternalSelectMenu",n,t),o=Ey("InternalSelectMenu","-internal-select-menu",Hw,Nw,e,Dt(e,"clsPrefix")),i=$t(null),a=$t(null),l=$t(null),s=gi((()=>e.treeMate.getFlattenedNodes())),c=gi((()=>function(e){const t=new Map;return e.forEach(((e,n)=>{t.set(e.key,n)})),e=>{var n;return null!==(n=t.get(e))&&void 0!==n?n:null}}(s.value))),d=$t(null);function u(){const{value:t}=d;t&&!e.treeMate.getNode(t.key)&&(d.value=null)}let p;go((()=>e.show),(t=>{t?p=go((()=>e.treeMate),(()=>{e.resetMenuOnOptionsChange?(e.autoPending?function(){const{treeMate:t}=e;let n=null;const{value:r}=e;null===r?n=t.getFirstAvailableNode():(n=e.multiple?t.getNode((r||[])[(r||[]).length-1]):t.getNode(r),n&&!n.disabled||(n=t.getFirstAvailableNode())),m(n||null)}():u(),an(y)):u()}),{immediate:!0}):null==p||p()}),{immediate:!0}),ar((()=>{null==p||p()}));const f=gi((()=>Ru(o.value.self[yu("optionHeight",e.size)]))),h=gi((()=>Au(o.value.self[yu("padding",e.size)]))),g=gi((()=>e.multiple&&Array.isArray(e.value)?new Set(e.value):new Set)),b=gi((()=>{const e=s.value;return e&&0===e.length}));function v(t){const{onScroll:n}=e;n&&n(t)}function m(e,t=!1){d.value=e,t&&y()}function y(){var t,n;const r=d.value;if(!r)return;const o=c.value(r.key);null!==o&&(e.virtualScroll?null===(t=a.value)||void 0===t||t.scrollTo({index:o}):null===(n=l.value)||void 0===n||n.scrollTo({index:o,elSize:f.value}))}Hr(Ip,{handleOptionMouseEnter:function(e,t){t.disabled||m(t,!1)},handleOptionClick:function(t,n){n.disabled||function(t){const{onToggle:n}=e;n&&n(t)}(n)},valueSetRef:g,pendingTmNodeRef:d,nodePropsRef:Dt(e,"nodeProps"),showCheckmarkRef:Dt(e,"showCheckmark"),multipleRef:Dt(e,"multiple"),valueRef:Dt(e,"value"),renderLabelRef:Dt(e,"renderLabel"),renderOptionRef:Dt(e,"renderOption"),labelFieldRef:Dt(e,"labelField"),valueFieldRef:Dt(e,"valueField")}),Hr(Lp,i),rr((()=>{const{value:e}=l;e&&e.sync()}));const x=gi((()=>{const{size:t}=e,{common:{cubicBezierEaseInOut:n},self:{height:r,borderRadius:i,color:a,groupHeaderTextColor:l,actionDividerColor:s,optionTextColorPressed:c,optionTextColor:d,optionTextColorDisabled:u,optionTextColorActive:p,optionOpacityDisabled:f,optionCheckColor:h,actionTextColor:g,optionColorPending:b,optionColorActive:v,loadingColor:m,loadingSize:y,optionColorActivePending:x,[yu("optionFontSize",t)]:w,[yu("optionHeight",t)]:C,[yu("optionPadding",t)]:S}}=o.value;return{"--n-height":r,"--n-action-divider-color":s,"--n-action-text-color":g,"--n-bezier":n,"--n-border-radius":i,"--n-color":a,"--n-option-font-size":w,"--n-group-header-text-color":l,"--n-option-check-color":h,"--n-option-color-pending":b,"--n-option-color-active":v,"--n-option-color-active-pending":x,"--n-option-height":C,"--n-option-opacity-disabled":f,"--n-option-text-color":d,"--n-option-text-color-active":p,"--n-option-text-color-disabled":u,"--n-option-text-color-pressed":c,"--n-option-padding":S,"--n-option-padding-left":Au(S,"left"),"--n-option-padding-right":Au(S,"right"),"--n-loading-color":m,"--n-loading-size":y}})),{inlineThemeDisabled:w}=e,C=w?Sg("internal-select-menu",gi((()=>e.size[0])),x,e):void 0,S={selfRef:i,next:function(){const{value:e}=d;e&&m(e.getNext({loop:!0}),!0)},prev:function(){const{value:e}=d;e&&m(e.getPrev({loop:!0}),!0)},getPendingTmNode:function(){const{value:e}=d;return e||null}};return Vh(i,e.onResize),Object.assign({mergedTheme:o,mergedClsPrefix:t,rtlEnabled:r,virtualListRef:a,scrollbarRef:l,itemSize:f,padding:h,flattenedNodes:s,empty:b,virtualListContainer(){const{value:e}=a;return null==e?void 0:e.listElRef},virtualListContent(){const{value:e}=a;return null==e?void 0:e.itemsElRef},doScroll:v,handleFocusin:function(t){var n,r;(null===(n=i.value)||void 0===n?void 0:n.contains(t.target))&&(null===(r=e.onFocus)||void 0===r||r.call(e,t))},handleFocusout:function(t){var n,r;(null===(n=i.value)||void 0===n?void 0:n.contains(t.relatedTarget))||null===(r=e.onBlur)||void 0===r||r.call(e,t)},handleKeyUp:function(t){var n;ku(t,"action")||null===(n=e.onKeyup)||void 0===n||n.call(e,t)},handleKeyDown:function(t){var n;ku(t,"action")||null===(n=e.onKeydown)||void 0===n||n.call(e,t)},handleMouseDown:function(t){var n;null===(n=e.onMousedown)||void 0===n||n.call(e,t),e.focusable||t.preventDefault()},handleVirtualListResize:function(){var e;null===(e=l.value)||void 0===e||e.sync()},handleVirtualListScroll:function(e){var t;null===(t=l.value)||void 0===t||t.sync(),v(e)},cssVars:w?void 0:x,themeClass:null==C?void 0:C.themeClass,onRender:null==C?void 0:C.onRender},S)},render(){const{$slots:e,virtualScroll:t,clsPrefix:n,mergedTheme:r,themeClass:o,onRender:i}=this;return null==i||i(),bi("div",{ref:"selfRef",tabindex:this.focusable?0:-1,class:[`${n}-base-select-menu`,this.rtlEnabled&&`${n}-base-select-menu--rtl`,o,this.multiple&&`${n}-base-select-menu--multiple`],style:this.cssVars,onFocusin:this.handleFocusin,onFocusout:this.handleFocusout,onKeyup:this.handleKeyUp,onKeydown:this.handleKeyDown,onMousedown:this.handleMouseDown,onMouseenter:this.onMouseenter,onMouseleave:this.onMouseleave},bg(e.header,(e=>e&&bi("div",{class:`${n}-base-select-menu__header`,"data-header":!0,key:"header"},e))),this.loading?bi("div",{class:`${n}-base-select-menu__loading`},bi(cx,{clsPrefix:n,strokeWidth:20})):this.empty?bi("div",{class:`${n}-base-select-menu__empty`,"data-empty":!0},hg(e.empty,(()=>[bi(Mw,{theme:r.peers.Empty,themeOverrides:r.peerOverrides.Empty,size:this.size})]))):bi(aw,{ref:"scrollbarRef",theme:r.peers.Scrollbar,themeOverrides:r.peerOverrides.Scrollbar,scrollable:this.scrollable,container:t?this.virtualListContainer:void 0,content:t?this.virtualListContent:void 0,onScroll:t?void 0:this.doScroll},{default:()=>t?bi(Fh,{ref:"virtualListRef",class:`${n}-virtual-list`,items:this.flattenedNodes,itemSize:this.itemSize,showScrollbar:!1,paddingTop:this.padding.top,paddingBottom:this.padding.bottom,onResize:this.handleVirtualListResize,onScroll:this.handleVirtualListScroll,itemResizable:!0},{default:({item:e})=>e.isGroup?bi(Bw,{key:e.key,clsPrefix:n,tmNode:e}):e.ignored?null:bi(Iw,{clsPrefix:n,key:e.key,tmNode:e})}):bi("div",{class:`${n}-base-select-menu-option-wrapper`,style:{paddingTop:this.padding.top,paddingBottom:this.padding.bottom}},this.flattenedNodes.map((e=>e.isGroup?bi(Bw,{key:e.key,clsPrefix:n,tmNode:e}):bi(Iw,{clsPrefix:n,key:e.key,tmNode:e}))))}),bg(e.action,(e=>e&&[bi("div",{class:`${n}-base-select-menu__action`,"data-action":!0,key:"action"},e),bi(ix,{onFocus:this.onTabOut,key:"focus-detector"})])))}}),Uw={space:"6px",spaceArrow:"10px",arrowOffset:"10px",arrowOffsetVertical:"10px",arrowHeight:"6px",padding:"8px 14px"};const qw={name:"Popover",common:nw,self:function(e){const{boxShadow2:t,popoverColor:n,textColor2:r,borderRadius:o,fontSize:i,dividerColor:a}=e;return Object.assign(Object.assign({},Uw),{fontSize:i,borderRadius:o,color:n,dividerColor:a,textColor:r,boxShadow:t})}},Kw={top:"bottom",bottom:"top",left:"right",right:"left"},Vw="var(--n-arrow-height) * 1.414",Gw=cu([uu("popover","\n transition:\n box-shadow .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n color .3s var(--n-bezier);\n position: relative;\n font-size: var(--n-font-size);\n color: var(--n-text-color);\n box-shadow: var(--n-box-shadow);\n word-break: break-word;\n ",[cu(">",[uu("scrollbar","\n height: inherit;\n max-height: inherit;\n ")]),hu("raw","\n background-color: var(--n-color);\n border-radius: var(--n-border-radius);\n ",[hu("scrollable",[hu("show-header-or-footer","padding: var(--n-padding);")])]),pu("header","\n padding: var(--n-padding);\n border-bottom: 1px solid var(--n-divider-color);\n transition: border-color .3s var(--n-bezier);\n "),pu("footer","\n padding: var(--n-padding);\n border-top: 1px solid var(--n-divider-color);\n transition: border-color .3s var(--n-bezier);\n "),fu("scrollable, show-header-or-footer",[pu("content","\n padding: var(--n-padding);\n ")])]),uu("popover-shared","\n transform-origin: inherit;\n ",[uu("popover-arrow-wrapper","\n position: absolute;\n overflow: hidden;\n pointer-events: none;\n ",[uu("popover-arrow",`\n transition: background-color .3s var(--n-bezier);\n position: absolute;\n display: block;\n width: calc(${Vw});\n height: calc(${Vw});\n box-shadow: 0 0 8px 0 rgba(0, 0, 0, .12);\n transform: rotate(45deg);\n background-color: var(--n-color);\n pointer-events: all;\n `)]),cu("&.popover-transition-enter-from, &.popover-transition-leave-to","\n opacity: 0;\n transform: scale(.85);\n "),cu("&.popover-transition-enter-to, &.popover-transition-leave-from","\n transform: scale(1);\n opacity: 1;\n "),cu("&.popover-transition-enter-active","\n transition:\n box-shadow .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n color .3s var(--n-bezier),\n opacity .15s var(--n-bezier-ease-out),\n transform .15s var(--n-bezier-ease-out);\n "),cu("&.popover-transition-leave-active","\n transition:\n box-shadow .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n color .3s var(--n-bezier),\n opacity .15s var(--n-bezier-ease-in),\n transform .15s var(--n-bezier-ease-in);\n ")]),Yw("top-start",`\n top: calc(${Vw} / -2);\n left: calc(${Qw("top-start")} - var(--v-offset-left));\n `),Yw("top",`\n top: calc(${Vw} / -2);\n transform: translateX(calc(${Vw} / -2)) rotate(45deg);\n left: 50%;\n `),Yw("top-end",`\n top: calc(${Vw} / -2);\n right: calc(${Qw("top-end")} + var(--v-offset-left));\n `),Yw("bottom-start",`\n bottom: calc(${Vw} / -2);\n left: calc(${Qw("bottom-start")} - var(--v-offset-left));\n `),Yw("bottom",`\n bottom: calc(${Vw} / -2);\n transform: translateX(calc(${Vw} / -2)) rotate(45deg);\n left: 50%;\n `),Yw("bottom-end",`\n bottom: calc(${Vw} / -2);\n right: calc(${Qw("bottom-end")} + var(--v-offset-left));\n `),Yw("left-start",`\n left: calc(${Vw} / -2);\n top: calc(${Qw("left-start")} - var(--v-offset-top));\n `),Yw("left",`\n left: calc(${Vw} / -2);\n transform: translateY(calc(${Vw} / -2)) rotate(45deg);\n top: 50%;\n `),Yw("left-end",`\n left: calc(${Vw} / -2);\n bottom: calc(${Qw("left-end")} + var(--v-offset-top));\n `),Yw("right-start",`\n right: calc(${Vw} / -2);\n top: calc(${Qw("right-start")} - var(--v-offset-top));\n `),Yw("right",`\n right: calc(${Vw} / -2);\n transform: translateY(calc(${Vw} / -2)) rotate(45deg);\n top: 50%;\n `),Yw("right-end",`\n right: calc(${Vw} / -2);\n bottom: calc(${Qw("right-end")} + var(--v-offset-top));\n `),...(Zw={top:["right-start","left-start"],right:["top-end","bottom-end"],bottom:["right-end","left-end"],left:["top-start","bottom-start"]},Xw=(e,t)=>{const n=["right","left"].includes(t),r=n?"width":"height";return e.map((e=>{const o="end"===e.split("-")[1],i=`calc((var(--v-target-${r}, 0px) - ${Vw}) / 2)`,a=Qw(e);return cu(`[v-placement="${e}"] >`,[uu("popover-shared",[fu("center-arrow",[uu("popover-arrow",`${t}: calc(max(${i}, ${a}) ${o?"+":"-"} var(--v-offset-${n?"left":"top"}));`)])])])}))},(Qg(Zw)?Xg:fy)(Zw,ey(Xw)))]);var Zw,Xw;function Qw(e){return["top","bottom"].includes(e.split("-")[0])?"var(--n-arrow-offset)":"var(--n-arrow-offset-vertical)"}function Yw(e,t){const n=e.split("-")[0],r=["top","bottom"].includes(n)?"height: var(--n-space-arrow);":"width: var(--n-space-arrow);";return cu(`[v-placement="${e}"] >`,[uu("popover-shared",`\n margin-${Kw[n]}: var(--n-space);\n `,[fu("show-arrow",`\n margin-${Kw[n]}: var(--n-space-arrow);\n `),fu("overlap","\n margin: 0;\n "),mu("popover-arrow-wrapper",`\n right: 0;\n left: 0;\n top: 0;\n bottom: 0;\n ${n}: 100%;\n ${Kw[n]}: auto;\n ${r}\n `,[uu("popover-arrow",t)])])])}const Jw=Object.assign(Object.assign({},Ey.props),{to:qp.propTo,show:Boolean,trigger:String,showArrow:Boolean,delay:Number,duration:Number,raw:Boolean,arrowPointToCenter:Boolean,arrowClass:String,arrowStyle:[String,Object],arrowWrapperClass:String,arrowWrapperStyle:[String,Object],displayDirective:String,x:Number,y:Number,flip:Boolean,overlap:Boolean,placement:String,width:[Number,String],keepAliveOnHover:Boolean,scrollable:Boolean,contentClass:String,contentStyle:[Object,String],headerClass:String,headerStyle:[Object,String],footerClass:String,footerStyle:[Object,String],internalDeactivateImmediately:Boolean,animated:Boolean,onClickoutside:Function,internalTrapFocus:Boolean,internalOnAfterLeave:Function,minWidth:Number,maxWidth:Number});function eC({arrowClass:e,arrowStyle:t,arrowWrapperClass:n,arrowWrapperStyle:r,clsPrefix:o}){return bi("div",{key:"__popover-arrow__",style:r,class:[`${o}-popover-arrow-wrapper`,n]},bi("div",{class:[`${o}-popover-arrow`,e],style:t}))}const tC=qn({name:"PopoverBody",inheritAttrs:!1,props:Jw,setup(e,{slots:t,attrs:n}){const{namespaceRef:r,mergedClsPrefixRef:o,inlineThemeDisabled:i}=wg(e),a=Ey("Popover","-popover",Gw,qw,e,o),l=$t(null),s=Wr("NPopover"),c=$t(null),d=$t(e.show),u=$t(!1);ho((()=>{const{show:t}=e;!t||(void 0===Jh&&(Jh=navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")),Jh)||e.internalDeactivateImmediately||(u.value=!0)}));const p=gi((()=>{const{trigger:t,onClickoutside:n}=e,r=[],{positionManuallyRef:{value:o}}=s;return o||("click"!==t||n||r.push([mf,y,void 0,{capture:!0}]),"hover"===t&&r.push([bf,m])),n&&r.push([mf,y,void 0,{capture:!0}]),("show"===e.displayDirective||e.animated&&u.value)&&r.push([qi,e.show]),r})),f=gi((()=>{const{common:{cubicBezierEaseInOut:e,cubicBezierEaseIn:t,cubicBezierEaseOut:n},self:{space:r,spaceArrow:o,padding:i,fontSize:l,textColor:s,dividerColor:c,color:d,boxShadow:u,borderRadius:p,arrowHeight:f,arrowOffset:h,arrowOffsetVertical:g}}=a.value;return{"--n-box-shadow":u,"--n-bezier":e,"--n-bezier-ease-in":t,"--n-bezier-ease-out":n,"--n-font-size":l,"--n-text-color":s,"--n-color":d,"--n-divider-color":c,"--n-border-radius":p,"--n-arrow-height":f,"--n-arrow-offset":h,"--n-arrow-offset-vertical":g,"--n-padding":i,"--n-space":r,"--n-space-arrow":o}})),h=gi((()=>{const t="trigger"===e.width?void 0:Qh(e.width),n=[];t&&n.push({width:t});const{maxWidth:r,minWidth:o}=e;return r&&n.push({maxWidth:Qh(r)}),o&&n.push({maxWidth:Qh(o)}),i||n.push(f.value),n})),g=i?Sg("popover",void 0,f,e):void 0;function b(t){"hover"===e.trigger&&e.keepAliveOnHover&&e.show&&s.handleMouseEnter(t)}function v(t){"hover"===e.trigger&&e.keepAliveOnHover&&s.handleMouseLeave(t)}function m(t){"hover"!==e.trigger||x().contains(_u(t))||s.handleMouseMoveOutside(t)}function y(t){("click"===e.trigger&&!x().contains(_u(t))||e.onClickoutside)&&s.handleClickOutside(t)}function x(){return s.getTriggerElement()}return s.setBodyInstance({syncPosition:function(){var e;null===(e=l.value)||void 0===e||e.syncPosition()}}),ar((()=>{s.setBodyInstance(null)})),go(Dt(e,"show"),(t=>{e.animated||(d.value=!!t)})),Hr(Wp,c),Hr(jp,null),Hr(Dp,null),{displayed:u,namespace:r,isMounted:s.isMountedRef,zIndex:s.zIndexRef,followerRef:l,adjustedTo:qp(e),followerEnabled:d,renderContentNode:function(){if(null==g||g.onRender(),!("show"===e.displayDirective||e.show||e.animated&&u.value))return null;let r;const i=s.internalRenderBodyRef.value,{value:a}=o;if(i)r=i([`${a}-popover-shared`,null==g?void 0:g.themeClass.value,e.overlap&&`${a}-popover-shared--overlap`,e.showArrow&&`${a}-popover-shared--show-arrow`,e.arrowPointToCenter&&`${a}-popover-shared--center-arrow`],c,h.value,b,v);else{const{value:o}=s.extraClassRef,{internalTrapFocus:i}=e,l=!vg(t.header)||!vg(t.footer),d=()=>{var n,r;const o=l?bi(Oo,null,bg(t.header,(t=>t?bi("div",{class:[`${a}-popover__header`,e.headerClass],style:e.headerStyle},t):null)),bg(t.default,(n=>n?bi("div",{class:[`${a}-popover__content`,e.contentClass],style:e.contentStyle},t):null)),bg(t.footer,(t=>t?bi("div",{class:[`${a}-popover__footer`,e.footerClass],style:e.footerStyle},t):null))):e.scrollable?null===(n=t.default)||void 0===n?void 0:n.call(t):bi("div",{class:[`${a}-popover__content`,e.contentClass],style:e.contentStyle},t);return[e.scrollable?bi(lw,{contentClass:l?void 0:`${a}-popover__content ${null!==(r=e.contentClass)&&void 0!==r?r:""}`,contentStyle:l?void 0:e.contentStyle},{default:()=>o}):o,e.showArrow?eC({arrowClass:e.arrowClass,arrowStyle:e.arrowStyle,arrowWrapperClass:e.arrowWrapperClass,arrowWrapperStyle:e.arrowWrapperStyle,clsPrefix:a}):null]};r=bi("div",Yo({class:[`${a}-popover`,`${a}-popover-shared`,null==g?void 0:g.themeClass.value,o.map((e=>`${a}-${e}`)),{[`${a}-popover--scrollable`]:e.scrollable,[`${a}-popover--show-header-or-footer`]:l,[`${a}-popover--raw`]:e.raw,[`${a}-popover-shared--overlap`]:e.overlap,[`${a}-popover-shared--show-arrow`]:e.showArrow,[`${a}-popover-shared--center-arrow`]:e.arrowPointToCenter}],ref:c,style:h.value,onKeydown:s.handleKeydown,onMouseenter:b,onMouseleave:v},n),i?bi(Kh,{active:e.show,autoFocus:!0},{default:d}):d())}return vn(r,p.value)}}},render(){return bi(Lf,{ref:"followerRef",zIndex:this.zIndex,show:this.show,enabled:this.followerEnabled,to:this.adjustedTo,x:this.x,y:this.y,flip:this.flip,placement:this.placement,containerClass:this.namespace,overlap:this.overlap,width:"trigger"===this.width?"target":void 0,teleportDisabled:this.adjustedTo===qp.tdkey},{default:()=>this.animated?bi(Ai,{name:"popover-transition",appear:this.isMounted,onEnter:()=>{this.followerEnabled=!0},onAfterLeave:()=>{var e;null===(e=this.internalOnAfterLeave)||void 0===e||e.call(this),this.followerEnabled=!1,this.displayed=!1}},{default:this.renderContentNode}):this.renderContentNode()})}}),nC=Object.keys(Jw),rC={focus:["onFocus","onBlur"],click:["onClick"],hover:["onMouseenter","onMouseleave"],manual:[],nested:["onFocus","onBlur","onMouseenter","onMouseleave","onClick"]};const oC={show:{type:Boolean,default:void 0},defaultShow:Boolean,showArrow:{type:Boolean,default:!0},trigger:{type:String,default:"hover"},delay:{type:Number,default:100},duration:{type:Number,default:100},raw:Boolean,placement:{type:String,default:"top"},x:Number,y:Number,arrowPointToCenter:Boolean,disabled:Boolean,getDisabled:Function,displayDirective:{type:String,default:"if"},arrowClass:String,arrowStyle:[String,Object],arrowWrapperClass:String,arrowWrapperStyle:[String,Object],flip:{type:Boolean,default:!0},animated:{type:Boolean,default:!0},width:{type:[Number,String],default:void 0},overlap:Boolean,keepAliveOnHover:{type:Boolean,default:!0},zIndex:Number,to:qp.propTo,scrollable:Boolean,contentClass:String,contentStyle:[Object,String],headerClass:String,headerStyle:[Object,String],footerClass:String,footerStyle:[Object,String],onClickoutside:Function,"onUpdate:show":[Function,Array],onUpdateShow:[Function,Array],internalDeactivateImmediately:Boolean,internalSyncTargetWithParent:Boolean,internalInheritedEventHandlers:{type:Array,default:()=>[]},internalTrapFocus:Boolean,internalExtraClass:{type:Array,default:()=>[]},onShow:[Function,Array],onHide:[Function,Array],arrow:{type:Boolean,default:void 0},minWidth:Number,maxWidth:Number},iC=qn({name:"Popover",inheritAttrs:!1,props:Object.assign(Object.assign(Object.assign({},Ey.props),oC),{internalOnAfterLeave:Function,internalRenderBody:Function}),slots:Object,__popover__:!0,setup(e){const t=zp(),n=$t(null),r=gi((()=>e.show)),o=$t(e.defaultShow),i=$p(r,o),a=hp((()=>!e.disabled&&i.value)),l=()=>{if(e.disabled)return!0;const{getDisabled:t}=e;return!!(null==t?void 0:t())},s=()=>!l()&&i.value,c=Mp(e,["arrow","showArrow"]),d=gi((()=>!e.overlap&&c.value));let u=null;const p=$t(null),f=$t(null),h=hp((()=>void 0!==e.x&&void 0!==e.y));function g(t){const{"onUpdate:show":n,onUpdateShow:r,onShow:i,onHide:a}=e;o.value=t,n&&og(n,t),r&&og(r,t),t&&i&&og(i,!0),t&&a&&og(a,!1)}function b(){const{value:e}=p;e&&(window.clearTimeout(e),p.value=null)}function v(){const{value:e}=f;e&&(window.clearTimeout(e),f.value=null)}function m(){const t=l();if("hover"===e.trigger&&!t){if(v(),null!==p.value)return;if(s())return;const t=()=>{g(!0),p.value=null},{delay:n}=e;0===n?t():p.value=window.setTimeout(t,n)}}function y(){const t=l();if("hover"===e.trigger&&!t){if(b(),null!==f.value)return;if(!s())return;const t=()=>{g(!1),f.value=null},{duration:n}=e;0===n?t():f.value=window.setTimeout(t,n)}}Hr("NPopover",{getTriggerElement:function(){var e;return null===(e=n.value)||void 0===e?void 0:e.targetRef},handleKeydown:function(t){e.internalTrapFocus&&"Escape"===t.key&&(b(),v(),g(!1))},handleMouseEnter:m,handleMouseLeave:y,handleClickOutside:function(t){var n;s()&&("click"===e.trigger&&(b(),v(),g(!1)),null===(n=e.onClickoutside)||void 0===n||n.call(e,t))},handleMouseMoveOutside:function(){y()},setBodyInstance:function(e){u=e},positionManuallyRef:h,isMountedRef:t,zIndexRef:Dt(e,"zIndex"),extraClassRef:Dt(e,"internalExtraClass"),internalRenderBodyRef:Dt(e,"internalRenderBody")}),ho((()=>{i.value&&l()&&g(!1)}));return{binderInstRef:n,positionManually:h,mergedShowConsideringDisabledProp:a,uncontrolledShow:o,mergedShowArrow:d,getMergedShow:s,setShow:function(e){o.value=e},handleClick:function(){if("click"===e.trigger&&!l()){b(),v();g(!s())}},handleMouseEnter:m,handleMouseLeave:y,handleFocus:function(){const t=l();if("focus"===e.trigger&&!t){if(s())return;g(!0)}},handleBlur:function(){const t=l();if("focus"===e.trigger&&!t){if(!s())return;g(!1)}},syncPosition:function(){u&&u.syncPosition()}}},render(){var e;const{positionManually:t,$slots:n}=this;let r,o=!1;if(!t&&(r=function(e,t="default",n){const r=e[t];if(!r)return null;const o=ag(r(n));return 1===o.length?o[0]:null}(n,"trigger"),r)){r=Ko(r),r=r.type===Ao?bi("span",[r]):r;const n={onClick:this.handleClick,onMouseenter:this.handleMouseEnter,onMouseleave:this.handleMouseLeave,onFocus:this.handleFocus,onBlur:this.handleBlur};if(null===(e=r.type)||void 0===e?void 0:e.__popover__)o=!0,r.props||(r.props={internalSyncTargetWithParent:!0,internalInheritedEventHandlers:[]}),r.props.internalSyncTargetWithParent=!0,r.props.internalInheritedEventHandlers?r.props.internalInheritedEventHandlers=[n,...r.props.internalInheritedEventHandlers]:r.props.internalInheritedEventHandlers=[n];else{const{internalInheritedEventHandlers:e}=this,o=[n,...e],s={onBlur:e=>{o.forEach((t=>{t.onBlur(e)}))},onFocus:e=>{o.forEach((t=>{t.onFocus(e)}))},onClick:e=>{o.forEach((t=>{t.onClick(e)}))},onMouseenter:e=>{o.forEach((t=>{t.onMouseenter(e)}))},onMouseleave:e=>{o.forEach((t=>{t.onMouseleave(e)}))}};i=r,a=e?"nested":t?"manual":this.trigger,l=s,rC[a].forEach((e=>{i.props?i.props=Object.assign({},i.props):i.props={};const t=i.props[e],n=l[e];i.props[e]=t?(...e)=>{t(...e),n(...e)}:n}))}}var i,a,l;return bi(ff,{ref:"binderInstRef",syncTarget:!o,syncTargetWithParent:this.internalSyncTargetWithParent},{default:()=>{this.mergedShowConsideringDisabledProp;const e=this.getMergedShow();return[this.internalTrapFocus&&e?vn(bi("div",{style:{position:"fixed",top:0,right:0,bottom:0,left:0}}),[[wf,{enabled:e,zIndex:this.zIndex}]]):null,t?null:bi(hf,null,{default:()=>r}),bi(tC,sg(this.$props,nC,Object.assign(Object.assign({},this.$attrs),{showArrow:this.mergedShowArrow,show:e})),{default:()=>{var e,t;return null===(t=(e=this.$slots).default)||void 0===t?void 0:t.call(e)},header:()=>{var e,t;return null===(t=(e=this.$slots).header)||void 0===t?void 0:t.call(e)},footer:()=>{var e,t;return null===(t=(e=this.$slots).footer)||void 0===t?void 0:t.call(e)}})]}})}}),aC={closeIconSizeTiny:"12px",closeIconSizeSmall:"12px",closeIconSizeMedium:"14px",closeIconSizeLarge:"14px",closeSizeTiny:"16px",closeSizeSmall:"16px",closeSizeMedium:"18px",closeSizeLarge:"18px",padding:"0 7px",closeMargin:"0 0 0 4px"};const lC={common:nw,self:function(e){const{textColor2:t,primaryColorHover:n,primaryColorPressed:r,primaryColor:o,infoColor:i,successColor:a,warningColor:l,errorColor:s,baseColor:c,borderColor:d,opacityDisabled:u,tagColor:p,closeIconColor:f,closeIconColorHover:h,closeIconColorPressed:g,borderRadiusSmall:b,fontSizeMini:v,fontSizeTiny:m,fontSizeSmall:y,fontSizeMedium:x,heightMini:w,heightTiny:C,heightSmall:S,heightMedium:k,closeColorHover:_,closeColorPressed:E,buttonColor2Hover:R,buttonColor2Pressed:O,fontWeightStrong:A}=e;return Object.assign(Object.assign({},aC),{closeBorderRadius:b,heightTiny:w,heightSmall:C,heightMedium:S,heightLarge:k,borderRadius:b,opacityDisabled:u,fontSizeTiny:v,fontSizeSmall:m,fontSizeMedium:y,fontSizeLarge:x,fontWeightStrong:A,textColorCheckable:t,textColorHoverCheckable:t,textColorPressedCheckable:t,textColorChecked:c,colorCheckable:"#0000",colorHoverCheckable:R,colorPressedCheckable:O,colorChecked:o,colorCheckedHover:n,colorCheckedPressed:r,border:`1px solid ${d}`,textColor:t,color:p,colorBordered:"rgb(250, 250, 252)",closeIconColor:f,closeIconColorHover:h,closeIconColorPressed:g,closeColorHover:_,closeColorPressed:E,borderPrimary:`1px solid ${ep(o,{alpha:.3})}`,textColorPrimary:o,colorPrimary:ep(o,{alpha:.12}),colorBorderedPrimary:ep(o,{alpha:.1}),closeIconColorPrimary:o,closeIconColorHoverPrimary:o,closeIconColorPressedPrimary:o,closeColorHoverPrimary:ep(o,{alpha:.12}),closeColorPressedPrimary:ep(o,{alpha:.18}),borderInfo:`1px solid ${ep(i,{alpha:.3})}`,textColorInfo:i,colorInfo:ep(i,{alpha:.12}),colorBorderedInfo:ep(i,{alpha:.1}),closeIconColorInfo:i,closeIconColorHoverInfo:i,closeIconColorPressedInfo:i,closeColorHoverInfo:ep(i,{alpha:.12}),closeColorPressedInfo:ep(i,{alpha:.18}),borderSuccess:`1px solid ${ep(a,{alpha:.3})}`,textColorSuccess:a,colorSuccess:ep(a,{alpha:.12}),colorBorderedSuccess:ep(a,{alpha:.1}),closeIconColorSuccess:a,closeIconColorHoverSuccess:a,closeIconColorPressedSuccess:a,closeColorHoverSuccess:ep(a,{alpha:.12}),closeColorPressedSuccess:ep(a,{alpha:.18}),borderWarning:`1px solid ${ep(l,{alpha:.35})}`,textColorWarning:l,colorWarning:ep(l,{alpha:.15}),colorBorderedWarning:ep(l,{alpha:.12}),closeIconColorWarning:l,closeIconColorHoverWarning:l,closeIconColorPressedWarning:l,closeColorHoverWarning:ep(l,{alpha:.12}),closeColorPressedWarning:ep(l,{alpha:.18}),borderError:`1px solid ${ep(s,{alpha:.23})}`,textColorError:s,colorError:ep(s,{alpha:.1}),colorBorderedError:ep(s,{alpha:.08}),closeIconColorError:s,closeIconColorHoverError:s,closeIconColorPressedError:s,closeColorHoverError:ep(s,{alpha:.12}),closeColorPressedError:ep(s,{alpha:.18})})}},sC={color:Object,type:{type:String,default:"default"},round:Boolean,size:{type:String,default:"medium"},closable:Boolean,disabled:{type:Boolean,default:void 0}},cC=uu("tag","\n --n-close-margin: var(--n-close-margin-top) var(--n-close-margin-right) var(--n-close-margin-bottom) var(--n-close-margin-left);\n white-space: nowrap;\n position: relative;\n box-sizing: border-box;\n cursor: default;\n display: inline-flex;\n align-items: center;\n flex-wrap: nowrap;\n padding: var(--n-padding);\n border-radius: var(--n-border-radius);\n color: var(--n-text-color);\n background-color: var(--n-color);\n transition: \n border-color .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n color .3s var(--n-bezier),\n box-shadow .3s var(--n-bezier),\n opacity .3s var(--n-bezier);\n line-height: 1;\n height: var(--n-height);\n font-size: var(--n-font-size);\n",[fu("strong","\n font-weight: var(--n-font-weight-strong);\n "),pu("border","\n pointer-events: none;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n border-radius: inherit;\n border: var(--n-border);\n transition: border-color .3s var(--n-bezier);\n "),pu("icon","\n display: flex;\n margin: 0 4px 0 0;\n color: var(--n-text-color);\n transition: color .3s var(--n-bezier);\n font-size: var(--n-avatar-size-override);\n "),pu("avatar","\n display: flex;\n margin: 0 6px 0 0;\n "),pu("close","\n margin: var(--n-close-margin);\n transition:\n background-color .3s var(--n-bezier),\n color .3s var(--n-bezier);\n "),fu("round","\n padding: 0 calc(var(--n-height) / 3);\n border-radius: calc(var(--n-height) / 2);\n ",[pu("icon","\n margin: 0 4px 0 calc((var(--n-height) - 8px) / -2);\n "),pu("avatar","\n margin: 0 6px 0 calc((var(--n-height) - 8px) / -2);\n "),fu("closable","\n padding: 0 calc(var(--n-height) / 4) 0 calc(var(--n-height) / 3);\n ")]),fu("icon, avatar",[fu("round","\n padding: 0 calc(var(--n-height) / 3) 0 calc(var(--n-height) / 2);\n ")]),fu("disabled","\n cursor: not-allowed !important;\n opacity: var(--n-opacity-disabled);\n "),fu("checkable","\n cursor: pointer;\n box-shadow: none;\n color: var(--n-text-color-checkable);\n background-color: var(--n-color-checkable);\n ",[hu("disabled",[cu("&:hover","background-color: var(--n-color-hover-checkable);",[hu("checked","color: var(--n-text-color-hover-checkable);")]),cu("&:active","background-color: var(--n-color-pressed-checkable);",[hu("checked","color: var(--n-text-color-pressed-checkable);")])]),fu("checked","\n color: var(--n-text-color-checked);\n background-color: var(--n-color-checked);\n ",[hu("disabled",[cu("&:hover","background-color: var(--n-color-checked-hover);"),cu("&:active","background-color: var(--n-color-checked-pressed);")])])])]),dC=Object.assign(Object.assign(Object.assign({},Ey.props),sC),{bordered:{type:Boolean,default:void 0},checked:Boolean,checkable:Boolean,strong:Boolean,triggerClickOnClose:Boolean,onClose:[Array,Function],onMouseenter:Function,onMouseleave:Function,"onUpdate:checked":Function,onUpdateChecked:Function,internalCloseFocusable:{type:Boolean,default:!0},internalCloseIsButtonTag:{type:Boolean,default:!0},onCheckedChange:Function}),uC=qn({name:"Tag",props:dC,slots:Object,setup(e){const t=$t(null),{mergedBorderedRef:n,mergedClsPrefixRef:r,inlineThemeDisabled:o,mergedRtlRef:i}=wg(e),a=Ey("Tag","-tag",cC,lC,e,r);Hr("n-tag",{roundRef:Dt(e,"round")});const l={setTextContent(e){const{value:n}=t;n&&(n.textContent=e)}},s=yy("Tag",i,r),c=gi((()=>{const{type:t,size:r,color:{color:o,textColor:i}={}}=e,{common:{cubicBezierEaseInOut:l},self:{padding:s,closeMargin:c,borderRadius:d,opacityDisabled:u,textColorCheckable:p,textColorHoverCheckable:f,textColorPressedCheckable:h,textColorChecked:g,colorCheckable:b,colorHoverCheckable:v,colorPressedCheckable:m,colorChecked:y,colorCheckedHover:x,colorCheckedPressed:w,closeBorderRadius:C,fontWeightStrong:S,[yu("colorBordered",t)]:k,[yu("closeSize",r)]:_,[yu("closeIconSize",r)]:E,[yu("fontSize",r)]:R,[yu("height",r)]:O,[yu("color",t)]:A,[yu("textColor",t)]:P,[yu("border",t)]:T,[yu("closeIconColor",t)]:$,[yu("closeIconColorHover",t)]:z,[yu("closeIconColorPressed",t)]:M,[yu("closeColorHover",t)]:F,[yu("closeColorPressed",t)]:N}}=a.value,B=Au(c);return{"--n-font-weight-strong":S,"--n-avatar-size-override":`calc(${O} - 8px)`,"--n-bezier":l,"--n-border-radius":d,"--n-border":T,"--n-close-icon-size":E,"--n-close-color-pressed":N,"--n-close-color-hover":F,"--n-close-border-radius":C,"--n-close-icon-color":$,"--n-close-icon-color-hover":z,"--n-close-icon-color-pressed":M,"--n-close-icon-color-disabled":$,"--n-close-margin-top":B.top,"--n-close-margin-right":B.right,"--n-close-margin-bottom":B.bottom,"--n-close-margin-left":B.left,"--n-close-size":_,"--n-color":o||(n.value?k:A),"--n-color-checkable":b,"--n-color-checked":y,"--n-color-checked-hover":x,"--n-color-checked-pressed":w,"--n-color-hover-checkable":v,"--n-color-pressed-checkable":m,"--n-font-size":R,"--n-height":O,"--n-opacity-disabled":u,"--n-padding":s,"--n-text-color":i||P,"--n-text-color-checkable":p,"--n-text-color-checked":g,"--n-text-color-hover-checkable":f,"--n-text-color-pressed-checkable":h}})),d=o?Sg("tag",gi((()=>{let t="";const{type:r,size:o,color:{color:i,textColor:a}={}}=e;return t+=r[0],t+=o[0],i&&(t+=`a${Gh(i)}`),a&&(t+=`b${Gh(a)}`),n.value&&(t+="c"),t})),c,e):void 0;return Object.assign(Object.assign({},l),{rtlEnabled:s,mergedClsPrefix:r,contentRef:t,mergedBordered:n,handleClick:function(){if(!e.disabled&&e.checkable){const{checked:t,onCheckedChange:n,onUpdateChecked:r,"onUpdate:checked":o}=e;r&&r(!t),o&&o(!t),n&&n(!t)}},handleCloseClick:function(t){if(e.triggerClickOnClose||t.stopPropagation(),!e.disabled){const{onClose:n}=e;n&&og(n,t)}},cssVars:o?void 0:c,themeClass:null==d?void 0:d.themeClass,onRender:null==d?void 0:d.onRender})},render(){var e,t;const{mergedClsPrefix:n,rtlEnabled:r,closable:o,color:{borderColor:i}={},round:a,onRender:l,$slots:s}=this;null==l||l();const c=bg(s.avatar,(e=>e&&bi("div",{class:`${n}-tag__avatar`},e))),d=bg(s.icon,(e=>e&&bi("div",{class:`${n}-tag__icon`},e)));return bi("div",{class:[`${n}-tag`,this.themeClass,{[`${n}-tag--rtl`]:r,[`${n}-tag--strong`]:this.strong,[`${n}-tag--disabled`]:this.disabled,[`${n}-tag--checkable`]:this.checkable,[`${n}-tag--checked`]:this.checkable&&this.checked,[`${n}-tag--round`]:a,[`${n}-tag--avatar`]:c,[`${n}-tag--icon`]:d,[`${n}-tag--closable`]:o}],style:this.cssVars,onClick:this.handleClick,onMouseenter:this.onMouseenter,onMouseleave:this.onMouseleave},d||c,bi("span",{class:`${n}-tag__content`,ref:"contentRef"},null===(t=(e=this.$slots).default)||void 0===t?void 0:t.call(e)),!this.checkable&&o?bi(rx,{clsPrefix:n,class:`${n}-tag__close`,disabled:this.disabled,onClick:this.handleCloseClick,focusable:this.internalCloseFocusable,round:a,isButtonTag:this.internalCloseIsButtonTag,absolute:!0}):null,!this.checkable&&this.mergedBordered?bi("div",{class:`${n}-tag__border`,style:{borderColor:i}}):null)}}),pC=qn({name:"InternalSelectionSuffix",props:{clsPrefix:{type:String,required:!0},showArrow:{type:Boolean,default:void 0},showClear:{type:Boolean,default:void 0},loading:{type:Boolean,default:!1},onClear:Function},setup:(e,{slots:t})=>()=>{const{clsPrefix:n}=e;return bi(cx,{clsPrefix:n,class:`${n}-base-suffix`,strokeWidth:24,scale:.85,show:e.loading},{default:()=>e.showArrow?bi(tx,{clsPrefix:n,show:e.showClear,onClear:e.onClear},{placeholder:()=>bi(Oy,{clsPrefix:n,class:`${n}-base-suffix__arrow`},{default:()=>hg(t.default,(()=>[bi(Fy,null)]))})}):null})}}),fC={paddingSingle:"0 26px 0 12px",paddingMultiple:"3px 26px 0 12px",clearSize:"16px",arrowSize:"16px"};const hC={name:"InternalSelection",common:nw,peers:{Popover:qw},self:function(e){const{borderRadius:t,textColor2:n,textColorDisabled:r,inputColor:o,inputColorDisabled:i,primaryColor:a,primaryColorHover:l,warningColor:s,warningColorHover:c,errorColor:d,errorColorHover:u,borderColor:p,iconColor:f,iconColorDisabled:h,clearColor:g,clearColorHover:b,clearColorPressed:v,placeholderColor:m,placeholderColorDisabled:y,fontSizeTiny:x,fontSizeSmall:w,fontSizeMedium:C,fontSizeLarge:S,heightTiny:k,heightSmall:_,heightMedium:E,heightLarge:R,fontWeight:O}=e;return Object.assign(Object.assign({},fC),{fontSizeTiny:x,fontSizeSmall:w,fontSizeMedium:C,fontSizeLarge:S,heightTiny:k,heightSmall:_,heightMedium:E,heightLarge:R,borderRadius:t,fontWeight:O,textColor:n,textColorDisabled:r,placeholderColor:m,placeholderColorDisabled:y,color:o,colorDisabled:i,colorActive:o,border:`1px solid ${p}`,borderHover:`1px solid ${l}`,borderActive:`1px solid ${a}`,borderFocus:`1px solid ${l}`,boxShadowHover:"none",boxShadowActive:`0 0 0 2px ${ep(a,{alpha:.2})}`,boxShadowFocus:`0 0 0 2px ${ep(a,{alpha:.2})}`,caretColor:a,arrowColor:f,arrowColorDisabled:h,loadingColor:a,borderWarning:`1px solid ${s}`,borderHoverWarning:`1px solid ${c}`,borderActiveWarning:`1px solid ${s}`,borderFocusWarning:`1px solid ${c}`,boxShadowHoverWarning:"none",boxShadowActiveWarning:`0 0 0 2px ${ep(s,{alpha:.2})}`,boxShadowFocusWarning:`0 0 0 2px ${ep(s,{alpha:.2})}`,colorActiveWarning:o,caretColorWarning:s,borderError:`1px solid ${d}`,borderHoverError:`1px solid ${u}`,borderActiveError:`1px solid ${d}`,borderFocusError:`1px solid ${u}`,boxShadowHoverError:"none",boxShadowActiveError:`0 0 0 2px ${ep(d,{alpha:.2})}`,boxShadowFocusError:`0 0 0 2px ${ep(d,{alpha:.2})}`,colorActiveError:o,caretColorError:d,clearColor:g,clearColorHover:b,clearColorPressed:v})}},gC=cu([uu("base-selection","\n --n-padding-single: var(--n-padding-single-top) var(--n-padding-single-right) var(--n-padding-single-bottom) var(--n-padding-single-left);\n --n-padding-multiple: var(--n-padding-multiple-top) var(--n-padding-multiple-right) var(--n-padding-multiple-bottom) var(--n-padding-multiple-left);\n position: relative;\n z-index: auto;\n box-shadow: none;\n width: 100%;\n max-width: 100%;\n display: inline-block;\n vertical-align: bottom;\n border-radius: var(--n-border-radius);\n min-height: var(--n-height);\n line-height: 1.5;\n font-size: var(--n-font-size);\n ",[uu("base-loading","\n color: var(--n-loading-color);\n "),uu("base-selection-tags","min-height: var(--n-height);"),pu("border, state-border","\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n pointer-events: none;\n border: var(--n-border);\n border-radius: inherit;\n transition:\n box-shadow .3s var(--n-bezier),\n border-color .3s var(--n-bezier);\n "),pu("state-border","\n z-index: 1;\n border-color: #0000;\n "),uu("base-suffix","\n cursor: pointer;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n right: 10px;\n ",[pu("arrow","\n font-size: var(--n-arrow-size);\n color: var(--n-arrow-color);\n transition: color .3s var(--n-bezier);\n ")]),uu("base-selection-overlay","\n display: flex;\n align-items: center;\n white-space: nowrap;\n pointer-events: none;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: var(--n-padding-single);\n transition: color .3s var(--n-bezier);\n ",[pu("wrapper","\n flex-basis: 0;\n flex-grow: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n ")]),uu("base-selection-placeholder","\n color: var(--n-placeholder-color);\n ",[pu("inner","\n max-width: 100%;\n overflow: hidden;\n ")]),uu("base-selection-tags","\n cursor: pointer;\n outline: none;\n box-sizing: border-box;\n position: relative;\n z-index: auto;\n display: flex;\n padding: var(--n-padding-multiple);\n flex-wrap: wrap;\n align-items: center;\n width: 100%;\n vertical-align: bottom;\n background-color: var(--n-color);\n border-radius: inherit;\n transition:\n color .3s var(--n-bezier),\n box-shadow .3s var(--n-bezier),\n background-color .3s var(--n-bezier);\n "),uu("base-selection-label","\n height: var(--n-height);\n display: inline-flex;\n width: 100%;\n vertical-align: bottom;\n cursor: pointer;\n outline: none;\n z-index: auto;\n box-sizing: border-box;\n position: relative;\n transition:\n color .3s var(--n-bezier),\n box-shadow .3s var(--n-bezier),\n background-color .3s var(--n-bezier);\n border-radius: inherit;\n background-color: var(--n-color);\n align-items: center;\n ",[uu("base-selection-input","\n font-size: inherit;\n line-height: inherit;\n outline: none;\n cursor: pointer;\n box-sizing: border-box;\n border:none;\n width: 100%;\n padding: var(--n-padding-single);\n background-color: #0000;\n color: var(--n-text-color);\n transition: color .3s var(--n-bezier);\n caret-color: var(--n-caret-color);\n ",[pu("content","\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap; \n ")]),pu("render-label","\n color: var(--n-text-color);\n ")]),hu("disabled",[cu("&:hover",[pu("state-border","\n box-shadow: var(--n-box-shadow-hover);\n border: var(--n-border-hover);\n ")]),fu("focus",[pu("state-border","\n box-shadow: var(--n-box-shadow-focus);\n border: var(--n-border-focus);\n ")]),fu("active",[pu("state-border","\n box-shadow: var(--n-box-shadow-active);\n border: var(--n-border-active);\n "),uu("base-selection-label","background-color: var(--n-color-active);"),uu("base-selection-tags","background-color: var(--n-color-active);")])]),fu("disabled","cursor: not-allowed;",[pu("arrow","\n color: var(--n-arrow-color-disabled);\n "),uu("base-selection-label","\n cursor: not-allowed;\n background-color: var(--n-color-disabled);\n ",[uu("base-selection-input","\n cursor: not-allowed;\n color: var(--n-text-color-disabled);\n "),pu("render-label","\n color: var(--n-text-color-disabled);\n ")]),uu("base-selection-tags","\n cursor: not-allowed;\n background-color: var(--n-color-disabled);\n "),uu("base-selection-placeholder","\n cursor: not-allowed;\n color: var(--n-placeholder-color-disabled);\n ")]),uu("base-selection-input-tag","\n height: calc(var(--n-height) - 6px);\n line-height: calc(var(--n-height) - 6px);\n outline: none;\n display: none;\n position: relative;\n margin-bottom: 3px;\n max-width: 100%;\n vertical-align: bottom;\n ",[pu("input","\n font-size: inherit;\n font-family: inherit;\n min-width: 1px;\n padding: 0;\n background-color: #0000;\n outline: none;\n border: none;\n max-width: 100%;\n overflow: hidden;\n width: 1em;\n line-height: inherit;\n cursor: pointer;\n color: var(--n-text-color);\n caret-color: var(--n-caret-color);\n "),pu("mirror","\n position: absolute;\n left: 0;\n top: 0;\n white-space: pre;\n visibility: hidden;\n user-select: none;\n -webkit-user-select: none;\n opacity: 0;\n ")]),["warning","error"].map((e=>fu(`${e}-status`,[pu("state-border",`border: var(--n-border-${e});`),hu("disabled",[cu("&:hover",[pu("state-border",`\n box-shadow: var(--n-box-shadow-hover-${e});\n border: var(--n-border-hover-${e});\n `)]),fu("active",[pu("state-border",`\n box-shadow: var(--n-box-shadow-active-${e});\n border: var(--n-border-active-${e});\n `),uu("base-selection-label",`background-color: var(--n-color-active-${e});`),uu("base-selection-tags",`background-color: var(--n-color-active-${e});`)]),fu("focus",[pu("state-border",`\n box-shadow: var(--n-box-shadow-focus-${e});\n border: var(--n-border-focus-${e});\n `)])])])))]),uu("base-selection-popover","\n margin-bottom: -3px;\n display: flex;\n flex-wrap: wrap;\n margin-right: -8px;\n "),uu("base-selection-tag-wrapper","\n max-width: 100%;\n display: inline-flex;\n padding: 0 7px 3px 0;\n ",[cu("&:last-child","padding-right: 0;"),uu("tag","\n font-size: 14px;\n max-width: 100%;\n ",[pu("content","\n line-height: 1.25;\n text-overflow: ellipsis;\n overflow: hidden;\n ")])])]),bC=qn({name:"InternalSelection",props:Object.assign(Object.assign({},Ey.props),{clsPrefix:{type:String,required:!0},bordered:{type:Boolean,default:void 0},active:Boolean,pattern:{type:String,default:""},placeholder:String,selectedOption:{type:Object,default:null},selectedOptions:{type:Array,default:null},labelField:{type:String,default:"label"},valueField:{type:String,default:"value"},multiple:Boolean,filterable:Boolean,clearable:Boolean,disabled:Boolean,size:{type:String,default:"medium"},loading:Boolean,autofocus:Boolean,showArrow:{type:Boolean,default:!0},inputProps:Object,focused:Boolean,renderTag:Function,onKeydown:Function,onClick:Function,onBlur:Function,onFocus:Function,onDeleteOption:Function,maxTagCount:[String,Number],ellipsisTagPopoverProps:Object,onClear:Function,onPatternInput:Function,onPatternFocus:Function,onPatternBlur:Function,renderLabel:Function,status:String,inlineThemeDisabled:Boolean,ignoreComposition:{type:Boolean,default:!0},onResize:Function}),setup(e){const{mergedClsPrefixRef:t,mergedRtlRef:n}=wg(e),r=yy("InternalSelection",n,t),o=$t(null),i=$t(null),a=$t(null),l=$t(null),s=$t(null),c=$t(null),d=$t(null),u=$t(null),p=$t(null),f=$t(null),h=$t(!1),g=$t(!1),b=$t(!1),v=Ey("InternalSelection","-internal-selection",gC,hC,e,Dt(e,"clsPrefix")),m=gi((()=>e.clearable&&!e.disabled&&(b.value||e.active))),y=gi((()=>e.selectedOption?e.renderTag?e.renderTag({option:e.selectedOption,handleClose:()=>{}}):e.renderLabel?e.renderLabel(e.selectedOption,!0):pg(e.selectedOption[e.labelField],e.selectedOption,!0):e.placeholder)),x=gi((()=>{const t=e.selectedOption;if(t)return t[e.labelField]})),w=gi((()=>e.multiple?!(!Array.isArray(e.selectedOptions)||!e.selectedOptions.length):null!==e.selectedOption));function C(){var t;const{value:n}=o;if(n){const{value:r}=i;r&&(r.style.width=`${n.offsetWidth}px`,"responsive"!==e.maxTagCount&&(null===(t=p.value)||void 0===t||t.sync({showAllItemsBeforeCalculate:!1})))}}function S(t){const{onPatternInput:n}=e;n&&n(t)}function k(t){!function(t){const{onDeleteOption:n}=e;n&&n(t)}(t)}go(Dt(e,"active"),(e=>{e||function(){const{value:e}=f;e&&(e.style.display="none")}()})),go(Dt(e,"pattern"),(()=>{e.multiple&&an(C)}));const _=$t(!1);let E=null;let R=null;function O(){null!==R&&window.clearTimeout(R)}go(w,(e=>{e||(h.value=!1)})),rr((()=>{ho((()=>{const t=c.value;t&&(e.disabled?t.removeAttribute("tabindex"):t.tabIndex=g.value?-1:0)}))})),Vh(a,e.onResize);const{inlineThemeDisabled:A}=e,P=gi((()=>{const{size:t}=e,{common:{cubicBezierEaseInOut:n},self:{fontWeight:r,borderRadius:o,color:i,placeholderColor:a,textColor:l,paddingSingle:s,paddingMultiple:c,caretColor:d,colorDisabled:u,textColorDisabled:p,placeholderColorDisabled:f,colorActive:h,boxShadowFocus:g,boxShadowActive:b,boxShadowHover:m,border:y,borderFocus:x,borderHover:w,borderActive:C,arrowColor:S,arrowColorDisabled:k,loadingColor:_,colorActiveWarning:E,boxShadowFocusWarning:R,boxShadowActiveWarning:O,boxShadowHoverWarning:A,borderWarning:P,borderFocusWarning:T,borderHoverWarning:$,borderActiveWarning:z,colorActiveError:M,boxShadowFocusError:F,boxShadowActiveError:N,boxShadowHoverError:B,borderError:I,borderFocusError:L,borderHoverError:j,borderActiveError:D,clearColor:H,clearColorHover:W,clearColorPressed:U,clearSize:q,arrowSize:K,[yu("height",t)]:V,[yu("fontSize",t)]:G}}=v.value,Z=Au(s),X=Au(c);return{"--n-bezier":n,"--n-border":y,"--n-border-active":C,"--n-border-focus":x,"--n-border-hover":w,"--n-border-radius":o,"--n-box-shadow-active":b,"--n-box-shadow-focus":g,"--n-box-shadow-hover":m,"--n-caret-color":d,"--n-color":i,"--n-color-active":h,"--n-color-disabled":u,"--n-font-size":G,"--n-height":V,"--n-padding-single-top":Z.top,"--n-padding-multiple-top":X.top,"--n-padding-single-right":Z.right,"--n-padding-multiple-right":X.right,"--n-padding-single-left":Z.left,"--n-padding-multiple-left":X.left,"--n-padding-single-bottom":Z.bottom,"--n-padding-multiple-bottom":X.bottom,"--n-placeholder-color":a,"--n-placeholder-color-disabled":f,"--n-text-color":l,"--n-text-color-disabled":p,"--n-arrow-color":S,"--n-arrow-color-disabled":k,"--n-loading-color":_,"--n-color-active-warning":E,"--n-box-shadow-focus-warning":R,"--n-box-shadow-active-warning":O,"--n-box-shadow-hover-warning":A,"--n-border-warning":P,"--n-border-focus-warning":T,"--n-border-hover-warning":$,"--n-border-active-warning":z,"--n-color-active-error":M,"--n-box-shadow-focus-error":F,"--n-box-shadow-active-error":N,"--n-box-shadow-hover-error":B,"--n-border-error":I,"--n-border-focus-error":L,"--n-border-hover-error":j,"--n-border-active-error":D,"--n-clear-size":q,"--n-clear-color":H,"--n-clear-color-hover":W,"--n-clear-color-pressed":U,"--n-arrow-size":K,"--n-font-weight":r}})),T=A?Sg("internal-selection",gi((()=>e.size[0])),P,e):void 0;return{mergedTheme:v,mergedClearable:m,mergedClsPrefix:t,rtlEnabled:r,patternInputFocused:g,filterablePlaceholder:y,label:x,selected:w,showTagsPanel:h,isComposing:_,counterRef:d,counterWrapperRef:u,patternInputMirrorRef:o,patternInputRef:i,selfRef:a,multipleElRef:l,singleElRef:s,patternInputWrapperRef:c,overflowRef:p,inputTagElRef:f,handleMouseDown:function(t){e.active&&e.filterable&&t.target!==i.value&&t.preventDefault()},handleFocusin:function(t){var n;t.relatedTarget&&(null===(n=a.value)||void 0===n?void 0:n.contains(t.relatedTarget))||function(t){const{onFocus:n}=e;n&&n(t)}(t)},handleClear:function(t){!function(t){const{onClear:n}=e;n&&n(t)}(t)},handleMouseEnter:function(){b.value=!0},handleMouseLeave:function(){b.value=!1},handleDeleteOption:k,handlePatternKeyDown:function(t){if("Backspace"===t.key&&!_.value&&!e.pattern.length){const{selectedOptions:t}=e;(null==t?void 0:t.length)&&k(t[t.length-1])}},handlePatternInputInput:function(t){const{value:n}=o;if(n){const e=t.target.value;n.textContent=e,C()}e.ignoreComposition&&_.value?E=t:S(t)},handlePatternInputBlur:function(t){var n;g.value=!1,null===(n=e.onPatternBlur)||void 0===n||n.call(e,t)},handlePatternInputFocus:function(t){var n;g.value=!0,null===(n=e.onPatternFocus)||void 0===n||n.call(e,t)},handleMouseEnterCounter:function(){e.active||(O(),R=window.setTimeout((()=>{w.value&&(h.value=!0)}),100))},handleMouseLeaveCounter:function(){O()},handleFocusout:function(t){var n;(null===(n=a.value)||void 0===n?void 0:n.contains(t.relatedTarget))||function(t){const{onBlur:n}=e;n&&n(t)}(t)},handleCompositionEnd:function(){_.value=!1,e.ignoreComposition&&S(E),E=null},handleCompositionStart:function(){_.value=!0},onPopoverUpdateShow:function(e){e||(O(),h.value=!1)},focus:function(){var t,n,r;e.filterable?(g.value=!1,null===(t=c.value)||void 0===t||t.focus()):e.multiple?null===(n=l.value)||void 0===n||n.focus():null===(r=s.value)||void 0===r||r.focus()},focusInput:function(){const{value:e}=i;e&&(!function(){const{value:e}=f;e&&(e.style.display="inline-block")}(),e.focus())},blur:function(){var t,n;if(e.filterable)g.value=!1,null===(t=c.value)||void 0===t||t.blur(),null===(n=i.value)||void 0===n||n.blur();else if(e.multiple){const{value:e}=l;null==e||e.blur()}else{const{value:e}=s;null==e||e.blur()}},blurInput:function(){const{value:e}=i;e&&e.blur()},updateCounter:function(e){const{value:t}=d;t&&t.setTextContent(`+${e}`)},getCounter:function(){const{value:e}=u;return e},getTail:function(){return i.value},renderLabel:e.renderLabel,cssVars:A?void 0:P,themeClass:null==T?void 0:T.themeClass,onRender:null==T?void 0:T.onRender}},render(){const{status:e,multiple:t,size:n,disabled:r,filterable:o,maxTagCount:i,bordered:a,clsPrefix:l,ellipsisTagPopoverProps:s,onRender:c,renderTag:d,renderLabel:u}=this;null==c||c();const p="responsive"===i,f="number"==typeof i,h=p||f,g=bi(mg,null,{default:()=>bi(pC,{clsPrefix:l,loading:this.loading,showArrow:this.showArrow,showClear:this.mergedClearable&&this.selected,onClear:this.handleClear},{default:()=>{var e,t;return null===(t=(e=this.$slots).arrow)||void 0===t?void 0:t.call(e)}})});let b;if(t){const{labelField:e}=this,t=t=>bi("div",{class:`${l}-base-selection-tag-wrapper`,key:t.value},d?d({option:t,handleClose:()=>{this.handleDeleteOption(t)}}):bi(uC,{size:n,closable:!t.disabled,disabled:r,onClose:()=>{this.handleDeleteOption(t)},internalCloseIsButtonTag:!1,internalCloseFocusable:!1},{default:()=>u?u(t,!0):pg(t[e],t,!0)})),a=()=>(f?this.selectedOptions.slice(0,i):this.selectedOptions).map(t),c=o?bi("div",{class:`${l}-base-selection-input-tag`,ref:"inputTagElRef",key:"__input-tag__"},bi("input",Object.assign({},this.inputProps,{ref:"patternInputRef",tabindex:-1,disabled:r,value:this.pattern,autofocus:this.autofocus,class:`${l}-base-selection-input-tag__input`,onBlur:this.handlePatternInputBlur,onFocus:this.handlePatternInputFocus,onKeydown:this.handlePatternKeyDown,onInput:this.handlePatternInputInput,onCompositionstart:this.handleCompositionStart,onCompositionend:this.handleCompositionEnd})),bi("span",{ref:"patternInputMirrorRef",class:`${l}-base-selection-input-tag__mirror`},this.pattern)):null,v=p?()=>bi("div",{class:`${l}-base-selection-tag-wrapper`,ref:"counterWrapperRef"},bi(uC,{size:n,ref:"counterRef",onMouseenter:this.handleMouseEnterCounter,onMouseleave:this.handleMouseLeaveCounter,disabled:r})):void 0;let m;if(f){const e=this.selectedOptions.length-i;e>0&&(m=bi("div",{class:`${l}-base-selection-tag-wrapper`,key:"__counter__"},bi(uC,{size:n,ref:"counterRef",onMouseenter:this.handleMouseEnterCounter,disabled:r},{default:()=>`+${e}`})))}const y=p?o?bi(jh,{ref:"overflowRef",updateCounter:this.updateCounter,getCounter:this.getCounter,getTail:this.getTail,style:{width:"100%",display:"flex",overflow:"hidden"}},{default:a,counter:v,tail:()=>c}):bi(jh,{ref:"overflowRef",updateCounter:this.updateCounter,getCounter:this.getCounter,style:{width:"100%",display:"flex",overflow:"hidden"}},{default:a,counter:v}):f&&m?a().concat(m):a(),x=h?()=>bi("div",{class:`${l}-base-selection-popover`},p?a():this.selectedOptions.map(t)):void 0,w=h?Object.assign({show:this.showTagsPanel,trigger:"hover",overlap:!0,placement:"top",width:"trigger",onUpdateShow:this.onPopoverUpdateShow,theme:this.mergedTheme.peers.Popover,themeOverrides:this.mergedTheme.peerOverrides.Popover},s):null,C=!this.selected&&(!this.active||!this.pattern&&!this.isComposing)?bi("div",{class:`${l}-base-selection-placeholder ${l}-base-selection-overlay`},bi("div",{class:`${l}-base-selection-placeholder__inner`},this.placeholder)):null,S=o?bi("div",{ref:"patternInputWrapperRef",class:`${l}-base-selection-tags`},y,p?null:c,g):bi("div",{ref:"multipleElRef",class:`${l}-base-selection-tags`,tabindex:r?void 0:0},y,g);b=bi(Oo,null,h?bi(iC,Object.assign({},w,{scrollable:!0,style:"max-height: calc(var(--v-target-height) * 6.6);"}),{trigger:()=>S,default:x}):S,C)}else if(o){const e=this.pattern||this.isComposing,t=this.active?!e:!this.selected,n=!this.active&&this.selected;b=bi("div",{ref:"patternInputWrapperRef",class:`${l}-base-selection-label`,title:this.patternInputFocused?void 0:tg(this.label)},bi("input",Object.assign({},this.inputProps,{ref:"patternInputRef",class:`${l}-base-selection-input`,value:this.active?this.pattern:"",placeholder:"",readonly:r,disabled:r,tabindex:-1,autofocus:this.autofocus,onFocus:this.handlePatternInputFocus,onBlur:this.handlePatternInputBlur,onInput:this.handlePatternInputInput,onCompositionstart:this.handleCompositionStart,onCompositionend:this.handleCompositionEnd})),n?bi("div",{class:`${l}-base-selection-label__render-label ${l}-base-selection-overlay`,key:"input"},bi("div",{class:`${l}-base-selection-overlay__wrapper`},d?d({option:this.selectedOption,handleClose:()=>{}}):u?u(this.selectedOption,!0):pg(this.label,this.selectedOption,!0))):null,t?bi("div",{class:`${l}-base-selection-placeholder ${l}-base-selection-overlay`,key:"placeholder"},bi("div",{class:`${l}-base-selection-overlay__wrapper`},this.filterablePlaceholder)):null,g)}else b=bi("div",{ref:"singleElRef",class:`${l}-base-selection-label`,tabindex:this.disabled?void 0:0},void 0!==this.label?bi("div",{class:`${l}-base-selection-input`,title:tg(this.label),key:"input"},bi("div",{class:`${l}-base-selection-input__content`},d?d({option:this.selectedOption,handleClose:()=>{}}):u?u(this.selectedOption,!0):pg(this.label,this.selectedOption,!0))):bi("div",{class:`${l}-base-selection-placeholder ${l}-base-selection-overlay`,key:"placeholder"},bi("div",{class:`${l}-base-selection-placeholder__inner`},this.placeholder)),g);return bi("div",{ref:"selfRef",class:[`${l}-base-selection`,this.rtlEnabled&&`${l}-base-selection--rtl`,this.themeClass,e&&`${l}-base-selection--${e}-status`,{[`${l}-base-selection--active`]:this.active,[`${l}-base-selection--selected`]:this.selected||this.active&&this.pattern,[`${l}-base-selection--disabled`]:this.disabled,[`${l}-base-selection--multiple`]:this.multiple,[`${l}-base-selection--focus`]:this.focused}],style:this.cssVars,onClick:this.onClick,onMouseenter:this.handleMouseEnter,onMouseleave:this.handleMouseLeave,onKeydown:this.onKeydown,onFocusin:this.handleFocusin,onFocusout:this.handleFocusout,onMousedown:this.handleMouseDown},b,a?bi("div",{class:`${l}-base-selection__border`}):null,a?bi("div",{class:`${l}-base-selection__state-border`}):null)}}),{cubicBezierEaseInOut:vC}=xy;const mC=uu("base-wave","\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n border-radius: inherit;\n"),yC=qn({name:"BaseWave",props:{clsPrefix:{type:String,required:!0}},setup(e){_y("-base-wave",mC,Dt(e,"clsPrefix"));const t=$t(null),n=$t(!1);let r=null;return ar((()=>{null!==r&&window.clearTimeout(r)})),{active:n,selfRef:t,play(){null!==r&&(window.clearTimeout(r),n.value=!1,r=null),an((()=>{var e;null===(e=t.value)||void 0===e||e.offsetHeight,n.value=!0,r=window.setTimeout((()=>{n.value=!1,r=null}),1e3)}))}}},render(){const{clsPrefix:e}=this;return bi("div",{ref:"selfRef","aria-hidden":!0,class:[`${e}-base-wave`,this.active&&`${e}-base-wave--active`]})}}),{cubicBezierEaseInOut:xC,cubicBezierEaseOut:wC,cubicBezierEaseIn:CC}=xy;function SC({overflow:e="hidden",duration:t=".3s",originalTransition:n="",leavingDelay:r="0s",foldPadding:o=!1,enterToProps:i,leaveToProps:a,reverse:l=!1}={}){const s=l?"leave":"enter",c=l?"enter":"leave";return[cu(`&.fade-in-height-expand-transition-${c}-from,\n &.fade-in-height-expand-transition-${s}-to`,Object.assign(Object.assign({},i),{opacity:1})),cu(`&.fade-in-height-expand-transition-${c}-to,\n &.fade-in-height-expand-transition-${s}-from`,Object.assign(Object.assign({},a),{opacity:0,marginTop:"0 !important",marginBottom:"0 !important",paddingTop:o?"0 !important":void 0,paddingBottom:o?"0 !important":void 0})),cu(`&.fade-in-height-expand-transition-${c}-active`,`\n overflow: ${e};\n transition:\n max-height ${t} ${xC} ${r},\n opacity ${t} ${wC} ${r},\n margin-top ${t} ${xC} ${r},\n margin-bottom ${t} ${xC} ${r},\n padding-top ${t} ${xC} ${r},\n padding-bottom ${t} ${xC} ${r}\n ${n?`,${n}`:""}\n `),cu(`&.fade-in-height-expand-transition-${s}-active`,`\n overflow: ${e};\n transition:\n max-height ${t} ${xC},\n opacity ${t} ${CC},\n margin-top ${t} ${xC},\n margin-bottom ${t} ${xC},\n padding-top ${t} ${xC},\n padding-bottom ${t} ${xC}\n ${n?`,${n}`:""}\n `)]}const kC=Vp&&"chrome"in window;Vp&&navigator.userAgent.includes("Firefox");const _C=Vp&&navigator.userAgent.includes("Safari")&&!kC,EC={paddingTiny:"0 8px",paddingSmall:"0 10px",paddingMedium:"0 12px",paddingLarge:"0 14px",clearSize:"16px"};const RC={name:"Input",common:nw,self:function(e){const{textColor2:t,textColor3:n,textColorDisabled:r,primaryColor:o,primaryColorHover:i,inputColor:a,inputColorDisabled:l,borderColor:s,warningColor:c,warningColorHover:d,errorColor:u,errorColorHover:p,borderRadius:f,lineHeight:h,fontSizeTiny:g,fontSizeSmall:b,fontSizeMedium:v,fontSizeLarge:m,heightTiny:y,heightSmall:x,heightMedium:w,heightLarge:C,actionColor:S,clearColor:k,clearColorHover:_,clearColorPressed:E,placeholderColor:R,placeholderColorDisabled:O,iconColor:A,iconColorDisabled:P,iconColorHover:T,iconColorPressed:$,fontWeight:z}=e;return Object.assign(Object.assign({},EC),{fontWeight:z,countTextColorDisabled:r,countTextColor:n,heightTiny:y,heightSmall:x,heightMedium:w,heightLarge:C,fontSizeTiny:g,fontSizeSmall:b,fontSizeMedium:v,fontSizeLarge:m,lineHeight:h,lineHeightTextarea:h,borderRadius:f,iconSize:"16px",groupLabelColor:S,groupLabelTextColor:t,textColor:t,textColorDisabled:r,textDecorationColor:t,caretColor:o,placeholderColor:R,placeholderColorDisabled:O,color:a,colorDisabled:l,colorFocus:a,groupLabelBorder:`1px solid ${s}`,border:`1px solid ${s}`,borderHover:`1px solid ${i}`,borderDisabled:`1px solid ${s}`,borderFocus:`1px solid ${i}`,boxShadowFocus:`0 0 0 2px ${ep(o,{alpha:.2})}`,loadingColor:o,loadingColorWarning:c,borderWarning:`1px solid ${c}`,borderHoverWarning:`1px solid ${d}`,colorFocusWarning:a,borderFocusWarning:`1px solid ${d}`,boxShadowFocusWarning:`0 0 0 2px ${ep(c,{alpha:.2})}`,caretColorWarning:c,loadingColorError:u,borderError:`1px solid ${u}`,borderHoverError:`1px solid ${p}`,colorFocusError:a,borderFocusError:`1px solid ${p}`,boxShadowFocusError:`0 0 0 2px ${ep(u,{alpha:.2})}`,caretColorError:u,clearColor:k,clearColorHover:_,clearColorPressed:E,iconColor:A,iconColorDisabled:P,iconColorHover:T,iconColorPressed:$,suffixTextColor:t})}},OC="n-input",AC=uu("input","\n max-width: 100%;\n cursor: text;\n line-height: 1.5;\n z-index: auto;\n outline: none;\n box-sizing: border-box;\n position: relative;\n display: inline-flex;\n border-radius: var(--n-border-radius);\n background-color: var(--n-color);\n transition: background-color .3s var(--n-bezier);\n font-size: var(--n-font-size);\n font-weight: var(--n-font-weight);\n --n-padding-vertical: calc((var(--n-height) - 1.5 * var(--n-font-size)) / 2);\n",[pu("input, textarea","\n overflow: hidden;\n flex-grow: 1;\n position: relative;\n "),pu("input-el, textarea-el, input-mirror, textarea-mirror, separator, placeholder","\n box-sizing: border-box;\n font-size: inherit;\n line-height: 1.5;\n font-family: inherit;\n border: none;\n outline: none;\n background-color: #0000;\n text-align: inherit;\n transition:\n -webkit-text-fill-color .3s var(--n-bezier),\n caret-color .3s var(--n-bezier),\n color .3s var(--n-bezier),\n text-decoration-color .3s var(--n-bezier);\n "),pu("input-el, textarea-el","\n -webkit-appearance: none;\n scrollbar-width: none;\n width: 100%;\n min-width: 0;\n text-decoration-color: var(--n-text-decoration-color);\n color: var(--n-text-color);\n caret-color: var(--n-caret-color);\n background-color: transparent;\n ",[cu("&::-webkit-scrollbar, &::-webkit-scrollbar-track-piece, &::-webkit-scrollbar-thumb","\n width: 0;\n height: 0;\n display: none;\n "),cu("&::placeholder","\n color: #0000;\n -webkit-text-fill-color: transparent !important;\n "),cu("&:-webkit-autofill ~",[pu("placeholder","display: none;")])]),fu("round",[hu("textarea","border-radius: calc(var(--n-height) / 2);")]),pu("placeholder","\n pointer-events: none;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n overflow: hidden;\n color: var(--n-placeholder-color);\n ",[cu("span","\n width: 100%;\n display: inline-block;\n ")]),fu("textarea",[pu("placeholder","overflow: visible;")]),hu("autosize","width: 100%;"),fu("autosize",[pu("textarea-el, input-el","\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n ")]),uu("input-wrapper","\n overflow: hidden;\n display: inline-flex;\n flex-grow: 1;\n position: relative;\n padding-left: var(--n-padding-left);\n padding-right: var(--n-padding-right);\n "),pu("input-mirror","\n padding: 0;\n height: var(--n-height);\n line-height: var(--n-height);\n overflow: hidden;\n visibility: hidden;\n position: static;\n white-space: pre;\n pointer-events: none;\n "),pu("input-el","\n padding: 0;\n height: var(--n-height);\n line-height: var(--n-height);\n ",[cu("&[type=password]::-ms-reveal","display: none;"),cu("+",[pu("placeholder","\n display: flex;\n align-items: center; \n ")])]),hu("textarea",[pu("placeholder","white-space: nowrap;")]),pu("eye","\n display: flex;\n align-items: center;\n justify-content: center;\n transition: color .3s var(--n-bezier);\n "),fu("textarea","width: 100%;",[uu("input-word-count","\n position: absolute;\n right: var(--n-padding-right);\n bottom: var(--n-padding-vertical);\n "),fu("resizable",[uu("input-wrapper","\n resize: vertical;\n min-height: var(--n-height);\n ")]),pu("textarea-el, textarea-mirror, placeholder","\n height: 100%;\n padding-left: 0;\n padding-right: 0;\n padding-top: var(--n-padding-vertical);\n padding-bottom: var(--n-padding-vertical);\n word-break: break-word;\n display: inline-block;\n vertical-align: bottom;\n box-sizing: border-box;\n line-height: var(--n-line-height-textarea);\n margin: 0;\n resize: none;\n white-space: pre-wrap;\n scroll-padding-block-end: var(--n-padding-vertical);\n "),pu("textarea-mirror","\n width: 100%;\n pointer-events: none;\n overflow: hidden;\n visibility: hidden;\n position: static;\n white-space: pre-wrap;\n overflow-wrap: break-word;\n ")]),fu("pair",[pu("input-el, placeholder","text-align: center;"),pu("separator","\n display: flex;\n align-items: center;\n transition: color .3s var(--n-bezier);\n color: var(--n-text-color);\n white-space: nowrap;\n ",[uu("icon","\n color: var(--n-icon-color);\n "),uu("base-icon","\n color: var(--n-icon-color);\n ")])]),fu("disabled","\n cursor: not-allowed;\n background-color: var(--n-color-disabled);\n ",[pu("border","border: var(--n-border-disabled);"),pu("input-el, textarea-el","\n cursor: not-allowed;\n color: var(--n-text-color-disabled);\n text-decoration-color: var(--n-text-color-disabled);\n "),pu("placeholder","color: var(--n-placeholder-color-disabled);"),pu("separator","color: var(--n-text-color-disabled);",[uu("icon","\n color: var(--n-icon-color-disabled);\n "),uu("base-icon","\n color: var(--n-icon-color-disabled);\n ")]),uu("input-word-count","\n color: var(--n-count-text-color-disabled);\n "),pu("suffix, prefix","color: var(--n-text-color-disabled);",[uu("icon","\n color: var(--n-icon-color-disabled);\n "),uu("internal-icon","\n color: var(--n-icon-color-disabled);\n ")])]),hu("disabled",[pu("eye","\n color: var(--n-icon-color);\n cursor: pointer;\n ",[cu("&:hover","\n color: var(--n-icon-color-hover);\n "),cu("&:active","\n color: var(--n-icon-color-pressed);\n ")]),cu("&:hover",[pu("state-border","border: var(--n-border-hover);")]),fu("focus","background-color: var(--n-color-focus);",[pu("state-border","\n border: var(--n-border-focus);\n box-shadow: var(--n-box-shadow-focus);\n ")])]),pu("border, state-border","\n box-sizing: border-box;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n pointer-events: none;\n border-radius: inherit;\n border: var(--n-border);\n transition:\n box-shadow .3s var(--n-bezier),\n border-color .3s var(--n-bezier);\n "),pu("state-border","\n border-color: #0000;\n z-index: 1;\n "),pu("prefix","margin-right: 4px;"),pu("suffix","\n margin-left: 4px;\n "),pu("suffix, prefix","\n transition: color .3s var(--n-bezier);\n flex-wrap: nowrap;\n flex-shrink: 0;\n line-height: var(--n-height);\n white-space: nowrap;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n color: var(--n-suffix-text-color);\n ",[uu("base-loading","\n font-size: var(--n-icon-size);\n margin: 0 2px;\n color: var(--n-loading-color);\n "),uu("base-clear","\n font-size: var(--n-icon-size);\n ",[pu("placeholder",[uu("base-icon","\n transition: color .3s var(--n-bezier);\n color: var(--n-icon-color);\n font-size: var(--n-icon-size);\n ")])]),cu(">",[uu("icon","\n transition: color .3s var(--n-bezier);\n color: var(--n-icon-color);\n font-size: var(--n-icon-size);\n ")]),uu("base-icon","\n font-size: var(--n-icon-size);\n ")]),uu("input-word-count","\n pointer-events: none;\n line-height: 1.5;\n font-size: .85em;\n color: var(--n-count-text-color);\n transition: color .3s var(--n-bezier);\n margin-left: 4px;\n font-variant: tabular-nums;\n "),["warning","error"].map((e=>fu(`${e}-status`,[hu("disabled",[uu("base-loading",`\n color: var(--n-loading-color-${e})\n `),pu("input-el, textarea-el",`\n caret-color: var(--n-caret-color-${e});\n `),pu("state-border",`\n border: var(--n-border-${e});\n `),cu("&:hover",[pu("state-border",`\n border: var(--n-border-hover-${e});\n `)]),cu("&:focus",`\n background-color: var(--n-color-focus-${e});\n `,[pu("state-border",`\n box-shadow: var(--n-box-shadow-focus-${e});\n border: var(--n-border-focus-${e});\n `)]),fu("focus",`\n background-color: var(--n-color-focus-${e});\n `,[pu("state-border",`\n box-shadow: var(--n-box-shadow-focus-${e});\n border: var(--n-border-focus-${e});\n `)])])])))]),PC=uu("input",[fu("disabled",[pu("input-el, textarea-el","\n -webkit-text-fill-color: var(--n-text-color-disabled);\n ")])]);function TC(e){let t=0;for(const n of e)t++;return t}function $C(e){return""===e||null==e}const zC=qn({name:"InputWordCount",setup(e,{slots:t}){const{mergedValueRef:n,maxlengthRef:r,mergedClsPrefixRef:o,countGraphemesRef:i}=Wr(OC),a=gi((()=>{const{value:e}=n;return null===e||Array.isArray(e)?0:(i.value||TC)(e)}));return()=>{const{value:e}=r,{value:i}=n;return bi("span",{class:`${o.value}-input-word-count`},gg(t.default,{value:null===i||Array.isArray(i)?"":i},(()=>[void 0===e?a.value:`${a.value} / ${e}`])))}}}),MC=qn({name:"Input",props:Object.assign(Object.assign({},Ey.props),{bordered:{type:Boolean,default:void 0},type:{type:String,default:"text"},placeholder:[Array,String],defaultValue:{type:[String,Array],default:null},value:[String,Array],disabled:{type:Boolean,default:void 0},size:String,rows:{type:[Number,String],default:3},round:Boolean,minlength:[String,Number],maxlength:[String,Number],clearable:Boolean,autosize:{type:[Boolean,Object],default:!1},pair:Boolean,separator:String,readonly:{type:[String,Boolean],default:!1},passivelyActivated:Boolean,showPasswordOn:String,stateful:{type:Boolean,default:!0},autofocus:Boolean,inputProps:Object,resizable:{type:Boolean,default:!0},showCount:Boolean,loading:{type:Boolean,default:void 0},allowInput:Function,renderCount:Function,onMousedown:Function,onKeydown:Function,onKeyup:[Function,Array],onInput:[Function,Array],onFocus:[Function,Array],onBlur:[Function,Array],onClick:[Function,Array],onChange:[Function,Array],onClear:[Function,Array],countGraphemes:Function,status:String,"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],textDecoration:[String,Array],attrSize:{type:Number,default:20},onInputBlur:[Function,Array],onInputFocus:[Function,Array],onDeactivate:[Function,Array],onActivate:[Function,Array],onWrapperFocus:[Function,Array],onWrapperBlur:[Function,Array],internalDeactivateOnEnter:Boolean,internalForceFocus:Boolean,internalLoadingBeforeSuffix:{type:Boolean,default:!0},showPasswordToggle:Boolean}),slots:Object,setup(e){const{mergedClsPrefixRef:t,mergedBorderedRef:n,inlineThemeDisabled:r,mergedRtlRef:o}=wg(e),i=Ey("Input","-input",AC,RC,e,t);_C&&_y("-input-safari",PC,t);const a=$t(null),l=$t(null),s=$t(null),c=$t(null),d=$t(null),u=$t(null),p=$t(null),f=function(e){const t=$t(null);function n(){t.value=null}return go(e,n),{recordCursor:function(){const{value:r}=e;if(!(null==r?void 0:r.focus))return void n();const{selectionStart:o,selectionEnd:i,value:a}=r;null!=o&&null!=i?t.value={start:o,end:i,beforeText:a.slice(0,o),afterText:a.slice(i)}:n()},restoreCursor:function(){var n;const{value:r}=t,{value:o}=e;if(!r||!o)return;const{value:i}=o,{start:a,beforeText:l,afterText:s}=r;let c=i.length;if(i.endsWith(s))c=i.length-s.length;else if(i.startsWith(l))c=l.length;else{const e=l[a-1],t=i.indexOf(e,a-1);-1!==t&&(c=t+1)}null===(n=o.setSelectionRange)||void 0===n||n.call(o,c,c)}}}(p),h=$t(null),{localeRef:g}=vy("Input"),b=$t(e.defaultValue),v=$p(Dt(e,"value"),b),m=_g(e),{mergedSizeRef:y,mergedDisabledRef:x,mergedStatusRef:w}=m,C=$t(!1),S=$t(!1),k=$t(!1),_=$t(!1);let E=null;const R=gi((()=>{const{placeholder:t,pair:n}=e;return n?Array.isArray(t)?t:void 0===t?["",""]:[t,t]:void 0===t?[g.value.placeholder]:[t]})),O=gi((()=>{const{value:e}=k,{value:t}=v,{value:n}=R;return!e&&($C(t)||Array.isArray(t)&&$C(t[0]))&&n[0]})),A=gi((()=>{const{value:e}=k,{value:t}=v,{value:n}=R;return!e&&n[1]&&($C(t)||Array.isArray(t)&&$C(t[1]))})),P=hp((()=>e.internalForceFocus||C.value)),T=hp((()=>{if(x.value||e.readonly||!e.clearable||!P.value&&!S.value)return!1;const{value:t}=v,{value:n}=P;return e.pair?!(!Array.isArray(t)||!t[0]&&!t[1])&&(S.value||n):!!t&&(S.value||n)})),$=gi((()=>{const{showPasswordOn:t}=e;return t||(e.showPasswordToggle?"click":void 0)})),z=$t(!1),M=gi((()=>{const{textDecoration:t}=e;return t?Array.isArray(t)?t.map((e=>({textDecoration:e}))):[{textDecoration:t}]:["",""]})),F=$t(void 0),N=gi((()=>{const{maxlength:t}=e;return void 0===t?void 0:Number(t)}));rr((()=>{const{value:e}=v;Array.isArray(e)||q(e)}));const B=ri().proxy;function I(t,n){const{onUpdateValue:r,"onUpdate:value":o,onInput:i}=e,{nTriggerFormInput:a}=m;r&&og(r,t,n),o&&og(o,t,n),i&&og(i,t,n),b.value=t,a()}function L(t,n){const{onChange:r}=e,{nTriggerFormChange:o}=m;r&&og(r,t,n),b.value=t,o()}function j(t,n=0,r="input"){const o=t.target.value;if(q(o),t instanceof InputEvent&&!t.isComposing&&(k.value=!1),"textarea"===e.type){const{value:e}=h;e&&e.syncUnifiedContainer()}if(E=o,k.value)return;f.recordCursor();const i=function(t){const{countGraphemes:n,maxlength:r,minlength:o}=e;if(n){let e;if(void 0!==r&&(void 0===e&&(e=n(t)),e>Number(r)))return!1;if(void 0!==o&&(void 0===e&&(e=n(t)),e{var e;null===(e=a.value)||void 0===e||e.focus()})))}function U(){var t,n,r;x.value||(e.passivelyActivated?null===(t=a.value)||void 0===t||t.focus():(null===(n=l.value)||void 0===n||n.focus(),null===(r=d.value)||void 0===r||r.focus()))}function q(t){const{type:n,pair:r,autosize:o}=e;if(!r&&o)if("textarea"===n){const{value:e}=s;e&&(e.textContent=`${null!=t?t:""}\r\n`)}else{const{value:e}=c;e&&(t?e.textContent=t:e.innerHTML=" ")}}const K=$t({top:"0"});let V=null;ho((()=>{const{autosize:t,type:n}=e;t&&"textarea"===n?V=go(v,(e=>{Array.isArray(e)||e===E||q(e)})):null==V||V()}));let G=null;ho((()=>{"textarea"===e.type?G=go(v,(e=>{var t;Array.isArray(e)||e===E||null===(t=h.value)||void 0===t||t.syncUnifiedContainer()})):null==G||G()})),Hr(OC,{mergedValueRef:v,maxlengthRef:N,mergedClsPrefixRef:t,countGraphemesRef:Dt(e,"countGraphemes")});const Z={wrapperElRef:a,inputElRef:d,textareaElRef:l,isCompositing:k,clear:H,focus:U,blur:function(){var e;(null===(e=a.value)||void 0===e?void 0:e.contains(document.activeElement))&&document.activeElement.blur()},select:function(){var e,t;null===(e=l.value)||void 0===e||e.select(),null===(t=d.value)||void 0===t||t.select()},deactivate:function(){const{value:e}=a;(null==e?void 0:e.contains(document.activeElement))&&e!==document.activeElement&&W()},activate:function(){x.value||(l.value?l.value.focus():d.value&&d.value.focus())},scrollTo:function(t){if("textarea"===e.type){const{value:e}=l;null==e||e.scrollTo(t)}else{const{value:e}=d;null==e||e.scrollTo(t)}}},X=yy("Input",o,t),Q=gi((()=>{const{value:e}=y,{common:{cubicBezierEaseInOut:t},self:{color:n,borderRadius:r,textColor:o,caretColor:a,caretColorError:l,caretColorWarning:s,textDecorationColor:c,border:d,borderDisabled:u,borderHover:p,borderFocus:f,placeholderColor:h,placeholderColorDisabled:g,lineHeightTextarea:b,colorDisabled:v,colorFocus:m,textColorDisabled:x,boxShadowFocus:w,iconSize:C,colorFocusWarning:S,boxShadowFocusWarning:k,borderWarning:_,borderFocusWarning:E,borderHoverWarning:R,colorFocusError:O,boxShadowFocusError:A,borderError:P,borderFocusError:T,borderHoverError:$,clearSize:z,clearColor:M,clearColorHover:F,clearColorPressed:N,iconColor:B,iconColorDisabled:I,suffixTextColor:L,countTextColor:j,countTextColorDisabled:D,iconColorHover:H,iconColorPressed:W,loadingColor:U,loadingColorError:q,loadingColorWarning:K,fontWeight:V,[yu("padding",e)]:G,[yu("fontSize",e)]:Z,[yu("height",e)]:X}}=i.value,{left:Q,right:Y}=Au(G);return{"--n-bezier":t,"--n-count-text-color":j,"--n-count-text-color-disabled":D,"--n-color":n,"--n-font-size":Z,"--n-font-weight":V,"--n-border-radius":r,"--n-height":X,"--n-padding-left":Q,"--n-padding-right":Y,"--n-text-color":o,"--n-caret-color":a,"--n-text-decoration-color":c,"--n-border":d,"--n-border-disabled":u,"--n-border-hover":p,"--n-border-focus":f,"--n-placeholder-color":h,"--n-placeholder-color-disabled":g,"--n-icon-size":C,"--n-line-height-textarea":b,"--n-color-disabled":v,"--n-color-focus":m,"--n-text-color-disabled":x,"--n-box-shadow-focus":w,"--n-loading-color":U,"--n-caret-color-warning":s,"--n-color-focus-warning":S,"--n-box-shadow-focus-warning":k,"--n-border-warning":_,"--n-border-focus-warning":E,"--n-border-hover-warning":R,"--n-loading-color-warning":K,"--n-caret-color-error":l,"--n-color-focus-error":O,"--n-box-shadow-focus-error":A,"--n-border-error":P,"--n-border-focus-error":T,"--n-border-hover-error":$,"--n-loading-color-error":q,"--n-clear-color":M,"--n-clear-size":z,"--n-clear-color-hover":F,"--n-clear-color-pressed":N,"--n-icon-color":B,"--n-icon-color-hover":H,"--n-icon-color-pressed":W,"--n-icon-color-disabled":I,"--n-suffix-text-color":L}})),Y=r?Sg("input",gi((()=>{const{value:e}=y;return e[0]})),Q,e):void 0;return Object.assign(Object.assign({},Z),{wrapperElRef:a,inputElRef:d,inputMirrorElRef:c,inputEl2Ref:u,textareaElRef:l,textareaMirrorElRef:s,textareaScrollbarInstRef:h,rtlEnabled:X,uncontrolledValue:b,mergedValue:v,passwordVisible:z,mergedPlaceholder:R,showPlaceholder1:O,showPlaceholder2:A,mergedFocus:P,isComposing:k,activated:_,showClearButton:T,mergedSize:y,mergedDisabled:x,textDecorationStyle:M,mergedClsPrefix:t,mergedBordered:n,mergedShowPasswordOn:$,placeholderStyle:K,mergedStatus:w,textAreaScrollContainerWidth:F,handleTextAreaScroll:function(e){var t;const{scrollTop:n}=e.target;K.value.top=-n+"px",null===(t=h.value)||void 0===t||t.syncUnifiedContainer()},handleCompositionStart:function(){k.value=!0},handleCompositionEnd:function(e){k.value=!1,e.target===u.value?j(e,1):j(e,0)},handleInput:j,handleInputBlur:function(t){!function(t){const{onInputBlur:n}=e;n&&og(n,t)}(t),t.relatedTarget===a.value&&function(){const{onDeactivate:t}=e;t&&og(t)}(),(null===t.relatedTarget||t.relatedTarget!==d.value&&t.relatedTarget!==u.value&&t.relatedTarget!==l.value)&&(_.value=!1),D(t,"blur"),p.value=null},handleInputFocus:function(t,n){!function(t){const{onInputFocus:n}=e;n&&og(n,t)}(t),C.value=!0,_.value=!0,function(){const{onActivate:t}=e;t&&og(t)}(),D(t,"focus"),0===n?p.value=d.value:1===n?p.value=u.value:2===n&&(p.value=l.value)},handleWrapperBlur:function(t){e.passivelyActivated&&(!function(t){const{onWrapperBlur:n}=e;n&&og(n,t)}(t),D(t,"blur"))},handleWrapperFocus:function(t){e.passivelyActivated&&(C.value=!0,function(t){const{onWrapperFocus:n}=e;n&&og(n,t)}(t),D(t,"focus"))},handleMouseEnter:function(){var t;S.value=!0,"textarea"===e.type&&(null===(t=h.value)||void 0===t||t.handleMouseEnterWrapper())},handleMouseLeave:function(){var t;S.value=!1,"textarea"===e.type&&(null===(t=h.value)||void 0===t||t.handleMouseLeaveWrapper())},handleMouseDown:function(t){const{onMousedown:n}=e;n&&n(t);const{tagName:r}=t.target;if("INPUT"!==r&&"TEXTAREA"!==r){if(e.resizable){const{value:e}=a;if(e){const{left:n,top:r,width:o,height:i}=e.getBoundingClientRect(),a=14;if(n+o-a{e.preventDefault(),pp("mouseup",document,t)};if(up("mouseup",document,t),"mousedown"!==$.value)return;z.value=!0;const n=()=>{z.value=!1,pp("mouseup",document,n)};up("mouseup",document,n)},handleWrapperKeydown:function(t){switch(e.onKeydown&&og(e.onKeydown,t),t.key){case"Escape":W();break;case"Enter":!function(t){var n,r;if(e.passivelyActivated){const{value:o}=_;if(o)return void(e.internalDeactivateOnEnter&&W());t.preventDefault(),"textarea"===e.type?null===(n=l.value)||void 0===n||n.focus():null===(r=d.value)||void 0===r||r.focus()}}(t)}},handleWrapperKeyup:function(t){e.onKeyup&&og(e.onKeyup,t)},handleTextAreaMirrorResize:function(){(()=>{var t,n;if("textarea"===e.type){const{autosize:r}=e;if(r&&(F.value=null===(n=null===(t=h.value)||void 0===t?void 0:t.$el)||void 0===n?void 0:n.offsetWidth),!l.value)return;if("boolean"==typeof r)return;const{paddingTop:o,paddingBottom:i,lineHeight:a}=window.getComputedStyle(l.value),c=Number(o.slice(0,-2)),d=Number(i.slice(0,-2)),u=Number(a.slice(0,-2)),{value:p}=s;if(!p)return;if(r.minRows){const e=`${c+d+u*Math.max(r.minRows,1)}px`;p.style.minHeight=e}if(r.maxRows){const e=`${c+d+u*r.maxRows}px`;p.style.maxHeight=e}}})()},getTextareaScrollContainer:()=>l.value,mergedTheme:i,cssVars:r?void 0:Q,themeClass:null==Y?void 0:Y.themeClass,onRender:null==Y?void 0:Y.onRender})},render(){var e,t;const{mergedClsPrefix:n,mergedStatus:r,themeClass:o,type:i,countGraphemes:a,onRender:l}=this,s=this.$slots;return null==l||l(),bi("div",{ref:"wrapperElRef",class:[`${n}-input`,o,r&&`${n}-input--${r}-status`,{[`${n}-input--rtl`]:this.rtlEnabled,[`${n}-input--disabled`]:this.mergedDisabled,[`${n}-input--textarea`]:"textarea"===i,[`${n}-input--resizable`]:this.resizable&&!this.autosize,[`${n}-input--autosize`]:this.autosize,[`${n}-input--round`]:this.round&&!("textarea"===i),[`${n}-input--pair`]:this.pair,[`${n}-input--focus`]:this.mergedFocus,[`${n}-input--stateful`]:this.stateful}],style:this.cssVars,tabindex:this.mergedDisabled||!this.passivelyActivated||this.activated?void 0:0,onFocus:this.handleWrapperFocus,onBlur:this.handleWrapperBlur,onClick:this.handleClick,onMousedown:this.handleMouseDown,onMouseenter:this.handleMouseEnter,onMouseleave:this.handleMouseLeave,onCompositionstart:this.handleCompositionStart,onCompositionend:this.handleCompositionEnd,onKeyup:this.handleWrapperKeyup,onKeydown:this.handleWrapperKeydown},bi("div",{class:`${n}-input-wrapper`},bg(s.prefix,(e=>e&&bi("div",{class:`${n}-input__prefix`},e))),"textarea"===i?bi(aw,{ref:"textareaScrollbarInstRef",class:`${n}-input__textarea`,container:this.getTextareaScrollContainer,triggerDisplayManually:!0,useUnifiedContainer:!0,internalHoistYRail:!0},{default:()=>{var e,t;const{textAreaScrollContainerWidth:r}=this,o={width:this.autosize&&r&&`${r}px`};return bi(Oo,null,bi("textarea",Object.assign({},this.inputProps,{ref:"textareaElRef",class:[`${n}-input__textarea-el`,null===(e=this.inputProps)||void 0===e?void 0:e.class],autofocus:this.autofocus,rows:Number(this.rows),placeholder:this.placeholder,value:this.mergedValue,disabled:this.mergedDisabled,maxlength:a?void 0:this.maxlength,minlength:a?void 0:this.minlength,readonly:this.readonly,tabindex:this.passivelyActivated&&!this.activated?-1:void 0,style:[this.textDecorationStyle[0],null===(t=this.inputProps)||void 0===t?void 0:t.style,o],onBlur:this.handleInputBlur,onFocus:e=>{this.handleInputFocus(e,2)},onInput:this.handleInput,onChange:this.handleChange,onScroll:this.handleTextAreaScroll})),this.showPlaceholder1?bi("div",{class:`${n}-input__placeholder`,style:[this.placeholderStyle,o],key:"placeholder"},this.mergedPlaceholder[0]):null,this.autosize?bi(Oh,{onResize:this.handleTextAreaMirrorResize},{default:()=>bi("div",{ref:"textareaMirrorElRef",class:`${n}-input__textarea-mirror`,key:"mirror"})}):null)}}):bi("div",{class:`${n}-input__input`},bi("input",Object.assign({type:"password"===i&&this.mergedShowPasswordOn&&this.passwordVisible?"text":i},this.inputProps,{ref:"inputElRef",class:[`${n}-input__input-el`,null===(e=this.inputProps)||void 0===e?void 0:e.class],style:[this.textDecorationStyle[0],null===(t=this.inputProps)||void 0===t?void 0:t.style],tabindex:this.passivelyActivated&&!this.activated?-1:void 0,placeholder:this.mergedPlaceholder[0],disabled:this.mergedDisabled,maxlength:a?void 0:this.maxlength,minlength:a?void 0:this.minlength,value:Array.isArray(this.mergedValue)?this.mergedValue[0]:this.mergedValue,readonly:this.readonly,autofocus:this.autofocus,size:this.attrSize,onBlur:this.handleInputBlur,onFocus:e=>{this.handleInputFocus(e,0)},onInput:e=>{this.handleInput(e,0)},onChange:e=>{this.handleChange(e,0)}})),this.showPlaceholder1?bi("div",{class:`${n}-input__placeholder`},bi("span",null,this.mergedPlaceholder[0])):null,this.autosize?bi("div",{class:`${n}-input__input-mirror`,key:"mirror",ref:"inputMirrorElRef"}," "):null),!this.pair&&bg(s.suffix,(e=>e||this.clearable||this.showCount||this.mergedShowPasswordOn||void 0!==this.loading?bi("div",{class:`${n}-input__suffix`},[bg(s["clear-icon-placeholder"],(e=>(this.clearable||e)&&bi(tx,{clsPrefix:n,show:this.showClearButton,onClear:this.handleClear},{placeholder:()=>e,icon:()=>{var e,t;return null===(t=(e=this.$slots)["clear-icon"])||void 0===t?void 0:t.call(e)}}))),this.internalLoadingBeforeSuffix?null:e,void 0!==this.loading?bi(pC,{clsPrefix:n,loading:this.loading,showArrow:!1,showClear:!1,style:this.cssVars}):null,this.internalLoadingBeforeSuffix?e:null,this.showCount&&"textarea"!==this.type?bi(zC,null,{default:e=>{var t;const{renderCount:n}=this;return n?n(e):null===(t=s.count)||void 0===t?void 0:t.call(s,e)}}):null,this.mergedShowPasswordOn&&"password"===this.type?bi("div",{class:`${n}-input__eye`,onMousedown:this.handlePasswordToggleMousedown,onClick:this.handlePasswordToggleClick},this.passwordVisible?hg(s["password-visible-icon"],(()=>[bi(Oy,{clsPrefix:n},{default:()=>bi(Hy,null)})])):hg(s["password-invisible-icon"],(()=>[bi(Oy,{clsPrefix:n},{default:()=>bi(Wy,null)})]))):null]):null))),this.pair?bi("span",{class:`${n}-input__separator`},hg(s.separator,(()=>[this.separator]))):null,this.pair?bi("div",{class:`${n}-input-wrapper`},bi("div",{class:`${n}-input__input`},bi("input",{ref:"inputEl2Ref",type:this.type,class:`${n}-input__input-el`,tabindex:this.passivelyActivated&&!this.activated?-1:void 0,placeholder:this.mergedPlaceholder[1],disabled:this.mergedDisabled,maxlength:a?void 0:this.maxlength,minlength:a?void 0:this.minlength,value:Array.isArray(this.mergedValue)?this.mergedValue[1]:void 0,readonly:this.readonly,style:this.textDecorationStyle[1],onBlur:this.handleInputBlur,onFocus:e=>{this.handleInputFocus(e,1)},onInput:e=>{this.handleInput(e,1)},onChange:e=>{this.handleChange(e,1)}}),this.showPlaceholder2?bi("div",{class:`${n}-input__placeholder`},bi("span",null,this.mergedPlaceholder[1])):null),bg(s.suffix,(e=>(this.clearable||e)&&bi("div",{class:`${n}-input__suffix`},[this.clearable&&bi(tx,{clsPrefix:n,show:this.showClearButton,onClear:this.handleClear},{icon:()=>{var e;return null===(e=s["clear-icon"])||void 0===e?void 0:e.call(s)},placeholder:()=>{var e;return null===(e=s["clear-icon-placeholder"])||void 0===e?void 0:e.call(s)}}),e])))):null,this.mergedBordered?bi("div",{class:`${n}-input__border`}):null,this.mergedBordered?bi("div",{class:`${n}-input__state-border`}):null,this.showCount&&"textarea"===i?bi(zC,null,{default:e=>{var t;const{renderCount:n}=this;return n?n(e):null===(t=s.count)||void 0===t?void 0:t.call(s,e)}}):null)}});function FC(e){return"group"===e.type}function NC(e){return"ignored"===e.type}function BC(e,t){try{return!!(1+t.toString().toLowerCase().indexOf(e.trim().toLowerCase()))}catch(yp){return!1}}function IC(e,t){return{getIsGroup:FC,getIgnored:NC,getKey:t=>FC(t)?t.name||t.key||"key-required":t[e],getChildren:e=>e[t]}}function LC(e){return Ju(e,[255,255,255,.16])}function jC(e){return Ju(e,[0,0,0,.12])}const DC="n-button-group",HC={paddingTiny:"0 6px",paddingSmall:"0 10px",paddingMedium:"0 14px",paddingLarge:"0 18px",paddingRoundTiny:"0 10px",paddingRoundSmall:"0 14px",paddingRoundMedium:"0 18px",paddingRoundLarge:"0 22px",iconMarginTiny:"6px",iconMarginSmall:"6px",iconMarginMedium:"6px",iconMarginLarge:"6px",iconSizeTiny:"14px",iconSizeSmall:"18px",iconSizeMedium:"18px",iconSizeLarge:"20px",rippleDuration:".6s"};const WC={name:"Button",common:nw,self:function(e){const{heightTiny:t,heightSmall:n,heightMedium:r,heightLarge:o,borderRadius:i,fontSizeTiny:a,fontSizeSmall:l,fontSizeMedium:s,fontSizeLarge:c,opacityDisabled:d,textColor2:u,textColor3:p,primaryColorHover:f,primaryColorPressed:h,borderColor:g,primaryColor:b,baseColor:v,infoColor:m,infoColorHover:y,infoColorPressed:x,successColor:w,successColorHover:C,successColorPressed:S,warningColor:k,warningColorHover:_,warningColorPressed:E,errorColor:R,errorColorHover:O,errorColorPressed:A,fontWeight:P,buttonColor2:T,buttonColor2Hover:$,buttonColor2Pressed:z,fontWeightStrong:M}=e;return Object.assign(Object.assign({},HC),{heightTiny:t,heightSmall:n,heightMedium:r,heightLarge:o,borderRadiusTiny:i,borderRadiusSmall:i,borderRadiusMedium:i,borderRadiusLarge:i,fontSizeTiny:a,fontSizeSmall:l,fontSizeMedium:s,fontSizeLarge:c,opacityDisabled:d,colorOpacitySecondary:"0.16",colorOpacitySecondaryHover:"0.22",colorOpacitySecondaryPressed:"0.28",colorSecondary:T,colorSecondaryHover:$,colorSecondaryPressed:z,colorTertiary:T,colorTertiaryHover:$,colorTertiaryPressed:z,colorQuaternary:"#0000",colorQuaternaryHover:$,colorQuaternaryPressed:z,color:"#0000",colorHover:"#0000",colorPressed:"#0000",colorFocus:"#0000",colorDisabled:"#0000",textColor:u,textColorTertiary:p,textColorHover:f,textColorPressed:h,textColorFocus:f,textColorDisabled:u,textColorText:u,textColorTextHover:f,textColorTextPressed:h,textColorTextFocus:f,textColorTextDisabled:u,textColorGhost:u,textColorGhostHover:f,textColorGhostPressed:h,textColorGhostFocus:f,textColorGhostDisabled:u,border:`1px solid ${g}`,borderHover:`1px solid ${f}`,borderPressed:`1px solid ${h}`,borderFocus:`1px solid ${f}`,borderDisabled:`1px solid ${g}`,rippleColor:b,colorPrimary:b,colorHoverPrimary:f,colorPressedPrimary:h,colorFocusPrimary:f,colorDisabledPrimary:b,textColorPrimary:v,textColorHoverPrimary:v,textColorPressedPrimary:v,textColorFocusPrimary:v,textColorDisabledPrimary:v,textColorTextPrimary:b,textColorTextHoverPrimary:f,textColorTextPressedPrimary:h,textColorTextFocusPrimary:f,textColorTextDisabledPrimary:u,textColorGhostPrimary:b,textColorGhostHoverPrimary:f,textColorGhostPressedPrimary:h,textColorGhostFocusPrimary:f,textColorGhostDisabledPrimary:b,borderPrimary:`1px solid ${b}`,borderHoverPrimary:`1px solid ${f}`,borderPressedPrimary:`1px solid ${h}`,borderFocusPrimary:`1px solid ${f}`,borderDisabledPrimary:`1px solid ${b}`,rippleColorPrimary:b,colorInfo:m,colorHoverInfo:y,colorPressedInfo:x,colorFocusInfo:y,colorDisabledInfo:m,textColorInfo:v,textColorHoverInfo:v,textColorPressedInfo:v,textColorFocusInfo:v,textColorDisabledInfo:v,textColorTextInfo:m,textColorTextHoverInfo:y,textColorTextPressedInfo:x,textColorTextFocusInfo:y,textColorTextDisabledInfo:u,textColorGhostInfo:m,textColorGhostHoverInfo:y,textColorGhostPressedInfo:x,textColorGhostFocusInfo:y,textColorGhostDisabledInfo:m,borderInfo:`1px solid ${m}`,borderHoverInfo:`1px solid ${y}`,borderPressedInfo:`1px solid ${x}`,borderFocusInfo:`1px solid ${y}`,borderDisabledInfo:`1px solid ${m}`,rippleColorInfo:m,colorSuccess:w,colorHoverSuccess:C,colorPressedSuccess:S,colorFocusSuccess:C,colorDisabledSuccess:w,textColorSuccess:v,textColorHoverSuccess:v,textColorPressedSuccess:v,textColorFocusSuccess:v,textColorDisabledSuccess:v,textColorTextSuccess:w,textColorTextHoverSuccess:C,textColorTextPressedSuccess:S,textColorTextFocusSuccess:C,textColorTextDisabledSuccess:u,textColorGhostSuccess:w,textColorGhostHoverSuccess:C,textColorGhostPressedSuccess:S,textColorGhostFocusSuccess:C,textColorGhostDisabledSuccess:w,borderSuccess:`1px solid ${w}`,borderHoverSuccess:`1px solid ${C}`,borderPressedSuccess:`1px solid ${S}`,borderFocusSuccess:`1px solid ${C}`,borderDisabledSuccess:`1px solid ${w}`,rippleColorSuccess:w,colorWarning:k,colorHoverWarning:_,colorPressedWarning:E,colorFocusWarning:_,colorDisabledWarning:k,textColorWarning:v,textColorHoverWarning:v,textColorPressedWarning:v,textColorFocusWarning:v,textColorDisabledWarning:v,textColorTextWarning:k,textColorTextHoverWarning:_,textColorTextPressedWarning:E,textColorTextFocusWarning:_,textColorTextDisabledWarning:u,textColorGhostWarning:k,textColorGhostHoverWarning:_,textColorGhostPressedWarning:E,textColorGhostFocusWarning:_,textColorGhostDisabledWarning:k,borderWarning:`1px solid ${k}`,borderHoverWarning:`1px solid ${_}`,borderPressedWarning:`1px solid ${E}`,borderFocusWarning:`1px solid ${_}`,borderDisabledWarning:`1px solid ${k}`,rippleColorWarning:k,colorError:R,colorHoverError:O,colorPressedError:A,colorFocusError:O,colorDisabledError:R,textColorError:v,textColorHoverError:v,textColorPressedError:v,textColorFocusError:v,textColorDisabledError:v,textColorTextError:R,textColorTextHoverError:O,textColorTextPressedError:A,textColorTextFocusError:O,textColorTextDisabledError:u,textColorGhostError:R,textColorGhostHoverError:O,textColorGhostPressedError:A,textColorGhostFocusError:O,textColorGhostDisabledError:R,borderError:`1px solid ${R}`,borderHoverError:`1px solid ${O}`,borderPressedError:`1px solid ${A}`,borderFocusError:`1px solid ${O}`,borderDisabledError:`1px solid ${R}`,rippleColorError:R,waveOpacity:"0.6",fontWeight:P,fontWeightStrong:M})}},UC=cu([uu("button","\n margin: 0;\n font-weight: var(--n-font-weight);\n line-height: 1;\n font-family: inherit;\n padding: var(--n-padding);\n height: var(--n-height);\n font-size: var(--n-font-size);\n border-radius: var(--n-border-radius);\n color: var(--n-text-color);\n background-color: var(--n-color);\n width: var(--n-width);\n white-space: nowrap;\n outline: none;\n position: relative;\n z-index: auto;\n border: none;\n display: inline-flex;\n flex-wrap: nowrap;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n user-select: none;\n -webkit-user-select: none;\n text-align: center;\n cursor: pointer;\n text-decoration: none;\n transition:\n color .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n opacity .3s var(--n-bezier),\n border-color .3s var(--n-bezier);\n ",[fu("color",[pu("border",{borderColor:"var(--n-border-color)"}),fu("disabled",[pu("border",{borderColor:"var(--n-border-color-disabled)"})]),hu("disabled",[cu("&:focus",[pu("state-border",{borderColor:"var(--n-border-color-focus)"})]),cu("&:hover",[pu("state-border",{borderColor:"var(--n-border-color-hover)"})]),cu("&:active",[pu("state-border",{borderColor:"var(--n-border-color-pressed)"})]),fu("pressed",[pu("state-border",{borderColor:"var(--n-border-color-pressed)"})])])]),fu("disabled",{backgroundColor:"var(--n-color-disabled)",color:"var(--n-text-color-disabled)"},[pu("border",{border:"var(--n-border-disabled)"})]),hu("disabled",[cu("&:focus",{backgroundColor:"var(--n-color-focus)",color:"var(--n-text-color-focus)"},[pu("state-border",{border:"var(--n-border-focus)"})]),cu("&:hover",{backgroundColor:"var(--n-color-hover)",color:"var(--n-text-color-hover)"},[pu("state-border",{border:"var(--n-border-hover)"})]),cu("&:active",{backgroundColor:"var(--n-color-pressed)",color:"var(--n-text-color-pressed)"},[pu("state-border",{border:"var(--n-border-pressed)"})]),fu("pressed",{backgroundColor:"var(--n-color-pressed)",color:"var(--n-text-color-pressed)"},[pu("state-border",{border:"var(--n-border-pressed)"})])]),fu("loading","cursor: wait;"),uu("base-wave","\n pointer-events: none;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n animation-iteration-count: 1;\n animation-duration: var(--n-ripple-duration);\n animation-timing-function: var(--n-bezier-ease-out), var(--n-bezier-ease-out);\n ",[fu("active",{zIndex:1,animationName:"button-wave-spread, button-wave-opacity"})]),Vp&&"MozBoxSizing"in document.createElement("div").style?cu("&::moz-focus-inner",{border:0}):null,pu("border, state-border","\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n border-radius: inherit;\n transition: border-color .3s var(--n-bezier);\n pointer-events: none;\n "),pu("border",{border:"var(--n-border)"}),pu("state-border",{border:"var(--n-border)",borderColor:"#0000",zIndex:1}),pu("icon","\n margin: var(--n-icon-margin);\n margin-left: 0;\n height: var(--n-icon-size);\n width: var(--n-icon-size);\n max-width: var(--n-icon-size);\n font-size: var(--n-icon-size);\n position: relative;\n flex-shrink: 0;\n ",[uu("icon-slot","\n height: var(--n-icon-size);\n width: var(--n-icon-size);\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n display: flex;\n align-items: center;\n justify-content: center;\n ",[Jy({top:"50%",originalTransform:"translateY(-50%)"})]),function({duration:e=".2s",delay:t=".1s"}={}){return[cu("&.fade-in-width-expand-transition-leave-from, &.fade-in-width-expand-transition-enter-to",{opacity:1}),cu("&.fade-in-width-expand-transition-leave-to, &.fade-in-width-expand-transition-enter-from","\n opacity: 0!important;\n margin-left: 0!important;\n margin-right: 0!important;\n "),cu("&.fade-in-width-expand-transition-leave-active",`\n overflow: hidden;\n transition:\n opacity ${e} ${vC},\n max-width ${e} ${vC} ${t},\n margin-left ${e} ${vC} ${t},\n margin-right ${e} ${vC} ${t};\n `),cu("&.fade-in-width-expand-transition-enter-active",`\n overflow: hidden;\n transition:\n opacity ${e} ${vC} ${t},\n max-width ${e} ${vC},\n margin-left ${e} ${vC},\n margin-right ${e} ${vC};\n `)]}()]),pu("content","\n display: flex;\n align-items: center;\n flex-wrap: nowrap;\n min-width: 0;\n ",[cu("~",[pu("icon",{margin:"var(--n-icon-margin)",marginRight:0})])]),fu("block","\n display: flex;\n width: 100%;\n "),fu("dashed",[pu("border, state-border",{borderStyle:"dashed !important"})]),fu("disabled",{cursor:"not-allowed",opacity:"var(--n-opacity-disabled)"})]),cu("@keyframes button-wave-spread",{from:{boxShadow:"0 0 0.5px 0 var(--n-ripple-color)"},to:{boxShadow:"0 0 0.5px 4.5px var(--n-ripple-color)"}}),cu("@keyframes button-wave-opacity",{from:{opacity:"var(--n-wave-opacity)"},to:{opacity:0}})]),qC=qn({name:"Button",props:Object.assign(Object.assign({},Ey.props),{color:String,textColor:String,text:Boolean,block:Boolean,loading:Boolean,disabled:Boolean,circle:Boolean,size:String,ghost:Boolean,round:Boolean,secondary:Boolean,tertiary:Boolean,quaternary:Boolean,strong:Boolean,focusable:{type:Boolean,default:!0},keyboard:{type:Boolean,default:!0},tag:{type:String,default:"button"},type:{type:String,default:"default"},dashed:Boolean,renderIcon:Function,iconPlacement:{type:String,default:"left"},attrType:{type:String,default:"button"},bordered:{type:Boolean,default:!0},onClick:[Function,Array],nativeFocusBehavior:{type:Boolean,default:!_C}}),slots:Object,setup(e){const t=$t(null),n=$t(null),r=$t(!1),o=hp((()=>!e.quaternary&&!e.tertiary&&!e.secondary&&!e.text&&(!e.color||e.ghost||e.dashed)&&e.bordered)),i=Wr(DC,{}),{mergedSizeRef:a}=_g({},{defaultSize:"medium",mergedSize:t=>{const{size:n}=e;if(n)return n;const{size:r}=i;if(r)return r;const{mergedSize:o}=t||{};return o?o.value:"medium"}}),l=gi((()=>e.focusable&&!e.disabled)),{inlineThemeDisabled:s,mergedClsPrefixRef:c,mergedRtlRef:d}=wg(e),u=Ey("Button","-button",UC,WC,e,c),p=yy("Button",d,c),f=gi((()=>{const t=u.value,{common:{cubicBezierEaseInOut:n,cubicBezierEaseOut:r},self:o}=t,{rippleDuration:i,opacityDisabled:l,fontWeight:s,fontWeightStrong:c}=o,d=a.value,{dashed:p,type:f,ghost:h,text:g,color:b,round:v,circle:m,textColor:y,secondary:x,tertiary:w,quaternary:C,strong:S}=e,k={"--n-font-weight":S?c:s};let _={"--n-color":"initial","--n-color-hover":"initial","--n-color-pressed":"initial","--n-color-focus":"initial","--n-color-disabled":"initial","--n-ripple-color":"initial","--n-text-color":"initial","--n-text-color-hover":"initial","--n-text-color-pressed":"initial","--n-text-color-focus":"initial","--n-text-color-disabled":"initial"};const E="tertiary"===f,R="default"===f,O=E?"default":f;if(g){const e=y||b;_={"--n-color":"#0000","--n-color-hover":"#0000","--n-color-pressed":"#0000","--n-color-focus":"#0000","--n-color-disabled":"#0000","--n-ripple-color":"#0000","--n-text-color":e||o[yu("textColorText",O)],"--n-text-color-hover":e?LC(e):o[yu("textColorTextHover",O)],"--n-text-color-pressed":e?jC(e):o[yu("textColorTextPressed",O)],"--n-text-color-focus":e?LC(e):o[yu("textColorTextHover",O)],"--n-text-color-disabled":e||o[yu("textColorTextDisabled",O)]}}else if(h||p){const e=y||b;_={"--n-color":"#0000","--n-color-hover":"#0000","--n-color-pressed":"#0000","--n-color-focus":"#0000","--n-color-disabled":"#0000","--n-ripple-color":b||o[yu("rippleColor",O)],"--n-text-color":e||o[yu("textColorGhost",O)],"--n-text-color-hover":e?LC(e):o[yu("textColorGhostHover",O)],"--n-text-color-pressed":e?jC(e):o[yu("textColorGhostPressed",O)],"--n-text-color-focus":e?LC(e):o[yu("textColorGhostHover",O)],"--n-text-color-disabled":e||o[yu("textColorGhostDisabled",O)]}}else if(x){const e=R?o.textColor:E?o.textColorTertiary:o[yu("color",O)],t=b||e,n="default"!==f&&"tertiary"!==f;_={"--n-color":n?ep(t,{alpha:Number(o.colorOpacitySecondary)}):o.colorSecondary,"--n-color-hover":n?ep(t,{alpha:Number(o.colorOpacitySecondaryHover)}):o.colorSecondaryHover,"--n-color-pressed":n?ep(t,{alpha:Number(o.colorOpacitySecondaryPressed)}):o.colorSecondaryPressed,"--n-color-focus":n?ep(t,{alpha:Number(o.colorOpacitySecondaryHover)}):o.colorSecondaryHover,"--n-color-disabled":o.colorSecondary,"--n-ripple-color":"#0000","--n-text-color":t,"--n-text-color-hover":t,"--n-text-color-pressed":t,"--n-text-color-focus":t,"--n-text-color-disabled":t}}else if(w||C){const e=R?o.textColor:E?o.textColorTertiary:o[yu("color",O)],t=b||e;w?(_["--n-color"]=o.colorTertiary,_["--n-color-hover"]=o.colorTertiaryHover,_["--n-color-pressed"]=o.colorTertiaryPressed,_["--n-color-focus"]=o.colorSecondaryHover,_["--n-color-disabled"]=o.colorTertiary):(_["--n-color"]=o.colorQuaternary,_["--n-color-hover"]=o.colorQuaternaryHover,_["--n-color-pressed"]=o.colorQuaternaryPressed,_["--n-color-focus"]=o.colorQuaternaryHover,_["--n-color-disabled"]=o.colorQuaternary),_["--n-ripple-color"]="#0000",_["--n-text-color"]=t,_["--n-text-color-hover"]=t,_["--n-text-color-pressed"]=t,_["--n-text-color-focus"]=t,_["--n-text-color-disabled"]=t}else _={"--n-color":b||o[yu("color",O)],"--n-color-hover":b?LC(b):o[yu("colorHover",O)],"--n-color-pressed":b?jC(b):o[yu("colorPressed",O)],"--n-color-focus":b?LC(b):o[yu("colorFocus",O)],"--n-color-disabled":b||o[yu("colorDisabled",O)],"--n-ripple-color":b||o[yu("rippleColor",O)],"--n-text-color":y||(b?o.textColorPrimary:E?o.textColorTertiary:o[yu("textColor",O)]),"--n-text-color-hover":y||(b?o.textColorHoverPrimary:o[yu("textColorHover",O)]),"--n-text-color-pressed":y||(b?o.textColorPressedPrimary:o[yu("textColorPressed",O)]),"--n-text-color-focus":y||(b?o.textColorFocusPrimary:o[yu("textColorFocus",O)]),"--n-text-color-disabled":y||(b?o.textColorDisabledPrimary:o[yu("textColorDisabled",O)])};let A={"--n-border":"initial","--n-border-hover":"initial","--n-border-pressed":"initial","--n-border-focus":"initial","--n-border-disabled":"initial"};A=g?{"--n-border":"none","--n-border-hover":"none","--n-border-pressed":"none","--n-border-focus":"none","--n-border-disabled":"none"}:{"--n-border":o[yu("border",O)],"--n-border-hover":o[yu("borderHover",O)],"--n-border-pressed":o[yu("borderPressed",O)],"--n-border-focus":o[yu("borderFocus",O)],"--n-border-disabled":o[yu("borderDisabled",O)]};const{[yu("height",d)]:P,[yu("fontSize",d)]:T,[yu("padding",d)]:$,[yu("paddingRound",d)]:z,[yu("iconSize",d)]:M,[yu("borderRadius",d)]:F,[yu("iconMargin",d)]:N,waveOpacity:B}=o,I={"--n-width":m&&!g?P:"initial","--n-height":g?"initial":P,"--n-font-size":T,"--n-padding":m||g?"initial":v?z:$,"--n-icon-size":M,"--n-icon-margin":N,"--n-border-radius":g?"initial":m||v?P:F};return Object.assign(Object.assign(Object.assign(Object.assign({"--n-bezier":n,"--n-bezier-ease-out":r,"--n-ripple-duration":i,"--n-opacity-disabled":l,"--n-wave-opacity":B},k),_),A),I)})),h=s?Sg("button",gi((()=>{let t="";const{dashed:n,type:r,ghost:o,text:i,color:l,round:s,circle:c,textColor:d,secondary:u,tertiary:p,quaternary:f,strong:h}=e;n&&(t+="a"),o&&(t+="b"),i&&(t+="c"),s&&(t+="d"),c&&(t+="e"),u&&(t+="f"),p&&(t+="g"),f&&(t+="h"),h&&(t+="i"),l&&(t+=`j${Gh(l)}`),d&&(t+=`k${Gh(d)}`);const{value:g}=a;return t+=`l${g[0]}`,t+=`m${r[0]}`,t})),f,e):void 0;return{selfElRef:t,waveElRef:n,mergedClsPrefix:c,mergedFocusable:l,mergedSize:a,showBorder:o,enterPressed:r,rtlEnabled:p,handleMousedown:n=>{var r;l.value||n.preventDefault(),e.nativeFocusBehavior||(n.preventDefault(),e.disabled||l.value&&(null===(r=t.value)||void 0===r||r.focus({preventScroll:!0})))},handleKeydown:t=>{if("Enter"===t.key){if(!e.keyboard||e.loading)return void t.preventDefault();r.value=!0}},handleBlur:()=>{r.value=!1},handleKeyup:t=>{if("Enter"===t.key){if(!e.keyboard)return;r.value=!1}},handleClick:t=>{var r;if(!e.disabled&&!e.loading){const{onClick:o}=e;o&&og(o,t),e.text||null===(r=n.value)||void 0===r||r.play()}},customColorCssVars:gi((()=>{const{color:t}=e;if(!t)return null;const n=LC(t);return{"--n-border-color":t,"--n-border-color-hover":n,"--n-border-color-pressed":jC(t),"--n-border-color-focus":n,"--n-border-color-disabled":t}})),cssVars:s?void 0:f,themeClass:null==h?void 0:h.themeClass,onRender:null==h?void 0:h.onRender}},render(){const{mergedClsPrefix:e,tag:t,onRender:n}=this;null==n||n();const r=bg(this.$slots.default,(t=>t&&bi("span",{class:`${e}-button__content`},t)));return bi(t,{ref:"selfElRef",class:[this.themeClass,`${e}-button`,`${e}-button--${this.type}-type`,`${e}-button--${this.mergedSize}-type`,this.rtlEnabled&&`${e}-button--rtl`,this.disabled&&`${e}-button--disabled`,this.block&&`${e}-button--block`,this.enterPressed&&`${e}-button--pressed`,!this.text&&this.dashed&&`${e}-button--dashed`,this.color&&`${e}-button--color`,this.secondary&&`${e}-button--secondary`,this.loading&&`${e}-button--loading`,this.ghost&&`${e}-button--ghost`],tabindex:this.mergedFocusable?0:-1,type:this.attrType,style:this.cssVars,disabled:this.disabled,onClick:this.handleClick,onBlur:this.handleBlur,onMousedown:this.handleMousedown,onKeyup:this.handleKeyup,onKeydown:this.handleKeydown},"right"===this.iconPlacement&&r,bi(ox,{width:!0},{default:()=>bg(this.$slots.icon,(t=>(this.loading||this.renderIcon||t)&&bi("span",{class:`${e}-button__icon`,style:{margin:vg(this.$slots.default)?"0":""}},bi(Ay,null,{default:()=>this.loading?bi(cx,{clsPrefix:e,key:"loading",class:`${e}-icon-slot`,strokeWidth:20}):bi("div",{key:"icon",class:`${e}-icon-slot`,role:"none"},this.renderIcon?this.renderIcon():t)}))))}),"left"===this.iconPlacement&&r,this.text?null:bi(yC,{ref:"waveElRef",clsPrefix:e}),this.showBorder?bi("div",{"aria-hidden":!0,class:`${e}-button__border`,style:this.customColorCssVars}):null,this.showBorder?bi("div",{"aria-hidden":!0,class:`${e}-button__state-border`,style:this.customColorCssVars}):null)}}),KC="0!important",VC="-1px!important";function GC(e){return fu(`${e}-type`,[cu("& +",[uu("button",{},[fu(`${e}-type`,[pu("border",{borderLeftWidth:KC}),pu("state-border",{left:VC})])])])])}function ZC(e){return fu(`${e}-type`,[cu("& +",[uu("button",[fu(`${e}-type`,[pu("border",{borderTopWidth:KC}),pu("state-border",{top:VC})])])])])}const XC=uu("button-group","\n flex-wrap: nowrap;\n display: inline-flex;\n position: relative;\n",[hu("vertical",{flexDirection:"row"},[hu("rtl",[uu("button",[cu("&:first-child:not(:last-child)",`\n margin-right: ${KC};\n border-top-right-radius: ${KC};\n border-bottom-right-radius: ${KC};\n `),cu("&:last-child:not(:first-child)",`\n margin-left: ${KC};\n border-top-left-radius: ${KC};\n border-bottom-left-radius: ${KC};\n `),cu("&:not(:first-child):not(:last-child)",`\n margin-left: ${KC};\n margin-right: ${KC};\n border-radius: ${KC};\n `),GC("default"),fu("ghost",[GC("primary"),GC("info"),GC("success"),GC("warning"),GC("error")])])])]),fu("vertical",{flexDirection:"column"},[uu("button",[cu("&:first-child:not(:last-child)",`\n margin-bottom: ${KC};\n margin-left: ${KC};\n margin-right: ${KC};\n border-bottom-left-radius: ${KC};\n border-bottom-right-radius: ${KC};\n `),cu("&:last-child:not(:first-child)",`\n margin-top: ${KC};\n margin-left: ${KC};\n margin-right: ${KC};\n border-top-left-radius: ${KC};\n border-top-right-radius: ${KC};\n `),cu("&:not(:first-child):not(:last-child)",`\n margin: ${KC};\n border-radius: ${KC};\n `),ZC("default"),fu("ghost",[ZC("primary"),ZC("info"),ZC("success"),ZC("warning"),ZC("error")])])])]),QC=qn({name:"ButtonGroup",props:{size:{type:String,default:void 0},vertical:Boolean},setup(e){const{mergedClsPrefixRef:t,mergedRtlRef:n}=wg(e);_y("-button-group",XC,t),Hr(DC,e);return{rtlEnabled:yy("ButtonGroup",n,t),mergedClsPrefix:t}},render(){const{mergedClsPrefix:e}=this;return bi("div",{class:[`${e}-button-group`,this.rtlEnabled&&`${e}-button-group--rtl`,this.vertical&&`${e}-button-group--vertical`],role:"group"},this.$slots)}}),YC={paddingSmall:"12px 16px 12px",paddingMedium:"19px 24px 20px",paddingLarge:"23px 32px 24px",paddingHuge:"27px 40px 28px",titleFontSizeSmall:"16px",titleFontSizeMedium:"18px",titleFontSizeLarge:"18px",titleFontSizeHuge:"18px",closeIconSize:"18px",closeSize:"22px"};const JC={name:"Card",common:nw,self:function(e){const{primaryColor:t,borderRadius:n,lineHeight:r,fontSize:o,cardColor:i,textColor2:a,textColor1:l,dividerColor:s,fontWeightStrong:c,closeIconColor:d,closeIconColorHover:u,closeIconColorPressed:p,closeColorHover:f,closeColorPressed:h,modalColor:g,boxShadow1:b,popoverColor:v,actionColor:m}=e;return Object.assign(Object.assign({},YC),{lineHeight:r,color:i,colorModal:g,colorPopover:v,colorTarget:t,colorEmbedded:m,colorEmbeddedModal:m,colorEmbeddedPopover:m,textColor:a,titleTextColor:l,borderColor:s,actionColor:m,titleFontWeight:c,closeColorHover:f,closeColorPressed:h,closeBorderRadius:n,closeIconColor:d,closeIconColorHover:u,closeIconColorPressed:p,fontSizeSmall:o,fontSizeMedium:o,fontSizeLarge:o,fontSizeHuge:o,boxShadow:b,borderRadius:n})}},eS=cu([uu("card","\n font-size: var(--n-font-size);\n line-height: var(--n-line-height);\n display: flex;\n flex-direction: column;\n width: 100%;\n box-sizing: border-box;\n position: relative;\n border-radius: var(--n-border-radius);\n background-color: var(--n-color);\n color: var(--n-text-color);\n word-break: break-word;\n transition: \n color .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n box-shadow .3s var(--n-bezier),\n border-color .3s var(--n-bezier);\n ",[vu({background:"var(--n-color-modal)"}),fu("hoverable",[cu("&:hover","box-shadow: var(--n-box-shadow);")]),fu("content-segmented",[cu(">",[pu("content",{paddingTop:"var(--n-padding-bottom)"})])]),fu("content-soft-segmented",[cu(">",[pu("content","\n margin: 0 var(--n-padding-left);\n padding: var(--n-padding-bottom) 0;\n ")])]),fu("footer-segmented",[cu(">",[pu("footer",{paddingTop:"var(--n-padding-bottom)"})])]),fu("footer-soft-segmented",[cu(">",[pu("footer","\n padding: var(--n-padding-bottom) 0;\n margin: 0 var(--n-padding-left);\n ")])]),cu(">",[uu("card-header","\n box-sizing: border-box;\n display: flex;\n align-items: center;\n font-size: var(--n-title-font-size);\n padding:\n var(--n-padding-top)\n var(--n-padding-left)\n var(--n-padding-bottom)\n var(--n-padding-left);\n ",[pu("main","\n font-weight: var(--n-title-font-weight);\n transition: color .3s var(--n-bezier);\n flex: 1;\n min-width: 0;\n color: var(--n-title-text-color);\n "),pu("extra","\n display: flex;\n align-items: center;\n font-size: var(--n-font-size);\n font-weight: 400;\n transition: color .3s var(--n-bezier);\n color: var(--n-text-color);\n "),pu("close","\n margin: 0 0 0 8px;\n transition:\n background-color .3s var(--n-bezier),\n color .3s var(--n-bezier);\n ")]),pu("action","\n box-sizing: border-box;\n transition:\n background-color .3s var(--n-bezier),\n border-color .3s var(--n-bezier);\n background-clip: padding-box;\n background-color: var(--n-action-color);\n "),pu("content","flex: 1; min-width: 0;"),pu("content, footer","\n box-sizing: border-box;\n padding: 0 var(--n-padding-left) var(--n-padding-bottom) var(--n-padding-left);\n font-size: var(--n-font-size);\n ",[cu("&:first-child",{paddingTop:"var(--n-padding-bottom)"})]),pu("action","\n background-color: var(--n-action-color);\n padding: var(--n-padding-bottom) var(--n-padding-left);\n border-bottom-left-radius: var(--n-border-radius);\n border-bottom-right-radius: var(--n-border-radius);\n ")]),uu("card-cover","\n overflow: hidden;\n width: 100%;\n border-radius: var(--n-border-radius) var(--n-border-radius) 0 0;\n ",[cu("img","\n display: block;\n width: 100%;\n ")]),fu("bordered","\n border: 1px solid var(--n-border-color);\n ",[cu("&:target","border-color: var(--n-color-target);")]),fu("action-segmented",[cu(">",[pu("action",[cu("&:not(:first-child)",{borderTop:"1px solid var(--n-border-color)"})])])]),fu("content-segmented, content-soft-segmented",[cu(">",[pu("content",{transition:"border-color 0.3s var(--n-bezier)"},[cu("&:not(:first-child)",{borderTop:"1px solid var(--n-border-color)"})])])]),fu("footer-segmented, footer-soft-segmented",[cu(">",[pu("footer",{transition:"border-color 0.3s var(--n-bezier)"},[cu("&:not(:first-child)",{borderTop:"1px solid var(--n-border-color)"})])])]),fu("embedded","\n background-color: var(--n-color-embedded);\n ")]),gu(uu("card","\n background: var(--n-color-modal);\n ",[fu("embedded","\n background-color: var(--n-color-embedded-modal);\n ")])),bu(uu("card","\n background: var(--n-color-popover);\n ",[fu("embedded","\n background-color: var(--n-color-embedded-popover);\n ")]))]),tS={title:[String,Function],contentClass:String,contentStyle:[Object,String],headerClass:String,headerStyle:[Object,String],headerExtraClass:String,headerExtraStyle:[Object,String],footerClass:String,footerStyle:[Object,String],embedded:Boolean,segmented:{type:[Boolean,Object],default:!1},size:{type:String,default:"medium"},bordered:{type:Boolean,default:!0},closable:Boolean,hoverable:Boolean,role:String,onClose:[Function,Array],tag:{type:String,default:"div"},cover:Function,content:[String,Function],footer:Function,action:Function,headerExtra:Function},nS=cg(tS),rS=qn({name:"Card",props:Object.assign(Object.assign({},Ey.props),tS),slots:Object,setup(e){const{inlineThemeDisabled:t,mergedClsPrefixRef:n,mergedRtlRef:r}=wg(e),o=Ey("Card","-card",eS,JC,e,n),i=yy("Card",r,n),a=gi((()=>{const{size:t}=e,{self:{color:n,colorModal:r,colorTarget:i,textColor:a,titleTextColor:l,titleFontWeight:s,borderColor:c,actionColor:d,borderRadius:u,lineHeight:p,closeIconColor:f,closeIconColorHover:h,closeIconColorPressed:g,closeColorHover:b,closeColorPressed:v,closeBorderRadius:m,closeIconSize:y,closeSize:x,boxShadow:w,colorPopover:C,colorEmbedded:S,colorEmbeddedModal:k,colorEmbeddedPopover:_,[yu("padding",t)]:E,[yu("fontSize",t)]:R,[yu("titleFontSize",t)]:O},common:{cubicBezierEaseInOut:A}}=o.value,{top:P,left:T,bottom:$}=Au(E);return{"--n-bezier":A,"--n-border-radius":u,"--n-color":n,"--n-color-modal":r,"--n-color-popover":C,"--n-color-embedded":S,"--n-color-embedded-modal":k,"--n-color-embedded-popover":_,"--n-color-target":i,"--n-text-color":a,"--n-line-height":p,"--n-action-color":d,"--n-title-text-color":l,"--n-title-font-weight":s,"--n-close-icon-color":f,"--n-close-icon-color-hover":h,"--n-close-icon-color-pressed":g,"--n-close-color-hover":b,"--n-close-color-pressed":v,"--n-border-color":c,"--n-box-shadow":w,"--n-padding-top":P,"--n-padding-bottom":$,"--n-padding-left":T,"--n-font-size":R,"--n-title-font-size":O,"--n-close-size":x,"--n-close-icon-size":y,"--n-close-border-radius":m}})),l=t?Sg("card",gi((()=>e.size[0])),a,e):void 0;return{rtlEnabled:i,mergedClsPrefix:n,mergedTheme:o,handleCloseClick:()=>{const{onClose:t}=e;t&&og(t)},cssVars:t?void 0:a,themeClass:null==l?void 0:l.themeClass,onRender:null==l?void 0:l.onRender}},render(){const{segmented:e,bordered:t,hoverable:n,mergedClsPrefix:r,rtlEnabled:o,onRender:i,embedded:a,tag:l,$slots:s}=this;return null==i||i(),bi(l,{class:[`${r}-card`,this.themeClass,a&&`${r}-card--embedded`,{[`${r}-card--rtl`]:o,[`${r}-card--content${"boolean"!=typeof e&&"soft"===e.content?"-soft":""}-segmented`]:!0===e||!1!==e&&e.content,[`${r}-card--footer${"boolean"!=typeof e&&"soft"===e.footer?"-soft":""}-segmented`]:!0===e||!1!==e&&e.footer,[`${r}-card--action-segmented`]:!0===e||!1!==e&&e.action,[`${r}-card--bordered`]:t,[`${r}-card--hoverable`]:n}],style:this.cssVars,role:this.role},bg(s.cover,(e=>{const t=this.cover?fg([this.cover()]):e;return t&&bi("div",{class:`${r}-card-cover`,role:"none"},t)})),bg(s.header,(e=>{const{title:t}=this,n=t?fg("function"==typeof t?[t()]:[t]):e;return n||this.closable?bi("div",{class:[`${r}-card-header`,this.headerClass],style:this.headerStyle,role:"heading"},bi("div",{class:`${r}-card-header__main`,role:"heading"},n),bg(s["header-extra"],(e=>{const t=this.headerExtra?fg([this.headerExtra()]):e;return t&&bi("div",{class:[`${r}-card-header__extra`,this.headerExtraClass],style:this.headerExtraStyle},t)})),this.closable&&bi(rx,{clsPrefix:r,class:`${r}-card-header__close`,onClick:this.handleCloseClick,absolute:!0})):null})),bg(s.default,(e=>{const{content:t}=this,n=t?fg("function"==typeof t?[t()]:[t]):e;return n&&bi("div",{class:[`${r}-card__content`,this.contentClass],style:this.contentStyle,role:"none"},n)})),bg(s.footer,(e=>{const t=this.footer?fg([this.footer()]):e;return t&&bi("div",{class:[`${r}-card__footer`,this.footerClass],style:this.footerStyle,role:"none"},t)})),bg(s.action,(e=>{const t=this.action?fg([this.action()]):e;return t&&bi("div",{class:`${r}-card__action`,role:"none"},t)})))}}),oS={sizeSmall:"14px",sizeMedium:"16px",sizeLarge:"18px",labelPadding:"0 8px",labelFontWeight:"400"};const iS={name:"Checkbox",common:nw,self:function(e){const{baseColor:t,inputColorDisabled:n,cardColor:r,modalColor:o,popoverColor:i,textColorDisabled:a,borderColor:l,primaryColor:s,textColor2:c,fontSizeSmall:d,fontSizeMedium:u,fontSizeLarge:p,borderRadiusSmall:f,lineHeight:h}=e;return Object.assign(Object.assign({},oS),{labelLineHeight:h,fontSizeSmall:d,fontSizeMedium:u,fontSizeLarge:p,borderRadius:f,color:t,colorChecked:s,colorDisabled:n,colorDisabledChecked:n,colorTableHeader:r,colorTableHeaderModal:o,colorTableHeaderPopover:i,checkMarkColor:t,checkMarkColorDisabled:a,checkMarkColorDisabledChecked:a,border:`1px solid ${l}`,borderDisabled:`1px solid ${l}`,borderDisabledChecked:`1px solid ${l}`,borderChecked:`1px solid ${s}`,borderFocus:`1px solid ${s}`,boxShadowFocus:`0 0 0 2px ${ep(s,{alpha:.3})}`,textColor:c,textColorDisabled:a})}},aS="n-checkbox-group",lS=qn({name:"CheckboxGroup",props:{min:Number,max:Number,size:String,value:Array,defaultValue:{type:Array,default:null},disabled:{type:Boolean,default:void 0},"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],onChange:[Function,Array]},setup(e){const{mergedClsPrefixRef:t}=wg(e),n=_g(e),{mergedSizeRef:r,mergedDisabledRef:o}=n,i=$t(e.defaultValue),a=$p(gi((()=>e.value)),i),l=gi((()=>{var e;return(null===(e=a.value)||void 0===e?void 0:e.length)||0})),s=gi((()=>Array.isArray(a.value)?new Set(a.value):new Set));return Hr(aS,{checkedCountRef:l,maxRef:Dt(e,"max"),minRef:Dt(e,"min"),valueSetRef:s,disabledRef:o,mergedSizeRef:r,toggleCheckbox:function(t,r){const{nTriggerFormInput:o,nTriggerFormChange:l}=n,{onChange:s,"onUpdate:value":c,onUpdateValue:d}=e;if(Array.isArray(a.value)){const e=Array.from(a.value),n=e.findIndex((e=>e===r));t?~n||(e.push(r),d&&og(d,e,{actionType:"check",value:r}),c&&og(c,e,{actionType:"check",value:r}),o(),l(),i.value=e,s&&og(s,e)):~n&&(e.splice(n,1),d&&og(d,e,{actionType:"uncheck",value:r}),c&&og(c,e,{actionType:"uncheck",value:r}),s&&og(s,e),i.value=e,o(),l())}else t?(d&&og(d,[r],{actionType:"check",value:r}),c&&og(c,[r],{actionType:"check",value:r}),s&&og(s,[r]),i.value=[r],o(),l()):(d&&og(d,[],{actionType:"uncheck",value:r}),c&&og(c,[],{actionType:"uncheck",value:r}),s&&og(s,[]),i.value=[],o(),l())}}),{mergedClsPrefix:t}},render(){return bi("div",{class:`${this.mergedClsPrefix}-checkbox-group`,role:"group"},this.$slots)}}),sS=cu([uu("checkbox","\n font-size: var(--n-font-size);\n outline: none;\n cursor: pointer;\n display: inline-flex;\n flex-wrap: nowrap;\n align-items: flex-start;\n word-break: break-word;\n line-height: var(--n-size);\n --n-merged-color-table: var(--n-color-table);\n ",[fu("show-label","line-height: var(--n-label-line-height);"),cu("&:hover",[uu("checkbox-box",[pu("border","border: var(--n-border-checked);")])]),cu("&:focus:not(:active)",[uu("checkbox-box",[pu("border","\n border: var(--n-border-focus);\n box-shadow: var(--n-box-shadow-focus);\n ")])]),fu("inside-table",[uu("checkbox-box","\n background-color: var(--n-merged-color-table);\n ")]),fu("checked",[uu("checkbox-box","\n background-color: var(--n-color-checked);\n ",[uu("checkbox-icon",[cu(".check-icon","\n opacity: 1;\n transform: scale(1);\n ")])])]),fu("indeterminate",[uu("checkbox-box",[uu("checkbox-icon",[cu(".check-icon","\n opacity: 0;\n transform: scale(.5);\n "),cu(".line-icon","\n opacity: 1;\n transform: scale(1);\n ")])])]),fu("checked, indeterminate",[cu("&:focus:not(:active)",[uu("checkbox-box",[pu("border","\n border: var(--n-border-checked);\n box-shadow: var(--n-box-shadow-focus);\n ")])]),uu("checkbox-box","\n background-color: var(--n-color-checked);\n border-left: 0;\n border-top: 0;\n ",[pu("border",{border:"var(--n-border-checked)"})])]),fu("disabled",{cursor:"not-allowed"},[fu("checked",[uu("checkbox-box","\n background-color: var(--n-color-disabled-checked);\n ",[pu("border",{border:"var(--n-border-disabled-checked)"}),uu("checkbox-icon",[cu(".check-icon, .line-icon",{fill:"var(--n-check-mark-color-disabled-checked)"})])])]),uu("checkbox-box","\n background-color: var(--n-color-disabled);\n ",[pu("border","\n border: var(--n-border-disabled);\n "),uu("checkbox-icon",[cu(".check-icon, .line-icon","\n fill: var(--n-check-mark-color-disabled);\n ")])]),pu("label","\n color: var(--n-text-color-disabled);\n ")]),uu("checkbox-box-wrapper","\n position: relative;\n width: var(--n-size);\n flex-shrink: 0;\n flex-grow: 0;\n user-select: none;\n -webkit-user-select: none;\n "),uu("checkbox-box","\n position: absolute;\n left: 0;\n top: 50%;\n transform: translateY(-50%);\n height: var(--n-size);\n width: var(--n-size);\n display: inline-block;\n box-sizing: border-box;\n border-radius: var(--n-border-radius);\n background-color: var(--n-color);\n transition: background-color 0.3s var(--n-bezier);\n ",[pu("border","\n transition:\n border-color .3s var(--n-bezier),\n box-shadow .3s var(--n-bezier);\n border-radius: inherit;\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n border: var(--n-border);\n "),uu("checkbox-icon","\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n left: 1px;\n right: 1px;\n top: 1px;\n bottom: 1px;\n ",[cu(".check-icon, .line-icon","\n width: 100%;\n fill: var(--n-check-mark-color);\n opacity: 0;\n transform: scale(0.5);\n transform-origin: center;\n transition:\n fill 0.3s var(--n-bezier),\n transform 0.3s var(--n-bezier),\n opacity 0.3s var(--n-bezier),\n border-color 0.3s var(--n-bezier);\n "),Jy({left:"1px",top:"1px"})])]),pu("label","\n color: var(--n-text-color);\n transition: color .3s var(--n-bezier);\n user-select: none;\n -webkit-user-select: none;\n padding: var(--n-label-padding);\n font-weight: var(--n-label-font-weight);\n ",[cu("&:empty",{display:"none"})])]),gu(uu("checkbox","\n --n-merged-color-table: var(--n-color-table-modal);\n ")),bu(uu("checkbox","\n --n-merged-color-table: var(--n-color-table-popover);\n "))]),cS=qn({name:"Checkbox",props:Object.assign(Object.assign({},Ey.props),{size:String,checked:{type:[Boolean,String,Number],default:void 0},defaultChecked:{type:[Boolean,String,Number],default:!1},value:[String,Number],disabled:{type:Boolean,default:void 0},indeterminate:Boolean,label:String,focusable:{type:Boolean,default:!0},checkedValue:{type:[Boolean,String,Number],default:!0},uncheckedValue:{type:[Boolean,String,Number],default:!1},"onUpdate:checked":[Function,Array],onUpdateChecked:[Function,Array],privateInsideTable:Boolean,onChange:[Function,Array]}),setup(e){const t=Wr(aS,null),n=$t(null),{mergedClsPrefixRef:r,inlineThemeDisabled:o,mergedRtlRef:i}=wg(e),a=$t(e.defaultChecked),l=$p(Dt(e,"checked"),a),s=hp((()=>{if(t){const n=t.valueSetRef.value;return!(!n||void 0===e.value)&&n.has(e.value)}return l.value===e.checkedValue})),c=_g(e,{mergedSize(n){const{size:r}=e;if(void 0!==r)return r;if(t){const{value:e}=t.mergedSizeRef;if(void 0!==e)return e}if(n){const{mergedSize:e}=n;if(void 0!==e)return e.value}return"medium"},mergedDisabled(n){const{disabled:r}=e;if(void 0!==r)return r;if(t){if(t.disabledRef.value)return!0;const{maxRef:{value:e},checkedCountRef:n}=t;if(void 0!==e&&n.value>=e&&!s.value)return!0;const{minRef:{value:r}}=t;if(void 0!==r&&n.value<=r&&s.value)return!0}return!!n&&n.disabled.value}}),{mergedDisabledRef:d,mergedSizeRef:u}=c,p=Ey("Checkbox","-checkbox",sS,iS,e,r);function f(n){if(t&&void 0!==e.value)t.toggleCheckbox(!s.value,e.value);else{const{onChange:t,"onUpdate:checked":r,onUpdateChecked:o}=e,{nTriggerFormInput:i,nTriggerFormChange:l}=c,d=s.value?e.uncheckedValue:e.checkedValue;r&&og(r,d,n),o&&og(o,d,n),t&&og(t,d,n),i(),l(),a.value=d}}const h={focus:()=>{var e;null===(e=n.value)||void 0===e||e.focus()},blur:()=>{var e;null===(e=n.value)||void 0===e||e.blur()}},g=yy("Checkbox",i,r),b=gi((()=>{const{value:e}=u,{common:{cubicBezierEaseInOut:t},self:{borderRadius:n,color:r,colorChecked:o,colorDisabled:i,colorTableHeader:a,colorTableHeaderModal:l,colorTableHeaderPopover:s,checkMarkColor:c,checkMarkColorDisabled:d,border:f,borderFocus:h,borderDisabled:g,borderChecked:b,boxShadowFocus:v,textColor:m,textColorDisabled:y,checkMarkColorDisabledChecked:x,colorDisabledChecked:w,borderDisabledChecked:C,labelPadding:S,labelLineHeight:k,labelFontWeight:_,[yu("fontSize",e)]:E,[yu("size",e)]:R}}=p.value;return{"--n-label-line-height":k,"--n-label-font-weight":_,"--n-size":R,"--n-bezier":t,"--n-border-radius":n,"--n-border":f,"--n-border-checked":b,"--n-border-focus":h,"--n-border-disabled":g,"--n-border-disabled-checked":C,"--n-box-shadow-focus":v,"--n-color":r,"--n-color-checked":o,"--n-color-table":a,"--n-color-table-modal":l,"--n-color-table-popover":s,"--n-color-disabled":i,"--n-color-disabled-checked":w,"--n-text-color":m,"--n-text-color-disabled":y,"--n-check-mark-color":c,"--n-check-mark-color-disabled":d,"--n-check-mark-color-disabled-checked":x,"--n-font-size":E,"--n-label-padding":S}})),v=o?Sg("checkbox",gi((()=>u.value[0])),b,e):void 0;return Object.assign(c,h,{rtlEnabled:g,selfRef:n,mergedClsPrefix:r,mergedDisabled:d,renderedChecked:s,mergedTheme:p,labelId:ap(),handleClick:function(e){d.value||f(e)},handleKeyUp:function(e){if(!d.value)switch(e.key){case" ":case"Enter":f(e)}},handleKeyDown:function(e){if(" "===e.key)e.preventDefault()},cssVars:o?void 0:b,themeClass:null==v?void 0:v.themeClass,onRender:null==v?void 0:v.onRender})},render(){var e;const{$slots:t,renderedChecked:n,mergedDisabled:r,indeterminate:o,privateInsideTable:i,cssVars:a,labelId:l,label:s,mergedClsPrefix:c,focusable:d,handleKeyUp:u,handleKeyDown:p,handleClick:f}=this;null===(e=this.onRender)||void 0===e||e.call(this);const h=bg(t.default,(e=>s||e?bi("span",{class:`${c}-checkbox__label`,id:l},s||e):null));return bi("div",{ref:"selfRef",class:[`${c}-checkbox`,this.themeClass,this.rtlEnabled&&`${c}-checkbox--rtl`,n&&`${c}-checkbox--checked`,r&&`${c}-checkbox--disabled`,o&&`${c}-checkbox--indeterminate`,i&&`${c}-checkbox--inside-table`,h&&`${c}-checkbox--show-label`],tabindex:r||!d?void 0:0,role:"checkbox","aria-checked":o?"mixed":n,"aria-labelledby":l,style:a,onKeyup:u,onKeydown:p,onClick:f,onMousedown:()=>{up("selectstart",window,(e=>{e.preventDefault()}),{once:!0})}},bi("div",{class:`${c}-checkbox-box-wrapper`}," ",bi("div",{class:`${c}-checkbox-box`},bi(Ay,null,{default:()=>this.indeterminate?bi("div",{key:"indeterminate",class:`${c}-checkbox-icon`},bi("svg",{viewBox:"0 0 100 100",class:"line-icon"},bi("path",{d:"M80.2,55.5H21.4c-2.8,0-5.1-2.5-5.1-5.5l0,0c0-3,2.3-5.5,5.1-5.5h58.7c2.8,0,5.1,2.5,5.1,5.5l0,0C85.2,53.1,82.9,55.5,80.2,55.5z"}))):bi("div",{key:"check",class:`${c}-checkbox-icon`},bi("svg",{viewBox:"0 0 64 64",class:"check-icon"},bi("path",{d:"M50.42,16.76L22.34,39.45l-8.1-11.46c-1.12-1.58-3.3-1.96-4.88-0.84c-1.58,1.12-1.95,3.3-0.84,4.88l10.26,14.51 c0.56,0.79,1.42,1.31,2.38,1.45c0.16,0.02,0.32,0.03,0.48,0.03c0.8,0,1.57-0.27,2.2-0.78l30.99-25.03c1.5-1.21,1.74-3.42,0.52-4.92 C54.13,15.78,51.93,15.55,50.42,16.76z"})))}),bi("div",{class:`${c}-checkbox-box__border`}))),h)}});const dS={common:nw,self:function(e){const{fontWeight:t,textColor1:n,textColor2:r,textColorDisabled:o,dividerColor:i,fontSize:a}=e;return{titleFontSize:a,titleFontWeight:t,dividerColor:i,titleTextColor:n,titleTextColorDisabled:o,fontSize:a,textColor:r,arrowColor:r,arrowColorDisabled:o,itemMargin:"16px 0 0 0",titlePadding:"16px 0 0 0"}}},uS=uu("collapse","width: 100%;",[uu("collapse-item","\n font-size: var(--n-font-size);\n color: var(--n-text-color);\n transition:\n color .3s var(--n-bezier),\n border-color .3s var(--n-bezier);\n margin: var(--n-item-margin);\n ",[fu("disabled",[pu("header","cursor: not-allowed;",[pu("header-main","\n color: var(--n-title-text-color-disabled);\n "),uu("collapse-item-arrow","\n color: var(--n-arrow-color-disabled);\n ")])]),uu("collapse-item","margin-left: 32px;"),cu("&:first-child","margin-top: 0;"),cu("&:first-child >",[pu("header","padding-top: 0;")]),fu("left-arrow-placement",[pu("header",[uu("collapse-item-arrow","margin-right: 4px;")])]),fu("right-arrow-placement",[pu("header",[uu("collapse-item-arrow","margin-left: 4px;")])]),pu("content-wrapper",[pu("content-inner","padding-top: 16px;"),SC({duration:"0.15s"})]),fu("active",[pu("header",[fu("active",[uu("collapse-item-arrow","transform: rotate(90deg);")])])]),cu("&:not(:first-child)","border-top: 1px solid var(--n-divider-color);"),hu("disabled",[fu("trigger-area-main",[pu("header",[pu("header-main","cursor: pointer;"),uu("collapse-item-arrow","cursor: default;")])]),fu("trigger-area-arrow",[pu("header",[uu("collapse-item-arrow","cursor: pointer;")])]),fu("trigger-area-extra",[pu("header",[pu("header-extra","cursor: pointer;")])])]),pu("header","\n font-size: var(--n-title-font-size);\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n transition: color .3s var(--n-bezier);\n position: relative;\n padding: var(--n-title-padding);\n color: var(--n-title-text-color);\n ",[pu("header-main","\n display: flex;\n flex-wrap: nowrap;\n align-items: center;\n font-weight: var(--n-title-font-weight);\n transition: color .3s var(--n-bezier);\n flex: 1;\n color: var(--n-title-text-color);\n "),pu("header-extra","\n display: flex;\n align-items: center;\n transition: color .3s var(--n-bezier);\n color: var(--n-text-color);\n "),uu("collapse-item-arrow","\n display: flex;\n transition:\n transform .15s var(--n-bezier),\n color .3s var(--n-bezier);\n font-size: 18px;\n color: var(--n-arrow-color);\n ")])])]),pS=Object.assign(Object.assign({},Ey.props),{defaultExpandedNames:{type:[Array,String],default:null},expandedNames:[Array,String],arrowPlacement:{type:String,default:"left"},accordion:{type:Boolean,default:!1},displayDirective:{type:String,default:"if"},triggerAreas:{type:Array,default:()=>["main","extra","arrow"]},onItemHeaderClick:[Function,Array],"onUpdate:expandedNames":[Function,Array],onUpdateExpandedNames:[Function,Array],onExpandedNamesChange:{type:[Function,Array],validator:()=>!0,default:void 0}}),fS="n-collapse",hS=qn({name:"Collapse",props:pS,slots:Object,setup(e,{slots:t}){const{mergedClsPrefixRef:n,inlineThemeDisabled:r,mergedRtlRef:o}=wg(e),i=$t(e.defaultExpandedNames),a=$p(gi((()=>e.expandedNames)),i),l=Ey("Collapse","-collapse",uS,dS,e,n);function s(t){const{"onUpdate:expandedNames":n,onUpdateExpandedNames:r,onExpandedNamesChange:o}=e;r&&og(r,t),n&&og(n,t),o&&og(o,t),i.value=t}function c(t){const{onItemHeaderClick:n}=e;n&&og(n,t)}Hr(fS,{props:e,mergedClsPrefixRef:n,expandedNamesRef:a,slots:t,toggleItem:function(t,n,r){const{accordion:o}=e,{value:i}=a;if(o)t?(s([n]),c({name:n,expanded:!0,event:r})):(s([]),c({name:n,expanded:!1,event:r}));else if(Array.isArray(i)){const e=i.slice(),t=e.findIndex((e=>n===e));~t?(e.splice(t,1),s(e),c({name:n,expanded:!1,event:r})):(e.push(n),s(e),c({name:n,expanded:!0,event:r}))}else s([n]),c({name:n,expanded:!0,event:r})}});const d=yy("Collapse",o,n),u=gi((()=>{const{common:{cubicBezierEaseInOut:e},self:{titleFontWeight:t,dividerColor:n,titlePadding:r,titleTextColor:o,titleTextColorDisabled:i,textColor:a,arrowColor:s,fontSize:c,titleFontSize:d,arrowColorDisabled:u,itemMargin:p}}=l.value;return{"--n-font-size":c,"--n-bezier":e,"--n-text-color":a,"--n-divider-color":n,"--n-title-padding":r,"--n-title-font-size":d,"--n-title-text-color":o,"--n-title-text-color-disabled":i,"--n-title-font-weight":t,"--n-arrow-color":s,"--n-arrow-color-disabled":u,"--n-item-margin":p}})),p=r?Sg("collapse",void 0,u,e):void 0;return{rtlEnabled:d,mergedTheme:l,mergedClsPrefix:n,cssVars:r?void 0:u,themeClass:null==p?void 0:p.themeClass,onRender:null==p?void 0:p.onRender}},render(){var e;return null===(e=this.onRender)||void 0===e||e.call(this),bi("div",{class:[`${this.mergedClsPrefix}-collapse`,this.rtlEnabled&&`${this.mergedClsPrefix}-collapse--rtl`,this.themeClass],style:this.cssVars},this.$slots)}}),gS=qn({name:"CollapseItemContent",props:{displayDirective:{type:String,required:!0},show:Boolean,clsPrefix:{type:String,required:!0}},setup:e=>({onceTrue:fp(Dt(e,"show"))}),render(){return bi(ox,null,{default:()=>{const{show:e,displayDirective:t,onceTrue:n,clsPrefix:r}=this,o="show"===t&&n,i=bi("div",{class:`${r}-collapse-item__content-wrapper`},bi("div",{class:`${r}-collapse-item__content-inner`},this.$slots));return o?vn(i,[[qi,e]]):e?i:null}})}}),bS=qn({name:"CollapseItem",props:{title:String,name:[String,Number],disabled:Boolean,displayDirective:String},setup(e){const{mergedRtlRef:t}=wg(e),n=ap(),r=hp((()=>{var t;return null!==(t=e.name)&&void 0!==t?t:n})),o=Wr(fS);o||rg("collapse-item","`n-collapse-item` must be placed inside `n-collapse`.");const{expandedNamesRef:i,props:a,mergedClsPrefixRef:l,slots:s}=o,c=gi((()=>{const{value:e}=i;if(Array.isArray(e)){const{value:t}=r;return!~e.findIndex((e=>e===t))}if(e){const{value:t}=r;return t!==e}return!0}));return{rtlEnabled:yy("Collapse",t,l),collapseSlots:s,randomName:n,mergedClsPrefix:l,collapsed:c,triggerAreas:Dt(a,"triggerAreas"),mergedDisplayDirective:gi((()=>{const{displayDirective:t}=e;return t||a.displayDirective})),arrowPlacement:gi((()=>a.arrowPlacement)),handleClick(t){let n="main";ku(t,"arrow")&&(n="arrow"),ku(t,"extra")&&(n="extra"),a.triggerAreas.includes(n)&&o&&!e.disabled&&o.toggleItem(c.value,r.value,t)}}},render(){const{collapseSlots:e,$slots:t,arrowPlacement:n,collapsed:r,mergedDisplayDirective:o,mergedClsPrefix:i,disabled:a,triggerAreas:l}=this,s=gg(t.header,{collapsed:r},(()=>[this.title])),c=t["header-extra"]||e["header-extra"],d=t.arrow||e.arrow;return bi("div",{class:[`${i}-collapse-item`,`${i}-collapse-item--${n}-arrow-placement`,a&&`${i}-collapse-item--disabled`,!r&&`${i}-collapse-item--active`,l.map((e=>`${i}-collapse-item--trigger-area-${e}`))]},bi("div",{class:[`${i}-collapse-item__header`,!r&&`${i}-collapse-item__header--active`]},bi("div",{class:`${i}-collapse-item__header-main`,onClick:this.handleClick},"right"===n&&s,bi("div",{class:`${i}-collapse-item-arrow`,key:this.rtlEnabled?0:1,"data-arrow":!0},gg(d,{collapsed:r},(()=>[bi(Oy,{clsPrefix:i},{default:()=>this.rtlEnabled?bi(Ny,null):bi(By,null)})]))),"left"===n&&s),(p={collapsed:r},(e=>bi("div",{class:`${i}-collapse-item__header-extra`,onClick:this.handleClick,"data-extra":!0},e))((u=c)&&fg(u(p))||null))),bi(gS,{clsPrefix:i,displayDirective:o,show:!r},t));var u,p}}),vS=qn({name:"ConfigProvider",alias:["App"],props:{abstract:Boolean,bordered:{type:Boolean,default:void 0},clsPrefix:String,locale:Object,dateLocale:Object,namespace:String,rtl:Array,tag:{type:String,default:"div"},hljs:Object,katex:Object,theme:Object,themeOverrides:Object,componentOptions:Object,icons:Object,breakpoints:Object,preflightStyleDisabled:Boolean,styleMountTarget:Object,inlineThemeDisabled:{type:Boolean,default:void 0},as:{type:String,validator:()=>!0,default:void 0}},setup(e){const t=Wr(yg,null),n=gi((()=>{const{theme:n}=e;if(null===n)return;const r=null==t?void 0:t.mergedThemeRef.value;return void 0===n?r:void 0===r?n:Object.assign({},r,n)})),r=gi((()=>{const{themeOverrides:n}=e;if(null!==n){if(void 0===n)return null==t?void 0:t.mergedThemeOverridesRef.value;{const e=null==t?void 0:t.mergedThemeOverridesRef.value;return void 0===e?n:gy({},e,n)}}})),o=hp((()=>{const{namespace:n}=e;return void 0===n?null==t?void 0:t.mergedNamespaceRef.value:n})),i=hp((()=>{const{bordered:n}=e;return void 0===n?null==t?void 0:t.mergedBorderedRef.value:n})),a=gi((()=>{const{icons:n}=e;return void 0===n?null==t?void 0:t.mergedIconsRef.value:n})),l=gi((()=>{const{componentOptions:n}=e;return void 0!==n?n:null==t?void 0:t.mergedComponentPropsRef.value})),s=gi((()=>{const{clsPrefix:n}=e;return void 0!==n?n:t?t.mergedClsPrefixRef.value:xg})),c=gi((()=>{var n;const{rtl:r}=e;if(void 0===r)return null==t?void 0:t.mergedRtlRef.value;const o={};for(const e of r)o[e.name]=Ot(e),null===(n=e.peers)||void 0===n||n.forEach((e=>{e.name in o||(o[e.name]=Ot(e))}));return o})),d=gi((()=>e.breakpoints||(null==t?void 0:t.mergedBreakpointsRef.value))),u=e.inlineThemeDisabled||(null==t?void 0:t.inlineThemeDisabled),p=e.preflightStyleDisabled||(null==t?void 0:t.preflightStyleDisabled),f=e.styleMountTarget||(null==t?void 0:t.styleMountTarget),h=gi((()=>{const{value:e}=n,{value:t}=r,o=t&&0!==Object.keys(t).length,i=null==e?void 0:e.name;return i?o?`${i}-${Yd(JSON.stringify(r.value))}`:i:o?Yd(JSON.stringify(r.value)):""}));return Hr(yg,{mergedThemeHashRef:h,mergedBreakpointsRef:d,mergedRtlRef:c,mergedIconsRef:a,mergedComponentPropsRef:l,mergedBorderedRef:i,mergedNamespaceRef:o,mergedClsPrefixRef:s,mergedLocaleRef:gi((()=>{const{locale:n}=e;if(null!==n)return void 0===n?null==t?void 0:t.mergedLocaleRef.value:n})),mergedDateLocaleRef:gi((()=>{const{dateLocale:n}=e;if(null!==n)return void 0===n?null==t?void 0:t.mergedDateLocaleRef.value:n})),mergedHljsRef:gi((()=>{const{hljs:n}=e;return void 0===n?null==t?void 0:t.mergedHljsRef.value:n})),mergedKatexRef:gi((()=>{const{katex:n}=e;return void 0===n?null==t?void 0:t.mergedKatexRef.value:n})),mergedThemeRef:n,mergedThemeOverridesRef:r,inlineThemeDisabled:u||!1,preflightStyleDisabled:p||!1,styleMountTarget:f}),{mergedClsPrefix:s,mergedBordered:i,mergedNamespace:o,mergedTheme:n,mergedThemeOverrides:r}},render(){var e,t,n,r;return this.abstract?null===(r=(n=this.$slots).default)||void 0===r?void 0:r.call(n):bi(this.as||this.tag,{class:`${this.mergedClsPrefix||xg}-config-provider`},null===(t=(e=this.$slots).default)||void 0===t?void 0:t.call(e))}});const mS={name:"Popselect",common:nw,peers:{Popover:qw,InternalSelectMenu:Nw},self:function(e){const{boxShadow2:t}=e;return{menuBoxShadow:t}}},yS="n-popselect",xS=uu("popselect-menu","\n box-shadow: var(--n-menu-box-shadow);\n"),wS={multiple:Boolean,value:{type:[String,Number,Array],default:null},cancelable:Boolean,options:{type:Array,default:()=>[]},size:{type:String,default:"medium"},scrollable:Boolean,"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],onMouseenter:Function,onMouseleave:Function,renderLabel:Function,showCheckmark:{type:Boolean,default:void 0},nodeProps:Function,virtualScroll:Boolean,onChange:[Function,Array]},CS=cg(wS),SS=qn({name:"PopselectPanel",props:wS,setup(e){const t=Wr(yS),{mergedClsPrefixRef:n,inlineThemeDisabled:r}=wg(e),o=Ey("Popselect","-pop-select",xS,mS,t.props,n),i=gi((()=>Pw(e.options,IC("value","children"))));function a(t,n){const{onUpdateValue:r,"onUpdate:value":o,onChange:i}=e;r&&og(r,t,n),o&&og(o,t,n),i&&og(i,t,n)}go(Dt(e,"options"),(()=>{an((()=>{t.syncPosition()}))}));const l=gi((()=>{const{self:{menuBoxShadow:e}}=o.value;return{"--n-menu-box-shadow":e}})),s=r?Sg("select",void 0,l,t.props):void 0;return{mergedTheme:t.mergedThemeRef,mergedClsPrefix:n,treeMate:i,handleToggle:function(n){!function(n){const{value:{getNode:r}}=i;if(e.multiple)if(Array.isArray(e.value)){const t=[],o=[];let i=!0;e.value.forEach((e=>{if(e===n)return void(i=!1);const a=r(e);a&&(t.push(a.key),o.push(a.rawNode))})),i&&(t.push(n),o.push(r(n).rawNode)),a(t,o)}else{const e=r(n);e&&a([n],[e.rawNode])}else if(e.value===n&&e.cancelable)a(null,null);else{const e=r(n);e&&a(n,e.rawNode);const{"onUpdate:show":o,onUpdateShow:i}=t.props;o&&og(o,!1),i&&og(i,!1),t.setShow(!1)}an((()=>{t.syncPosition()}))}(n.key)},handleMenuMousedown:function(e){ku(e,"action")||ku(e,"empty")||ku(e,"header")||e.preventDefault()},cssVars:r?void 0:l,themeClass:null==s?void 0:s.themeClass,onRender:null==s?void 0:s.onRender}},render(){var e;return null===(e=this.onRender)||void 0===e||e.call(this),bi(Ww,{clsPrefix:this.mergedClsPrefix,focusable:!0,nodeProps:this.nodeProps,class:[`${this.mergedClsPrefix}-popselect-menu`,this.themeClass],style:this.cssVars,theme:this.mergedTheme.peers.InternalSelectMenu,themeOverrides:this.mergedTheme.peerOverrides.InternalSelectMenu,multiple:this.multiple,treeMate:this.treeMate,size:this.size,value:this.value,virtualScroll:this.virtualScroll,scrollable:this.scrollable,renderLabel:this.renderLabel,onToggle:this.handleToggle,onMouseenter:this.onMouseenter,onMouseleave:this.onMouseenter,onMousedown:this.handleMenuMousedown,showCheckmark:this.showCheckmark},{header:()=>{var e,t;return(null===(t=(e=this.$slots).header)||void 0===t?void 0:t.call(e))||[]},action:()=>{var e,t;return(null===(t=(e=this.$slots).action)||void 0===t?void 0:t.call(e))||[]},empty:()=>{var e,t;return(null===(t=(e=this.$slots).empty)||void 0===t?void 0:t.call(e))||[]}})}}),kS=qn({name:"Popselect",props:Object.assign(Object.assign(Object.assign(Object.assign({},Ey.props),ug(oC,["showArrow","arrow"])),{placement:Object.assign(Object.assign({},oC.placement),{default:"bottom"}),trigger:{type:String,default:"hover"}}),wS),slots:Object,inheritAttrs:!1,__popover__:!0,setup(e){const{mergedClsPrefixRef:t}=wg(e),n=Ey("Popselect","-popselect",void 0,mS,e,t),r=$t(null);function o(){var e;null===(e=r.value)||void 0===e||e.syncPosition()}function i(e){var t;null===(t=r.value)||void 0===t||t.setShow(e)}Hr(yS,{props:e,mergedThemeRef:n,syncPosition:o,setShow:i});const a={syncPosition:o,setShow:i};return Object.assign(Object.assign({},a),{popoverInstRef:r,mergedTheme:n})},render(){const{mergedTheme:e}=this,t={theme:e.peers.Popover,themeOverrides:e.peerOverrides.Popover,builtinThemeOverrides:{padding:"0"},ref:"popoverInstRef",internalRenderBody:(e,t,n,r,o)=>{const{$attrs:i}=this;return bi(SS,Object.assign({},i,{class:[i.class,e],style:[i.style,...n]},sg(this.$props,CS),{ref:ig(t),onMouseenter:dg([r,i.onMouseenter]),onMouseleave:dg([o,i.onMouseleave])}),{header:()=>{var e,t;return null===(t=(e=this.$slots).header)||void 0===t?void 0:t.call(e)},action:()=>{var e,t;return null===(t=(e=this.$slots).action)||void 0===t?void 0:t.call(e)},empty:()=>{var e,t;return null===(t=(e=this.$slots).empty)||void 0===t?void 0:t.call(e)}})}};return bi(iC,Object.assign({},ug(this.$props,CS),t,{internalDeactivateImmediately:!0}),{trigger:()=>{var e,t;return null===(t=(e=this.$slots).default)||void 0===t?void 0:t.call(e)}})}});const _S={name:"Select",common:nw,peers:{InternalSelection:hC,InternalSelectMenu:Nw},self:function(e){const{boxShadow2:t}=e;return{menuBoxShadow:t}}},ES=cu([uu("select","\n z-index: auto;\n outline: none;\n width: 100%;\n position: relative;\n font-weight: var(--n-font-weight);\n "),uu("select-menu","\n margin: 4px 0;\n box-shadow: var(--n-menu-box-shadow);\n ",[Dw({originalTransition:"background-color .3s var(--n-bezier), box-shadow .3s var(--n-bezier)"})])]),RS=qn({name:"Select",props:Object.assign(Object.assign({},Ey.props),{to:qp.propTo,bordered:{type:Boolean,default:void 0},clearable:Boolean,clearFilterAfterSelect:{type:Boolean,default:!0},options:{type:Array,default:()=>[]},defaultValue:{type:[String,Number,Array],default:null},keyboard:{type:Boolean,default:!0},value:[String,Number,Array],placeholder:String,menuProps:Object,multiple:Boolean,size:String,menuSize:{type:String},filterable:Boolean,disabled:{type:Boolean,default:void 0},remote:Boolean,loading:Boolean,filter:Function,placement:{type:String,default:"bottom-start"},widthMode:{type:String,default:"trigger"},tag:Boolean,onCreate:Function,fallbackOption:{type:[Function,Boolean],default:void 0},show:{type:Boolean,default:void 0},showArrow:{type:Boolean,default:!0},maxTagCount:[Number,String],ellipsisTagPopoverProps:Object,consistentMenuWidth:{type:Boolean,default:!0},virtualScroll:{type:Boolean,default:!0},labelField:{type:String,default:"label"},valueField:{type:String,default:"value"},childrenField:{type:String,default:"children"},renderLabel:Function,renderOption:Function,renderTag:Function,"onUpdate:value":[Function,Array],inputProps:Object,nodeProps:Function,ignoreComposition:{type:Boolean,default:!0},showOnFocus:Boolean,onUpdateValue:[Function,Array],onBlur:[Function,Array],onClear:[Function,Array],onFocus:[Function,Array],onScroll:[Function,Array],onSearch:[Function,Array],onUpdateShow:[Function,Array],"onUpdate:show":[Function,Array],displayDirective:{type:String,default:"show"},resetMenuOnOptionsChange:{type:Boolean,default:!0},status:String,showCheckmark:{type:Boolean,default:!0},onChange:[Function,Array],items:Array}),slots:Object,setup(e){const{mergedClsPrefixRef:t,mergedBorderedRef:n,namespaceRef:r,inlineThemeDisabled:o}=wg(e),i=Ey("Select","-select",ES,_S,e,t),a=$t(e.defaultValue),l=$p(Dt(e,"value"),a),s=$t(!1),c=$t(""),d=Mp(e,["items","options"]),u=$t([]),p=$t([]),f=gi((()=>p.value.concat(u.value).concat(d.value))),h=gi((()=>{const{filter:t}=e;if(t)return t;const{labelField:n,valueField:r}=e;return(e,t)=>{if(!t)return!1;const o=t[n];if("string"==typeof o)return BC(e,o);const i=t[r];return"string"==typeof i?BC(e,i):"number"==typeof i&&BC(e,String(i))}})),g=gi((()=>{if(e.remote)return d.value;{const{value:t}=f,{value:n}=c;return n.length&&e.filterable?function(e,t,n,r){return t?function e(o){if(!Array.isArray(o))return[];const i=[];for(const a of o)if(FC(a)){const t=e(a[r]);t.length&&i.push(Object.assign({},a,{[r]:t}))}else{if(NC(a))continue;t(n,a)&&i.push(a)}return i}(e):e}(t,h.value,n,e.childrenField):t}})),b=gi((()=>{const{valueField:t,childrenField:n}=e,r=IC(t,n);return Pw(g.value,r)})),v=gi((()=>function(e,t,n){const r=new Map;return e.forEach((e=>{FC(e)?e[n].forEach((e=>{r.set(e[t],e)})):r.set(e[t],e)})),r}(f.value,e.valueField,e.childrenField))),m=$t(!1),y=$p(Dt(e,"show"),m),x=$t(null),w=$t(null),C=$t(null),{localeRef:S}=vy("Select"),k=gi((()=>{var t;return null!==(t=e.placeholder)&&void 0!==t?t:S.value.placeholder})),_=[],E=$t(new Map),R=gi((()=>{const{fallbackOption:t}=e;if(void 0===t){const{labelField:t,valueField:n}=e;return e=>({[t]:String(e),[n]:e})}return!1!==t&&(e=>Object.assign(t(e),{value:e}))}));function O(t){const n=e.remote,{value:r}=E,{value:o}=v,{value:i}=R,a=[];return t.forEach((e=>{if(o.has(e))a.push(o.get(e));else if(n&&r.has(e))a.push(r.get(e));else if(i){const t=i(e);t&&a.push(t)}})),a}const A=gi((()=>{if(e.multiple){const{value:e}=l;return Array.isArray(e)?O(e):[]}return null})),P=gi((()=>{const{value:t}=l;return e.multiple||Array.isArray(t)||null===t?null:O([t])[0]||null})),T=_g(e),{mergedSizeRef:$,mergedDisabledRef:z,mergedStatusRef:M}=T;function F(t,n){const{onChange:r,"onUpdate:value":o,onUpdateValue:i}=e,{nTriggerFormChange:l,nTriggerFormInput:s}=T;r&&og(r,t,n),i&&og(i,t,n),o&&og(o,t,n),a.value=t,l(),s()}function N(t){const{onBlur:n}=e,{nTriggerFormBlur:r}=T;n&&og(n,t),r()}function B(){var t;const{remote:n,multiple:r}=e;if(n){const{value:n}=E;if(r){const{valueField:r}=e;null===(t=A.value)||void 0===t||t.forEach((e=>{n.set(e[r],e)}))}else{const t=P.value;t&&n.set(t[e.valueField],t)}}}function I(t){const{onUpdateShow:n,"onUpdate:show":r}=e;n&&og(n,t),r&&og(r,t),m.value=t}function L(){z.value||(I(!0),m.value=!0,e.filterable&&G())}function j(){I(!1)}function D(){c.value="",p.value=_}const H=$t(!1);function W(e){U(e.rawNode)}function U(t){if(z.value)return;const{tag:n,remote:r,clearFilterAfterSelect:o,valueField:i}=e;if(n&&!r){const{value:e}=p,t=e[0]||null;if(t){const e=u.value;e.length?e.push(t):u.value=[t],p.value=_}}if(r&&E.value.set(t[i],t),e.multiple){const a=function(t){if(!Array.isArray(t))return[];if(R.value)return Array.from(t);{const{remote:n}=e,{value:r}=v;if(n){const{value:e}=E;return t.filter((t=>r.has(t)||e.has(t)))}return t.filter((e=>r.has(e)))}}(l.value),s=a.findIndex((e=>e===t[i]));if(~s){if(a.splice(s,1),n&&!r){const e=q(t[i]);~e&&(u.value.splice(e,1),o&&(c.value=""))}}else a.push(t[i]),o&&(c.value="");F(a,O(a))}else{if(n&&!r){const e=q(t[i]);u.value=~e?[u.value[e]]:_}V(),j(),F(t[i],t)}}function q(t){return u.value.findIndex((n=>n[e.valueField]===t))}function K(t){var n,r,o,i,a,s;if(e.keyboard)switch(t.key){case" ":if(e.filterable)break;t.preventDefault();case"Enter":if(!(null===(n=x.value)||void 0===n?void 0:n.isComposing))if(y.value){const t=null===(r=C.value)||void 0===r?void 0:r.getPendingTmNode();t?W(t):e.filterable||(j(),V())}else if(L(),e.tag&&H.value){const t=p.value[0];if(t){const n=t[e.valueField],{value:r}=l;e.multiple&&Array.isArray(r)&&r.includes(n)||U(t)}}t.preventDefault();break;case"ArrowUp":if(t.preventDefault(),e.loading)return;y.value&&(null===(o=C.value)||void 0===o||o.prev());break;case"ArrowDown":if(t.preventDefault(),e.loading)return;y.value?null===(i=C.value)||void 0===i||i.next():L();break;case"Escape":y.value&&(s=t,eg.add(s),j()),null===(a=x.value)||void 0===a||a.focus()}else t.preventDefault()}function V(){var e;null===(e=x.value)||void 0===e||e.focus()}function G(){var e;null===(e=x.value)||void 0===e||e.focusInput()}B(),go(Dt(e,"options"),B);const Z={focus:()=>{var e;null===(e=x.value)||void 0===e||e.focus()},focusInput:()=>{var e;null===(e=x.value)||void 0===e||e.focusInput()},blur:()=>{var e;null===(e=x.value)||void 0===e||e.blur()},blurInput:()=>{var e;null===(e=x.value)||void 0===e||e.blurInput()}},X=gi((()=>{const{self:{menuBoxShadow:e}}=i.value;return{"--n-menu-box-shadow":e}})),Q=o?Sg("select",void 0,X,e):void 0;return Object.assign(Object.assign({},Z),{mergedStatus:M,mergedClsPrefix:t,mergedBordered:n,namespace:r,treeMate:b,isMounted:zp(),triggerRef:x,menuRef:C,pattern:c,uncontrolledShow:m,mergedShow:y,adjustedTo:qp(e),uncontrolledValue:a,mergedValue:l,followerRef:w,localizedPlaceholder:k,selectedOption:P,selectedOptions:A,mergedSize:$,mergedDisabled:z,focused:s,activeWithoutMenuOpen:H,inlineThemeDisabled:o,onTriggerInputFocus:function(){e.filterable&&(H.value=!0)},onTriggerInputBlur:function(){e.filterable&&(H.value=!1,y.value||D())},handleTriggerOrMenuResize:function(){var e;y.value&&(null===(e=w.value)||void 0===e||e.syncPosition())},handleMenuFocus:function(){s.value=!0},handleMenuBlur:function(e){var t;(null===(t=x.value)||void 0===t?void 0:t.$el.contains(e.relatedTarget))||(s.value=!1,N(e),j())},handleMenuTabOut:function(){var e;null===(e=x.value)||void 0===e||e.focus(),j()},handleTriggerClick:function(){z.value||(y.value?e.filterable?G():j():L())},handleToggle:W,handleDeleteOption:U,handlePatternInput:function(t){y.value||L();const{value:n}=t.target;c.value=n;const{tag:r,remote:o}=e;if(function(t){const{onSearch:n}=e;n&&og(n,t)}(n),r&&!o){if(!n)return void(p.value=_);const{onCreate:t}=e,r=t?t(n):{[e.labelField]:n,[e.valueField]:n},{valueField:o,labelField:i}=e;d.value.some((e=>e[o]===r[o]||e[i]===r[i]))||u.value.some((e=>e[o]===r[o]||e[i]===r[i]))?p.value=_:p.value=[r]}},handleClear:function(t){t.stopPropagation();const{multiple:n}=e;!n&&e.filterable&&j(),function(){const{onClear:t}=e;t&&og(t)}(),n?F([],[]):F(null,null)},handleTriggerBlur:function(e){var t,n;(null===(n=null===(t=C.value)||void 0===t?void 0:t.selfRef)||void 0===n?void 0:n.contains(e.relatedTarget))||(s.value=!1,N(e),j())},handleTriggerFocus:function(t){!function(t){const{onFocus:n,showOnFocus:r}=e,{nTriggerFormFocus:o}=T;n&&og(n,t),o(),r&&L()}(t),s.value=!0},handleKeydown:K,handleMenuAfterLeave:D,handleMenuClickOutside:function(e){var t;y.value&&((null===(t=x.value)||void 0===t?void 0:t.$el.contains(_u(e)))||j())},handleMenuScroll:function(t){!function(t){const{onScroll:n}=e;n&&og(n,t)}(t)},handleMenuKeydown:K,handleMenuMousedown:function(e){ku(e,"action")||ku(e,"empty")||ku(e,"header")||e.preventDefault()},mergedTheme:i,cssVars:o?void 0:X,themeClass:null==Q?void 0:Q.themeClass,onRender:null==Q?void 0:Q.onRender})},render(){return bi("div",{class:`${this.mergedClsPrefix}-select`},bi(ff,null,{default:()=>[bi(hf,null,{default:()=>bi(bC,{ref:"triggerRef",inlineThemeDisabled:this.inlineThemeDisabled,status:this.mergedStatus,inputProps:this.inputProps,clsPrefix:this.mergedClsPrefix,showArrow:this.showArrow,maxTagCount:this.maxTagCount,ellipsisTagPopoverProps:this.ellipsisTagPopoverProps,bordered:this.mergedBordered,active:this.activeWithoutMenuOpen||this.mergedShow,pattern:this.pattern,placeholder:this.localizedPlaceholder,selectedOption:this.selectedOption,selectedOptions:this.selectedOptions,multiple:this.multiple,renderTag:this.renderTag,renderLabel:this.renderLabel,filterable:this.filterable,clearable:this.clearable,disabled:this.mergedDisabled,size:this.mergedSize,theme:this.mergedTheme.peers.InternalSelection,labelField:this.labelField,valueField:this.valueField,themeOverrides:this.mergedTheme.peerOverrides.InternalSelection,loading:this.loading,focused:this.focused,onClick:this.handleTriggerClick,onDeleteOption:this.handleDeleteOption,onPatternInput:this.handlePatternInput,onClear:this.handleClear,onBlur:this.handleTriggerBlur,onFocus:this.handleTriggerFocus,onKeydown:this.handleKeydown,onPatternBlur:this.onTriggerInputBlur,onPatternFocus:this.onTriggerInputFocus,onResize:this.handleTriggerOrMenuResize,ignoreComposition:this.ignoreComposition},{arrow:()=>{var e,t;return[null===(t=(e=this.$slots).arrow)||void 0===t?void 0:t.call(e)]}})}),bi(Lf,{ref:"followerRef",show:this.mergedShow,to:this.adjustedTo,teleportDisabled:this.adjustedTo===qp.tdkey,containerClass:this.namespace,width:this.consistentMenuWidth?"target":void 0,minWidth:"target",placement:this.placement},{default:()=>bi(Ai,{name:"fade-in-scale-up-transition",appear:this.isMounted,onAfterLeave:this.handleMenuAfterLeave},{default:()=>{var e,t,n;return this.mergedShow||"show"===this.displayDirective?(null===(e=this.onRender)||void 0===e||e.call(this),vn(bi(Ww,Object.assign({},this.menuProps,{ref:"menuRef",onResize:this.handleTriggerOrMenuResize,inlineThemeDisabled:this.inlineThemeDisabled,virtualScroll:this.consistentMenuWidth&&this.virtualScroll,class:[`${this.mergedClsPrefix}-select-menu`,this.themeClass,null===(t=this.menuProps)||void 0===t?void 0:t.class],clsPrefix:this.mergedClsPrefix,focusable:!0,labelField:this.labelField,valueField:this.valueField,autoPending:!0,nodeProps:this.nodeProps,theme:this.mergedTheme.peers.InternalSelectMenu,themeOverrides:this.mergedTheme.peerOverrides.InternalSelectMenu,treeMate:this.treeMate,multiple:this.multiple,size:this.menuSize,renderOption:this.renderOption,renderLabel:this.renderLabel,value:this.mergedValue,style:[null===(n=this.menuProps)||void 0===n?void 0:n.style,this.cssVars],onToggle:this.handleToggle,onScroll:this.handleMenuScroll,onFocus:this.handleMenuFocus,onBlur:this.handleMenuBlur,onKeydown:this.handleMenuKeydown,onTabOut:this.handleMenuTabOut,onMousedown:this.handleMenuMousedown,show:this.mergedShow,showCheckmark:this.showCheckmark,resetMenuOnOptionsChange:this.resetMenuOnOptionsChange}),{empty:()=>{var e,t;return[null===(t=(e=this.$slots).empty)||void 0===t?void 0:t.call(e)]},header:()=>{var e,t;return[null===(t=(e=this.$slots).header)||void 0===t?void 0:t.call(e)]},action:()=>{var e,t;return[null===(t=(e=this.$slots).action)||void 0===t?void 0:t.call(e)]}}),"show"===this.displayDirective?[[qi,this.mergedShow],[mf,this.handleMenuClickOutside,void 0,{capture:!0}]]:[[mf,this.handleMenuClickOutside,void 0,{capture:!0}]])):null}})})]}))}}),OS={itemPaddingSmall:"0 4px",itemMarginSmall:"0 0 0 8px",itemMarginSmallRtl:"0 8px 0 0",itemPaddingMedium:"0 4px",itemMarginMedium:"0 0 0 8px",itemMarginMediumRtl:"0 8px 0 0",itemPaddingLarge:"0 4px",itemMarginLarge:"0 0 0 8px",itemMarginLargeRtl:"0 8px 0 0",buttonIconSizeSmall:"14px",buttonIconSizeMedium:"16px",buttonIconSizeLarge:"18px",inputWidthSmall:"60px",selectWidthSmall:"unset",inputMarginSmall:"0 0 0 8px",inputMarginSmallRtl:"0 8px 0 0",selectMarginSmall:"0 0 0 8px",prefixMarginSmall:"0 8px 0 0",suffixMarginSmall:"0 0 0 8px",inputWidthMedium:"60px",selectWidthMedium:"unset",inputMarginMedium:"0 0 0 8px",inputMarginMediumRtl:"0 8px 0 0",selectMarginMedium:"0 0 0 8px",prefixMarginMedium:"0 8px 0 0",suffixMarginMedium:"0 0 0 8px",inputWidthLarge:"60px",selectWidthLarge:"unset",inputMarginLarge:"0 0 0 8px",inputMarginLargeRtl:"0 8px 0 0",selectMarginLarge:"0 0 0 8px",prefixMarginLarge:"0 8px 0 0",suffixMarginLarge:"0 0 0 8px"};const AS={name:"Pagination",common:nw,peers:{Select:_S,Input:RC,Popselect:mS},self:function(e){const{textColor2:t,primaryColor:n,primaryColorHover:r,primaryColorPressed:o,inputColorDisabled:i,textColorDisabled:a,borderColor:l,borderRadius:s,fontSizeTiny:c,fontSizeSmall:d,fontSizeMedium:u,heightTiny:p,heightSmall:f,heightMedium:h}=e;return Object.assign(Object.assign({},OS),{buttonColor:"#0000",buttonColorHover:"#0000",buttonColorPressed:"#0000",buttonBorder:`1px solid ${l}`,buttonBorderHover:`1px solid ${l}`,buttonBorderPressed:`1px solid ${l}`,buttonIconColor:t,buttonIconColorHover:t,buttonIconColorPressed:t,itemTextColor:t,itemTextColorHover:r,itemTextColorPressed:o,itemTextColorActive:n,itemTextColorDisabled:a,itemColor:"#0000",itemColorHover:"#0000",itemColorPressed:"#0000",itemColorActive:"#0000",itemColorActiveHover:"#0000",itemColorDisabled:i,itemBorder:"1px solid #0000",itemBorderHover:"1px solid #0000",itemBorderPressed:"1px solid #0000",itemBorderActive:`1px solid ${n}`,itemBorderDisabled:`1px solid ${l}`,itemBorderRadius:s,itemSizeSmall:p,itemSizeMedium:f,itemSizeLarge:h,itemFontSizeSmall:c,itemFontSizeMedium:d,itemFontSizeLarge:u,jumperFontSizeSmall:c,jumperFontSizeMedium:d,jumperFontSizeLarge:u,jumperTextColor:t,jumperTextColorDisabled:a})}},PS="\n background: var(--n-item-color-hover);\n color: var(--n-item-text-color-hover);\n border: var(--n-item-border-hover);\n",TS=[fu("button","\n background: var(--n-button-color-hover);\n border: var(--n-button-border-hover);\n color: var(--n-button-icon-color-hover);\n ")],$S=uu("pagination","\n display: flex;\n vertical-align: middle;\n font-size: var(--n-item-font-size);\n flex-wrap: nowrap;\n",[uu("pagination-prefix","\n display: flex;\n align-items: center;\n margin: var(--n-prefix-margin);\n "),uu("pagination-suffix","\n display: flex;\n align-items: center;\n margin: var(--n-suffix-margin);\n "),cu("> *:not(:first-child)","\n margin: var(--n-item-margin);\n "),uu("select","\n width: var(--n-select-width);\n "),cu("&.transition-disabled",[uu("pagination-item","transition: none!important;")]),uu("pagination-quick-jumper","\n white-space: nowrap;\n display: flex;\n color: var(--n-jumper-text-color);\n transition: color .3s var(--n-bezier);\n align-items: center;\n font-size: var(--n-jumper-font-size);\n ",[uu("input","\n margin: var(--n-input-margin);\n width: var(--n-input-width);\n ")]),uu("pagination-item","\n position: relative;\n cursor: pointer;\n user-select: none;\n -webkit-user-select: none;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n min-width: var(--n-item-size);\n height: var(--n-item-size);\n padding: var(--n-item-padding);\n background-color: var(--n-item-color);\n color: var(--n-item-text-color);\n border-radius: var(--n-item-border-radius);\n border: var(--n-item-border);\n fill: var(--n-button-icon-color);\n transition:\n color .3s var(--n-bezier),\n border-color .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n fill .3s var(--n-bezier);\n ",[fu("button","\n background: var(--n-button-color);\n color: var(--n-button-icon-color);\n border: var(--n-button-border);\n padding: 0;\n ",[uu("base-icon","\n font-size: var(--n-button-icon-size);\n ")]),hu("disabled",[fu("hover",PS,TS),cu("&:hover",PS,TS),cu("&:active","\n background: var(--n-item-color-pressed);\n color: var(--n-item-text-color-pressed);\n border: var(--n-item-border-pressed);\n ",[fu("button","\n background: var(--n-button-color-pressed);\n border: var(--n-button-border-pressed);\n color: var(--n-button-icon-color-pressed);\n ")]),fu("active","\n background: var(--n-item-color-active);\n color: var(--n-item-text-color-active);\n border: var(--n-item-border-active);\n ",[cu("&:hover","\n background: var(--n-item-color-active-hover);\n ")])]),fu("disabled","\n cursor: not-allowed;\n color: var(--n-item-text-color-disabled);\n ",[fu("active, button","\n background-color: var(--n-item-color-disabled);\n border: var(--n-item-border-disabled);\n ")])]),fu("disabled","\n cursor: not-allowed;\n ",[uu("pagination-quick-jumper","\n color: var(--n-jumper-text-color-disabled);\n ")]),fu("simple","\n display: flex;\n align-items: center;\n flex-wrap: nowrap;\n ",[uu("pagination-quick-jumper",[uu("input","\n margin: 0;\n ")])])]);function zS(e){var t;if(!e)return 10;const{defaultPageSize:n}=e;if(void 0!==n)return n;const r=null===(t=e.pageSizes)||void 0===t?void 0:t[0];return"number"==typeof r?r:(null==r?void 0:r.value)||10}function MS(e,t){const n=[];for(let r=e;r<=t;++r)n.push({label:`${r}`,value:r});return n}const FS=qn({name:"Pagination",props:Object.assign(Object.assign({},Ey.props),{simple:Boolean,page:Number,defaultPage:{type:Number,default:1},itemCount:Number,pageCount:Number,defaultPageCount:{type:Number,default:1},showSizePicker:Boolean,pageSize:Number,defaultPageSize:Number,pageSizes:{type:Array,default:()=>[10]},showQuickJumper:Boolean,size:{type:String,default:"medium"},disabled:Boolean,pageSlot:{type:Number,default:9},selectProps:Object,prev:Function,next:Function,goto:Function,prefix:Function,suffix:Function,label:Function,displayOrder:{type:Array,default:["pages","size-picker","quick-jumper"]},to:qp.propTo,showQuickJumpDropdown:{type:Boolean,default:!0},"onUpdate:page":[Function,Array],onUpdatePage:[Function,Array],"onUpdate:pageSize":[Function,Array],onUpdatePageSize:[Function,Array],onPageSizeChange:[Function,Array],onChange:[Function,Array]}),slots:Object,setup(e){const{mergedComponentPropsRef:t,mergedClsPrefixRef:n,inlineThemeDisabled:r,mergedRtlRef:o}=wg(e),i=Ey("Pagination","-pagination",$S,AS,e,n),{localeRef:a}=vy("Pagination"),l=$t(null),s=$t(e.defaultPage),c=$t(zS(e)),d=$p(Dt(e,"page"),s),u=$p(Dt(e,"pageSize"),c),p=gi((()=>{const{itemCount:t}=e;if(void 0!==t)return Math.max(1,Math.ceil(t/u.value));const{pageCount:n}=e;return void 0!==n?Math.max(n,1):1})),f=$t("");ho((()=>{e.simple,f.value=String(d.value)}));const h=$t(!1),g=$t(!1),b=$t(!1),v=$t(!1),m=gi((()=>function(e,t,n,r){let o=!1,i=!1,a=1,l=t;if(1===t)return{hasFastBackward:!1,hasFastForward:!1,fastForwardTo:l,fastBackwardTo:a,items:[{type:"page",label:1,active:1===e,mayBeFastBackward:!1,mayBeFastForward:!1}]};if(2===t)return{hasFastBackward:!1,hasFastForward:!1,fastForwardTo:l,fastBackwardTo:a,items:[{type:"page",label:1,active:1===e,mayBeFastBackward:!1,mayBeFastForward:!1},{type:"page",label:2,active:2===e,mayBeFastBackward:!0,mayBeFastForward:!1}]};const s=t;let c=e,d=e;const u=(n-5)/2;d+=Math.ceil(u),d=Math.min(Math.max(d,1+n-3),s-2),c-=Math.floor(u),c=Math.max(Math.min(c,s-n+3),3);let p=!1,f=!1;c>3&&(p=!0),d=2&&h.push({type:"page",label:2,mayBeFastBackward:!0,mayBeFastForward:!1,active:2===e});for(let g=c;g<=d;++g)h.push({type:"page",label:g,mayBeFastBackward:!1,mayBeFastForward:!1,active:e===g});return f?(i=!0,l=d+1,h.push({type:"fast-forward",active:!1,label:void 0,options:r?MS(d+1,s-1):null})):d===s-2&&h[h.length-1].label!==s-1&&h.push({type:"page",mayBeFastForward:!0,mayBeFastBackward:!1,label:s-1,active:e===s-1}),h[h.length-1].label!==s&&h.push({type:"page",mayBeFastForward:!1,mayBeFastBackward:!1,label:s,active:e===s}),{hasFastBackward:o,hasFastForward:i,fastBackwardTo:a,fastForwardTo:l,items:h}}(d.value,p.value,e.pageSlot,e.showQuickJumpDropdown)));ho((()=>{m.value.hasFastBackward?m.value.hasFastForward||(h.value=!1,b.value=!1):(g.value=!1,v.value=!1)}));const y=gi((()=>{const t=a.value.selectionSuffix;return e.pageSizes.map((e=>"number"==typeof e?{label:`${e} / ${t}`,value:e}:e))})),x=gi((()=>{var n,r;return(null===(r=null===(n=null==t?void 0:t.value)||void 0===n?void 0:n.Pagination)||void 0===r?void 0:r.inputSize)||ng(e.size)})),w=gi((()=>{var n,r;return(null===(r=null===(n=null==t?void 0:t.value)||void 0===n?void 0:n.Pagination)||void 0===r?void 0:r.selectSize)||ng(e.size)})),C=gi((()=>(d.value-1)*u.value)),S=gi((()=>{const t=d.value*u.value-1,{itemCount:n}=e;return void 0!==n&&t>n-1?n-1:t})),k=gi((()=>{const{itemCount:t}=e;return void 0!==t?t:(e.pageCount||1)*u.value})),_=yy("Pagination",o,n);function E(){an((()=>{var e;const{value:t}=l;t&&(t.classList.add("transition-disabled"),null===(e=l.value)||void 0===e||e.offsetWidth,t.classList.remove("transition-disabled"))}))}function R(t){if(t===d.value)return;const{"onUpdate:page":n,onUpdatePage:r,onChange:o,simple:i}=e;n&&og(n,t),r&&og(r,t),o&&og(o,t),s.value=t,i&&(f.value=String(t))}ho((()=>{d.value,u.value,E()}));const O=gi((()=>{const{size:t}=e,{self:{buttonBorder:n,buttonBorderHover:r,buttonBorderPressed:o,buttonIconColor:a,buttonIconColorHover:l,buttonIconColorPressed:s,itemTextColor:c,itemTextColorHover:d,itemTextColorPressed:u,itemTextColorActive:p,itemTextColorDisabled:f,itemColor:h,itemColorHover:g,itemColorPressed:b,itemColorActive:v,itemColorActiveHover:m,itemColorDisabled:y,itemBorder:x,itemBorderHover:w,itemBorderPressed:C,itemBorderActive:S,itemBorderDisabled:k,itemBorderRadius:_,jumperTextColor:E,jumperTextColorDisabled:R,buttonColor:O,buttonColorHover:A,buttonColorPressed:P,[yu("itemPadding",t)]:T,[yu("itemMargin",t)]:$,[yu("inputWidth",t)]:z,[yu("selectWidth",t)]:M,[yu("inputMargin",t)]:F,[yu("selectMargin",t)]:N,[yu("jumperFontSize",t)]:B,[yu("prefixMargin",t)]:I,[yu("suffixMargin",t)]:L,[yu("itemSize",t)]:j,[yu("buttonIconSize",t)]:D,[yu("itemFontSize",t)]:H,[`${yu("itemMargin",t)}Rtl`]:W,[`${yu("inputMargin",t)}Rtl`]:U},common:{cubicBezierEaseInOut:q}}=i.value;return{"--n-prefix-margin":I,"--n-suffix-margin":L,"--n-item-font-size":H,"--n-select-width":M,"--n-select-margin":N,"--n-input-width":z,"--n-input-margin":F,"--n-input-margin-rtl":U,"--n-item-size":j,"--n-item-text-color":c,"--n-item-text-color-disabled":f,"--n-item-text-color-hover":d,"--n-item-text-color-active":p,"--n-item-text-color-pressed":u,"--n-item-color":h,"--n-item-color-hover":g,"--n-item-color-disabled":y,"--n-item-color-active":v,"--n-item-color-active-hover":m,"--n-item-color-pressed":b,"--n-item-border":x,"--n-item-border-hover":w,"--n-item-border-disabled":k,"--n-item-border-active":S,"--n-item-border-pressed":C,"--n-item-padding":T,"--n-item-border-radius":_,"--n-bezier":q,"--n-jumper-font-size":B,"--n-jumper-text-color":E,"--n-jumper-text-color-disabled":R,"--n-item-margin":$,"--n-item-margin-rtl":W,"--n-button-icon-size":D,"--n-button-icon-color":a,"--n-button-icon-color-hover":l,"--n-button-icon-color-pressed":s,"--n-button-color-hover":A,"--n-button-color":O,"--n-button-color-pressed":P,"--n-button-border":n,"--n-button-border-hover":r,"--n-button-border-pressed":o}})),A=r?Sg("pagination",gi((()=>{let t="";const{size:n}=e;return t+=n[0],t})),O,e):void 0;return{rtlEnabled:_,mergedClsPrefix:n,locale:a,selfRef:l,mergedPage:d,pageItems:gi((()=>m.value.items)),mergedItemCount:k,jumperValue:f,pageSizeOptions:y,mergedPageSize:u,inputSize:x,selectSize:w,mergedTheme:i,mergedPageCount:p,startIndex:C,endIndex:S,showFastForwardMenu:b,showFastBackwardMenu:v,fastForwardActive:h,fastBackwardActive:g,handleMenuSelect:e=>{R(e)},handleFastForwardMouseenter:()=>{e.disabled||(h.value=!0,E())},handleFastForwardMouseleave:()=>{e.disabled||(h.value=!1,E())},handleFastBackwardMouseenter:()=>{g.value=!0,E()},handleFastBackwardMouseleave:()=>{g.value=!1,E()},handleJumperInput:function(e){f.value=e.replace(/\D+/g,"")},handleBackwardClick:function(){if(e.disabled)return;R(Math.max(d.value-1,1))},handleForwardClick:function(){if(e.disabled)return;R(Math.min(d.value+1,p.value))},handlePageItemClick:function(t){if(!e.disabled)switch(t.type){case"page":R(t.label);break;case"fast-backward":!function(){if(e.disabled)return;R(Math.max(m.value.fastBackwardTo,1))}();break;case"fast-forward":!function(){if(e.disabled)return;R(Math.min(m.value.fastForwardTo,p.value))}()}},handleSizePickerChange:function(t){!function(t){if(t===u.value)return;const{"onUpdate:pageSize":n,onUpdatePageSize:r,onPageSizeChange:o}=e;n&&og(n,t),r&&og(r,t),o&&og(o,t),c.value=t,p.value{switch(e){case"pages":return bi(Oo,null,bi("div",{class:[`${t}-pagination-item`,!$&&`${t}-pagination-item--button`,(o<=1||o>i||n)&&`${t}-pagination-item--disabled`],onClick:_},$?$({page:o,pageSize:f,pageCount:i,startIndex:this.startIndex,endIndex:this.endIndex,itemCount:this.mergedItemCount}):bi(Oy,{clsPrefix:t},{default:()=>this.rtlEnabled?bi(Vy,null):bi(zy,null)})),b?bi(Oo,null,bi("div",{class:`${t}-pagination-quick-jumper`},bi(MC,{value:g,onUpdateValue:S,size:u,placeholder:"",disabled:n,theme:c.peers.Input,themeOverrides:c.peerOverrides.Input,onChange:O}))," /"," ",i):a.map(((e,r)=>{let o,i,a;const{type:l}=e;switch(l){case"page":const n=e.label;o=M?M({type:"page",node:n,active:e.active}):n;break;case"fast-forward":const r=this.fastForwardActive?bi(Oy,{clsPrefix:t},{default:()=>this.rtlEnabled?bi(Uy,null):bi(qy,null)}):bi(Oy,{clsPrefix:t},{default:()=>bi(Zy,null)});o=M?M({type:"fast-forward",node:r,active:this.fastForwardActive||this.showFastForwardMenu}):r,i=this.handleFastForwardMouseenter,a=this.handleFastForwardMouseleave;break;case"fast-backward":const l=this.fastBackwardActive?bi(Oy,{clsPrefix:t},{default:()=>this.rtlEnabled?bi(qy,null):bi(Uy,null)}):bi(Oy,{clsPrefix:t},{default:()=>bi(Zy,null)});o=M?M({type:"fast-backward",node:l,active:this.fastBackwardActive||this.showFastBackwardMenu}):l,i=this.handleFastBackwardMouseenter,a=this.handleFastBackwardMouseleave}const s=bi("div",{key:r,class:[`${t}-pagination-item`,e.active&&`${t}-pagination-item--active`,"page"!==l&&("fast-backward"===l&&this.showFastBackwardMenu||"fast-forward"===l&&this.showFastForwardMenu)&&`${t}-pagination-item--hover`,n&&`${t}-pagination-item--disabled`,"page"===l&&`${t}-pagination-item--clickable`],onClick:()=>{E(e)},onMouseenter:i,onMouseleave:a},o);if("page"!==l||e.mayBeFastBackward||e.mayBeFastForward){const t="page"===e.type?e.mayBeFastBackward?"fast-backward":"fast-forward":e.type;return"page"===e.type||e.options?bi(kS,{to:this.to,key:t,disabled:n,trigger:"hover",virtualScroll:!0,style:{width:"60px"},theme:c.peers.Popselect,themeOverrides:c.peerOverrides.Popselect,builtinThemeOverrides:{peers:{InternalSelectMenu:{height:"calc(var(--n-option-height) * 4.6)"}}},nodeProps:()=>({style:{justifyContent:"center"}}),show:"page"!==l&&("fast-backward"===l?this.showFastBackwardMenu:this.showFastForwardMenu),onUpdateShow:e=>{"page"!==l&&(e?"fast-backward"===l?this.showFastBackwardMenu=e:this.showFastForwardMenu=e:(this.showFastBackwardMenu=!1,this.showFastForwardMenu=!1))},options:"page"!==e.type&&e.options?e.options:[],onUpdateValue:this.handleMenuSelect,scrollable:!0,showCheckmark:!1},{default:()=>s}):s}return s})),bi("div",{class:[`${t}-pagination-item`,!z&&`${t}-pagination-item--button`,{[`${t}-pagination-item--disabled`]:o<1||o>=i||n}],onClick:R},z?z({page:o,pageSize:f,pageCount:i,itemCount:this.mergedItemCount,startIndex:this.startIndex,endIndex:this.endIndex}):bi(Oy,{clsPrefix:t},{default:()=>this.rtlEnabled?bi(zy,null):bi(Vy,null)})));case"size-picker":return!b&&l?bi(RS,Object.assign({consistentMenuWidth:!1,placeholder:"",showCheckmark:!1,to:this.to},this.selectProps,{size:p,options:h,value:f,disabled:n,theme:c.peers.Select,themeOverrides:c.peerOverrides.Select,onUpdateValue:k})):null;case"quick-jumper":return!b&&s?bi("div",{class:`${t}-pagination-quick-jumper`},C?C():hg(this.$slots.goto,(()=>[d.goto])),bi(MC,{value:g,onUpdateValue:S,size:u,placeholder:"",disabled:n,theme:c.peers.Input,themeOverrides:c.peerOverrides.Input,onChange:O})):null;default:return null}})),T?bi("div",{class:`${t}-pagination-suffix`},T({page:o,pageSize:f,pageCount:i,startIndex:this.startIndex,endIndex:this.endIndex,itemCount:this.mergedItemCount})):null)}}),NS={padding:"4px 0",optionIconSizeSmall:"14px",optionIconSizeMedium:"16px",optionIconSizeLarge:"16px",optionIconSizeHuge:"18px",optionSuffixWidthSmall:"14px",optionSuffixWidthMedium:"14px",optionSuffixWidthLarge:"16px",optionSuffixWidthHuge:"16px",optionIconSuffixWidthSmall:"32px",optionIconSuffixWidthMedium:"32px",optionIconSuffixWidthLarge:"36px",optionIconSuffixWidthHuge:"36px",optionPrefixWidthSmall:"14px",optionPrefixWidthMedium:"14px",optionPrefixWidthLarge:"16px",optionPrefixWidthHuge:"16px",optionIconPrefixWidthSmall:"36px",optionIconPrefixWidthMedium:"36px",optionIconPrefixWidthLarge:"40px",optionIconPrefixWidthHuge:"40px"};const BS={name:"Dropdown",common:nw,peers:{Popover:qw},self:function(e){const{primaryColor:t,textColor2:n,dividerColor:r,hoverColor:o,popoverColor:i,invertedColor:a,borderRadius:l,fontSizeSmall:s,fontSizeMedium:c,fontSizeLarge:d,fontSizeHuge:u,heightSmall:p,heightMedium:f,heightLarge:h,heightHuge:g,textColor3:b,opacityDisabled:v}=e;return Object.assign(Object.assign({},NS),{optionHeightSmall:p,optionHeightMedium:f,optionHeightLarge:h,optionHeightHuge:g,borderRadius:l,fontSizeSmall:s,fontSizeMedium:c,fontSizeLarge:d,fontSizeHuge:u,optionTextColor:n,optionTextColorHover:n,optionTextColorActive:t,optionTextColorChildActive:t,color:i,dividerColor:r,suffixColor:n,prefixColor:n,optionColorHover:o,optionColorActive:ep(t,{alpha:.1}),groupHeaderTextColor:b,optionTextColorInverted:"#BBB",optionTextColorHoverInverted:"#FFF",optionTextColorActiveInverted:"#FFF",optionTextColorChildActiveInverted:"#FFF",colorInverted:a,dividerColorInverted:"#BBB",suffixColorInverted:"#BBB",prefixColorInverted:"#BBB",optionColorHoverInverted:t,optionColorActiveInverted:t,groupHeaderTextColorInverted:"#AAA",optionOpacityDisabled:v})}},IS={padding:"8px 14px"};const LS={name:"Tooltip",common:nw,peers:{Popover:qw},self:function(e){const{borderRadius:t,boxShadow2:n,baseColor:r}=e;return Object.assign(Object.assign({},IS),{borderRadius:t,boxShadow:n,color:Ju(r,"rgba(0, 0, 0, .85)"),textColor:r})}},jS={name:"Ellipsis",common:nw,peers:{Tooltip:LS}},DS={radioSizeSmall:"14px",radioSizeMedium:"16px",radioSizeLarge:"18px",labelPadding:"0 8px",labelFontWeight:"400"};const HS={name:"Radio",common:nw,self:function(e){const{borderColor:t,primaryColor:n,baseColor:r,textColorDisabled:o,inputColorDisabled:i,textColor2:a,opacityDisabled:l,borderRadius:s,fontSizeSmall:c,fontSizeMedium:d,fontSizeLarge:u,heightSmall:p,heightMedium:f,heightLarge:h,lineHeight:g}=e;return Object.assign(Object.assign({},DS),{labelLineHeight:g,buttonHeightSmall:p,buttonHeightMedium:f,buttonHeightLarge:h,fontSizeSmall:c,fontSizeMedium:d,fontSizeLarge:u,boxShadow:`inset 0 0 0 1px ${t}`,boxShadowActive:`inset 0 0 0 1px ${n}`,boxShadowFocus:`inset 0 0 0 1px ${n}, 0 0 0 2px ${ep(n,{alpha:.2})}`,boxShadowHover:`inset 0 0 0 1px ${n}`,boxShadowDisabled:`inset 0 0 0 1px ${t}`,color:r,colorDisabled:i,colorActive:"#0000",textColor:a,textColorDisabled:o,dotColorActive:n,dotColorDisabled:t,buttonBorderColor:t,buttonBorderColorActive:n,buttonBorderColorHover:t,buttonColor:r,buttonColorActive:r,buttonTextColor:a,buttonTextColorActive:n,buttonTextColorHover:n,opacityDisabled:l,buttonBoxShadowFocus:`inset 0 0 0 1px ${n}, 0 0 0 2px ${ep(n,{alpha:.3})}`,buttonBoxShadowHover:"inset 0 0 0 1px #0000",buttonBoxShadow:"inset 0 0 0 1px #0000",buttonBorderRadius:s})}},WS={thPaddingSmall:"8px",thPaddingMedium:"12px",thPaddingLarge:"12px",tdPaddingSmall:"8px",tdPaddingMedium:"12px",tdPaddingLarge:"12px",sorterSize:"15px",resizableContainerSize:"8px",resizableSize:"2px",filterSize:"15px",paginationMargin:"12px 0 0 0",emptyPadding:"48px 0",actionPadding:"8px 12px",actionButtonMargin:"0 8px 0 0"};const US={name:"DataTable",common:nw,peers:{Button:WC,Checkbox:iS,Radio:HS,Pagination:AS,Scrollbar:ow,Empty:$w,Popover:qw,Ellipsis:jS,Dropdown:BS},self:function(e){const{cardColor:t,modalColor:n,popoverColor:r,textColor2:o,textColor1:i,tableHeaderColor:a,tableColorHover:l,iconColor:s,primaryColor:c,fontWeightStrong:d,borderRadius:u,lineHeight:p,fontSizeSmall:f,fontSizeMedium:h,fontSizeLarge:g,dividerColor:b,heightSmall:v,opacityDisabled:m,tableColorStriped:y}=e;return Object.assign(Object.assign({},WS),{actionDividerColor:b,lineHeight:p,borderRadius:u,fontSizeSmall:f,fontSizeMedium:h,fontSizeLarge:g,borderColor:Ju(t,b),tdColorHover:Ju(t,l),tdColorSorting:Ju(t,l),tdColorStriped:Ju(t,y),thColor:Ju(t,a),thColorHover:Ju(Ju(t,a),l),thColorSorting:Ju(Ju(t,a),l),tdColor:t,tdTextColor:o,thTextColor:i,thFontWeight:d,thButtonColorHover:l,thIconColor:s,thIconColorActive:c,borderColorModal:Ju(n,b),tdColorHoverModal:Ju(n,l),tdColorSortingModal:Ju(n,l),tdColorStripedModal:Ju(n,y),thColorModal:Ju(n,a),thColorHoverModal:Ju(Ju(n,a),l),thColorSortingModal:Ju(Ju(n,a),l),tdColorModal:n,borderColorPopover:Ju(r,b),tdColorHoverPopover:Ju(r,l),tdColorSortingPopover:Ju(r,l),tdColorStripedPopover:Ju(r,y),thColorPopover:Ju(r,a),thColorHoverPopover:Ju(Ju(r,a),l),thColorSortingPopover:Ju(Ju(r,a),l),tdColorPopover:r,boxShadowBefore:"inset -12px 0 8px -12px rgba(0, 0, 0, .18)",boxShadowAfter:"inset 12px 0 8px -12px rgba(0, 0, 0, .18)",loadingColor:c,loadingSize:v,opacityLoading:m})}},qS=Object.assign(Object.assign({},Ey.props),{onUnstableColumnResize:Function,pagination:{type:[Object,Boolean],default:!1},paginateSinglePage:{type:Boolean,default:!0},minHeight:[Number,String],maxHeight:[Number,String],columns:{type:Array,default:()=>[]},rowClassName:[String,Function],rowProps:Function,rowKey:Function,summary:[Function],data:{type:Array,default:()=>[]},loading:Boolean,bordered:{type:Boolean,default:void 0},bottomBordered:{type:Boolean,default:void 0},striped:Boolean,scrollX:[Number,String],defaultCheckedRowKeys:{type:Array,default:()=>[]},checkedRowKeys:Array,singleLine:{type:Boolean,default:!0},singleColumn:Boolean,size:{type:String,default:"medium"},remote:Boolean,defaultExpandedRowKeys:{type:Array,default:[]},defaultExpandAll:Boolean,expandedRowKeys:Array,stickyExpandedRows:Boolean,virtualScroll:Boolean,virtualScrollX:Boolean,virtualScrollHeader:Boolean,headerHeight:{type:Number,default:28},heightForRow:Function,minRowHeight:{type:Number,default:28},tableLayout:{type:String,default:"auto"},allowCheckingNotLoaded:Boolean,cascade:{type:Boolean,default:!0},childrenKey:{type:String,default:"children"},indent:{type:Number,default:16},flexHeight:Boolean,summaryPlacement:{type:String,default:"bottom"},paginationBehaviorOnFilter:{type:String,default:"current"},filterIconPopoverProps:Object,scrollbarProps:Object,renderCell:Function,renderExpandIcon:Function,spinProps:{type:Object,default:{}},getCsvCell:Function,getCsvHeader:Function,onLoad:Function,"onUpdate:page":[Function,Array],onUpdatePage:[Function,Array],"onUpdate:pageSize":[Function,Array],onUpdatePageSize:[Function,Array],"onUpdate:sorter":[Function,Array],onUpdateSorter:[Function,Array],"onUpdate:filters":[Function,Array],onUpdateFilters:[Function,Array],"onUpdate:checkedRowKeys":[Function,Array],onUpdateCheckedRowKeys:[Function,Array],"onUpdate:expandedRowKeys":[Function,Array],onUpdateExpandedRowKeys:[Function,Array],onScroll:Function,onPageChange:[Function,Array],onPageSizeChange:[Function,Array],onSorterChange:[Function,Array],onFiltersChange:[Function,Array],onCheckedRowKeysChange:[Function,Array]}),KS="n-data-table";function VS(e){return"selection"===e.type||"expand"===e.type?void 0===e.width?40:Ru(e.width):"children"in e?void 0:"string"==typeof e.width?Ru(e.width):e.width}function GS(e){return"selection"===e.type?"__n_selection__":"expand"===e.type?"__n_expand__":e.key}function ZS(e){return e&&"object"==typeof e?Object.assign({},e):e}function XS(e,t){if(void 0!==t)return{width:t,minWidth:t,maxWidth:t};const n=function(e){var t,n;return"selection"===e.type?Qh(null!==(t=e.width)&&void 0!==t?t:40):"expand"===e.type?Qh(null!==(n=e.width)&&void 0!==n?n:40):"children"in e?void 0:Qh(e.width)}(e),{minWidth:r,maxWidth:o}=e;return{width:n,minWidth:Qh(r)||n,maxWidth:Qh(o)}}function QS(e){return void 0!==e.filterOptionValues||void 0===e.filterOptionValue&&void 0!==e.defaultFilterOptionValues}function YS(e){return!("children"in e)&&!!e.sorter}function JS(e){return(!("children"in e)||!e.children.length)&&!!e.resizable}function ek(e){return!("children"in e)&&!(!e.filter||!e.filterOptions&&!e.renderFilterMenu)}function tk(e){return e?"descend"===e&&"ascend":"descend"}function nk(e,t){return void 0!==t.find((t=>t.columnKey===e.key&&t.order))}const rk=qn({name:"DataTableBodyCheckbox",props:{rowKey:{type:[String,Number],required:!0},disabled:{type:Boolean,required:!0},onUpdateChecked:{type:Function,required:!0}},setup(e){const{mergedCheckedRowKeySetRef:t,mergedInderminateRowKeySetRef:n}=Wr(KS);return()=>{const{rowKey:r}=e;return bi(cS,{privateInsideTable:!0,disabled:e.disabled,indeterminate:n.value.has(r),checked:t.value.has(r),onUpdateChecked:e.onUpdateChecked})}}}),ok=uu("radio","\n line-height: var(--n-label-line-height);\n outline: none;\n position: relative;\n user-select: none;\n -webkit-user-select: none;\n display: inline-flex;\n align-items: flex-start;\n flex-wrap: nowrap;\n font-size: var(--n-font-size);\n word-break: break-word;\n",[fu("checked",[pu("dot","\n background-color: var(--n-color-active);\n ")]),pu("dot-wrapper","\n position: relative;\n flex-shrink: 0;\n flex-grow: 0;\n width: var(--n-radio-size);\n "),uu("radio-input","\n position: absolute;\n border: 0;\n border-radius: inherit;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n opacity: 0;\n z-index: 1;\n cursor: pointer;\n "),pu("dot","\n position: absolute;\n top: 50%;\n left: 0;\n transform: translateY(-50%);\n height: var(--n-radio-size);\n width: var(--n-radio-size);\n background: var(--n-color);\n box-shadow: var(--n-box-shadow);\n border-radius: 50%;\n transition:\n background-color .3s var(--n-bezier),\n box-shadow .3s var(--n-bezier);\n ",[cu("&::before",'\n content: "";\n opacity: 0;\n position: absolute;\n left: 4px;\n top: 4px;\n height: calc(100% - 8px);\n width: calc(100% - 8px);\n border-radius: 50%;\n transform: scale(.8);\n background: var(--n-dot-color-active);\n transition: \n opacity .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n transform .3s var(--n-bezier);\n '),fu("checked",{boxShadow:"var(--n-box-shadow-active)"},[cu("&::before","\n opacity: 1;\n transform: scale(1);\n ")])]),pu("label","\n color: var(--n-text-color);\n padding: var(--n-label-padding);\n font-weight: var(--n-label-font-weight);\n display: inline-block;\n transition: color .3s var(--n-bezier);\n "),hu("disabled","\n cursor: pointer;\n ",[cu("&:hover",[pu("dot",{boxShadow:"var(--n-box-shadow-hover)"})]),fu("focus",[cu("&:not(:active)",[pu("dot",{boxShadow:"var(--n-box-shadow-focus)"})])])]),fu("disabled","\n cursor: not-allowed;\n ",[pu("dot",{boxShadow:"var(--n-box-shadow-disabled)",backgroundColor:"var(--n-color-disabled)"},[cu("&::before",{backgroundColor:"var(--n-dot-color-disabled)"}),fu("checked","\n opacity: 1;\n ")]),pu("label",{color:"var(--n-text-color-disabled)"}),uu("radio-input","\n cursor: not-allowed;\n ")])]),ik={name:String,value:{type:[String,Number,Boolean],default:"on"},checked:{type:Boolean,default:void 0},defaultChecked:Boolean,disabled:{type:Boolean,default:void 0},label:String,size:String,onUpdateChecked:[Function,Array],"onUpdate:checked":[Function,Array],checkedValue:{type:Boolean,default:void 0}},ak="n-radio-group";function lk(e){const t=Wr(ak,null),n=_g(e,{mergedSize(n){const{size:r}=e;if(void 0!==r)return r;if(t){const{mergedSizeRef:{value:e}}=t;if(void 0!==e)return e}return n?n.mergedSize.value:"medium"},mergedDisabled:n=>!!e.disabled||(!!(null==t?void 0:t.disabledRef.value)||!!(null==n?void 0:n.disabled.value))}),{mergedSizeRef:r,mergedDisabledRef:o}=n,i=$t(null),a=$t(null),l=$t(e.defaultChecked),s=$p(Dt(e,"checked"),l),c=hp((()=>t?t.valueRef.value===e.value:s.value)),d=hp((()=>{const{name:n}=e;return void 0!==n?n:t?t.nameRef.value:void 0})),u=$t(!1);function p(){o.value||c.value||function(){if(t){const{doUpdateValue:n}=t,{value:r}=e;og(n,r)}else{const{onUpdateChecked:t,"onUpdate:checked":r}=e,{nTriggerFormInput:o,nTriggerFormChange:i}=n;t&&og(t,!0),r&&og(r,!0),o(),i(),l.value=!0}}()}return{mergedClsPrefix:t?t.mergedClsPrefixRef:wg(e).mergedClsPrefixRef,inputRef:i,labelRef:a,mergedName:d,mergedDisabled:o,renderSafeChecked:c,focus:u,mergedSize:r,handleRadioInputChange:function(){p(),i.value&&(i.value.checked=c.value)},handleRadioInputBlur:function(){u.value=!1},handleRadioInputFocus:function(){u.value=!0}}}const sk=qn({name:"Radio",props:Object.assign(Object.assign({},Ey.props),ik),setup(e){const t=lk(e),n=Ey("Radio","-radio",ok,HS,e,t.mergedClsPrefix),r=gi((()=>{const{mergedSize:{value:e}}=t,{common:{cubicBezierEaseInOut:r},self:{boxShadow:o,boxShadowActive:i,boxShadowDisabled:a,boxShadowFocus:l,boxShadowHover:s,color:c,colorDisabled:d,colorActive:u,textColor:p,textColorDisabled:f,dotColorActive:h,dotColorDisabled:g,labelPadding:b,labelLineHeight:v,labelFontWeight:m,[yu("fontSize",e)]:y,[yu("radioSize",e)]:x}}=n.value;return{"--n-bezier":r,"--n-label-line-height":v,"--n-label-font-weight":m,"--n-box-shadow":o,"--n-box-shadow-active":i,"--n-box-shadow-disabled":a,"--n-box-shadow-focus":l,"--n-box-shadow-hover":s,"--n-color":c,"--n-color-active":u,"--n-color-disabled":d,"--n-dot-color-active":h,"--n-dot-color-disabled":g,"--n-font-size":y,"--n-radio-size":x,"--n-text-color":p,"--n-text-color-disabled":f,"--n-label-padding":b}})),{inlineThemeDisabled:o,mergedClsPrefixRef:i,mergedRtlRef:a}=wg(e),l=yy("Radio",a,i),s=o?Sg("radio",gi((()=>t.mergedSize.value[0])),r,e):void 0;return Object.assign(t,{rtlEnabled:l,cssVars:o?void 0:r,themeClass:null==s?void 0:s.themeClass,onRender:null==s?void 0:s.onRender})},render(){const{$slots:e,mergedClsPrefix:t,onRender:n,label:r}=this;return null==n||n(),bi("label",{class:[`${t}-radio`,this.themeClass,this.rtlEnabled&&`${t}-radio--rtl`,this.mergedDisabled&&`${t}-radio--disabled`,this.renderSafeChecked&&`${t}-radio--checked`,this.focus&&`${t}-radio--focus`],style:this.cssVars},bi("input",{ref:"inputRef",type:"radio",class:`${t}-radio-input`,value:this.value,name:this.mergedName,checked:this.renderSafeChecked,disabled:this.mergedDisabled,onChange:this.handleRadioInputChange,onFocus:this.handleRadioInputFocus,onBlur:this.handleRadioInputBlur}),bi("div",{class:`${t}-radio__dot-wrapper`}," ",bi("div",{class:[`${t}-radio__dot`,this.renderSafeChecked&&`${t}-radio__dot--checked`]})),bg(e.default,(e=>e||r?bi("div",{ref:"labelRef",class:`${t}-radio__label`},e||r):null)))}}),ck=uu("radio-group","\n display: inline-block;\n font-size: var(--n-font-size);\n",[pu("splitor","\n display: inline-block;\n vertical-align: bottom;\n width: 1px;\n transition:\n background-color .3s var(--n-bezier),\n opacity .3s var(--n-bezier);\n background: var(--n-button-border-color);\n ",[fu("checked",{backgroundColor:"var(--n-button-border-color-active)"}),fu("disabled",{opacity:"var(--n-opacity-disabled)"})]),fu("button-group","\n white-space: nowrap;\n height: var(--n-height);\n line-height: var(--n-height);\n ",[uu("radio-button",{height:"var(--n-height)",lineHeight:"var(--n-height)"}),pu("splitor",{height:"var(--n-height)"})]),uu("radio-button","\n vertical-align: bottom;\n outline: none;\n position: relative;\n user-select: none;\n -webkit-user-select: none;\n display: inline-block;\n box-sizing: border-box;\n padding-left: 14px;\n padding-right: 14px;\n white-space: nowrap;\n transition:\n background-color .3s var(--n-bezier),\n opacity .3s var(--n-bezier),\n border-color .3s var(--n-bezier),\n color .3s var(--n-bezier);\n background: var(--n-button-color);\n color: var(--n-button-text-color);\n border-top: 1px solid var(--n-button-border-color);\n border-bottom: 1px solid var(--n-button-border-color);\n ",[uu("radio-input","\n pointer-events: none;\n position: absolute;\n border: 0;\n border-radius: inherit;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n opacity: 0;\n z-index: 1;\n "),pu("state-border","\n z-index: 1;\n pointer-events: none;\n position: absolute;\n box-shadow: var(--n-button-box-shadow);\n transition: box-shadow .3s var(--n-bezier);\n left: -1px;\n bottom: -1px;\n right: -1px;\n top: -1px;\n "),cu("&:first-child","\n border-top-left-radius: var(--n-button-border-radius);\n border-bottom-left-radius: var(--n-button-border-radius);\n border-left: 1px solid var(--n-button-border-color);\n ",[pu("state-border","\n border-top-left-radius: var(--n-button-border-radius);\n border-bottom-left-radius: var(--n-button-border-radius);\n ")]),cu("&:last-child","\n border-top-right-radius: var(--n-button-border-radius);\n border-bottom-right-radius: var(--n-button-border-radius);\n border-right: 1px solid var(--n-button-border-color);\n ",[pu("state-border","\n border-top-right-radius: var(--n-button-border-radius);\n border-bottom-right-radius: var(--n-button-border-radius);\n ")]),hu("disabled","\n cursor: pointer;\n ",[cu("&:hover",[pu("state-border","\n transition: box-shadow .3s var(--n-bezier);\n box-shadow: var(--n-button-box-shadow-hover);\n "),hu("checked",{color:"var(--n-button-text-color-hover)"})]),fu("focus",[cu("&:not(:active)",[pu("state-border",{boxShadow:"var(--n-button-box-shadow-focus)"})])])]),fu("checked","\n background: var(--n-button-color-active);\n color: var(--n-button-text-color-active);\n border-color: var(--n-button-border-color-active);\n "),fu("disabled","\n cursor: not-allowed;\n opacity: var(--n-opacity-disabled);\n ")])]);const dk=qn({name:"RadioGroup",props:Object.assign(Object.assign({},Ey.props),{name:String,value:[String,Number,Boolean],defaultValue:{type:[String,Number,Boolean],default:null},size:String,disabled:{type:Boolean,default:void 0},"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array]}),setup(e){const t=$t(null),{mergedSizeRef:n,mergedDisabledRef:r,nTriggerFormChange:o,nTriggerFormInput:i,nTriggerFormBlur:a,nTriggerFormFocus:l}=_g(e),{mergedClsPrefixRef:s,inlineThemeDisabled:c,mergedRtlRef:d}=wg(e),u=Ey("Radio","-radio-group",ck,HS,e,s),p=$t(e.defaultValue),f=$p(Dt(e,"value"),p);Hr(ak,{mergedClsPrefixRef:s,nameRef:Dt(e,"name"),valueRef:f,disabledRef:r,mergedSizeRef:n,doUpdateValue:function(t){const{onUpdateValue:n,"onUpdate:value":r}=e;n&&og(n,t),r&&og(r,t),p.value=t,o(),i()}});const h=yy("Radio",d,s),g=gi((()=>{const{value:e}=n,{common:{cubicBezierEaseInOut:t},self:{buttonBorderColor:r,buttonBorderColorActive:o,buttonBorderRadius:i,buttonBoxShadow:a,buttonBoxShadowFocus:l,buttonBoxShadowHover:s,buttonColor:c,buttonColorActive:d,buttonTextColor:p,buttonTextColorActive:f,buttonTextColorHover:h,opacityDisabled:g,[yu("buttonHeight",e)]:b,[yu("fontSize",e)]:v}}=u.value;return{"--n-font-size":v,"--n-bezier":t,"--n-button-border-color":r,"--n-button-border-color-active":o,"--n-button-border-radius":i,"--n-button-box-shadow":a,"--n-button-box-shadow-focus":l,"--n-button-box-shadow-hover":s,"--n-button-color":c,"--n-button-color-active":d,"--n-button-text-color":p,"--n-button-text-color-hover":h,"--n-button-text-color-active":f,"--n-height":b,"--n-opacity-disabled":g}})),b=c?Sg("radio-group",gi((()=>n.value[0])),g,e):void 0;return{selfElRef:t,rtlEnabled:h,mergedClsPrefix:s,mergedValue:f,handleFocusout:function(e){const{value:n}=t;n&&(n.contains(e.relatedTarget)||a())},handleFocusin:function(e){const{value:n}=t;n&&(n.contains(e.relatedTarget)||l())},cssVars:c?void 0:g,themeClass:null==b?void 0:b.themeClass,onRender:null==b?void 0:b.onRender}},render(){var e;const{mergedValue:t,mergedClsPrefix:n,handleFocusin:r,handleFocusout:o}=this,{children:i,isButtonGroup:a}=function(e,t,n){var r;const o=[];let i=!1;for(let a=0;a{const{rowKey:r}=e;return bi(sk,{name:n,disabled:e.disabled,checked:t.value.has(r),onUpdateChecked:e.onUpdateChecked})}}}),pk=qn({name:"Tooltip",props:Object.assign(Object.assign({},oC),Ey.props),slots:Object,__popover__:!0,setup(e){const{mergedClsPrefixRef:t}=wg(e),n=Ey("Tooltip","-tooltip",void 0,LS,e,t),r=$t(null),o={syncPosition(){r.value.syncPosition()},setShow(e){r.value.setShow(e)}};return Object.assign(Object.assign({},o),{popoverRef:r,mergedTheme:n,popoverThemeOverrides:gi((()=>n.value.self))})},render(){const{mergedTheme:e,internalExtraClass:t}=this;return bi(iC,Object.assign(Object.assign({},this.$props),{theme:e.peers.Popover,themeOverrides:e.peerOverrides.Popover,builtinThemeOverrides:this.popoverThemeOverrides,internalExtraClass:t.concat("tooltip"),ref:"popoverRef"}),this.$slots)}}),fk=uu("ellipsis",{overflow:"hidden"},[hu("line-clamp","\n white-space: nowrap;\n display: inline-block;\n vertical-align: bottom;\n max-width: 100%;\n "),fu("line-clamp","\n display: -webkit-inline-box;\n -webkit-box-orient: vertical;\n "),fu("cursor-pointer","\n cursor: pointer;\n ")]);function hk(e){return`${e}-ellipsis--line-clamp`}function gk(e,t){return`${e}-ellipsis--cursor-${t}`}const bk=Object.assign(Object.assign({},Ey.props),{expandTrigger:String,lineClamp:[Number,String],tooltip:{type:[Boolean,Object],default:!0}}),vk=qn({name:"Ellipsis",inheritAttrs:!1,props:bk,slots:Object,setup(e,{slots:t,attrs:n}){const r=Cg(),o=Ey("Ellipsis","-ellipsis",fk,jS,e,r),i=$t(null),a=$t(null),l=$t(null),s=$t(!1),c=gi((()=>{const{lineClamp:t}=e,{value:n}=s;return void 0!==t?{textOverflow:"","-webkit-line-clamp":n?"":t}:{textOverflow:n?"":"ellipsis","-webkit-line-clamp":""}}));function d(){let t=!1;const{value:n}=s;if(n)return!0;const{value:o}=i;if(o){const{lineClamp:n}=e;if(function(t){if(!t)return;const n=c.value,o=hk(r.value);void 0!==e.lineClamp?p(t,o,"add"):p(t,o,"remove");for(const e in n)t.style[e]!==n[e]&&(t.style[e]=n[e])}(o),void 0!==n)t=o.scrollHeight<=o.offsetHeight;else{const{value:e}=a;e&&(t=e.getBoundingClientRect().width<=o.getBoundingClientRect().width)}!function(t,n){const o=gk(r.value,"pointer");"click"!==e.expandTrigger||n?p(t,o,"remove"):p(t,o,"add")}(o,t)}return t}const u=gi((()=>"click"===e.expandTrigger?()=>{var e;const{value:t}=s;t&&(null===(e=l.value)||void 0===e||e.setShow(!1)),s.value=!t}:void 0));Qn((()=>{var t;e.tooltip&&(null===(t=l.value)||void 0===t||t.setShow(!1))}));function p(e,t,n){"add"===n?e.classList.contains(t)||e.classList.add(t):e.classList.contains(t)&&e.classList.remove(t)}return{mergedTheme:o,triggerRef:i,triggerInnerRef:a,tooltipRef:l,handleClick:u,renderTrigger:()=>bi("span",Object.assign({},Yo(n,{class:[`${r.value}-ellipsis`,void 0!==e.lineClamp?hk(r.value):void 0,"click"===e.expandTrigger?gk(r.value,"pointer"):void 0],style:c.value}),{ref:"triggerRef",onClick:u.value,onMouseenter:"click"===e.expandTrigger?d:void 0}),e.lineClamp?t:bi("span",{ref:"triggerInnerRef"},t)),getTooltipDisabled:d}},render(){var e;const{tooltip:t,renderTrigger:n,$slots:r}=this;if(t){const{mergedTheme:o}=this;return bi(pk,Object.assign({ref:"tooltipRef",placement:"top"},t,{getDisabled:this.getTooltipDisabled,theme:o.peers.Tooltip,themeOverrides:o.peerOverrides.Tooltip}),{trigger:n,default:null!==(e=r.tooltip)&&void 0!==e?e:r.default})}return n()}}),mk=qn({name:"PerformantEllipsis",props:bk,inheritAttrs:!1,setup(e,{attrs:t,slots:n}){const r=$t(!1),o=Cg();_y("-ellipsis",fk,o);return{mouseEntered:r,renderTrigger:()=>{const{lineClamp:i}=e,a=o.value;return bi("span",Object.assign({},Yo(t,{class:[`${a}-ellipsis`,void 0!==i?hk(a):void 0,"click"===e.expandTrigger?gk(a,"pointer"):void 0],style:void 0===i?{textOverflow:"ellipsis"}:{"-webkit-line-clamp":i}}),{onMouseenter:()=>{r.value=!0}}),i?n:bi("span",null,n))}}},render(){return this.mouseEntered?bi(vk,Yo({},this.$attrs,this.$props),this.$slots):this.renderTrigger()}}),yk=qn({name:"DataTableCell",props:{clsPrefix:{type:String,required:!0},row:{type:Object,required:!0},index:{type:Number,required:!0},column:{type:Object,required:!0},isSummary:Boolean,mergedTheme:{type:Object,required:!0},renderCell:Function},render(){var e;const{isSummary:t,column:n,row:r,renderCell:o}=this;let i;const{render:a,key:l,ellipsis:s}=n;if(i=a&&!t?a(r,this.index):t?null===(e=r[l])||void 0===e?void 0:e.value:o?o(Lv(r,l),r,n):Lv(r,l),s){if("object"==typeof s){const{mergedTheme:e}=this;return"performant-ellipsis"===n.ellipsisComponent?bi(mk,Object.assign({},s,{theme:e.peers.Ellipsis,themeOverrides:e.peerOverrides.Ellipsis}),{default:()=>i}):bi(vk,Object.assign({},s,{theme:e.peers.Ellipsis,themeOverrides:e.peerOverrides.Ellipsis}),{default:()=>i})}return bi("span",{class:`${this.clsPrefix}-data-table-td__ellipsis`},i)}return i}}),xk=qn({name:"DataTableExpandTrigger",props:{clsPrefix:{type:String,required:!0},expanded:Boolean,loading:Boolean,onClick:{type:Function,required:!0},renderExpandIcon:{type:Function},rowData:{type:Object,required:!0}},render(){const{clsPrefix:e}=this;return bi("div",{class:[`${e}-data-table-expand-trigger`,this.expanded&&`${e}-data-table-expand-trigger--expanded`],onClick:this.onClick,onMousedown:e=>{e.preventDefault()}},bi(Ay,null,{default:()=>this.loading?bi(cx,{key:"loading",clsPrefix:this.clsPrefix,radius:85,strokeWidth:15,scale:.88}):this.renderExpandIcon?this.renderExpandIcon({expanded:this.expanded,rowData:this.rowData}):bi(Oy,{clsPrefix:e,key:"base-icon"},{default:()=>bi(By,null)})}))}}),wk=qn({name:"DataTableFilterMenu",props:{column:{type:Object,required:!0},radioGroupName:{type:String,required:!0},multiple:{type:Boolean,required:!0},value:{type:[Array,String,Number],default:null},options:{type:Array,required:!0},onConfirm:{type:Function,required:!0},onClear:{type:Function,required:!0},onChange:{type:Function,required:!0}},setup(e){const{mergedClsPrefixRef:t,mergedRtlRef:n}=wg(e),r=yy("DataTable",n,t),{mergedClsPrefixRef:o,mergedThemeRef:i,localeRef:a}=Wr(KS),l=$t(e.value);function s(t){e.onChange(t)}return{mergedClsPrefix:o,rtlEnabled:r,mergedTheme:i,locale:a,checkboxGroupValue:gi((()=>{const{value:e}=l;return Array.isArray(e)?e:null})),radioGroupValue:gi((()=>{const{value:t}=l;return QS(e.column)?Array.isArray(t)&&t.length&&t[0]||null:Array.isArray(t)?null:t})),handleChange:function(t){e.multiple&&Array.isArray(t)?l.value=t:QS(e.column)&&!Array.isArray(t)?l.value=[t]:l.value=t},handleConfirmClick:function(){s(l.value),e.onConfirm()},handleClearClick:function(){e.multiple||QS(e.column)?s([]):s(null),e.onClear()}}},render(){const{mergedTheme:e,locale:t,mergedClsPrefix:n}=this;return bi("div",{class:[`${n}-data-table-filter-menu`,this.rtlEnabled&&`${n}-data-table-filter-menu--rtl`]},bi(aw,null,{default:()=>{const{checkboxGroupValue:t,handleChange:r}=this;return this.multiple?bi(lS,{value:t,class:`${n}-data-table-filter-menu__group`,onUpdateValue:r},{default:()=>this.options.map((t=>bi(cS,{key:t.value,theme:e.peers.Checkbox,themeOverrides:e.peerOverrides.Checkbox,value:t.value},{default:()=>t.label})))}):bi(dk,{name:this.radioGroupName,class:`${n}-data-table-filter-menu__group`,value:this.radioGroupValue,onUpdateValue:this.handleChange},{default:()=>this.options.map((t=>bi(sk,{key:t.value,value:t.value,theme:e.peers.Radio,themeOverrides:e.peerOverrides.Radio},{default:()=>t.label})))})}}),bi("div",{class:`${n}-data-table-filter-menu__action`},bi(qC,{size:"tiny",theme:e.peers.Button,themeOverrides:e.peerOverrides.Button,onClick:this.handleClearClick},{default:()=>t.clear}),bi(qC,{theme:e.peers.Button,themeOverrides:e.peerOverrides.Button,type:"primary",size:"tiny",onClick:this.handleConfirmClick},{default:()=>t.confirm})))}}),Ck=qn({name:"DataTableRenderFilter",props:{render:{type:Function,required:!0},active:{type:Boolean,default:!1},show:{type:Boolean,default:!1}},render(){const{render:e,active:t,show:n}=this;return e({active:t,show:n})}});const Sk=qn({name:"DataTableFilterButton",props:{column:{type:Object,required:!0},options:{type:Array,default:()=>[]}},setup(e){const{mergedComponentPropsRef:t}=wg(),{mergedThemeRef:n,mergedClsPrefixRef:r,mergedFilterStateRef:o,filterMenuCssVarsRef:i,paginationBehaviorOnFilterRef:a,doUpdatePage:l,doUpdateFilters:s,filterIconPopoverPropsRef:c}=Wr(KS),d=$t(!1),u=o,p=gi((()=>!1!==e.column.filterMultiple)),f=gi((()=>{const t=u.value[e.column.key];if(void 0===t){const{value:e}=p;return e?[]:null}return t})),h=gi((()=>{const{value:e}=f;return Array.isArray(e)?e.length>0:null!==e})),g=gi((()=>{var n,r;return(null===(r=null===(n=null==t?void 0:t.value)||void 0===n?void 0:n.DataTable)||void 0===r?void 0:r.renderFilter)||e.column.renderFilter}));return{mergedTheme:n,mergedClsPrefix:r,active:h,showPopover:d,mergedRenderFilter:g,filterIconPopoverProps:c,filterMultiple:p,mergedFilterValue:f,filterMenuCssVars:i,handleFilterChange:function(t){const n=function(e,t,n){const r=Object.assign({},e);return r[t]=n,r}(u.value,e.column.key,t);s(n,e.column),"first"===a.value&&l(1)},handleFilterMenuConfirm:function(){d.value=!1},handleFilterMenuCancel:function(){d.value=!1}}},render(){const{mergedTheme:e,mergedClsPrefix:t,handleFilterMenuCancel:n,filterIconPopoverProps:r}=this;return bi(iC,Object.assign({show:this.showPopover,onUpdateShow:e=>this.showPopover=e,trigger:"click",theme:e.peers.Popover,themeOverrides:e.peerOverrides.Popover,placement:"bottom"},r,{style:{padding:0}}),{trigger:()=>{const{mergedRenderFilter:e}=this;if(e)return bi(Ck,{"data-data-table-filter":!0,render:e,active:this.active,show:this.showPopover});const{renderFilterIcon:n}=this.column;return bi("div",{"data-data-table-filter":!0,class:[`${t}-data-table-filter`,{[`${t}-data-table-filter--active`]:this.active,[`${t}-data-table-filter--show`]:this.showPopover}]},n?n({active:this.active,show:this.showPopover}):bi(Oy,{clsPrefix:t},{default:()=>bi(Ky,null)}))},default:()=>{const{renderFilterMenu:e}=this.column;return e?e({hide:n}):bi(wk,{style:this.filterMenuCssVars,radioGroupName:String(this.column.key),multiple:this.filterMultiple,value:this.mergedFilterValue,options:this.options,column:this.column,onChange:this.handleFilterChange,onClear:this.handleFilterMenuCancel,onConfirm:this.handleFilterMenuConfirm})}})}}),kk=qn({name:"ColumnResizeButton",props:{onResizeStart:Function,onResize:Function,onResizeEnd:Function},setup(e){const{mergedClsPrefixRef:t}=Wr(KS),n=$t(!1);let r=0;function o(e){return e.clientX}function i(t){var n;null===(n=e.onResize)||void 0===n||n.call(e,o(t)-r)}function a(){var t;n.value=!1,null===(t=e.onResizeEnd)||void 0===t||t.call(e),pp("mousemove",window,i),pp("mouseup",window,a)}return ar((()=>{pp("mousemove",window,i),pp("mouseup",window,a)})),{mergedClsPrefix:t,active:n,handleMousedown:function(t){var l;t.preventDefault();const s=n.value;r=o(t),n.value=!0,s||(up("mousemove",window,i),up("mouseup",window,a),null===(l=e.onResizeStart)||void 0===l||l.call(e))}}},render(){const{mergedClsPrefix:e}=this;return bi("span",{"data-data-table-resizable":!0,class:[`${e}-data-table-resize-button`,this.active&&`${e}-data-table-resize-button--active`],onMousedown:this.handleMousedown})}}),_k=qn({name:"DataTableRenderSorter",props:{render:{type:Function,required:!0},order:{type:[String,Boolean],default:!1}},render(){const{render:e,order:t}=this;return e({order:t})}}),Ek=qn({name:"SortIcon",props:{column:{type:Object,required:!0}},setup(e){const{mergedComponentPropsRef:t}=wg(),{mergedSortStateRef:n,mergedClsPrefixRef:r}=Wr(KS),o=gi((()=>n.value.find((t=>t.columnKey===e.column.key)))),i=gi((()=>void 0!==o.value)),a=gi((()=>{const{value:e}=o;return!(!e||!i.value)&&e.order})),l=gi((()=>{var n,r;return(null===(r=null===(n=null==t?void 0:t.value)||void 0===n?void 0:n.DataTable)||void 0===r?void 0:r.renderSorter)||e.column.renderSorter}));return{mergedClsPrefix:r,active:i,mergedSortOrder:a,mergedRenderSorter:l}},render(){const{mergedRenderSorter:e,mergedSortOrder:t,mergedClsPrefix:n}=this,{renderSorterIcon:r}=this.column;return e?bi(_k,{render:e,order:t}):bi("span",{class:[`${n}-data-table-sorter`,"ascend"===t&&`${n}-data-table-sorter--asc`,"descend"===t&&`${n}-data-table-sorter--desc`]},r?r({order:t}):bi(Oy,{clsPrefix:n},{default:()=>bi(Ty,null)}))}}),Rk="n-dropdown-menu",Ok="n-dropdown",Ak="n-dropdown-option",Pk=qn({name:"DropdownDivider",props:{clsPrefix:{type:String,required:!0}},render(){return bi("div",{class:`${this.clsPrefix}-dropdown-divider`})}}),Tk=qn({name:"DropdownGroupHeader",props:{clsPrefix:{type:String,required:!0},tmNode:{type:Object,required:!0}},setup(){const{showIconRef:e,hasSubmenuRef:t}=Wr(Rk),{renderLabelRef:n,labelFieldRef:r,nodePropsRef:o,renderOptionRef:i}=Wr(Ok);return{labelField:r,showIcon:e,hasSubmenu:t,renderLabel:n,nodeProps:o,renderOption:i}},render(){var e;const{clsPrefix:t,hasSubmenu:n,showIcon:r,nodeProps:o,renderLabel:i,renderOption:a}=this,{rawNode:l}=this.tmNode,s=bi("div",Object.assign({class:`${t}-dropdown-option`},null==o?void 0:o(l)),bi("div",{class:`${t}-dropdown-option-body ${t}-dropdown-option-body--group`},bi("div",{"data-dropdown-option":!0,class:[`${t}-dropdown-option-body__prefix`,r&&`${t}-dropdown-option-body__prefix--show-icon`]},pg(l.icon)),bi("div",{class:`${t}-dropdown-option-body__label`,"data-dropdown-option":!0},i?i(l):pg(null!==(e=l.title)&&void 0!==e?e:l[this.labelField])),bi("div",{class:[`${t}-dropdown-option-body__suffix`,n&&`${t}-dropdown-option-body__suffix--has-submenu`],"data-dropdown-option":!0})));return a?a({node:s,option:l}):s}});const $k={common:nw,self:function(e){const{textColorBase:t,opacity1:n,opacity2:r,opacity3:o,opacity4:i,opacity5:a}=e;return{color:t,opacity1Depth:n,opacity2Depth:r,opacity3Depth:o,opacity4Depth:i,opacity5Depth:a}}},zk=uu("icon","\n height: 1em;\n width: 1em;\n line-height: 1em;\n text-align: center;\n display: inline-block;\n position: relative;\n fill: currentColor;\n transform: translateZ(0);\n",[fu("color-transition",{transition:"color .3s var(--n-bezier)"}),fu("depth",{color:"var(--n-color)"},[cu("svg",{opacity:"var(--n-opacity)",transition:"opacity .3s var(--n-bezier)"})]),cu("svg",{height:"1em",width:"1em"})]),Mk=qn({_n_icon__:!0,name:"Icon",inheritAttrs:!1,props:Object.assign(Object.assign({},Ey.props),{depth:[String,Number],size:[Number,String],color:String,component:[Object,Function]}),setup(e){const{mergedClsPrefixRef:t,inlineThemeDisabled:n}=wg(e),r=Ey("Icon","-icon",zk,$k,e,t),o=gi((()=>{const{depth:t}=e,{common:{cubicBezierEaseInOut:n},self:o}=r.value;if(void 0!==t){const{color:e,[`opacity${t}Depth`]:r}=o;return{"--n-bezier":n,"--n-color":e,"--n-opacity":r}}return{"--n-bezier":n,"--n-color":"","--n-opacity":""}})),i=n?Sg("icon",gi((()=>`${e.depth||"d"}`)),o,e):void 0;return{mergedClsPrefix:t,mergedStyle:gi((()=>{const{size:t,color:n}=e;return{fontSize:Qh(t),color:n}})),cssVars:n?void 0:o,themeClass:null==i?void 0:i.themeClass,onRender:null==i?void 0:i.onRender}},render(){var e;const{$parent:t,depth:n,mergedClsPrefix:r,component:o,onRender:i,themeClass:a}=this;return null===(e=null==t?void 0:t.$options)||void 0===e||e._n_icon__,null==i||i(),bi("i",Yo(this.$attrs,{role:"img",class:[`${r}-icon`,a,{[`${r}-icon--depth`]:n,[`${r}-icon--color-transition`]:void 0!==n}],style:[this.cssVars,this.mergedStyle]}),o?bi(o):this.$slots)}});function Fk(e,t){return"submenu"===e.type||void 0===e.type&&void 0!==e[t]}function Nk(e){return"divider"===e.type}const Bk=qn({name:"DropdownOption",props:{clsPrefix:{type:String,required:!0},tmNode:{type:Object,required:!0},parentKey:{type:[String,Number],default:null},placement:{type:String,default:"right-start"},props:Object,scrollable:Boolean},setup(e){const t=Wr(Ok),{hoverKeyRef:n,keyboardKeyRef:r,lastToggledSubmenuKeyRef:o,pendingKeyPathRef:i,activeKeyPathRef:a,animatedRef:l,mergedShowRef:s,renderLabelRef:c,renderIconRef:d,labelFieldRef:u,childrenFieldRef:p,renderOptionRef:f,nodePropsRef:h,menuPropsRef:g}=t,b=Wr(Ak,null),v=Wr(Rk),m=Wr(Wp),y=gi((()=>e.tmNode.rawNode)),x=gi((()=>{const{value:t}=p;return Fk(e.tmNode.rawNode,t)})),w=gi((()=>{const{disabled:t}=e.tmNode;return t})),C=function(e,t,n){const r=$t(e.value);let o=null;return go(e,(e=>{null!==o&&window.clearTimeout(o),!0===e?n&&!n.value?r.value=!0:o=window.setTimeout((()=>{r.value=!0}),t):r.value=!1})),r}(gi((()=>{if(!x.value)return!1;const{key:t,disabled:a}=e.tmNode;if(a)return!1;const{value:l}=n,{value:s}=r,{value:c}=o,{value:d}=i;return null!==l?d.includes(t):null!==s?d.includes(t)&&d[d.length-1]!==t:null!==c&&d.includes(t)})),300,gi((()=>null===r.value&&!l.value))),S=gi((()=>!!(null==b?void 0:b.enteringSubmenuRef.value))),k=$t(!1);function _(){const{parentKey:t,tmNode:i}=e;i.disabled||s.value&&(o.value=t,r.value=null,n.value=i.key)}return Hr(Ak,{enteringSubmenuRef:k}),{labelField:u,renderLabel:c,renderIcon:d,siblingHasIcon:v.showIconRef,siblingHasSubmenu:v.hasSubmenuRef,menuProps:g,popoverBody:m,animated:l,mergedShowSubmenu:gi((()=>C.value&&!S.value)),rawNode:y,hasSubmenu:x,pending:hp((()=>{const{value:t}=i,{key:n}=e.tmNode;return t.includes(n)})),childActive:hp((()=>{const{value:t}=a,{key:n}=e.tmNode,r=t.findIndex((e=>n===e));return-1!==r&&r{const{value:t}=a,{key:n}=e.tmNode,r=t.findIndex((e=>n===e));return-1!==r&&r===t.length-1})),mergedDisabled:w,renderOption:f,nodeProps:h,handleClick:function(){const{value:n}=x,{tmNode:r}=e;s.value&&(n||r.disabled||(t.doSelect(r.key,r.rawNode),t.doUpdateShow(!1)))},handleMouseMove:function(){const{tmNode:t}=e;t.disabled||s.value&&n.value!==t.key&&_()},handleMouseEnter:_,handleMouseLeave:function(t){if(e.tmNode.disabled)return;if(!s.value)return;const{relatedTarget:r}=t;!r||ku({target:r},"dropdownOption")||ku({target:r},"scrollbarRail")||(n.value=null)},handleSubmenuBeforeEnter:function(){k.value=!0},handleSubmenuAfterEnter:function(){k.value=!1}}},render(){var e,t;const{animated:n,rawNode:r,mergedShowSubmenu:o,clsPrefix:i,siblingHasIcon:a,siblingHasSubmenu:l,renderLabel:s,renderIcon:c,renderOption:d,nodeProps:u,props:p,scrollable:f}=this;let h=null;if(o){const t=null===(e=this.menuProps)||void 0===e?void 0:e.call(this,r,r.children);h=bi(jk,Object.assign({},t,{clsPrefix:i,scrollable:this.scrollable,tmNodes:this.tmNode.children,parentKey:this.tmNode.key}))}const g={class:[`${i}-dropdown-option-body`,this.pending&&`${i}-dropdown-option-body--pending`,this.active&&`${i}-dropdown-option-body--active`,this.childActive&&`${i}-dropdown-option-body--child-active`,this.mergedDisabled&&`${i}-dropdown-option-body--disabled`],onMousemove:this.handleMouseMove,onMouseenter:this.handleMouseEnter,onMouseleave:this.handleMouseLeave,onClick:this.handleClick},b=null==u?void 0:u(r),v=bi("div",Object.assign({class:[`${i}-dropdown-option`,null==b?void 0:b.class],"data-dropdown-option":!0},b),bi("div",Yo(g,p),[bi("div",{class:[`${i}-dropdown-option-body__prefix`,a&&`${i}-dropdown-option-body__prefix--show-icon`]},[c?c(r):pg(r.icon)]),bi("div",{"data-dropdown-option":!0,class:`${i}-dropdown-option-body__label`},s?s(r):pg(null!==(t=r[this.labelField])&&void 0!==t?t:r.title)),bi("div",{"data-dropdown-option":!0,class:[`${i}-dropdown-option-body__suffix`,l&&`${i}-dropdown-option-body__suffix--has-submenu`]},this.hasSubmenu?bi(Mk,null,{default:()=>bi(By,null)}):null)]),this.hasSubmenu?bi(ff,null,{default:()=>[bi(hf,null,{default:()=>bi("div",{class:`${i}-dropdown-offset-container`},bi(Lf,{show:this.mergedShowSubmenu,placement:this.placement,to:f&&this.popoverBody||void 0,teleportDisabled:!f},{default:()=>bi("div",{class:`${i}-dropdown-menu-wrapper`},n?bi(Ai,{onBeforeEnter:this.handleSubmenuBeforeEnter,onAfterEnter:this.handleSubmenuAfterEnter,name:"fade-in-scale-up-transition",appear:!0},{default:()=>h}):h)}))})]}):null);return d?d({node:v,option:r}):v}}),Ik=qn({name:"NDropdownGroup",props:{clsPrefix:{type:String,required:!0},tmNode:{type:Object,required:!0},parentKey:{type:[String,Number],default:null}},render(){const{tmNode:e,parentKey:t,clsPrefix:n}=this,{children:r}=e;return bi(Oo,null,bi(Tk,{clsPrefix:n,tmNode:e,key:e.key}),null==r?void 0:r.map((e=>{const{rawNode:r}=e;return!1===r.show?null:Nk(r)?bi(Pk,{clsPrefix:n,key:e.key}):e.isGroup?null:bi(Bk,{clsPrefix:n,tmNode:e,parentKey:t,key:e.key})})))}}),Lk=qn({name:"DropdownRenderOption",props:{tmNode:{type:Object,required:!0}},render(){const{rawNode:{render:e,props:t}}=this.tmNode;return bi("div",t,[null==e?void 0:e()])}}),jk=qn({name:"DropdownMenu",props:{scrollable:Boolean,showArrow:Boolean,arrowStyle:[String,Object],clsPrefix:{type:String,required:!0},tmNodes:{type:Array,default:()=>[]},parentKey:{type:[String,Number],default:null}},setup(e){const{renderIconRef:t,childrenFieldRef:n}=Wr(Ok);Hr(Rk,{showIconRef:gi((()=>{const n=t.value;return e.tmNodes.some((e=>{var t;if(e.isGroup)return null===(t=e.children)||void 0===t?void 0:t.some((({rawNode:e})=>n?n(e):e.icon));const{rawNode:r}=e;return n?n(r):r.icon}))})),hasSubmenuRef:gi((()=>{const{value:t}=n;return e.tmNodes.some((e=>{var n;if(e.isGroup)return null===(n=e.children)||void 0===n?void 0:n.some((({rawNode:e})=>Fk(e,t)));const{rawNode:r}=e;return Fk(r,t)}))}))});const r=$t(null);return Hr(Dp,null),Hr(jp,null),Hr(Wp,r),{bodyRef:r}},render(){const{parentKey:e,clsPrefix:t,scrollable:n}=this,r=this.tmNodes.map((r=>{const{rawNode:o}=r;return!1===o.show?null:function(e){return"render"===e.type}(o)?bi(Lk,{tmNode:r,key:r.key}):Nk(o)?bi(Pk,{clsPrefix:t,key:r.key}):function(e){return"group"===e.type}(o)?bi(Ik,{clsPrefix:t,tmNode:r,parentKey:e,key:r.key}):bi(Bk,{clsPrefix:t,tmNode:r,parentKey:e,key:r.key,props:o.props,scrollable:n})}));return bi("div",{class:[`${t}-dropdown-menu`,n&&`${t}-dropdown-menu--scrollable`],ref:"bodyRef"},n?bi(lw,{contentClass:`${t}-dropdown-menu__content`},{default:()=>r}):r,this.showArrow?eC({clsPrefix:t,arrowStyle:this.arrowStyle,arrowClass:void 0,arrowWrapperClass:void 0,arrowWrapperStyle:void 0}):null)}}),Dk=uu("dropdown-menu","\n transform-origin: var(--v-transform-origin);\n background-color: var(--n-color);\n border-radius: var(--n-border-radius);\n box-shadow: var(--n-box-shadow);\n position: relative;\n transition:\n background-color .3s var(--n-bezier),\n box-shadow .3s var(--n-bezier);\n",[Dw(),uu("dropdown-option","\n position: relative;\n ",[cu("a","\n text-decoration: none;\n color: inherit;\n outline: none;\n ",[cu("&::before",'\n content: "";\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n ')]),uu("dropdown-option-body","\n display: flex;\n cursor: pointer;\n position: relative;\n height: var(--n-option-height);\n line-height: var(--n-option-height);\n font-size: var(--n-font-size);\n color: var(--n-option-text-color);\n transition: color .3s var(--n-bezier);\n ",[cu("&::before",'\n content: "";\n position: absolute;\n top: 0;\n bottom: 0;\n left: 4px;\n right: 4px;\n transition: background-color .3s var(--n-bezier);\n border-radius: var(--n-border-radius);\n '),hu("disabled",[fu("pending","\n color: var(--n-option-text-color-hover);\n ",[pu("prefix, suffix","\n color: var(--n-option-text-color-hover);\n "),cu("&::before","background-color: var(--n-option-color-hover);")]),fu("active","\n color: var(--n-option-text-color-active);\n ",[pu("prefix, suffix","\n color: var(--n-option-text-color-active);\n "),cu("&::before","background-color: var(--n-option-color-active);")]),fu("child-active","\n color: var(--n-option-text-color-child-active);\n ",[pu("prefix, suffix","\n color: var(--n-option-text-color-child-active);\n ")])]),fu("disabled","\n cursor: not-allowed;\n opacity: var(--n-option-opacity-disabled);\n "),fu("group","\n font-size: calc(var(--n-font-size) - 1px);\n color: var(--n-group-header-text-color);\n ",[pu("prefix","\n width: calc(var(--n-option-prefix-width) / 2);\n ",[fu("show-icon","\n width: calc(var(--n-option-icon-prefix-width) / 2);\n ")])]),pu("prefix","\n width: var(--n-option-prefix-width);\n display: flex;\n justify-content: center;\n align-items: center;\n color: var(--n-prefix-color);\n transition: color .3s var(--n-bezier);\n z-index: 1;\n ",[fu("show-icon","\n width: var(--n-option-icon-prefix-width);\n "),uu("icon","\n font-size: var(--n-option-icon-size);\n ")]),pu("label","\n white-space: nowrap;\n flex: 1;\n z-index: 1;\n "),pu("suffix","\n box-sizing: border-box;\n flex-grow: 0;\n flex-shrink: 0;\n display: flex;\n justify-content: flex-end;\n align-items: center;\n min-width: var(--n-option-suffix-width);\n padding: 0 8px;\n transition: color .3s var(--n-bezier);\n color: var(--n-suffix-color);\n z-index: 1;\n ",[fu("has-submenu","\n width: var(--n-option-icon-suffix-width);\n "),uu("icon","\n font-size: var(--n-option-icon-size);\n ")]),uu("dropdown-menu","pointer-events: all;")]),uu("dropdown-offset-container","\n pointer-events: none;\n position: absolute;\n left: 0;\n right: 0;\n top: -4px;\n bottom: -4px;\n ")]),uu("dropdown-divider","\n transition: background-color .3s var(--n-bezier);\n background-color: var(--n-divider-color);\n height: 1px;\n margin: 4px 0;\n "),uu("dropdown-menu-wrapper","\n transform-origin: var(--v-transform-origin);\n width: fit-content;\n "),cu(">",[uu("scrollbar","\n height: inherit;\n max-height: inherit;\n ")]),hu("scrollable","\n padding: var(--n-padding);\n "),fu("scrollable",[pu("content","\n padding: var(--n-padding);\n ")])]),Hk={animated:{type:Boolean,default:!0},keyboard:{type:Boolean,default:!0},size:{type:String,default:"medium"},inverted:Boolean,placement:{type:String,default:"bottom"},onSelect:[Function,Array],options:{type:Array,default:()=>[]},menuProps:Function,showArrow:Boolean,renderLabel:Function,renderIcon:Function,renderOption:Function,nodeProps:Function,labelField:{type:String,default:"label"},keyField:{type:String,default:"key"},childrenField:{type:String,default:"children"},value:[String,Number]},Wk=Object.keys(oC),Uk=qn({name:"Dropdown",inheritAttrs:!1,props:Object.assign(Object.assign(Object.assign({},oC),Hk),Ey.props),setup(e){const t=$t(!1),n=$p(Dt(e,"show"),t),r=gi((()=>{const{keyField:t,childrenField:n}=e;return Pw(e.options,{getKey:e=>e[t],getDisabled:e=>!0===e.disabled,getIgnored:e=>"divider"===e.type||"render"===e.type,getChildren:e=>e[n]})})),o=gi((()=>r.value.treeNodes)),i=$t(null),a=$t(null),l=$t(null),s=gi((()=>{var e,t,n;return null!==(n=null!==(t=null!==(e=i.value)&&void 0!==e?e:a.value)&&void 0!==t?t:l.value)&&void 0!==n?n:null})),c=gi((()=>r.value.getPath(s.value).keyPath)),d=gi((()=>r.value.getPath(e.value).keyPath));!function(e={},t){const n=yt({ctrl:!1,command:!1,win:!1,shift:!1,tab:!1}),{keydown:r,keyup:o}=e,i=e=>{switch(e.key){case"Control":n.ctrl=!0;break;case"Meta":n.command=!0,n.win=!0;break;case"Shift":n.shift=!0;break;case"Tab":n.tab=!0}void 0!==r&&Object.keys(r).forEach((t=>{if(t!==e.key)return;const n=r[t];if("function"==typeof n)n(e);else{const{stop:t=!1,prevent:r=!1}=n;t&&e.stopPropagation(),r&&e.preventDefault(),n.handler(e)}}))},a=e=>{switch(e.key){case"Control":n.ctrl=!1;break;case"Meta":n.command=!1,n.win=!1;break;case"Shift":n.shift=!1;break;case"Tab":n.tab=!1}void 0!==o&&Object.keys(o).forEach((t=>{if(t!==e.key)return;const n=o[t];if("function"==typeof n)n(e);else{const{stop:t=!1,prevent:r=!1}=n;t&&e.stopPropagation(),r&&e.preventDefault(),n.handler(e)}}))},l=()=>{(void 0===t||t.value)&&(up("keydown",document,i),up("keyup",document,a)),void 0!==t&&go(t,(e=>{e?(up("keydown",document,i),up("keyup",document,a)):(pp("keydown",document,i),pp("keyup",document,a))}))};gp()?(nr(l),ar((()=>{(void 0===t||t.value)&&(pp("keydown",document,i),pp("keyup",document,a))}))):l(),wt(n)}({keydown:{ArrowUp:{prevent:!0,handler:function(){m("up")}},ArrowRight:{prevent:!0,handler:function(){m("right")}},ArrowDown:{prevent:!0,handler:function(){m("down")}},ArrowLeft:{prevent:!0,handler:function(){m("left")}},Enter:{prevent:!0,handler:function(){const e=v();(null==e?void 0:e.isLeaf)&&n.value&&(h(e.key,e.rawNode),g(!1))}},Escape:function(){g(!1)}}},hp((()=>e.keyboard&&n.value)));const{mergedClsPrefixRef:u,inlineThemeDisabled:p}=wg(e),f=Ey("Dropdown","-dropdown",Dk,BS,e,u);function h(t,n){const{onSelect:r}=e;r&&og(r,t,n)}function g(n){const{"onUpdate:show":r,onUpdateShow:o}=e;r&&og(r,n),o&&og(o,n),t.value=n}function b(){i.value=null,a.value=null,l.value=null}function v(){var e;const{value:t}=r,{value:n}=s;return t&&null!==n&&null!==(e=t.getNode(n))&&void 0!==e?e:null}function m(e){const{value:t}=s,{value:{getFirstAvailableNode:n}}=r;let o=null;if(null===t){const e=n();null!==e&&(o=e.key)}else{const t=v();if(t){let n;switch(e){case"down":n=t.getNext();break;case"up":n=t.getPrev();break;case"right":n=t.getChild();break;case"left":n=t.getParent()}n&&(o=n.key)}}null!==o&&(i.value=null,a.value=o)}Hr(Ok,{labelFieldRef:Dt(e,"labelField"),childrenFieldRef:Dt(e,"childrenField"),renderLabelRef:Dt(e,"renderLabel"),renderIconRef:Dt(e,"renderIcon"),hoverKeyRef:i,keyboardKeyRef:a,lastToggledSubmenuKeyRef:l,pendingKeyPathRef:c,activeKeyPathRef:d,animatedRef:Dt(e,"animated"),mergedShowRef:n,nodePropsRef:Dt(e,"nodeProps"),renderOptionRef:Dt(e,"renderOption"),menuPropsRef:Dt(e,"menuProps"),doSelect:h,doUpdateShow:g}),go(n,(t=>{e.animated||t||b()}));const y=gi((()=>{const{size:t,inverted:n}=e,{common:{cubicBezierEaseInOut:r},self:o}=f.value,{padding:i,dividerColor:a,borderRadius:l,optionOpacityDisabled:s,[yu("optionIconSuffixWidth",t)]:c,[yu("optionSuffixWidth",t)]:d,[yu("optionIconPrefixWidth",t)]:u,[yu("optionPrefixWidth",t)]:p,[yu("fontSize",t)]:h,[yu("optionHeight",t)]:g,[yu("optionIconSize",t)]:b}=o,v={"--n-bezier":r,"--n-font-size":h,"--n-padding":i,"--n-border-radius":l,"--n-option-height":g,"--n-option-prefix-width":p,"--n-option-icon-prefix-width":u,"--n-option-suffix-width":d,"--n-option-icon-suffix-width":c,"--n-option-icon-size":b,"--n-divider-color":a,"--n-option-opacity-disabled":s};return n?(v["--n-color"]=o.colorInverted,v["--n-option-color-hover"]=o.optionColorHoverInverted,v["--n-option-color-active"]=o.optionColorActiveInverted,v["--n-option-text-color"]=o.optionTextColorInverted,v["--n-option-text-color-hover"]=o.optionTextColorHoverInverted,v["--n-option-text-color-active"]=o.optionTextColorActiveInverted,v["--n-option-text-color-child-active"]=o.optionTextColorChildActiveInverted,v["--n-prefix-color"]=o.prefixColorInverted,v["--n-suffix-color"]=o.suffixColorInverted,v["--n-group-header-text-color"]=o.groupHeaderTextColorInverted):(v["--n-color"]=o.color,v["--n-option-color-hover"]=o.optionColorHover,v["--n-option-color-active"]=o.optionColorActive,v["--n-option-text-color"]=o.optionTextColor,v["--n-option-text-color-hover"]=o.optionTextColorHover,v["--n-option-text-color-active"]=o.optionTextColorActive,v["--n-option-text-color-child-active"]=o.optionTextColorChildActive,v["--n-prefix-color"]=o.prefixColor,v["--n-suffix-color"]=o.suffixColor,v["--n-group-header-text-color"]=o.groupHeaderTextColor),v})),x=p?Sg("dropdown",gi((()=>`${e.size[0]}${e.inverted?"i":""}`)),y,e):void 0;return{mergedClsPrefix:u,mergedTheme:f,tmNodes:o,mergedShow:n,handleAfterLeave:()=>{e.animated&&b()},doUpdateShow:g,cssVars:p?void 0:y,themeClass:null==x?void 0:x.themeClass,onRender:null==x?void 0:x.onRender}},render(){const{mergedTheme:e}=this,t={show:this.mergedShow,theme:e.peers.Popover,themeOverrides:e.peerOverrides.Popover,internalOnAfterLeave:this.handleAfterLeave,internalRenderBody:(e,t,n,r,o)=>{var i;const{mergedClsPrefix:a,menuProps:l}=this;null===(i=this.onRender)||void 0===i||i.call(this);const s=(null==l?void 0:l(void 0,this.tmNodes.map((e=>e.rawNode))))||{},c={ref:ig(t),class:[e,`${a}-dropdown`,this.themeClass],clsPrefix:a,tmNodes:this.tmNodes,style:[...n,this.cssVars],showArrow:this.showArrow,arrowStyle:this.arrowStyle,scrollable:this.scrollable,onMouseenter:r,onMouseleave:o};return bi(jk,Yo(this.$attrs,c,s))},onUpdateShow:this.doUpdateShow,"onUpdate:show":void 0};return bi(iC,Object.assign({},sg(this.$props,Wk),t),{trigger:()=>{var e,t;return null===(t=(e=this.$slots).default)||void 0===t?void 0:t.call(e)}})}}),qk="_n_all__",Kk="_n_none__";const Vk=qn({name:"DataTableSelectionMenu",props:{clsPrefix:{type:String,required:!0}},setup(e){const{props:t,localeRef:n,checkOptionsRef:r,rawPaginatedDataRef:o,doCheckAll:i,doUncheckAll:a}=Wr(KS),l=gi((()=>function(e,t,n,r){return e?o=>{for(const i of e)switch(o){case qk:return void n(!0);case Kk:return void r(!0);default:if("object"==typeof i&&i.key===o)return void i.onSelect(t.value)}}:()=>{}}(r.value,o,i,a))),s=gi((()=>function(e,t){return e?e.map((e=>{switch(e){case"all":return{label:t.checkTableAll,key:qk};case"none":return{label:t.uncheckTableAll,key:Kk};default:return e}})):[]}(r.value,n.value)));return()=>{var n,r,o,i;const{clsPrefix:a}=e;return bi(Uk,{theme:null===(r=null===(n=t.theme)||void 0===n?void 0:n.peers)||void 0===r?void 0:r.Dropdown,themeOverrides:null===(i=null===(o=t.themeOverrides)||void 0===o?void 0:o.peers)||void 0===i?void 0:i.Dropdown,options:s.value,onSelect:l.value},{default:()=>bi(Oy,{clsPrefix:a,class:`${a}-data-table-check-extra`},{default:()=>bi(Fy,null)})})}}});function Gk(e){return"function"==typeof e.title?e.title(e):e.title}const Zk=qn({props:{clsPrefix:{type:String,required:!0},id:{type:String,required:!0},cols:{type:Array,required:!0},width:String},render(){const{clsPrefix:e,id:t,cols:n,width:r}=this;return bi("table",{style:{tableLayout:"fixed",width:r},class:`${e}-data-table-table`},bi("colgroup",null,n.map((e=>bi("col",{key:e.key,style:e.style})))),bi("thead",{"data-n-id":t,class:`${e}-data-table-thead`},this.$slots))}}),Xk=qn({name:"DataTableHeader",props:{discrete:{type:Boolean,default:!0}},setup(){const{mergedClsPrefixRef:e,scrollXRef:t,fixedColumnLeftMapRef:n,fixedColumnRightMapRef:r,mergedCurrentPageRef:o,allRowsCheckedRef:i,someRowsCheckedRef:a,rowsRef:l,colsRef:s,mergedThemeRef:c,checkOptionsRef:d,mergedSortStateRef:u,componentId:p,mergedTableLayoutRef:f,headerCheckboxDisabledRef:h,virtualScrollHeaderRef:g,headerHeightRef:b,onUnstableColumnResize:v,doUpdateResizableWidth:m,handleTableHeaderScroll:y,deriveNextSorter:x,doUncheckAll:w,doCheckAll:C}=Wr(KS),S=$t(),k=$t({});function _(e){const t=k.value[e];return null==t?void 0:t.getBoundingClientRect().width}const E=new Map;return{cellElsRef:k,componentId:p,mergedSortState:u,mergedClsPrefix:e,scrollX:t,fixedColumnLeftMap:n,fixedColumnRightMap:r,currentPage:o,allRowsChecked:i,someRowsChecked:a,rows:l,cols:s,mergedTheme:c,checkOptions:d,mergedTableLayout:f,headerCheckboxDisabled:h,headerHeight:b,virtualScrollHeader:g,virtualListRef:S,handleCheckboxUpdateChecked:function(){i.value?w():C()},handleColHeaderClick:function(e,t){if(ku(e,"dataTableFilter")||ku(e,"dataTableResizable"))return;if(!YS(t))return;const n=u.value.find((e=>e.columnKey===t.key))||null,r=function(e,t){return void 0===e.sorter?null:null===t||t.columnKey!==e.key?{columnKey:e.key,sorter:e.sorter,order:tk(!1)}:Object.assign(Object.assign({},t),{order:tk(t.order)})}(t,n);x(r)},handleTableHeaderScroll:y,handleColumnResizeStart:function(e){E.set(e.key,_(e.key))},handleColumnResize:function(e,t){const n=E.get(e.key);if(void 0===n)return;const r=n+t,o=(i=r,a=e.minWidth,void 0!==(l=e.maxWidth)&&(i=Math.min(i,"number"==typeof l?l:Number.parseFloat(l))),void 0!==a&&(i=Math.max(i,"number"==typeof a?a:Number.parseFloat(a))),i);var i,a,l;v(r,o,e,_),m(e,o)}}},render(){const{cellElsRef:e,mergedClsPrefix:t,fixedColumnLeftMap:n,fixedColumnRightMap:r,currentPage:o,allRowsChecked:i,someRowsChecked:a,rows:l,cols:s,mergedTheme:c,checkOptions:d,componentId:u,discrete:p,mergedTableLayout:f,headerCheckboxDisabled:h,mergedSortState:g,virtualScrollHeader:b,handleColHeaderClick:v,handleCheckboxUpdateChecked:m,handleColumnResizeStart:y,handleColumnResize:x}=this,w=(l,s,u)=>l.map((({column:l,colIndex:p,colSpan:f,rowSpan:b,isLast:w})=>{var C,S;const k=GS(l),{ellipsis:_}=l,E=k in n,R=k in r;return bi(s&&!l.fixed?"div":"th",{ref:t=>e[k]=t,key:k,style:[s&&!l.fixed?{position:"absolute",left:Ou(s(p)),top:0,bottom:0}:{left:Ou(null===(C=n[k])||void 0===C?void 0:C.start),right:Ou(null===(S=r[k])||void 0===S?void 0:S.start)},{width:Ou(l.width),textAlign:l.titleAlign||l.align,height:u}],colspan:f,rowspan:b,"data-col-key":k,class:[`${t}-data-table-th`,(E||R)&&`${t}-data-table-th--fixed-${E?"left":"right"}`,{[`${t}-data-table-th--sorting`]:nk(l,g),[`${t}-data-table-th--filterable`]:ek(l),[`${t}-data-table-th--sortable`]:YS(l),[`${t}-data-table-th--selection`]:"selection"===l.type,[`${t}-data-table-th--last`]:w},l.className],onClick:"selection"===l.type||"expand"===l.type||"children"in l?void 0:e=>{v(e,l)}},"selection"===l.type?!1!==l.multiple?bi(Oo,null,bi(cS,{key:o,privateInsideTable:!0,checked:i,indeterminate:a,disabled:h,onUpdateChecked:m}),d?bi(Vk,{clsPrefix:t}):null):null:bi(Oo,null,bi("div",{class:`${t}-data-table-th__title-wrapper`},bi("div",{class:`${t}-data-table-th__title`},!0===_||_&&!_.tooltip?bi("div",{class:`${t}-data-table-th__ellipsis`},Gk(l)):_&&"object"==typeof _?bi(vk,Object.assign({},_,{theme:c.peers.Ellipsis,themeOverrides:c.peerOverrides.Ellipsis}),{default:()=>Gk(l)}):Gk(l)),YS(l)?bi(Ek,{column:l}):null),ek(l)?bi(Sk,{column:l,options:l.filterOptions}):null,JS(l)?bi(kk,{onResizeStart:()=>{y(l)},onResize:e=>{x(l,e)}}):null))}));if(b){const{headerHeight:e}=this;let n=0,r=0;return s.forEach((e=>{"left"===e.column.fixed?n++:"right"===e.column.fixed&&r++})),bi(Fh,{ref:"virtualListRef",class:`${t}-data-table-base-table-header`,style:{height:Ou(e)},onScroll:this.handleTableHeaderScroll,columns:s,itemSize:e,showScrollbar:!1,items:[{}],itemResizable:!1,visibleItemsTag:Zk,visibleItemsProps:{clsPrefix:t,id:u,cols:s,width:Qh(this.scrollX)},renderItemWithCols:({startColIndex:t,endColIndex:o,getLeft:i})=>{const a=s.map(((e,t)=>({column:e.column,isLast:t===s.length-1,colIndex:e.index,colSpan:1,rowSpan:1}))).filter((({column:e},n)=>t<=n&&n<=o||!!e.fixed)),l=w(a,i,Ou(e));return l.splice(n,0,bi("th",{colspan:s.length-n-r,style:{pointerEvents:"none",visibility:"hidden",height:0}})),bi("tr",{style:{position:"relative"}},l)}},{default:({renderedItemWithCols:e})=>e})}const C=bi("thead",{class:`${t}-data-table-thead`,"data-n-id":u},l.map((e=>bi("tr",{class:`${t}-data-table-tr`},w(e,null,void 0)))));if(!p)return C;const{handleTableHeaderScroll:S,scrollX:k}=this;return bi("div",{class:`${t}-data-table-base-table-header`,onScroll:S},bi("table",{class:`${t}-data-table-table`,style:{minWidth:Qh(k),tableLayout:f}},bi("colgroup",null,s.map((e=>bi("col",{key:e.key,style:e.style})))),C))}});function Qk(e,t){const n=[];function r(e,o){e.forEach((e=>{e.children&&t.has(e.key)?(n.push({tmNode:e,striped:!1,key:e.key,index:o}),r(e.children,o)):n.push({key:e.key,tmNode:e,striped:!1,index:o})}))}return e.forEach((e=>{n.push(e);const{children:o}=e.tmNode;o&&t.has(e.key)&&r(o,e.index)})),n}const Yk=qn({props:{clsPrefix:{type:String,required:!0},id:{type:String,required:!0},cols:{type:Array,required:!0},onMouseenter:Function,onMouseleave:Function},render(){const{clsPrefix:e,id:t,cols:n,onMouseenter:r,onMouseleave:o}=this;return bi("table",{style:{tableLayout:"fixed"},class:`${e}-data-table-table`,onMouseenter:r,onMouseleave:o},bi("colgroup",null,n.map((e=>bi("col",{key:e.key,style:e.style})))),bi("tbody",{"data-n-id":t,class:`${e}-data-table-tbody`},this.$slots))}}),Jk=qn({name:"DataTableBody",props:{onResize:Function,showHeader:Boolean,flexHeight:Boolean,bodyStyle:Object},setup(e){const{slots:t,bodyWidthRef:n,mergedExpandedRowKeysRef:r,mergedClsPrefixRef:o,mergedThemeRef:i,scrollXRef:a,colsRef:l,paginatedDataRef:s,rawPaginatedDataRef:c,fixedColumnLeftMapRef:d,fixedColumnRightMapRef:u,mergedCurrentPageRef:p,rowClassNameRef:f,leftActiveFixedColKeyRef:h,leftActiveFixedChildrenColKeysRef:g,rightActiveFixedColKeyRef:b,rightActiveFixedChildrenColKeysRef:v,renderExpandRef:m,hoverKeyRef:y,summaryRef:x,mergedSortStateRef:w,virtualScrollRef:C,virtualScrollXRef:S,heightForRowRef:k,minRowHeightRef:_,componentId:E,mergedTableLayoutRef:R,childTriggerColIndexRef:O,indentRef:A,rowPropsRef:P,maxHeightRef:T,stripedRef:$,loadingRef:z,onLoadRef:M,loadingKeySetRef:F,expandableRef:N,stickyExpandedRowsRef:B,renderExpandIconRef:I,summaryPlacementRef:L,treeMateRef:j,scrollbarPropsRef:D,setHeaderScrollLeft:H,doUpdateExpandedRowKeys:W,handleTableBodyScroll:U,doCheck:q,doUncheck:K,renderCell:V}=Wr(KS),G=Wr(yg),Z=$t(null),X=$t(null),Q=$t(null),Y=hp((()=>0===s.value.length)),J=hp((()=>e.showHeader||!Y.value)),ee=hp((()=>e.showHeader||Y.value));let te="";const ne=gi((()=>new Set(r.value)));function re(e){var t;return null===(t=j.value.getNode(e))||void 0===t?void 0:t.rawNode}function oe(){const{value:e}=X;return(null==e?void 0:e.listElRef)||null}const ie={getScrollContainer:function(){if(!J.value){const{value:e}=Q;return e||null}if(C.value)return oe();const{value:e}=Z;return e?e.containerRef:null},scrollTo(e,t){var n,r;C.value?null===(n=X.value)||void 0===n||n.scrollTo(e,t):null===(r=Z.value)||void 0===r||r.scrollTo(e,t)}},ae=cu([({props:e})=>{const t=t=>null===t?null:cu(`[data-n-id="${e.componentId}"] [data-col-key="${t}"]::after`,{boxShadow:"var(--n-box-shadow-after)"}),n=t=>null===t?null:cu(`[data-n-id="${e.componentId}"] [data-col-key="${t}"]::before`,{boxShadow:"var(--n-box-shadow-before)"});return cu([t(e.leftActiveFixedColKey),n(e.rightActiveFixedColKey),e.leftActiveFixedChildrenColKeys.map((e=>t(e))),e.rightActiveFixedChildrenColKeys.map((e=>n(e)))])}]);let le=!1;return ho((()=>{const{value:e}=h,{value:t}=g,{value:n}=b,{value:r}=v;if(!le&&null===e&&null===n)return;const o={leftActiveFixedColKey:e,leftActiveFixedChildrenColKeys:t,rightActiveFixedColKey:n,rightActiveFixedChildrenColKeys:r,componentId:E};ae.mount({id:`n-${E}`,force:!0,props:o,anchorMetaName:my,parent:null==G?void 0:G.styleMountTarget}),le=!0})),lr((()=>{ae.unmount({id:`n-${E}`,parent:null==G?void 0:G.styleMountTarget})})),Object.assign({bodyWidth:n,summaryPlacement:L,dataTableSlots:t,componentId:E,scrollbarInstRef:Z,virtualListRef:X,emptyElRef:Q,summary:x,mergedClsPrefix:o,mergedTheme:i,scrollX:a,cols:l,loading:z,bodyShowHeaderOnly:ee,shouldDisplaySomeTablePart:J,empty:Y,paginatedDataAndInfo:gi((()=>{const{value:e}=$;let t=!1;return{data:s.value.map(e?(e,n)=>(e.isLeaf||(t=!0),{tmNode:e,key:e.key,striped:n%2==1,index:n}):(e,n)=>(e.isLeaf||(t=!0),{tmNode:e,key:e.key,striped:!1,index:n})),hasChildren:t}})),rawPaginatedData:c,fixedColumnLeftMap:d,fixedColumnRightMap:u,currentPage:p,rowClassName:f,renderExpand:m,mergedExpandedRowKeySet:ne,hoverKey:y,mergedSortState:w,virtualScroll:C,virtualScrollX:S,heightForRow:k,minRowHeight:_,mergedTableLayout:R,childTriggerColIndex:O,indent:A,rowProps:P,maxHeight:T,loadingKeySet:F,expandable:N,stickyExpandedRows:B,renderExpandIcon:I,scrollbarProps:D,setHeaderScrollLeft:H,handleVirtualListScroll:function(e){var t;U(e),null===(t=Z.value)||void 0===t||t.sync()},handleVirtualListResize:function(t){var n;const{onResize:r}=e;r&&r(t),null===(n=Z.value)||void 0===n||n.sync()},handleMouseleaveTable:function(){y.value=null},virtualListContainer:oe,virtualListContent:function(){const{value:e}=X;return(null==e?void 0:e.itemsElRef)||null},handleTableBodyScroll:U,handleCheckboxUpdateChecked:function(e,t,n){const r=re(e.key);if(r){if(n){const n=s.value.findIndex((e=>e.key===te));if(-1!==n){const o=s.value.findIndex((t=>t.key===e.key)),i=Math.min(n,o),a=Math.max(n,o),l=[];return s.value.slice(i,a+1).forEach((e=>{e.disabled||l.push(e.key)})),t?q(l,!1,r):K(l,r),void(te=e.key)}}t?q(e.key,!1,r):K(e.key,r),te=e.key}else e.key},handleRadioUpdateChecked:function(e){const t=re(e.key);t?q(e.key,!0,t):e.key},handleUpdateExpanded:function(e,t){var n;if(F.value.has(e))return;const{value:o}=r,i=o.indexOf(e),a=Array.from(o);~i?(a.splice(i,1),W(a)):!t||t.isLeaf||t.shallowLoaded?(a.push(e),W(a)):(F.value.add(e),null===(n=M.value)||void 0===n||n.call(M,t.rawNode).then((()=>{const{value:t}=r,n=Array.from(t);~n.indexOf(e)||n.push(e),W(n)})).finally((()=>{F.value.delete(e)})))},renderCell:V},ie)},render(){const{mergedTheme:e,scrollX:t,mergedClsPrefix:n,virtualScroll:r,maxHeight:o,mergedTableLayout:i,flexHeight:a,loadingKeySet:l,onResize:s,setHeaderScrollLeft:c}=this,d=void 0!==t||void 0!==o||a,u=!d&&"auto"===i,p=void 0!==t||u,f={minWidth:Qh(t)||"100%"};t&&(f.width="100%");const h=bi(aw,Object.assign({},this.scrollbarProps,{ref:"scrollbarInstRef",scrollable:d||u,class:`${n}-data-table-base-table-body`,style:this.empty?void 0:this.bodyStyle,theme:e.peers.Scrollbar,themeOverrides:e.peerOverrides.Scrollbar,contentStyle:f,container:r?this.virtualListContainer:void 0,content:r?this.virtualListContent:void 0,horizontalRailStyle:{zIndex:3},verticalRailStyle:{zIndex:3},xScrollable:p,onScroll:r?void 0:this.handleTableBodyScroll,internalOnUpdateScrollLeft:c,onResize:s}),{default:()=>{const e={},t={},{cols:o,paginatedDataAndInfo:i,mergedTheme:a,fixedColumnLeftMap:s,fixedColumnRightMap:c,currentPage:d,rowClassName:u,mergedSortState:p,mergedExpandedRowKeySet:h,stickyExpandedRows:g,componentId:b,childTriggerColIndex:v,expandable:m,rowProps:y,handleMouseleaveTable:x,renderExpand:w,summary:C,handleCheckboxUpdateChecked:S,handleRadioUpdateChecked:k,handleUpdateExpanded:_,heightForRow:E,minRowHeight:R,virtualScrollX:O}=this,{length:A}=o;let P;const{data:T,hasChildren:$}=i,z=$?Qk(T,h):T;if(C){const e=C(this.rawPaginatedData);if(Array.isArray(e)){const t=e.map(((e,t)=>({isSummaryRow:!0,key:`__n_summary__${t}`,tmNode:{rawNode:e,disabled:!0},index:-1})));P="top"===this.summaryPlacement?[...t,...z]:[...z,...t]}else{const t={isSummaryRow:!0,key:"__n_summary__",tmNode:{rawNode:e,disabled:!0},index:-1};P="top"===this.summaryPlacement?[t,...z]:[...z,t]}}else P=z;const M=$?{width:Ou(this.indent)}:void 0,F=[];P.forEach((e=>{w&&h.has(e.key)&&(!m||m(e.tmNode.rawNode))?F.push(e,{isExpandedRow:!0,key:`${e.key}-expand`,tmNode:e.tmNode,index:e.index}):F.push(e)}));const{length:N}=F,B={};T.forEach((({tmNode:e},t)=>{B[t]=e.key}));const I=g?this.bodyWidth:null,L=null===I?void 0:`${I}px`,j=this.virtualScrollX?"div":"td";let D=0,H=0;O&&o.forEach((e=>{"left"===e.column.fixed?D++:"right"===e.column.fixed&&H++}));const W=({rowInfo:r,displayedRowIndex:i,isVirtual:f,isVirtualX:b,startColIndex:m,endColIndex:x,getLeft:C})=>{const{index:O}=r;if("isExpandedRow"in r){const{tmNode:{key:e,rawNode:t}}=r;return bi("tr",{class:`${n}-data-table-tr ${n}-data-table-tr--expanded`,key:`${e}__expand`},bi("td",{class:[`${n}-data-table-td`,`${n}-data-table-td--last-col`,i+1===N&&`${n}-data-table-td--last-row`],colspan:A},g?bi("div",{class:`${n}-data-table-expand`,style:{width:L}},w(t,O)):w(t,O)))}const P="isSummaryRow"in r,T=!P&&r.striped,{tmNode:z,key:F}=r,{rawNode:I}=z,W=h.has(F),U=y?y(I,O):void 0,q="string"==typeof u?u:function(e,t,n){return"function"==typeof n?n(e,t):n||""}(I,O,u),K=b?o.filter(((e,t)=>m<=t&&t<=x||!!e.column.fixed)):o,V=b?Ou((null==E?void 0:E(I,O))||R):void 0,G=K.map((o=>{var u,h,g,m,y;const x=o.index;if(i in e){const t=e[i],n=t.indexOf(x);if(~n)return t.splice(n,1),null}const{column:w}=o,E=GS(o),{rowSpan:R,colSpan:T}=w,z=P?(null===(u=r.tmNode.rawNode[E])||void 0===u?void 0:u.colSpan)||1:T?T(I,O):1,L=P?(null===(h=r.tmNode.rawNode[E])||void 0===h?void 0:h.rowSpan)||1:R?R(I,O):1,D=x+z===A,H=i+L===N,U=L>1;if(U&&(t[i]={[x]:[]}),z>1||U)for(let n=i;n{_(F,r.tmNode)}})]:null,"selection"===w.type?P?null:!1===w.multiple?bi(uk,{key:d,rowKey:F,disabled:r.tmNode.disabled,onUpdateChecked:()=>{k(r.tmNode)}}):bi(rk,{key:d,rowKey:F,disabled:r.tmNode.disabled,onUpdateChecked:(e,t)=>{S(r.tmNode,e,t.shiftKey)}}):"expand"===w.type?P?null:!w.expandable||(null===(y=w.expandable)||void 0===y?void 0:y.call(w,I))?bi(xk,{clsPrefix:n,rowData:I,expanded:W,renderExpandIcon:this.renderExpandIcon,onClick:()=>{_(F,null)}}):null:bi(yk,{clsPrefix:n,index:O,row:I,column:w,isSummary:P,mergedTheme:a,renderCell:this.renderCell}))}));b&&D&&H&&G.splice(D,0,bi("td",{colspan:o.length-D-H,style:{pointerEvents:"none",visibility:"hidden",height:0}}));const Z=bi("tr",Object.assign({},U,{onMouseenter:e=>{var t;this.hoverKey=F,null===(t=null==U?void 0:U.onMouseenter)||void 0===t||t.call(U,e)},key:F,class:[`${n}-data-table-tr`,P&&`${n}-data-table-tr--summary`,T&&`${n}-data-table-tr--striped`,W&&`${n}-data-table-tr--expanded`,q,null==U?void 0:U.class],style:[null==U?void 0:U.style,b&&{height:V}]}),G);return Z};return r?bi(Fh,{ref:"virtualListRef",items:F,itemSize:this.minRowHeight,visibleItemsTag:Yk,visibleItemsProps:{clsPrefix:n,id:b,cols:o,onMouseleave:x},showScrollbar:!1,onResize:this.handleVirtualListResize,onScroll:this.handleVirtualListScroll,itemsStyle:f,itemResizable:!O,columns:o,renderItemWithCols:O?({itemIndex:e,item:t,startColIndex:n,endColIndex:r,getLeft:o})=>W({displayedRowIndex:e,isVirtual:!0,isVirtualX:!0,rowInfo:t,startColIndex:n,endColIndex:r,getLeft:o}):void 0},{default:({item:e,index:t,renderedItemWithCols:n})=>n||W({rowInfo:e,displayedRowIndex:t,isVirtual:!0,isVirtualX:!1,startColIndex:0,endColIndex:0,getLeft:e=>0})}):bi("table",{class:`${n}-data-table-table`,onMouseleave:x,style:{tableLayout:this.mergedTableLayout}},bi("colgroup",null,o.map((e=>bi("col",{key:e.key,style:e.style})))),this.showHeader?bi(Xk,{discrete:!1}):null,this.empty?null:bi("tbody",{"data-n-id":b,class:`${n}-data-table-tbody`},F.map(((e,t)=>W({rowInfo:e,displayedRowIndex:t,isVirtual:!1,isVirtualX:!1,startColIndex:-1,endColIndex:-1,getLeft:e=>-1})))))}});if(this.empty){const e=()=>bi("div",{class:[`${n}-data-table-empty`,this.loading&&`${n}-data-table-empty--hide`],style:this.bodyStyle,ref:"emptyElRef"},hg(this.dataTableSlots.empty,(()=>[bi(Mw,{theme:this.mergedTheme.peers.Empty,themeOverrides:this.mergedTheme.peerOverrides.Empty})])));return this.shouldDisplaySomeTablePart?bi(Oo,null,h,e()):bi(Oh,{onResize:this.onResize},{default:e})}return h}}),e_=qn({name:"MainTable",setup(){const{mergedClsPrefixRef:e,rightFixedColumnsRef:t,leftFixedColumnsRef:n,bodyWidthRef:r,maxHeightRef:o,minHeightRef:i,flexHeightRef:a,virtualScrollHeaderRef:l,syncScrollState:s}=Wr(KS),c=$t(null),d=$t(null),u=$t(null),p=$t(!(n.value.length||t.value.length)),f=gi((()=>({maxHeight:Qh(o.value),minHeight:Qh(i.value)})));const h={getBodyElement:function(){const{value:e}=d;return e?e.getScrollContainer():null},getHeaderElement:function(){var e;const{value:t}=c;return t?l.value?(null===(e=t.virtualListRef)||void 0===e?void 0:e.listElRef)||null:t.$el:null},scrollTo(e,t){var n;null===(n=d.value)||void 0===n||n.scrollTo(e,t)}};return ho((()=>{const{value:t}=u;if(!t)return;const n=`${e.value}-data-table-base-table--transition-disabled`;p.value?setTimeout((()=>{t.classList.remove(n)}),0):t.classList.add(n)})),Object.assign({maxHeight:o,mergedClsPrefix:e,selfElRef:u,headerInstRef:c,bodyInstRef:d,bodyStyle:f,flexHeight:a,handleBodyResize:function(e){r.value=e.contentRect.width,s(),p.value||(p.value=!0)}},h)},render(){const{mergedClsPrefix:e,maxHeight:t,flexHeight:n}=this,r=void 0===t&&!n;return bi("div",{class:`${e}-data-table-base-table`,ref:"selfElRef"},r?null:bi(Xk,{ref:"headerInstRef"}),bi(Jk,{ref:"bodyInstRef",bodyStyle:this.bodyStyle,showHeader:r,flexHeight:n,onResize:this.handleBodyResize}))}}),t_=[fu("fixed-left","\n left: 0;\n position: sticky;\n z-index: 2;\n ",[cu("&::after",'\n pointer-events: none;\n content: "";\n width: 36px;\n display: inline-block;\n position: absolute;\n top: 0;\n bottom: -1px;\n transition: box-shadow .2s var(--n-bezier);\n right: -36px;\n ')]),fu("fixed-right","\n right: 0;\n position: sticky;\n z-index: 1;\n ",[cu("&::before",'\n pointer-events: none;\n content: "";\n width: 36px;\n display: inline-block;\n position: absolute;\n top: 0;\n bottom: -1px;\n transition: box-shadow .2s var(--n-bezier);\n left: -36px;\n ')])],n_=cu([uu("data-table","\n width: 100%;\n font-size: var(--n-font-size);\n display: flex;\n flex-direction: column;\n position: relative;\n --n-merged-th-color: var(--n-th-color);\n --n-merged-td-color: var(--n-td-color);\n --n-merged-border-color: var(--n-border-color);\n --n-merged-th-color-sorting: var(--n-th-color-sorting);\n --n-merged-td-color-hover: var(--n-td-color-hover);\n --n-merged-td-color-sorting: var(--n-td-color-sorting);\n --n-merged-td-color-striped: var(--n-td-color-striped);\n ",[uu("data-table-wrapper","\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n "),fu("flex-height",[cu(">",[uu("data-table-wrapper",[cu(">",[uu("data-table-base-table","\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n ",[cu(">",[uu("data-table-base-table-body","flex-basis: 0;",[cu("&:last-child","flex-grow: 1;")])])])])])])]),cu(">",[uu("data-table-loading-wrapper","\n color: var(--n-loading-color);\n font-size: var(--n-loading-size);\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translateX(-50%) translateY(-50%);\n transition: color .3s var(--n-bezier);\n display: flex;\n align-items: center;\n justify-content: center;\n ",[Dw({originalTransform:"translateX(-50%) translateY(-50%)"})])]),uu("data-table-expand-placeholder","\n margin-right: 8px;\n display: inline-block;\n width: 16px;\n height: 1px;\n "),uu("data-table-indent","\n display: inline-block;\n height: 1px;\n "),uu("data-table-expand-trigger","\n display: inline-flex;\n margin-right: 8px;\n cursor: pointer;\n font-size: 16px;\n vertical-align: -0.2em;\n position: relative;\n width: 16px;\n height: 16px;\n color: var(--n-td-text-color);\n transition: color .3s var(--n-bezier);\n ",[fu("expanded",[uu("icon","transform: rotate(90deg);",[Jy({originalTransform:"rotate(90deg)"})]),uu("base-icon","transform: rotate(90deg);",[Jy({originalTransform:"rotate(90deg)"})])]),uu("base-loading","\n color: var(--n-loading-color);\n transition: color .3s var(--n-bezier);\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n ",[Jy()]),uu("icon","\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n ",[Jy()]),uu("base-icon","\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n ",[Jy()])]),uu("data-table-thead","\n transition: background-color .3s var(--n-bezier);\n background-color: var(--n-merged-th-color);\n "),uu("data-table-tr","\n position: relative;\n box-sizing: border-box;\n background-clip: padding-box;\n transition: background-color .3s var(--n-bezier);\n ",[uu("data-table-expand","\n position: sticky;\n left: 0;\n overflow: hidden;\n margin: calc(var(--n-th-padding) * -1);\n padding: var(--n-th-padding);\n box-sizing: border-box;\n "),fu("striped","background-color: var(--n-merged-td-color-striped);",[uu("data-table-td","background-color: var(--n-merged-td-color-striped);")]),hu("summary",[cu("&:hover","background-color: var(--n-merged-td-color-hover);",[cu(">",[uu("data-table-td","background-color: var(--n-merged-td-color-hover);")])])])]),uu("data-table-th","\n padding: var(--n-th-padding);\n position: relative;\n text-align: start;\n box-sizing: border-box;\n background-color: var(--n-merged-th-color);\n border-color: var(--n-merged-border-color);\n border-bottom: 1px solid var(--n-merged-border-color);\n color: var(--n-th-text-color);\n transition:\n border-color .3s var(--n-bezier),\n color .3s var(--n-bezier),\n background-color .3s var(--n-bezier);\n font-weight: var(--n-th-font-weight);\n ",[fu("filterable","\n padding-right: 36px;\n ",[fu("sortable","\n padding-right: calc(var(--n-th-padding) + 36px);\n ")]),t_,fu("selection","\n padding: 0;\n text-align: center;\n line-height: 0;\n z-index: 3;\n "),pu("title-wrapper","\n display: flex;\n align-items: center;\n flex-wrap: nowrap;\n max-width: 100%;\n ",[pu("title","\n flex: 1;\n min-width: 0;\n ")]),pu("ellipsis","\n display: inline-block;\n vertical-align: bottom;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n max-width: 100%;\n "),fu("hover","\n background-color: var(--n-merged-th-color-hover);\n "),fu("sorting","\n background-color: var(--n-merged-th-color-sorting);\n "),fu("sortable","\n cursor: pointer;\n ",[pu("ellipsis","\n max-width: calc(100% - 18px);\n "),cu("&:hover","\n background-color: var(--n-merged-th-color-hover);\n ")]),uu("data-table-sorter","\n height: var(--n-sorter-size);\n width: var(--n-sorter-size);\n margin-left: 4px;\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n vertical-align: -0.2em;\n color: var(--n-th-icon-color);\n transition: color .3s var(--n-bezier);\n ",[uu("base-icon","transition: transform .3s var(--n-bezier)"),fu("desc",[uu("base-icon","\n transform: rotate(0deg);\n ")]),fu("asc",[uu("base-icon","\n transform: rotate(-180deg);\n ")]),fu("asc, desc","\n color: var(--n-th-icon-color-active);\n ")]),uu("data-table-resize-button","\n width: var(--n-resizable-container-size);\n position: absolute;\n top: 0;\n right: calc(var(--n-resizable-container-size) / 2);\n bottom: 0;\n cursor: col-resize;\n user-select: none;\n ",[cu("&::after","\n width: var(--n-resizable-size);\n height: 50%;\n position: absolute;\n top: 50%;\n left: calc(var(--n-resizable-container-size) / 2);\n bottom: 0;\n background-color: var(--n-merged-border-color);\n transform: translateY(-50%);\n transition: background-color .3s var(--n-bezier);\n z-index: 1;\n content: '';\n "),fu("active",[cu("&::after"," \n background-color: var(--n-th-icon-color-active);\n ")]),cu("&:hover::after","\n background-color: var(--n-th-icon-color-active);\n ")]),uu("data-table-filter","\n position: absolute;\n z-index: auto;\n right: 0;\n width: 36px;\n top: 0;\n bottom: 0;\n cursor: pointer;\n display: flex;\n justify-content: center;\n align-items: center;\n transition:\n background-color .3s var(--n-bezier),\n color .3s var(--n-bezier);\n font-size: var(--n-filter-size);\n color: var(--n-th-icon-color);\n ",[cu("&:hover","\n background-color: var(--n-th-button-color-hover);\n "),fu("show","\n background-color: var(--n-th-button-color-hover);\n "),fu("active","\n background-color: var(--n-th-button-color-hover);\n color: var(--n-th-icon-color-active);\n ")])]),uu("data-table-td","\n padding: var(--n-td-padding);\n text-align: start;\n box-sizing: border-box;\n border: none;\n background-color: var(--n-merged-td-color);\n color: var(--n-td-text-color);\n border-bottom: 1px solid var(--n-merged-border-color);\n transition:\n box-shadow .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n border-color .3s var(--n-bezier),\n color .3s var(--n-bezier);\n ",[fu("expand",[uu("data-table-expand-trigger","\n margin-right: 0;\n ")]),fu("last-row","\n border-bottom: 0 solid var(--n-merged-border-color);\n ",[cu("&::after","\n bottom: 0 !important;\n "),cu("&::before","\n bottom: 0 !important;\n ")]),fu("summary","\n background-color: var(--n-merged-th-color);\n "),fu("hover","\n background-color: var(--n-merged-td-color-hover);\n "),fu("sorting","\n background-color: var(--n-merged-td-color-sorting);\n "),pu("ellipsis","\n display: inline-block;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n max-width: 100%;\n vertical-align: bottom;\n max-width: calc(100% - var(--indent-offset, -1.5) * 16px - 24px);\n "),fu("selection, expand","\n text-align: center;\n padding: 0;\n line-height: 0;\n "),t_]),uu("data-table-empty","\n box-sizing: border-box;\n padding: var(--n-empty-padding);\n flex-grow: 1;\n flex-shrink: 0;\n opacity: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n transition: opacity .3s var(--n-bezier);\n ",[fu("hide","\n opacity: 0;\n ")]),pu("pagination","\n margin: var(--n-pagination-margin);\n display: flex;\n justify-content: flex-end;\n "),uu("data-table-wrapper","\n position: relative;\n opacity: 1;\n transition: opacity .3s var(--n-bezier), border-color .3s var(--n-bezier);\n border-top-left-radius: var(--n-border-radius);\n border-top-right-radius: var(--n-border-radius);\n line-height: var(--n-line-height);\n "),fu("loading",[uu("data-table-wrapper","\n opacity: var(--n-opacity-loading);\n pointer-events: none;\n ")]),fu("single-column",[uu("data-table-td","\n border-bottom: 0 solid var(--n-merged-border-color);\n ",[cu("&::after, &::before","\n bottom: 0 !important;\n ")])]),hu("single-line",[uu("data-table-th","\n border-right: 1px solid var(--n-merged-border-color);\n ",[fu("last","\n border-right: 0 solid var(--n-merged-border-color);\n ")]),uu("data-table-td","\n border-right: 1px solid var(--n-merged-border-color);\n ",[fu("last-col","\n border-right: 0 solid var(--n-merged-border-color);\n ")])]),fu("bordered",[uu("data-table-wrapper","\n border: 1px solid var(--n-merged-border-color);\n border-bottom-left-radius: var(--n-border-radius);\n border-bottom-right-radius: var(--n-border-radius);\n overflow: hidden;\n ")]),uu("data-table-base-table",[fu("transition-disabled",[uu("data-table-th",[cu("&::after, &::before","transition: none;")]),uu("data-table-td",[cu("&::after, &::before","transition: none;")])])]),fu("bottom-bordered",[uu("data-table-td",[fu("last-row","\n border-bottom: 1px solid var(--n-merged-border-color);\n ")])]),uu("data-table-table","\n font-variant-numeric: tabular-nums;\n width: 100%;\n word-break: break-word;\n transition: background-color .3s var(--n-bezier);\n border-collapse: separate;\n border-spacing: 0;\n background-color: var(--n-merged-td-color);\n "),uu("data-table-base-table-header","\n border-top-left-radius: calc(var(--n-border-radius) - 1px);\n border-top-right-radius: calc(var(--n-border-radius) - 1px);\n z-index: 3;\n overflow: scroll;\n flex-shrink: 0;\n transition: border-color .3s var(--n-bezier);\n scrollbar-width: none;\n ",[cu("&::-webkit-scrollbar, &::-webkit-scrollbar-track-piece, &::-webkit-scrollbar-thumb","\n display: none;\n width: 0;\n height: 0;\n ")]),uu("data-table-check-extra","\n transition: color .3s var(--n-bezier);\n color: var(--n-th-icon-color);\n position: absolute;\n font-size: 14px;\n right: -4px;\n top: 50%;\n transform: translateY(-50%);\n z-index: 1;\n ")]),uu("data-table-filter-menu",[uu("scrollbar","\n max-height: 240px;\n "),pu("group","\n display: flex;\n flex-direction: column;\n padding: 12px 12px 0 12px;\n ",[uu("checkbox","\n margin-bottom: 12px;\n margin-right: 0;\n "),uu("radio","\n margin-bottom: 12px;\n margin-right: 0;\n ")]),pu("action","\n padding: var(--n-action-padding);\n display: flex;\n flex-wrap: nowrap;\n justify-content: space-evenly;\n border-top: 1px solid var(--n-action-divider-color);\n ",[uu("button",[cu("&:not(:last-child)","\n margin: var(--n-action-button-margin);\n "),cu("&:last-child","\n margin-right: 0;\n ")])]),uu("divider","\n margin: 0 !important;\n ")]),gu(uu("data-table","\n --n-merged-th-color: var(--n-th-color-modal);\n --n-merged-td-color: var(--n-td-color-modal);\n --n-merged-border-color: var(--n-border-color-modal);\n --n-merged-th-color-hover: var(--n-th-color-hover-modal);\n --n-merged-td-color-hover: var(--n-td-color-hover-modal);\n --n-merged-th-color-sorting: var(--n-th-color-hover-modal);\n --n-merged-td-color-sorting: var(--n-td-color-hover-modal);\n --n-merged-td-color-striped: var(--n-td-color-striped-modal);\n ")),bu(uu("data-table","\n --n-merged-th-color: var(--n-th-color-popover);\n --n-merged-td-color: var(--n-td-color-popover);\n --n-merged-border-color: var(--n-border-color-popover);\n --n-merged-th-color-hover: var(--n-th-color-hover-popover);\n --n-merged-td-color-hover: var(--n-td-color-hover-popover);\n --n-merged-th-color-sorting: var(--n-th-color-hover-popover);\n --n-merged-td-color-sorting: var(--n-td-color-hover-popover);\n --n-merged-td-color-striped: var(--n-td-color-striped-popover);\n "))]);function r_(e,t){const n=gi((()=>function(e,t){const n=[],r=[],o=[],i=new WeakMap;let a=-1,l=0,s=!1,c=0;return function e(i,d){d>a&&(n[d]=[],a=d),i.forEach((n=>{if("children"in n)e(n.children,d+1);else{const e="key"in n?n.key:void 0;r.push({key:GS(n),style:XS(n,void 0!==e?Qh(t(e)):void 0),column:n,index:c++,width:void 0===n.width?128:Number(n.width)}),l+=1,s||(s=!!n.ellipsis),o.push(n)}}))}(e,0),c=0,function e(t,r){let o=0;t.forEach((t=>{var s;if("children"in t){const o=c,a={column:t,colIndex:c,colSpan:0,rowSpan:1,isLast:!1};e(t.children,r+1),t.children.forEach((e=>{var t,n;a.colSpan+=null!==(n=null===(t=i.get(e))||void 0===t?void 0:t.colSpan)&&void 0!==n?n:0})),o+a.colSpan===l&&(a.isLast=!0),i.set(t,a),n[r].push(a)}else{if(c1&&(o=c+e);const d={column:t,colSpan:e,colIndex:c,rowSpan:a-r+1,isLast:c+e===l};i.set(t,d),n[r].push(d),c+=1}}))}(e,0),{hasEllipsis:s,rows:n,cols:r,dataRelatedCols:o}}(e.columns,t)));return{rowsRef:gi((()=>n.value.rows)),colsRef:gi((()=>n.value.cols)),hasEllipsisRef:gi((()=>n.value.hasEllipsis)),dataRelatedColsRef:gi((()=>n.value.dataRelatedCols))}}function o_(e,{mainTableInstRef:t,mergedCurrentPageRef:n,bodyWidthRef:r}){let o=0;const i=$t(),a=$t(null),l=$t([]),s=$t(null),c=$t([]),d=gi((()=>Qh(e.scrollX))),u=gi((()=>e.columns.filter((e=>"left"===e.fixed)))),p=gi((()=>e.columns.filter((e=>"right"===e.fixed)))),f=gi((()=>{const e={};let t=0;return function n(r){r.forEach((r=>{const o={start:t,end:0};e[GS(r)]=o,"children"in r?(n(r.children),o.end=t):(t+=VS(r)||0,o.end=t)}))}(u.value),e})),h=gi((()=>{const e={};let t=0;return function n(r){for(let o=r.length-1;o>=0;--o){const i=r[o],a={start:t,end:0};e[GS(i)]=a,"children"in i?(n(i.children),a.end=t):(t+=VS(i)||0,a.end=t)}}(p.value),e}));function g(){return{header:t.value?t.value.getHeaderElement():null,body:t.value?t.value.getBodyElement():null}}function b(){const{header:t,body:n}=g();if(!n)return;const{value:d}=r;if(null!==d){if(e.maxHeight||e.flexHeight){if(!t)return;const e=o-t.scrollLeft;i.value=0!==e?"head":"body","head"===i.value?(o=t.scrollLeft,n.scrollLeft=o):(o=n.scrollLeft,t.scrollLeft=o)}else o=n.scrollLeft;!function(){var e,t;const{value:n}=u;let r=0;const{value:i}=f;let l=null;for(let a=0;a((null===(e=i[s])||void 0===e?void 0:e.start)||0)-r))break;l=s,r=(null===(t=i[s])||void 0===t?void 0:t.end)||0}a.value=l}(),function(){l.value=[];let t=e.columns.find((e=>GS(e)===a.value));for(;t&&"children"in t;){const e=t.children.length;if(0===e)break;const n=t.children[e-1];l.value.push(GS(n)),t=n}}(),function(){var t,n;const{value:i}=p,a=Number(e.scrollX),{value:l}=r;if(null===l)return;let c=0,d=null;const{value:u}=h;for(let e=i.length-1;e>=0;--e){const r=GS(i[e]);if(!(Math.round(o+((null===(t=u[r])||void 0===t?void 0:t.start)||0)+l-c)GS(e)===s.value));for(;t&&"children"in t&&t.children.length;){const e=t.children[0];c.value.push(GS(e)),t=e}}()}}return go(n,(()=>{!function(){const{body:e}=g();e&&(e.scrollTop=0)}()})),{styleScrollXRef:d,fixedColumnLeftMapRef:f,fixedColumnRightMapRef:h,leftFixedColumnsRef:u,rightFixedColumnsRef:p,leftActiveFixedColKeyRef:a,leftActiveFixedChildrenColKeysRef:l,rightActiveFixedColKeyRef:s,rightActiveFixedChildrenColKeysRef:c,syncScrollState:b,handleTableBodyScroll:function(t){var n;null===(n=e.onScroll)||void 0===n||n.call(e,t),"head"!==i.value?Su(b):i.value=void 0},handleTableHeaderScroll:function(){"body"!==i.value?Su(b):i.value=void 0},setHeaderScrollLeft:function(e){const{header:t}=g();t&&(t.scrollLeft=e,b())}}}function i_(e){return"object"==typeof e&&"number"==typeof e.multiple&&e.multiple}function a_(e,{dataRelatedColsRef:t,filteredDataRef:n}){const r=[];t.value.forEach((e=>{var t;void 0!==e.sorter&&c(r,{columnKey:e.key,sorter:e.sorter,order:null!==(t=e.defaultSortOrder)&&void 0!==t&&t})}));const o=$t(r),i=gi((()=>{const e=t.value.filter((e=>"selection"!==e.type&&void 0!==e.sorter&&("ascend"===e.sortOrder||"descend"===e.sortOrder||!1===e.sortOrder))),n=e.filter((e=>!1!==e.sortOrder));if(n.length)return n.map((e=>({columnKey:e.key,order:e.sortOrder,sorter:e.sorter})));if(e.length)return[];const{value:r}=o;return Array.isArray(r)?r:r?[r]:[]}));function a(e){const t=function(e){let t=i.value.slice();return e&&!1!==i_(e.sorter)?(t=t.filter((e=>!1!==i_(e.sorter))),c(t,e),t):e||null}(e);l(t)}function l(t){const{"onUpdate:sorter":n,onUpdateSorter:r,onSorterChange:i}=e;n&&og(n,t),r&&og(r,t),i&&og(i,t),o.value=t}function s(){l(null)}function c(e,t){const n=e.findIndex((e=>(null==t?void 0:t.columnKey)&&e.columnKey===t.columnKey));void 0!==n&&n>=0?e[n]=t:e.push(t)}return{clearSorter:s,sort:function(e,n="ascend"){if(e){const r=t.value.find((t=>"selection"!==t.type&&"expand"!==t.type&&t.key===e));if(!(null==r?void 0:r.sorter))return;const o=r.sorter;a({columnKey:e,sorter:o,order:n})}else s()},sortedDataRef:gi((()=>{const e=i.value.slice().sort(((e,t)=>{const n=i_(e.sorter)||0;return(i_(t.sorter)||0)-n}));if(e.length){return n.value.slice().sort(((t,n)=>{let r=0;return e.some((e=>{const{columnKey:o,sorter:i,order:a}=e,l=function(e,t){return t&&(void 0===e||"default"===e||"object"==typeof e&&"default"===e.compare)?function(e){return(t,n)=>{const r=t[e],o=n[e];return null==r?null==o?0:-1:null==o?1:"number"==typeof r&&"number"==typeof o?r-o:"string"==typeof r&&"string"==typeof o?r.localeCompare(o):0}}(t):"function"==typeof e?e:!(!e||"object"!=typeof e||!e.compare||"default"===e.compare)&&e.compare}(i,o);return!(!l||!a||(r=l(t.rawNode,n.rawNode),0===r))&&(r*=function(e){return"ascend"===e?1:"descend"===e?-1:0}(a),!0)})),r}))}return n.value})),mergedSortStateRef:i,deriveNextSorter:a}}const l_=qn({name:"DataTable",alias:["AdvancedTable"],props:qS,slots:Object,setup(e,{slots:t}){const{mergedBorderedRef:n,mergedClsPrefixRef:r,inlineThemeDisabled:o,mergedRtlRef:i}=wg(e),a=yy("DataTable",i,r),l=gi((()=>{const{bottomBordered:t}=e;return!n.value&&(void 0===t||t)})),s=Ey("DataTable","-data-table",n_,US,e,r),c=$t(null),d=$t(null),{getResizableWidth:u,clearResizableWidth:p,doUpdateResizableWidth:f}=function(){const e=$t({});return{getResizableWidth:function(t){return e.value[t]},doUpdateResizableWidth:function(t,n){JS(t)&&"key"in t&&(e.value[t.key]=n)},clearResizableWidth:function(){e.value={}}}}(),{rowsRef:h,colsRef:g,dataRelatedColsRef:b,hasEllipsisRef:v}=r_(e,u),{treeMateRef:m,mergedCurrentPageRef:y,paginatedDataRef:x,rawPaginatedDataRef:w,selectionColumnRef:C,hoverKeyRef:S,mergedPaginationRef:k,mergedFilterStateRef:_,mergedSortStateRef:E,childTriggerColIndexRef:R,doUpdatePage:O,doUpdateFilters:A,onUnstableColumnResize:P,deriveNextSorter:T,filter:$,filters:z,clearFilter:M,clearFilters:F,clearSorter:N,page:B,sort:I}=function(e,{dataRelatedColsRef:t}){const n=gi((()=>{const t=e=>{for(let n=0;n{const{childrenKey:t}=e;return Pw(e.data,{ignoreEmptyChildren:!0,getKey:e.rowKey,getChildren:e=>e[t],getDisabled:e=>{var t,r;return!!(null===(r=null===(t=n.value)||void 0===t?void 0:t.disabled)||void 0===r?void 0:r.call(t,e))}})})),o=hp((()=>{const{columns:t}=e,{length:n}=t;let r=null;for(let e=0;e{const e=t.value.filter((e=>void 0!==e.filterOptionValues||void 0!==e.filterOptionValue)),n={};return e.forEach((e=>{var t;"selection"!==e.type&&"expand"!==e.type&&(void 0===e.filterOptionValues?n[e.key]=null!==(t=e.filterOptionValue)&&void 0!==t?t:null:n[e.key]=e.filterOptionValues)})),Object.assign(ZS(i.value),n)})),d=gi((()=>{const t=c.value,{columns:n}=e;function o(e){return(t,n)=>!!~String(n[e]).indexOf(String(t))}const{value:{treeNodes:i}}=r,a=[];return n.forEach((e=>{"selection"===e.type||"expand"===e.type||"children"in e||a.push([e.key,e])})),i?i.filter((e=>{const{rawNode:n}=e;for(const[r,i]of a){let e=t[r];if(null==e)continue;if(Array.isArray(e)||(e=[e]),!e.length)continue;const a="default"===i.filter?o(r):i.filter;if(i&&"function"==typeof a){if("and"!==i.filterMode){if(e.some((e=>a(e,n))))continue;return!1}if(e.some((e=>!a(e,n))))return!1}}return!0})):[]})),{sortedDataRef:u,deriveNextSorter:p,mergedSortStateRef:f,sort:h,clearSorter:g}=a_(e,{dataRelatedColsRef:t,filteredDataRef:d});t.value.forEach((e=>{var t;if(e.filter){const n=e.defaultFilterOptionValues;e.filterMultiple?i.value[e.key]=n||[]:i.value[e.key]=void 0!==n?null===n?[]:n:null!==(t=e.defaultFilterOptionValue)&&void 0!==t?t:null}}));const b=gi((()=>{const{pagination:t}=e;if(!1!==t)return t.page})),v=gi((()=>{const{pagination:t}=e;if(!1!==t)return t.pageSize})),m=$p(b,l),y=$p(v,s),x=hp((()=>{const t=m.value;return e.remote?t:Math.max(1,Math.min(Math.ceil(d.value.length/y.value),t))})),w=gi((()=>{const{pagination:t}=e;if(t){const{pageCount:e}=t;if(void 0!==e)return e}})),C=gi((()=>{if(e.remote)return r.value.treeNodes;if(!e.pagination)return u.value;const t=y.value,n=(x.value-1)*t;return u.value.slice(n,n+t)})),S=gi((()=>C.value.map((e=>e.rawNode))));function k(t){const{pagination:n}=e;if(n){const{onChange:e,"onUpdate:page":r,onUpdatePage:o}=n;e&&og(e,t),o&&og(o,t),r&&og(r,t),O(t)}}function _(t){const{pagination:n}=e;if(n){const{onPageSizeChange:e,"onUpdate:pageSize":r,onUpdatePageSize:o}=n;e&&og(e,t),o&&og(o,t),r&&og(r,t),A(t)}}const E=gi((()=>{if(!e.remote)return d.value.length;{const{pagination:t}=e;if(t){const{itemCount:e}=t;if(void 0!==e)return e}}})),R=gi((()=>Object.assign(Object.assign({},e.pagination),{onChange:void 0,onUpdatePage:void 0,onUpdatePageSize:void 0,onPageSizeChange:void 0,"onUpdate:page":k,"onUpdate:pageSize":_,page:x.value,pageSize:y.value,pageCount:void 0===E.value?w.value:void 0,itemCount:E.value})));function O(t){const{"onUpdate:page":n,onPageChange:r,onUpdatePage:o}=e;o&&og(o,t),n&&og(n,t),r&&og(r,t),l.value=t}function A(t){const{"onUpdate:pageSize":n,onPageSizeChange:r,onUpdatePageSize:o}=e;r&&og(r,t),o&&og(o,t),n&&og(n,t),s.value=t}function P(){T({})}function T(e){$(e)}function $(e){e?e&&(i.value=ZS(e)):i.value={}}return{treeMateRef:r,mergedCurrentPageRef:x,mergedPaginationRef:R,paginatedDataRef:C,rawPaginatedDataRef:S,mergedFilterStateRef:c,mergedSortStateRef:f,hoverKeyRef:$t(null),selectionColumnRef:n,childTriggerColIndexRef:o,doUpdateFilters:function(t,n){const{onUpdateFilters:r,"onUpdate:filters":o,onFiltersChange:a}=e;r&&og(r,t,n),o&&og(o,t,n),a&&og(a,t,n),i.value=t},deriveNextSorter:p,doUpdatePageSize:A,doUpdatePage:O,onUnstableColumnResize:function(t,n,r,o){var i;null===(i=e.onUnstableColumnResize)||void 0===i||i.call(e,t,n,r,o)},filter:$,filters:T,clearFilter:function(){P()},clearFilters:P,clearSorter:g,page:function(e){O(e)},sort:h}}(e,{dataRelatedColsRef:b}),{doCheckAll:L,doUncheckAll:j,doCheck:D,doUncheck:H,headerCheckboxDisabledRef:W,someRowsCheckedRef:U,allRowsCheckedRef:q,mergedCheckedRowKeySetRef:K,mergedInderminateRowKeySetRef:V}=function(e,t){const{paginatedDataRef:n,treeMateRef:r,selectionColumnRef:o}=t,i=$t(e.defaultCheckedRowKeys),a=gi((()=>{var t;const{checkedRowKeys:n}=e,a=void 0===n?i.value:n;return!1===(null===(t=o.value)||void 0===t?void 0:t.multiple)?{checkedKeys:a.slice(0,1),indeterminateKeys:[]}:r.value.getCheckedKeys(a,{cascade:e.cascade,allowNotLoaded:e.allowCheckingNotLoaded})})),l=gi((()=>a.value.checkedKeys)),s=gi((()=>a.value.indeterminateKeys)),c=gi((()=>new Set(l.value))),d=gi((()=>new Set(s.value))),u=gi((()=>{const{value:e}=c;return n.value.reduce(((t,n)=>{const{key:r,disabled:o}=n;return t+(!o&&e.has(r)?1:0)}),0)})),p=gi((()=>n.value.filter((e=>e.disabled)).length)),f=gi((()=>{const{length:e}=n.value,{value:t}=d;return u.value>0&&u.valuet.has(e.key)))})),h=gi((()=>{const{length:e}=n.value;return 0!==u.value&&u.value===e-p.value})),g=gi((()=>0===n.value.length));function b(t,n,o){const{"onUpdate:checkedRowKeys":a,onUpdateCheckedRowKeys:l,onCheckedRowKeysChange:s}=e,c=[],{value:{getNode:d}}=r;t.forEach((e=>{var t;const n=null===(t=d(e))||void 0===t?void 0:t.rawNode;c.push(n)})),a&&og(a,t,c,{row:n,action:o}),l&&og(l,t,c,{row:n,action:o}),s&&og(s,t,c,{row:n,action:o}),i.value=t}return{mergedCheckedRowKeySetRef:c,mergedCheckedRowKeysRef:l,mergedInderminateRowKeySetRef:d,someRowsCheckedRef:f,allRowsCheckedRef:h,headerCheckboxDisabledRef:g,doUpdateCheckedRowKeys:b,doCheckAll:function(t=!1){const{value:i}=o;if(!i||e.loading)return;const a=[];(t?r.value.treeNodes:n.value).forEach((e=>{e.disabled||a.push(e.key)})),b(r.value.check(a,l.value,{cascade:!0,allowNotLoaded:e.allowCheckingNotLoaded}).checkedKeys,void 0,"checkAll")},doUncheckAll:function(t=!1){const{value:i}=o;if(!i||e.loading)return;const a=[];(t?r.value.treeNodes:n.value).forEach((e=>{e.disabled||a.push(e.key)})),b(r.value.uncheck(a,l.value,{cascade:!0,allowNotLoaded:e.allowCheckingNotLoaded}).checkedKeys,void 0,"uncheckAll")},doCheck:function(t,n=!1,o){e.loading||b(n?Array.isArray(t)?t.slice(0,1):[t]:r.value.check(t,l.value,{cascade:e.cascade,allowNotLoaded:e.allowCheckingNotLoaded}).checkedKeys,o,"check")},doUncheck:function(t,n){e.loading||b(r.value.uncheck(t,l.value,{cascade:e.cascade,allowNotLoaded:e.allowCheckingNotLoaded}).checkedKeys,n,"uncheck")}}}(e,{selectionColumnRef:C,treeMateRef:m,paginatedDataRef:x}),{stickyExpandedRowsRef:G,mergedExpandedRowKeysRef:Z,renderExpandRef:X,expandableRef:Q,doUpdateExpandedRowKeys:Y}=function(e,t){const n=hp((()=>{for(const t of e.columns)if("expand"===t.type)return t.renderExpand})),r=hp((()=>{let t;for(const n of e.columns)if("expand"===n.type){t=n.expandable;break}return t})),o=$t(e.defaultExpandAll?(null==n?void 0:n.value)?(()=>{const e=[];return t.value.treeNodes.forEach((t=>{var n;(null===(n=r.value)||void 0===n?void 0:n.call(r,t.rawNode))&&e.push(t.key)})),e})():t.value.getNonLeafKeys():e.defaultExpandedRowKeys),i=Dt(e,"expandedRowKeys");return{stickyExpandedRowsRef:Dt(e,"stickyExpandedRows"),mergedExpandedRowKeysRef:$p(i,o),renderExpandRef:n,expandableRef:r,doUpdateExpandedRowKeys:function(t){const{onUpdateExpandedRowKeys:n,"onUpdate:expandedRowKeys":r}=e;n&&og(n,t),r&&og(r,t),o.value=t}}}(e,m),{handleTableBodyScroll:J,handleTableHeaderScroll:ee,syncScrollState:te,setHeaderScrollLeft:ne,leftActiveFixedColKeyRef:re,leftActiveFixedChildrenColKeysRef:oe,rightActiveFixedColKeyRef:ie,rightActiveFixedChildrenColKeysRef:ae,leftFixedColumnsRef:le,rightFixedColumnsRef:se,fixedColumnLeftMapRef:ce,fixedColumnRightMapRef:de}=o_(e,{bodyWidthRef:c,mainTableInstRef:d,mergedCurrentPageRef:y}),{localeRef:ue}=vy("DataTable"),pe=gi((()=>e.virtualScroll||e.flexHeight||void 0!==e.maxHeight||v.value?"fixed":e.tableLayout));Hr(KS,{props:e,treeMateRef:m,renderExpandIconRef:Dt(e,"renderExpandIcon"),loadingKeySetRef:$t(new Set),slots:t,indentRef:Dt(e,"indent"),childTriggerColIndexRef:R,bodyWidthRef:c,componentId:ap(),hoverKeyRef:S,mergedClsPrefixRef:r,mergedThemeRef:s,scrollXRef:gi((()=>e.scrollX)),rowsRef:h,colsRef:g,paginatedDataRef:x,leftActiveFixedColKeyRef:re,leftActiveFixedChildrenColKeysRef:oe,rightActiveFixedColKeyRef:ie,rightActiveFixedChildrenColKeysRef:ae,leftFixedColumnsRef:le,rightFixedColumnsRef:se,fixedColumnLeftMapRef:ce,fixedColumnRightMapRef:de,mergedCurrentPageRef:y,someRowsCheckedRef:U,allRowsCheckedRef:q,mergedSortStateRef:E,mergedFilterStateRef:_,loadingRef:Dt(e,"loading"),rowClassNameRef:Dt(e,"rowClassName"),mergedCheckedRowKeySetRef:K,mergedExpandedRowKeysRef:Z,mergedInderminateRowKeySetRef:V,localeRef:ue,expandableRef:Q,stickyExpandedRowsRef:G,rowKeyRef:Dt(e,"rowKey"),renderExpandRef:X,summaryRef:Dt(e,"summary"),virtualScrollRef:Dt(e,"virtualScroll"),virtualScrollXRef:Dt(e,"virtualScrollX"),heightForRowRef:Dt(e,"heightForRow"),minRowHeightRef:Dt(e,"minRowHeight"),virtualScrollHeaderRef:Dt(e,"virtualScrollHeader"),headerHeightRef:Dt(e,"headerHeight"),rowPropsRef:Dt(e,"rowProps"),stripedRef:Dt(e,"striped"),checkOptionsRef:gi((()=>{const{value:e}=C;return null==e?void 0:e.options})),rawPaginatedDataRef:w,filterMenuCssVarsRef:gi((()=>{const{self:{actionDividerColor:e,actionPadding:t,actionButtonMargin:n}}=s.value;return{"--n-action-padding":t,"--n-action-button-margin":n,"--n-action-divider-color":e}})),onLoadRef:Dt(e,"onLoad"),mergedTableLayoutRef:pe,maxHeightRef:Dt(e,"maxHeight"),minHeightRef:Dt(e,"minHeight"),flexHeightRef:Dt(e,"flexHeight"),headerCheckboxDisabledRef:W,paginationBehaviorOnFilterRef:Dt(e,"paginationBehaviorOnFilter"),summaryPlacementRef:Dt(e,"summaryPlacement"),filterIconPopoverPropsRef:Dt(e,"filterIconPopoverProps"),scrollbarPropsRef:Dt(e,"scrollbarProps"),syncScrollState:te,doUpdatePage:O,doUpdateFilters:A,getResizableWidth:u,onUnstableColumnResize:P,clearResizableWidth:p,doUpdateResizableWidth:f,deriveNextSorter:T,doCheck:D,doUncheck:H,doCheckAll:L,doUncheckAll:j,doUpdateExpandedRowKeys:Y,handleTableHeaderScroll:ee,handleTableBodyScroll:J,setHeaderScrollLeft:ne,renderCell:Dt(e,"renderCell")});const fe={filter:$,filters:z,clearFilters:F,clearSorter:N,page:B,sort:I,clearFilter:M,downloadCsv:t=>{const{fileName:n="data.csv",keepOriginalData:r=!1}=t||{},o=r?e.data:w.value,i=function(e,t,n,r){const o=e.filter((e=>"expand"!==e.type&&"selection"!==e.type&&!1!==e.allowExport));return[o.map((e=>r?r(e):e.title)).join(","),...t.map((e=>o.map((t=>{return n?n(e[t.key],e,t):"string"==typeof(r=e[t.key])?r.replace(/,/g,"\\,"):null==r?"":`${r}`.replace(/,/g,"\\,");var r})).join(",")))].join("\n")}(e.columns,o,e.getCsvCell,e.getCsvHeader),a=new Blob([i],{type:"text/csv;charset=utf-8"}),l=URL.createObjectURL(a);!function(e,t){if(!e)return;const n=document.createElement("a");n.href=e,void 0!==t&&(n.download=t),document.body.appendChild(n),n.click(),document.body.removeChild(n)}(l,n.endsWith(".csv")?n:`${n}.csv`),URL.revokeObjectURL(l)},scrollTo:(e,t)=>{var n;null===(n=d.value)||void 0===n||n.scrollTo(e,t)}},he=gi((()=>{const{size:t}=e,{common:{cubicBezierEaseInOut:n},self:{borderColor:r,tdColorHover:o,tdColorSorting:i,tdColorSortingModal:a,tdColorSortingPopover:l,thColorSorting:c,thColorSortingModal:d,thColorSortingPopover:u,thColor:p,thColorHover:f,tdColor:h,tdTextColor:g,thTextColor:b,thFontWeight:v,thButtonColorHover:m,thIconColor:y,thIconColorActive:x,filterSize:w,borderRadius:C,lineHeight:S,tdColorModal:k,thColorModal:_,borderColorModal:E,thColorHoverModal:R,tdColorHoverModal:O,borderColorPopover:A,thColorPopover:P,tdColorPopover:T,tdColorHoverPopover:$,thColorHoverPopover:z,paginationMargin:M,emptyPadding:F,boxShadowAfter:N,boxShadowBefore:B,sorterSize:I,resizableContainerSize:L,resizableSize:j,loadingColor:D,loadingSize:H,opacityLoading:W,tdColorStriped:U,tdColorStripedModal:q,tdColorStripedPopover:K,[yu("fontSize",t)]:V,[yu("thPadding",t)]:G,[yu("tdPadding",t)]:Z}}=s.value;return{"--n-font-size":V,"--n-th-padding":G,"--n-td-padding":Z,"--n-bezier":n,"--n-border-radius":C,"--n-line-height":S,"--n-border-color":r,"--n-border-color-modal":E,"--n-border-color-popover":A,"--n-th-color":p,"--n-th-color-hover":f,"--n-th-color-modal":_,"--n-th-color-hover-modal":R,"--n-th-color-popover":P,"--n-th-color-hover-popover":z,"--n-td-color":h,"--n-td-color-hover":o,"--n-td-color-modal":k,"--n-td-color-hover-modal":O,"--n-td-color-popover":T,"--n-td-color-hover-popover":$,"--n-th-text-color":b,"--n-td-text-color":g,"--n-th-font-weight":v,"--n-th-button-color-hover":m,"--n-th-icon-color":y,"--n-th-icon-color-active":x,"--n-filter-size":w,"--n-pagination-margin":M,"--n-empty-padding":F,"--n-box-shadow-before":B,"--n-box-shadow-after":N,"--n-sorter-size":I,"--n-resizable-container-size":L,"--n-resizable-size":j,"--n-loading-size":H,"--n-loading-color":D,"--n-opacity-loading":W,"--n-td-color-striped":U,"--n-td-color-striped-modal":q,"--n-td-color-striped-popover":K,"n-td-color-sorting":i,"n-td-color-sorting-modal":a,"n-td-color-sorting-popover":l,"n-th-color-sorting":c,"n-th-color-sorting-modal":d,"n-th-color-sorting-popover":u}})),ge=o?Sg("data-table",gi((()=>e.size[0])),he,e):void 0,be=gi((()=>{if(!e.pagination)return!1;if(e.paginateSinglePage)return!0;const t=k.value,{pageCount:n}=t;return void 0!==n?n>1:t.itemCount&&t.pageSize&&t.itemCount>t.pageSize}));return Object.assign({mainTableInstRef:d,mergedClsPrefix:r,rtlEnabled:a,mergedTheme:s,paginatedData:x,mergedBordered:n,mergedBottomBordered:l,mergedPagination:k,mergedShowPagination:be,cssVars:o?void 0:he,themeClass:null==ge?void 0:ge.themeClass,onRender:null==ge?void 0:ge.onRender},fe)},render(){const{mergedClsPrefix:e,themeClass:t,onRender:n,$slots:r,spinProps:o}=this;return null==n||n(),bi("div",{class:[`${e}-data-table`,this.rtlEnabled&&`${e}-data-table--rtl`,t,{[`${e}-data-table--bordered`]:this.mergedBordered,[`${e}-data-table--bottom-bordered`]:this.mergedBottomBordered,[`${e}-data-table--single-line`]:this.singleLine,[`${e}-data-table--single-column`]:this.singleColumn,[`${e}-data-table--loading`]:this.loading,[`${e}-data-table--flex-height`]:this.flexHeight}],style:this.cssVars},bi("div",{class:`${e}-data-table-wrapper`},bi(e_,{ref:"mainTableInstRef"})),this.mergedShowPagination?bi("div",{class:`${e}-data-table__pagination`},bi(FS,Object.assign({theme:this.mergedTheme.peers.Pagination,themeOverrides:this.mergedTheme.peerOverrides.Pagination,disabled:this.loading},this.mergedPagination))):null,bi(Ai,{name:"fade-in-scale-up-transition"},{default:()=>this.loading?bi("div",{class:`${e}-data-table-loading-wrapper`},hg(r.loading,(()=>[bi(cx,Object.assign({clsPrefix:e,strokeWidth:20},o))]))):null}))}}),s_="n-dialog-provider",c_="n-dialog-api";function d_(){const e=Wr(c_,null);return null===e&&rg("use-dialog","No outer founded."),e}const u_={titleFontSize:"18px",padding:"16px 28px 20px 28px",iconSize:"28px",actionSpace:"12px",contentMargin:"8px 0 16px 0",iconMargin:"0 4px 0 0",iconMarginIconTop:"4px 0 8px 0",closeSize:"22px",closeIconSize:"18px",closeMargin:"20px 26px 0 0",closeMarginIconTop:"10px 16px 0 0"};const p_={name:"Dialog",common:nw,peers:{Button:WC},self:function(e){const{textColor1:t,textColor2:n,modalColor:r,closeIconColor:o,closeIconColorHover:i,closeIconColorPressed:a,closeColorHover:l,closeColorPressed:s,infoColor:c,successColor:d,warningColor:u,errorColor:p,primaryColor:f,dividerColor:h,borderRadius:g,fontWeightStrong:b,lineHeight:v,fontSize:m}=e;return Object.assign(Object.assign({},u_),{fontSize:m,lineHeight:v,border:`1px solid ${h}`,titleTextColor:t,textColor:n,color:r,closeColorHover:l,closeColorPressed:s,closeIconColor:o,closeIconColorHover:i,closeIconColorPressed:a,closeBorderRadius:g,iconColor:f,iconColorInfo:c,iconColorSuccess:d,iconColorWarning:u,iconColorError:p,borderRadius:g,titleFontWeight:b})}},f_={icon:Function,type:{type:String,default:"default"},title:[String,Function],closable:{type:Boolean,default:!0},negativeText:String,positiveText:String,positiveButtonProps:Object,negativeButtonProps:Object,content:[String,Function],action:Function,showIcon:{type:Boolean,default:!0},loading:Boolean,bordered:Boolean,iconPlacement:String,titleClass:[String,Array],titleStyle:[String,Object],contentClass:[String,Array],contentStyle:[String,Object],actionClass:[String,Array],actionStyle:[String,Object],onPositiveClick:Function,onNegativeClick:Function,onClose:Function},h_=cg(f_),g_=cu([uu("dialog","\n --n-icon-margin: var(--n-icon-margin-top) var(--n-icon-margin-right) var(--n-icon-margin-bottom) var(--n-icon-margin-left);\n word-break: break-word;\n line-height: var(--n-line-height);\n position: relative;\n background: var(--n-color);\n color: var(--n-text-color);\n box-sizing: border-box;\n margin: auto;\n border-radius: var(--n-border-radius);\n padding: var(--n-padding);\n transition: \n border-color .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n color .3s var(--n-bezier);\n ",[pu("icon",{color:"var(--n-icon-color)"}),fu("bordered",{border:"var(--n-border)"}),fu("icon-top",[pu("close",{margin:"var(--n-close-margin)"}),pu("icon",{margin:"var(--n-icon-margin)"}),pu("content",{textAlign:"center"}),pu("title",{justifyContent:"center"}),pu("action",{justifyContent:"center"})]),fu("icon-left",[pu("icon",{margin:"var(--n-icon-margin)"}),fu("closable",[pu("title","\n padding-right: calc(var(--n-close-size) + 6px);\n ")])]),pu("close","\n position: absolute;\n right: 0;\n top: 0;\n margin: var(--n-close-margin);\n transition:\n background-color .3s var(--n-bezier),\n color .3s var(--n-bezier);\n z-index: 1;\n "),pu("content","\n font-size: var(--n-font-size);\n margin: var(--n-content-margin);\n position: relative;\n word-break: break-word;\n ",[fu("last","margin-bottom: 0;")]),pu("action","\n display: flex;\n justify-content: flex-end;\n ",[cu("> *:not(:last-child)","\n margin-right: var(--n-action-space);\n ")]),pu("icon","\n font-size: var(--n-icon-size);\n transition: color .3s var(--n-bezier);\n "),pu("title","\n transition: color .3s var(--n-bezier);\n display: flex;\n align-items: center;\n font-size: var(--n-title-font-size);\n font-weight: var(--n-title-font-weight);\n color: var(--n-title-text-color);\n "),uu("dialog-icon-container","\n display: flex;\n justify-content: center;\n ")]),gu(uu("dialog","\n width: 446px;\n max-width: calc(100vw - 32px);\n ")),uu("dialog",[vu("\n width: 446px;\n max-width: calc(100vw - 32px);\n ")])]),b_={default:()=>bi(Gy,null),info:()=>bi(Gy,null),success:()=>bi(Xy,null),warning:()=>bi(Qy,null),error:()=>bi(Dy,null)},v_=qn({name:"Dialog",alias:["NimbusConfirmCard","Confirm"],props:Object.assign(Object.assign({},Ey.props),f_),slots:Object,setup(e){const{mergedComponentPropsRef:t,mergedClsPrefixRef:n,inlineThemeDisabled:r,mergedRtlRef:o}=wg(e),i=yy("Dialog",o,n),a=gi((()=>{var n,r;const{iconPlacement:o}=e;return o||(null===(r=null===(n=null==t?void 0:t.value)||void 0===n?void 0:n.Dialog)||void 0===r?void 0:r.iconPlacement)||"left"}));const l=Ey("Dialog","-dialog",g_,p_,e,n),s=gi((()=>{const{type:t}=e,n=a.value,{common:{cubicBezierEaseInOut:r},self:{fontSize:o,lineHeight:i,border:s,titleTextColor:c,textColor:d,color:u,closeBorderRadius:p,closeColorHover:f,closeColorPressed:h,closeIconColor:g,closeIconColorHover:b,closeIconColorPressed:v,closeIconSize:m,borderRadius:y,titleFontWeight:x,titleFontSize:w,padding:C,iconSize:S,actionSpace:k,contentMargin:_,closeSize:E,["top"===n?"iconMarginIconTop":"iconMargin"]:R,["top"===n?"closeMarginIconTop":"closeMargin"]:O,[yu("iconColor",t)]:A}}=l.value,P=Au(R);return{"--n-font-size":o,"--n-icon-color":A,"--n-bezier":r,"--n-close-margin":O,"--n-icon-margin-top":P.top,"--n-icon-margin-right":P.right,"--n-icon-margin-bottom":P.bottom,"--n-icon-margin-left":P.left,"--n-icon-size":S,"--n-close-size":E,"--n-close-icon-size":m,"--n-close-border-radius":p,"--n-close-color-hover":f,"--n-close-color-pressed":h,"--n-close-icon-color":g,"--n-close-icon-color-hover":b,"--n-close-icon-color-pressed":v,"--n-color":u,"--n-text-color":d,"--n-border-radius":y,"--n-padding":C,"--n-line-height":i,"--n-border":s,"--n-content-margin":_,"--n-title-font-size":w,"--n-title-font-weight":x,"--n-title-text-color":c,"--n-action-space":k}})),c=r?Sg("dialog",gi((()=>`${e.type[0]}${a.value[0]}`)),s,e):void 0;return{mergedClsPrefix:n,rtlEnabled:i,mergedIconPlacement:a,mergedTheme:l,handlePositiveClick:function(t){const{onPositiveClick:n}=e;n&&n(t)},handleNegativeClick:function(t){const{onNegativeClick:n}=e;n&&n(t)},handleCloseClick:function(){const{onClose:t}=e;t&&t()},cssVars:r?void 0:s,themeClass:null==c?void 0:c.themeClass,onRender:null==c?void 0:c.onRender}},render(){var e;const{bordered:t,mergedIconPlacement:n,cssVars:r,closable:o,showIcon:i,title:a,content:l,action:s,negativeText:c,positiveText:d,positiveButtonProps:u,negativeButtonProps:p,handlePositiveClick:f,handleNegativeClick:h,mergedTheme:g,loading:b,type:v,mergedClsPrefix:m}=this;null===(e=this.onRender)||void 0===e||e.call(this);const y=i?bi(Oy,{clsPrefix:m,class:`${m}-dialog__icon`},{default:()=>bg(this.$slots.icon,(e=>e||(this.icon?pg(this.icon):b_[this.type]())))}):null,x=bg(this.$slots.action,(e=>e||d||c||s?bi("div",{class:[`${m}-dialog__action`,this.actionClass],style:this.actionStyle},e||(s?[pg(s)]:[this.negativeText&&bi(qC,Object.assign({theme:g.peers.Button,themeOverrides:g.peerOverrides.Button,ghost:!0,size:"small",onClick:h},p),{default:()=>pg(this.negativeText)}),this.positiveText&&bi(qC,Object.assign({theme:g.peers.Button,themeOverrides:g.peerOverrides.Button,size:"small",type:"default"===v?"primary":v,disabled:b,loading:b,onClick:f},u),{default:()=>pg(this.positiveText)})])):null));return bi("div",{class:[`${m}-dialog`,this.themeClass,this.closable&&`${m}-dialog--closable`,`${m}-dialog--icon-${n}`,t&&`${m}-dialog--bordered`,this.rtlEnabled&&`${m}-dialog--rtl`],style:r,role:"dialog"},o?bg(this.$slots.close,(e=>{const t=[`${m}-dialog__close`,this.rtlEnabled&&`${m}-dialog--rtl`];return e?bi("div",{class:t},e):bi(rx,{clsPrefix:m,class:t,onClick:this.handleCloseClick})})):null,i&&"top"===n?bi("div",{class:`${m}-dialog-icon-container`},y):null,bi("div",{class:[`${m}-dialog__title`,this.titleClass],style:this.titleStyle},i&&"left"===n?y:null,hg(this.$slots.header,(()=>[pg(a)]))),bi("div",{class:[`${m}-dialog__content`,x?"":`${m}-dialog__content--last`,this.contentClass],style:this.contentStyle},hg(this.$slots.default,(()=>[pg(l)]))),x)}});const m_={name:"Modal",common:nw,peers:{Scrollbar:ow,Dialog:p_,Card:JC},self:function(e){const{modalColor:t,textColor2:n,boxShadow3:r}=e;return{color:t,textColor:n,boxShadow:r}}},y_="n-draggable";const x_=Object.assign(Object.assign({},tS),f_),w_=cg(x_),C_=qn({name:"ModalBody",inheritAttrs:!1,slots:Object,props:Object.assign(Object.assign({show:{type:Boolean,required:!0},preset:String,displayDirective:{type:String,required:!0},trapFocus:{type:Boolean,default:!0},autoFocus:{type:Boolean,default:!0},blockScroll:Boolean,draggable:{type:[Boolean,Object],default:!1}},x_),{renderMask:Function,onClickoutside:Function,onBeforeLeave:{type:Function,required:!0},onAfterLeave:{type:Function,required:!0},onPositiveClick:{type:Function,required:!0},onNegativeClick:{type:Function,required:!0},onClose:{type:Function,required:!0},onAfterEnter:Function,onEsc:Function}),setup(e){const t=$t(null),n=$t(null),r=$t(e.show),o=$t(null),i=$t(null),a=Wr(Hp);let l=null;go(Dt(e,"show"),(e=>{e&&(l=a.getMousePosition())}),{immediate:!0});const{stopDrag:s,startDrag:c,draggableRef:d,draggableClassRef:u}=function(e,t){let n;const r=gi((()=>!1!==e.value)),o=gi((()=>r.value?y_:"")),i=gi((()=>{const t=e.value;return!0===t||!1===t||!t||"none"!==t.bounds}));function a(){n&&(n(),n=void 0)}return lr(a),{stopDrag:a,startDrag:function(e){const r=e.querySelector(`.${y_}`);if(!r||!o.value)return;let a,l=0,s=0,c=0,d=0,u=0,p=0;function f(t){t.preventDefault(),a=t;const{x:n,y:r,right:o,bottom:i}=e.getBoundingClientRect();s=n,d=r,l=window.innerWidth-o,c=window.innerHeight-i;const{left:f,top:h}=e.style;u=+h.slice(0,-2),p=+f.slice(0,-2)}function h(t){if(!a)return;const{clientX:n,clientY:r}=a;let o=t.clientX-n,f=t.clientY-r;i.value&&(o>l?o=l:-o>s&&(o=-s),f>c?f=c:-f>d&&(f=-d));const h=o+p,g=f+u;e.style.top=`${g}px`,e.style.left=`${h}px`}function g(){a=void 0,t.onEnd(e)}up("mousedown",r,f),up("mousemove",window,h),up("mouseup",window,g),n=()=>{pp("mousedown",r,f),up("mousemove",window,h),up("mouseup",window,g)}},draggableRef:r,draggableClassRef:o}}(Dt(e,"draggable"),{onEnd:e=>{g(e)}}),p=gi((()=>te([e.titleClass,u.value]))),f=gi((()=>te([e.headerClass,u.value])));function h(){if("center"===a.transformOriginRef.value)return"";const{value:e}=o,{value:t}=i;if(null===e||null===t)return"";if(n.value){return`${e}px ${t+n.value.containerScrollTop}px`}return""}function g(e){if("center"===a.transformOriginRef.value)return;if(!l)return;if(!n.value)return;const t=n.value.containerScrollTop,{offsetLeft:r,offsetTop:s}=e,c=l.y,d=l.x;o.value=-(r-d),i.value=-(s-c-t),e.style.transformOrigin=h()}go(Dt(e,"show"),(e=>{e&&(r.value=!0)})),function(e){if("undefined"==typeof document)return;const t=document.documentElement;let n,r=!1;const o=()=>{t.style.marginRight=ef,t.style.overflow=tf,t.style.overflowX=nf,t.style.overflowY=rf,of.value="0px"};rr((()=>{n=go(e,(e=>{if(e){if(!Jp){const e=window.innerWidth-t.offsetWidth;e>0&&(ef=t.style.marginRight,t.style.marginRight=`${e}px`,of.value=`${e}px`),tf=t.style.overflow,nf=t.style.overflowX,rf=t.style.overflowY,t.style.overflow="hidden",t.style.overflowX="hidden",t.style.overflowY="hidden"}r=!0,Jp++}else Jp--,Jp||o(),r=!1}),{immediate:!0})})),ar((()=>{null==n||n(),r&&(Jp--,Jp||o(),r=!1)}))}(gi((()=>e.blockScroll&&r.value)));const b=$t(null);return go(b,(e=>{e&&an((()=>{const n=e.el;n&&t.value!==n&&(t.value=n)}))})),Hr(Dp,t),Hr(jp,null),Hr(Wp,null),{mergedTheme:a.mergedThemeRef,appear:a.appearRef,isMounted:a.isMountedRef,mergedClsPrefix:a.mergedClsPrefixRef,bodyRef:t,scrollbarRef:n,draggableClass:u,displayed:r,childNodeRef:b,cardHeaderClass:f,dialogTitleClass:p,handlePositiveClick:function(){e.onPositiveClick()},handleNegativeClick:function(){e.onNegativeClick()},handleCloseClick:function(){const{onClose:t}=e;t&&t()},handleAfterEnter:function(t){const n=t;d.value&&c(n),e.onAfterEnter&&e.onAfterEnter(n)},handleAfterLeave:function(){r.value=!1,o.value=null,i.value=null,s(),e.onAfterLeave()},handleBeforeLeave:function(t){t.style.transformOrigin=h(),e.onBeforeLeave()},handleEnter:function(e){an((()=>{g(e)}))}}},render(){const{$slots:e,$attrs:t,handleEnter:n,handleAfterEnter:r,handleAfterLeave:o,handleBeforeLeave:i,preset:a,mergedClsPrefix:l}=this;let s=null;if(!a){if(s=function(e,t,n){if(!t)return null;const r=ag(t(n));return 1===r.length?r[0]:null}(0,e.default,{draggableClass:this.draggableClass}),!s)return;s=Ko(s),s.props=Yo({class:`${l}-modal`},t,s.props||{})}return"show"===this.displayDirective||this.displayed||this.show?vn(bi("div",{role:"none",class:`${l}-modal-body-wrapper`},bi(aw,{ref:"scrollbarRef",theme:this.mergedTheme.peers.Scrollbar,themeOverrides:this.mergedTheme.peerOverrides.Scrollbar,contentClass:`${l}-modal-scroll-content`},{default:()=>{var t;return[null===(t=this.renderMask)||void 0===t?void 0:t.call(this),bi(Kh,{disabled:!this.trapFocus,active:this.show,onEsc:this.onEsc,autoFocus:this.autoFocus},{default:()=>{var t;return bi(Ai,{name:"fade-in-scale-up-transition",appear:null!==(t=this.appear)&&void 0!==t?t:this.isMounted,onEnter:n,onAfterEnter:r,onAfterLeave:o,onBeforeLeave:i},{default:()=>{const t=[[qi,this.show]],{onClickoutside:n}=this;return n&&t.push([mf,this.onClickoutside,void 0,{capture:!0}]),vn("confirm"===this.preset||"dialog"===this.preset?bi(v_,Object.assign({},this.$attrs,{class:[`${l}-modal`,this.$attrs.class],ref:"bodyRef",theme:this.mergedTheme.peers.Dialog,themeOverrides:this.mergedTheme.peerOverrides.Dialog},sg(this.$props,h_),{titleClass:this.dialogTitleClass,"aria-modal":"true"}),e):"card"===this.preset?bi(rS,Object.assign({},this.$attrs,{ref:"bodyRef",class:[`${l}-modal`,this.$attrs.class],theme:this.mergedTheme.peers.Card,themeOverrides:this.mergedTheme.peerOverrides.Card},sg(this.$props,nS),{headerClass:this.cardHeaderClass,"aria-modal":"true",role:"dialog"}),e):this.childNodeRef=s,t)}})}})]}})),[[qi,"if"===this.displayDirective||this.displayed||this.show]]):null}}),S_=cu([uu("modal-container","\n position: fixed;\n left: 0;\n top: 0;\n height: 0;\n width: 0;\n display: flex;\n "),uu("modal-mask","\n position: fixed;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, .4);\n ",[ux({enterDuration:".25s",leaveDuration:".25s",enterCubicBezier:"var(--n-bezier-ease-out)",leaveCubicBezier:"var(--n-bezier-ease-out)"})]),uu("modal-body-wrapper","\n position: fixed;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n overflow: visible;\n ",[uu("modal-scroll-content","\n min-height: 100%;\n display: flex;\n position: relative;\n ")]),uu("modal","\n position: relative;\n align-self: center;\n color: var(--n-text-color);\n margin: auto;\n box-shadow: var(--n-box-shadow);\n ",[Dw({duration:".25s",enterScale:".5"}),cu(`.${y_}`,"\n cursor: move;\n user-select: none;\n ")])]),k_=qn({name:"Modal",inheritAttrs:!1,props:Object.assign(Object.assign(Object.assign(Object.assign({},Ey.props),{show:Boolean,unstableShowMask:{type:Boolean,default:!0},maskClosable:{type:Boolean,default:!0},preset:String,to:[String,Object],displayDirective:{type:String,default:"if"},transformOrigin:{type:String,default:"mouse"},zIndex:Number,autoFocus:{type:Boolean,default:!0},trapFocus:{type:Boolean,default:!0},closeOnEsc:{type:Boolean,default:!0},blockScroll:{type:Boolean,default:!0}}),x_),{draggable:[Boolean,Object],onEsc:Function,"onUpdate:show":[Function,Array],onUpdateShow:[Function,Array],onAfterEnter:Function,onBeforeLeave:Function,onAfterLeave:Function,onClose:Function,onPositiveClick:Function,onNegativeClick:Function,onMaskClick:Function,internalDialog:Boolean,internalModal:Boolean,internalAppear:{type:Boolean,default:void 0},overlayStyle:[String,Object],onBeforeHide:Function,onAfterHide:Function,onHide:Function}),slots:Object,setup(e){const t=$t(null),{mergedClsPrefixRef:n,namespaceRef:r,inlineThemeDisabled:o}=wg(e),i=Ey("Modal","-modal",S_,m_,e,n),a=Tp(64),l=Ep(),s=zp(),c=e.internalDialog?Wr(s_,null):null,d=e.internalModal?Wr("n-modal-provider",null):null,u=(Vp&&(nr((()=>{Yp||(window.addEventListener("compositionstart",Xp),window.addEventListener("compositionend",Qp)),Yp++})),ar((()=>{Yp<=1?(window.removeEventListener("compositionstart",Xp),window.removeEventListener("compositionend",Qp),Yp=0):Yp--}))),Zp);function p(t){const{onUpdateShow:n,"onUpdate:show":r,onHide:o}=e;n&&og(n,t),r&&og(r,t),o&&!t&&o(t)}Hr(Hp,{getMousePosition:()=>{const e=c||d;if(e){const{clickedRef:t,clickedPositionRef:n}=e;if(t.value&&n.value)return n.value}return a.value?l.value:null},mergedClsPrefixRef:n,mergedThemeRef:i,isMountedRef:s,appearRef:Dt(e,"internalAppear"),transformOriginRef:Dt(e,"transformOrigin")});const f=gi((()=>{const{common:{cubicBezierEaseOut:e},self:{boxShadow:t,color:n,textColor:r}}=i.value;return{"--n-bezier-ease-out":e,"--n-box-shadow":t,"--n-color":n,"--n-text-color":r}})),h=o?Sg("theme-class",void 0,f,e):void 0;return{mergedClsPrefix:n,namespace:r,isMounted:s,containerRef:t,presetProps:gi((()=>sg(e,w_))),handleEsc:function(t){var n,r;null===(n=e.onEsc)||void 0===n||n.call(e),e.show&&e.closeOnEsc&&(r=t,!eg.has(r))&&(u.value||p(!1))},handleAfterLeave:function(){const{onAfterLeave:t,onAfterHide:n}=e;t&&og(t),n&&n()},handleClickoutside:function(n){var r;const{onMaskClick:o}=e;o&&o(n),e.maskClosable&&(null===(r=t.value)||void 0===r?void 0:r.contains(_u(n)))&&p(!1)},handleBeforeLeave:function(){const{onBeforeLeave:t,onBeforeHide:n}=e;t&&og(t),n&&n()},doUpdateShow:p,handleNegativeClick:function(){const{onNegativeClick:t}=e;t?Promise.resolve(t()).then((e=>{!1!==e&&p(!1)})):p(!1)},handlePositiveClick:function(){const{onPositiveClick:t}=e;t?Promise.resolve(t()).then((e=>{!1!==e&&p(!1)})):p(!1)},handleCloseClick:function(){const{onClose:t}=e;t?Promise.resolve(t()).then((e=>{!1!==e&&p(!1)})):p(!1)},cssVars:o?void 0:f,themeClass:null==h?void 0:h.themeClass,onRender:null==h?void 0:h.onRender}},render(){const{mergedClsPrefix:e}=this;return bi(Af,{to:this.to,show:this.show},{default:()=>{var t;null===(t=this.onRender)||void 0===t||t.call(this);const{unstableShowMask:n}=this;return vn(bi("div",{role:"none",ref:"containerRef",class:[`${e}-modal-container`,this.themeClass,this.namespace],style:this.cssVars},bi(C_,Object.assign({style:this.overlayStyle},this.$attrs,{ref:"bodyWrapper",displayDirective:this.displayDirective,show:this.show,preset:this.preset,autoFocus:this.autoFocus,trapFocus:this.trapFocus,draggable:this.draggable,blockScroll:this.blockScroll},this.presetProps,{onEsc:this.handleEsc,onClose:this.handleCloseClick,onNegativeClick:this.handleNegativeClick,onPositiveClick:this.handlePositiveClick,onBeforeLeave:this.handleBeforeLeave,onAfterEnter:this.onAfterEnter,onAfterLeave:this.handleAfterLeave,onClickoutside:n?void 0:this.handleClickoutside,renderMask:n?()=>{var t;return bi(Ai,{name:"fade-in-transition",key:"mask",appear:null!==(t=this.internalAppear)&&void 0!==t?t:this.isMounted},{default:()=>this.show?bi("div",{"aria-hidden":!0,ref:"containerRef",class:`${e}-modal-mask`,onClick:this.handleClickoutside}):null})}:void 0}),this.$slots)),[[wf,{zIndex:this.zIndex,enabled:this.show}]])}})}}),__=Object.assign(Object.assign({},f_),{onAfterEnter:Function,onAfterLeave:Function,transformOrigin:String,blockScroll:{type:Boolean,default:!0},closeOnEsc:{type:Boolean,default:!0},onEsc:Function,autoFocus:{type:Boolean,default:!0},internalStyle:[String,Object],maskClosable:{type:Boolean,default:!0},onPositiveClick:Function,onNegativeClick:Function,onClose:Function,onMaskClick:Function,draggable:[Boolean,Object]}),E_=qn({name:"DialogEnvironment",props:Object.assign(Object.assign({},__),{internalKey:{type:String,required:!0},to:[String,Object],onInternalAfterLeave:{type:Function,required:!0}}),setup(e){const t=$t(!0);function n(){t.value=!1}return{show:t,hide:n,handleUpdateShow:function(e){t.value=e},handleAfterLeave:function(){const{onInternalAfterLeave:t,internalKey:n,onAfterLeave:r}=e;t&&t(n),r&&r()},handleCloseClick:function(){const{onClose:t}=e;t?Promise.resolve(t()).then((e=>{!1!==e&&n()})):n()},handleNegativeClick:function(t){const{onNegativeClick:r}=e;r?Promise.resolve(r(t)).then((e=>{!1!==e&&n()})):n()},handlePositiveClick:function(t){const{onPositiveClick:r}=e;r?Promise.resolve(r(t)).then((e=>{!1!==e&&n()})):n()},handleMaskClick:function(t){const{onMaskClick:r,maskClosable:o}=e;r&&(r(t),o&&n())},handleEsc:function(){const{onEsc:t}=e;t&&t()}}},render(){const{handlePositiveClick:e,handleUpdateShow:t,handleNegativeClick:n,handleCloseClick:r,handleAfterLeave:o,handleMaskClick:i,handleEsc:a,to:l,maskClosable:s,show:c}=this;return bi(k_,{show:c,onUpdateShow:t,onMaskClick:i,onEsc:a,to:l,maskClosable:s,onAfterEnter:this.onAfterEnter,onAfterLeave:o,closeOnEsc:this.closeOnEsc,blockScroll:this.blockScroll,autoFocus:this.autoFocus,transformOrigin:this.transformOrigin,draggable:this.draggable,internalAppear:!0,internalDialog:!0},{default:({draggableClass:t})=>bi(v_,Object.assign({},sg(this.$props,h_),{titleClass:te([this.titleClass,t]),style:this.internalStyle,onClose:r,onNegativeClick:n,onPositiveClick:e}))})}}),R_=qn({name:"DialogProvider",props:{injectionKey:String,to:[String,Object]},setup(){const e=$t([]),t={};function n(n={}){const r=ap(),o=yt(Object.assign(Object.assign({},n),{key:r,destroy:()=>{var e;null===(e=t[`n-dialog-${r}`])||void 0===e||e.hide()}}));return e.value.push(o),o}const r=["info","success","warning","error"].map((e=>t=>n(Object.assign(Object.assign({},t),{type:e}))));const o={create:n,destroyAll:function(){Object.values(t).forEach((e=>{null==e||e.hide()}))},info:r[0],success:r[1],warning:r[2],error:r[3]};return Hr(c_,o),Hr(s_,{clickedRef:Tp(64),clickedPositionRef:Ep()}),Hr("n-dialog-reactive-list",e),Object.assign(Object.assign({},o),{dialogList:e,dialogInstRefs:t,handleAfterLeave:function(t){const{value:n}=e;n.splice(n.findIndex((e=>e.key===t)),1)}})},render(){var e,t;return bi(Oo,null,[this.dialogList.map((e=>bi(E_,ug(e,["destroy","style"],{internalStyle:e.style,to:this.to,ref:t=>{null===t?delete this.dialogInstRefs[`n-dialog-${e.key}`]:this.dialogInstRefs[`n-dialog-${e.key}`]=t},internalKey:e.key,onInternalAfterLeave:this.handleAfterLeave})))),null===(t=(e=this.$slots).default)||void 0===t?void 0:t.call(e)])}}),O_="n-message-api",A_="n-message-provider",P_={margin:"0 0 8px 0",padding:"10px 20px",maxWidth:"720px",minWidth:"420px",iconMargin:"0 10px 0 0",closeMargin:"0 0 0 10px",closeSize:"20px",closeIconSize:"16px",iconSize:"20px",fontSize:"14px"};const T_={common:nw,self:function(e){const{textColor2:t,closeIconColor:n,closeIconColorHover:r,closeIconColorPressed:o,infoColor:i,successColor:a,errorColor:l,warningColor:s,popoverColor:c,boxShadow2:d,primaryColor:u,lineHeight:p,borderRadius:f,closeColorHover:h,closeColorPressed:g}=e;return Object.assign(Object.assign({},P_),{closeBorderRadius:f,textColor:t,textColorInfo:t,textColorSuccess:t,textColorError:t,textColorWarning:t,textColorLoading:t,color:c,colorInfo:c,colorSuccess:c,colorError:c,colorWarning:c,colorLoading:c,boxShadow:d,boxShadowInfo:d,boxShadowSuccess:d,boxShadowError:d,boxShadowWarning:d,boxShadowLoading:d,iconColor:t,iconColorInfo:i,iconColorSuccess:a,iconColorWarning:s,iconColorError:l,iconColorLoading:u,closeColorHover:h,closeColorPressed:g,closeIconColor:n,closeIconColorHover:r,closeIconColorPressed:o,closeColorHoverInfo:h,closeColorPressedInfo:g,closeIconColorInfo:n,closeIconColorHoverInfo:r,closeIconColorPressedInfo:o,closeColorHoverSuccess:h,closeColorPressedSuccess:g,closeIconColorSuccess:n,closeIconColorHoverSuccess:r,closeIconColorPressedSuccess:o,closeColorHoverError:h,closeColorPressedError:g,closeIconColorError:n,closeIconColorHoverError:r,closeIconColorPressedError:o,closeColorHoverWarning:h,closeColorPressedWarning:g,closeIconColorWarning:n,closeIconColorHoverWarning:r,closeIconColorPressedWarning:o,closeColorHoverLoading:h,closeColorPressedLoading:g,closeIconColorLoading:n,closeIconColorHoverLoading:r,closeIconColorPressedLoading:o,loadingColor:u,lineHeight:p,borderRadius:f})}},$_={icon:Function,type:{type:String,default:"info"},content:[String,Number,Function],showIcon:{type:Boolean,default:!0},closable:Boolean,keepAliveOnHover:Boolean,onClose:Function,onMouseenter:Function,onMouseleave:Function},z_=cu([uu("message-wrapper","\n margin: var(--n-margin);\n z-index: 0;\n transform-origin: top center;\n display: flex;\n ",[SC({overflow:"visible",originalTransition:"transform .3s var(--n-bezier)",enterToProps:{transform:"scale(1)"},leaveToProps:{transform:"scale(0.85)"}})]),uu("message","\n box-sizing: border-box;\n display: flex;\n align-items: center;\n transition:\n color .3s var(--n-bezier),\n box-shadow .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n opacity .3s var(--n-bezier),\n transform .3s var(--n-bezier),\n margin-bottom .3s var(--n-bezier);\n padding: var(--n-padding);\n border-radius: var(--n-border-radius);\n flex-wrap: nowrap;\n overflow: hidden;\n max-width: var(--n-max-width);\n color: var(--n-text-color);\n background-color: var(--n-color);\n box-shadow: var(--n-box-shadow);\n ",[pu("content","\n display: inline-block;\n line-height: var(--n-line-height);\n font-size: var(--n-font-size);\n "),pu("icon","\n position: relative;\n margin: var(--n-icon-margin);\n height: var(--n-icon-size);\n width: var(--n-icon-size);\n font-size: var(--n-icon-size);\n flex-shrink: 0;\n ",[["default","info","success","warning","error","loading"].map((e=>fu(`${e}-type`,[cu("> *",`\n color: var(--n-icon-color-${e});\n transition: color .3s var(--n-bezier);\n `)]))),cu("> *","\n position: absolute;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n ",[Jy()])]),pu("close","\n margin: var(--n-close-margin);\n transition:\n background-color .3s var(--n-bezier),\n color .3s var(--n-bezier);\n flex-shrink: 0;\n ",[cu("&:hover","\n color: var(--n-close-icon-color-hover);\n "),cu("&:active","\n color: var(--n-close-icon-color-pressed);\n ")])]),uu("message-container","\n z-index: 6000;\n position: fixed;\n height: 0;\n overflow: visible;\n display: flex;\n flex-direction: column;\n align-items: center;\n ",[fu("top","\n top: 12px;\n left: 0;\n right: 0;\n "),fu("top-left","\n top: 12px;\n left: 12px;\n right: 0;\n align-items: flex-start;\n "),fu("top-right","\n top: 12px;\n left: 0;\n right: 12px;\n align-items: flex-end;\n "),fu("bottom","\n bottom: 4px;\n left: 0;\n right: 0;\n justify-content: flex-end;\n "),fu("bottom-left","\n bottom: 4px;\n left: 12px;\n right: 0;\n justify-content: flex-end;\n align-items: flex-start;\n "),fu("bottom-right","\n bottom: 4px;\n left: 0;\n right: 12px;\n justify-content: flex-end;\n align-items: flex-end;\n ")])]),M_={info:()=>bi(Gy,null),success:()=>bi(Xy,null),warning:()=>bi(Qy,null),error:()=>bi(Dy,null),default:()=>null},F_=qn({name:"Message",props:Object.assign(Object.assign({},$_),{render:Function}),setup(e){const{inlineThemeDisabled:t,mergedRtlRef:n}=wg(e),{props:r,mergedClsPrefixRef:o}=Wr(A_),i=yy("Message",n,o),a=Ey("Message","-message",z_,T_,r,o),l=gi((()=>{const{type:t}=e,{common:{cubicBezierEaseInOut:n},self:{padding:r,margin:o,maxWidth:i,iconMargin:l,closeMargin:s,closeSize:c,iconSize:d,fontSize:u,lineHeight:p,borderRadius:f,iconColorInfo:h,iconColorSuccess:g,iconColorWarning:b,iconColorError:v,iconColorLoading:m,closeIconSize:y,closeBorderRadius:x,[yu("textColor",t)]:w,[yu("boxShadow",t)]:C,[yu("color",t)]:S,[yu("closeColorHover",t)]:k,[yu("closeColorPressed",t)]:_,[yu("closeIconColor",t)]:E,[yu("closeIconColorPressed",t)]:R,[yu("closeIconColorHover",t)]:O}}=a.value;return{"--n-bezier":n,"--n-margin":o,"--n-padding":r,"--n-max-width":i,"--n-font-size":u,"--n-icon-margin":l,"--n-icon-size":d,"--n-close-icon-size":y,"--n-close-border-radius":x,"--n-close-size":c,"--n-close-margin":s,"--n-text-color":w,"--n-color":S,"--n-box-shadow":C,"--n-icon-color-info":h,"--n-icon-color-success":g,"--n-icon-color-warning":b,"--n-icon-color-error":v,"--n-icon-color-loading":m,"--n-close-color-hover":k,"--n-close-color-pressed":_,"--n-close-icon-color":E,"--n-close-icon-color-pressed":R,"--n-close-icon-color-hover":O,"--n-line-height":p,"--n-border-radius":f}})),s=t?Sg("message",gi((()=>e.type[0])),l,{}):void 0;return{mergedClsPrefix:o,rtlEnabled:i,messageProviderProps:r,handleClose(){var t;null===(t=e.onClose)||void 0===t||t.call(e)},cssVars:t?void 0:l,themeClass:null==s?void 0:s.themeClass,onRender:null==s?void 0:s.onRender,placement:r.placement}},render(){const{render:e,type:t,closable:n,content:r,mergedClsPrefix:o,cssVars:i,themeClass:a,onRender:l,icon:s,handleClose:c,showIcon:d}=this;let u;return null==l||l(),bi("div",{class:[`${o}-message-wrapper`,a],onMouseenter:this.onMouseenter,onMouseleave:this.onMouseleave,style:[{alignItems:this.placement.startsWith("top")?"flex-start":"flex-end"},i]},e?e(this.$props):bi("div",{class:[`${o}-message ${o}-message--${t}-type`,this.rtlEnabled&&`${o}-message--rtl`]},(u=function(e,t,n){if("function"==typeof e)return e();{const e="loading"===t?bi(cx,{clsPrefix:n,strokeWidth:24,scale:.85}):M_[t]();return e?bi(Oy,{clsPrefix:n,key:t},{default:()=>e}):null}}(s,t,o))&&d?bi("div",{class:`${o}-message__icon ${o}-message__icon--${t}-type`},bi(Ay,null,{default:()=>u})):null,bi("div",{class:`${o}-message__content`},pg(r)),n?bi(rx,{clsPrefix:o,class:`${o}-message__close`,onClick:c,absolute:!0}):null))}});const N_=qn({name:"MessageEnvironment",props:Object.assign(Object.assign({},$_),{duration:{type:Number,default:3e3},onAfterLeave:Function,onLeave:Function,internalKey:{type:String,required:!0},onInternalAfterLeave:Function,onHide:Function,onAfterHide:Function}),setup(e){let t=null;const n=$t(!0);function r(){const{duration:n}=e;n&&(t=window.setTimeout(o,n))}function o(){const{onHide:r}=e;n.value=!1,t&&(window.clearTimeout(t),t=null),r&&r()}return rr((()=>{r()})),{show:n,hide:o,handleClose:function(){const{onClose:t}=e;t&&t(),o()},handleAfterLeave:function(){const{onAfterLeave:t,onInternalAfterLeave:n,onAfterHide:r,internalKey:o}=e;t&&t(),n&&n(o),r&&r()},handleMouseleave:function(e){e.currentTarget===e.target&&r()},handleMouseenter:function(e){e.currentTarget===e.target&&null!==t&&(window.clearTimeout(t),t=null)},deactivate:function(){o()}}},render(){return bi(ox,{appear:!0,onAfterLeave:this.handleAfterLeave,onLeave:this.onLeave},{default:()=>[this.show?bi(F_,{content:this.content,type:this.type,icon:this.icon,showIcon:this.showIcon,closable:this.closable,onClose:this.handleClose,onMouseenter:this.keepAliveOnHover?this.handleMouseenter:void 0,onMouseleave:this.keepAliveOnHover?this.handleMouseleave:void 0}):null]})}}),B_=qn({name:"MessageProvider",props:Object.assign(Object.assign({},Ey.props),{to:[String,Object],duration:{type:Number,default:3e3},keepAliveOnHover:Boolean,max:Number,placement:{type:String,default:"top"},closable:Boolean,containerClass:String,containerStyle:[String,Object]}),setup(e){const{mergedClsPrefixRef:t}=wg(e),n=$t([]),r=$t({}),o={create:(e,t)=>i(e,Object.assign({type:"default"},t)),info:(e,t)=>i(e,Object.assign(Object.assign({},t),{type:"info"})),success:(e,t)=>i(e,Object.assign(Object.assign({},t),{type:"success"})),warning:(e,t)=>i(e,Object.assign(Object.assign({},t),{type:"warning"})),error:(e,t)=>i(e,Object.assign(Object.assign({},t),{type:"error"})),loading:(e,t)=>i(e,Object.assign(Object.assign({},t),{type:"loading"})),destroyAll:function(){Object.values(r.value).forEach((e=>{e.hide()}))}};function i(t,o){const i=ap(),a=yt(Object.assign(Object.assign({},o),{content:t,key:i,destroy:()=>{var e;null===(e=r.value[i])||void 0===e||e.hide()}})),{max:l}=e;return l&&n.value.length>=l&&n.value.shift(),n.value.push(a),a}return Hr(A_,{props:e,mergedClsPrefixRef:t}),Hr(O_,o),Object.assign({mergedClsPrefix:t,messageRefs:r,messageList:n,handleAfterLeave:function(e){n.value.splice(n.value.findIndex((t=>t.key===e)),1),delete r.value[e]}},o)},render(){var e,t,n;return bi(Oo,null,null===(t=(e=this.$slots).default)||void 0===t?void 0:t.call(e),this.messageList.length?bi(On,{to:null!==(n=this.to)&&void 0!==n?n:"body"},bi("div",{class:[`${this.mergedClsPrefix}-message-container`,`${this.mergedClsPrefix}-message-container--${this.placement}`,this.containerClass],key:"message-container",style:this.containerStyle},this.messageList.map((e=>bi(N_,Object.assign({ref:t=>{t&&(this.messageRefs[e.key]=t)},internalKey:e.key,onInternalAfterLeave:this.handleAfterLeave},ug(e,["destroy"],void 0),{duration:void 0===e.duration?this.duration:e.duration,keepAliveOnHover:void 0===e.keepAliveOnHover?this.keepAliveOnHover:e.keepAliveOnHover,closable:void 0===e.closable?this.closable:e.closable})))))):null)}});function I_(){const e=Wr(O_,null);return null===e&&rg("use-message","No outer founded. See prerequisite in https://www.naiveui.com/en-US/os-theme/components/message for more details. If you want to use `useMessage` outside setup, please check https://www.naiveui.com/zh-CN/os-theme/components/message#Q-&-A."),e}const L_={gapSmall:"4px 8px",gapMedium:"8px 12px",gapLarge:"12px 16px"};const j_={self:function(){return L_}};let D_;function H_(){if(!Vp)return!0;if(void 0===D_){const e=document.createElement("div");e.style.display="flex",e.style.flexDirection="column",e.style.rowGap="1px",e.appendChild(document.createElement("div")),e.appendChild(document.createElement("div")),document.body.appendChild(e);const t=1===e.scrollHeight;return document.body.removeChild(e),D_=t}return D_}const W_=qn({name:"Space",props:Object.assign(Object.assign({},Ey.props),{align:String,justify:{type:String,default:"start"},inline:Boolean,vertical:Boolean,reverse:Boolean,size:{type:[String,Number,Array],default:"medium"},wrapItem:{type:Boolean,default:!0},itemClass:String,itemStyle:[String,Object],wrap:{type:Boolean,default:!0},internalUseGap:{type:Boolean,default:void 0}}),setup(e){const{mergedClsPrefixRef:t,mergedRtlRef:n}=wg(e),r=Ey("Space","-space",void 0,j_,e,t),o=yy("Space",n,t);return{useGap:H_(),rtlEnabled:o,mergedClsPrefix:t,margin:gi((()=>{const{size:t}=e;if(Array.isArray(t))return{horizontal:t[0],vertical:t[1]};if("number"==typeof t)return{horizontal:t,vertical:t};const{self:{[yu("gap",t)]:n}}=r.value,{row:o,col:i}=function(e){const[t,n]=e.split(" ");return{row:t,col:n||t}}(n);return{horizontal:Ru(i),vertical:Ru(o)}}))}},render(){const{vertical:e,reverse:t,align:n,inline:r,justify:o,itemClass:i,itemStyle:a,margin:l,wrap:s,mergedClsPrefix:c,rtlEnabled:d,useGap:u,wrapItem:p,internalUseGap:f}=this,h=ag(lg(this),!1);if(!h.length)return null;const g=`${l.horizontal}px`,b=l.horizontal/2+"px",v=`${l.vertical}px`,m=l.vertical/2+"px",y=h.length-1,x=o.startsWith("space-");return bi("div",{role:"none",class:[`${c}-space`,d&&`${c}-space--rtl`],style:{display:r?"inline-flex":"flex",flexDirection:e&&!t?"column":e&&t?"column-reverse":!e&&t?"row-reverse":"row",justifyContent:["start","end"].includes(o)?`flex-${o}`:o,flexWrap:!s||e?"nowrap":"wrap",marginTop:u||e?"":`-${m}`,marginBottom:u||e?"":`-${m}`,alignItems:n,gap:u?`${l.vertical}px ${l.horizontal}px`:""}},p||!u&&!f?h.map(((t,n)=>t.type===Po?t:bi("div",{role:"none",class:i,style:[a,{maxWidth:"100%"},u?"":e?{marginBottom:n!==y?v:""}:d?{marginLeft:x?"space-between"===o&&n===y?"":b:n!==y?g:"",marginRight:x?"space-between"===o&&0===n?"":b:"",paddingTop:m,paddingBottom:m}:{marginRight:x?"space-between"===o&&n===y?"":b:n!==y?g:"",marginLeft:x?"space-between"===o&&0===n?"":b:"",paddingTop:m,paddingBottom:m}]},t))):h)}}),U_={feedbackPadding:"4px 0 0 2px",feedbackHeightSmall:"24px",feedbackHeightMedium:"24px",feedbackHeightLarge:"26px",feedbackFontSizeSmall:"13px",feedbackFontSizeMedium:"14px",feedbackFontSizeLarge:"14px",labelFontSizeLeftSmall:"14px",labelFontSizeLeftMedium:"14px",labelFontSizeLeftLarge:"15px",labelFontSizeTopSmall:"13px",labelFontSizeTopMedium:"14px",labelFontSizeTopLarge:"14px",labelHeightSmall:"24px",labelHeightMedium:"26px",labelHeightLarge:"28px",labelPaddingVertical:"0 0 6px 2px",labelPaddingHorizontal:"0 12px 0 0",labelTextAlignVertical:"left",labelTextAlignHorizontal:"right",labelFontWeight:"400"};const q_={common:nw,self:function(e){const{heightSmall:t,heightMedium:n,heightLarge:r,textColor1:o,errorColor:i,warningColor:a,lineHeight:l,textColor3:s}=e;return Object.assign(Object.assign({},U_),{blankHeightSmall:t,blankHeightMedium:n,blankHeightLarge:r,lineHeight:l,labelTextColor:o,asteriskColor:i,feedbackTextColorError:i,feedbackTextColorWarning:a,feedbackTextColor:s})}};const K_={common:nw,self:function(e){const{primaryColor:t,successColor:n,warningColor:r,errorColor:o,infoColor:i,fontWeightStrong:a}=e;return{fontWeight:a,rotate:"252deg",colorStartPrimary:ep(t,{alpha:.6}),colorEndPrimary:t,colorStartInfo:ep(i,{alpha:.6}),colorEndInfo:i,colorStartWarning:ep(r,{alpha:.6}),colorEndWarning:r,colorStartError:ep(o,{alpha:.6}),colorEndError:o,colorStartSuccess:ep(n,{alpha:.6}),colorEndSuccess:n}}},V_={tabFontSizeSmall:"14px",tabFontSizeMedium:"14px",tabFontSizeLarge:"16px",tabGapSmallLine:"36px",tabGapMediumLine:"36px",tabGapLargeLine:"36px",tabGapSmallLineVertical:"8px",tabGapMediumLineVertical:"8px",tabGapLargeLineVertical:"8px",tabPaddingSmallLine:"6px 0",tabPaddingMediumLine:"10px 0",tabPaddingLargeLine:"14px 0",tabPaddingVerticalSmallLine:"6px 12px",tabPaddingVerticalMediumLine:"8px 16px",tabPaddingVerticalLargeLine:"10px 20px",tabGapSmallBar:"36px",tabGapMediumBar:"36px",tabGapLargeBar:"36px",tabGapSmallBarVertical:"8px",tabGapMediumBarVertical:"8px",tabGapLargeBarVertical:"8px",tabPaddingSmallBar:"4px 0",tabPaddingMediumBar:"6px 0",tabPaddingLargeBar:"10px 0",tabPaddingVerticalSmallBar:"6px 12px",tabPaddingVerticalMediumBar:"8px 16px",tabPaddingVerticalLargeBar:"10px 20px",tabGapSmallCard:"4px",tabGapMediumCard:"4px",tabGapLargeCard:"4px",tabGapSmallCardVertical:"4px",tabGapMediumCardVertical:"4px",tabGapLargeCardVertical:"4px",tabPaddingSmallCard:"8px 16px",tabPaddingMediumCard:"10px 20px",tabPaddingLargeCard:"12px 24px",tabPaddingSmallSegment:"4px 0",tabPaddingMediumSegment:"6px 0",tabPaddingLargeSegment:"8px 0",tabPaddingVerticalLargeSegment:"0 8px",tabPaddingVerticalSmallCard:"8px 12px",tabPaddingVerticalMediumCard:"10px 16px",tabPaddingVerticalLargeCard:"12px 20px",tabPaddingVerticalSmallSegment:"0 4px",tabPaddingVerticalMediumSegment:"0 6px",tabGapSmallSegment:"0",tabGapMediumSegment:"0",tabGapLargeSegment:"0",tabGapSmallSegmentVertical:"0",tabGapMediumSegmentVertical:"0",tabGapLargeSegmentVertical:"0",panePaddingSmall:"8px 0 0 0",panePaddingMedium:"12px 0 0 0",panePaddingLarge:"16px 0 0 0",closeSize:"18px",closeIconSize:"14px"};const G_={common:nw,self:function(e){const{textColor2:t,primaryColor:n,textColorDisabled:r,closeIconColor:o,closeIconColorHover:i,closeIconColorPressed:a,closeColorHover:l,closeColorPressed:s,tabColor:c,baseColor:d,dividerColor:u,fontWeight:p,textColor1:f,borderRadius:h,fontSize:g,fontWeightStrong:b}=e;return Object.assign(Object.assign({},V_),{colorSegment:c,tabFontSizeCard:g,tabTextColorLine:f,tabTextColorActiveLine:n,tabTextColorHoverLine:n,tabTextColorDisabledLine:r,tabTextColorSegment:f,tabTextColorActiveSegment:t,tabTextColorHoverSegment:t,tabTextColorDisabledSegment:r,tabTextColorBar:f,tabTextColorActiveBar:n,tabTextColorHoverBar:n,tabTextColorDisabledBar:r,tabTextColorCard:f,tabTextColorHoverCard:f,tabTextColorActiveCard:n,tabTextColorDisabledCard:r,barColor:n,closeIconColor:o,closeIconColorHover:i,closeIconColorPressed:a,closeColorHover:l,closeColorPressed:s,closeBorderRadius:h,tabColor:c,tabColorSegment:d,tabBorderColor:u,tabFontWeightActive:p,tabFontWeight:p,tabBorderRadius:h,paneTextColor:t,fontWeightStrong:b})}},Z_="n-form",X_="n-form-item-insts",Q_=uu("form",[fu("inline","\n width: 100%;\n display: inline-flex;\n align-items: flex-start;\n align-content: space-around;\n ",[uu("form-item",{width:"auto",marginRight:"18px"},[cu("&:last-child",{marginRight:0})])])]);var Y_=function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function a(e){try{s(r.next(e))}catch(XT){i(XT)}}function l(e){try{s(r.throw(e))}catch(XT){i(XT)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(a,l)}s((r=r.apply(e,t||[])).next())}))};const J_=qn({name:"Form",props:Object.assign(Object.assign({},Ey.props),{inline:Boolean,labelWidth:[Number,String],labelAlign:String,labelPlacement:{type:String,default:"top"},model:{type:Object,default:()=>{}},rules:Object,disabled:Boolean,size:String,showRequireMark:{type:Boolean,default:void 0},requireMarkPlacement:String,showFeedback:{type:Boolean,default:!0},onSubmit:{type:Function,default:e=>{e.preventDefault()}},showLabel:{type:Boolean,default:void 0},validateMessages:Object}),setup(e){const{mergedClsPrefixRef:t}=wg(e);Ey("Form","-form",Q_,q_,e,t);const n={},r=$t(void 0);Hr(Z_,{props:e,maxChildLabelWidthRef:r,deriveMaxChildLabelWidth:e=>{const t=r.value;(void 0===t||e>=t)&&(r.value=e)}}),Hr(X_,{formItems:n});const o={validate:function(e){return Y_(this,arguments,void 0,(function*(e,t=()=>!0){return yield new Promise(((r,o)=>{const i=[];for(const e of cg(n)){const r=n[e];for(const e of r)e.path&&i.push(e.internalValidate(null,t))}Promise.all(i).then((t=>{const n=t.some((e=>!e.valid)),i=[],a=[];t.forEach((e=>{var t,n;(null===(t=e.errors)||void 0===t?void 0:t.length)&&i.push(e.errors),(null===(n=e.warnings)||void 0===n?void 0:n.length)&&a.push(e.warnings)})),e&&e(i.length?i:void 0,{warnings:a.length?a:void 0}),n?o(i.length?i:void 0):r({warnings:a.length?a:void 0})}))}))}))},restoreValidation:function(){for(const e of cg(n)){const t=n[e];for(const e of t)e.restoreValidation()}}};return Object.assign(o,{mergedClsPrefix:t})},render(){const{mergedClsPrefix:e}=this;return bi("form",{class:[`${e}-form`,this.inline&&`${e}-form--inline`],onSubmit:this.onSubmit},this.$slots)}});function eE(){return eE=Object.assign?Object.assign.bind():function(e){for(var t=1;t1?t-1:0),r=1;r=i)return e;switch(e){case"%s":return String(n[o++]);case"%d":return Number(n[o++]);case"%j":try{return JSON.stringify(n[o++])}catch(t){return"[Circular]"}break;default:return e}})):e}function sE(e,t){return null==e||(!("array"!==t||!Array.isArray(e)||e.length)||!(!function(e){return"string"===e||"url"===e||"hex"===e||"email"===e||"date"===e||"pattern"===e}(t)||"string"!=typeof e||e))}function cE(e,t,n){var r=0,o=e.length;!function i(a){if(a&&a.length)n(a);else{var l=r;r+=1,l()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,vE=/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i,mE={integer:function(e){return mE.number(e)&&parseInt(e,10)===e},float:function(e){return mE.number(e)&&!mE.integer(e)},array:function(e){return Array.isArray(e)},regexp:function(e){if(e instanceof RegExp)return!0;try{return!!new RegExp(e)}catch(XT){return!1}},date:function(e){return"function"==typeof e.getTime&&"function"==typeof e.getMonth&&"function"==typeof e.getYear&&!isNaN(e.getTime())},number:function(e){return!isNaN(e)&&"number"==typeof e},object:function(e){return"object"==typeof e&&!mE.array(e)},method:function(e){return"function"==typeof e},email:function(e){return"string"==typeof e&&e.length<=320&&!!e.match(bE)},url:function(e){return"string"==typeof e&&e.length<=2048&&!!e.match(function(){if(hE)return hE;var e="[a-fA-F\\d:]",t=function(t){return t&&t.includeBoundaries?"(?:(?<=\\s|^)(?="+e+")|(?<="+e+")(?=\\s|$))":""},n="(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}",r="[a-fA-F\\d]{1,4}",o=("\n(?:\n(?:"+r+":){7}(?:"+r+"|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:"+r+":){6}(?:"+n+"|:"+r+"|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:"+r+":){5}(?::"+n+"|(?::"+r+"){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:"+r+":){4}(?:(?::"+r+"){0,1}:"+n+"|(?::"+r+"){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:"+r+":){3}(?:(?::"+r+"){0,2}:"+n+"|(?::"+r+"){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:"+r+":){2}(?:(?::"+r+"){0,3}:"+n+"|(?::"+r+"){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:"+r+":){1}(?:(?::"+r+"){0,4}:"+n+"|(?::"+r+"){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::"+r+"){0,5}:"+n+"|(?::"+r+"){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n").replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),i=new RegExp("(?:^"+n+"$)|(?:^"+o+"$)"),a=new RegExp("^"+n+"$"),l=new RegExp("^"+o+"$"),s=function(e){return e&&e.exact?i:new RegExp("(?:"+t(e)+n+t(e)+")|(?:"+t(e)+o+t(e)+")","g")};s.v4=function(e){return e&&e.exact?a:new RegExp(""+t(e)+n+t(e),"g")},s.v6=function(e){return e&&e.exact?l:new RegExp(""+t(e)+o+t(e),"g")};var c=s.v4().source,d=s.v6().source;return hE=new RegExp("(?:^(?:(?:(?:[a-z]+:)?//)|www\\.)(?:\\S+(?::\\S*)?@)?(?:localhost|"+c+"|"+d+'|(?:(?:[a-z\\u00a1-\\uffff0-9][-_]*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:[/?#][^\\s"]*)?$)',"i")}())},hex:function(e){return"string"==typeof e&&!!e.match(vE)}},yE="enum",xE={required:gE,whitespace:function(e,t,n,r,o){(/^\s+$/.test(t)||""===t)&&r.push(lE(o.messages.whitespace,e.fullField))},type:function(e,t,n,r,o){if(e.required&&void 0===t)gE(e,t,n,r,o);else{var i=e.type;["integer","float","array","regexp","object","method","email","number","date","url","hex"].indexOf(i)>-1?mE[i](t)||r.push(lE(o.messages.types[i],e.fullField,e.type)):i&&typeof t!==e.type&&r.push(lE(o.messages.types[i],e.fullField,e.type))}},range:function(e,t,n,r,o){var i="number"==typeof e.len,a="number"==typeof e.min,l="number"==typeof e.max,s=t,c=null,d="number"==typeof t,u="string"==typeof t,p=Array.isArray(t);if(d?c="number":u?c="string":p&&(c="array"),!c)return!1;p&&(s=t.length),u&&(s=t.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"_").length),i?s!==e.len&&r.push(lE(o.messages[c].len,e.fullField,e.len)):a&&!l&&se.max?r.push(lE(o.messages[c].max,e.fullField,e.max)):a&&l&&(se.max)&&r.push(lE(o.messages[c].range,e.fullField,e.min,e.max))},enum:function(e,t,n,r,o){e[yE]=Array.isArray(e[yE])?e[yE]:[],-1===e[yE].indexOf(t)&&r.push(lE(o.messages[yE],e.fullField,e[yE].join(", ")))},pattern:function(e,t,n,r,o){if(e.pattern)if(e.pattern instanceof RegExp)e.pattern.lastIndex=0,e.pattern.test(t)||r.push(lE(o.messages.pattern.mismatch,e.fullField,t,e.pattern));else if("string"==typeof e.pattern){new RegExp(e.pattern).test(t)||r.push(lE(o.messages.pattern.mismatch,e.fullField,t,e.pattern))}}},wE=function(e,t,n,r,o){var i=e.type,a=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t,i)&&!e.required)return n();xE.required(e,t,r,a,o,i),sE(t,i)||xE.type(e,t,r,a,o)}n(a)},CE={string:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t,"string")&&!e.required)return n();xE.required(e,t,r,i,o,"string"),sE(t,"string")||(xE.type(e,t,r,i,o),xE.range(e,t,r,i,o),xE.pattern(e,t,r,i,o),!0===e.whitespace&&xE.whitespace(e,t,r,i,o))}n(i)},method:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t)&&!e.required)return n();xE.required(e,t,r,i,o),void 0!==t&&xE.type(e,t,r,i,o)}n(i)},number:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(""===t&&(t=void 0),sE(t)&&!e.required)return n();xE.required(e,t,r,i,o),void 0!==t&&(xE.type(e,t,r,i,o),xE.range(e,t,r,i,o))}n(i)},boolean:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t)&&!e.required)return n();xE.required(e,t,r,i,o),void 0!==t&&xE.type(e,t,r,i,o)}n(i)},regexp:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t)&&!e.required)return n();xE.required(e,t,r,i,o),sE(t)||xE.type(e,t,r,i,o)}n(i)},integer:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t)&&!e.required)return n();xE.required(e,t,r,i,o),void 0!==t&&(xE.type(e,t,r,i,o),xE.range(e,t,r,i,o))}n(i)},float:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t)&&!e.required)return n();xE.required(e,t,r,i,o),void 0!==t&&(xE.type(e,t,r,i,o),xE.range(e,t,r,i,o))}n(i)},array:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(null==t&&!e.required)return n();xE.required(e,t,r,i,o,"array"),null!=t&&(xE.type(e,t,r,i,o),xE.range(e,t,r,i,o))}n(i)},object:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t)&&!e.required)return n();xE.required(e,t,r,i,o),void 0!==t&&xE.type(e,t,r,i,o)}n(i)},enum:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t)&&!e.required)return n();xE.required(e,t,r,i,o),void 0!==t&&xE.enum(e,t,r,i,o)}n(i)},pattern:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t,"string")&&!e.required)return n();xE.required(e,t,r,i,o),sE(t,"string")||xE.pattern(e,t,r,i,o)}n(i)},date:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t,"date")&&!e.required)return n();var a;if(xE.required(e,t,r,i,o),!sE(t,"date"))a=t instanceof Date?t:new Date(t),xE.type(e,a,r,i,o),a&&xE.range(e,a.getTime(),r,i,o)}n(i)},url:wE,hex:wE,email:wE,required:function(e,t,n,r,o){var i=[],a=Array.isArray(t)?"array":typeof t;xE.required(e,t,r,i,o,a),n(i)},any:function(e,t,n,r,o){var i=[];if(e.required||!e.required&&r.hasOwnProperty(e.field)){if(sE(t)&&!e.required)return n();xE.required(e,t,r,i,o)}n(i)}};function SE(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone:function(){var e=JSON.parse(JSON.stringify(this));return e.clone=this.clone,e}}}var kE=SE(),_E=function(){function e(e){this.rules=null,this._messages=kE,this.define(e)}var t=e.prototype;return t.define=function(e){var t=this;if(!e)throw new Error("Cannot configure a schema with no rules");if("object"!=typeof e||Array.isArray(e))throw new Error("Rules must be an object");this.rules={},Object.keys(e).forEach((function(n){var r=e[n];t.rules[n]=Array.isArray(r)?r:[r]}))},t.messages=function(e){return e&&(this._messages=fE(SE(),e)),this._messages},t.validate=function(t,n,r){var o=this;void 0===n&&(n={}),void 0===r&&(r=function(){});var i=t,a=n,l=r;if("function"==typeof a&&(l=a,a={}),!this.rules||0===Object.keys(this.rules).length)return l&&l(null,i),Promise.resolve(i);if(a.messages){var s=this.messages();s===kE&&(s=SE()),fE(s,a.messages),a.messages=s}else a.messages=this.messages();var c={};(a.keys||Object.keys(this.rules)).forEach((function(e){var n=o.rules[e],r=i[e];n.forEach((function(n){var a=n;"function"==typeof a.transform&&(i===t&&(i=eE({},i)),r=i[e]=a.transform(r)),(a="function"==typeof a?{validator:a}:eE({},a)).validator=o.getValidationMethod(a),a.validator&&(a.field=e,a.fullField=a.fullField||e,a.type=o.getType(a),c[e]=c[e]||[],c[e].push({rule:a,value:r,source:i,field:e}))}))}));var d={};return uE(c,a,(function(t,n){var r,o=t.rule,l=!("object"!==o.type&&"array"!==o.type||"object"!=typeof o.fields&&"object"!=typeof o.defaultField);function s(e,t){return eE({},t,{fullField:o.fullField+"."+e,fullFields:o.fullFields?[].concat(o.fullFields,[e]):[e]})}function c(r){void 0===r&&(r=[]);var c=Array.isArray(r)?r:[r];!a.suppressWarning&&c.length&&e.warning("async-validator:",c),c.length&&void 0!==o.message&&(c=[].concat(o.message));var u=c.map(pE(o,i));if(a.first&&u.length)return d[o.field]=1,n(u);if(l){if(o.required&&!t.value)return void 0!==o.message?u=[].concat(o.message).map(pE(o,i)):a.error&&(u=[a.error(o,lE(a.messages.required,o.field))]),n(u);var p={};o.defaultField&&Object.keys(t.value).map((function(e){p[e]=o.defaultField})),p=eE({},p,t.rule.fields);var f={};Object.keys(p).forEach((function(e){var t=p[e],n=Array.isArray(t)?t:[t];f[e]=n.map(s.bind(null,e))}));var h=new e(f);h.messages(a.messages),t.rule.options&&(t.rule.options.messages=a.messages,t.rule.options.error=a.error),h.validate(t.value,t.rule.options||a,(function(e){var t=[];u&&u.length&&t.push.apply(t,u),e&&e.length&&t.push.apply(t,e),n(t.length?t:null)}))}else n(u)}if(l=l&&(o.required||!o.required&&t.value),o.field=t.field,o.asyncValidator)r=o.asyncValidator(o,t.value,c,t.source,a);else if(o.validator){try{r=o.validator(o,t.value,c,t.source,a)}catch(u){console.error,a.suppressValidatorError||setTimeout((function(){throw u}),0),c(u.message)}!0===r?c():!1===r?c("function"==typeof o.message?o.message(o.fullField||o.field):o.message||(o.fullField||o.field)+" fails"):r instanceof Array?c(r):r instanceof Error&&c(r.message)}r&&r.then&&r.then((function(){return c()}),(function(e){return c(e)}))}),(function(e){!function(e){for(var t,n,r=[],o={},a=0;a{try{const r=e(...n);return!(!t&&("boolean"==typeof r||r instanceof Error||Array.isArray(r))||(null==r?void 0:r.then))||r}catch(r){return}}}const $E=qn({name:"FormItem",props:AE,setup(e){Kp(X_,"formItems",Dt(e,"path"));const{mergedClsPrefixRef:t,inlineThemeDisabled:n}=wg(e),r=Wr(Z_,null),o=function(e){const t=Wr(Z_,null);return{mergedSize:gi((()=>void 0!==e.size?e.size:void 0!==(null==t?void 0:t.props.size)?t.props.size:"medium"))}}(e),i=function(e){const t=Wr(Z_,null),n=gi((()=>{const{labelPlacement:n}=e;return void 0!==n?n:(null==t?void 0:t.props.labelPlacement)?t.props.labelPlacement:"top"})),r=gi((()=>"left"===n.value&&("auto"===e.labelWidth||"auto"===(null==t?void 0:t.props.labelWidth)))),o=gi((()=>{if("top"===n.value)return;const{labelWidth:o}=e;if(void 0!==o&&"auto"!==o)return Qh(o);if(r.value){const e=null==t?void 0:t.maxChildLabelWidthRef.value;return void 0!==e?Qh(e):void 0}return void 0!==(null==t?void 0:t.props.labelWidth)?Qh(t.props.labelWidth):void 0})),i=gi((()=>{const{labelAlign:n}=e;return n||((null==t?void 0:t.props.labelAlign)?t.props.labelAlign:void 0)})),a=gi((()=>{var t;return[null===(t=e.labelProps)||void 0===t?void 0:t.style,e.labelStyle,{width:o.value}]})),l=gi((()=>{const{showRequireMark:n}=e;return void 0!==n?n:null==t?void 0:t.props.showRequireMark})),s=gi((()=>{const{requireMarkPlacement:n}=e;return void 0!==n?n:(null==t?void 0:t.props.requireMarkPlacement)||"right"})),c=$t(!1),d=$t(!1),u=gi((()=>{const{validationStatus:t}=e;return void 0!==t?t:c.value?"error":d.value?"warning":void 0})),p=gi((()=>{const{showFeedback:n}=e;return void 0!==n?n:void 0===(null==t?void 0:t.props.showFeedback)||t.props.showFeedback})),f=gi((()=>{const{showLabel:n}=e;return void 0!==n?n:void 0===(null==t?void 0:t.props.showLabel)||t.props.showLabel}));return{validationErrored:c,validationWarned:d,mergedLabelStyle:a,mergedLabelPlacement:n,mergedLabelAlign:i,mergedShowRequireMark:l,mergedRequireMarkPlacement:s,mergedValidationStatus:u,mergedShowFeedback:p,mergedShowLabel:f,isAutoLabelWidth:r}}(e),{validationErrored:a,validationWarned:l}=i,{mergedRequired:s,mergedRules:c}=function(e){const t=Wr(Z_,null),n=gi((()=>{const{rulePath:t}=e;if(void 0!==t)return t;const{path:n}=e;return void 0!==n?n:void 0})),r=gi((()=>{const r=[],{rule:o}=e;if(void 0!==o&&(Array.isArray(o)?r.push(...o):r.push(o)),t){const{rules:e}=t.props,{value:o}=n;if(void 0!==e&&void 0!==o){const t=Lv(e,o);void 0!==t&&(Array.isArray(t)?r.push(...t):r.push(t))}}return r})),o=gi((()=>r.value.some((e=>e.required)))),i=gi((()=>o.value||e.required));return{mergedRules:r,mergedRequired:i}}(e),{mergedSize:d}=o,{mergedLabelPlacement:u,mergedLabelAlign:p,mergedRequireMarkPlacement:f}=i,h=$t([]),g=$t(ap()),b=r?Dt(r.props,"disabled"):$t(!1),v=Ey("Form","-form-item",RE,q_,e,t);function m(){h.value=[],a.value=!1,l.value=!1,e.feedback&&(g.value=ap())}go(Dt(e,"path"),(()=>{e.ignorePathChange||m()}));const y=(...t)=>OE(this,[...t],void 0,(function*(t=null,n=()=>!0,o={suppressWarning:!0}){const{path:i}=e;o?o.first||(o.first=e.first):o={};const{value:s}=c,d=r?Lv(r.props.model,i||""):void 0,u={},p={},f=(t?s.filter((e=>Array.isArray(e.trigger)?e.trigger.includes(t):e.trigger===t)):s).filter(n).map(((e,t)=>{const n=Object.assign({},e);if(n.validator&&(n.validator=TE(n.validator,!1)),n.asyncValidator&&(n.asyncValidator=TE(n.asyncValidator,!0)),n.renderMessage){const e=`__renderMessage__${t}`;p[e]=n.message,n.message=e,u[e]=n.renderMessage}return n})),g=f.filter((e=>"warning"!==e.level)),b=f.filter((e=>"warning"===e.level)),v={valid:!0,errors:void 0,warnings:void 0};if(!f.length)return v;const y=null!=i?i:"__n_no_path__",x=new _E({[y]:g}),w=new _E({[y]:b}),{validateMessages:C}=(null==r?void 0:r.props)||{};C&&(x.messages(C),w.messages(C));const S=e=>{h.value=e.map((e=>{const t=(null==e?void 0:e.message)||"";return{key:t,render:()=>t.startsWith("__renderMessage__")?u[t]():t}})),e.forEach((e=>{var t;(null===(t=e.message)||void 0===t?void 0:t.startsWith("__renderMessage__"))&&(e.message=p[e.message])}))};if(g.length){const e=yield new Promise((e=>{x.validate({[y]:d},o,e)}));(null==e?void 0:e.length)&&(v.valid=!1,v.errors=e,S(e))}if(b.length&&!v.errors){const e=yield new Promise((e=>{w.validate({[y]:d},o,e)}));(null==e?void 0:e.length)&&(S(e),v.warnings=e)}return v.errors||v.warnings?(a.value=!!v.errors,l.value=!!v.warnings):m(),v}));Hr(kg,{path:Dt(e,"path"),disabled:b,mergedSize:o.mergedSize,mergedValidationStatus:i.mergedValidationStatus,restoreValidation:m,handleContentBlur:function(){y("blur")},handleContentChange:function(){y("change")},handleContentFocus:function(){y("focus")},handleContentInput:function(){y("input")}});const x={validate:function(e,t){return OE(this,void 0,void 0,(function*(){let n,r,o,i;return"string"==typeof e?(n=e,r=t):null!==e&&"object"==typeof e&&(n=e.trigger,r=e.callback,o=e.shouldRuleBeApplied,i=e.options),yield new Promise(((e,t)=>{y(n,o,i).then((({valid:n,errors:o,warnings:i})=>{n?(r&&r(void 0,{warnings:i}),e({warnings:i})):(r&&r(o,{warnings:i}),t(o))}))}))}))},restoreValidation:m,internalValidate:y},w=$t(null);rr((()=>{if(!i.isAutoLabelWidth.value)return;const e=w.value;if(null!==e){const t=e.style.whiteSpace;e.style.whiteSpace="nowrap",e.style.width="",null==r||r.deriveMaxChildLabelWidth(Number(getComputedStyle(e).width.slice(0,-2))),e.style.whiteSpace=t}}));const C=gi((()=>{var e;const{value:t}=d,{value:n}=u,r="top"===n?"vertical":"horizontal",{common:{cubicBezierEaseInOut:o},self:{labelTextColor:i,asteriskColor:a,lineHeight:l,feedbackTextColor:s,feedbackTextColorWarning:c,feedbackTextColorError:f,feedbackPadding:h,labelFontWeight:g,[yu("labelHeight",t)]:b,[yu("blankHeight",t)]:m,[yu("feedbackFontSize",t)]:y,[yu("feedbackHeight",t)]:x,[yu("labelPadding",r)]:w,[yu("labelTextAlign",r)]:C,[yu(yu("labelFontSize",n),t)]:S}}=v.value;let k=null!==(e=p.value)&&void 0!==e?e:C;"top"===n&&(k="right"===k?"flex-end":"flex-start");return{"--n-bezier":o,"--n-line-height":l,"--n-blank-height":m,"--n-label-font-size":S,"--n-label-text-align":k,"--n-label-height":b,"--n-label-padding":w,"--n-label-font-weight":g,"--n-asterisk-color":a,"--n-label-text-color":i,"--n-feedback-padding":h,"--n-feedback-font-size":y,"--n-feedback-height":x,"--n-feedback-text-color":s,"--n-feedback-text-color-warning":c,"--n-feedback-text-color-error":f}})),S=n?Sg("form-item",gi((()=>{var e;return`${d.value[0]}${u.value[0]}${(null===(e=p.value)||void 0===e?void 0:e[0])||""}`})),C,e):void 0,k=gi((()=>"left"===u.value&&"left"===f.value&&"left"===p.value));return Object.assign(Object.assign(Object.assign(Object.assign({labelElementRef:w,mergedClsPrefix:t,mergedRequired:s,feedbackId:g,renderExplains:h,reverseColSpace:k},i),o),x),{cssVars:n?void 0:C,themeClass:null==S?void 0:S.themeClass,onRender:null==S?void 0:S.onRender})},render(){const{$slots:e,mergedClsPrefix:t,mergedShowLabel:n,mergedShowRequireMark:r,mergedRequireMarkPlacement:o,onRender:i}=this,a=void 0!==r?r:this.mergedRequired;null==i||i();return bi("div",{class:[`${t}-form-item`,this.themeClass,`${t}-form-item--${this.mergedSize}-size`,`${t}-form-item--${this.mergedLabelPlacement}-labelled`,this.isAutoLabelWidth&&`${t}-form-item--auto-label-width`,!n&&`${t}-form-item--no-label`],style:this.cssVars},n&&(()=>{const e=this.$slots.label?this.$slots.label():this.label;if(!e)return null;const n=bi("span",{class:`${t}-form-item-label__text`},e),r=a?bi("span",{class:`${t}-form-item-label__asterisk`},"left"!==o?" *":"* "):"right-hanging"===o&&bi("span",{class:`${t}-form-item-label__asterisk-placeholder`}," *"),{labelProps:i}=this;return bi("label",Object.assign({},i,{class:[null==i?void 0:i.class,`${t}-form-item-label`,`${t}-form-item-label--${o}-mark`,this.reverseColSpace&&`${t}-form-item-label--reverse-columns-space`],style:this.mergedLabelStyle,ref:"labelElementRef"}),"left"===o?[r,n]:[n,r])})(),bi("div",{class:[`${t}-form-item-blank`,this.mergedValidationStatus&&`${t}-form-item-blank--${this.mergedValidationStatus}`]},e),this.mergedShowFeedback?bi("div",{key:this.feedbackId,style:this.feedbackStyle,class:[`${t}-form-item-feedback-wrapper`,this.feedbackClass]},bi(Ai,{name:"fade-down-transition",mode:"out-in"},{default:()=>{const{mergedValidationStatus:n}=this;return bg(e.feedback,(e=>{var r;const{feedback:o}=this,i=e||o?bi("div",{key:"__feedback__",class:`${t}-form-item-feedback__line`},e||o):this.renderExplains.length?null===(r=this.renderExplains)||void 0===r?void 0:r.map((({key:e,render:n})=>bi("div",{key:e,class:`${t}-form-item-feedback__line`},n()))):null;return i?bi("div","warning"===n?{key:"controlled-warning",class:`${t}-form-item-feedback ${t}-form-item-feedback--warning`}:"error"===n?{key:"controlled-error",class:`${t}-form-item-feedback ${t}-form-item-feedback--error`}:"success"===n?{key:"controlled-success",class:`${t}-form-item-feedback ${t}-form-item-feedback--success`}:{key:"controlled-default",class:`${t}-form-item-feedback`},i):null}))}})):null)}}),zE="n-grid",ME=1,FE={span:{type:[Number,String],default:ME},offset:{type:[Number,String],default:0},suffix:Boolean,privateOffset:Number,privateSpan:Number,privateColStart:Number,privateShow:{type:Boolean,default:!0}},NE=cg(FE),BE=qn({__GRID_ITEM__:!0,name:"GridItem",alias:["Gi"],props:FE,setup(){const{isSsrRef:e,xGapRef:t,itemStyleRef:n,overflowRef:r,layoutShiftDisabledRef:o}=Wr(zE),i=ri();return{overflow:r,itemStyle:n,layoutShiftDisabled:o,mergedXGap:gi((()=>Ou(t.value||0))),deriveStyle:()=>{e.value;const{privateSpan:n=ME,privateShow:r=!0,privateColStart:o,privateOffset:a=0}=i.vnode.props,{value:l}=t,s=Ou(l||0);return{display:r?"":"none",gridColumn:`${null!=o?o:`span ${n}`} / span ${n}`,marginLeft:a?`calc((100% - (${n} - 1) * ${s}) / ${n} * ${a} + ${s} * ${a})`:""}}}},render(){var e,t;if(this.layoutShiftDisabled){const{span:e,offset:t,mergedXGap:n}=this;return bi("div",{style:{gridColumn:`span ${e} / span ${e}`,marginLeft:t?`calc((100% - (${e} - 1) * ${n}) / ${e} * ${t} + ${n} * ${t})`:""}},this.$slots)}return bi("div",{style:[this.itemStyle,this.deriveStyle()]},null===(t=(e=this.$slots).default)||void 0===t?void 0:t.call(e,{overflow:this.overflow}))}}),IE=qn({__GRID_ITEM__:!0,name:"FormItemGridItem",alias:["FormItemGi"],props:Object.assign(Object.assign({},FE),AE),setup(){const e=$t(null);return{formItemInstRef:e,validate:(...t)=>{const{value:n}=e;if(n)return n.validate(...t)},restoreValidation:()=>{const{value:t}=e;t&&t.restoreValidation()}}},render(){return bi(BE,sg(this.$.vnode.props||{},NE),{default:()=>{const e=sg(this.$props,PE);return bi($E,Object.assign({ref:"formItemInstRef"},e),this.$slots)}})}}),LE=uu("gradient-text","\n display: inline-block;\n font-weight: var(--n-font-weight);\n -webkit-background-clip: text;\n background-clip: text;\n color: #0000;\n white-space: nowrap;\n background-image: linear-gradient(var(--n-rotate), var(--n-color-start) 0%, var(--n-color-end) 100%);\n transition:\n --n-color-start .3s var(--n-bezier),\n --n-color-end .3s var(--n-bezier);\n"),jE=qn({name:"GradientText",props:Object.assign(Object.assign({},Ey.props),{size:[String,Number],fontSize:[String,Number],type:{type:String,default:"primary"},color:[Object,String],gradient:[Object,String]}),setup(e){!function(){if(Vp&&window.CSS&&!Gp&&(Gp=!0,"registerProperty"in(null===window||void 0===window?void 0:window.CSS)))try{CSS.registerProperty({name:"--n-color-start",syntax:"",inherits:!1,initialValue:"#0000"}),CSS.registerProperty({name:"--n-color-end",syntax:"",inherits:!1,initialValue:"#0000"})}catch(yp){}}();const{mergedClsPrefixRef:t,inlineThemeDisabled:n}=wg(e),r=gi((()=>{const{type:t}=e;return"danger"===t?"error":t})),o=gi((()=>{let t=e.size||e.fontSize;return t&&(t=Qh(t)),t||void 0})),i=gi((()=>{const t=e.color||e.gradient;if("string"==typeof t)return t;if(t){return`linear-gradient(${t.deg||0}deg, ${t.from} 0%, ${t.to} 100%)`}})),a=Ey("GradientText","-gradient-text",LE,K_,e,t),l=gi((()=>{const{value:e}=r,{common:{cubicBezierEaseInOut:t},self:{rotate:n,[yu("colorStart",e)]:o,[yu("colorEnd",e)]:i,fontWeight:l}}=a.value;return{"--n-bezier":t,"--n-rotate":n,"--n-color-start":o,"--n-color-end":i,"--n-font-weight":l}})),s=n?Sg("gradient-text",gi((()=>r.value[0])),l,e):void 0;return{mergedClsPrefix:t,compatibleType:r,styleFontSize:o,styleBgImage:i,cssVars:n?void 0:l,themeClass:null==s?void 0:s.themeClass,onRender:null==s?void 0:s.onRender}},render(){const{mergedClsPrefix:e,onRender:t}=this;return null==t||t(),bi("span",{class:[`${e}-gradient-text`,`${e}-gradient-text--${this.compatibleType}-type`,this.themeClass],style:[{fontSize:this.styleFontSize,backgroundImage:this.styleBgImage},this.cssVars]},this.$slots)}}),DE={xs:0,s:640,m:1024,l:1280,xl:1536,xxl:1920},HE="__ssr__",WE=qn({name:"Grid",inheritAttrs:!1,props:{layoutShiftDisabled:Boolean,responsive:{type:[String,Boolean],default:"self"},cols:{type:[Number,String],default:24},itemResponsive:Boolean,collapsed:Boolean,collapsedRows:{type:Number,default:1},itemStyle:[Object,String],xGap:{type:[Number,String],default:0},yGap:{type:[Number,String],default:0}},setup(e){const{mergedClsPrefixRef:t,mergedBreakpointsRef:n}=wg(e),r=/^\d+$/,o=$t(void 0),i=function(e=Np){if(!bp)return gi((()=>[]));if("function"!=typeof window.matchMedia)return gi((()=>[]));const t=$t({}),n=Object.keys(e),r=(e,n)=>{e.matches?t.value[n]=!0:t.value[n]=!1};return n.forEach((t=>{const n=e[t];let o,i;void 0===Bp[n]?(o=window.matchMedia(`(min-width: ${n}px)`),o.addEventListener?o.addEventListener("change",(e=>{i.forEach((n=>{n(e,t)}))})):o.addListener&&o.addListener((e=>{i.forEach((n=>{n(e,t)}))})),i=new Set,Bp[n]={mql:o,cbs:i}):(o=Bp[n].mql,i=Bp[n].cbs),i.add(r),o.matches&&i.forEach((e=>{e(o,t)}))})),ar((()=>{n.forEach((t=>{const{cbs:n}=Bp[e[t]];n.has(r)&&n.delete(r)}))})),gi((()=>{const{value:e}=t;return n.filter((t=>e[t]))}))}((null==n?void 0:n.value)||DE),a=hp((()=>!!e.itemResponsive||(!r.test(e.cols.toString())||(!r.test(e.xGap.toString())||!r.test(e.yGap.toString()))))),l=gi((()=>{if(a.value)return"self"===e.responsive?o.value:i.value})),s=hp((()=>{var t;return null!==(t=Number(Eu(e.cols.toString(),l.value)))&&void 0!==t?t:24})),c=hp((()=>Eu(e.xGap.toString(),l.value))),d=hp((()=>Eu(e.yGap.toString(),l.value))),u=e=>{o.value=e.contentRect.width},p=e=>{Su(u,e)},f=$t(!1),h=gi((()=>{if("self"===e.responsive)return p})),g=$t(!1),b=$t();return rr((()=>{const{value:e}=b;e&&e.hasAttribute(HE)&&(e.removeAttribute(HE),g.value=!0)})),Hr(zE,{layoutShiftDisabledRef:Dt(e,"layoutShiftDisabled"),isSsrRef:g,itemStyleRef:Dt(e,"itemStyle"),xGapRef:c,overflowRef:f}),{isSsr:!Vp,contentEl:b,mergedClsPrefix:t,style:gi((()=>e.layoutShiftDisabled?{width:"100%",display:"grid",gridTemplateColumns:`repeat(${e.cols}, minmax(0, 1fr))`,columnGap:Ou(e.xGap),rowGap:Ou(e.yGap)}:{width:"100%",display:"grid",gridTemplateColumns:`repeat(${s.value}, minmax(0, 1fr))`,columnGap:Ou(c.value),rowGap:Ou(d.value)})),isResponsive:a,responsiveQuery:l,responsiveCols:s,handleResize:h,overflow:f}},render(){if(this.layoutShiftDisabled)return bi("div",Yo({ref:"contentEl",class:`${this.mergedClsPrefix}-grid`,style:this.style},this.$attrs),this.$slots);const e=()=>{var e,t,n,r,o,i,a;this.overflow=!1;const l=ag(lg(this)),s=[],{collapsed:c,collapsedRows:d,responsiveCols:u,responsiveQuery:p}=this;l.forEach((e=>{var t,n,r,o,i;if(!0!==(null===(t=null==e?void 0:e.type)||void 0===t?void 0:t.__GRID_ITEM__))return;if(function(e){var t;const n=null===(t=e.dirs)||void 0===t?void 0:t.find((({dir:e})=>e===qi));return!(!n||!1!==n.value)}(e)){const t=Ko(e);return t.props?t.props.privateShow=!1:t.props={privateShow:!1},void s.push({child:t,rawChildSpan:0})}e.dirs=(null===(n=e.dirs)||void 0===n?void 0:n.filter((({dir:e})=>e!==qi)))||null,0===(null===(r=e.dirs)||void 0===r?void 0:r.length)&&(e.dirs=null);const a=Ko(e),l=Number(null!==(i=Eu(null===(o=a.props)||void 0===o?void 0:o.span,p))&&void 0!==i?i:1);0!==l&&s.push({child:a,rawChildSpan:l})}));let f=0;const h=null===(e=s[s.length-1])||void 0===e?void 0:e.child;if(null==h?void 0:h.props){const e=null===(t=h.props)||void 0===t?void 0:t.suffix;void 0!==e&&!1!==e&&(f=Number(null!==(r=Eu(null===(n=h.props)||void 0===n?void 0:n.span,p))&&void 0!==r?r:1),h.props.privateSpan=f,h.props.privateColStart=u+1-f,h.props.privateShow=null===(o=h.props.privateShow)||void 0===o||o)}let g=0,b=!1;for(const{child:v,rawChildSpan:m}of s){if(b&&(this.overflow=!0),!b){const e=Number(null!==(a=Eu(null===(i=v.props)||void 0===i?void 0:i.offset,p))&&void 0!==a?a:0),t=Math.min(m+e,u);if(v.props?(v.props.privateSpan=t,v.props.privateOffset=e):v.props={privateSpan:t,privateOffset:e},c){const e=g%u;t+e>u&&(g+=u-e),t+g+f>d*u?b=!0:g+=t}}b&&(v.props?!0!==v.props.privateShow&&(v.props.privateShow=!1):v.props={privateShow:!1})}return bi("div",Yo({ref:"contentEl",class:`${this.mergedClsPrefix}-grid`,style:this.style,[HE]:this.isSsr||void 0},this.$attrs),s.map((({child:e})=>e)))};return this.isResponsive&&"self"===this.responsive?bi(Oh,{onResize:this.handleResize},{default:e}):e()}}),UE="n-tabs",qE={tab:[String,Number,Object,Function],name:{type:[String,Number],required:!0},disabled:Boolean,displayDirective:{type:String,default:"if"},closable:{type:Boolean,default:void 0},tabProps:Object,label:[String,Number,Object,Function]},KE=qn({__TAB_PANE__:!0,name:"TabPane",alias:["TabPanel"],props:qE,slots:Object,setup(e){const t=Wr(UE,null);return t||rg("tab-pane","`n-tab-pane` must be placed inside `n-tabs`."),{style:t.paneStyleRef,class:t.paneClassRef,mergedClsPrefix:t.mergedClsPrefixRef}},render(){return bi("div",{class:[`${this.mergedClsPrefix}-tab-pane`,this.class],style:this.style},this.$slots)}}),VE=qn({__TAB__:!0,inheritAttrs:!1,name:"Tab",props:Object.assign({internalLeftPadded:Boolean,internalAddable:Boolean,internalCreatedByPane:Boolean},ug(qE,["displayDirective"])),setup(e){const{mergedClsPrefixRef:t,valueRef:n,typeRef:r,closableRef:o,tabStyleRef:i,addTabStyleRef:a,tabClassRef:l,addTabClassRef:s,tabChangeIdRef:c,onBeforeLeaveRef:d,triggerRef:u,handleAdd:p,activateTab:f,handleClose:h}=Wr(UE);return{trigger:u,mergedClosable:gi((()=>{if(e.internalAddable)return!1;const{closable:t}=e;return void 0===t?o.value:t})),style:i,addStyle:a,tabClass:l,addTabClass:s,clsPrefix:t,value:n,type:r,handleClose(t){t.stopPropagation(),e.disabled||h(e.name)},activateTab(){if(e.disabled)return;if(e.internalAddable)return void p();const{name:t}=e,r=++c.id;if(t!==n.value){const{value:o}=d;o?Promise.resolve(o(e.name,n.value)).then((e=>{e&&c.id===r&&f(t)})):f(t)}}}},render(){const{internalAddable:e,clsPrefix:t,name:n,disabled:r,label:o,tab:i,value:a,mergedClosable:l,trigger:s,$slots:{default:c}}=this,d=null!=o?o:i;return bi("div",{class:`${t}-tabs-tab-wrapper`},this.internalLeftPadded?bi("div",{class:`${t}-tabs-tab-pad`}):null,bi("div",Object.assign({key:n,"data-name":n,"data-disabled":!!r||void 0},Yo({class:[`${t}-tabs-tab`,a===n&&`${t}-tabs-tab--active`,r&&`${t}-tabs-tab--disabled`,l&&`${t}-tabs-tab--closable`,e&&`${t}-tabs-tab--addable`,e?this.addTabClass:this.tabClass],onClick:"click"===s?this.activateTab:void 0,onMouseenter:"hover"===s?this.activateTab:void 0,style:e?this.addStyle:this.style},this.internalCreatedByPane?this.tabProps||{}:this.$attrs)),bi("span",{class:`${t}-tabs-tab__label`},e?bi(Oo,null,bi("div",{class:`${t}-tabs-tab__height-placeholder`}," "),bi(Oy,{clsPrefix:t},{default:()=>bi(Py,null)})):c?c():"object"==typeof d?d:pg(null!=d?d:n)),l&&"card"===this.type?bi(rx,{clsPrefix:t,class:`${t}-tabs-tab__close`,onClick:this.handleClose,disabled:r}):null))}}),GE=uu("tabs","\n box-sizing: border-box;\n width: 100%;\n display: flex;\n flex-direction: column;\n transition:\n background-color .3s var(--n-bezier),\n border-color .3s var(--n-bezier);\n",[fu("segment-type",[uu("tabs-rail",[cu("&.transition-disabled",[uu("tabs-capsule","\n transition: none;\n ")])])]),fu("top",[uu("tab-pane","\n padding: var(--n-pane-padding-top) var(--n-pane-padding-right) var(--n-pane-padding-bottom) var(--n-pane-padding-left);\n ")]),fu("left",[uu("tab-pane","\n padding: var(--n-pane-padding-right) var(--n-pane-padding-bottom) var(--n-pane-padding-left) var(--n-pane-padding-top);\n ")]),fu("left, right","\n flex-direction: row;\n ",[uu("tabs-bar","\n width: 2px;\n right: 0;\n transition:\n top .2s var(--n-bezier),\n max-height .2s var(--n-bezier),\n background-color .3s var(--n-bezier);\n "),uu("tabs-tab","\n padding: var(--n-tab-padding-vertical); \n ")]),fu("right","\n flex-direction: row-reverse;\n ",[uu("tab-pane","\n padding: var(--n-pane-padding-left) var(--n-pane-padding-top) var(--n-pane-padding-right) var(--n-pane-padding-bottom);\n "),uu("tabs-bar","\n left: 0;\n ")]),fu("bottom","\n flex-direction: column-reverse;\n justify-content: flex-end;\n ",[uu("tab-pane","\n padding: var(--n-pane-padding-bottom) var(--n-pane-padding-right) var(--n-pane-padding-top) var(--n-pane-padding-left);\n "),uu("tabs-bar","\n top: 0;\n ")]),uu("tabs-rail","\n position: relative;\n padding: 3px;\n border-radius: var(--n-tab-border-radius);\n width: 100%;\n background-color: var(--n-color-segment);\n transition: background-color .3s var(--n-bezier);\n display: flex;\n align-items: center;\n ",[uu("tabs-capsule","\n border-radius: var(--n-tab-border-radius);\n position: absolute;\n pointer-events: none;\n background-color: var(--n-tab-color-segment);\n box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .08);\n transition: transform 0.3s var(--n-bezier);\n "),uu("tabs-tab-wrapper","\n flex-basis: 0;\n flex-grow: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n ",[uu("tabs-tab","\n overflow: hidden;\n border-radius: var(--n-tab-border-radius);\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n ",[fu("active","\n font-weight: var(--n-font-weight-strong);\n color: var(--n-tab-text-color-active);\n "),cu("&:hover","\n color: var(--n-tab-text-color-hover);\n ")])])]),fu("flex",[uu("tabs-nav","\n width: 100%;\n position: relative;\n ",[uu("tabs-wrapper","\n width: 100%;\n ",[uu("tabs-tab","\n margin-right: 0;\n ")])])]),uu("tabs-nav","\n box-sizing: border-box;\n line-height: 1.5;\n display: flex;\n transition: border-color .3s var(--n-bezier);\n ",[pu("prefix, suffix","\n display: flex;\n align-items: center;\n "),pu("prefix","padding-right: 16px;"),pu("suffix","padding-left: 16px;")]),fu("top, bottom",[uu("tabs-nav-scroll-wrapper",[cu("&::before","\n top: 0;\n bottom: 0;\n left: 0;\n width: 20px;\n "),cu("&::after","\n top: 0;\n bottom: 0;\n right: 0;\n width: 20px;\n "),fu("shadow-start",[cu("&::before","\n box-shadow: inset 10px 0 8px -8px rgba(0, 0, 0, .12);\n ")]),fu("shadow-end",[cu("&::after","\n box-shadow: inset -10px 0 8px -8px rgba(0, 0, 0, .12);\n ")])])]),fu("left, right",[uu("tabs-nav-scroll-content","\n flex-direction: column;\n "),uu("tabs-nav-scroll-wrapper",[cu("&::before","\n top: 0;\n left: 0;\n right: 0;\n height: 20px;\n "),cu("&::after","\n bottom: 0;\n left: 0;\n right: 0;\n height: 20px;\n "),fu("shadow-start",[cu("&::before","\n box-shadow: inset 0 10px 8px -8px rgba(0, 0, 0, .12);\n ")]),fu("shadow-end",[cu("&::after","\n box-shadow: inset 0 -10px 8px -8px rgba(0, 0, 0, .12);\n ")])])]),uu("tabs-nav-scroll-wrapper","\n flex: 1;\n position: relative;\n overflow: hidden;\n ",[uu("tabs-nav-y-scroll","\n height: 100%;\n width: 100%;\n overflow-y: auto; \n scrollbar-width: none;\n ",[cu("&::-webkit-scrollbar, &::-webkit-scrollbar-track-piece, &::-webkit-scrollbar-thumb","\n width: 0;\n height: 0;\n display: none;\n ")]),cu("&::before, &::after",'\n transition: box-shadow .3s var(--n-bezier);\n pointer-events: none;\n content: "";\n position: absolute;\n z-index: 1;\n ')]),uu("tabs-nav-scroll-content","\n display: flex;\n position: relative;\n min-width: 100%;\n min-height: 100%;\n width: fit-content;\n box-sizing: border-box;\n "),uu("tabs-wrapper","\n display: inline-flex;\n flex-wrap: nowrap;\n position: relative;\n "),uu("tabs-tab-wrapper","\n display: flex;\n flex-wrap: nowrap;\n flex-shrink: 0;\n flex-grow: 0;\n "),uu("tabs-tab","\n cursor: pointer;\n white-space: nowrap;\n flex-wrap: nowrap;\n display: inline-flex;\n align-items: center;\n color: var(--n-tab-text-color);\n font-size: var(--n-tab-font-size);\n background-clip: padding-box;\n padding: var(--n-tab-padding);\n transition:\n box-shadow .3s var(--n-bezier),\n color .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n border-color .3s var(--n-bezier);\n ",[fu("disabled",{cursor:"not-allowed"}),pu("close","\n margin-left: 6px;\n transition:\n background-color .3s var(--n-bezier),\n color .3s var(--n-bezier);\n "),pu("label","\n display: flex;\n align-items: center;\n z-index: 1;\n ")]),uu("tabs-bar","\n position: absolute;\n bottom: 0;\n height: 2px;\n border-radius: 1px;\n background-color: var(--n-bar-color);\n transition:\n left .2s var(--n-bezier),\n max-width .2s var(--n-bezier),\n opacity .3s var(--n-bezier),\n background-color .3s var(--n-bezier);\n ",[cu("&.transition-disabled","\n transition: none;\n "),fu("disabled","\n background-color: var(--n-tab-text-color-disabled)\n ")]),uu("tabs-pane-wrapper","\n position: relative;\n overflow: hidden;\n transition: max-height .2s var(--n-bezier);\n "),uu("tab-pane","\n color: var(--n-pane-text-color);\n width: 100%;\n transition:\n color .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n opacity .2s var(--n-bezier);\n left: 0;\n right: 0;\n top: 0;\n ",[cu("&.next-transition-leave-active, &.prev-transition-leave-active, &.next-transition-enter-active, &.prev-transition-enter-active","\n transition:\n color .3s var(--n-bezier),\n background-color .3s var(--n-bezier),\n transform .2s var(--n-bezier),\n opacity .2s var(--n-bezier);\n "),cu("&.next-transition-leave-active, &.prev-transition-leave-active","\n position: absolute;\n "),cu("&.next-transition-enter-from, &.prev-transition-leave-to","\n transform: translateX(32px);\n opacity: 0;\n "),cu("&.next-transition-leave-to, &.prev-transition-enter-from","\n transform: translateX(-32px);\n opacity: 0;\n "),cu("&.next-transition-leave-from, &.next-transition-enter-to, &.prev-transition-leave-from, &.prev-transition-enter-to","\n transform: translateX(0);\n opacity: 1;\n ")]),uu("tabs-tab-pad","\n box-sizing: border-box;\n width: var(--n-tab-gap);\n flex-grow: 0;\n flex-shrink: 0;\n "),fu("line-type, bar-type",[uu("tabs-tab","\n font-weight: var(--n-tab-font-weight);\n box-sizing: border-box;\n vertical-align: bottom;\n ",[cu("&:hover",{color:"var(--n-tab-text-color-hover)"}),fu("active","\n color: var(--n-tab-text-color-active);\n font-weight: var(--n-tab-font-weight-active);\n "),fu("disabled",{color:"var(--n-tab-text-color-disabled)"})])]),uu("tabs-nav",[fu("line-type",[fu("top",[pu("prefix, suffix","\n border-bottom: 1px solid var(--n-tab-border-color);\n "),uu("tabs-nav-scroll-content","\n border-bottom: 1px solid var(--n-tab-border-color);\n "),uu("tabs-bar","\n bottom: -1px;\n ")]),fu("left",[pu("prefix, suffix","\n border-right: 1px solid var(--n-tab-border-color);\n "),uu("tabs-nav-scroll-content","\n border-right: 1px solid var(--n-tab-border-color);\n "),uu("tabs-bar","\n right: -1px;\n ")]),fu("right",[pu("prefix, suffix","\n border-left: 1px solid var(--n-tab-border-color);\n "),uu("tabs-nav-scroll-content","\n border-left: 1px solid var(--n-tab-border-color);\n "),uu("tabs-bar","\n left: -1px;\n ")]),fu("bottom",[pu("prefix, suffix","\n border-top: 1px solid var(--n-tab-border-color);\n "),uu("tabs-nav-scroll-content","\n border-top: 1px solid var(--n-tab-border-color);\n "),uu("tabs-bar","\n top: -1px;\n ")]),pu("prefix, suffix","\n transition: border-color .3s var(--n-bezier);\n "),uu("tabs-nav-scroll-content","\n transition: border-color .3s var(--n-bezier);\n "),uu("tabs-bar","\n border-radius: 0;\n ")]),fu("card-type",[pu("prefix, suffix","\n transition: border-color .3s var(--n-bezier);\n "),uu("tabs-pad","\n flex-grow: 1;\n transition: border-color .3s var(--n-bezier);\n "),uu("tabs-tab-pad","\n transition: border-color .3s var(--n-bezier);\n "),uu("tabs-tab","\n font-weight: var(--n-tab-font-weight);\n border: 1px solid var(--n-tab-border-color);\n background-color: var(--n-tab-color);\n box-sizing: border-box;\n position: relative;\n vertical-align: bottom;\n display: flex;\n justify-content: space-between;\n font-size: var(--n-tab-font-size);\n color: var(--n-tab-text-color);\n ",[fu("addable","\n padding-left: 8px;\n padding-right: 8px;\n font-size: 16px;\n justify-content: center;\n ",[pu("height-placeholder","\n width: 0;\n font-size: var(--n-tab-font-size);\n "),hu("disabled",[cu("&:hover","\n color: var(--n-tab-text-color-hover);\n ")])]),fu("closable","padding-right: 8px;"),fu("active","\n background-color: #0000;\n font-weight: var(--n-tab-font-weight-active);\n color: var(--n-tab-text-color-active);\n "),fu("disabled","color: var(--n-tab-text-color-disabled);")])]),fu("left, right","\n flex-direction: column; \n ",[pu("prefix, suffix","\n padding: var(--n-tab-padding-vertical);\n "),uu("tabs-wrapper","\n flex-direction: column;\n "),uu("tabs-tab-wrapper","\n flex-direction: column;\n ",[uu("tabs-tab-pad","\n height: var(--n-tab-gap-vertical);\n width: 100%;\n ")])]),fu("top",[fu("card-type",[uu("tabs-scroll-padding","border-bottom: 1px solid var(--n-tab-border-color);"),pu("prefix, suffix","\n border-bottom: 1px solid var(--n-tab-border-color);\n "),uu("tabs-tab","\n border-top-left-radius: var(--n-tab-border-radius);\n border-top-right-radius: var(--n-tab-border-radius);\n ",[fu("active","\n border-bottom: 1px solid #0000;\n ")]),uu("tabs-tab-pad","\n border-bottom: 1px solid var(--n-tab-border-color);\n "),uu("tabs-pad","\n border-bottom: 1px solid var(--n-tab-border-color);\n ")])]),fu("left",[fu("card-type",[uu("tabs-scroll-padding","border-right: 1px solid var(--n-tab-border-color);"),pu("prefix, suffix","\n border-right: 1px solid var(--n-tab-border-color);\n "),uu("tabs-tab","\n border-top-left-radius: var(--n-tab-border-radius);\n border-bottom-left-radius: var(--n-tab-border-radius);\n ",[fu("active","\n border-right: 1px solid #0000;\n ")]),uu("tabs-tab-pad","\n border-right: 1px solid var(--n-tab-border-color);\n "),uu("tabs-pad","\n border-right: 1px solid var(--n-tab-border-color);\n ")])]),fu("right",[fu("card-type",[uu("tabs-scroll-padding","border-left: 1px solid var(--n-tab-border-color);"),pu("prefix, suffix","\n border-left: 1px solid var(--n-tab-border-color);\n "),uu("tabs-tab","\n border-top-right-radius: var(--n-tab-border-radius);\n border-bottom-right-radius: var(--n-tab-border-radius);\n ",[fu("active","\n border-left: 1px solid #0000;\n ")]),uu("tabs-tab-pad","\n border-left: 1px solid var(--n-tab-border-color);\n "),uu("tabs-pad","\n border-left: 1px solid var(--n-tab-border-color);\n ")])]),fu("bottom",[fu("card-type",[uu("tabs-scroll-padding","border-top: 1px solid var(--n-tab-border-color);"),pu("prefix, suffix","\n border-top: 1px solid var(--n-tab-border-color);\n "),uu("tabs-tab","\n border-bottom-left-radius: var(--n-tab-border-radius);\n border-bottom-right-radius: var(--n-tab-border-radius);\n ",[fu("active","\n border-top: 1px solid #0000;\n ")]),uu("tabs-tab-pad","\n border-top: 1px solid var(--n-tab-border-color);\n "),uu("tabs-pad","\n border-top: 1px solid var(--n-tab-border-color);\n ")])])])]),ZE=qn({name:"Tabs",props:Object.assign(Object.assign({},Ey.props),{value:[String,Number],defaultValue:[String,Number],trigger:{type:String,default:"click"},type:{type:String,default:"bar"},closable:Boolean,justifyContent:String,size:{type:String,default:"medium"},placement:{type:String,default:"top"},tabStyle:[String,Object],tabClass:String,addTabStyle:[String,Object],addTabClass:String,barWidth:Number,paneClass:String,paneStyle:[String,Object],paneWrapperClass:String,paneWrapperStyle:[String,Object],addable:[Boolean,Object],tabsPadding:{type:Number,default:0},animated:Boolean,onBeforeLeave:Function,onAdd:Function,"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array],onClose:[Function,Array],labelSize:String,activeName:[String,Number],onActiveNameChange:[Function,Array]}),slots:Object,setup(e,{slots:t}){var n,r,o,i;const{mergedClsPrefixRef:a,inlineThemeDisabled:l}=wg(e),s=Ey("Tabs","-tabs",GE,G_,e,a),c=$t(null),d=$t(null),u=$t(null),p=$t(null),f=$t(null),h=$t(null),g=$t(!0),b=$t(!0),v=Mp(e,["labelSize","size"]),m=Mp(e,["activeName","value"]),y=$t(null!==(r=null!==(n=m.value)&&void 0!==n?n:e.defaultValue)&&void 0!==r?r:t.default?null===(i=null===(o=ag(t.default())[0])||void 0===o?void 0:o.props)||void 0===i?void 0:i.name:null),x=$p(m,y),w={id:0},C=gi((()=>{if(e.justifyContent&&"card"!==e.type)return{display:"flex",justifyContent:e.justifyContent}}));function S(){var e;const{value:t}=x;if(null===t)return null;return null===(e=c.value)||void 0===e?void 0:e.querySelector(`[data-name="${t}"]`)}function k(e){const{value:t}=d;if(t)for(const n of e)t.style[n]=""}function _(){if("card"===e.type)return;const t=S();t?function(t){if("card"===e.type)return;const{value:n}=d;if(!n)return;const r="0"===n.style.opacity;if(t){const o=`${a.value}-tabs-bar--disabled`,{barWidth:i,placement:l}=e;if("true"===t.dataset.disabled?n.classList.add(o):n.classList.remove(o),["top","bottom"].includes(l)){if(k(["top","maxHeight","height"]),"number"==typeof i&&t.offsetWidth>=i){const e=Math.floor((t.offsetWidth-i)/2)+t.offsetLeft;n.style.left=`${e}px`,n.style.maxWidth=`${i}px`}else n.style.left=`${t.offsetLeft}px`,n.style.maxWidth=`${t.offsetWidth}px`;n.style.width="8192px",r&&(n.style.transition="none"),n.offsetWidth,r&&(n.style.transition="",n.style.opacity="1")}else{if(k(["left","maxWidth","width"]),"number"==typeof i&&t.offsetHeight>=i){const e=Math.floor((t.offsetHeight-i)/2)+t.offsetTop;n.style.top=`${e}px`,n.style.maxHeight=`${i}px`}else n.style.top=`${t.offsetTop}px`,n.style.maxHeight=`${t.offsetHeight}px`;n.style.height="8192px",r&&(n.style.transition="none"),n.offsetHeight,r&&(n.style.transition="",n.style.opacity="1")}}}(t):function(){if("card"===e.type)return;const{value:t}=d;t&&(t.style.opacity="0")}()}function E(){var e;const t=null===(e=f.value)||void 0===e?void 0:e.$el;if(!t)return;const n=S();if(!n)return;const{scrollLeft:r,offsetWidth:o}=t,{offsetLeft:i,offsetWidth:a}=n;r>i?t.scrollTo({top:0,left:i,behavior:"smooth"}):i+a>r+o&&t.scrollTo({top:0,left:i+a-o,behavior:"smooth"})}go(x,(()=>{w.id=0,_(),E()}));const R=$t(null);let O=0,A=null;const P={value:[]},T=$t("next");function $(){const{value:e}=d;if(!e)return;const t="transition-disabled";e.classList.add(t),_(),e.classList.remove(t)}const z=$t(null);function M({transitionDisabled:e}){const t=c.value;if(!t)return;e&&t.classList.add("transition-disabled");const n=S();n&&z.value&&(z.value.style.width=`${n.offsetWidth}px`,z.value.style.height=`${n.offsetHeight}px`,z.value.style.transform=`translateX(${n.offsetLeft-Ru(getComputedStyle(t).paddingLeft)}px)`,e&&z.value.offsetWidth),e&&t.classList.remove("transition-disabled")}go([x],(()=>{"segment"===e.type&&an((()=>{M({transitionDisabled:!1})}))})),rr((()=>{"segment"===e.type&&M({transitionDisabled:!0})}));let F=0;const N=by((function(t){var n;if(0===t.contentRect.width&&0===t.contentRect.height)return;if(F===t.contentRect.width)return;F=t.contentRect.width;const{type:r}=e;if("line"!==r&&"bar"!==r||$(),"segment"!==r){const{placement:t}=e;L(("top"===t||"bottom"===t?null===(n=f.value)||void 0===n?void 0:n.$el:h.value)||null)}}),64);go([()=>e.justifyContent,()=>e.size],(()=>{an((()=>{const{type:t}=e;"line"!==t&&"bar"!==t||$()}))}));const B=$t(!1);const I=by((function(t){var n;const{target:r,contentRect:{width:o,height:i}}=t,a=r.parentElement.parentElement.offsetWidth,l=r.parentElement.parentElement.offsetHeight,{placement:s}=e;if(B.value){const{value:e}=p;if(!e)return;"top"===s||"bottom"===s?a-o>e.$el.offsetWidth&&(B.value=!1):l-i>e.$el.offsetHeight&&(B.value=!1)}else"top"===s||"bottom"===s?a=n}else{const{scrollTop:e,scrollHeight:n,offsetHeight:r}=t;g.value=e<=0,b.value=e+r>=n}}const j=by((e=>{L(e.target)}),64);Hr(UE,{triggerRef:Dt(e,"trigger"),tabStyleRef:Dt(e,"tabStyle"),tabClassRef:Dt(e,"tabClass"),addTabStyleRef:Dt(e,"addTabStyle"),addTabClassRef:Dt(e,"addTabClass"),paneClassRef:Dt(e,"paneClass"),paneStyleRef:Dt(e,"paneStyle"),mergedClsPrefixRef:a,typeRef:Dt(e,"type"),closableRef:Dt(e,"closable"),valueRef:x,tabChangeIdRef:w,onBeforeLeaveRef:Dt(e,"onBeforeLeave"),activateTab:function(t){const n=x.value;let r="next";for(const e of P.value){if(e===n)break;if(e===t){r="prev";break}}T.value=r,function(t){const{onActiveNameChange:n,onUpdateValue:r,"onUpdate:value":o}=e;n&&og(n,t);r&&og(r,t);o&&og(o,t);y.value=t}(t)},handleClose:function(t){const{onClose:n}=e;n&&og(n,t)},handleAdd:function(){const{onAdd:t}=e;t&&t(),an((()=>{const e=S(),{value:t}=f;e&&t&&t.scrollTo({left:e.offsetLeft,top:0,behavior:"smooth"})}))}}),wp((()=>{_(),E()})),ho((()=>{const{value:e}=u;if(!e)return;const{value:t}=a,n=`${t}-tabs-nav-scroll-wrapper--shadow-start`,r=`${t}-tabs-nav-scroll-wrapper--shadow-end`;g.value?e.classList.remove(n):e.classList.add(n),b.value?e.classList.remove(r):e.classList.add(r)}));const D={syncBarPosition:()=>{_()}},H=gi((()=>{const{value:t}=v,{type:n}=e,r=`${t}${{card:"Card",bar:"Bar",line:"Line",segment:"Segment"}[n]}`,{self:{barColor:o,closeIconColor:i,closeIconColorHover:a,closeIconColorPressed:l,tabColor:c,tabBorderColor:d,paneTextColor:u,tabFontWeight:p,tabBorderRadius:f,tabFontWeightActive:h,colorSegment:g,fontWeightStrong:b,tabColorSegment:m,closeSize:y,closeIconSize:x,closeColorHover:w,closeColorPressed:C,closeBorderRadius:S,[yu("panePadding",t)]:k,[yu("tabPadding",r)]:_,[yu("tabPaddingVertical",r)]:E,[yu("tabGap",r)]:R,[yu("tabGap",`${r}Vertical`)]:O,[yu("tabTextColor",n)]:A,[yu("tabTextColorActive",n)]:P,[yu("tabTextColorHover",n)]:T,[yu("tabTextColorDisabled",n)]:$,[yu("tabFontSize",t)]:z},common:{cubicBezierEaseInOut:M}}=s.value;return{"--n-bezier":M,"--n-color-segment":g,"--n-bar-color":o,"--n-tab-font-size":z,"--n-tab-text-color":A,"--n-tab-text-color-active":P,"--n-tab-text-color-disabled":$,"--n-tab-text-color-hover":T,"--n-pane-text-color":u,"--n-tab-border-color":d,"--n-tab-border-radius":f,"--n-close-size":y,"--n-close-icon-size":x,"--n-close-color-hover":w,"--n-close-color-pressed":C,"--n-close-border-radius":S,"--n-close-icon-color":i,"--n-close-icon-color-hover":a,"--n-close-icon-color-pressed":l,"--n-tab-color":c,"--n-tab-font-weight":p,"--n-tab-font-weight-active":h,"--n-tab-padding":_,"--n-tab-padding-vertical":E,"--n-tab-gap":R,"--n-tab-gap-vertical":O,"--n-pane-padding-left":Au(k,"left"),"--n-pane-padding-right":Au(k,"right"),"--n-pane-padding-top":Au(k,"top"),"--n-pane-padding-bottom":Au(k,"bottom"),"--n-font-weight-strong":b,"--n-tab-color-segment":m}})),W=l?Sg("tabs",gi((()=>`${v.value[0]}${e.type[0]}`)),H,e):void 0;return Object.assign({mergedClsPrefix:a,mergedValue:x,renderedNames:new Set,segmentCapsuleElRef:z,tabsPaneWrapperRef:R,tabsElRef:c,barElRef:d,addTabInstRef:p,xScrollInstRef:f,scrollWrapperElRef:u,addTabFixed:B,tabWrapperStyle:C,handleNavResize:N,mergedSize:v,handleScroll:j,handleTabsResize:I,cssVars:l?void 0:H,themeClass:null==W?void 0:W.themeClass,animationDirection:T,renderNameListRef:P,yScrollElRef:h,handleSegmentResize:()=>{M({transitionDisabled:!0})},onAnimationBeforeLeave:function(e){const t=R.value;if(t){O=e.getBoundingClientRect().height;const n=`${O}px`,r=()=>{t.style.height=n,t.style.maxHeight=n};A?(r(),A(),A=null):A=r}},onAnimationEnter:function(e){const t=R.value;if(t){const n=e.getBoundingClientRect().height,r=()=>{document.body.offsetHeight,t.style.maxHeight=`${n}px`,t.style.height=`${Math.max(O,n)}px`};A?(A(),A=null,r()):A=r}},onAnimationAfterEnter:function(){const t=R.value;if(t){t.style.maxHeight="",t.style.height="";const{paneWrapperStyle:n}=e;if("string"==typeof n)t.style.cssText=n;else if(n){const{maxHeight:e,height:r}=n;void 0!==e&&(t.style.maxHeight=e),void 0!==r&&(t.style.height=r)}}},onRender:null==W?void 0:W.onRender},D)},render(){const{mergedClsPrefix:e,type:t,placement:n,addTabFixed:r,addable:o,mergedSize:i,renderNameListRef:a,onRender:l,paneWrapperClass:s,paneWrapperStyle:c,$slots:{default:d,prefix:u,suffix:p}}=this;null==l||l();const f=d?ag(d()).filter((e=>!0===e.type.__TAB_PANE__)):[],h=d?ag(d()).filter((e=>!0===e.type.__TAB__)):[],g=!h.length,b="card"===t,v="segment"===t,m=!b&&!v&&this.justifyContent;a.value=[];const y=()=>{const t=bi("div",{style:this.tabWrapperStyle,class:`${e}-tabs-wrapper`},m?null:bi("div",{class:`${e}-tabs-scroll-padding`,style:"top"===n||"bottom"===n?{width:`${this.tabsPadding}px`}:{height:`${this.tabsPadding}px`}}),g?f.map(((e,t)=>(a.value.push(e.props.name),JE(bi(VE,Object.assign({},e.props,{internalCreatedByPane:!0,internalLeftPadded:0!==t&&(!m||"center"===m||"start"===m||"end"===m)}),e.children?{default:e.children.tab}:void 0))))):h.map(((e,t)=>(a.value.push(e.props.name),JE(0===t||m?e:YE(e))))),!r&&o&&b?QE(o,0!==(g?f.length:h.length)):null,m?null:bi("div",{class:`${e}-tabs-scroll-padding`,style:{width:`${this.tabsPadding}px`}}));return bi("div",{ref:"tabsElRef",class:`${e}-tabs-nav-scroll-content`},b&&o?bi(Oh,{onResize:this.handleTabsResize},{default:()=>t}):t,b?bi("div",{class:`${e}-tabs-pad`}):null,b?null:bi("div",{ref:"barElRef",class:`${e}-tabs-bar`}))},x=v?"top":n;return bi("div",{class:[`${e}-tabs`,this.themeClass,`${e}-tabs--${t}-type`,`${e}-tabs--${i}-size`,m&&`${e}-tabs--flex`,`${e}-tabs--${x}`],style:this.cssVars},bi("div",{class:[`${e}-tabs-nav--${t}-type`,`${e}-tabs-nav--${x}`,`${e}-tabs-nav`]},bg(u,(t=>t&&bi("div",{class:`${e}-tabs-nav__prefix`},t))),v?bi(Oh,{onResize:this.handleSegmentResize},{default:()=>bi("div",{class:`${e}-tabs-rail`,ref:"tabsElRef"},bi("div",{class:`${e}-tabs-capsule`,ref:"segmentCapsuleElRef"},bi("div",{class:`${e}-tabs-wrapper`},bi("div",{class:`${e}-tabs-tab`}))),g?f.map(((e,t)=>(a.value.push(e.props.name),bi(VE,Object.assign({},e.props,{internalCreatedByPane:!0,internalLeftPadded:0!==t}),e.children?{default:e.children.tab}:void 0)))):h.map(((e,t)=>(a.value.push(e.props.name),0===t?e:YE(e)))))}):bi(Oh,{onResize:this.handleNavResize},{default:()=>bi("div",{class:`${e}-tabs-nav-scroll-wrapper`,ref:"scrollWrapperElRef"},["top","bottom"].includes(x)?bi(Bh,{ref:"xScrollInstRef",onScroll:this.handleScroll},{default:y}):bi("div",{class:`${e}-tabs-nav-y-scroll`,onScroll:this.handleScroll,ref:"yScrollElRef"},y()))}),r&&o&&b?QE(o,!0):null,bg(p,(t=>t&&bi("div",{class:`${e}-tabs-nav__suffix`},t)))),g&&(!this.animated||"top"!==x&&"bottom"!==x?XE(f,this.mergedValue,this.renderedNames):bi("div",{ref:"tabsPaneWrapperRef",style:c,class:[`${e}-tabs-pane-wrapper`,s]},XE(f,this.mergedValue,this.renderedNames,this.onAnimationBeforeLeave,this.onAnimationEnter,this.onAnimationAfterEnter,this.animationDirection))))}});function XE(e,t,n,r,o,i,a){const l=[];return e.forEach((e=>{const{name:r,displayDirective:o,"display-directive":i}=e.props,a=e=>o===e||i===e,s=t===r;if(void 0!==e.key&&(e.key=r),s||a("show")||a("show:lazy")&&n.has(r)){n.has(r)||n.add(r);const t=!a("if");l.push(t?vn(e,[[qi,s]]):e)}})),a?bi(fa,{name:`${a}-transition`,onBeforeLeave:r,onEnter:o,onAfterEnter:i},{default:()=>l}):l}function QE(e,t){return bi(VE,{ref:"addTabInstRef",key:"__addable",name:"__addable",internalCreatedByPane:!0,internalAddable:!0,internalLeftPadded:t,disabled:"object"==typeof e&&e.disabled})}function YE(e){const t=Ko(e);return t.props?t.props.internalLeftPadded=!0:t.props={internalLeftPadded:!0},t}function JE(e){return Array.isArray(e.dynamicProps)?e.dynamicProps.includes("internalLeftPadded")||e.dynamicProps.push("internalLeftPadded"):e.dynamicProps=["internalLeftPadded"],e}function eR(e,t){return function(){return e.apply(t,arguments)}}const{toString:tR}=Object.prototype,{getPrototypeOf:nR}=Object,rR=(e=>t=>{const n=tR.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),oR=e=>(e=e.toLowerCase(),t=>rR(t)===e),iR=e=>t=>typeof t===e,{isArray:aR}=Array,lR=iR("undefined");const sR=oR("ArrayBuffer");const cR=iR("string"),dR=iR("function"),uR=iR("number"),pR=e=>null!==e&&"object"==typeof e,fR=e=>{if("object"!==rR(e))return!1;const t=nR(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},hR=oR("Date"),gR=oR("File"),bR=oR("Blob"),vR=oR("FileList"),mR=oR("URLSearchParams"),[yR,xR,wR,CR]=["ReadableStream","Request","Response","Headers"].map(oR);function SR(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let r,o;if("object"!=typeof e&&(e=[e]),aR(e))for(r=0,o=e.length;r0;)if(r=n[o],t===r.toLowerCase())return r;return null}const _R="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,ER=e=>!lR(e)&&e!==_R;const RR=(e=>t=>e&&t instanceof e)("undefined"!=typeof Uint8Array&&nR(Uint8Array)),OR=oR("HTMLFormElement"),AR=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),PR=oR("RegExp"),TR=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};SR(n,((n,o)=>{let i;!1!==(i=t(n,o,e))&&(r[o]=i||n)})),Object.defineProperties(e,r)},$R="abcdefghijklmnopqrstuvwxyz",zR="0123456789",MR={DIGIT:zR,ALPHA:$R,ALPHA_DIGIT:$R+$R.toUpperCase()+zR};const FR=oR("AsyncFunction"),NR=(BR="function"==typeof setImmediate,IR=dR(_R.postMessage),BR?setImmediate:IR?(LR=`axios@${Math.random()}`,jR=[],_R.addEventListener("message",(({source:e,data:t})=>{e===_R&&t===LR&&jR.length&&jR.shift()()}),!1),e=>{jR.push(e),_R.postMessage(LR,"*")}):e=>setTimeout(e));var BR,IR,LR,jR;const DR="undefined"!=typeof queueMicrotask?queueMicrotask.bind(_R):"undefined"!=typeof process&&process.nextTick||NR,HR={isArray:aR,isArrayBuffer:sR,isBuffer:function(e){return null!==e&&!lR(e)&&null!==e.constructor&&!lR(e.constructor)&&dR(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||dR(e.append)&&("formdata"===(t=rR(e))||"object"===t&&dR(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&sR(e.buffer),t},isString:cR,isNumber:uR,isBoolean:e=>!0===e||!1===e,isObject:pR,isPlainObject:fR,isReadableStream:yR,isRequest:xR,isResponse:wR,isHeaders:CR,isUndefined:lR,isDate:hR,isFile:gR,isBlob:bR,isRegExp:PR,isFunction:dR,isStream:e=>pR(e)&&dR(e.pipe),isURLSearchParams:mR,isTypedArray:RR,isFileList:vR,forEach:SR,merge:function e(){const{caseless:t}=ER(this)&&this||{},n={},r=(r,o)=>{const i=t&&kR(n,o)||o;fR(n[i])&&fR(r)?n[i]=e(n[i],r):fR(r)?n[i]=e({},r):aR(r)?n[i]=r.slice():n[i]=r};for(let o=0,i=arguments.length;o(SR(t,((t,r)=>{n&&dR(t)?e[r]=eR(t,n):e[r]=t}),{allOwnKeys:r}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let o,i,a;const l={};if(t=t||{},null==e)return t;do{for(o=Object.getOwnPropertyNames(e),i=o.length;i-- >0;)a=o[i],r&&!r(a,e,t)||l[a]||(t[a]=e[a],l[a]=!0);e=!1!==n&&nR(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:rR,kindOfTest:oR,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(aR(e))return e;let t=e.length;if(!uR(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:OR,hasOwnProperty:AR,hasOwnProp:AR,reduceDescriptors:TR,freezeMethods:e=>{TR(e,((t,n)=>{if(dR(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];dR(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return aR(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>null!=e&&Number.isFinite(e=+e)?e:t,findKey:kR,global:_R,isContextDefined:ER,ALPHABET:MR,generateString:(e=16,t=MR.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n},isSpecCompliantForm:function(e){return!!(e&&dR(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(pR(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[r]=e;const o=aR(e)?[]:{};return SR(e,((e,t)=>{const i=n(e,r+1);!lR(i)&&(o[t]=i)})),t[r]=void 0,o}}return e};return n(e,0)},isAsyncFn:FR,isThenable:e=>e&&(pR(e)||dR(e))&&dR(e.then)&&dR(e.catch),setImmediate:NR,asap:DR};function WR(e,t,n,r,o){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),r&&(this.request=r),o&&(this.response=o,this.status=o.status?o.status:null)}HR.inherits(WR,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:HR.toJSONObject(this.config),code:this.code,status:this.status}}});const UR=WR.prototype,qR={};["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=>{qR[e]={value:e}})),Object.defineProperties(WR,qR),Object.defineProperty(UR,"isAxiosError",{value:!0}),WR.from=(e,t,n,r,o,i)=>{const a=Object.create(UR);return HR.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),WR.call(a,e.message,t,n,r,o),a.cause=e,a.name=e.name,i&&Object.assign(a,i),a};function KR(e){return HR.isPlainObject(e)||HR.isArray(e)}function VR(e){return HR.endsWith(e,"[]")?e.slice(0,-2):e}function GR(e,t,n){return e?e.concat(t).map((function(e,t){return e=VR(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const ZR=HR.toFlatObject(HR,{},null,(function(e){return/^is[A-Z]/.test(e)}));function XR(e,t,n){if(!HR.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const r=(n=HR.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!HR.isUndefined(t[e])}))).metaTokens,o=n.visitor||c,i=n.dots,a=n.indexes,l=(n.Blob||"undefined"!=typeof Blob&&Blob)&&HR.isSpecCompliantForm(t);if(!HR.isFunction(o))throw new TypeError("visitor must be a function");function s(e){if(null===e)return"";if(HR.isDate(e))return e.toISOString();if(!l&&HR.isBlob(e))throw new WR("Blob is not supported. Use a Buffer instead.");return HR.isArrayBuffer(e)||HR.isTypedArray(e)?l&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function c(e,n,o){let l=e;if(e&&!o&&"object"==typeof e)if(HR.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(HR.isArray(e)&&function(e){return HR.isArray(e)&&!e.some(KR)}(e)||(HR.isFileList(e)||HR.endsWith(n,"[]"))&&(l=HR.toArray(e)))return n=VR(n),l.forEach((function(e,r){!HR.isUndefined(e)&&null!==e&&t.append(!0===a?GR([n],r,i):null===a?n:n+"[]",s(e))})),!1;return!!KR(e)||(t.append(GR(o,n,i),s(e)),!1)}const d=[],u=Object.assign(ZR,{defaultVisitor:c,convertValue:s,isVisitable:KR});if(!HR.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!HR.isUndefined(n)){if(-1!==d.indexOf(n))throw Error("Circular reference detected in "+r.join("."));d.push(n),HR.forEach(n,(function(n,i){!0===(!(HR.isUndefined(n)||null===n)&&o.call(t,n,HR.isString(i)?i.trim():i,r,u))&&e(n,r?r.concat(i):[i])})),d.pop()}}(e),t}function QR(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function YR(e,t){this._pairs=[],e&&XR(e,this,t)}const JR=YR.prototype;function eO(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function tO(e,t,n){if(!t)return e;const r=n&&n.encode||eO;HR.isFunction(n)&&(n={serialize:n});const o=n&&n.serialize;let i;if(i=o?o(t,n):HR.isURLSearchParams(t)?t.toString():new YR(t,n).toString(r),i){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}JR.append=function(e,t){this._pairs.push([e,t])},JR.toString=function(e){const t=e?function(t){return e.call(this,t,QR)}:QR;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};class nO{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){HR.forEach(this.handlers,(function(t){null!==t&&e(t)}))}}const rO={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},oO={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:YR,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},iO="undefined"!=typeof window&&"undefined"!=typeof document,aO="object"==typeof navigator&&navigator||void 0,lO=iO&&(!aO||["ReactNative","NativeScript","NS"].indexOf(aO.product)<0),sO="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,cO=iO&&window.location.href||"http://localhost",dO=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:iO,hasStandardBrowserEnv:lO,hasStandardBrowserWebWorkerEnv:sO,navigator:aO,origin:cO},Symbol.toStringTag,{value:"Module"})),uO=s(s({},dO),oO);function pO(e){function t(e,n,r,o){let i=e[o++];if("__proto__"===i)return!0;const a=Number.isFinite(+i),l=o>=e.length;if(i=!i&&HR.isArray(r)?r.length:i,l)return HR.hasOwnProp(r,i)?r[i]=[r[i],n]:r[i]=n,!a;r[i]&&HR.isObject(r[i])||(r[i]=[]);return t(e,n,r[i],o)&&HR.isArray(r[i])&&(r[i]=function(e){const t={},n=Object.keys(e);let r;const o=n.length;let i;for(r=0;r{t(function(e){return HR.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null}const fO={transitional:rO,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,o=HR.isObject(e);o&&HR.isHTMLForm(e)&&(e=new FormData(e));if(HR.isFormData(e))return r?JSON.stringify(pO(e)):e;if(HR.isArrayBuffer(e)||HR.isBuffer(e)||HR.isStream(e)||HR.isFile(e)||HR.isBlob(e)||HR.isReadableStream(e))return e;if(HR.isArrayBufferView(e))return e.buffer;if(HR.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let i;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return XR(e,new uO.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,r){return uO.isNode&&HR.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((i=HR.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return XR(i?{"files[]":e}:e,t&&new t,this.formSerializer)}}return o||r?(t.setContentType("application/json",!1),function(e,t,n){if(HR.isString(e))try{return(t||JSON.parse)(e),HR.trim(e)}catch(XT){if("SyntaxError"!==XT.name)throw XT}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||fO.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(HR.isResponse(e)||HR.isReadableStream(e))return e;if(e&&HR.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e)}catch(XT){if(n){if("SyntaxError"===XT.name)throw WR.from(XT,WR.ERR_BAD_RESPONSE,this,null,this.response);throw XT}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:uO.classes.FormData,Blob:uO.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};HR.forEach(["delete","get","head","post","put","patch"],(e=>{fO.headers[e]={}}));const hO=HR.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"]),gO=Symbol("internals");function bO(e){return e&&String(e).trim().toLowerCase()}function vO(e){return!1===e||null==e?e:HR.isArray(e)?e.map(vO):String(e)}function mO(e,t,n,r,o){return HR.isFunction(r)?r.call(this,t,n):(o&&(t=n),HR.isString(t)?HR.isString(r)?-1!==t.indexOf(r):HR.isRegExp(r)?r.test(t):void 0:void 0)}let yO=class{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function o(e,t,n){const o=bO(t);if(!o)throw new Error("header name must be a non-empty string");const i=HR.findKey(r,o);(!i||void 0===r[i]||!0===n||void 0===n&&!1!==r[i])&&(r[i||t]=vO(e))}const i=(e,t)=>HR.forEach(e,((e,n)=>o(e,n,t)));if(HR.isPlainObject(e)||e instanceof this.constructor)i(e,t);else if(HR.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))i((e=>{const t={};let n,r,o;return e&&e.split("\n").forEach((function(e){o=e.indexOf(":"),n=e.substring(0,o).trim().toLowerCase(),r=e.substring(o+1).trim(),!n||t[n]&&hO[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t);else if(HR.isHeaders(e))for(const[a,l]of e.entries())o(l,a,n);else null!=e&&o(t,e,n);return this}get(e,t){if(e=bO(e)){const n=HR.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(HR.isFunction(t))return t.call(this,e,n);if(HR.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=bO(e)){const n=HR.findKey(this,e);return!(!n||void 0===this[n]||t&&!mO(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function o(e){if(e=bO(e)){const o=HR.findKey(n,e);!o||t&&!mO(0,n[o],o,t)||(delete n[o],r=!0)}}return HR.isArray(e)?e.forEach(o):o(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const o=t[n];e&&!mO(0,this[o],o,e,!0)||(delete this[o],r=!0)}return r}normalize(e){const t=this,n={};return HR.forEach(this,((r,o)=>{const i=HR.findKey(n,o);if(i)return t[i]=vO(r),void delete t[o];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(o):String(o).trim();a!==o&&delete t[o],t[a]=vO(r),n[a]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return HR.forEach(this,((n,r)=>{null!=n&&!1!==n&&(t[r]=e&&HR.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[gO]=this[gO]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=bO(e);t[r]||(!function(e,t){const n=HR.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,o){return this[r].call(this,t,e,n,o)},configurable:!0})}))}(n,e),t[r]=!0)}return HR.isArray(e)?e.forEach(r):r(e),this}};function xO(e,t){const n=this||fO,r=t||n,o=yO.from(r.headers);let i=r.data;return HR.forEach(e,(function(e){i=e.call(n,i,o.normalize(),t?t.status:void 0)})),o.normalize(),i}function wO(e){return!(!e||!e.__CANCEL__)}function CO(e,t,n){WR.call(this,null==e?"canceled":e,WR.ERR_CANCELED,t,n),this.name="CanceledError"}function SO(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new WR("Request failed with status code "+n.status,[WR.ERR_BAD_REQUEST,WR.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}yO.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),HR.reduceDescriptors(yO.prototype,(({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[n]=e}}})),HR.freezeMethods(yO),HR.inherits(CO,WR,{__CANCEL__:!0});const kO=(e,t,n=3)=>{let r=0;const o=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o,i=0,a=0;return t=void 0!==t?t:1e3,function(l){const s=Date.now(),c=r[a];o||(o=s),n[i]=l,r[i]=s;let d=a,u=0;for(;d!==i;)u+=n[d++],d%=e;if(i=(i+1)%e,i===a&&(a=(a+1)%e),s-o{o=i,n=null,r&&(clearTimeout(r),r=null),e.apply(null,t)};return[(...e)=>{const t=Date.now(),l=t-o;l>=i?a(e,t):(n=e,r||(r=setTimeout((()=>{r=null,a(n)}),i-l)))},()=>n&&a(n)]}((n=>{const i=n.loaded,a=n.lengthComputable?n.total:void 0,l=i-r,s=o(l);r=i;e({loaded:i,total:a,progress:a?i/a:void 0,bytes:l,rate:s||void 0,estimated:s&&a&&i<=a?(a-i)/s:void 0,event:n,lengthComputable:null!=a,[t?"download":"upload"]:!0})}),n)},_O=(e,t)=>{const n=null!=e;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},EO=e=>(...t)=>HR.asap((()=>e(...t))),RO=uO.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,uO.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(uO.origin),uO.navigator&&/(msie|trident)/i.test(uO.navigator.userAgent)):()=>!0,OO=uO.hasStandardBrowserEnv?{write(e,t,n,r,o,i){const a=[e+"="+encodeURIComponent(t)];HR.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),HR.isString(r)&&a.push("path="+r),HR.isString(o)&&a.push("domain="+o),!0===i&&a.push("secure"),document.cookie=a.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:()=>null,remove(){}};function AO(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const PO=e=>e instanceof yO?s({},e):e;function TO(e,t){t=t||{};const n={};function r(e,t,n,r){return HR.isPlainObject(e)&&HR.isPlainObject(t)?HR.merge.call({caseless:r},e,t):HR.isPlainObject(t)?HR.merge({},t):HR.isArray(t)?t.slice():t}function o(e,t,n,o){return HR.isUndefined(t)?HR.isUndefined(e)?void 0:r(void 0,e,0,o):r(e,t,0,o)}function i(e,t){if(!HR.isUndefined(t))return r(void 0,t)}function a(e,t){return HR.isUndefined(t)?HR.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function l(n,o,i){return i in t?r(n,o):i in e?r(void 0,n):void 0}const s={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:l,headers:(e,t,n)=>o(PO(e),PO(t),0,!0)};return HR.forEach(Object.keys(Object.assign({},e,t)),(function(r){const i=s[r]||o,a=i(e[r],t[r],r);HR.isUndefined(a)&&i!==l||(n[r]=a)})),n}const $O=e=>{const t=TO({},e);let n,{data:r,withXSRFToken:o,xsrfHeaderName:i,xsrfCookieName:a,headers:l,auth:s}=t;if(t.headers=l=yO.from(l),t.url=tO(AO(t.baseURL,t.url),e.params,e.paramsSerializer),s&&l.set("Authorization","Basic "+btoa((s.username||"")+":"+(s.password?unescape(encodeURIComponent(s.password)):""))),HR.isFormData(r))if(uO.hasStandardBrowserEnv||uO.hasStandardBrowserWebWorkerEnv)l.setContentType(void 0);else if(!1!==(n=l.getContentType())){const[e,...t]=n?n.split(";").map((e=>e.trim())).filter(Boolean):[];l.setContentType([e||"multipart/form-data",...t].join("; "))}if(uO.hasStandardBrowserEnv&&(o&&HR.isFunction(o)&&(o=o(t)),o||!1!==o&&RO(t.url))){const e=i&&a&&OO.read(a);e&&l.set(i,e)}return t},zO="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){const r=$O(e);let o=r.data;const i=yO.from(r.headers).normalize();let a,l,s,c,d,{responseType:u,onUploadProgress:p,onDownloadProgress:f}=r;function h(){c&&c(),d&&d(),r.cancelToken&&r.cancelToken.unsubscribe(a),r.signal&&r.signal.removeEventListener("abort",a)}let g=new XMLHttpRequest;function b(){if(!g)return;const r=yO.from("getAllResponseHeaders"in g&&g.getAllResponseHeaders());SO((function(e){t(e),h()}),(function(e){n(e),h()}),{data:u&&"text"!==u&&"json"!==u?g.response:g.responseText,status:g.status,statusText:g.statusText,headers:r,config:e,request:g}),g=null}g.open(r.method.toUpperCase(),r.url,!0),g.timeout=r.timeout,"onloadend"in g?g.onloadend=b:g.onreadystatechange=function(){g&&4===g.readyState&&(0!==g.status||g.responseURL&&0===g.responseURL.indexOf("file:"))&&setTimeout(b)},g.onabort=function(){g&&(n(new WR("Request aborted",WR.ECONNABORTED,e,g)),g=null)},g.onerror=function(){n(new WR("Network Error",WR.ERR_NETWORK,e,g)),g=null},g.ontimeout=function(){let t=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const o=r.transitional||rO;r.timeoutErrorMessage&&(t=r.timeoutErrorMessage),n(new WR(t,o.clarifyTimeoutError?WR.ETIMEDOUT:WR.ECONNABORTED,e,g)),g=null},void 0===o&&i.setContentType(null),"setRequestHeader"in g&&HR.forEach(i.toJSON(),(function(e,t){g.setRequestHeader(t,e)})),HR.isUndefined(r.withCredentials)||(g.withCredentials=!!r.withCredentials),u&&"json"!==u&&(g.responseType=r.responseType),f&&([s,d]=kO(f,!0),g.addEventListener("progress",s)),p&&g.upload&&([l,c]=kO(p),g.upload.addEventListener("progress",l),g.upload.addEventListener("loadend",c)),(r.cancelToken||r.signal)&&(a=t=>{g&&(n(!t||t.type?new CO(null,e,g):t),g.abort(),g=null)},r.cancelToken&&r.cancelToken.subscribe(a),r.signal&&(r.signal.aborted?a():r.signal.addEventListener("abort",a)));const v=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(r.url);v&&-1===uO.protocols.indexOf(v)?n(new WR("Unsupported protocol "+v+":",WR.ERR_BAD_REQUEST,e)):g.send(o||null)}))},MO=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let n,r=new AbortController;const o=function(e){if(!n){n=!0,a();const t=e instanceof Error?e:this.reason;r.abort(t instanceof WR?t:new CO(t instanceof Error?t.message:t))}};let i=t&&setTimeout((()=>{i=null,o(new WR(`timeout ${t} of ms exceeded`,WR.ETIMEDOUT))}),t);const a=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach((e=>{e.unsubscribe?e.unsubscribe(o):e.removeEventListener("abort",o)})),e=null)};e.forEach((e=>e.addEventListener("abort",o)));const{signal:l}=r;return l.unsubscribe=()=>HR.asap(a),l}},FO=function*(e,t){let n=e.byteLength;if(n(t=e[a("asyncIterator")])?t.call(e):(e=e[a("iterator")](),t={},(n=(n,r)=>(r=e[n])&&(t[n]=t=>new Promise(((n,o,i)=>(t=r.call(e,t),i=t.done,Promise.resolve(t.value).then((e=>n({value:e,done:i})),o))))))("next"),n("return"),t))(BO(e));n=!(r=yield new d(i.next())).done;n=!1){const e=r.value;yield*p(FO(e,t))}}catch(r){o=[r]}finally{try{n&&(r=i.return)&&(yield new d(r.call(i)))}finally{if(o)throw o[0]}}}))},BO=function(e){return u(this,null,(function*(){if(e[Symbol.asyncIterator])return void(yield*p(e));const t=e.getReader();try{for(;;){const{done:e,value:n}=yield new d(t.read());if(e)break;yield n}}finally{yield new d(t.cancel())}}))},IO=(e,t,n,r)=>{const o=NO(e,t);let i,a=0,l=e=>{i||(i=!0,r&&r(e))};return new ReadableStream({pull(e){return c(this,null,(function*(){try{const{done:t,value:r}=yield o.next();if(t)return l(),void e.close();let i=r.byteLength;if(n){let e=a+=i;n(e)}e.enqueue(new Uint8Array(r))}catch(t){throw l(t),t}}))},cancel:e=>(l(e),o.return())},{highWaterMark:2})},LO="function"==typeof fetch&&"function"==typeof Request&&"function"==typeof Response,jO=LO&&"function"==typeof ReadableStream,DO=LO&&("function"==typeof TextEncoder?(e=>t=>e.encode(t))(new TextEncoder):e=>c(void 0,null,(function*(){return new Uint8Array(yield new Response(e).arrayBuffer())}))),HO=(e,...t)=>{try{return!!e(...t)}catch(XT){return!1}},WO=jO&&HO((()=>{let e=!1;const t=new Request(uO.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})),UO=jO&&HO((()=>HR.isReadableStream(new Response("").body))),qO={stream:UO&&(e=>e.body)};var KO;LO&&(KO=new Response,["text","arrayBuffer","blob","formData","stream"].forEach((e=>{!qO[e]&&(qO[e]=HR.isFunction(KO[e])?t=>t[e]():(t,n)=>{throw new WR(`Response type '${e}' is not supported`,WR.ERR_NOT_SUPPORT,n)})})));const VO=(e,t)=>c(void 0,null,(function*(){const n=HR.toFiniteNumber(e.getContentLength());return null==n?(e=>c(void 0,null,(function*(){if(null==e)return 0;if(HR.isBlob(e))return e.size;if(HR.isSpecCompliantForm(e)){const t=new Request(uO.origin,{method:"POST",body:e});return(yield t.arrayBuffer()).byteLength}return HR.isArrayBufferView(e)||HR.isArrayBuffer(e)?e.byteLength:(HR.isURLSearchParams(e)&&(e+=""),HR.isString(e)?(yield DO(e)).byteLength:void 0)})))(t):n})),GO={http:null,xhr:zO,fetch:LO&&(e=>c(void 0,null,(function*(){let{url:r,method:o,data:i,signal:a,cancelToken:l,timeout:c,onDownloadProgress:d,onUploadProgress:u,responseType:p,headers:f,withCredentials:h="same-origin",fetchOptions:g}=$O(e);p=p?(p+"").toLowerCase():"text";let b,v=MO([a,l&&l.toAbortSignal()],c);const m=v&&v.unsubscribe&&(()=>{v.unsubscribe()});let y;try{if(u&&WO&&"get"!==o&&"head"!==o&&0!==(y=yield VO(f,i))){let e,t=new Request(r,{method:"POST",body:i,duplex:"half"});if(HR.isFormData(i)&&(e=t.headers.get("content-type"))&&f.setContentType(e),t.body){const[e,n]=_O(y,kO(EO(u)));i=IO(t.body,65536,e,n)}}HR.isString(h)||(h=h?"include":"omit");const a="credentials"in Request.prototype;b=new Request(r,(x=s({},g),w={signal:v,method:o.toUpperCase(),headers:f.normalize().toJSON(),body:i,duplex:"half",credentials:a?h:void 0},t(x,n(w))));let l=yield fetch(b);const c=UO&&("stream"===p||"response"===p);if(UO&&(d||c&&m)){const e={};["status","statusText","headers"].forEach((t=>{e[t]=l[t]}));const t=HR.toFiniteNumber(l.headers.get("content-length")),[n,r]=d&&_O(t,kO(EO(d),!0))||[];l=new Response(IO(l.body,65536,n,(()=>{r&&r(),m&&m()})),e)}p=p||"text";let C=yield qO[HR.findKey(qO,p)||"text"](l,e);return!c&&m&&m(),yield new Promise(((t,n)=>{SO(t,n,{data:C,headers:yO.from(l.headers),status:l.status,statusText:l.statusText,config:e,request:b})}))}catch(C){if(m&&m(),C&&"TypeError"===C.name&&/fetch/i.test(C.message))throw Object.assign(new WR("Network Error",WR.ERR_NETWORK,e,b),{cause:C.cause||C});throw WR.from(C,C&&C.code,e,b)}var x,w})))};HR.forEach(GO,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(XT){}Object.defineProperty(e,"adapterName",{value:t})}}));const ZO=e=>`- ${e}`,XO=e=>HR.isFunction(e)||null===e||!1===e,QO=e=>{e=HR.isArray(e)?e:[e];const{length:t}=e;let n,r;const o={};for(let i=0;i`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));throw new WR("There is no suitable adapter to dispatch the request "+(t?e.length>1?"since :\n"+e.map(ZO).join("\n"):" "+ZO(e[0]):"as no adapter specified"),"ERR_NOT_SUPPORT")}return r};function YO(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new CO(null,e)}function JO(e){YO(e),e.headers=yO.from(e.headers),e.data=xO.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return QO(e.adapter||fO.adapter)(e).then((function(t){return YO(e),t.data=xO.call(e,e.transformResponse,t),t.headers=yO.from(t.headers),t}),(function(t){return wO(t)||(YO(e),t&&t.response&&(t.response.data=xO.call(e,e.transformResponse,t.response),t.response.headers=yO.from(t.response.headers))),Promise.reject(t)}))}const eA="1.7.9",tA={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{tA[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const nA={};tA.transitional=function(e,t,n){return(r,o,i)=>{if(!1===e)throw new WR(function(e,t){return"[Axios v1.7.9] Transitional option '"+e+"'"+t+(n?". "+n:"")}(o," has been removed"+(t?" in "+t:"")),WR.ERR_DEPRECATED);return t&&!nA[o]&&(nA[o]=!0),!e||e(r,o,i)}},tA.spelling=function(e){return(e,t)=>!0};const rA={assertOptions:function(e,t,n){if("object"!=typeof e)throw new WR("options must be an object",WR.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const i=r[o],a=t[i];if(a){const t=e[i],n=void 0===t||a(t,i,e);if(!0!==n)throw new WR("option "+i+" must be "+n,WR.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new WR("Unknown option "+i,WR.ERR_BAD_OPTION)}},validators:tA},oA=rA.validators;let iA=class{constructor(e){this.defaults=e,this.interceptors={request:new nO,response:new nO}}request(e,t){return c(this,null,(function*(){try{return yield this._request(e,t)}catch(n){if(n instanceof Error){let e={};Error.captureStackTrace?Error.captureStackTrace(e):e=new Error;const t=e.stack?e.stack.replace(/^.+\n/,""):"";try{n.stack?t&&!String(n.stack).endsWith(t.replace(/^.+\n.+\n/,""))&&(n.stack+="\n"+t):n.stack=t}catch(XT){}}throw n}}))}_request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=TO(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:o}=t;void 0!==n&&rA.assertOptions(n,{silentJSONParsing:oA.transitional(oA.boolean),forcedJSONParsing:oA.transitional(oA.boolean),clarifyTimeoutError:oA.transitional(oA.boolean)},!1),null!=r&&(HR.isFunction(r)?t.paramsSerializer={serialize:r}:rA.assertOptions(r,{encode:oA.function,serialize:oA.function},!0)),rA.assertOptions(t,{baseUrl:oA.spelling("baseURL"),withXsrfToken:oA.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let i=o&&HR.merge(o.common,o[t.method]);o&&HR.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete o[e]})),t.headers=yO.concat(i,o);const a=[];let l=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(l=l&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const s=[];let c;this.interceptors.response.forEach((function(e){s.push(e.fulfilled,e.rejected)}));let d,u=0;if(!l){const e=[JO.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,s),d=e.length,c=Promise.resolve(t);u{aA[t]=e}));const lA=function e(t){const n=new iA(t),r=eR(iA.prototype.request,n);return HR.extend(r,iA.prototype,n,{allOwnKeys:!0}),HR.extend(r,n,null,{allOwnKeys:!0}),r.create=function(n){return e(TO(t,n))},r}(fO);lA.Axios=iA,lA.CanceledError=CO,lA.CancelToken=class e{constructor(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");let t;this.promise=new Promise((function(e){t=e}));const n=this;this.promise.then((e=>{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,o){n.reason||(n.reason=new CO(e,r,o),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=t=>{e.abort(t)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let t;return{token:new e((function(e){t=e})),cancel:t}}},lA.isCancel=wO,lA.VERSION=eA,lA.toFormData=XR,lA.AxiosError=WR,lA.Cancel=lA.CanceledError,lA.all=function(e){return Promise.all(e)},lA.spread=function(e){return function(t){return e.apply(null,t)}},lA.isAxiosError=function(e){return HR.isObject(e)&&!0===e.isAxiosError},lA.mergeConfig=TO,lA.AxiosHeaders=yO,lA.formToJSON=e=>pO(HR.isHTMLForm(e)?new FormData(e):e),lA.getAdapter=QO,lA.HttpStatusCode=aA,lA.default=lA;const{Axios:sA,AxiosError:cA,CanceledError:dA,isCancel:uA,CancelToken:pA,VERSION:fA,all:hA,Cancel:gA,isAxiosError:bA,spread:vA,toFormData:mA,AxiosHeaders:yA,HttpStatusCode:xA,formToJSON:wA,getAdapter:CA,mergeConfig:SA}=lA;var kA,_A;function EA(){return _A?kA:(_A=1,kA=TypeError)}const RA=Vl(Object.freeze(Object.defineProperty({__proto__:null,default:{}},Symbol.toStringTag,{value:"Module"})));var OA,AA,PA,TA,$A,zA,MA,FA,NA,BA,IA,LA,jA,DA,HA,WA,UA,qA,KA,VA,GA,ZA,XA,QA,YA,JA,eP,tP,nP,rP,oP,iP,aP,lP,sP,cP,dP,uP,pP,fP,hP,gP,bP,vP,mP,yP,xP,wP,CP,SP,kP,_P,EP,RP,OP,AP,PP,TP,$P,zP,MP,FP,NP,BP,IP,LP,jP,DP,HP,WP,UP,qP,KP,VP,GP,ZP,XP,QP,YP,JP,eT,tT,nT,rT,oT,iT,aT,lT;function sT(){if(AA)return OA;AA=1;var e="function"==typeof Map&&Map.prototype,t=Object.getOwnPropertyDescriptor&&e?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,n=e&&t&&"function"==typeof t.get?t.get:null,r=e&&Map.prototype.forEach,o="function"==typeof Set&&Set.prototype,i=Object.getOwnPropertyDescriptor&&o?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,a=o&&i&&"function"==typeof i.get?i.get:null,l=o&&Set.prototype.forEach,s="function"==typeof WeakMap&&WeakMap.prototype?WeakMap.prototype.has:null,c="function"==typeof WeakSet&&WeakSet.prototype?WeakSet.prototype.has:null,d="function"==typeof WeakRef&&WeakRef.prototype?WeakRef.prototype.deref:null,u=Boolean.prototype.valueOf,p=Object.prototype.toString,f=Function.prototype.toString,h=String.prototype.match,g=String.prototype.slice,b=String.prototype.replace,v=String.prototype.toUpperCase,m=String.prototype.toLowerCase,y=RegExp.prototype.test,x=Array.prototype.concat,w=Array.prototype.join,C=Array.prototype.slice,S=Math.floor,k="function"==typeof BigInt?BigInt.prototype.valueOf:null,_=Object.getOwnPropertySymbols,E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?Symbol.prototype.toString:null,R="function"==typeof Symbol&&"object"==typeof Symbol.iterator,O="function"==typeof Symbol&&Symbol.toStringTag&&(typeof Symbol.toStringTag===R||"symbol")?Symbol.toStringTag:null,A=Object.prototype.propertyIsEnumerable,P=("function"==typeof Reflect?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(e){return e.__proto__}:null);function T(e,t){if(e===1/0||e===-1/0||e!=e||e&&e>-1e3&&e<1e3||y.call(/e/,t))return t;var n=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if("number"==typeof e){var r=e<0?-S(-e):S(e);if(r!==e){var o=String(r),i=g.call(t,o.length+1);return b.call(o,n,"$&_")+"."+b.call(b.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return b.call(t,n,"$&_")}var $=RA,z=$.custom,M=H(z)?z:null,F={__proto__:null,double:'"',single:"'"},N={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};function B(e,t,n){var r=n.quoteStyle||t,o=F[r];return o+e+o}function I(e){return b.call(String(e),/"/g,""")}function L(e){return!O||!("object"==typeof e&&(O in e||void 0!==e[O]))}function j(e){return"[object Array]"===q(e)&&L(e)}function D(e){return"[object RegExp]"===q(e)&&L(e)}function H(e){if(R)return e&&"object"==typeof e&&e instanceof Symbol;if("symbol"==typeof e)return!0;if(!e||"object"!=typeof e||!E)return!1;try{return E.call(e),!0}catch(XT){}return!1}OA=function e(t,o,i,p){var v=o||{};if(U(v,"quoteStyle")&&!U(F,v.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(U(v,"maxStringLength")&&("number"==typeof v.maxStringLength?v.maxStringLength<0&&v.maxStringLength!==1/0:null!==v.maxStringLength))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var y=!U(v,"customInspect")||v.customInspect;if("boolean"!=typeof y&&"symbol"!==y)throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(U(v,"indent")&&null!==v.indent&&"\t"!==v.indent&&!(parseInt(v.indent,10)===v.indent&&v.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(U(v,"numericSeparator")&&"boolean"!=typeof v.numericSeparator)throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var S=v.numericSeparator;if(void 0===t)return"undefined";if(null===t)return"null";if("boolean"==typeof t)return t?"true":"false";if("string"==typeof t)return V(t,v);if("number"==typeof t){if(0===t)return 1/0/t>0?"0":"-0";var _=String(t);return S?T(t,_):_}if("bigint"==typeof t){var z=String(t)+"n";return S?T(t,z):z}var N=void 0===v.depth?5:v.depth;if(void 0===i&&(i=0),i>=N&&N>0&&"object"==typeof t)return j(t)?"[Array]":"[Object]";var W=function(e,t){var n;if("\t"===e.indent)n="\t";else{if(!("number"==typeof e.indent&&e.indent>0))return null;n=w.call(Array(e.indent+1)," ")}return{base:n,prev:w.call(Array(t+1),n)}}(v,i);if(void 0===p)p=[];else if(K(p,t)>=0)return"[Circular]";function G(t,n,r){if(n&&(p=C.call(p)).push(n),r){var o={depth:v.depth};return U(v,"quoteStyle")&&(o.quoteStyle=v.quoteStyle),e(t,o,i+1,p)}return e(t,v,i+1,p)}if("function"==typeof t&&!D(t)){var ee=function(e){if(e.name)return e.name;var t=h.call(f.call(e),/^function\s*([\w$]+)/);if(t)return t[1];return null}(t),te=J(t,G);return"[Function"+(ee?": "+ee:" (anonymous)")+"]"+(te.length>0?" { "+w.call(te,", ")+" }":"")}if(H(t)){var ne=R?b.call(String(t),/^(Symbol\(.*\))_[^)]*$/,"$1"):E.call(t);return"object"!=typeof t||R?ne:Z(ne)}if(function(e){if(!e||"object"!=typeof e)return!1;if("undefined"!=typeof HTMLElement&&e instanceof HTMLElement)return!0;return"string"==typeof e.nodeName&&"function"==typeof e.getAttribute}(t)){for(var re="<"+m.call(String(t.nodeName)),oe=t.attributes||[],ie=0;ie"}if(j(t)){if(0===t.length)return"[]";var ae=J(t,G);return W&&!function(e){for(var t=0;t=0)return!1;return!0}(ae)?"["+Y(ae,W)+"]":"[ "+w.call(ae,", ")+" ]"}if(function(e){return"[object Error]"===q(e)&&L(e)}(t)){var le=J(t,G);return"cause"in Error.prototype||!("cause"in t)||A.call(t,"cause")?0===le.length?"["+String(t)+"]":"{ ["+String(t)+"] "+w.call(le,", ")+" }":"{ ["+String(t)+"] "+w.call(x.call("[cause]: "+G(t.cause),le),", ")+" }"}if("object"==typeof t&&y){if(M&&"function"==typeof t[M]&&$)return $(t,{depth:N-i});if("symbol"!==y&&"function"==typeof t.inspect)return t.inspect()}if(function(e){if(!n||!e||"object"!=typeof e)return!1;try{n.call(e);try{a.call(e)}catch(re){return!0}return e instanceof Map}catch(XT){}return!1}(t)){var se=[];return r&&r.call(t,(function(e,n){se.push(G(n,t,!0)+" => "+G(e,t))})),Q("Map",n.call(t),se,W)}if(function(e){if(!a||!e||"object"!=typeof e)return!1;try{a.call(e);try{n.call(e)}catch(t){return!0}return e instanceof Set}catch(XT){}return!1}(t)){var ce=[];return l&&l.call(t,(function(e){ce.push(G(e,t))})),Q("Set",a.call(t),ce,W)}if(function(e){if(!s||!e||"object"!=typeof e)return!1;try{s.call(e,s);try{c.call(e,c)}catch(re){return!0}return e instanceof WeakMap}catch(XT){}return!1}(t))return X("WeakMap");if(function(e){if(!c||!e||"object"!=typeof e)return!1;try{c.call(e,c);try{s.call(e,s)}catch(re){return!0}return e instanceof WeakSet}catch(XT){}return!1}(t))return X("WeakSet");if(function(e){if(!d||!e||"object"!=typeof e)return!1;try{return d.call(e),!0}catch(XT){}return!1}(t))return X("WeakRef");if(function(e){return"[object Number]"===q(e)&&L(e)}(t))return Z(G(Number(t)));if(function(e){if(!e||"object"!=typeof e||!k)return!1;try{return k.call(e),!0}catch(XT){}return!1}(t))return Z(G(k.call(t)));if(function(e){return"[object Boolean]"===q(e)&&L(e)}(t))return Z(u.call(t));if(function(e){return"[object String]"===q(e)&&L(e)}(t))return Z(G(String(t)));if("undefined"!=typeof window&&t===window)return"{ [object Window] }";if("undefined"!=typeof globalThis&&t===globalThis||void 0!==ql&&t===ql)return"{ [object globalThis] }";if(!function(e){return"[object Date]"===q(e)&&L(e)}(t)&&!D(t)){var de=J(t,G),ue=P?P(t)===Object.prototype:t instanceof Object||t.constructor===Object,pe=t instanceof Object?"":"null prototype",fe=!ue&&O&&Object(t)===t&&O in t?g.call(q(t),8,-1):pe?"Object":"",he=(ue||"function"!=typeof t.constructor?"":t.constructor.name?t.constructor.name+" ":"")+(fe||pe?"["+w.call(x.call([],fe||[],pe||[]),": ")+"] ":"");return 0===de.length?he+"{}":W?he+"{"+Y(de,W)+"}":he+"{ "+w.call(de,", ")+" }"}return String(t)};var W=Object.prototype.hasOwnProperty||function(e){return e in this};function U(e,t){return W.call(e,t)}function q(e){return p.call(e)}function K(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,r=e.length;nt.maxStringLength){var n=e.length-t.maxStringLength,r="... "+n+" more character"+(n>1?"s":"");return V(g.call(e,0,t.maxStringLength),t)+r}var o=N[t.quoteStyle||"single"];return o.lastIndex=0,B(b.call(b.call(e,o,"\\$1"),/[\x00-\x1f]/g,G),"single",t)}function G(e){var t=e.charCodeAt(0),n={8:"b",9:"t",10:"n",12:"f",13:"r"}[t];return n?"\\"+n:"\\x"+(t<16?"0":"")+v.call(t.toString(16))}function Z(e){return"Object("+e+")"}function X(e){return e+" { ? }"}function Q(e,t,n,r){return e+" ("+t+") {"+(r?Y(n,r):w.call(n,", "))+"}"}function Y(e,t){if(0===e.length)return"";var n="\n"+t.prev+t.base;return n+w.call(e,","+n)+"\n"+t.prev}function J(e,t){var n=j(e),r=[];if(n){r.length=e.length;for(var o=0;o1&&"boolean"!=typeof t)throw new l('"allowMissing" argument must be a boolean');if(null===j(/^%?[^%]*%?$/,e))throw new a("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=function(e){var t=L(e,0,1),n=L(e,-1);if("%"===t&&"%"!==n)throw new a("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==t)throw new a("invalid intrinsic syntax, expected opening `%`");var r=[];return I(e,D,(function(e,t,n,o){r[r.length]=n?I(o,H,"$1"):t||e})),r}(e),r=n.length>0?n[0]:"",o=W("%"+r+"%",t),i=o.name,s=o.value,c=!1,d=o.alias;d&&(r=d[0],B(n,N([0,1],d)));for(var u=1,p=!0;u=n.length){var b=m(s,f);s=(p=!!b)&&"get"in b&&!("originalValue"in b.get)?b.get:s[f]}else p=F(s,f),s=s[f];p&&!c&&(P[i]=s)}}return s},HP}function LT(){if(qP)return UP;qP=1;var e=IT(),t=FT(),n=t([e("%String.prototype.indexOf%")]);return UP=function(r,o){var i=e(r,!!o);return"function"==typeof i&&n(r,".prototype.")>-1?t([i]):i}}function jT(){if(VP)return KP;VP=1;var e=IT(),t=LT(),n=sT(),r=EA(),o=e("%Map%",!0),i=t("Map.prototype.get",!0),a=t("Map.prototype.set",!0),l=t("Map.prototype.has",!0),s=t("Map.prototype.delete",!0),c=t("Map.prototype.size",!0);return KP=!!o&&function(){var e,t={assert:function(e){if(!t.has(e))throw new r("Side channel does not contain "+n(e))},delete:function(t){if(e){var n=s(e,t);return 0===c(e)&&(e=void 0),n}return!1},get:function(t){if(e)return i(e,t)},has:function(t){return!!e&&l(e,t)},set:function(t,n){e||(e=new o),a(e,t,n)}};return t}}function DT(){if(QP)return XP;QP=1;var e=EA(),t=sT(),n=cT(),r=jT(),o=function(){if(ZP)return GP;ZP=1;var e=IT(),t=LT(),n=sT(),r=jT(),o=EA(),i=e("%WeakMap%",!0),a=t("WeakMap.prototype.get",!0),l=t("WeakMap.prototype.set",!0),s=t("WeakMap.prototype.has",!0),c=t("WeakMap.prototype.delete",!0);return GP=i?function(){var e,t,d={assert:function(e){if(!d.has(e))throw new o("Side channel does not contain "+n(e))},delete:function(n){if(i&&n&&("object"==typeof n||"function"==typeof n)){if(e)return c(e,n)}else if(r&&t)return t.delete(n);return!1},get:function(n){return i&&n&&("object"==typeof n||"function"==typeof n)&&e?a(e,n):t&&t.get(n)},has:function(n){return i&&n&&("object"==typeof n||"function"==typeof n)&&e?s(e,n):!!t&&t.has(n)},set:function(n,o){i&&n&&("object"==typeof n||"function"==typeof n)?(e||(e=new i),l(e,n,o)):r&&(t||(t=r()),t.set(n,o))}};return d}:r}(),i=o||r||n;return XP=function(){var n,r={assert:function(n){if(!r.has(n))throw new e("Side channel does not contain "+t(n))},delete:function(e){return!!n&&n.delete(e)},get:function(e){return n&&n.get(e)},has:function(e){return!!n&&n.has(e)},set:function(e,t){n||(n=i()),n.set(e,t)}};return r}}function HT(){if(JP)return YP;JP=1;var e=String.prototype.replace,t=/%20/g,n="RFC3986";return YP={default:n,formatters:{RFC1738:function(n){return e.call(n,t,"+")},RFC3986:function(e){return String(e)}},RFC1738:"RFC1738",RFC3986:n}}function WT(){if(tT)return eT;tT=1;var e=HT(),t=Object.prototype.hasOwnProperty,n=Array.isArray,r=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),o=function(e,t){for(var n=t&&t.plainObjects?{__proto__:null}:{},r=0;r1;){var t=e.pop(),r=t.obj[t.prop];if(n(r)){for(var o=[],i=0;i=i?s.slice(d,d+i):s,p=[],f=0;f=48&&h<=57||h>=65&&h<=90||h>=97&&h<=122||l===e.RFC1738&&(40===h||41===h)?p[p.length]=u.charAt(f):h<128?p[p.length]=r[h]:h<2048?p[p.length]=r[192|h>>6]+r[128|63&h]:h<55296||h>=57344?p[p.length]=r[224|h>>12]+r[128|h>>6&63]+r[128|63&h]:(f+=1,h=65536+((1023&h)<<10|1023&u.charCodeAt(f)),p[p.length]=r[240|h>>18]+r[128|h>>12&63]+r[128|h>>6&63]+r[128|63&h])}c+=p.join("")}return c},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(n(e)){for(var r=[],o=0;o0?E.join(",")||null:void 0}];else if(i(b))T=b;else{var z=Object.keys(E);T=v?z.sort(v):z}var M=h?String(o).replace(/\./g,"%2E"):String(o),F=s&&i(E)&&1===E.length?M+"[]":M;if(c&&i(E)&&0===E.length)return F+"[]";for(var N=0;N0?w+x:""}}function qT(){if(iT)return oT;iT=1;var e=WT(),t=Object.prototype.hasOwnProperty,n=Array.isArray,r={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:e.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},o=function(e){return e.replace(/&#(\d+);/g,(function(e,t){return String.fromCharCode(parseInt(t,10))}))},i=function(e,t,n){if(e&&"string"==typeof e&&t.comma&&e.indexOf(",")>-1)return e.split(",");if(t.throwOnLimitExceeded&&n>=t.arrayLimit)throw new RangeError("Array limit exceeded. Only "+t.arrayLimit+" element"+(1===t.arrayLimit?"":"s")+" allowed in an array.");return e},a=function(n,r,o,a){if(n){var l=o.allowDots?n.replace(/\.([^.[]+)/g,"[$1]"):n,s=/(\[[^[\]]*])/g,c=o.depth>0&&/(\[[^[\]]*])/.exec(l),d=c?l.slice(0,c.index):l,u=[];if(d){if(!o.plainObjects&&t.call(Object.prototype,d)&&!o.allowPrototypes)return;u.push(d)}for(var p=0;o.depth>0&&null!==(c=s.exec(l))&&p0&&"[]"===t[t.length-1]){var l=t.slice(0,-1).join("");a=Array.isArray(n)&&n[l]?n[l].length:0}for(var s=o?n:i(n,r,a),c=t.length-1;c>=0;--c){var d,u=t[c];if("[]"===u&&r.parseArrays)d=r.allowEmptyArrays&&(""===s||r.strictNullHandling&&null===s)?[]:e.combine([],s);else{d=r.plainObjects?{__proto__:null}:{};var p="["===u.charAt(0)&&"]"===u.charAt(u.length-1)?u.slice(1,-1):u,f=r.decodeDotInKeys?p.replace(/%2E/g,"."):p,h=parseInt(f,10);r.parseArrays||""!==f?!isNaN(h)&&u!==f&&String(h)===f&&h>=0&&r.parseArrays&&h<=r.arrayLimit?(d=[])[h]=s:"__proto__"!==f&&(d[f]=s):d={0:s}}s=d}return s}(u,r,o,a)}};return oT=function(l,s){var c=function(t){if(!t)return r;if(void 0!==t.allowEmptyArrays&&"boolean"!=typeof t.allowEmptyArrays)throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(void 0!==t.decodeDotInKeys&&"boolean"!=typeof t.decodeDotInKeys)throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(null!==t.decoder&&void 0!==t.decoder&&"function"!=typeof t.decoder)throw new TypeError("Decoder has to be a function.");if(void 0!==t.charset&&"utf-8"!==t.charset&&"iso-8859-1"!==t.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");if(void 0!==t.throwOnLimitExceeded&&"boolean"!=typeof t.throwOnLimitExceeded)throw new TypeError("`throwOnLimitExceeded` option must be a boolean");var n=void 0===t.charset?r.charset:t.charset,o=void 0===t.duplicates?r.duplicates:t.duplicates;if("combine"!==o&&"first"!==o&&"last"!==o)throw new TypeError("The duplicates option must be either combine, first, or last");return{allowDots:void 0===t.allowDots?!0===t.decodeDotInKeys||r.allowDots:!!t.allowDots,allowEmptyArrays:"boolean"==typeof t.allowEmptyArrays?!!t.allowEmptyArrays:r.allowEmptyArrays,allowPrototypes:"boolean"==typeof t.allowPrototypes?t.allowPrototypes:r.allowPrototypes,allowSparse:"boolean"==typeof t.allowSparse?t.allowSparse:r.allowSparse,arrayLimit:"number"==typeof t.arrayLimit?t.arrayLimit:r.arrayLimit,charset:n,charsetSentinel:"boolean"==typeof t.charsetSentinel?t.charsetSentinel:r.charsetSentinel,comma:"boolean"==typeof t.comma?t.comma:r.comma,decodeDotInKeys:"boolean"==typeof t.decodeDotInKeys?t.decodeDotInKeys:r.decodeDotInKeys,decoder:"function"==typeof t.decoder?t.decoder:r.decoder,delimiter:"string"==typeof t.delimiter||e.isRegExp(t.delimiter)?t.delimiter:r.delimiter,depth:"number"==typeof t.depth||!1===t.depth?+t.depth:r.depth,duplicates:o,ignoreQueryPrefix:!0===t.ignoreQueryPrefix,interpretNumericEntities:"boolean"==typeof t.interpretNumericEntities?t.interpretNumericEntities:r.interpretNumericEntities,parameterLimit:"number"==typeof t.parameterLimit?t.parameterLimit:r.parameterLimit,parseArrays:!1!==t.parseArrays,plainObjects:"boolean"==typeof t.plainObjects?t.plainObjects:r.plainObjects,strictDepth:"boolean"==typeof t.strictDepth?!!t.strictDepth:r.strictDepth,strictNullHandling:"boolean"==typeof t.strictNullHandling?t.strictNullHandling:r.strictNullHandling,throwOnLimitExceeded:"boolean"==typeof t.throwOnLimitExceeded&&t.throwOnLimitExceeded}}(s);if(""===l||null==l)return c.plainObjects?{__proto__:null}:{};for(var d="string"==typeof l?function(a,l){var s={__proto__:null},c=l.ignoreQueryPrefix?a.replace(/^\?/,""):a;c=c.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var d=l.parameterLimit===1/0?void 0:l.parameterLimit,u=c.split(l.delimiter,l.throwOnLimitExceeded?d+1:d);if(l.throwOnLimitExceeded&&u.length>d)throw new RangeError("Parameter limit exceeded. Only "+d+" parameter"+(1===d?"":"s")+" allowed.");var p,f=-1,h=l.charset;if(l.charsetSentinel)for(p=0;p-1&&(b=n(b)?[b]:b);var x=t.call(s,g);x&&"combine"===l.duplicates?s[g]=e.combine(s[g],b):x&&"last"!==l.duplicates||(s[g]=b)}return s}(l,c):l,u=c.plainObjects?{__proto__:null}:{},p=Object.keys(d),f=0;f - - - - - - 代码生成器 - - - - - - -
- - diff --git a/generator-code/src/main/resources/vms/server/controller/controller.java.vm b/generator-code/src/main/resources/vms/server/controller/controller.java.vm deleted file mode 100644 index f861711..0000000 --- a/generator-code/src/main/resources/vms/server/controller/controller.java.vm +++ /dev/null @@ -1,65 +0,0 @@ -package ${package}.controller; - -import cn.bunny.dao.pojo.result.Result; -import cn.bunny.dao.pojo.result.ResultCodeEnum; -import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.tags.Tag; -import jakarta.validation.Valid; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; -import reactor.core.publisher.Mono; -import cn.bunny.dao.pojo.result.PageResult; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; - -import java.util.List; - -/** - *

- * ${comment}表 前端控制器 - *

- * - * @author ${author} - * @since ${date} - */ -@Tag(name = "${comment}" , description = "${comment}相关接口" ) -@RestController -@RequestMapping("${requestMapping}/${classLowercaseName}" ) -public class ${classUppercaseName}Controller { - - @Autowired - private ${classUppercaseName}Service ${classLowercaseName}Service; - - @Operation(summary = "分页查询${comment}" , description = "分页查询${comment}" ) - @GetMapping("get${classUppercaseName}List/{page}/{limit}" ) - public Result> get${classUppercaseName}List( - @Parameter(name = "page" , description = "当前页" , required = true) - @PathVariable("page" ) Integer page, - @Parameter(name = "limit" , description = "每页记录数" , required = true) - @PathVariable("limit" ) Integer limit, - ${classUppercaseName}Dto dto) { - Page<${classUppercaseName}> pageParams = new Page<>(page, limit); - PageResult<${classUppercaseName}Vo> pageResult = ${classLowercaseName}Service.get${classUppercaseName}List(pageParams, dto); - return Result.success(pageResult); - } - - @Operation(summary = "添加${comment}" , description = "添加${comment}" ) - @PostMapping("add${classUppercaseName}" ) - public Result add${classUppercaseName}(@Valid @RequestBody ${classUppercaseName}AddDto dto) { - ${classLowercaseName}Service.add${classUppercaseName}(dto); - return Result.success(ResultCodeEnum.ADD_SUCCESS); - } - - @Operation(summary = "更新${comment}" , description = "更新${comment}" ) - @PutMapping("update${classUppercaseName}" ) - public Result update${classUppercaseName}(@Valid @RequestBody ${classUppercaseName}UpdateDto dto) { - ${classLowercaseName}Service.update${classUppercaseName}(dto); - return Result.success(ResultCodeEnum.UPDATE_SUCCESS); - } - - @Operation(summary = "删除${comment}" , description = "删除${comment}" ) - @DeleteMapping("delete${classUppercaseName}" ) - public Result delete${classUppercaseName}(@RequestBody List ids) { - ${classLowercaseName}Service.delete${classUppercaseName}(ids); - return Result.success(ResultCodeEnum.DELETE_SUCCESS); - } -} \ No newline at end of file diff --git a/generator-code/src/main/resources/vms/server/mapper/mapper.java.vm b/generator-code/src/main/resources/vms/server/mapper/mapper.java.vm deleted file mode 100644 index bd3f2fe..0000000 --- a/generator-code/src/main/resources/vms/server/mapper/mapper.java.vm +++ /dev/null @@ -1,29 +0,0 @@ -package ${package}.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import org.apache.ibatis.annotations.Mapper; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - *

- * ${comment} Mapper 接口 - *

- * - * @author ${author} - * @since ${date} - */ -@Mapper -public interface ${classUppercaseName}Mapper extends BaseMapper<${classUppercaseName}> { - - /** - * * 分页查询${comment}内容 - * - * @param pageParams ${comment}分页参数 - * @param dto ${comment}查询表单 - * @return ${comment}分页结果 - */ - IPage<${classUppercaseName}Vo> selectListByPage(@Param("page") Page<${classUppercaseName}> pageParams, @Param("dto") ${classUppercaseName}Dto dto); -} diff --git a/generator-code/src/main/resources/vms/server/mapper/resourceMapper.xml.vm b/generator-code/src/main/resources/vms/server/mapper/resourceMapper.xml.vm deleted file mode 100644 index 39e9cb3..0000000 --- a/generator-code/src/main/resources/vms/server/mapper/resourceMapper.xml.vm +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - #foreach($field in ${columnInfoList}) - - #end - - - - - ${baseColumnList} - - - - - - diff --git a/generator-code/src/main/resources/vms/server/service/impl/serviceImpl.java.vm b/generator-code/src/main/resources/vms/server/service/impl/serviceImpl.java.vm deleted file mode 100644 index 5059a2a..0000000 --- a/generator-code/src/main/resources/vms/server/service/impl/serviceImpl.java.vm +++ /dev/null @@ -1,79 +0,0 @@ -package ${package}.service.impl; - -import cn.bunny.dao.pojo.result.PageResult; -import ${package}.mapper.${classUppercaseName}Mapper; -import ${package}.service.${classUppercaseName}Service; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.springframework.beans.BeanUtils; -import org.springframework.stereotype.Service; - -import java.util.List; - -/** - *

- * ${comment} 服务实现类 - *

- * - * @author Bunny - * @since ${date} - */ -@Service -public class ${classUppercaseName}ServiceImpl extends ServiceImpl<${classUppercaseName}Mapper, ${classUppercaseName}> implements ${classUppercaseName}Service { - - /** - * * ${comment} 服务实现类 - * - * @param pageParams ${comment}分页查询page对象 - * @param dto ${comment}分页查询对象 - * @return 查询分页${comment}返回对象 - */ - @Override - public PageResult<${classUppercaseName}Vo> get${classUppercaseName}List(Page<${classUppercaseName}> pageParams, ${classUppercaseName}Dto dto) { - IPage<${classUppercaseName}Vo> page = baseMapper.selectListByPage(pageParams, dto); - - return PageResult.<${classUppercaseName}Vo>builder() - .list(page.getRecords()) - .pageNo(page.getCurrent()) - .pageSize(page.getSize()) - .total(page.getTotal()) - .build(); - } - - /** - * 添加${comment} - * - * @param dto ${comment}添加 - */ - @Override - public void add${classUppercaseName}(@Valid ${classUppercaseName}AddDto dto) { - // 保存数据 - ${classUppercaseName} ${classLowercaseName} =new ${classUppercaseName}(); - BeanUtils.copyProperties(dto, ${classLowercaseName}); - save(${classLowercaseName}); - } - - /** - * 更新${comment} - * - * @param dto ${comment}更新 - */ - @Override - public void update${classUppercaseName}(@Valid ${classUppercaseName}UpdateDto dto) { - // 更新内容 - ${classUppercaseName} ${classLowercaseName} =new ${classUppercaseName}(); - BeanUtils.copyProperties(dto, ${classLowercaseName}); - updateById(${classLowercaseName}); - } - - /** - * 删除|批量删除${comment} - * - * @param ids 删除id列表 - */ - @Override - public void delete${classUppercaseName}(List ids) { - removeByIds(ids); - } -} \ No newline at end of file diff --git a/generator-code/src/main/resources/vms/server/service/service.java.vm b/generator-code/src/main/resources/vms/server/service/service.java.vm deleted file mode 100644 index 64656e6..0000000 --- a/generator-code/src/main/resources/vms/server/service/service.java.vm +++ /dev/null @@ -1,49 +0,0 @@ -package ${package}.service; - -import cn.bunny.dao.entity.system.MenuIcon; -import cn.bunny.dao.pojo.result.PageResult; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.IService; -import jakarta.validation.Valid; - -import java.util.HashMap; -import java.util.List; - -/** - *

- * ${comment} 服务类 - *

- * - * @author Bunny - * @since ${date} - */ -public interface ${classUppercaseName}Service extends IService<${classUppercaseName}> { - - /** - * * 获取${comment}列表 - * - * @return ${comment}返回列表 - */ - PageResult<${classUppercaseName}Vo> get${classUppercaseName}List(Page<${classUppercaseName}> pageParams, ${classUppercaseName}Dto dto); - - /** - * * 添加${comment} - * - * @param dto 添加表单 - */ - void add${classUppercaseName}(@Valid ${classUppercaseName}AddDto dto); - - /** - * * 更新${comment} - * - * @param dto 更新表单 - */ - void update${classUppercaseName}(@Valid ${classUppercaseName}UpdateDto dto); - - /** - * * 删除|批量删除${comment}类型 - * - * @param ids 删除id列表 - */ - void delete${classUppercaseName}(List ids); -} diff --git a/generator-code/src/main/resources/vms/web/api.ts.vm b/generator-code/src/main/resources/vms/web/api.ts.vm deleted file mode 100644 index 2a62475..0000000 --- a/generator-code/src/main/resources/vms/web/api.ts.vm +++ /dev/null @@ -1,22 +0,0 @@ -import {http} from '@/api/service/request'; -import type {BaseResult, ResultTable} from '@/api/service/types'; - -/** ${comment}---获取${comment}列表 */ -export const fetchGet${classUppercaseName}List = (data: any) => { - return http.request>('get', `${classLowercaseName}/get${classUppercaseName}List/${data.currentPage}/${data.pageSize}`, {params: data}); -}; - -/** ${comment}---添加${comment} */ -export const fetchAdd${classUppercaseName} = (data: any) => { - return http.request>('post', '${classLowercaseName}/add${classUppercaseName}', {data}); -}; - -/** ${comment}---更新${comment} */ -export const fetchUpdate${classUppercaseName} = (data: any) => { - return http.request>('put', '${classLowercaseName}/update${classUppercaseName}', {data}); -}; - -/** ${comment}---删除${comment} */ -export const fetchDelete${classUppercaseName} = (data: any) => { - return http.request>('delete', '${classLowercaseName}/delete${classUppercaseName}', {data}); -}; \ No newline at end of file diff --git a/generator-code/src/main/resources/vms/web/columns.tsx.vm b/generator-code/src/main/resources/vms/web/columns.tsx.vm deleted file mode 100644 index e0e58f0..0000000 --- a/generator-code/src/main/resources/vms/web/columns.tsx.vm +++ /dev/null @@ -1,31 +0,0 @@ -import {reactive} from 'vue'; -import type {FormRules} from 'element-plus'; -import { $t } from '@/plugins/i18n'; - -export const columns: TableColumnList = [ - {type: 'selection', align: 'left'}, - {type: 'index', index: (index: number) => index + 1, label: '序号', width: 60}, - #foreach($field in $columnInfoList) - // $field.comment - {label: $t('$field.fieldName'), prop: '$field.fieldName'}, - #end - {label: $t('table.updateTime'), prop: 'updateTime', sortable: true, width: 160}, - {label: $t('table.createTime'), prop: 'createTime', sortable: true, width: 160}, - {label: $t('table.createUser'), prop: 'createUser', slot: 'createUser', width: 130}, - {label: $t('table.updateUser'), prop: 'updateUser', slot: 'updateUser', width: 130}, - {label: $t('table.operation'), fixed: 'right', width: 210, slot: 'operation'}, -]; - -// 添加规则 -export const rules = reactive < FormRules > ({ - #foreach($field in $columnInfoList) - // $field.comment - $field.fieldName: [{ - required: true, - message: `$leftBrace$t('input')}$leftBrace$t('${field.fieldName}')}`, - trigger: 'blur' - }], - #end -}); - - diff --git a/generator-code/src/main/resources/vms/web/dialog.vue.vm b/generator-code/src/main/resources/vms/web/dialog.vue.vm deleted file mode 100644 index ef3b61f..0000000 --- a/generator-code/src/main/resources/vms/web/dialog.vue.vm +++ /dev/null @@ -1,34 +0,0 @@ - - - diff --git a/generator-code/src/main/resources/vms/web/hook.tsx.vm b/generator-code/src/main/resources/vms/web/hook.tsx.vm deleted file mode 100644 index 5315fe3..0000000 --- a/generator-code/src/main/resources/vms/web/hook.tsx.vm +++ /dev/null @@ -1,124 +0,0 @@ -import {addDialog} from '@/components/BaseDialog/index'; -import {h, ref} from 'vue'; -import {message, messageBox} from '@/utils/message'; -import DeleteBatchDialog from "@/components/Table/DeleteBatchDialog.vue"; - -export const formRef = ref(); -// 删除ids -export const deleteIds = ref([]); -const ${classLowercaseName}Store = use${classUppercaseName}Store(); - -/** 搜索初始化${comment} */ -export async function onSearch() { - ${classLowercaseName}Store.loading = true; - await ${classLowercaseName}Store.get${classUppercaseName}List(); - ${classLowercaseName}Store.loading = false; -} - -/** 添加${comment} */ -export function onAdd() { - addDialog({ - title: `$leftBrace $t("addNew")}$leftBrace$t("${classLowercaseName}")}`, - width: '30%', - props: { - formInline: { - #foreach($item in $columnInfoList) - $!{item.fieldName}: undefined, - #end - }, - }, - draggable: true, - fullscreenIcon: true, - closeOnClickModal: false, - contentRenderer: () => h(${classUppercaseName}Dialog, {ref: formRef}), - beforeSure: (done, {options}) => { - const form = options.props.formInline as FormItemProps; - formRef.value.formRef.validate(async (valid: any) => { - if (!valid) return; - - const result = await ${classLowercaseName}Store.add${classUppercaseName}(form); - if (!result) return; - done(); - await onSearch(); - }); - }, - }); -} - -/** 更新${comment} */ -export function onUpdate(row: any) { - addDialog({ - title: `$leftBrace$t("modify")}$leftBrace$t("${classLowercaseName}")}`, - width: '30%', - props: { - formInline: { - #foreach($item in $columnInfoList) - $!{item.fieldName}: row.$!{item.fieldName}, - #end - } - }, - draggable: true, - fullscreenIcon: true, - closeOnClickModal: false, - contentRenderer: () => h(${classUppercaseName}Dialog, {ref: formRef}), - beforeSure: (done, {options}) => { - const form = options.props.formInline as FormItemProps; - formRef.value.formRef.validate(async (valid: any) => { - if (!valid) return; - - const result = await ${classLowercaseName}Store.update${classUppercaseName}({...form, id: row.id}); - if (!result) return; - done(); - await onSearch(); - }); - }, - }); -} - -/** 删除${comment} */ -export const onDelete = async (row: any) => { - const id = row.id; - - // 是否确认删除 - const result = await messageBox({ - title: $t('confirmDelete'), - showMessage: false, - confirmMessage: undefined, - cancelMessage: $t("cancel_delete"), - }); - if (!result) return; - - // 删除数据 - await ${classLowercaseName}Store.delete${classUppercaseName}([id]); - await onSearch(); -}; - -/** 批量删除 */ -export const onDeleteBatch = async () => { - const ids = deleteIds.value; - const formDeletedBatchRef = ref(); - - addDialog({ - title: $t('deleteBatchTip'), - width: '30%', - props: {formInline: {confirmText: ''}}, - draggable: true, - fullscreenIcon: true, - closeOnClickModal: false, - contentRenderer: () => h(DeleteBatchDialog, {ref: formDeletedBatchRef}), - beforeSure: (done, {options}) => { - formDeletedBatchRef.value.formDeletedBatchRef.validate(async (valid: any) => { - if (!valid) return; - - const text = options.props.formInline.confirmText.toLowerCase(); - if (text === 'yes' || text === 'y') { - // 删除数据 - await ${classLowercaseName}Store.delete${classUppercaseName}(ids); - await onSearch(); - - done(); - } else message($t('deleteBatchTip'), {type: 'warning'}); - }); - }, - }); -}; \ No newline at end of file diff --git a/generator-code/src/main/resources/vms/web/index.vue.vm b/generator-code/src/main/resources/vms/web/index.vue.vm deleted file mode 100644 index c3924f4..0000000 --- a/generator-code/src/main/resources/vms/web/index.vue.vm +++ /dev/null @@ -1,127 +0,0 @@ - - - diff --git a/generator-code/src/main/resources/vms/web/store.ts.vm b/generator-code/src/main/resources/vms/web/store.ts.vm deleted file mode 100644 index a25b94e..0000000 --- a/generator-code/src/main/resources/vms/web/store.ts.vm +++ /dev/null @@ -1,69 +0,0 @@ -import {defineStore} from 'pinia'; -import {fetchAdd${classUppercaseName}, fetchDelete${classUppercaseName}, fetchUpdate${classUppercaseName}} from ''; -import {pageSizes} from '@/enums/baseConstant'; -import {storeMessage} from '@/utils/message'; -import {storePagination} from '@/store/useStorePagination'; - -/** - * ${comment} Store - */ -export const use${classUppercaseName}Store = defineStore('${lowercaseName}Store', { - state() { - return { - // ${comment}列表 - datalist: [], - // 查询表单 - form: { - #foreach($item in $columnInfoList) - // $!{item.comment} - $!{item.fieldName}: undefined, - #end - }, - // 分页查询结果 - pagination: { - currentPage: 1, - pageSize: 30, - total: 1, - pageSizes, - }, - // 加载 - loading: false, - }; - }, - getters: {}, - actions: { - /** 获取${comment} */ - async get${classUppercaseName}List() { - // 整理请求参数 - const data = {...this.pagination, ...this.form}; - delete data.pageSizes; - delete data.total; - delete data.background; - - // 获取${comment}列表 - const result = await fetchGet${classUppercaseName}List(data); - - // 公共页面函数hook - const pagination = storePagination.bind(this); - return pagination(result); - }, - - /** 添加${comment} */ - async add${classUppercaseName}(data: any) { - const result = await fetchAdd${classUppercaseName}(data); - return storeMessage(result); - }, - - /** 修改${comment} */ - async update${classUppercaseName}(data: any) { - const result = await fetchUpdate${classUppercaseName}(data); - return storeMessage(result); - }, - - /** 删除${comment} */ - async delete${classUppercaseName}(data: any) { - const result = await fetchDelete${classUppercaseName}(data); - return storeMessage(result); - }, - }, -}); diff --git a/generator-code/src/main/resources/vms/web/types.ts.vm b/generator-code/src/main/resources/vms/web/types.ts.vm deleted file mode 100644 index 7aa698b..0000000 --- a/generator-code/src/main/resources/vms/web/types.ts.vm +++ /dev/null @@ -1,16 +0,0 @@ -// 添加或者修改表单元素 -export interface FormItemProps { - #foreach($field in $columnInfoList) - // $field.comment - #if($field.javascriptType == "object") - $field.fieldName: any - #else - $field.fieldName: $field.javascriptType - #end - #end -} - -// 添加或修改表单Props -export interface FormProps { - formInline: FormItemProps; -} diff --git a/pom.xml b/pom.xml index 8381b45..8c42bb2 100644 --- a/pom.xml +++ b/pom.xml @@ -20,7 +20,6 @@ dao auth-core auh-api - generator-code diff --git a/service/src/main/java/cn/bunny/services/core/cache/UserLoginVoBuilderCacheService.java b/service/src/main/java/cn/bunny/services/core/cache/UserLoginVoBuilderCacheService.java index 60861c4..d46aa8a 100644 --- a/service/src/main/java/cn/bunny/services/core/cache/UserLoginVoBuilderCacheService.java +++ b/service/src/main/java/cn/bunny/services/core/cache/UserLoginVoBuilderCacheService.java @@ -9,7 +9,6 @@ import cn.bunny.services.domain.system.system.entity.Permission; import cn.bunny.services.domain.system.system.entity.Role; import cn.bunny.services.mapper.system.PermissionMapper; import cn.bunny.services.mapper.system.RoleMapper; -import cn.bunny.services.minio.MinioHelper; import cn.bunny.services.utils.JwtTokenUtil; import jakarta.annotation.Resource; import lombok.Value; @@ -29,9 +28,6 @@ public class UserLoginVoBuilderCacheService { @Resource private RedisTemplate redisTemplate; - @Resource - private MinioHelper minioHelper; - @Resource private RoleMapper roleMapper; @@ -61,10 +57,6 @@ public class UserLoginVoBuilderCacheService { String expires = calculateExpires(readMeDay); loginVo.setExpires(expires); - // 设置用户头像 - String userAvatar = minioHelper.getUserAvatar(user.getAvatar()); - loginVo.setAvatar(userAvatar); - String loginInfoPrefix = RedisUserConstant.getUserLoginInfoPrefix(username); redisTemplate.opsForValue().set(loginInfoPrefix, loginVo, readMeDay, TimeUnit.DAYS); return loginVo; diff --git a/service/src/main/java/cn/bunny/services/quartz/DatabaseBackupJob.java b/service/src/main/java/cn/bunny/services/quartz/DatabaseBackupJob.java index ec62da3..3204880 100644 --- a/service/src/main/java/cn/bunny/services/quartz/DatabaseBackupJob.java +++ b/service/src/main/java/cn/bunny/services/quartz/DatabaseBackupJob.java @@ -1,77 +1,62 @@ package cn.bunny.services.quartz; -import lombok.SneakyThrows; -import lombok.extern.slf4j.Slf4j; -import org.quartz.Job; -import org.quartz.JobDataMap; -import org.quartz.JobExecutionContext; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Component; - -import java.io.BufferedReader; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.Map; -import java.util.concurrent.TimeUnit; - - /** * WARNING : - * 这个只是Demo + * 这个只是Demo!!! + * 这个只是Demo!!! + * 这个只是Demo!!! */ -@Slf4j +// @Slf4j // @QuartzSchedulers(type = "backup", description = "数据库备份(仅限本地docker中MySQL)") -@Component -public class DatabaseBackupJob implements Job { - - @Value("${bunny.backPath}") - private String backPath; - - @SneakyThrows - @Override - public void execute(JobExecutionContext context) { - // 读取资源目录下脚本文件并写入到主机中 - try (InputStream inputStream = getClass().getClassLoader().getResourceAsStream("static/backup.sh")) { - if (inputStream == null) return; - byte[] bytes = inputStream.readAllBytes(); - Files.write(Path.of(backPath + "/backup.sh"), bytes); - } - - // 执行脚本 - System.setProperty("TERM", "xterm"); - ProcessBuilder processBuilder = new ProcessBuilder("sh", backPath + "/backup.sh"); - processBuilder.redirectErrorStream(true); - Process process = processBuilder.start(); - - // 执行命令 - ProcessHandle handle = process.toHandle(); - - // 执行任务的pid - long pid = handle.pid(); - - // 执行任务系统信息 - JobDataMap jobDataMap = context.getJobDetail().getJobDataMap(); - Map environment = processBuilder.environment(); - String info = handle.info().toString(); - jobDataMap.put("pid", pid); - jobDataMap.put("systemInfo", info); - jobDataMap.put("environment", environment); - - // 进程是否结束 - if (process.waitFor(5, TimeUnit.MINUTES)) { - int waitedFor = process.waitFor(); - jobDataMap.put("existCode", waitedFor); - } else process.destroyForcibly(); - - // 执行后读取内容 - BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); - String line; - StringBuilder stringBuilder = new StringBuilder(); - while ((line = reader.readLine()) != null) { - stringBuilder.append(line); - } - jobDataMap.put("output", stringBuilder.toString()); - } -} +// @Component +// public class DatabaseBackupJob implements Job { +// +// @Value("${bunny.backPath}") +// private String backPath; +// +// @SneakyThrows +// @Override +// public void execute(JobExecutionContext context) { +// // 读取资源目录下脚本文件并写入到主机中 +// try (InputStream inputStream = getClass().getClassLoader().getResourceAsStream("static/backup.sh")) { +// if (inputStream == null) return; +// byte[] bytes = inputStream.readAllBytes(); +// Files.write(Path.of(backPath + "/backup.sh"), bytes); +// } +// +// // 执行脚本 +// System.setProperty("TERM", "xterm"); +// ProcessBuilder processBuilder = new ProcessBuilder("sh", backPath + "/backup.sh"); +// processBuilder.redirectErrorStream(true); +// Process process = processBuilder.start(); +// +// // 执行命令 +// ProcessHandle handle = process.toHandle(); +// +// // 执行任务的pid +// long pid = handle.pid(); +// +// // 执行任务系统信息 +// JobDataMap jobDataMap = context.getJobDetail().getJobDataMap(); +// Map environment = processBuilder.environment(); +// String info = handle.info().toString(); +// jobDataMap.put("pid", pid); +// jobDataMap.put("systemInfo", info); +// jobDataMap.put("environment", environment); +// +// // 进程是否结束 +// if (process.waitFor(5, TimeUnit.MINUTES)) { +// int waitedFor = process.waitFor(); +// jobDataMap.put("existCode", waitedFor); +// } else process.destroyForcibly(); +// +// // 执行后读取内容 +// BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); +// String line; +// StringBuilder stringBuilder = new StringBuilder(); +// while ((line = reader.readLine()) != null) { +// stringBuilder.append(line); +// } +// jobDataMap.put("output", stringBuilder.toString()); +// } +// } diff --git a/service/src/main/java/cn/bunny/services/security/config/WebSecurityConfig.java b/service/src/main/java/cn/bunny/services/security/config/WebSecurityConfig.java index b29bbd1..254585c 100644 --- a/service/src/main/java/cn/bunny/services/security/config/WebSecurityConfig.java +++ b/service/src/main/java/cn/bunny/services/security/config/WebSecurityConfig.java @@ -22,8 +22,7 @@ public class WebSecurityConfig { public static String[] annotations = { "/", "/ws/**", "/**.html", "/error", "/media.ico", "/favicon.ico", "/webjars/**", "/v3/api-docs/**", "/swagger-ui/**", - "/*/*/login", - "/*/*/public/**", "/*/public/**", "/public/**", "/*/*/public" + "/*/*/login", "/*/local-file/**", "/*/*/public/**", }; // 用户登录之后才能访问,不能与接口名称重复!!!不能与接口名称包含!!! diff --git a/service/src/main/java/cn/bunny/services/service/file/FilesParDetailService.java b/service/src/main/java/cn/bunny/services/service/file/FilesParDetailService.java new file mode 100644 index 0000000..db0bd2f --- /dev/null +++ b/service/src/main/java/cn/bunny/services/service/file/FilesParDetailService.java @@ -0,0 +1,49 @@ +package cn.bunny.services.service.file; + +import cn.bunny.services.domain.common.model.vo.result.PageResult; +import cn.bunny.services.domain.system.files.dto.FilesParDetailDto; +import cn.bunny.services.domain.system.files.entity.FilesParDetail; +import cn.bunny.services.domain.system.files.vo.FilesParDetailVo; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + +/** + *

+ * 文件分片信息表,仅在手动分片上传时使用 服务类 + *

+ * + * @author Bunny + * @since 2025-05-08 23:01:19 + */ +public interface FilesParDetailService extends IService { + + /** + * 分页查询文件分片信息表,仅在手动分片上传时使用 + * + * @return {@link FilesParDetailVo} + */ + PageResult getFilesParDetailPage(Page pageParams, FilesParDetailDto dto); + + /** + * 添加文件分片信息表,仅在手动分片上传时使用 + * + * @param dto 添加表单 + */ + void addFilesParDetail(FilesParDetailDto dto); + + /** + * 更新文件分片信息表,仅在手动分片上传时使用 + * + * @param dto {@link FilesParDetailDto} + */ + void updateFilesParDetail(FilesParDetailDto dto); + + /** + * 删除|批量删除文件分片信息表,仅在手动分片上传时使用类型 + * + * @param ids 删除id列表 + */ + void deleteFilesParDetail(List ids); +} diff --git a/service/src/main/java/cn/bunny/services/service/system/FilesService.java b/service/src/main/java/cn/bunny/services/service/file/FilesService.java similarity index 65% rename from service/src/main/java/cn/bunny/services/service/system/FilesService.java rename to service/src/main/java/cn/bunny/services/service/file/FilesService.java index 9bd2cbe..f00d20e 100644 --- a/service/src/main/java/cn/bunny/services/service/system/FilesService.java +++ b/service/src/main/java/cn/bunny/services/service/file/FilesService.java @@ -1,20 +1,19 @@ -package cn.bunny.services.service.system; +package cn.bunny.services.service.file; +import cn.bunny.services.domain.common.model.vo.result.PageResult; import cn.bunny.services.domain.system.files.dto.FileUploadDto; -import cn.bunny.services.domain.system.files.dto.FilesAddDto; +import cn.bunny.services.domain.system.files.dto.FilesAddOrUpdateDto; import cn.bunny.services.domain.system.files.dto.FilesDto; -import cn.bunny.services.domain.system.files.dto.FilesUpdateDto; +import cn.bunny.services.domain.system.files.dto.UploadThumbnail; import cn.bunny.services.domain.system.files.entity.Files; import cn.bunny.services.domain.system.files.vo.FileInfoVo; import cn.bunny.services.domain.system.files.vo.FilesVo; -import cn.bunny.services.domain.common.model.vo.result.PageResult; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; -import jakarta.validation.Valid; +import org.dromara.x.file.storage.core.get.RemoteDirInfo; import org.springframework.http.ResponseEntity; import java.util.List; -import java.util.Set; /** *

@@ -38,14 +37,14 @@ public interface FilesService extends IService { * * @param dto 添加表单 */ - void addFiles(@Valid FilesAddDto dto); + void addFiles(FilesAddOrUpdateDto dto); /** * * 更新系统文件表 * * @param dto 更新表单 */ - void updateFiles(@Valid FilesUpdateDto dto); + void updateFiles(FilesAddOrUpdateDto dto); /** * * 上传文件 @@ -71,9 +70,22 @@ public interface FilesService extends IService { ResponseEntity downloadFilesByFileId(Long fileId); /** - * * 获取所有文件类型 + * 上传文件縮略圖 + * 详细参考: + * + * 上传文件文档 + * * - * @return 媒体文件类型列表 + * @param uploadThumbnail 上传文件 {@link UploadThumbnail} */ - Set getMediaTypeList(); + FileInfoVo uploadFileByThumbnail(UploadThumbnail uploadThumbnail); + + /** + * 列举当前文件路径所有的文件 + * + * @param path 路径 + * @return 文件列表 + */ + List listFiles(String path); + } diff --git a/service/src/main/java/cn/bunny/services/service/file/impl/FileDetailService.java b/service/src/main/java/cn/bunny/services/service/file/impl/FileDetailService.java new file mode 100644 index 0000000..ba9ee48 --- /dev/null +++ b/service/src/main/java/cn/bunny/services/service/file/impl/FileDetailService.java @@ -0,0 +1,142 @@ +package cn.bunny.services.service.file.impl; + +import cn.bunny.services.domain.system.files.entity.Files; +import cn.bunny.services.domain.system.files.entity.FilesParDetail; +import cn.bunny.services.mapper.file.FilesMapper; +import cn.bunny.services.mapper.file.FilesParDetailMapper; +import cn.bunny.services.utils.FileUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import jakarta.annotation.Resource; +import lombok.SneakyThrows; +import org.dromara.x.file.storage.core.FileInfo; +import org.dromara.x.file.storage.core.recorder.FileRecorder; +import org.dromara.x.file.storage.core.upload.FilePartInfo; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + +/** + * 文件详情服务类,实现文件记录器接口(FileRecorder) + * 提供文件的上传、更新、查询、删除以及分片操作等功能 + * 主要与数据库中的文件表和文件分片表进行交互 + * + * 官网文档 + * + */ +@Service +public class FileDetailService extends ServiceImpl implements FileRecorder { + + @Resource + private FilesParDetailMapper filesParDetailMapper; + + /** + * 上传时保存文件,并存入到数据库 + * + * 上传文件文档 + * + * 如果是下载、删除、复制、移动等方法,手动构造 FileInfo 对象即可(需要实现 {@link FileRecorder}) + * 如果不需要上面的功能可以不要实现 + * 如果不需要(下载、删除、复制、移动等方法)但是需要存储到数据库的,上传时需要手动保存记录 + * 在这个方法中的 fileInfo 是上传时候拿到的 + *

+ * + * @param fileInfo 文件信息 + */ + @SneakyThrows + @Override + public boolean save(FileInfo fileInfo) { + Files files = new Files(); + BeanUtils.copyProperties(fileInfo, files); + + // 保存文件filepath,对应是fileInfo的 path + String path = fileInfo.getPath(); + files.setFilepath(path); + + // 设置保存文件大小 + Long fileSize = fileInfo.getSize(); + String fileSizeStr = FileUtil.getSize(fileSize); + files.setFileSizeStr(fileSizeStr); + + save(files); + return true; + } + + /** + * 应该是没有用到这个方法的 + * + * @param fileInfo 信息 + */ + @Override + public void update(FileInfo fileInfo) { + // 查询原来的文件信息 + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper().eq(fileInfo.getUrl() != null, Files::getUrl, fileInfo.getUrl()) + .eq(fileInfo.getId() != null, Files::getId, fileInfo.getId()); + Files files = getOne(updateWrapper); + BeanUtils.copyProperties(fileInfo, files); + + // 保存文件filepath,对应是fileInfo的 path + String path = fileInfo.getPath(); + files.setFilepath(path); + + // 设置保存文件大小 + Long fileSize = fileInfo.getSize(); + String fileSizeStr = FileUtil.getSize(fileSize); + files.setFileSizeStr(fileSizeStr); + + updateById(files); + } + + /** + * 接口需要实现 + * + * @param url 地址 + * @return 信息 + */ + @Override + public FileInfo getByUrl(String url) { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery().eq(Files::getUrl, url); + Files files = getOne(queryWrapper); + + FileInfo fileInfo = new FileInfo(); + BeanUtils.copyProperties(files, fileInfo); + return fileInfo; + } + + /** + * 删除时的操作 + * + * @param url 地址 + * @return 是否删除成功 + */ + @Override + public boolean delete(String url) { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery().eq(Files::getUrl, url); + return remove(queryWrapper); + } + + /** + * 保存分片 + * + * @param filePartInfo 分片信息 + */ + @Override + public void saveFilePart(FilePartInfo filePartInfo) { + FilesParDetail filesParDetail = new FilesParDetail(); + BeanUtils.copyProperties(filePartInfo, filesParDetail); + + filesParDetailMapper.insert(filesParDetail); + } + + /** + * 更具上传id删除 + * + * @param url url地址 + */ + @Override + public void deleteFilePartByUploadId(String url) { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery().eq(FilesParDetail::getUploadId, url); + filesParDetailMapper.delete(queryWrapper); + } +} \ No newline at end of file diff --git a/service/src/main/java/cn/bunny/services/service/file/impl/FilesParDetailServiceImpl.java b/service/src/main/java/cn/bunny/services/service/file/impl/FilesParDetailServiceImpl.java new file mode 100644 index 0000000..88f747c --- /dev/null +++ b/service/src/main/java/cn/bunny/services/service/file/impl/FilesParDetailServiceImpl.java @@ -0,0 +1,84 @@ +package cn.bunny.services.service.file.impl; + +import cn.bunny.services.domain.common.model.vo.result.PageResult; +import cn.bunny.services.domain.system.files.dto.FilesParDetailDto; +import cn.bunny.services.domain.system.files.entity.FilesParDetail; +import cn.bunny.services.domain.system.files.vo.FilesParDetailVo; +import cn.bunny.services.mapper.file.FilesParDetailMapper; +import cn.bunny.services.service.file.FilesParDetailService; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import jakarta.validation.Valid; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + *

+ * 文件分片信息表,仅在手动分片上传时使用 服务实现类 + *

+ * + * @author Bunny + * @since 2025-05-08 23:01:19 + */ +@Service +@Transactional +public class FilesParDetailServiceImpl extends ServiceImpl implements FilesParDetailService { + + /** + * * 文件分片信息表,仅在手动分片上传时使用 服务实现类 + * + * @param pageParams 文件分片信息表,仅在手动分片上传时使用分页查询page对象 + * @param dto 文件分片信息表,仅在手动分片上传时使用分页查询对象 + * @return 查询分页文件分片信息表,仅在手动分片上传时使用返回对象 + */ + @Override + public PageResult getFilesParDetailPage(Page pageParams, FilesParDetailDto dto) { + IPage page = baseMapper.selectListByPage(pageParams, dto); + + return PageResult.builder() + .list(page.getRecords()) + .pageNo(page.getCurrent()) + .pageSize(page.getSize()) + .total(page.getTotal()) + .build(); + } + + /** + * 添加文件分片信息表,仅在手动分片上传时使用 + * + * @param dto 文件分片信息表,仅在手动分片上传时使用添加 + */ + @Override + public void addFilesParDetail(@Valid FilesParDetailDto dto) { + FilesParDetail filesPardetail = new FilesParDetail(); + BeanUtils.copyProperties(dto, filesPardetail); + save(filesPardetail); + } + + /** + * 更新文件分片信息表,仅在手动分片上传时使用 + * + * @param dto 文件分片信息表,仅在手动分片上传时使用更新 + */ + @Override + public void updateFilesParDetail(@Valid FilesParDetailDto dto) { + FilesParDetail filesPardetail = new FilesParDetail(); + BeanUtils.copyProperties(dto, filesPardetail); + updateById(filesPardetail); + } + + /** + * 删除|批量删除文件分片信息表,仅在手动分片上传时使用 + * + * @param ids 删除id列表 + */ + @Override + public void deleteFilesParDetail(List ids) { + removeByIds(ids); + } + +} \ No newline at end of file diff --git a/service/src/main/java/cn/bunny/services/service/file/impl/FilesServiceImpl.java b/service/src/main/java/cn/bunny/services/service/file/impl/FilesServiceImpl.java new file mode 100644 index 0000000..ba7cd05 --- /dev/null +++ b/service/src/main/java/cn/bunny/services/service/file/impl/FilesServiceImpl.java @@ -0,0 +1,275 @@ +package cn.bunny.services.service.file.impl; + +import cn.bunny.services.domain.common.constant.FileStorageConstant; +import cn.bunny.services.domain.common.enums.ResultCodeEnum; +import cn.bunny.services.domain.common.model.vo.result.PageResult; +import cn.bunny.services.domain.system.files.dto.FileUploadDto; +import cn.bunny.services.domain.system.files.dto.FilesAddOrUpdateDto; +import cn.bunny.services.domain.system.files.dto.FilesDto; +import cn.bunny.services.domain.system.files.dto.UploadThumbnail; +import cn.bunny.services.domain.system.files.entity.Files; +import cn.bunny.services.domain.system.files.vo.FileInfoVo; +import cn.bunny.services.domain.system.files.vo.FilesVo; +import cn.bunny.services.exception.AuthCustomerException; +import cn.bunny.services.mapper.file.FilesMapper; +import cn.bunny.services.service.file.FilesService; +import cn.bunny.services.utils.FileUtil; +import cn.hutool.core.date.DateUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import jakarta.annotation.Resource; +import org.dromara.x.file.storage.core.FileInfo; +import org.dromara.x.file.storage.core.FileStorageService; +import org.dromara.x.file.storage.core.get.ListFilesSupportInfo; +import org.dromara.x.file.storage.core.get.RemoteDirInfo; +import org.dromara.x.file.storage.core.upload.UploadPretreatment; +import org.springframework.beans.BeanUtils; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.StringUtils; +import org.springframework.web.multipart.MultipartFile; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Objects; + +/** + *

+ * 系统文件表 服务实现类 + *

+ * + * @author Bunny + * @since 2024-10-09 16:28:01 + */ +@Service +@Transactional +public class FilesServiceImpl extends ServiceImpl implements FilesService { + + @Resource + private FileStorageService fileStorageService; + + /** + * 系统文件表 服务实现类 + * + * @param pageParams 系统文件表分页查询page对象 + * @param dto 系统文件表分页查询对象 + * @return 查询分页系统文件表返回对象 + */ + @Override + public PageResult getFilesPage(Page pageParams, FilesDto dto) { + IPage page = baseMapper.selectListByPage(pageParams, dto); + + return PageResult.builder() + .list(page.getRecords()).pageNo(page.getCurrent()) + .pageSize(page.getSize()).total(page.getTotal()) + .build(); + } + + /** + * 添加系统文件表 + * + * @param dto 系统文件表添加 + */ + @Override + public void addFiles(FilesAddOrUpdateDto dto) { + // 上传文件类型,设置自定义路径 + String preType = dto.getFilepath(); + String filepath = FileStorageConstant.getType(preType) + DateUtil.format(new Date(), "yyyy-MM-dd") + "/"; + + dto.getFiles().forEach(file -> { + fileStorageService.of(file).setPath(filepath).upload(); + }); + } + + /** + * 更新系统文件表 + * 因为更新文件必须要保证原来的文件名是一样的,所以在更新时候要设置文件名 + * + * @param dto 系统文件表更新 + */ + @Override + public void updateFiles(FilesAddOrUpdateDto dto) { + MultipartFile file = dto.getFile(); + // 先查询文件 + Long id = dto.getId(); + + // 查询原文件信息 + Files files = getOne(Wrappers.lambdaQuery().eq(Files::getId, id)); + + // 看文件是否存在, + if (Objects.isNull(files)) { + throw new AuthCustomerException(ResultCodeEnum.FILE_NOT_EXIST); + } + + // 删除原来文件 + boolean delete = fileStorageService.delete(files.getUrl()); + if (!delete) { + throw new AuthCustomerException(ResultCodeEnum.UPDATE_ERROR); + } + + // 上传文件,修改源文件 + fileStorageService.of(file) + // 设置旧文件的路径 + .setPath(files.getFilepath()) + // 设置旧文件的名称 + .setSaveFilename(files.getFilename()) + // 如果有缩略图的话 + .setSaveThFilename(files.getThFilename()) + .upload(); + } + + /** + * 上传文件 + * + * @param dto 文件上传 + * @return 管理端返回文件信息 + */ + @Override + public FileInfoVo upload(FileUploadDto dto) { + MultipartFile file = dto.getFile(); + + // 设置自定义路径 + String preType = dto.getType(); + String filepath = FileStorageConstant.getType(preType) + DateUtil.format(new Date(), "yyyy-MM-dd") + "/"; + + FileInfo fileInfo = fileStorageService.of(file).setPath(filepath).upload(); + + // 返回信息内容化 + FileInfoVo fileInfoVo = new FileInfoVo(); + BeanUtils.copyProperties(fileInfo, fileInfoVo); + + // 设置保存文件大小 + Long fileSize = fileInfo.getSize(); + String fileSizeStr = FileUtil.getSize(fileSize); + fileInfoVo.setFileSizeStr(fileSizeStr); + return fileInfoVo; + } + + /** + * 删除|批量删除系统文件表 + * + * @param ids 删除id列表 + */ + @Override + public void deleteFiles(List ids) { + if (ids.isEmpty()) throw new AuthCustomerException(ResultCodeEnum.REQUEST_IS_EMPTY); + + // 查询文件,并删除 + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery().in(Files::getId, ids); + list(wrapper).forEach(files -> fileStorageService.delete(files.getUrl())); + } + + /** + * 下载文件 + * 下载原文件 不是缩略图 + * + * 下载文件参考文档 + * + * + * @param fileId 文件id + * @return 文件字节数组 + */ + @Override + public ResponseEntity downloadFilesByFileId(Long fileId) { + // 查询数据库文件信息 + Files files = getOne(Wrappers.lambdaQuery().eq(Files::getId, fileId)); + + // 判断文件是否存在 + if (files == null) throw new AuthCustomerException(ResultCodeEnum.FILE_NOT_EXIST); + + // 从Minio获取文件 + FileInfo fileInfo = new FileInfo(); + BeanUtils.copyProperties(files, fileInfo); + + String file = files.getFilepath() + files.getFilename(); + fileInfo.setFilename(file); + byte[] bytes = fileStorageService.download(fileInfo).bytes(); + + // 设置响应头 + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); + headers.setContentDispositionFormData("attachment", files.getFilename()); + + return new ResponseEntity<>(bytes, headers, HttpStatus.OK); + } + + /** + * 上传文件縮略圖 + * 详细参考: + * + * 上传文件文档 + * + * + * @param uploadThumbnail 上传文件 {@link UploadThumbnail} + */ + @Override + public FileInfoVo uploadFileByThumbnail(UploadThumbnail uploadThumbnail) { + MultipartFile file = uploadThumbnail.getFile(); + String preType = uploadThumbnail.getPreType(); + String type = FileStorageConstant.getType(preType); + if (file == null) return null; + + // 上传文件构造参数 + String filepath = type + DateUtil.format(new Date(), "yyyy-MM-dd") + "/"; + UploadPretreatment uploadPretreatment = fileStorageService.of(file).setPath(filepath); + + // 缩略图后缀 + String thumbnailSuffix = uploadThumbnail.getThumbnailSuffix(); + if (StringUtils.hasText(thumbnailSuffix)) { + uploadPretreatment.setThumbnailSuffix(thumbnailSuffix); + } + + // 保存文件名称 + String saveThFilename = uploadThumbnail.getSaveThFilename(); + if (StringUtils.hasText(saveThFilename)) { + uploadPretreatment.setSaveThFilename(saveThFilename); + } + + // 缩略图大小不为空 + Integer thumbnailWidth = uploadThumbnail.getThumbnailWidth(); + Integer thumbnailHeight = uploadThumbnail.getThumbnailHeight(); + + if (thumbnailWidth != null && thumbnailHeight != null) { + uploadPretreatment.thumbnail(uploadThumbnail.getThumbnailWidth(), uploadThumbnail.getThumbnailHeight()); + } + + FileInfo fileInfo = uploadPretreatment.upload(); + // 返回信息内容化 + FileInfoVo fileInfoVo = new FileInfoVo(); + BeanUtils.copyProperties(fileInfo, fileInfoVo); + + // 设置保存文件大小 + Long fileSize = fileInfo.getSize(); + String fileSizeStr = FileUtil.getSize(fileSize); + fileInfoVo.setFileSizeStr(fileSizeStr); + return fileInfoVo; + } + + /** + * 列举当前文件路径所有的文件 + * + * @param path 路径 + * @return 文件列表 + */ + @Override + public List listFiles(String path) { + // 是否支持列举文件 + ListFilesSupportInfo isSupportListFiles = fileStorageService.isSupportListFiles(); + + // 是否支持列举文件 + Boolean isSupport = isSupportListFiles.getIsSupport(); + if (!isSupport) { + return new ArrayList<>(); + } + + return fileStorageService.listFiles().setPath(path).listFiles().getDirList(); + } +} diff --git a/service/src/main/java/cn/bunny/services/service/message/MessageService.java b/service/src/main/java/cn/bunny/services/service/message/MessageService.java index 567aa33..9cd4ed1 100644 --- a/service/src/main/java/cn/bunny/services/service/message/MessageService.java +++ b/service/src/main/java/cn/bunny/services/service/message/MessageService.java @@ -1,5 +1,6 @@ package cn.bunny.services.service.message; +import cn.bunny.services.domain.common.model.vo.result.PageResult; import cn.bunny.services.domain.system.message.dto.MessageAddDto; import cn.bunny.services.domain.system.message.dto.MessageDto; import cn.bunny.services.domain.system.message.dto.MessageUpdateDto; @@ -7,10 +8,8 @@ import cn.bunny.services.domain.system.message.entity.Message; import cn.bunny.services.domain.system.message.vo.MessageDetailVo; import cn.bunny.services.domain.system.message.vo.MessageReceivedWithUserVo; import cn.bunny.services.domain.system.message.vo.MessageVo; -import cn.bunny.services.domain.common.model.vo.result.PageResult; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; -import jakarta.validation.Valid; import java.util.List; @@ -45,14 +44,14 @@ public interface MessageService extends IService { * * @param dto 添加表单 */ - void addMessage(@Valid MessageAddDto dto); + void addMessage(MessageAddDto dto); /** * * 更新系统消息 * * @param dto 更新表单 */ - void updateMessage(@Valid MessageUpdateDto dto); + void updateMessage(MessageUpdateDto dto); /** * * 删除|批量删除系统消息类型 diff --git a/service/src/main/java/cn/bunny/services/service/message/impl/MessageReceivedServiceImpl.java b/service/src/main/java/cn/bunny/services/service/message/impl/MessageReceivedServiceImpl.java index 5b3a03f..09b91a5 100644 --- a/service/src/main/java/cn/bunny/services/service/message/impl/MessageReceivedServiceImpl.java +++ b/service/src/main/java/cn/bunny/services/service/message/impl/MessageReceivedServiceImpl.java @@ -1,8 +1,8 @@ package cn.bunny.services.service.message.impl; import cn.bunny.services.context.BaseContext; -import cn.bunny.services.domain.common.model.vo.result.PageResult; import cn.bunny.services.domain.common.enums.ResultCodeEnum; +import cn.bunny.services.domain.common.model.vo.result.PageResult; import cn.bunny.services.domain.system.message.dto.MessageReceivedDto; import cn.bunny.services.domain.system.message.dto.MessageReceivedUpdateDto; import cn.bunny.services.domain.system.message.dto.MessageUserDto; @@ -12,13 +12,11 @@ import cn.bunny.services.domain.system.message.vo.MessageReceivedWithMessageVo; import cn.bunny.services.domain.system.message.vo.MessageUserVo; import cn.bunny.services.exception.AuthCustomerException; import cn.bunny.services.mapper.message.MessageReceivedMapper; -import cn.bunny.services.minio.MinioHelper; import cn.bunny.services.service.message.MessageReceivedService; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import jakarta.annotation.Resource; import jakarta.validation.Valid; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; @@ -38,9 +36,6 @@ import java.util.List; @Transactional public class MessageReceivedServiceImpl extends ServiceImpl implements MessageReceivedService { - @Resource - private MinioHelper minioHelper; - /** * 管理员管理用户消息接收分页查询 * @@ -56,10 +51,6 @@ public class MessageReceivedServiceImpl extends ServiceImplbuilder().list(voList).pageNo(page.getCurrent()) @@ -111,10 +102,6 @@ public class MessageReceivedServiceImpl extends ServiceImpl impl @Resource private MessageReceivedMapper messageReceivedMapper; + @Resource private UserMapper userMapper; + @Resource private MessageReceivedService messageReceivedService; - @Resource - private MinioHelper minioHelper; /** * 分页查询发送消息 @@ -143,14 +141,10 @@ public class MessageServiceImpl extends ServiceImpl impl * @param dto 系统消息添加 */ @Override - public void addMessage(@Valid MessageAddDto dto) { + public void addMessage(MessageAddDto dto) { // 如果发送人为空设置当前登录的人的ID if (dto.getSendUserId() == null) dto.setSendUserId(BaseContext.getUserId()); - // 设置封面返回内容 - String cover = dto.getCover(); - dto.setCover(minioHelper.getUserAvatar(cover)); - // 先保存消息数据,之后拿到保存消息的id Message message = new Message(); BeanUtils.copyProperties(dto, message); @@ -182,7 +176,7 @@ public class MessageServiceImpl extends ServiceImpl impl * @param dto 系统消息更新 */ @Override - public void updateMessage(@Valid MessageUpdateDto dto) { + public void updateMessage(MessageUpdateDto dto) { // 如果发送人为空设置当前登录的人的ID Long sendUserId = dto.getSendUserId(); if (sendUserId == null) dto.setSendUserId(BaseContext.getUserId()); @@ -193,10 +187,6 @@ public class MessageServiceImpl extends ServiceImpl impl receivedUserIds = userMapper.selectList(null).stream().map(BaseEntity::getId).toList(); } - // 设置封面返回内容 - String cover = dto.getCover(); - dto.setCover(minioHelper.getUserAvatar(cover)); - // 更新内容 Message message = new Message(); BeanUtils.copyProperties(dto, message); diff --git a/service/src/main/java/cn/bunny/services/service/system/impl/FilesServiceImpl.java b/service/src/main/java/cn/bunny/services/service/system/impl/FilesServiceImpl.java deleted file mode 100644 index b171d90..0000000 --- a/service/src/main/java/cn/bunny/services/service/system/impl/FilesServiceImpl.java +++ /dev/null @@ -1,266 +0,0 @@ -package cn.bunny.services.service.system.impl; - -import cn.bunny.services.context.BaseContext; -import cn.bunny.services.domain.common.model.dto.minio.MinioUploadFileInfo; -import cn.bunny.services.domain.common.model.vo.result.PageResult; -import cn.bunny.services.domain.common.enums.ResultCodeEnum; -import cn.bunny.services.domain.system.files.dto.FileUploadDto; -import cn.bunny.services.domain.system.files.dto.FilesAddDto; -import cn.bunny.services.domain.system.files.dto.FilesDto; -import cn.bunny.services.domain.system.files.dto.FilesUpdateDto; -import cn.bunny.services.domain.system.files.entity.Files; -import cn.bunny.services.domain.system.files.vo.FileInfoVo; -import cn.bunny.services.domain.system.files.vo.FilesVo; -import cn.bunny.services.exception.AuthCustomerException; -import cn.bunny.services.mapper.system.FilesMapper; -import cn.bunny.services.minio.MinioHelper; -import cn.bunny.services.minio.MinioProperties; -import cn.bunny.services.minio.MinioService; -import cn.bunny.services.service.system.FilesService; -import cn.bunny.services.utils.FileUtil; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import jakarta.annotation.Resource; -import jakarta.validation.Valid; -import lombok.SneakyThrows; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.http.HttpHeaders; -import org.springframework.http.HttpStatus; -import org.springframework.http.MediaType; -import org.springframework.http.ResponseEntity; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.multipart.MultipartFile; - -import java.io.IOException; -import java.lang.reflect.Field; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -/** - *

- * 系统文件表 服务实现类 - *

- * - * @author Bunny - * @since 2024-10-09 16:28:01 - */ -@Service -@Transactional -public class FilesServiceImpl extends ServiceImpl implements FilesService { - - @Value("${spring.servlet.multipart.max-file-size}") - private String maxFileSize; - - @Resource - private MinioProperties properties; - - @Resource - private MinioService minioService; - - @Resource - private MinioHelper minioHelper; - - @Resource - private FilesMapper filesMapper; - - - /** - * * 系统文件表 服务实现类 - * - * @param pageParams 系统文件表分页查询page对象 - * @param dto 系统文件表分页查询对象 - * @return 查询分页系统文件表返回对象 - */ - @Override - public PageResult getFilesPage(Page pageParams, FilesDto dto) { - IPage page = baseMapper.selectListByPage(pageParams, dto); - - return PageResult.builder() - .list(page.getRecords()).pageNo(page.getCurrent()) - .pageSize(page.getSize()).total(page.getTotal()) - .build(); - } - - /** - * 添加系统文件表 - * - * @param dto 系统文件表添加 - */ - @Override - public void addFiles(FilesAddDto dto) { - List list = dto.getFiles().stream().map(file -> { - try { - MinioUploadFileInfo minioUploadFileInfo = minioService.uploadWithFileInfo(file, dto.getFilepath()); - - Files files = new Files(); - files.setFileType(file.getContentType()); - files.setFileSize(file.getSize()); - files.setFilepath("/" + properties.getBucketName() + minioUploadFileInfo.getFilepath()); - files.setFilename(minioUploadFileInfo.getFilename()); - files.setDownloadCount(dto.getDownloadCount()); - return files; - } catch (IOException e) { - throw new AuthCustomerException(e.getMessage()); - } - }).toList(); - - saveBatch(list); - } - - /** - * 更新系统文件表 - * - * @param dto 系统文件表更新 - */ - @Override - public void updateFiles(@Valid FilesUpdateDto dto) { - Long id = dto.getId(); - MultipartFile file = dto.getFiles(); - Files files = getOne(Wrappers.lambdaQuery().eq(Files::getId, id)); - - if (file != null) { - // 文件路径 - String filePath = files.getFilepath().replace("/" + properties.getBucketName() + "/", ""); - minioService.updateFile(properties.getBucketName(), filePath, file); - - // 设置文件信息 - files.setFileSize(file.getSize()); - files.setFileType(file.getContentType()); - } - - // 更新内容 - files = new Files(); - BeanUtils.copyProperties(dto, files); - updateById(files); - } - - /** - * * 上传文件 - * - * @param dto 文件上传 - * @return 管理端返回文件信息 - */ - @SneakyThrows - @Override - public FileInfoVo upload(FileUploadDto dto) { - // 上传的文件 - MultipartFile file = dto.getFile(); - // 上传文件类型 - String type = dto.getType(); - // 管理员Id - Long userId = BaseContext.getUserId(); - // 文件大小 - long fileSize = file.getSize(); - // 文件类型 - String contentType = file.getContentType(); - // 文件名 - String filename = file.getOriginalFilename(); - - // 上传文件 - MinioUploadFileInfo minioUploadFIleInfo = minioService.uploadWithFileInfo(file, type); - String bucketNameFilepath = minioUploadFIleInfo.getBucketNameFilepath(); - - // 盘读研数据是否过大 - String mb = maxFileSize.replace("MB", ""); - if (fileSize / 1024 / 1024 > Long.parseLong(mb)) throw new AuthCustomerException(ResultCodeEnum.DATA_TOO_LARGE); - - // 插入文件信息 - Files adminFiles = new Files(); - adminFiles.setFileSize(fileSize); - adminFiles.setFileType(contentType); - adminFiles.setFilename(filename); - adminFiles.setFilepath(bucketNameFilepath); - adminFiles.setCreateUser(userId); - filesMapper.insert(adminFiles); - - // 返回信息内容化 - return FileInfoVo.builder() - .size(FileUtil.getSize(fileSize)).filepath(bucketNameFilepath) - .fileSize(fileSize).fileType(contentType) - .filename(filename).url(minioHelper.getObjectNameFullPath(bucketNameFilepath)) - .build(); - } - - /** - * 删除|批量删除系统文件表 - * - * @param ids 删除id列表 - */ - @Override - public void deleteFiles(List ids) { - if (ids.isEmpty()) throw new AuthCustomerException(ResultCodeEnum.REQUEST_IS_EMPTY); - - // 查询文件路径 - List list = list(Wrappers.lambdaQuery().in(Files::getId, ids)).stream() - .map(files -> { - String filepath = files.getFilepath(); - int end = filepath.indexOf("/", 1); - return filepath.substring(end + 1); - }).toList(); - - // 删除目标文件 - minioService.removeObjects(list); - - // 删除数据库内容 - removeByIds(ids); - } - - /** - * * 下载文件 - * - * @param fileId 文件id - * @return 文件字节数组 - */ - @Override - public ResponseEntity downloadFilesByFileId(Long fileId) { - // 查询数据库文件信息 - Files files = getOne(Wrappers.lambdaQuery().eq(Files::getId, fileId)); - - // 判断文件是否存在 - if (files == null) throw new AuthCustomerException(ResultCodeEnum.FILE_NOT_EXIST); - - // 从Minio获取文件 - String filepath = files.getFilepath(); - int end = filepath.indexOf("/", 1); - filepath = filepath.substring(end + 1); - byte[] bytes = minioService.getBucketObjectByte(filepath); - - // 设置响应头 - HttpHeaders headers = new HttpHeaders(); - headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); - headers.setContentDispositionFormData("attachment", files.getFilename()); - - return new ResponseEntity<>(bytes, headers, HttpStatus.OK); - } - - /** - * * 获取所有文件类型 - * - * @return 媒体文件类型列表 - */ - @Override - public Set getMediaTypeList() { - Set valueList = new HashSet<>(); - Class mediaTypeClass = MediaType.class; - - try { - for (Field declaredField : mediaTypeClass.getDeclaredFields()) { - // 获取字段属性值 - declaredField.setAccessible(true); - String value = declaredField.get(null).toString(); - - if (value.matches("\\w+/.*")) { - valueList.add(value); - } - } - return valueList; - } catch (Exception exception) { - return Set.of(); - } - } -} diff --git a/service/src/main/java/cn/bunny/services/service/system/impl/UserLoginServiceImpl.java b/service/src/main/java/cn/bunny/services/service/system/impl/UserLoginServiceImpl.java index 7351e19..b04256d 100644 --- a/service/src/main/java/cn/bunny/services/service/system/impl/UserLoginServiceImpl.java +++ b/service/src/main/java/cn/bunny/services/service/system/impl/UserLoginServiceImpl.java @@ -26,7 +26,6 @@ import cn.bunny.services.exception.AuthCustomerException; import cn.bunny.services.mapper.configuration.EmailTemplateMapper; import cn.bunny.services.mapper.log.UserLoginLogMapper; import cn.bunny.services.mapper.system.UserMapper; -import cn.bunny.services.minio.MinioHelper; import cn.bunny.services.service.system.UserLoginService; import cn.bunny.services.utils.IpUtil; import cn.bunny.services.utils.JwtTokenUtil; @@ -66,9 +65,6 @@ public class UserLoginServiceImpl extends ServiceImpl imp @Resource private ConcreteSenderEmailTemplate concreteSenderEmailTemplate; - @Resource - private MinioHelper minioHelper; - @Resource private UserLoginVoBuilderCacheService userLoginVoBuilderCacheService; @@ -250,10 +246,6 @@ public class UserLoginServiceImpl extends ServiceImpl imp AdminUser user = getOne(Wrappers.lambdaQuery().eq(AdminUser::getId, userId)); if (user == null) throw new AuthCustomerException(ResultCodeEnum.USER_IS_EMPTY); - // 检查用户头像,因为更新用户信息会带着用户之前的信息,如果没有更新头像,前端显示的http:xxx - String userAvatar = minioHelper.formatUserAvatar(dto.getAvatar()); - dto.setAvatar(userAvatar); - // 更新用户 BeanUtils.copyProperties(dto, user); updateById(user); diff --git a/service/src/main/java/cn/bunny/services/service/system/impl/UserServiceImpl.java b/service/src/main/java/cn/bunny/services/service/system/impl/UserServiceImpl.java index 3e32f2b..8eaf23d 100644 --- a/service/src/main/java/cn/bunny/services/service/system/impl/UserServiceImpl.java +++ b/service/src/main/java/cn/bunny/services/service/system/impl/UserServiceImpl.java @@ -3,7 +3,7 @@ package cn.bunny.services.service.system.impl; import cn.bunny.services.core.cache.RedisService; import cn.bunny.services.core.event.event.ClearAllUserCacheEvent; import cn.bunny.services.core.event.event.UpdateUserinfoByUserIdsEvent; -import cn.bunny.services.domain.common.constant.MinioConstant; +import cn.bunny.services.domain.common.constant.FileStorageConstant; import cn.bunny.services.domain.common.constant.UserConstant; import cn.bunny.services.domain.common.enums.ResultCodeEnum; import cn.bunny.services.domain.common.model.vo.LoginVo; @@ -26,8 +26,7 @@ import cn.bunny.services.mapper.system.RoleMapper; import cn.bunny.services.mapper.system.UserDeptMapper; import cn.bunny.services.mapper.system.UserMapper; import cn.bunny.services.mapper.system.UserRoleMapper; -import cn.bunny.services.minio.MinioHelper; -import cn.bunny.services.service.system.FilesService; +import cn.bunny.services.service.file.FilesService; import cn.bunny.services.service.system.UserService; import com.alibaba.fastjson2.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -77,9 +76,6 @@ public class UserServiceImpl extends ServiceImpl implemen @Resource private RoleMapper roleMapper; - @Resource - private MinioHelper minioHelper; - @Resource private RedisService redisService; @@ -103,14 +99,10 @@ public class UserServiceImpl extends ServiceImpl implemen // 用户是否存在 if (user == null) throw new AuthCustomerException(ResultCodeEnum.DATA_NOT_EXIST); - // 用户头像 - String avatar = user.getAvatar(); UserVo userVo = new UserVo(); BeanUtils.copyProperties(user, userVo); - String userAvatar = minioHelper.getUserAvatar(avatar); - userVo.setAvatar(userAvatar); return userVo; } @@ -220,12 +212,8 @@ public class UserServiceImpl extends ServiceImpl implemen List voList = page.getRecords().stream() .map(adminUser -> { - // 如果存在用户头像,则设置用户头像 - String avatar = minioHelper.getUserAvatar(adminUser.getAvatar()); - AdminUserVo adminUserVo = new AdminUserVo(); BeanUtils.copyProperties(adminUser, adminUserVo); - adminUserVo.setAvatar(avatar); return adminUserVo; }) .filter(adminUserVo -> !adminUserVo.getId().equals(1L)) @@ -378,11 +366,11 @@ public class UserServiceImpl extends ServiceImpl implemen if (avatar == null) return; // 上传头像 - FileUploadDto uploadDto = FileUploadDto.builder().file(avatar).type(MinioConstant.avatar).build(); + FileUploadDto uploadDto = FileUploadDto.builder().file(avatar).type(FileStorageConstant.AVATAR).build(); FileInfoVo fileInfoVo = filesService.upload(uploadDto); // 更新用户 adminUser.setId(userId); - adminUser.setAvatar(fileInfoVo.getFilepath()); + adminUser.setAvatar(fileInfoVo.getUrl()); } }