diff --git a/LICENSE b/LICENSE index 2800361f..a01d657f 100644 --- a/LICENSE +++ b/LICENSE @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright 2022-2024 兮玥(190785909@qq.com) + Copyright (C) 2022-2025 兮玥(190785909@qq.com) All rights reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/NOTICE b/NOTICE index 475a386d..c1df4451 100644 --- a/NOTICE +++ b/NOTICE @@ -1,5 +1,5 @@ ChestnutCMS -Copyright 2022-2024 兮玥 (190785909@qq.com) +Copyright 2022-2025 兮玥 (190785909@qq.com) This product includes software developed at ChestnutCMS (https://www.1000mz.com/). diff --git a/README.md b/README.md index 75025279..4b5ebd9a 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# ChestnutCMS v1.5.3 +# ChestnutCMS v1.5.4 ### 系统简介 diff --git a/chestnut-admin/pom.xml b/chestnut-admin/pom.xml index c0469afe..7f086032 100644 --- a/chestnut-admin/pom.xml +++ b/chestnut-admin/pom.xml @@ -3,7 +3,7 @@ chestnut com.chestnut - 1.5.3 + 1.5.4 4.0.0 jar diff --git a/chestnut-admin/src/main/java/com/chestnut/ChestnutApplication.java b/chestnut-admin/src/main/java/com/chestnut/ChestnutApplication.java index 90b23813..b553bb39 100644 --- a/chestnut-admin/src/main/java/com/chestnut/ChestnutApplication.java +++ b/chestnut-admin/src/main/java/com/chestnut/ChestnutApplication.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-admin/src/main/java/com/chestnut/ChestnutServletInitializer.java b/chestnut-admin/src/main/java/com/chestnut/ChestnutServletInitializer.java index 9b7ad031..7c8be6d0 100644 --- a/chestnut-admin/src/main/java/com/chestnut/ChestnutServletInitializer.java +++ b/chestnut-admin/src/main/java/com/chestnut/ChestnutServletInitializer.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-admin/src/main/resources/application-dev.yml b/chestnut-admin/src/main/resources/application-dev.yml index 19d96488..f444e9d9 100644 --- a/chestnut-admin/src/main/resources/application-dev.yml +++ b/chestnut-admin/src/main/resources/application-dev.yml @@ -5,7 +5,7 @@ chestnut: # 代号 alias: ChestnutCMS # 版本 - version: 1.5.3 + version: 1.5.4 # 版权年份 copyrightYear: 2022-2024 system: diff --git a/chestnut-admin/src/main/resources/application-prod.yml b/chestnut-admin/src/main/resources/application-prod.yml index d37ffafd..24a87810 100644 --- a/chestnut-admin/src/main/resources/application-prod.yml +++ b/chestnut-admin/src/main/resources/application-prod.yml @@ -5,7 +5,7 @@ chestnut: # 代号 alias: ChestnutCMS # 版本 - version: 1.5.3 + version: 1.5.4 # 版权年份 copyrightYear: 2022-2024 system: diff --git a/chestnut-admin/src/main/resources/application-test.yml b/chestnut-admin/src/main/resources/application-test.yml index 4e54fb1f..75976507 100644 --- a/chestnut-admin/src/main/resources/application-test.yml +++ b/chestnut-admin/src/main/resources/application-test.yml @@ -5,7 +5,7 @@ chestnut: # 代号 alias: ChestnutCMS # 版本 - version: 1.5.3 + version: 1.5.4 # 版权年份 copyrightYear: 2022-2024 system: diff --git a/chestnut-admin/src/main/resources/db/migration/mysql/V1.5.4__update.sql b/chestnut-admin/src/main/resources/db/migration/mysql/V1.5.4__update.sql new file mode 100644 index 00000000..e69de29b diff --git a/chestnut-cms/chestnut-cms-advertisement/pom.xml b/chestnut-cms/chestnut-cms-advertisement/pom.xml index baf096f3..fa9e647a 100644 --- a/chestnut-cms/chestnut-cms-advertisement/pom.xml +++ b/chestnut-cms/chestnut-cms-advertisement/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-advertisement diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdCoreDataHandler.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdCoreDataHandler.java index 1bae790b..3e61e1c1 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdCoreDataHandler.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdCoreDataHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdSpacePageWidget.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdSpacePageWidget.java index c15eebd8..02474636 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdSpacePageWidget.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdSpacePageWidget.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdSpacePageWidgetType.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdSpacePageWidgetType.java index 57ca4bcb..95773b7d 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdSpacePageWidgetType.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdSpacePageWidgetType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdvResourceStat.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdvResourceStat.java index caa194db..6fb6addd 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdvResourceStat.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/AdvResourceStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/IAdvertisementType.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/IAdvertisementType.java index 9cbac2c5..de0155a3 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/IAdvertisementType.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/IAdvertisementType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/ImageAdvertisementType.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/ImageAdvertisementType.java index 66344478..9aec205b 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/ImageAdvertisementType.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/ImageAdvertisementType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/cache/AdMonitoredCache.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/cache/AdMonitoredCache.java index e82e2cf8..b3f5cd39 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/cache/AdMonitoredCache.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/cache/AdMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdLogController.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdLogController.java index e8688128..a1f97469 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdLogController.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdLogController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdSpaceController.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdSpaceController.java index 4f5282ce..b5058a8d 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdSpaceController.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdSpaceController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdvertisementController.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdvertisementController.java index dbf2d8db..7f04a9c0 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdvertisementController.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/AdvertisementController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/front/AdApiController.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/front/AdApiController.java index ac66674f..b124bb9f 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/front/AdApiController.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/controller/front/AdApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdClickLog.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdClickLog.java index cd3d5a27..bc3dd341 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdClickLog.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdClickLog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdHourStat.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdHourStat.java index b3f10bae..ddd2cbb4 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdHourStat.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdHourStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdViewLog.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdViewLog.java index a16857c2..7916bbaa 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdViewLog.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdViewLog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdvertisement.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdvertisement.java index 20d0a716..5686cad9 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdvertisement.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/domain/CmsAdvertisement.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/job/AdvertisementPublishJob.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/job/AdvertisementPublishJob.java index ac978da5..6545b4d0 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/job/AdvertisementPublishJob.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/job/AdvertisementPublishJob.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/job/AdvertisementStatJob.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/job/AdvertisementStatJob.java index 6e5b3192..28bb2a07 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/job/AdvertisementStatJob.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/job/AdvertisementStatJob.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/listener/AdvertisementListener.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/listener/AdvertisementListener.java index ccebb77d..d688fbfe 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/listener/AdvertisementListener.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/listener/AdvertisementListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdClickLogMapper.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdClickLogMapper.java index fdd3a497..1be0b17b 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdClickLogMapper.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdClickLogMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdHourStatMapper.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdHourStatMapper.java index 2cb38616..55026308 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdHourStatMapper.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdHourStatMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdViewLogMapper.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdViewLogMapper.java index 6969c033..ac02e9a8 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdViewLogMapper.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdViewLogMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdvertisementMapper.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdvertisementMapper.java index fc0c4417..ae08bb54 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdvertisementMapper.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/mapper/CmsAdvertisementMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/permission/CmsAdvertisementPriv.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/permission/CmsAdvertisementPriv.java index b84c2b4c..1462bb2a 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/permission/CmsAdvertisementPriv.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/permission/CmsAdvertisementPriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/AdSpaceProps.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/AdSpaceProps.java index 0f2992b0..3cb41a47 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/AdSpaceProps.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/AdSpaceProps.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/dto/AdvertisementDTO.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/dto/AdvertisementDTO.java index 35248134..232202f9 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/dto/AdvertisementDTO.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/dto/AdvertisementDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/vo/AdSpaceVO.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/vo/AdSpaceVO.java index 327b0971..3f167a2e 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/vo/AdSpaceVO.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/vo/AdSpaceVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/vo/AdvertisementVO.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/vo/AdvertisementVO.java index 654c1418..8c992b40 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/vo/AdvertisementVO.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/pojo/vo/AdvertisementVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdHourStatService.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdHourStatService.java index a5ebccf1..5324492b 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdHourStatService.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdHourStatService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdvertisementService.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdvertisementService.java index 0d582eb2..8d7dca51 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdvertisementService.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdvertisementService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdvertisementStatService.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdvertisementStatService.java index b5c357b5..74ebb347 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdvertisementStatService.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/IAdvertisementStatService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdHourStatServiceImpl.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdHourStatServiceImpl.java index 55f30c0a..de8a80f2 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdHourStatServiceImpl.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdHourStatServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdvertisementServiceImpl.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdvertisementServiceImpl.java index 3e318b91..7cc16d1b 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdvertisementServiceImpl.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdvertisementServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdvertisementStatServiceImpl.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdvertisementStatServiceImpl.java index 7621cb3c..6fca0b8c 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdvertisementStatServiceImpl.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/service/impl/AdvertisementStatServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdClickStatEventHandler.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdClickStatEventHandler.java index 544b3fb7..9b287a84 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdClickStatEventHandler.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdClickStatEventHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdViewStatEventHandler.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdViewStatEventHandler.java index 8f116469..728220e3 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdViewStatEventHandler.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdViewStatEventHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdvertisementStatType.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdvertisementStatType.java index f26e649b..47e2f2d6 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdvertisementStatType.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/stat/AdvertisementStatType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/template/tag/CmsAdvertisementTag.java b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/template/tag/CmsAdvertisementTag.java index 891919aa..46169f4b 100644 --- a/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/template/tag/CmsAdvertisementTag.java +++ b/chestnut-cms/chestnut-cms-advertisement/src/main/java/com/chestnut/advertisement/template/tag/CmsAdvertisementTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/pom.xml b/chestnut-cms/chestnut-cms-article/pom.xml index 23109141..44585266 100644 --- a/chestnut-cms/chestnut-cms-article/pom.xml +++ b/chestnut-cms/chestnut-cms-article/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-article diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleConsts.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleConsts.java index 56d959e1..dfc7b9fc 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleConsts.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleConsts.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleContent.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleContent.java index c8e4f4e2..57e7a0ea 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleContent.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleContent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleContentType.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleContentType.java index 6cecaa88..5f127eec 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleContentType.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleContentType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleCoreDataHandler.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleCoreDataHandler.java index efb6f2ef..907c932b 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleCoreDataHandler.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleCoreDataHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleRichTextResourceStat.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleRichTextResourceStat.java index d392fd72..a96cd082 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleRichTextResourceStat.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleRichTextResourceStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleUtils.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleUtils.java index 842dcc6f..76ce9fa8 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleUtils.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/ArticleUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/IArticleBodyFormat.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/IArticleBodyFormat.java index 74dc8b25..59d63b4c 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/IArticleBodyFormat.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/IArticleBodyFormat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_ArticleDetailTemplate.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_ArticleDetailTemplate.java index 96fcb618..4c6d6e4f 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_ArticleDetailTemplate.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_ArticleDetailTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_DefaultArticleDetailTemplate.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_DefaultArticleDetailTemplate.java index 9cff812a..fe56a357 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_DefaultArticleDetailTemplate.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_DefaultArticleDetailTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_UEditorCss.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_UEditorCss.java index d7ab52c0..de100fb9 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_UEditorCss.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/PublishPipeProp_UEditorCss.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/controller/ArticleController.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/controller/ArticleController.java index 3d977749..7826ea53 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/controller/ArticleController.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/controller/ArticleController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/controller/front/ArticleApiController.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/controller/front/ArticleApiController.java index f526a547..24015a4d 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/controller/front/ArticleApiController.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/controller/front/ArticleApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/dao/CmsArticleDetailDAO.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/dao/CmsArticleDetailDAO.java index 07122fce..8927cce0 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/dao/CmsArticleDetailDAO.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/dao/CmsArticleDetailDAO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/BCmsArticleDetail.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/BCmsArticleDetail.java index e9513e43..3054918a 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/BCmsArticleDetail.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/BCmsArticleDetail.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/CmsArticleDetail.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/CmsArticleDetail.java index 65176e1c..d64af4a5 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/CmsArticleDetail.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/CmsArticleDetail.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/dto/ArticleDTO.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/dto/ArticleDTO.java index d9f101e9..52c16d7a 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/dto/ArticleDTO.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/dto/ArticleDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/vo/ArticleApiVO.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/vo/ArticleApiVO.java index 9f4646e4..3b6d910b 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/vo/ArticleApiVO.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/vo/ArticleApiVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/vo/ArticleVO.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/vo/ArticleVO.java index 74b62f54..f5375efb 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/vo/ArticleVO.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/domain/vo/ArticleVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/format/ArticleBodyFormat_RichText.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/format/ArticleBodyFormat_RichText.java index 5ccaa32c..ddebc27d 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/format/ArticleBodyFormat_RichText.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/format/ArticleBodyFormat_RichText.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/listener/ArticleListener.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/listener/ArticleListener.java index 3fe4457a..95183f39 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/listener/ArticleListener.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/listener/ArticleListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/mapper/BCmsArticleDetailMapper.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/mapper/BCmsArticleDetailMapper.java index 96330905..f8ec2f74 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/mapper/BCmsArticleDetailMapper.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/mapper/BCmsArticleDetailMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/mapper/CmsArticleDetailMapper.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/mapper/CmsArticleDetailMapper.java index e66a888a..80970257 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/mapper/CmsArticleDetailMapper.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/mapper/CmsArticleDetailMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/ArticleImageHeight.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/ArticleImageHeight.java index 8fe27718..0171958d 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/ArticleImageHeight.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/ArticleImageHeight.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/ArticleImageWidth.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/ArticleImageWidth.java index 6e426d7c..2049029d 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/ArticleImageWidth.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/ArticleImageWidth.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/AutoArticleLogo.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/AutoArticleLogo.java index 53e02047..78182c50 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/AutoArticleLogo.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/AutoArticleLogo.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/DownloadRemoteImage.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/DownloadRemoteImage.java index 01eb774f..52a0523f 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/DownloadRemoteImage.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/properties/DownloadRemoteImage.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/service/IArticleService.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/service/IArticleService.java index 8ba7ab48..78cee0f1 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/service/IArticleService.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/service/IArticleService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/service/impl/ArticleServiceImpl.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/service/impl/ArticleServiceImpl.java index f0f4860c..cd0ddf1a 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/service/impl/ArticleServiceImpl.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/service/impl/ArticleServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/template/func/dealArticleBodyFunction.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/template/func/dealArticleBodyFunction.java index 06d79037..4105066e 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/template/func/dealArticleBodyFunction.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/template/func/dealArticleBodyFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/template/tag/CmsArticleTag.java b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/template/tag/CmsArticleTag.java index b2515780..25adc107 100644 --- a/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/template/tag/CmsArticleTag.java +++ b/chestnut-cms/chestnut-cms-article/src/main/java/com/chestnut/article/template/tag/CmsArticleTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-block/pom.xml b/chestnut-cms/chestnut-cms-block/pom.xml index 32ee2df0..0b37a37c 100644 --- a/chestnut-cms/chestnut-cms-block/pom.xml +++ b/chestnut-cms/chestnut-cms-block/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-block diff --git a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/BlockCoreDataHandler.java b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/BlockCoreDataHandler.java index c516906e..37e6f4a6 100644 --- a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/BlockCoreDataHandler.java +++ b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/BlockCoreDataHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/BlockResourceStat.java b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/BlockResourceStat.java index 8944955a..fc5c67ac 100644 --- a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/BlockResourceStat.java +++ b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/BlockResourceStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/ManualPageWidget.java b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/ManualPageWidget.java index 0dfedf1d..046a4acd 100644 --- a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/ManualPageWidget.java +++ b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/ManualPageWidget.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/ManualPageWidgetType.java b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/ManualPageWidgetType.java index 570f83b7..49ebf425 100644 --- a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/ManualPageWidgetType.java +++ b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/ManualPageWidgetType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/domain/vo/ManualPageWidgetVO.java b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/domain/vo/ManualPageWidgetVO.java index a438477e..3567b6be 100644 --- a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/domain/vo/ManualPageWidgetVO.java +++ b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/domain/vo/ManualPageWidgetVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/listener/BlockListener.java b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/listener/BlockListener.java index 368011a1..ecc6ce93 100644 --- a/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/listener/BlockListener.java +++ b/chestnut-cms/chestnut-cms-block/src/main/java/com/chestnut/block/listener/BlockListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-comment/pom.xml b/chestnut-cms/chestnut-cms-comment/pom.xml index 7f1cbc48..87fa82ab 100644 --- a/chestnut-cms/chestnut-cms-comment/pom.xml +++ b/chestnut-cms/chestnut-cms-comment/pom.xml @@ -6,7 +6,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-comment diff --git a/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/CommentConsts.java b/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/CommentConsts.java index 9404e408..abb74353 100644 --- a/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/CommentConsts.java +++ b/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/CommentConsts.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/listener/CommentEventListener.java b/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/listener/CommentEventListener.java index 3c975e07..3fae49db 100644 --- a/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/listener/CommentEventListener.java +++ b/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/listener/CommentEventListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/properties/EnableCommentAudit.java b/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/properties/EnableCommentAudit.java index 10677900..95571657 100644 --- a/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/properties/EnableCommentAudit.java +++ b/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/properties/EnableCommentAudit.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/template/tag/CmsCommentTag.java b/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/template/tag/CmsCommentTag.java index fd2b1e9d..b08a4751 100644 --- a/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/template/tag/CmsCommentTag.java +++ b/chestnut-cms/chestnut-cms-comment/src/main/java/com/chestnut/cms/comment/template/tag/CmsCommentTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/pom.xml b/chestnut-cms/chestnut-cms-contentcore/pom.xml index 759448bc..f6576b1c 100644 --- a/chestnut-cms/chestnut-cms-contentcore/pom.xml +++ b/chestnut-cms/chestnut-cms-contentcore/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-contentcore diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/ContentCoreConsts.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/ContentCoreConsts.java index 8ddd4112..e47d003c 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/ContentCoreConsts.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/ContentCoreConsts.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/CatalogMonitoredCache.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/CatalogMonitoredCache.java index d1c3eb0b..4c694e60 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/CatalogMonitoredCache.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/CatalogMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/PageWidgetMonitoredCache.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/PageWidgetMonitoredCache.java index 9466904d..c5782044 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/PageWidgetMonitoredCache.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/PageWidgetMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/SiteMonitoredCache.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/SiteMonitoredCache.java index ad3abc95..32965f51 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/SiteMonitoredCache.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/SiteMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/TemplateMonitoredCache.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/TemplateMonitoredCache.java index 1cfda67f..0831beb3 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/TemplateMonitoredCache.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/cache/TemplateMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/CMSConfig.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/CMSConfig.java index 4532acfc..92c31a34 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/CMSConfig.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/CMSConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/properties/CMSProperties.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/properties/CMSProperties.java index c51b2208..8fb0a219 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/properties/CMSProperties.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/properties/CMSProperties.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/properties/CMSPublishProperties.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/properties/CMSPublishProperties.java index 0ed3aca7..addc4ede 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/properties/CMSPublishProperties.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/config/properties/CMSPublishProperties.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CatalogController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CatalogController.java index 15ca4a0f..5d9dd797 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CatalogController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CatalogController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CmsPermissionController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CmsPermissionController.java index e1fe6585..0446e3da 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CmsPermissionController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CmsPermissionController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentController.java index da9fda05..e0e1d626 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentOpLogController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentOpLogController.java index f44953bd..41a9125d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentOpLogController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentOpLogController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentRelaController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentRelaController.java index db386a58..db049209 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentRelaController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ContentRelaController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CoreController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CoreController.java index 6a56ea4c..c185aa63 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CoreController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/CoreController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/DashboardController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/DashboardController.java index 6eac67f7..4e81d9ad 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/DashboardController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/DashboardController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/FileController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/FileController.java index cc7a65d6..f6a661f9 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/FileController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/FileController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ImageProcessController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ImageProcessController.java index 39e646e0..e973007f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ImageProcessController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ImageProcessController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PageWidgetController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PageWidgetController.java index 880f06dd..85c2dd4a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PageWidgetController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PageWidgetController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PublishLogController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PublishLogController.java index 82259a4a..ef331464 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PublishLogController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PublishLogController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PublishPipeController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PublishPipeController.java index ba50fdd9..9784a930 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PublishPipeController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/PublishPipeController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/RecycleContentController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/RecycleContentController.java index 8b0e1f38..49063ef7 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/RecycleContentController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/RecycleContentController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ResourceController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ResourceController.java index 947d8660..617c8b6d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ResourceController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/ResourceController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SiteController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SiteController.java index ffc6dd36..61958e55 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SiteController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SiteController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,7 +51,6 @@ import com.chestnut.system.security.AdminUserType; import com.chestnut.system.security.StpAdminUtil; import com.chestnut.system.validator.LongId; import freemarker.template.TemplateException; -import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.constraints.NotNull; import lombok.RequiredArgsConstructor; import org.apache.commons.io.FileUtils; @@ -64,8 +63,10 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.servlet.mvc.method.annotation.StreamingResponseBody; -import java.io.*; -import java.nio.charset.StandardCharsets; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; import java.time.Duration; import java.time.Instant; import java.util.HashMap; @@ -344,13 +345,12 @@ public class SiteController extends BaseRestController { @Priv(type = AdminUserType.TYPE, value = "Site:Edit:${#siteId}") @Log(title = "上传水印图", businessType = BusinessType.UPDATE) @PostMapping("/upload_watermarkimage") - public R uploadFile(@RequestParam("siteId") @LongId Long siteId, - @RequestParam("file") @NotNull MultipartFile multipartFile) throws Exception { + public R uploadFile(@RequestParam("siteId") @LongId Long siteId, @RequestParam("file") @NotNull MultipartFile multipartFile) { try { CmsSite site = this.siteService.getSite(siteId); Assert.notNull(site, () -> CommonErrorCode.DATA_NOT_FOUND_BY_ID.exception("siteId", siteId)); - String dir = SiteUtils.getSiteResourceRoot(site.getPath()) + "resources"; + String dir = SiteUtils.getSiteResourceRoot(site.getPath()); String suffix = FileExUtils.getExtension(Objects.requireNonNull(multipartFile.getOriginalFilename())); String path = "watermaker" + StringUtils.DOT + suffix; File file = new File(dir + path); diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SitePropertyController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SitePropertyController.java index 8c85ba8c..0e2fe685 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SitePropertyController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SitePropertyController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SiteStatController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SiteStatController.java index ee8efdf0..677b875f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SiteStatController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/SiteStatController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/StaticizeController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/StaticizeController.java index f49f4a53..199fa8f8 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/StaticizeController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/StaticizeController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/TemplateController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/TemplateController.java index ab3f9b27..4055df70 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/TemplateController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/TemplateController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/front/ContentApiController.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/front/ContentApiController.java index 5ee68729..59dd50f0 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/front/ContentApiController.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/controller/front/ContentApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/AbstractContent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/AbstractContent.java index 53c6d51d..61824b7e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/AbstractContent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/AbstractContent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -353,9 +353,11 @@ public abstract class AbstractContent implements IContent { @Override public void cancelTop() { - if (content.getTopFlag() > 0L) { + if (content.getTopFlag() <= 0L) { return; } + content.setTopFlag(0L); + content.setTopDate(null); this.getContentService().dao().updateById(content); // 重新发布内容 if (ContentStatus.isPublished(this.getContentEntity().getStatus())) { diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/AbstractPageWidget.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/AbstractPageWidget.java index 34467807..c0d00fbe 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/AbstractPageWidget.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/AbstractPageWidget.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ICatalogType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ICatalogType.java index 4a7bb466..33225983 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ICatalogType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ICatalogType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IContent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IContent.java index a9cfdd0f..b2b0c5aa 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IContent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IContent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IContentType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IContentType.java index a086db99..dd5bd4e5 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IContentType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IContentType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ICoreDataHandler.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ICoreDataHandler.java index d5df96e1..90724a5f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ICoreDataHandler.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ICoreDataHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IDynamicPageType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IDynamicPageType.java index badfb979..17e1195a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IDynamicPageType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IDynamicPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IInternalDataType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IInternalDataType.java index adc3f2d5..bd4ea8fd 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IInternalDataType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IInternalDataType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPageWidget.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPageWidget.java index 7e1a21cb..02695c96 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPageWidget.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPageWidget.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPageWidgetType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPageWidgetType.java index 5f050040..91e47f8b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPageWidgetType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPageWidgetType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IProperty.java index d76a1993..81f21823 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPublishPipeProp.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPublishPipeProp.java index c8af8abe..65c003ed 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPublishPipeProp.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IPublishPipeProp.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IResourceStat.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IResourceStat.java index 22296143..b56eeaf0 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IResourceStat.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IResourceStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IResourceType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IResourceType.java index 564c38d4..1355ca52 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IResourceType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/IResourceType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -80,7 +80,7 @@ public interface IResourceType { return bytes; } - default void afterProcess(CmsResource resource) { + default void asyncProcess(CmsResource resource) { } } diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ISiteThemeContext.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ISiteThemeContext.java index a2feae8a..bd72f23c 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ISiteThemeContext.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/ISiteThemeContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/InternalURL.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/InternalURL.java index ced01fe0..fc9b76bb 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/InternalURL.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/InternalURL.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/SiteExportContext.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/SiteExportContext.java index 2e95f68f..d0e8c5e4 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/SiteExportContext.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/SiteExportContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/SiteImportContext.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/SiteImportContext.java index 4db8510e..143c237a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/SiteImportContext.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/SiteImportContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/CatalogType_Common.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/CatalogType_Common.java index 97fa1b3d..72da4c2c 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/CatalogType_Common.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/CatalogType_Common.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/CatalogType_Link.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/CatalogType_Link.java index eec4668e..4b7e8e37 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/CatalogType_Link.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/CatalogType_Link.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ContentCoreResourceStat.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ContentCoreResourceStat.java index 5bfba785..0f263fd9 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ContentCoreResourceStat.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ContentCoreResourceStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Catalog.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Catalog.java index 52fdd702..6105970e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Catalog.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Catalog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Content.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Content.java index c2e8c0df..61d13b3d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Content.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Content.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_PageWidget.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_PageWidget.java index 6f8899b5..55a4b535 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_PageWidget.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_PageWidget.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Resource.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Resource.java index ce530229..4ec11065 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Resource.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Resource.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Site.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Site.java index 911b0e85..2963481f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Site.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/InternalDataType_Site.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ContentExTemplate.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ContentExTemplate.java index b19b215d..3c4ec979 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ContentExTemplate.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ContentExTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ContentTemplate.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ContentTemplate.java index ae5cd52b..da6d4393 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ContentTemplate.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ContentTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_DefaultListTemplate.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_DefaultListTemplate.java index f1abf72a..198a243b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_DefaultListTemplate.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_DefaultListTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ErrPageLink.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ErrPageLink.java index c64888d9..48f1fbbe 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ErrPageLink.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ErrPageLink.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_IndexTemplate.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_IndexTemplate.java index 1cac4983..17f78090 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_IndexTemplate.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_IndexTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ListTemplate.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ListTemplate.java index 65b84242..f4df7015 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ListTemplate.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_ListTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_PrefixMode.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_PrefixMode.java index f027e3b8..45ef6165 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_PrefixMode.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_PrefixMode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_SiteUrl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_SiteUrl.java index 17172cd5..82f62f59 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_SiteUrl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_SiteUrl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_StaticSuffix.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_StaticSuffix.java index dfb252ff..3e6cb01e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_StaticSuffix.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/PublishPipeProp_StaticSuffix.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Audio.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Audio.java index e7bed4ef..7370dd4f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Audio.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Audio.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,17 +15,13 @@ */ package com.chestnut.contentcore.core.impl; -import java.io.IOException; -import java.util.Objects; - +import com.chestnut.contentcore.core.IResourceType; +import lombok.RequiredArgsConstructor; import org.apache.commons.compress.utils.FileNameUtils; import org.apache.commons.lang3.ArrayUtils; import org.springframework.stereotype.Component; -import com.chestnut.contentcore.core.IResourceType; -import com.chestnut.contentcore.domain.CmsResource; - -import lombok.RequiredArgsConstructor; +import java.util.Objects; /** * 资源类型:音频 @@ -62,9 +58,4 @@ public class ResourceType_Audio implements IResourceType { String ext = FileNameUtils.getExtension(path); return Objects.nonNull(path) && ArrayUtils.contains(SuffixArray, ext); } - - @Override - public byte[] process(CmsResource resource, byte[] bytes) throws IOException { - return IResourceType.super.process(resource, bytes); - } } diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_File.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_File.java index 0bab1666..489df6bc 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_File.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_File.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Image.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Image.java index ada8ab78..bdf30377 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Image.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Image.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,8 +15,10 @@ */ package com.chestnut.contentcore.core.impl; +import com.chestnut.common.async.AsyncTaskManager; import com.chestnut.common.storage.IFileStorageType; import com.chestnut.common.utils.StringUtils; +import com.chestnut.common.utils.file.FileExUtils; import com.chestnut.common.utils.image.ImageHelper; import com.chestnut.common.utils.image.ImageUtils; import com.chestnut.common.utils.image.WatermarkPosition; @@ -25,8 +27,10 @@ import com.chestnut.contentcore.domain.CmsResource; import com.chestnut.contentcore.domain.CmsSite; import com.chestnut.contentcore.properties.*; import com.chestnut.contentcore.properties.ImageWatermarkArgsProperty.ImageWatermarkArgs; +import com.chestnut.contentcore.service.IResourceService; import com.chestnut.contentcore.service.ISiteService; import com.chestnut.contentcore.util.FileStorageHelper; +import com.chestnut.contentcore.util.ResourceUtils; import com.chestnut.contentcore.util.SiteUtils; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -37,7 +41,13 @@ import org.springframework.stereotype.Component; import javax.imageio.ImageIO; import java.awt.image.BufferedImage; -import java.io.*; +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.StandardCopyOption; +import java.util.HashMap; import java.util.Map; import java.util.Objects; @@ -60,8 +70,12 @@ public class ResourceType_Image implements IResourceType { private final ISiteService siteService; + private final IResourceService resourceService; + private final Map fileStorageTypeMap; + private final AsyncTaskManager asyncTaskManager; + @Override public String getId() { return ID; @@ -83,71 +97,100 @@ public class ResourceType_Image implements IResourceType { } @Override - public byte[] process(CmsResource resource, byte[] bytes) throws IOException { - CmsSite site = siteService.getSite(resource.getSiteId()); - try (ByteArrayInputStream is = new ByteArrayInputStream(bytes)) { - // 提取图片宽高属性 - BufferedImage bi = ImageIO.read(is); - resource.setWidth(bi.getWidth()); - resource.setHeight(bi.getHeight()); - // 添加水印 - if (ImageWatermarkProperty.getValue(site.getConfigProps())) { - ImageWatermarkArgs args = ImageWatermarkArgsProperty.getValue(site.getConfigProps()); - if (StringUtils.isNotEmpty(args.getImage())) { - String siteResourceRoot = SiteUtils.getSiteResourceRoot(site); - File file = new File(siteResourceRoot + args.getImage()); - if (file.exists()) { - BufferedImage biWatermarkImage = ImageIO.read(file); - try (ByteArrayOutputStream os = new ByteArrayOutputStream()) { - String ext = FilenameUtils.getExtension(resource.getFileName()); - ImageHelper.of(bi).format(ext).watermark( - biWatermarkImage, - args.getRatio() * 0.01f, - args.getOpacity(), - WatermarkPosition.str2Position(args.getPosition()) - ).to(os); - bytes = os.toByteArray(); - } - } - } - } - } catch (IOException e) { - log.error("Read image failed: " + resource.getPath(), e); - resource.setWidth(0); - resource.setHeight(0); - } - resource.setFileSize((long) bytes.length); - return bytes; - } - - @Override - public void afterProcess(CmsResource resource) { - CmsSite site = siteService.getSite(resource.getSiteId()); - int w = ThumbnailWidthProperty.getValue(site.getConfigProps()); - int h = ThumbnailHeightProperty.getValue(site.getConfigProps()); - if (w > 0 && h > 0) { - // 读取存储配置 + public void asyncProcess(CmsResource resource) { + asyncTaskManager.execute(() -> { + CmsSite site = siteService.getSite(resource.getSiteId()); String fileStorageType = FileStorageTypeProperty.getValue(site.getConfigProps()); IFileStorageType fst = fileStorageTypeMap.get(IFileStorageType.BEAN_NAME_PREIFX + fileStorageType); FileStorageHelper fileStorageHelper = FileStorageHelper.of(fst, site); + String tempDirectory = ResourceUtils.getResourceTempDirectory(site); + File tempFile = new File(tempDirectory + resource.getPath()); + FileExUtils.mkdirs(tempFile.getParent()); + Map paths = new HashMap<>(); + try (InputStream read = fileStorageHelper.read(resource.getPath())) { + FileExUtils.transfer(read, tempFile); + // 获取图片属性 + BufferedImage bi = ImageIO.read(tempFile); + resource.setWidth(bi.getWidth()); + resource.setHeight(bi.getHeight()); + // 先处理图片水印 + if (watermark(site, bi, tempFile)) { + paths.put(resource.getPath(), tempFile); + resource.setFileSize(tempFile.length()); + } + // 默认缩略图处理 + thumbnail(site, resource, tempFile, paths); + } catch (IOException e) { + log.error("Image resource process fail.", e); + } finally { + for (Map.Entry entry : paths.entrySet()) { + try { + Path path = entry.getValue().toPath(); + try (InputStream is = Files.newInputStream(path)) { + fileStorageHelper.write(entry.getKey(), is); + } + // 删除临时图片文件 + Files.deleteIfExists(path); + } catch (IOException e) { + log.error("Delete temp file failed.", e); + } + } + resourceService.updateById(resource); + } + }); + } + + private boolean watermark(CmsSite site, BufferedImage bi, File output) { + if (!ImageWatermarkProperty.getValue(site.getConfigProps())) { + return false; + } + ImageWatermarkArgs args = ImageWatermarkArgsProperty.getValue(site.getConfigProps()); + if (StringUtils.isEmpty(args.getImage())) { + return false; + } + String siteResourceRoot = SiteUtils.getSiteResourceRoot(site); + File file = new File(siteResourceRoot + args.getImage()); + if (!file.exists()) { + return false; + } + try { + BufferedImage biWatermarkImage = ImageIO.read(file); + String ext = FilenameUtils.getExtension(output.getName()); + ImageHelper.of(bi).format(ext).watermark( + biWatermarkImage, + args.getRatio() * 0.01f, + args.getOpacity(), + WatermarkPosition.str2Position(args.getPosition()) + ).toFile(output); + log.debug("Watermark success: {}", output.getAbsolutePath()); + return true; + } catch (IOException e) { + log.error("Watermark image fail.", e); + } + return false; + } + + private void thumbnail(CmsSite site, CmsResource resource, File tempFile, Map paths) { + // 读取存储配置 + int w = ThumbnailWidthProperty.getValue(site.getConfigProps()); + int h = ThumbnailHeightProperty.getValue(site.getConfigProps()); + if (w > 0 && h > 0) { // 生成默认缩略图 + String tempDirectory = ResourceUtils.getResourceTempDirectory(site); String ext = FilenameUtils.getExtension(resource.getFileName()); String thumbnailPath = ImageUtils.getThumbnailFileName(resource.getPath(), w, h); - InputStream read = fileStorageHelper.read(resource.getPath()); - try (ByteArrayOutputStream bos = new ByteArrayOutputStream()) { - ImageHelper.of(read).format(ext).resize(w, h).to(bos); - fileStorageHelper.write(thumbnailPath, bos.toByteArray()); - } catch (IOException e) { - log.warn("Generate default thumbnail image failed: " + resource.getPath(), e); - // 生成缩略图失败直接使用源图作为缩略图 - fileStorageHelper.write(thumbnailPath, read); - } finally { - try { - if (Objects.nonNull(read)) { - read.close(); - } - } catch (IOException e) { - log.warn("Input stream close err!", e); + File output = new File(tempDirectory + thumbnailPath); + try { + ImageHelper.of(tempFile).format(ext).resize(w, h).toFile(output); + paths.put(thumbnailPath, output); + log.debug("Thumbnail success: {}", output.getAbsolutePath()); + } catch (IOException e) { + try { + // 生成缩略图失败直接使用源图作为缩略图 + Files.copy(tempFile.toPath(), Path.of(thumbnailPath), StandardCopyOption.REPLACE_EXISTING); + paths.put(thumbnailPath, output); + } catch (IOException ex) { + log.error("Copy thumbnail file err.", ex); } } } diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Video.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Video.java index 02b27257..6dc78992 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Video.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/core/impl/ResourceType_Video.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/dao/CmsContentDAO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/dao/CmsContentDAO.java index ed7abb31..ede5a971 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/dao/CmsContentDAO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/dao/CmsContentDAO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/BCmsContent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/BCmsContent.java index 3488ecfa..39a3e295 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/BCmsContent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/BCmsContent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsCatalog.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsCatalog.java index eec2978d..ee02d3b4 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsCatalog.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsCatalog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContent.java index ab183f9f..e95406cc 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContentOpLog.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContentOpLog.java index 724b36cd..833a7189 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContentOpLog.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContentOpLog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContentRela.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContentRela.java index e91b6c26..28174608 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContentRela.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsContentRela.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsPageWidget.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsPageWidget.java index 231de877..7a94c4c2 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsPageWidget.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsPageWidget.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsPublishPipe.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsPublishPipe.java index 7ebc4e89..c5207e4a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsPublishPipe.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsPublishPipe.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsResource.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsResource.java index e3945419..90868cfb 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsResource.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsResource.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,10 +21,11 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.chestnut.common.db.domain.BaseEntity; import com.chestnut.system.fixed.dict.EnableOrDisable; - import lombok.Getter; import lombok.Setter; +import java.io.Serial; + /** * 资源表对象 [cms_resource] * @@ -36,7 +37,8 @@ import lombok.Setter; @TableName(CmsResource.TABLE_NAME) public class CmsResource extends BaseEntity { - private static final long serialVersionUID=1L; + @Serial + private static final long serialVersionUID = 1L; public static final String TABLE_NAME = "cms_resource"; @@ -119,6 +121,11 @@ public class CmsResource extends BaseEntity { * 引用关系 */ private String usageInfo; + + /** + * 唯一标识,md5字符串 + */ + private String identifier; @TableField(exist = false) private String src; diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsSite.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsSite.java index d7030528..fa393e59 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsSite.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsSite.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsSiteProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsSiteProperty.java index b5862222..38354699 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsSiteProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsSiteProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsTemplate.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsTemplate.java index 6e7652d3..4c11d3a9 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsTemplate.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/CmsTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/InitByContent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/InitByContent.java index ec2f85e6..3f9f3176 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/InitByContent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/InitByContent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogAddDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogAddDTO.java index 74b25fa2..81575bfa 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogAddDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogAddDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogApplyConfigPropsDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogApplyConfigPropsDTO.java index cc4c3749..8e2aa35d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogApplyConfigPropsDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogApplyConfigPropsDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogApplyPublishPipeDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogApplyPublishPipeDTO.java index 466bd443..c591573d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogApplyPublishPipeDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogApplyPublishPipeDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogBatchAddDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogBatchAddDTO.java index 38430b65..80b4c9fc 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogBatchAddDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogBatchAddDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogNameToSpellingDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogNameToSpellingDTO.java index 97e5b71b..3ab6321b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogNameToSpellingDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogNameToSpellingDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogUpdateDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogUpdateDTO.java index 60b2fb64..1588565d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogUpdateDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CatalogUpdateDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ChangeCatalogVisibleDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ChangeCatalogVisibleDTO.java index 0be345b9..9a86c5c7 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ChangeCatalogVisibleDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ChangeCatalogVisibleDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ChangeContentAttrDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ChangeContentAttrDTO.java index dbf7dd42..a5c3c7c3 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ChangeContentAttrDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ChangeContentAttrDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ClearCatalogDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ClearCatalogDTO.java index d9041d5c..1f4b7a6a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ClearCatalogDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ClearCatalogDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ContentDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ContentDTO.java index 1cdd7ff9..efcb0d1e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ContentDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ContentDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CopyContentDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CopyContentDTO.java index 0b49be40..98e9c8ff 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CopyContentDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/CopyContentDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/FileAddDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/FileAddDTO.java index 2f227ff5..e41c2452 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/FileAddDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/FileAddDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/FileOperateDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/FileOperateDTO.java index b0d92799..4b3179cf 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/FileOperateDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/FileOperateDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ImageCropDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ImageCropDTO.java index 37e8322f..cce8daa8 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ImageCropDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ImageCropDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ImageRotateDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ImageRotateDTO.java index c454fb3b..879df96d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ImageRotateDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ImageRotateDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/MergeCatalogDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/MergeCatalogDTO.java index 42613d45..0942bd6d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/MergeCatalogDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/MergeCatalogDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/MoveContentDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/MoveContentDTO.java index 79029727..7bc57d32 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/MoveContentDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/MoveContentDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PageWidgetAddDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PageWidgetAddDTO.java index f952d0eb..73245088 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PageWidgetAddDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PageWidgetAddDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PageWidgetEditDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PageWidgetEditDTO.java index 417d3a24..f028fd9b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PageWidgetEditDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PageWidgetEditDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishCatalogDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishCatalogDTO.java index c35e0eae..695d7945 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishCatalogDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishCatalogDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishContentDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishContentDTO.java index fbc05398..5ec053fa 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishContentDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishContentDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishPipeProp.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishPipeProp.java index 72a32840..7fab9c54 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishPipeProp.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishPipeProp.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishSiteDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishSiteDTO.java index 7050575f..135d4639 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishSiteDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/PublishSiteDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/RecoverRecycleContentDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/RecoverRecycleContentDTO.java index b885bba7..ec73fafa 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/RecoverRecycleContentDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/RecoverRecycleContentDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ResourceUploadDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ResourceUploadDTO.java index d141b76b..55379f85 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ResourceUploadDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/ResourceUploadDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SaveCatalogPermissionDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SaveCatalogPermissionDTO.java index 22c9de67..c95ada08 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SaveCatalogPermissionDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SaveCatalogPermissionDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SavePageWidgetPermissionDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SavePageWidgetPermissionDTO.java index efe208d6..28a70920 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SavePageWidgetPermissionDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SavePageWidgetPermissionDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SaveSitePermissionDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SaveSitePermissionDTO.java index 1ae23a7f..73680c9c 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SaveSitePermissionDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SaveSitePermissionDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SetTopContentDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SetTopContentDTO.java index e701e2df..dbf321f5 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SetTopContentDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SetTopContentDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteDTO.java index 325b7ffb..41133329 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteDefaultTemplateDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteDefaultTemplateDTO.java index 8e98e705..daa63973 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteDefaultTemplateDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteDefaultTemplateDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteExportDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteExportDTO.java index 0587e876..e15b732a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteExportDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SiteExportDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SortCatalogDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SortCatalogDTO.java index f5d45182..c8f0a5c0 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SortCatalogDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SortCatalogDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SortContentDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SortContentDTO.java index b46bf300..d000a0c6 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SortContentDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/SortContentDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateAddDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateAddDTO.java index 3b471cc9..b4f1451e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateAddDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateAddDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateRenameDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateRenameDTO.java index 921abba1..99bc185b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateRenameDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateRenameDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateUpdateDTO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateUpdateDTO.java index ca7642f5..2fd851b9 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateUpdateDTO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/dto/TemplateUpdateDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CatalogPrivVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CatalogPrivVO.java index 417d8ee3..c10d6342 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CatalogPrivVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CatalogPrivVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CatalogVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CatalogVO.java index 8dc162e1..492f04a4 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CatalogVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CatalogVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CmsConfigurationDashboardVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CmsConfigurationDashboardVO.java index 897d2e61..125ac2b3 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CmsConfigurationDashboardVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/CmsConfigurationDashboardVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentApiVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentApiVO.java index 88028d10..f0172b42 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentApiVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentApiVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentDynamicDataVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentDynamicDataVO.java index 0f4ee220..2e9f0181 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentDynamicDataVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentDynamicDataVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentPathRuleVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentPathRuleVO.java index e5289480..c2378808 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentPathRuleVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentPathRuleVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentVO.java index fbf071d7..7875cc32 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ContentVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/DynamicPageTypeVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/DynamicPageTypeVO.java index d4326e3b..1bd2eb04 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/DynamicPageTypeVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/DynamicPageTypeVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/FileVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/FileVO.java index 73167bad..515b7b20 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/FileVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/FileVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ListContentVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ListContentVO.java index e9f392c6..bc84ae2a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ListContentVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/ListContentVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/PageWidgetPrivVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/PageWidgetPrivVO.java index 4fbb3ba2..4e98051c 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/PageWidgetPrivVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/PageWidgetPrivVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/PageWidgetVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/PageWidgetVO.java index 22228819..14fc6699 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/PageWidgetVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/PageWidgetVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/SitePrivVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/SitePrivVO.java index 5e1ee002..86bcea19 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/SitePrivVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/SitePrivVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/SiteStatVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/SiteStatVO.java index f06bf0f0..43100787 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/SiteStatVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/SiteStatVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagBaseVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagBaseVO.java index 77f26214..ab8c632f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagBaseVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagBaseVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagCatalogVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagCatalogVO.java index 09883296..e0c862fc 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagCatalogVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagCatalogVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagContentVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagContentVO.java index f5e8d2d4..d18eca21 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagContentVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagContentVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagPageWidgetVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagPageWidgetVO.java index 2ccff2b3..9ce5d5c3 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagPageWidgetVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagPageWidgetVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagSiteVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagSiteVO.java index 87c55296..17169d29 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagSiteVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TagSiteVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateFuncVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateFuncVO.java index 030ead99..7b2336a2 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateFuncVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateFuncVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateListVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateListVO.java index f8b1ab96..e76cbbe1 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateListVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateListVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateTagVO.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateTagVO.java index c5aa5022..2e0c6dcd 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateTagVO.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/domain/vo/TemplateTagVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/ContentCopyType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/ContentCopyType.java index 61f94f58..f93a638b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/ContentCopyType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/ContentCopyType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/SitePrefixMode.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/SitePrefixMode.java index 14944870..5c1171a3 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/SitePrefixMode.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/SitePrefixMode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/WatermarkerType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/WatermarkerType.java index 710fbb56..c0a5e92f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/WatermarkerType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/enums/WatermarkerType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/exception/ContentCoreErrorCode.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/exception/ContentCoreErrorCode.java index 60395309..89dd994f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/exception/ContentCoreErrorCode.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/exception/ContentCoreErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/exception/InternalUrlParseException.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/exception/InternalUrlParseException.java index 212a85fd..73d724a7 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/exception/InternalUrlParseException.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/exception/InternalUrlParseException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/AllowUploadFileType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/AllowUploadFileType.java index 21d98e78..0353ced6 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/AllowUploadFileType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/AllowUploadFileType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/CMSModuleEnable.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/CMSModuleEnable.java index 10cee140..1df936b4 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/CMSModuleEnable.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/CMSModuleEnable.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/ResourceUploadAcceptSize.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/ResourceUploadAcceptSize.java index fefb89cc..b449ef50 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/ResourceUploadAcceptSize.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/ResourceUploadAcceptSize.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/SiteApiUrl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/SiteApiUrl.java index aa5a0b0f..6f264c4d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/SiteApiUrl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/SiteApiUrl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/TemplateSuffix.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/TemplateSuffix.java index 96591049..f6f3211c 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/TemplateSuffix.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/config/TemplateSuffix.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentAttribute.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentAttribute.java index 9227599d..3f7870fc 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentAttribute.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentAttribute.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentOpType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentOpType.java index 5842cdf1..78426de8 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentOpType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentOpType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentStatus.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentStatus.java index 6a77b990..35b2ba8a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentStatus.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/ContentStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/PageWidgetStatus.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/PageWidgetStatus.java index b68fb9d7..f514e567 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/PageWidgetStatus.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/PageWidgetStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/StaticSuffix.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/StaticSuffix.java index 0383e44d..16887e54 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/StaticSuffix.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/fixed/dict/StaticSuffix.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/ContentOfflineJobHandler.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/ContentOfflineJobHandler.java index 4c93c1cb..a56b1f2f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/ContentOfflineJobHandler.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/ContentOfflineJobHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/ContentTopCancelJobHandler.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/ContentTopCancelJobHandler.java index 7040e42f..570075ba 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/ContentTopCancelJobHandler.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/ContentTopCancelJobHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/RecycleExpireJobHandler.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/RecycleExpireJobHandler.java index 0dc03bec..6425bb66 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/RecycleExpireJobHandler.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/RecycleExpireJobHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/SitePublishJobHandler.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/SitePublishJobHandler.java index 0593208c..927ce40e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/SitePublishJobHandler.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/SitePublishJobHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/UpdateDynamicDataJobHandler.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/UpdateDynamicDataJobHandler.java index 10fceb67..ba340651 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/UpdateDynamicDataJobHandler.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/job/UpdateDynamicDataJobHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/ContentCoreListener.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/ContentCoreListener.java index cf0973fc..d7c401f1 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/ContentCoreListener.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/ContentCoreListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogDeleteEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogDeleteEvent.java index 74ab09db..f62e0237 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogDeleteEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogDeleteEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogMoveEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogMoveEvent.java index 7e6995c3..c11449ff 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogMoveEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogMoveEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogSaveEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogSaveEvent.java index a7ace729..1aed690b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogSaveEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterCatalogSaveEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentCopyEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentCopyEvent.java index 7db81ae1..63ca13ef 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentCopyEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentCopyEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentDeleteEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentDeleteEvent.java index a739f3aa..27203aad 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentDeleteEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentDeleteEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentEditorInitEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentEditorInitEvent.java index 7c6d4bbf..545c66f2 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentEditorInitEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentEditorInitEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentOfflineEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentOfflineEvent.java index 9074a1da..62d1fbf9 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentOfflineEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentOfflineEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentPublishEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentPublishEvent.java index ce1be96d..05ba69bd 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentPublishEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentPublishEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentSaveEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentSaveEvent.java index e1a32488..ef42c04e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentSaveEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentSaveEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentToPublishEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentToPublishEvent.java index f34c81a2..7b40aad5 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentToPublishEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterContentToPublishEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteAddEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteAddEvent.java index 1a958eda..5cf87ad9 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteAddEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteAddEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteDeleteEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteDeleteEvent.java index bd799197..76c90a70 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteDeleteEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteDeleteEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteSaveEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteSaveEvent.java index a7d216f7..a7c87882 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteSaveEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/AfterSiteSaveEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeCatalogDeleteEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeCatalogDeleteEvent.java index dd22f00c..9819e589 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeCatalogDeleteEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeCatalogDeleteEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeContentSaveEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeContentSaveEvent.java index d7b862f9..54ff26d5 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeContentSaveEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeContentSaveEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeSiteDeleteEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeSiteDeleteEvent.java index c8bcd9bc..304f152a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeSiteDeleteEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/BeforeSiteDeleteEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/OnCatalogClearEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/OnCatalogClearEvent.java index 88a5e49a..fbd187fb 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/OnCatalogClearEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/OnCatalogClearEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/OnCatalogMergeEvent.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/OnCatalogMergeEvent.java index 77a5cbe6..d885bfc9 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/OnCatalogMergeEvent.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/listener/event/OnCatalogMergeEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/BCmsContentMapper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/BCmsContentMapper.java index 704fd84b..83184d18 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/BCmsContentMapper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/BCmsContentMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsCatalogMapper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsCatalogMapper.java index 85207d19..c12467dc 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsCatalogMapper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsCatalogMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentMapper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentMapper.java index c2a43089..e69ba8c7 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentMapper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentOpLogMapper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentOpLogMapper.java index c0562d4d..33334ad5 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentOpLogMapper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentOpLogMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentRelaMapper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentRelaMapper.java index 4c4878e4..181c2ba8 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentRelaMapper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsContentRelaMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsPageWidgetMapper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsPageWidgetMapper.java index 6535a9c4..cb23df24 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsPageWidgetMapper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsPageWidgetMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsPublishPipeMapper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsPublishPipeMapper.java index 74b64a5b..ad5beec2 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsPublishPipeMapper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsPublishPipeMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsResourceMapper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsResourceMapper.java index 02d320f9..6703eeb1 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsResourceMapper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsResourceMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsSiteMapper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsSiteMapper.java index b4e491eb..6cefe493 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsSiteMapper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsSiteMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsSitePropertyMapper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsSitePropertyMapper.java index 892d087b..40c1f654 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsSitePropertyMapper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsSitePropertyMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsTemplateMapper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsTemplateMapper.java index 9059e88e..e1e39247 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsTemplateMapper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/mapper/CmsTemplateMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/BitSetPrivItem.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/BitSetPrivItem.java index c05372f7..5573f066 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/BitSetPrivItem.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/BitSetPrivItem.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/CatalogPermissionType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/CatalogPermissionType.java index 59e6e1fd..47637236 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/CatalogPermissionType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/CatalogPermissionType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/ContentCorePriv.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/ContentCorePriv.java index ebe2575b..fc3af665 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/ContentCorePriv.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/ContentCorePriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/PageWidgetPermissionType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/PageWidgetPermissionType.java index 353e4cb3..b36d1327 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/PageWidgetPermissionType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/PageWidgetPermissionType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/PrivItem.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/PrivItem.java index a5ec2839..b9c890fe 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/PrivItem.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/PrivItem.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/SitePermissionType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/SitePermissionType.java index 8aee5bdc..1d80546b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/SitePermissionType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/perms/SitePermissionType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/CatalogPageSizeProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/CatalogPageSizeProperty.java index 9e68ab07..17842490 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/CatalogPageSizeProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/CatalogPageSizeProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/EnableSSIProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/EnableSSIProperty.java index c2ea4699..57b98b64 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/EnableSSIProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/EnableSSIProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/EnableSiteDeleteBackupProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/EnableSiteDeleteBackupProperty.java index 5caea14c..34dd0ccd 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/EnableSiteDeleteBackupProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/EnableSiteDeleteBackupProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/FileStorageArgsProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/FileStorageArgsProperty.java index 71b14050..9aa8bc29 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/FileStorageArgsProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/FileStorageArgsProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/FileStorageTypeProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/FileStorageTypeProperty.java index b3632e5b..5d8d4b2b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/FileStorageTypeProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/FileStorageTypeProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ImageWatermarkArgsProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ImageWatermarkArgsProperty.java index 5c4d73d6..2882411c 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ImageWatermarkArgsProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ImageWatermarkArgsProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ImageWatermarkProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ImageWatermarkProperty.java index 22a8e4dd..019d56d8 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ImageWatermarkProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ImageWatermarkProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/MaxPageOnContentPublishProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/MaxPageOnContentPublishProperty.java index 4f9c0a97..165e77fe 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/MaxPageOnContentPublishProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/MaxPageOnContentPublishProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/PublishedContentEditProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/PublishedContentEditProperty.java index 09088047..c644ee49 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/PublishedContentEditProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/PublishedContentEditProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/RecycleKeepDaysProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/RecycleKeepDaysProperty.java index 28ce73f9..62ac2e3e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/RecycleKeepDaysProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/RecycleKeepDaysProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/RepeatTitleCheckProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/RepeatTitleCheckProperty.java index 5d0613a2..05bc70ea 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/RepeatTitleCheckProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/RepeatTitleCheckProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ShortTitleLabelProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ShortTitleLabelProperty.java index f0e76cd6..fe9e4623 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ShortTitleLabelProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ShortTitleLabelProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/SiteApiUrlProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/SiteApiUrlProperty.java index 03ef3834..0e99f9c1 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/SiteApiUrlProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/SiteApiUrlProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/SubTitleLabelProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/SubTitleLabelProperty.java index 728ec714..979669c1 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/SubTitleLabelProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/SubTitleLabelProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ThumbnailHeightProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ThumbnailHeightProperty.java index 650ee520..beb85546 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ThumbnailHeightProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ThumbnailHeightProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ThumbnailWidthProperty.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ThumbnailWidthProperty.java index 2e8926b1..6f2c2ea6 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ThumbnailWidthProperty.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/properties/ThumbnailWidthProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/CmsStaticizeService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/CmsStaticizeService.java index ca1512ce..2dd0b5b0 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/CmsStaticizeService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/CmsStaticizeService.java @@ -1,18 +1,18 @@ -/* - * Copyright 2022-2024 兮玥(190785909@qq.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.contentcore.publish; import lombok.RequiredArgsConstructor; diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IContentPathRule.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IContentPathRule.java index 64e4571e..96fc9d65 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IContentPathRule.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IContentPathRule.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IPublishStrategy.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IPublishStrategy.java index ea889969..ba30f0f1 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IPublishStrategy.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IPublishStrategy.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IStaticizeType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IStaticizeType.java index 5397f6c5..9f197f54 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IStaticizeType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/IStaticizeType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,18 +13,18 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.chestnut.contentcore.publish; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -public interface IStaticizeType { - - Logger logger = LoggerFactory.getLogger("publish"); - - String BEAN_PREFIX = "CmsStaticizeType"; - - String getType(); - - void staticize(String dataId); -} +package com.chestnut.contentcore.publish; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public interface IStaticizeType { + + Logger logger = LoggerFactory.getLogger("publish"); + + String BEAN_PREFIX = "CmsStaticizeType"; + + String getType(); + + void staticize(String dataId); +} diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Date.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Date.java index b94f15e8..2c237a8a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Date.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Date.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_DateStr.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_DateStr.java index 94dc31d5..eddc224b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_DateStr.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_DateStr.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_IdHash.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_IdHash.java index e8bc9006..56350d39 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_IdHash.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_IdHash.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Month.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Month.java index ecd89762..a108c30f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Month.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Month.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Year.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Year.java index 079ac6d0..53d1aab8 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Year.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/rule/ContentPathRule_Year.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/CatalogStaticizeType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/CatalogStaticizeType.java index c29d5cba..2c8cf13c 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/CatalogStaticizeType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/CatalogStaticizeType.java @@ -1,18 +1,18 @@ -/* - * Copyright 2022-2024 兮玥(190785909@qq.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.contentcore.publish.staticize; import com.chestnut.common.async.AsyncTaskManager; diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/ContentStaticizeType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/ContentStaticizeType.java index 804087ea..ed240e01 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/ContentStaticizeType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/ContentStaticizeType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/SiteStaticizeType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/SiteStaticizeType.java index 3c5fe841..ef3dbff3 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/SiteStaticizeType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/staticize/SiteStaticizeType.java @@ -1,18 +1,18 @@ -/* - * Copyright 2022-2024 兮玥(190785909@qq.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.contentcore.publish.staticize; import com.chestnut.common.async.AsyncTaskManager; diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/PublishTaskReceiver.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/PublishTaskReceiver.java index d5643aef..7dcb1735 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/PublishTaskReceiver.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/PublishTaskReceiver.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/RedisSetPublishStrategy.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/RedisSetPublishStrategy.java index d0ae6034..c796a82f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/RedisSetPublishStrategy.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/RedisSetPublishStrategy.java @@ -1,18 +1,18 @@ -/* - * Copyright 2022-2024 兮玥(190785909@qq.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.contentcore.publish.strategies; import com.chestnut.common.async.AsyncTask; diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/RedisStreamPublishStrategy.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/RedisStreamPublishStrategy.java index 9691460c..f647aa82 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/RedisStreamPublishStrategy.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/RedisStreamPublishStrategy.java @@ -1,18 +1,18 @@ -/* - * Copyright 2022-2024 兮玥(190785909@qq.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.contentcore.publish.strategies; import com.chestnut.contentcore.config.properties.CMSPublishProperties; diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/ThreadPoolPublishStrategy.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/ThreadPoolPublishStrategy.java index 491514b1..e0277022 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/ThreadPoolPublishStrategy.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/publish/strategies/ThreadPoolPublishStrategy.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ICatalogService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ICatalogService.java index 97b444d7..7a4de07a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ICatalogService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ICatalogService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentOpLogService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentOpLogService.java index 02342094..6afc52ec 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentOpLogService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentOpLogService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentRelaService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentRelaService.java index da9cabf1..6d145a1e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentRelaService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentRelaService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentService.java index 8d8957ef..26131b78 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IContentService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IFileService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IFileService.java index 52a112e1..1668fbeb 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IFileService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IFileService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IImageProcessService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IImageProcessService.java index 99a2d542..c56aa3f1 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IImageProcessService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IImageProcessService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPageWidgetService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPageWidgetService.java index 197209a4..54f0f6ae 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPageWidgetService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPageWidgetService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPublishPipeService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPublishPipeService.java index 3e5e9822..cb359407 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPublishPipeService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPublishPipeService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPublishService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPublishService.java index aece55a6..faa3b743 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPublishService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IPublishService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IResourceService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IResourceService.java index 6eb9b630..fc832a78 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IResourceService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/IResourceService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,6 +16,8 @@ package com.chestnut.contentcore.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.chestnut.common.storage.IFileStorageType; +import com.chestnut.contentcore.core.IResourceType; import com.chestnut.contentcore.domain.CmsResource; import com.chestnut.contentcore.domain.CmsSite; import com.chestnut.contentcore.domain.dto.ResourceUploadDTO; @@ -27,6 +29,11 @@ import java.util.List; public interface IResourceService extends IService { + /** + * 获取存储方式 + */ + IFileStorageType getFileStorageType(String type); + /** * 上传资源 */ @@ -55,6 +62,8 @@ public interface IResourceService extends IService { */ CmsResource addImageFromFile(CmsSite site, String operator, File imageFile) throws IOException; + void processResource(CmsResource resource, IResourceType resourceType, CmsSite site, byte[] bytes) throws IOException; + /** * 删除资源 * diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISitePropertyService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISitePropertyService.java index cfa684f4..54935103 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISitePropertyService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISitePropertyService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISiteService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISiteService.java index ed53d5b9..9940e971 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISiteService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISiteService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISiteStatService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISiteStatService.java index d5887a0a..e03b0cb7 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISiteStatService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ISiteStatService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ITemplateService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ITemplateService.java index e3591bc9..d0fe66e7 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ITemplateService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/ITemplateService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/CatalogServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/CatalogServiceImpl.java index 52650a19..b984d457 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/CatalogServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/CatalogServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentDynamicDataService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentDynamicDataService.java index 1bc09293..30455a65 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentDynamicDataService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentDynamicDataService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentOpLogServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentOpLogServiceImpl.java index 382187ad..eb55928e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentOpLogServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentOpLogServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentRelaServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentRelaServiceImpl.java index 7becd065..f103ecac 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentRelaServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentRelaServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentServiceImpl.java index d17c1a88..198bc985 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ContentServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/DynamicPageService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/DynamicPageService.java index 2790361f..ac7d79b6 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/DynamicPageService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/DynamicPageService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/FileServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/FileServiceImpl.java index df354c05..24fa6902 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/FileServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/FileServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ImageProcessServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ImageProcessServiceImpl.java index 3b853df4..3c8cb892 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ImageProcessServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ImageProcessServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PageWidgetServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PageWidgetServiceImpl.java index 187052b2..27677c94 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PageWidgetServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PageWidgetServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PublishPipeServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PublishPipeServiceImpl.java index 131f460a..ca5b05c8 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PublishPipeServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PublishPipeServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PublishServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PublishServiceImpl.java index 626d6f27..ef08e5ad 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PublishServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/PublishServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ResourceServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ResourceServiceImpl.java index 03881ca1..92e3d26a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ResourceServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/ResourceServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -228,9 +228,11 @@ public class ResourceServiceImpl extends ServiceImpl StorageErrorCode.UNSUPPORTED_STORAGE_TYPE.exception(type)); return fileStorageType; diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SitePropertyServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SitePropertyServiceImpl.java index 01ed1725..7bd50a55 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SitePropertyServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SitePropertyServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteServiceImpl.java index d9b14e41..5dbef865 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteStatServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteStatServiceImpl.java index ffcc3788..ad12be6a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteStatServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteStatServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteThemeService.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteThemeService.java index 8f6a1e4a..112f099b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteThemeService.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/SiteThemeService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/TemplateServiceImpl.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/TemplateServiceImpl.java index 98064b12..9bdd061d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/TemplateServiceImpl.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/service/impl/TemplateServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/ITemplateType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/ITemplateType.java index c63a8304..dc4fffd1 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/ITemplateType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/ITemplateType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/exception/CatalogNotFoundException.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/exception/CatalogNotFoundException.java index 75eef51d..455c7d34 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/exception/CatalogNotFoundException.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/exception/CatalogNotFoundException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/exception/SiteNotFoundException.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/exception/SiteNotFoundException.java index 9398b73c..ab8eb407 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/exception/SiteNotFoundException.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/exception/SiteNotFoundException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/CatalogUrlFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/CatalogUrlFunction.java index 9e00a379..4dcb419f 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/CatalogUrlFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/CatalogUrlFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ContentPageLinkFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ContentPageLinkFunction.java index be2918ef..394080d9 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ContentPageLinkFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ContentPageLinkFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ContentUrlFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ContentUrlFunction.java index e877df1d..69ec88d9 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ContentUrlFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ContentUrlFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/DictFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/DictFunction.java index 9d0a7250..99040f8a 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/DictFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/DictFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/DynamicPageLinkFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/DynamicPageLinkFunction.java index 9036651e..6ca364b7 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/DynamicPageLinkFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/DynamicPageLinkFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/FileExtractorFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/FileExtractorFunction.java index 168994c3..c5035a92 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/FileExtractorFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/FileExtractorFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/HtmlInternalUrlFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/HtmlInternalUrlFunction.java index 55e94723..28ff0566 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/HtmlInternalUrlFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/HtmlInternalUrlFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ImageSizeFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ImageSizeFunction.java index 65668007..60520617 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ImageSizeFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ImageSizeFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/InternalUrlFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/InternalUrlFunction.java index 9da83ae2..d7144782 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/InternalUrlFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/InternalUrlFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ListHtmlInternalUrlFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ListHtmlInternalUrlFunction.java index b436f552..0e9b7e8b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ListHtmlInternalUrlFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/ListHtmlInternalUrlFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/SiteUrlFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/SiteUrlFunction.java index a955459f..ec2ea876 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/SiteUrlFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/SiteUrlFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/SysConfigFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/SysConfigFunction.java index 3a723e02..f4523af2 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/SysConfigFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/SysConfigFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/VideoPlayerFunction.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/VideoPlayerFunction.java index e8757824..0ffe56d8 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/VideoPlayerFunction.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/func/VideoPlayerFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/CatalogTemplateType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/CatalogTemplateType.java index 59cca8a0..7c77bbee 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/CatalogTemplateType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/CatalogTemplateType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/ContentTemplateType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/ContentTemplateType.java index b1d87f8e..d610bad9 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/ContentTemplateType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/ContentTemplateType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/SiteTemplateType.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/SiteTemplateType.java index 8120bb36..d4da78cc 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/SiteTemplateType.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/impl/SiteTemplateType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsCatalogTag.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsCatalogTag.java index 91de3a76..1b12818e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsCatalogTag.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsCatalogTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentClosestTag.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentClosestTag.java index c1d5dff8..a4fea036 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentClosestTag.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentClosestTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentRelaTag.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentRelaTag.java index 1fc611d0..8e4d2653 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentRelaTag.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentRelaTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentTag.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentTag.java index 674d3c3a..df088132 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentTag.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsContentTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsIncludeTag.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsIncludeTag.java index 159d93c0..8a62745b 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsIncludeTag.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsIncludeTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsPageWidgetDataTag.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsPageWidgetDataTag.java index cf8e6bf7..478f95a5 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsPageWidgetDataTag.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsPageWidgetDataTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsPageWidgetTag.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsPageWidgetTag.java index 39d25b29..2823cb97 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsPageWidgetTag.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsPageWidgetTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsSitePropertyTag.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsSitePropertyTag.java index 64698cc7..9ecc186d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsSitePropertyTag.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsSitePropertyTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsSiteTag.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsSiteTag.java index 237dcdcd..fbf3e742 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsSiteTag.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/template/tag/CmsSiteTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/CatalogTreeExpandModePreference.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/CatalogTreeExpandModePreference.java index d7e16020..28a2bb8d 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/CatalogTreeExpandModePreference.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/CatalogTreeExpandModePreference.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/IncludeChildContentPreference.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/IncludeChildContentPreference.java index 527e34ed..fac3ecca 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/IncludeChildContentPreference.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/IncludeChildContentPreference.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/OpenContentEditorWPreference.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/OpenContentEditorWPreference.java index a544ed8a..18c49686 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/OpenContentEditorWPreference.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/OpenContentEditorWPreference.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/ShowContentSubTitlePreference.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/ShowContentSubTitlePreference.java index 046f40d1..755a64cb 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/ShowContentSubTitlePreference.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/user/preference/ShowContentSubTitlePreference.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/CatalogUtils.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/CatalogUtils.java index bf3ccb2a..73b00d66 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/CatalogUtils.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/CatalogUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/CmsPrivUtils.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/CmsPrivUtils.java index 59379f7c..ac0120f2 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/CmsPrivUtils.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/CmsPrivUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ConfigPropertyUtils.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ConfigPropertyUtils.java index 06adc1c2..9de78af2 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ConfigPropertyUtils.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ConfigPropertyUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentCoreUtils.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentCoreUtils.java index 564ec2be..1b140ee8 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentCoreUtils.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentCoreUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentLogUtils.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentLogUtils.java index 270509ff..a5e1ee9c 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentLogUtils.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentLogUtils.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.contentcore.util; import com.chestnut.common.async.AsyncTaskManager; diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentUtils.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentUtils.java index 67fba5f9..e769dbc6 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentUtils.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ContentUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/FileStorageHelper.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/FileStorageHelper.java index be5fdde3..c5a00641 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/FileStorageHelper.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/FileStorageHelper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/InternalUrlUtils.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/InternalUrlUtils.java index 6c0ff82d..3a0d4572 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/InternalUrlUtils.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/InternalUrlUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/PageWidgetUtils.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/PageWidgetUtils.java index 2f004e1f..efb251fe 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/PageWidgetUtils.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/PageWidgetUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ResourceUtils.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ResourceUtils.java index fdb00703..7631a34e 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ResourceUtils.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/ResourceUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -48,6 +48,12 @@ public class ResourceUtils { private static final Pattern TagAttrIUrlPattern = Pattern.compile("iurl\\s*=\\s*['\"]([^'\"]+)['\"]", Pattern.CASE_INSENSITIVE | Pattern.DOTALL | Pattern.MULTILINE); + private static final String TEMP_DIRECTORY_RELATIVE_PATH = ".temp/"; + + public static String getResourceTempDirectory(CmsSite site) { + return SiteUtils.getSiteResourceRoot(site) + TEMP_DIRECTORY_RELATIVE_PATH; + } + /** * 通过文件后缀名获取对应资源类型,由于文件资源包含所有文件类型,再获取到超过1个资源类型时将文件资源类型移除再获取。 */ diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/SiteUtils.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/SiteUtils.java index 20313f03..4df6d3d9 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/SiteUtils.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/SiteUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/TemplateUtils.java b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/TemplateUtils.java index 5a995595..a9874fca 100644 --- a/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/TemplateUtils.java +++ b/chestnut-cms/chestnut-cms-contentcore/src/main/java/com/chestnut/contentcore/util/TemplateUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/pom.xml b/chestnut-cms/chestnut-cms-customform/pom.xml index dcfff192..9eaf9587 100644 --- a/chestnut-cms/chestnut-cms-customform/pom.xml +++ b/chestnut-cms/chestnut-cms-customform/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-customform diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CmsCustomFormMetaModelType.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CmsCustomFormMetaModelType.java index 5b9e37a9..684ea89f 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CmsCustomFormMetaModelType.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CmsCustomFormMetaModelType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CustomFormConsts.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CustomFormConsts.java index 61e8fcb0..7629bd4e 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CustomFormConsts.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CustomFormConsts.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CustomFormCoreDataHandler.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CustomFormCoreDataHandler.java index 2cc611b5..834af7b9 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CustomFormCoreDataHandler.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/CustomFormCoreDataHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/CustomFormController.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/CustomFormController.java index 1d8389ed..054b362e 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/CustomFormController.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/CustomFormController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/CustomFormDataController.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/CustomFormDataController.java index ee341667..8bfe7de2 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/CustomFormDataController.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/CustomFormDataController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/front/CustomFormApiController.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/front/CustomFormApiController.java index 925ef4b1..1b89f3ac 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/front/CustomFormApiController.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/controller/front/CustomFormApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/CmsCustomForm.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/CmsCustomForm.java index 130c6a72..b06655cb 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/CmsCustomForm.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/CmsCustomForm.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/CmsCustomFormData.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/CmsCustomFormData.java index f8e1a828..82b92197 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/CmsCustomFormData.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/CmsCustomFormData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/dto/CustomFormAddDTO.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/dto/CustomFormAddDTO.java index e66c3a79..d52ea20d 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/dto/CustomFormAddDTO.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/dto/CustomFormAddDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/dto/CustomFormEditDTO.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/dto/CustomFormEditDTO.java index 67ba708d..7197f69f 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/dto/CustomFormEditDTO.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/dto/CustomFormEditDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/vo/CustomFormVO.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/vo/CustomFormVO.java index 9779a6a4..1f54f53b 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/vo/CustomFormVO.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/domain/vo/CustomFormVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/fixed/dict/CustomFormRule.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/fixed/dict/CustomFormRule.java index 9fe9cff6..63c4fc2f 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/fixed/dict/CustomFormRule.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/fixed/dict/CustomFormRule.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/fixed/dict/CustomFormStatus.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/fixed/dict/CustomFormStatus.java index 148b0a8c..37172a9a 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/fixed/dict/CustomFormStatus.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/fixed/dict/CustomFormStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/mapper/CustomFormDataMapper.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/mapper/CustomFormDataMapper.java index 1f0a8312..d89c745f 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/mapper/CustomFormDataMapper.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/mapper/CustomFormDataMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/mapper/CustomFormMapper.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/mapper/CustomFormMapper.java index ee787685..6df23a9a 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/mapper/CustomFormMapper.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/mapper/CustomFormMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/permission/CustomFormPriv.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/permission/CustomFormPriv.java index e2669755..242610b2 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/permission/CustomFormPriv.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/permission/CustomFormPriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/properties/EnableCustomFormCaptcha.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/properties/EnableCustomFormCaptcha.java index 4bbd1e9d..d500865c 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/properties/EnableCustomFormCaptcha.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/properties/EnableCustomFormCaptcha.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/publishpipe/PublishPipeProp_CustomFormTemplate.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/publishpipe/PublishPipeProp_CustomFormTemplate.java index 8a448e72..138c04ab 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/publishpipe/PublishPipeProp_CustomFormTemplate.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/publishpipe/PublishPipeProp_CustomFormTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/rule/ICustomFormRule.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/rule/ICustomFormRule.java index 03beb7f5..e3a0bbdf 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/rule/ICustomFormRule.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/rule/ICustomFormRule.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/service/ICustomFormService.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/service/ICustomFormService.java index 7e40a569..014bc39b 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/service/ICustomFormService.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/service/ICustomFormService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/service/impl/CustomFormServiceImpl.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/service/impl/CustomFormServiceImpl.java index 4f1612fb..0a2deb96 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/service/impl/CustomFormServiceImpl.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/service/impl/CustomFormServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/template/tag/CmsCustomFormTag.java b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/template/tag/CmsCustomFormTag.java index e62f1778..d7dde3c8 100644 --- a/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/template/tag/CmsCustomFormTag.java +++ b/chestnut-cms/chestnut-cms-customform/src/main/java/com/chestnut/customform/template/tag/CmsCustomFormTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/pom.xml b/chestnut-cms/chestnut-cms-dynamic/pom.xml index daba0030..a2624d9e 100644 --- a/chestnut-cms/chestnut-cms-dynamic/pom.xml +++ b/chestnut-cms/chestnut-cms-dynamic/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-dynamic diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/DynamicCoreHandler.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/DynamicCoreHandler.java index fbeadc14..a576d93e 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/DynamicCoreHandler.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/DynamicCoreHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/cache/DynamicPageMonitoredCache.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/cache/DynamicPageMonitoredCache.java index 2611fdb0..e500dfbb 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/cache/DynamicPageMonitoredCache.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/cache/DynamicPageMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/controller/DynamicPageController.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/controller/DynamicPageController.java index ffb3eb34..1d4a8ac6 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/controller/DynamicPageController.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/controller/DynamicPageController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/controller/front/DynamicPageFrontController.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/controller/front/DynamicPageFrontController.java index daf279d4..db6a9f05 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/controller/front/DynamicPageFrontController.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/controller/front/DynamicPageFrontController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/DynamicPageRequestMappingHandlerMapping.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/DynamicPageRequestMappingHandlerMapping.java index cbdb3f33..61e6ccfa 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/DynamicPageRequestMappingHandlerMapping.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/DynamicPageRequestMappingHandlerMapping.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/IDynamicPageInitData.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/IDynamicPageInitData.java index 193f938c..2fe80428 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/IDynamicPageInitData.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/IDynamicPageInitData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/impl/MemberDynamicPageInitData.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/impl/MemberDynamicPageInitData.java index 6cb9e2c8..3a8916c5 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/impl/MemberDynamicPageInitData.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/impl/MemberDynamicPageInitData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/impl/PaginationDynamicPageInitData.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/impl/PaginationDynamicPageInitData.java index 42493799..6347c3a5 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/impl/PaginationDynamicPageInitData.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/core/impl/PaginationDynamicPageInitData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/domain/CmsDynamicPage.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/domain/CmsDynamicPage.java index 9ba5cad6..02780621 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/domain/CmsDynamicPage.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/domain/CmsDynamicPage.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/domain/vo/DynamicPageInitDataTypeVO.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/domain/vo/DynamicPageInitDataTypeVO.java index 916cf0af..ebcf32e4 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/domain/vo/DynamicPageInitDataTypeVO.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/domain/vo/DynamicPageInitDataTypeVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/listener/DynamicListener.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/listener/DynamicListener.java index 17cfb19a..a8caef1d 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/listener/DynamicListener.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/listener/DynamicListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/mapper/CmsDynamicPageMapper.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/mapper/CmsDynamicPageMapper.java index e5df426c..960db9ff 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/mapper/CmsDynamicPageMapper.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/mapper/CmsDynamicPageMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/IDynamicPageService.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/IDynamicPageService.java index 164265ff..0137ef4f 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/IDynamicPageService.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/IDynamicPageService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/impl/DynamicPageHelper.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/impl/DynamicPageHelper.java index 2f60a04e..a615f7b9 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/impl/DynamicPageHelper.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/impl/DynamicPageHelper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/impl/DynamicPageServiceImpl.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/impl/DynamicPageServiceImpl.java index 0a3fdbbf..b0edc3a5 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/impl/DynamicPageServiceImpl.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/service/impl/DynamicPageServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/template/func/CustomDynamicPageLinkFunction.java b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/template/func/CustomDynamicPageLinkFunction.java index 8560a002..700573eb 100644 --- a/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/template/func/CustomDynamicPageLinkFunction.java +++ b/chestnut-cms/chestnut-cms-dynamic/src/main/java/com/chestnut/cms/dynamic/template/func/CustomDynamicPageLinkFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/pom.xml b/chestnut-cms/chestnut-cms-exmodel/pom.xml index 6c4b322e..f858d76f 100644 --- a/chestnut-cms/chestnut-cms-exmodel/pom.xml +++ b/chestnut-cms/chestnut-cms-exmodel/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-exmodel diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/CmsExtendMetaModelType.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/CmsExtendMetaModelType.java index 09241371..9d216456 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/CmsExtendMetaModelType.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/CmsExtendMetaModelType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/EXModelCoreDataHandler.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/EXModelCoreDataHandler.java index ccccc184..4e61a08a 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/EXModelCoreDataHandler.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/EXModelCoreDataHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_CmsImage.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_CmsImage.java index 1129dd16..57c60fb1 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_CmsImage.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_CmsImage.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_CmsResource.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_CmsResource.java index 4d1f5d55..b1d2d01a 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_CmsResource.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_CmsResource.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_ContentSelect.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_ContentSelect.java index 1461440c..dbe7ecbd 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_ContentSelect.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_ContentSelect.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_UEditor.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_UEditor.java index d77d76c8..c73c1f40 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_UEditor.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/MetaControlType_UEditor.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/controller/EXModelController.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/controller/EXModelController.java index d625ed4b..03d2843a 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/controller/EXModelController.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/controller/EXModelController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/domain/CmsExtendModelData.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/domain/CmsExtendModelData.java index 2bb557ab..e3618664 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/domain/CmsExtendModelData.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/domain/CmsExtendModelData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/exception/XModelNotFoundTemplateException.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/exception/XModelNotFoundTemplateException.java index 2a612a2e..ae08a160 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/exception/XModelNotFoundTemplateException.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/exception/XModelNotFoundTemplateException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/fixed/dict/ExtendModelDataType.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/fixed/dict/ExtendModelDataType.java index df3bcf19..0a19e74d 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/fixed/dict/ExtendModelDataType.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/fixed/dict/ExtendModelDataType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/listener/EXModelEventListener.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/listener/EXModelEventListener.java index 18f77900..61f2cdcf 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/listener/EXModelEventListener.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/listener/EXModelEventListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/mapper/ExtendModelMapper.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/mapper/ExtendModelMapper.java index 96e90c28..00fbc099 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/mapper/ExtendModelMapper.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/mapper/ExtendModelMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/permission/EXModelPriv.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/permission/EXModelPriv.java index 7cf40598..5f8a7ead 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/permission/EXModelPriv.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/permission/EXModelPriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/CatalogExtendModelProperty.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/CatalogExtendModelProperty.java index c8818bf9..bad4612d 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/CatalogExtendModelProperty.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/CatalogExtendModelProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/ContentExtendModelProperty.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/ContentExtendModelProperty.java index 56185bda..7de6e9d6 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/ContentExtendModelProperty.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/ContentExtendModelProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/SiteExtendModelProperty.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/SiteExtendModelProperty.java index 63dfccaf..b683b310 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/SiteExtendModelProperty.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/properties/SiteExtendModelProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/service/ExModelService.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/service/ExModelService.java index 571c169d..1f38ee9d 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/service/ExModelService.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/service/ExModelService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/template/tag/CmsXModelDataTag.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/template/tag/CmsXModelDataTag.java index b987823c..8600f1d4 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/template/tag/CmsXModelDataTag.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/template/tag/CmsXModelDataTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/template/tag/CmsXModelFieldTag.java b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/template/tag/CmsXModelFieldTag.java index 7045ab68..f028315a 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/template/tag/CmsXModelFieldTag.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/main/java/com/chestnut/exmodel/template/tag/CmsXModelFieldTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-exmodel/src/test/java/com/chestnut/cms/exmodel/BaseModelDataGenerator.java b/chestnut-cms/chestnut-cms-exmodel/src/test/java/com/chestnut/cms/exmodel/BaseModelDataGenerator.java index 17e5e23c..e68f267d 100644 --- a/chestnut-cms/chestnut-cms-exmodel/src/test/java/com/chestnut/cms/exmodel/BaseModelDataGenerator.java +++ b/chestnut-cms/chestnut-cms-exmodel/src/test/java/com/chestnut/cms/exmodel/BaseModelDataGenerator.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/pom.xml b/chestnut-cms/chestnut-cms-image/pom.xml index 2a56171f..0b466fcd 100644 --- a/chestnut-cms/chestnut-cms-image/pom.xml +++ b/chestnut-cms/chestnut-cms-image/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-image diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContent.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContent.java index 4916e7b4..74f66359 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContent.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContentResourceStat.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContentResourceStat.java index 1d918e93..c0566c7a 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContentResourceStat.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContentResourceStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContentType.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContentType.java index d297b469..b704c443 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContentType.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageContentType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageCoreDataHandler.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageCoreDataHandler.java index 7a3413a4..df31afc1 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageCoreDataHandler.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/ImageCoreDataHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/PublishPipeProp_DefaultImageDetailTemplate.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/PublishPipeProp_DefaultImageDetailTemplate.java index 251f5332..63163812 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/PublishPipeProp_DefaultImageDetailTemplate.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/PublishPipeProp_DefaultImageDetailTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/PublishPipeProp_ImageDetailTemplate.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/PublishPipeProp_ImageDetailTemplate.java index 0ca999a6..56cefbdb 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/PublishPipeProp_ImageDetailTemplate.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/PublishPipeProp_ImageDetailTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/dao/BCmsImageDAO.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/dao/BCmsImageDAO.java index 400819ed..a3a40bdb 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/dao/BCmsImageDAO.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/dao/BCmsImageDAO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/dao/CmsImageDAO.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/dao/CmsImageDAO.java index 80c052e6..d516360c 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/dao/CmsImageDAO.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/dao/CmsImageDAO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/BCmsImage.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/BCmsImage.java index 962b6623..56c8b835 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/BCmsImage.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/BCmsImage.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/CmsImage.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/CmsImage.java index 5bd0950a..ef608d0e 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/CmsImage.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/CmsImage.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/dto/ImageAlbumDTO.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/dto/ImageAlbumDTO.java index c1f4f68d..6b5f6a99 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/dto/ImageAlbumDTO.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/dto/ImageAlbumDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/vo/ImageAlbumVO.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/vo/ImageAlbumVO.java index 9bb5842b..b5aad27c 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/vo/ImageAlbumVO.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/vo/ImageAlbumVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/vo/TagImageVO.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/vo/TagImageVO.java index 3947b493..df6afeff 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/vo/TagImageVO.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/domain/vo/TagImageVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/listener/ImageListener.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/listener/ImageListener.java index 861135f6..209b330d 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/listener/ImageListener.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/listener/ImageListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/mapper/BCmsImageMapper.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/mapper/BCmsImageMapper.java index 51b9bf39..c0fc82f7 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/mapper/BCmsImageMapper.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/mapper/BCmsImageMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/mapper/CmsImageMapper.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/mapper/CmsImageMapper.java index 42dfd91f..aab18879 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/mapper/CmsImageMapper.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/mapper/CmsImageMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/service/IImageService.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/service/IImageService.java index eb095468..fe6528bd 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/service/IImageService.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/service/IImageService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/service/impl/ImageServiceImpl.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/service/impl/ImageServiceImpl.java index a423f1fc..cc0eabc7 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/service/impl/ImageServiceImpl.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/service/impl/ImageServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/template/tag/CmsImageTag.java b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/template/tag/CmsImageTag.java index 0ace864a..bc39eec2 100644 --- a/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/template/tag/CmsImageTag.java +++ b/chestnut-cms/chestnut-cms-image/src/main/java/com/chestnut/cms/image/template/tag/CmsImageTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/pom.xml b/chestnut-cms/chestnut-cms-link/pom.xml index d5ca699f..c9f09d09 100644 --- a/chestnut-cms/chestnut-cms-link/pom.xml +++ b/chestnut-cms/chestnut-cms-link/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-link diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/FriendLinkResourceStat.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/FriendLinkResourceStat.java index 60c8c7b2..c6ca5096 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/FriendLinkResourceStat.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/FriendLinkResourceStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/LinkContentCoreHandler.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/LinkContentCoreHandler.java index db99b5ea..2a2010e1 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/LinkContentCoreHandler.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/LinkContentCoreHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/controller/LinkController.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/controller/LinkController.java index e70df813..9d5296a3 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/controller/LinkController.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/controller/LinkController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/controller/LinkGroupController.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/controller/LinkGroupController.java index bd331ac6..b47bb196 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/controller/LinkGroupController.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/controller/LinkGroupController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/CmsLink.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/CmsLink.java index 2350266a..deb91de1 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/CmsLink.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/CmsLink.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/CmsLinkGroup.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/CmsLinkGroup.java index acab84a9..b8a7b153 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/CmsLinkGroup.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/CmsLinkGroup.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/dto/LinkDTO.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/dto/LinkDTO.java index 16b6fa7a..b6afb2a8 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/dto/LinkDTO.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/dto/LinkDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/dto/LinkGroupDTO.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/dto/LinkGroupDTO.java index 2d13e2a4..f6eedde5 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/dto/LinkGroupDTO.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/domain/dto/LinkGroupDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/exception/LinkGroupNotFoundTemplateException.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/exception/LinkGroupNotFoundTemplateException.java index 64c4b8a3..6760d2b1 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/exception/LinkGroupNotFoundTemplateException.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/exception/LinkGroupNotFoundTemplateException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/listener/LinkListener.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/listener/LinkListener.java index b9f488ab..70ae4ad2 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/listener/LinkListener.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/listener/LinkListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/mapper/CmsLinkGroupMapper.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/mapper/CmsLinkGroupMapper.java index f9f8f669..e152e7ce 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/mapper/CmsLinkGroupMapper.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/mapper/CmsLinkGroupMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/mapper/CmsLinkMapper.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/mapper/CmsLinkMapper.java index 83d16e61..4b62a30d 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/mapper/CmsLinkMapper.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/mapper/CmsLinkMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/permission/FriendLinkPriv.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/permission/FriendLinkPriv.java index 41ee1a80..475e9789 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/permission/FriendLinkPriv.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/permission/FriendLinkPriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/ILinkGroupService.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/ILinkGroupService.java index ab0aa9c4..23ec86bc 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/ILinkGroupService.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/ILinkGroupService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/ILinkService.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/ILinkService.java index f94e4841..7ca9be9b 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/ILinkService.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/ILinkService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/impl/LinkGroupServiceImpl.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/impl/LinkGroupServiceImpl.java index 143d6785..9eb0adce 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/impl/LinkGroupServiceImpl.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/impl/LinkGroupServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/impl/LinkServiceImpl.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/impl/LinkServiceImpl.java index 5f917664..e997f663 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/impl/LinkServiceImpl.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/service/impl/LinkServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/template/tag/CmsLinkGroupTag.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/template/tag/CmsLinkGroupTag.java index 7969f9ef..65dde4ca 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/template/tag/CmsLinkGroupTag.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/template/tag/CmsLinkGroupTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/template/tag/CmsLinkTag.java b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/template/tag/CmsLinkTag.java index 1eb07e36..9d7f0479 100644 --- a/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/template/tag/CmsLinkTag.java +++ b/chestnut-cms/chestnut-cms-link/src/main/java/com/chestnut/link/template/tag/CmsLinkTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/pom.xml b/chestnut-cms/chestnut-cms-media/pom.xml index 7165a712..1ac6fa2a 100644 --- a/chestnut-cms/chestnut-cms-media/pom.xml +++ b/chestnut-cms/chestnut-cms-media/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-media diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/AudioContent.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/AudioContent.java index ddbce4e2..fa46204f 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/AudioContent.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/AudioContent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/AudioContentType.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/AudioContentType.java index 27f67768..efcfba7c 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/AudioContentType.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/AudioContentType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/MediaCoreDataHandler.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/MediaCoreDataHandler.java index 45d055d6..fccefeba 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/MediaCoreDataHandler.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/MediaCoreDataHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/MediaResourceStat.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/MediaResourceStat.java index f3fca03c..e15b827f 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/MediaResourceStat.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/MediaResourceStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/VideoContent.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/VideoContent.java index ecfeaa96..81880335 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/VideoContent.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/VideoContent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/VideoContentType.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/VideoContentType.java index f03930e6..3453dd47 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/VideoContentType.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/VideoContentType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/controller/VideoController.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/controller/VideoController.java index 20b7e5cd..d61885df 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/controller/VideoController.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/controller/VideoController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/BCmsAudioDAO.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/BCmsAudioDAO.java index 81d8829d..154030bc 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/BCmsAudioDAO.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/BCmsAudioDAO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/BCmsVideoDAO.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/BCmsVideoDAO.java index 18ee6df4..783f2119 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/BCmsVideoDAO.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/BCmsVideoDAO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/CmsAudioDAO.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/CmsAudioDAO.java index 31940f1a..777b7a32 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/CmsAudioDAO.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/CmsAudioDAO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/CmsVideoDAO.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/CmsVideoDAO.java index c0f08616..81c4c8c0 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/CmsVideoDAO.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/dao/CmsVideoDAO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/BCmsAudio.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/BCmsAudio.java index 9547386b..a1853345 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/BCmsAudio.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/BCmsAudio.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/BCmsVideo.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/BCmsVideo.java index 6ad58cb3..02c6586d 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/BCmsVideo.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/BCmsVideo.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/CmsAudio.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/CmsAudio.java index 4cee4ada..45f90834 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/CmsAudio.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/CmsAudio.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/CmsVideo.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/CmsVideo.java index 4139380e..ee17ef39 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/CmsVideo.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/CmsVideo.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/AudioAlbumDTO.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/AudioAlbumDTO.java index ce1c00ba..bd921c3f 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/AudioAlbumDTO.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/AudioAlbumDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/VideoAlbumDTO.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/VideoAlbumDTO.java index eb15e96e..fe674b53 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/VideoAlbumDTO.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/VideoAlbumDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/VideoScreenshotDTO.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/VideoScreenshotDTO.java index 655f89d2..49aa1da7 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/VideoScreenshotDTO.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/dto/VideoScreenshotDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/AudioAlbumVO.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/AudioAlbumVO.java index 26e4ba19..846a138c 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/AudioAlbumVO.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/AudioAlbumVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/TagAudioVO.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/TagAudioVO.java index 1d8fbf11..56d8a4f0 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/TagAudioVO.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/TagAudioVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/TagVideoVO.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/TagVideoVO.java index b8751032..85630efc 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/TagVideoVO.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/TagVideoVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/VideoAlbumVO.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/VideoAlbumVO.java index 80355122..a66bf116 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/VideoAlbumVO.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/domain/vo/VideoAlbumVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/listener/MediaListener.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/listener/MediaListener.java index 783cddd9..a7dd513a 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/listener/MediaListener.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/listener/MediaListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/BCmsAudioMapper.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/BCmsAudioMapper.java index be3d10d0..416fa94e 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/BCmsAudioMapper.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/BCmsAudioMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/BCmsVideoMapper.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/BCmsVideoMapper.java index da32ea78..4c784973 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/BCmsVideoMapper.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/BCmsVideoMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/CmsAudioMapper.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/CmsAudioMapper.java index ad935de2..6163f1b5 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/CmsAudioMapper.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/CmsAudioMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/CmsVideoMapper.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/CmsVideoMapper.java index 72b2f80a..4aedd69a 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/CmsVideoMapper.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/mapper/CmsVideoMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_AudioDetailTemplate.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_AudioDetailTemplate.java index 56d283aa..cc77c550 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_AudioDetailTemplate.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_AudioDetailTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_DefaultAudioDetailTemplate.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_DefaultAudioDetailTemplate.java index 07ababca..87a4806f 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_DefaultAudioDetailTemplate.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_DefaultAudioDetailTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_DefaultVideoDetailTemplate.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_DefaultVideoDetailTemplate.java index 2073886c..e42c2cef 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_DefaultVideoDetailTemplate.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_DefaultVideoDetailTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_VideoDetailTemplate.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_VideoDetailTemplate.java index 13268920..c2158c41 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_VideoDetailTemplate.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/publishpipe/prop/PublishPipeProp_VideoDetailTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/IAudioService.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/IAudioService.java index d64e1374..c4a8ceb0 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/IAudioService.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/IAudioService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/IVideoService.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/IVideoService.java index 93bcc16c..a3400c40 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/IVideoService.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/IVideoService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/impl/AudioServiceImpl.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/impl/AudioServiceImpl.java index 092216bb..e539cd51 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/impl/AudioServiceImpl.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/impl/AudioServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/impl/VideoServiceImpl.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/impl/VideoServiceImpl.java index 019ec443..4d96913c 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/impl/VideoServiceImpl.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/service/impl/VideoServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/template/tag/CmsAudioTag.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/template/tag/CmsAudioTag.java index 154d7d31..8971bece 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/template/tag/CmsAudioTag.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/template/tag/CmsAudioTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/template/tag/CmsVideoTag.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/template/tag/CmsVideoTag.java index e35e8dd8..7e3d3923 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/template/tag/CmsVideoTag.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/template/tag/CmsVideoTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/util/MediaUtils.java b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/util/MediaUtils.java index d32561cd..aaa08310 100644 --- a/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/util/MediaUtils.java +++ b/chestnut-cms/chestnut-cms-media/src/main/java/com/chestnut/media/util/MediaUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/pom.xml b/chestnut-cms/chestnut-cms-member/pom.xml index 97743320..11199de9 100644 --- a/chestnut-cms/chestnut-cms-member/pom.xml +++ b/chestnut-cms/chestnut-cms-member/pom.xml @@ -6,7 +6,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-member diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/CmsMemberConstants.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/CmsMemberConstants.java index 8e23d935..a6f33396 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/CmsMemberConstants.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/CmsMemberConstants.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/ContentExApiController.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/ContentExApiController.java index 66e97a6a..d29f61dd 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/ContentExApiController.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/ContentExApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberAccountController.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberAccountController.java index f4950c58..ccc69189 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberAccountController.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberAccountController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberContentApiController.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberContentApiController.java index 1373c5b8..569dcb93 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberContentApiController.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberContentApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberContributeApiController.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberContributeApiController.java index 693e4a23..6d9581fc 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberContributeApiController.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/controller/front/MemberContributeApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/dto/ArticleContributeDTO.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/dto/ArticleContributeDTO.java index 3734a919..1fc4634d 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/dto/ArticleContributeDTO.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/dto/ArticleContributeDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContentDynamicDataWithContributorVO.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContentDynamicDataWithContributorVO.java index 445aa6a5..f7f06352 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContentDynamicDataWithContributorVO.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContentDynamicDataWithContributorVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContributeArticleVO.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContributeArticleVO.java index ae1b831b..11a969db 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContributeArticleVO.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContributeArticleVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContributorVO.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContributorVO.java index 23cecb52..1f82f813 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContributorVO.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/ContributorVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/FavoriteContentVO.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/FavoriteContentVO.java index ad8cd20a..8ce6e53c 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/FavoriteContentVO.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/FavoriteContentVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/MemberContentVO.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/MemberContentVO.java index 4cba80e4..9030ee9a 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/MemberContentVO.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/domain/vo/MemberContentVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/exception/CmsMemberErrorCode.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/exception/CmsMemberErrorCode.java index 5e8c21c0..20d66410 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/exception/CmsMemberErrorCode.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/exception/CmsMemberErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountBindEmailDynamicPageType.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountBindEmailDynamicPageType.java index b83cea66..59fdcf3e 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountBindEmailDynamicPageType.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountBindEmailDynamicPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountCentreDynamicPageType.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountCentreDynamicPageType.java index dceb3409..03dd9801 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountCentreDynamicPageType.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountCentreDynamicPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountContributeDynamicPageType.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountContributeDynamicPageType.java index 9a8c91cb..c36f8821 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountContributeDynamicPageType.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountContributeDynamicPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountForgetPasswordDynamicPageType.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountForgetPasswordDynamicPageType.java index 8e42a77c..dafb1e0d 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountForgetPasswordDynamicPageType.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountForgetPasswordDynamicPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountLoginDynamicPageType.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountLoginDynamicPageType.java index df1a973c..674a2c90 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountLoginDynamicPageType.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountLoginDynamicPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountPasswordDynamicPageType.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountPasswordDynamicPageType.java index 22730782..7f3434a8 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountPasswordDynamicPageType.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountPasswordDynamicPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountRegisterDynamicPageType.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountRegisterDynamicPageType.java index b5b50d4c..ce2d530e 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountRegisterDynamicPageType.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountRegisterDynamicPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountSettingDynamicPageType.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountSettingDynamicPageType.java index c8479777..caaf354a 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountSettingDynamicPageType.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/AccountSettingDynamicPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/ContributeMemberStatData.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/ContributeMemberStatData.java index aca237a7..74ea3f07 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/ContributeMemberStatData.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/impl/ContributeMemberStatData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/listener/MemberListener.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/listener/MemberListener.java index 92d0c37b..3513920a 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/listener/MemberListener.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/listener/MemberListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/properties/EnableContributeProperty.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/properties/EnableContributeProperty.java index 9564f5f1..ec800123 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/properties/EnableContributeProperty.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/properties/EnableContributeProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/properties/MemberResourceUrlProperty.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/properties/MemberResourceUrlProperty.java index 49e36783..f72e497d 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/properties/MemberResourceUrlProperty.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/properties/MemberResourceUrlProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_AccountCentreTemplate.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_AccountCentreTemplate.java index 3c9e1c63..c1c4cca9 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_AccountCentreTemplate.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_AccountCentreTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberBindEmailTemplate.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberBindEmailTemplate.java index bc29c7af..6ed8f19d 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberBindEmailTemplate.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberBindEmailTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberContributeTemplate.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberContributeTemplate.java index 5eca5d8f..457ae140 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberContributeTemplate.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberContributeTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberForgetPasswordTemplate.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberForgetPasswordTemplate.java index 26d451a3..5310c29c 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberForgetPasswordTemplate.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberForgetPasswordTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberLoginTemplate.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberLoginTemplate.java index 0d4ddf3b..54de7e3f 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberLoginTemplate.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberLoginTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberPasswordTemplate.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberPasswordTemplate.java index 67ebfef8..0a27587f 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberPasswordTemplate.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberPasswordTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberRegisterTemplate.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberRegisterTemplate.java index 279544c0..1d3c0338 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberRegisterTemplate.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberRegisterTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberSettingTemplate.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberSettingTemplate.java index fed913f7..967d72ab 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberSettingTemplate.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/publishpipe/PublishPipeProp_MemberSettingTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/service/MemberContributeService.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/service/MemberContributeService.java index cde6cd0d..139d8bef 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/service/MemberContributeService.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/service/MemberContributeService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/func/AccountUrlFunction.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/func/AccountUrlFunction.java index b30b5917..ae6d1069 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/func/AccountUrlFunction.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/func/AccountUrlFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/tag/CmsFavoriteContentTag.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/tag/CmsFavoriteContentTag.java index 3a8f9506..dc61fa3d 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/tag/CmsFavoriteContentTag.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/tag/CmsFavoriteContentTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/tag/CmsMemberFollowTag.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/tag/CmsMemberFollowTag.java index 26383eeb..869e971b 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/tag/CmsMemberFollowTag.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/template/tag/CmsMemberFollowTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/utils/CmsMemberUtils.java b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/utils/CmsMemberUtils.java index ca473c1f..f5afe1ca 100644 --- a/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/utils/CmsMemberUtils.java +++ b/chestnut-cms/chestnut-cms-member/src/main/java/com/chestnut/cms/member/utils/CmsMemberUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/pom.xml b/chestnut-cms/chestnut-cms-search/pom.xml index 01137a7c..9a66ef84 100644 --- a/chestnut-cms/chestnut-cms-search/pom.xml +++ b/chestnut-cms/chestnut-cms-search/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-search diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/CmsSearchConstants.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/CmsSearchConstants.java index d717de7b..cb62320a 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/CmsSearchConstants.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/CmsSearchConstants.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/CmsSearchErrorCode.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/CmsSearchErrorCode.java index 4da15e3d..224cd88e 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/CmsSearchErrorCode.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/CmsSearchErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/CMSSearchLogController.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/CMSSearchLogController.java index 817d5537..8baeb77a 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/CMSSearchLogController.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/CMSSearchLogController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/CMSSearchWordStatController.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/CMSSearchWordStatController.java index cd222022..078294bd 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/CMSSearchWordStatController.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/CMSSearchWordStatController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/ContentIndexController.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/ContentIndexController.java index 95653b8a..dab102c9 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/ContentIndexController.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/ContentIndexController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/front/CmsSearchController.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/front/CmsSearchController.java index e1a1fe4e..0e4f1fba 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/front/CmsSearchController.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/front/CmsSearchController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/front/SearchApiController.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/front/SearchApiController.java index 1a10d2c1..e83d0c05 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/front/SearchApiController.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/controller/front/SearchApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/es/doc/ESContent.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/es/doc/ESContent.java index af81b7b6..debf8a00 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/es/doc/ESContent.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/es/doc/ESContent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/fixed/config/SearchAnalyzeType.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/fixed/config/SearchAnalyzeType.java index 4ff43111..b6174489 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/fixed/config/SearchAnalyzeType.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/fixed/config/SearchAnalyzeType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/impl/SearchDynamicPageType.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/impl/SearchDynamicPageType.java index 68b67386..95edacfd 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/impl/SearchDynamicPageType.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/impl/SearchDynamicPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/listener/ESSearchListener.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/listener/ESSearchListener.java index 87c926a1..a1d5c933 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/listener/ESSearchListener.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/listener/ESSearchListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/permission/CmsSearchPriv.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/permission/CmsSearchPriv.java index 5c0dab3c..ddc49cfd 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/permission/CmsSearchPriv.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/permission/CmsSearchPriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/properties/EnableIndexProperty.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/properties/EnableIndexProperty.java index 0e9bc024..ac8fc823 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/properties/EnableIndexProperty.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/properties/EnableIndexProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/publishpipe/PublishPipeProp_SearchTemplate.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/publishpipe/PublishPipeProp_SearchTemplate.java index 31aa0cdd..6ac305b4 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/publishpipe/PublishPipeProp_SearchTemplate.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/publishpipe/PublishPipeProp_SearchTemplate.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/service/ContentIndexService.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/service/ContentIndexService.java index 91f7569c..c634e8ac 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/service/ContentIndexService.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/service/ContentIndexService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/template/tag/CmsSearchContentTag.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/template/tag/CmsSearchContentTag.java index 3cbd9790..a2746726 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/template/tag/CmsSearchContentTag.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/template/tag/CmsSearchContentTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/template/tag/CmsSearchWordTag.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/template/tag/CmsSearchWordTag.java index 98b4aa52..1a53f5c6 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/template/tag/CmsSearchWordTag.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/template/tag/CmsSearchWordTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/vo/ESContentVO.java b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/vo/ESContentVO.java index efc1440e..09237de3 100644 --- a/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/vo/ESContentVO.java +++ b/chestnut-cms/chestnut-cms-search/src/main/java/com/chestnut/cms/search/vo/ESContentVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-seo/pom.xml b/chestnut-cms/chestnut-cms-seo/pom.xml index bf5dcf2b..a86a9071 100644 --- a/chestnut-cms/chestnut-cms-seo/pom.xml +++ b/chestnut-cms/chestnut-cms-seo/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-seo diff --git a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/controller/SitePushController.java b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/controller/SitePushController.java index 13e4e517..99c2ed46 100644 --- a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/controller/SitePushController.java +++ b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/controller/SitePushController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/controller/SitemapController.java b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/controller/SitemapController.java index 0415a28e..ce2f3ab2 100644 --- a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/controller/SitemapController.java +++ b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/controller/SitemapController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/fixed/dict/SitemapPageType.java b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/fixed/dict/SitemapPageType.java index 4847e98f..778174dd 100644 --- a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/fixed/dict/SitemapPageType.java +++ b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/fixed/dict/SitemapPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/job/SitemapJobHandler.java b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/job/SitemapJobHandler.java index 9522bda7..7561c5a5 100644 --- a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/job/SitemapJobHandler.java +++ b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/job/SitemapJobHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/properties/BaiduPushAccessSecretProperty.java b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/properties/BaiduPushAccessSecretProperty.java index d1c3d379..9bb08107 100644 --- a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/properties/BaiduPushAccessSecretProperty.java +++ b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/properties/BaiduPushAccessSecretProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_EnableSitemap.java b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_EnableSitemap.java index 318dd955..7db80148 100644 --- a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_EnableSitemap.java +++ b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_EnableSitemap.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_SitemapPageType.java b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_SitemapPageType.java index 9bc9587c..731e28e3 100644 --- a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_SitemapPageType.java +++ b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_SitemapPageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_SitemapUrlLimit.java b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_SitemapUrlLimit.java index cadff6f0..d6e18d03 100644 --- a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_SitemapUrlLimit.java +++ b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/publishpipe/PublishPipeProp_SitemapUrlLimit.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/service/BaiduPushService.java b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/service/BaiduPushService.java index 13d71398..742d39a6 100644 --- a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/service/BaiduPushService.java +++ b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/service/BaiduPushService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/service/BaiduSitemapService.java b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/service/BaiduSitemapService.java index e7a810b9..fa5cb8b5 100644 --- a/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/service/BaiduSitemapService.java +++ b/chestnut-cms/chestnut-cms-seo/src/main/java/com/chestnut/seo/service/BaiduSitemapService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/pom.xml b/chestnut-cms/chestnut-cms-stat/pom.xml index d95ae02b..de05788f 100644 --- a/chestnut-cms/chestnut-cms-stat/pom.xml +++ b/chestnut-cms/chestnut-cms-stat/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-stat diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/CatalogContentCountByStatus.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/CatalogContentCountByStatus.java index 86383643..ac704868 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/CatalogContentCountByStatus.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/CatalogContentCountByStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/SiteStatType.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/SiteStatType.java index 2abe4054..caa284cf 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/SiteStatType.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/SiteStatType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/UserContentCountByStatus.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/UserContentCountByStatus.java index 08feee95..ed22b9c8 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/UserContentCountByStatus.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/UserContentCountByStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTjMetrics.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTjMetrics.java index 8a5a13bf..9ac9fe0d 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTjMetrics.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTjMetrics.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu; import lombok.Getter; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTongjiConfig.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTongjiConfig.java index 7016ee42..3e16ae06 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTongjiConfig.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTongjiConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTongjiUtils.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTongjiUtils.java index 5bebd29e..b59324db 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTongjiUtils.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/BaiduTongjiUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjApi.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjApi.java index 9690e58b..013dc908 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjApi.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjApi.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import lombok.Getter; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjDataApi.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjDataApi.java index 2b0fe1e0..159bcbe0 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjDataApi.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjDataApi.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import lombok.Getter; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjLineChatResponse.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjLineChatResponse.java index 2d18b519..45847ba3 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjLineChatResponse.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjLineChatResponse.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjResponse.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjResponse.java index 6cd60be4..5327d77b 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjResponse.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/BaiduTjResponse.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.common.utils.StringUtils; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetCommonTrackRptApi.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetCommonTrackRptApi.java index 8e4baa6f..eaaf0b31 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetCommonTrackRptApi.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetCommonTrackRptApi.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetCommonTrackRptResponse.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetCommonTrackRptResponse.java index c8e7856f..2f547538 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetCommonTrackRptResponse.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetCommonTrackRptResponse.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetDistrictRptApi.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetDistrictRptApi.java index e53c1258..43efff17 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetDistrictRptApi.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetDistrictRptApi.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetDistrictRptResponse.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetDistrictRptResponse.java index fb70d893..4103c117 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetDistrictRptResponse.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetDistrictRptResponse.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import lombok.Getter; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetTimeTrendRptApi.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetTimeTrendRptApi.java index cef24378..7b1f6309 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetTimeTrendRptApi.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetTimeTrendRptApi.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetTimeTrendRptResponse.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetTimeTrendRptResponse.java index 2ba57aa4..9c00bc54 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetTimeTrendRptResponse.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/OverviewGetTimeTrendRptResponse.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import lombok.Getter; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SiteListApi.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SiteListApi.java index c77a4a6f..c1d22113 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SiteListApi.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SiteListApi.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.common.utils.HttpUtils; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SiteListResponse.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SiteListResponse.java index ddf92087..a8167e5f 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SiteListResponse.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SiteListResponse.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import lombok.Getter; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceAllAApi.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceAllAApi.java index 88221def..77c7cf52 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceAllAApi.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceAllAApi.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceAllAResponse.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceAllAResponse.java index 3dc8e378..d4578591 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceAllAResponse.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceAllAResponse.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceEngineAApi.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceEngineAApi.java index 0769523d..de29093a 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceEngineAApi.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceEngineAApi.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceEngineAResponse.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceEngineAResponse.java index 522876bf..b13a4df4 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceEngineAResponse.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceEngineAResponse.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceSearchWordAApi.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceSearchWordAApi.java index 74aea548..cc7325a4 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceSearchWordAApi.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceSearchWordAApi.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceSearchWordAResponse.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceSearchWordAResponse.java index bc61df40..96550c32 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceSearchWordAResponse.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/SourceSearchWordAResponse.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/TrendTimeAApi.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/TrendTimeAApi.java index 08523caa..421e1424 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/TrendTimeAApi.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/TrendTimeAApi.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.chestnut.cms.stat.baidu.BaiduTjMetrics; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/TrendTimeAResponse.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/TrendTimeAResponse.java index 6367aa96..ef284810 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/TrendTimeAResponse.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/api/TrendTimeAResponse.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.cms.stat.baidu.api; import com.fasterxml.jackson.databind.JsonNode; diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceAllDTO.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceAllDTO.java index 30d2c416..af2d2309 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceAllDTO.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceAllDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceEngineDTO.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceEngineDTO.java index 51ff98c3..91fcd34b 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceEngineDTO.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceEngineDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceSearchWordDTO.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceSearchWordDTO.java index 4d53bb05..2c455c7e 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceSearchWordDTO.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduSourceSearchWordDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduTimeTrendDTO.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduTimeTrendDTO.java index 9df9b9bb..9665a45a 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduTimeTrendDTO.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/baidu/dto/BaiduTimeTrendDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/BaiduTongjiController.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/BaiduTongjiController.java index 29795d54..c01ff448 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/BaiduTongjiController.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/BaiduTongjiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/CmsStatController.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/CmsStatController.java index 7b763d77..08330d7c 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/CmsStatController.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/CmsStatController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/front/CmsStatApiController.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/front/CmsStatApiController.java index 2b78e227..0a43e826 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/front/CmsStatApiController.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/controller/front/CmsStatApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsCatalogContentStat.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsCatalogContentStat.java index 3a00ddc1..c6d05aba 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsCatalogContentStat.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsCatalogContentStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsSiteVisitLog.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsSiteVisitLog.java index f0dfbae1..0ff6779b 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsSiteVisitLog.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsSiteVisitLog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsUserContentStat.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsUserContentStat.java index 2ef02cb3..642c9e86 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsUserContentStat.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/CmsUserContentStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/vo/ContentDynamicStatDataVO.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/vo/ContentDynamicStatDataVO.java index ba602bde..e8dc1aeb 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/vo/ContentDynamicStatDataVO.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/vo/ContentDynamicStatDataVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/vo/ContentStatByCatalogVO.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/vo/ContentStatByCatalogVO.java index d1f14299..1a30ee34 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/vo/ContentStatByCatalogVO.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/domain/vo/ContentStatByCatalogVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/exception/CmsStatErrorCode.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/exception/CmsStatErrorCode.java index 2cdad331..5e94b5c0 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/exception/CmsStatErrorCode.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/exception/CmsStatErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/handler/PageViewStatEventHandler.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/handler/PageViewStatEventHandler.java index 2fc11661..789933cc 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/handler/PageViewStatEventHandler.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/handler/PageViewStatEventHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/listener/CmsStatEventListener.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/listener/CmsStatEventListener.java index 10e8ee4b..23de137a 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/listener/CmsStatEventListener.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/listener/CmsStatEventListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsCatalogContentStatMapper.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsCatalogContentStatMapper.java index 376cb288..53ac59a6 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsCatalogContentStatMapper.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsCatalogContentStatMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsSiteVisitLogMapper.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsSiteVisitLogMapper.java index cac7dd5c..839dab8b 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsSiteVisitLogMapper.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsSiteVisitLogMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsUserContentStatMapper.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsUserContentStatMapper.java index c5ec1457..8c6a6591 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsUserContentStatMapper.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/mapper/CmsUserContentStatMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjAccessTokenProperty.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjAccessTokenProperty.java index a22b54e9..941e5728 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjAccessTokenProperty.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjAccessTokenProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjApiKeyProperty.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjApiKeyProperty.java index 03f8c5f0..e37a7a6d 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjApiKeyProperty.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjApiKeyProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjDomainProperty.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjDomainProperty.java index b66c4492..ec1156cc 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjDomainProperty.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjDomainProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjRefreshTokenProperty.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjRefreshTokenProperty.java index b56f0aa8..ee1393c6 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjRefreshTokenProperty.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjRefreshTokenProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjSecretKeyProperty.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjSecretKeyProperty.java index 0081c69f..9ad08185 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjSecretKeyProperty.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/properties/BaiduTjSecretKeyProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/service/ICmsStatService.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/service/ICmsStatService.java index 1f7c097f..7b40080c 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/service/ICmsStatService.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/service/ICmsStatService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/service/impl/CmsStatServiceImpl.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/service/impl/CmsStatServiceImpl.java index 145eb1f9..f4d05c14 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/service/impl/CmsStatServiceImpl.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/service/impl/CmsStatServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/template/tag/CmsStatTag.java b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/template/tag/CmsStatTag.java index 1e46a4a7..dbfed4d7 100644 --- a/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/template/tag/CmsStatTag.java +++ b/chestnut-cms/chestnut-cms-stat/src/main/java/com/chestnut/cms/stat/template/tag/CmsStatTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-vote/pom.xml b/chestnut-cms/chestnut-cms-vote/pom.xml index eb6b076b..41704b7f 100644 --- a/chestnut-cms/chestnut-cms-vote/pom.xml +++ b/chestnut-cms/chestnut-cms-vote/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-vote diff --git a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/exception/VoteNotFoundTemplateException.java b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/exception/VoteNotFoundTemplateException.java index 8be7851a..f249995a 100644 --- a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/exception/VoteNotFoundTemplateException.java +++ b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/exception/VoteNotFoundTemplateException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/listener/VoteListener.java b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/listener/VoteListener.java index 072af7ab..bccbae7a 100644 --- a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/listener/VoteListener.java +++ b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/listener/VoteListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/service/ICmsVoteService.java b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/service/ICmsVoteService.java index adb9aad0..b8243868 100644 --- a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/service/ICmsVoteService.java +++ b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/service/ICmsVoteService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/service/impl/CmsVoteServiceImpl.java b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/service/impl/CmsVoteServiceImpl.java index 4a977db4..0ee28691 100644 --- a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/service/impl/CmsVoteServiceImpl.java +++ b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/service/impl/CmsVoteServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/template/tag/CmsVoteSubjectTag.java b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/template/tag/CmsVoteSubjectTag.java index e3e379b7..c5cd1315 100644 --- a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/template/tag/CmsVoteSubjectTag.java +++ b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/template/tag/CmsVoteSubjectTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/template/tag/CmsVoteTag.java b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/template/tag/CmsVoteTag.java index 1f22b342..d042209e 100644 --- a/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/template/tag/CmsVoteTag.java +++ b/chestnut-cms/chestnut-cms-vote/src/main/java/com/chestnut/cms/vote/template/tag/CmsVoteTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/pom.xml b/chestnut-cms/chestnut-cms-word/pom.xml index 76fdefe1..bfc1c954 100644 --- a/chestnut-cms/chestnut-cms-word/pom.xml +++ b/chestnut-cms/chestnut-cms-word/pom.xml @@ -7,7 +7,7 @@ com.chestnut chestnut-cms - 1.5.3 + 1.5.4 chestnut-cms-word diff --git a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/WordContentCoreHandler.java b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/WordContentCoreHandler.java index 40a51417..eb29687f 100644 --- a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/WordContentCoreHandler.java +++ b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/WordContentCoreHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/controller/CMSHotWordGroupController.java b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/controller/CMSHotWordGroupController.java index 388efe7e..dbe8dff4 100644 --- a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/controller/CMSHotWordGroupController.java +++ b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/controller/CMSHotWordGroupController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/controller/CMSTagWordGroupController.java b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/controller/CMSTagWordGroupController.java index d676fbe9..c1b1b1bd 100644 --- a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/controller/CMSTagWordGroupController.java +++ b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/controller/CMSTagWordGroupController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/listener/WordEventListener.java b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/listener/WordEventListener.java index 49d0df5c..60aa5d53 100644 --- a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/listener/WordEventListener.java +++ b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/listener/WordEventListener.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/ErrorProneWordEnableProperty.java b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/ErrorProneWordEnableProperty.java index 68c39ffa..5042bf56 100644 --- a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/ErrorProneWordEnableProperty.java +++ b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/ErrorProneWordEnableProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/HotWordGroupsProperty.java b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/HotWordGroupsProperty.java index 064cef3d..0e1a34e9 100644 --- a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/HotWordGroupsProperty.java +++ b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/HotWordGroupsProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/SensitiveWordEnableProperty.java b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/SensitiveWordEnableProperty.java index c3f9c86b..fae3fc9c 100644 --- a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/SensitiveWordEnableProperty.java +++ b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/properties/SensitiveWordEnableProperty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/func/ReplaceHotWord.java b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/func/ReplaceHotWord.java index b77ec610..0efacd33 100644 --- a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/func/ReplaceHotWord.java +++ b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/func/ReplaceHotWord.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/func/ReplaceSensitiveWord.java b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/func/ReplaceSensitiveWord.java index fb080321..55a24092 100644 --- a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/func/ReplaceSensitiveWord.java +++ b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/func/ReplaceSensitiveWord.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/tag/CmsTagWordGroupTag.java b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/tag/CmsTagWordGroupTag.java index 7ba46f29..ac3b4bbd 100644 --- a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/tag/CmsTagWordGroupTag.java +++ b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/tag/CmsTagWordGroupTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/tag/CmsTagWordTag.java b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/tag/CmsTagWordTag.java index 3c9570b0..f32264fa 100644 --- a/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/tag/CmsTagWordTag.java +++ b/chestnut-cms/chestnut-cms-word/src/main/java/com/chestnut/cms/word/template/tag/CmsTagWordTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/test/java/comchestnut/word/FallibleWordTester.java b/chestnut-cms/chestnut-cms-word/src/test/java/comchestnut/word/FallibleWordTester.java index d30e86aa..68fa8f57 100644 --- a/chestnut-cms/chestnut-cms-word/src/test/java/comchestnut/word/FallibleWordTester.java +++ b/chestnut-cms/chestnut-cms-word/src/test/java/comchestnut/word/FallibleWordTester.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/chestnut-cms-word/src/test/java/comchestnut/word/SensitiveWordTester.java b/chestnut-cms/chestnut-cms-word/src/test/java/comchestnut/word/SensitiveWordTester.java index fb84e9c1..fe2d66c8 100644 --- a/chestnut-cms/chestnut-cms-word/src/test/java/comchestnut/word/SensitiveWordTester.java +++ b/chestnut-cms/chestnut-cms-word/src/test/java/comchestnut/word/SensitiveWordTester.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-cms/pom.xml b/chestnut-cms/pom.xml index a94aa05a..c434c569 100644 --- a/chestnut-cms/pom.xml +++ b/chestnut-cms/pom.xml @@ -5,7 +5,7 @@ com.chestnut chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-common/chestnut-common-core/pom.xml b/chestnut-common/chestnut-common-core/pom.xml index 6feec7cc..349acdb7 100644 --- a/chestnut-common/chestnut-common-core/pom.xml +++ b/chestnut-common/chestnut-common-core/pom.xml @@ -5,7 +5,7 @@ chestnut-common com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/annotation/XComment.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/annotation/XComment.java index 939bb40f..4d2424d5 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/annotation/XComment.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/annotation/XComment.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/AsyncTask.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/AsyncTask.java index a8eda43d..25f9d3a9 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/AsyncTask.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/AsyncTask.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/AsyncTaskManager.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/AsyncTaskManager.java index 41b86911..dcf743da 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/AsyncTaskManager.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/AsyncTaskManager.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/enums/TaskStatus.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/enums/TaskStatus.java index 606a9a90..55988b9a 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/enums/TaskStatus.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/async/enums/TaskStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/captcha/CaptchaType.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/captcha/CaptchaType.java index 34d250d0..9c5d05f8 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/captcha/CaptchaType.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/captcha/CaptchaType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/captcha/KaptchaTextCreator.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/captcha/KaptchaTextCreator.java index c768b417..dd50530d 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/captcha/KaptchaTextCreator.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/captcha/KaptchaTextCreator.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/AsyncConfig.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/AsyncConfig.java index 5218737f..5b3b5f09 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/AsyncConfig.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/AsyncConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/CaptchaConfig.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/CaptchaConfig.java index 007c381c..cc8e5603 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/CaptchaConfig.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/CaptchaConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/ChestnutConfig.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/ChestnutConfig.java index fa580ea9..49f6cc05 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/ChestnutConfig.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/ChestnutConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/properties/AsyncProperties.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/properties/AsyncProperties.java index 1cd10801..b001db12 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/properties/AsyncProperties.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/properties/AsyncProperties.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/properties/ChestnutProperties.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/properties/ChestnutProperties.java index 9a8d3f81..b3902cc1 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/properties/ChestnutProperties.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/config/properties/ChestnutProperties.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/R.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/R.java index 6b723c78..960b7af4 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/R.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/R.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeExpandMode.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeExpandMode.java index 02d1d32e..aa5dd94f 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeExpandMode.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeExpandMode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeNode.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeNode.java index 7253a81e..dbe79a54 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeNode.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeNode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeVO.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeVO.java index 8fb6eb5c..873878bb 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeVO.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/domain/TreeVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/CommonErrorCode.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/CommonErrorCode.java index 592b5d9e..c783926a 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/CommonErrorCode.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/CommonErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/ErrorCode.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/ErrorCode.java index 50ad4379..2e278ffd 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/ErrorCode.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/ErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,4 +34,8 @@ public interface ErrorCode { default GlobalException exception(Object... args) { return new GlobalException(this, args); } + + default GlobalException exception(Throwable cause, Object... args) { + return new GlobalException(cause, this, args); + } } diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/GlobalException.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/GlobalException.java index 9e4b6149..077b11b7 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/GlobalException.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/GlobalException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,40 +15,40 @@ */ package com.chestnut.common.exception; +import com.chestnut.common.i18n.I18nUtils; +import lombok.Getter; +import lombok.NoArgsConstructor; import org.springframework.context.i18n.LocaleContextHolder; -import com.chestnut.common.i18n.I18nUtils; - -import lombok.NoArgsConstructor; +import java.io.Serial; /** * 自定义全局异常 */ +@Getter @NoArgsConstructor public class GlobalException extends RuntimeException { + @Serial private static final long serialVersionUID = 1L; private ErrorCode errorCode = CommonErrorCode.UNKNOWN_ERROR; private Object[] errArgs; - public GlobalException(ErrorCode errCode, Object... errArgs) { super(I18nUtils.get(errCode.value(), LocaleContextHolder.getLocale(), errArgs)); this.errorCode = errCode; this.errArgs = errArgs; } + public GlobalException(Throwable cause, ErrorCode errCode, Object... errArgs) { + super(I18nUtils.get(errCode.value(), LocaleContextHolder.getLocale(), errArgs), cause); + this.errorCode = errCode; + this.errArgs = errArgs; + } + public GlobalException(String message) { super(message); } - - public ErrorCode getErrorCode() { - return this.errorCode; - } - - public Object[] getErrArgs() { - return this.errArgs; - } } \ No newline at end of file diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/ImageException.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/ImageException.java index 9981cc5b..f494e4a9 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/ImageException.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/ImageException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/UtilException.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/UtilException.java index 5818b707..9a365658 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/UtilException.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/exception/UtilException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nField.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nField.java index f574a3d5..97f086dd 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nField.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nField.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nPlaceholderHelper.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nPlaceholderHelper.java index d85d8503..3e6fa8be 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nPlaceholderHelper.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nPlaceholderHelper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nUtils.java index cd298616..985960ad 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/i18n/I18nUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/Arith.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/Arith.java index 58ae5381..6ddb5c53 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/Arith.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/Arith.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ArrayUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ArrayUtils.java index 5e4483fa..deca706a 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ArrayUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ArrayUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,6 +18,7 @@ package com.chestnut.common.utils; import java.util.*; import java.util.function.Function; import java.util.function.Predicate; +import java.util.stream.Stream; public class ArrayUtils { @@ -113,10 +114,32 @@ public class ArrayUtils { return map; } + public static List map(T[] array, Function mapper) { + if (Objects.isNull(array)) { + return List.of(); + } + return Stream.of(array).map(mapper).toList(); + } + + public static List mapNotNull(T[] array, Function mapper) { + if (Objects.isNull(array)) { + return List.of(); + } + return Stream.of(array).map(mapper).filter(Objects::nonNull).toList(); + } + public static List mapNotNull(List list, Function mapper) { if (Objects.isNull(list)) { return List.of(); } return list.stream().map(mapper).filter(Objects::nonNull).toList(); } + + public static boolean isEmpty(T[] arr) { + return Objects.isNull(arr) || arr.length == 0; + } + + public static boolean isNotEmpty(T[] arr) { + return !isEmpty(arr); + } } diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/Assert.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/Assert.java index 5ad4a5e5..9346774b 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/Assert.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/Assert.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/CDKeyUtil.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/CDKeyUtil.java index 1204d10d..8cdc1b27 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/CDKeyUtil.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/CDKeyUtil.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ChineseSpelling.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ChineseSpelling.java index f9d556c3..b8b60554 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ChineseSpelling.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ChineseSpelling.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ConvertUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ConvertUtils.java index ebcd6fc3..8af0e17b 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ConvertUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ConvertUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/DateUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/DateUtils.java index 91554742..a03bf3fa 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/DateUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/DateUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/EncryptUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/EncryptUtils.java index f12b02ab..33030e25 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/EncryptUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/EncryptUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/HtmlUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/HtmlUtils.java index 623276c1..64ed1a5d 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/HtmlUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/HtmlUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/HttpUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/HttpUtils.java index 62457d36..45e452e6 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/HttpUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/HttpUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/IP2RegionUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/IP2RegionUtils.java index da1e8f94..da62403e 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/IP2RegionUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/IP2RegionUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/IdUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/IdUtils.java index 88e38967..38f63a1f 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/IdUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/IdUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/JacksonException.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/JacksonException.java index 032e26d4..3d5deb06 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/JacksonException.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/JacksonException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/JacksonUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/JacksonUtils.java index a790d16f..4375abd0 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/JacksonUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/JacksonUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/NumberUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/NumberUtils.java index ecc95726..b89f09ae 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/NumberUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/NumberUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ObjectUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ObjectUtils.java index 53baa8af..50869ebc 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ObjectUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ObjectUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ReflectASMUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ReflectASMUtils.java index b0768c5b..10a8e41f 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ReflectASMUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ReflectASMUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ServletUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ServletUtils.java index be768b18..e253e64d 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ServletUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/ServletUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/SortUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/SortUtils.java index f107e5c8..0f6181e4 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/SortUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/SortUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/SpringUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/SpringUtils.java index 1fb6117a..24fd6d85 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/SpringUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/SpringUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/StringUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/StringUtils.java index abb8e526..579ac0cd 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/StringUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/StringUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/TimeUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/TimeUtils.java index ddb6f62c..8a8d518e 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/TimeUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/TimeUtils.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.common.utils; import java.time.*; diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/file/FileExUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/file/FileExUtils.java index 0db355b2..87de0578 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/file/FileExUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/file/FileExUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,9 +22,7 @@ import org.apache.commons.codec.binary.Hex; import org.apache.commons.io.FilenameUtils; import org.springframework.web.util.HtmlUtils; -import java.io.File; -import java.io.FileFilter; -import java.io.IOException; +import java.io.*; import java.nio.file.Files; import java.nio.file.Paths; import java.util.*; @@ -249,4 +247,24 @@ public class FileExUtils { } } } + + /** + * 读取输入流写入指定路径文件 + * + * @param inputStream 输入流 + * @param output 输出文件 + * @throws IOException e + */ + public static void transfer(InputStream inputStream, File output) throws IOException { + try (BufferedInputStream bis = new BufferedInputStream(inputStream); + FileOutputStream fos = new FileOutputStream(output); + BufferedOutputStream bos = new BufferedOutputStream(fos)) { + byte[] buffer = new byte[8192]; + int bytesRead; + while ((bytesRead = bis.read(buffer)) != -1) { + bos.write(buffer, 0, bytesRead); + } + bos.flush(); + } + } } diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageHelper.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageHelper.java index 7102619b..67faa2fd 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageHelper.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageHelper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageProcessor.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageProcessor.java index ddcf7c55..38210974 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageProcessor.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageProcessor.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.common.utils.image; import com.chestnut.common.utils.image.op.ImageOp; diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageUtils.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageUtils.java index 6f1965ad..e6dafdc1 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageUtils.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/ImageUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/JPGImageProcessor.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/JPGImageProcessor.java index 4c87d051..5a4dd978 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/JPGImageProcessor.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/JPGImageProcessor.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.common.utils.image; import com.chestnut.common.utils.image.op.ImageOp; diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/PNGImageProcessor.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/PNGImageProcessor.java index 3718152e..72ab5de4 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/PNGImageProcessor.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/PNGImageProcessor.java @@ -1,3 +1,18 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.common.utils.image; import com.chestnut.common.utils.StringUtils; diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/Watermark.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/Watermark.java index f43770f7..b5046865 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/Watermark.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/Watermark.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkImage.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkImage.java index bbb0d522..9f0ad392 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkImage.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkImage.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkPosition.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkPosition.java index 5e24370d..45fde764 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkPosition.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkPosition.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkText.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkText.java index 374e24ba..e41bc7ad 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkText.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/WatermarkText.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/CropOp.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/CropOp.java index 62b27025..6bd88070 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/CropOp.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/CropOp.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/FlipOp.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/FlipOp.java index acac5bf1..fb0ff611 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/FlipOp.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/FlipOp.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ImageOp.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ImageOp.java index 5cf66951..a1d1f8f9 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ImageOp.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ImageOp.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ImageWatermarkOp.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ImageWatermarkOp.java index 0f8796e7..824ab9e7 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ImageWatermarkOp.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ImageWatermarkOp.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ResizeOp.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ResizeOp.java index 7bbdc593..dd0f600a 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ResizeOp.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/ResizeOp.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/RotateOp.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/RotateOp.java index 4288cdb2..bcae9775 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/RotateOp.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/RotateOp.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/TextWatermarkOp.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/TextWatermarkOp.java index 86dde1e5..0c5e1b69 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/TextWatermarkOp.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/image/op/TextWatermarkOp.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/LocalDateTimeConverter.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/LocalDateTimeConverter.java index d68f2071..d272f3bf 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/LocalDateTimeConverter.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/LocalDateTimeConverter.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/MapToJSONStringConverter.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/MapToJSONStringConverter.java index ca71a433..1f102c36 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/MapToJSONStringConverter.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/MapToJSONStringConverter.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/StringToSetConverter.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/StringToSetConverter.java index 520e9e3c..e88f5482 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/StringToSetConverter.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/poi/converter/StringToSetConverter.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/sql/SqlUtil.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/sql/SqlUtil.java index 38981d16..132e818e 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/sql/SqlUtil.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/utils/sql/SqlUtil.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/AddGroup.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/AddGroup.java index c507f47b..64320efe 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/AddGroup.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/AddGroup.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/BeanValidators.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/BeanValidators.java index 0f9c68b6..d58c98dd 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/BeanValidators.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/BeanValidators.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/EditGroup.java b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/EditGroup.java index 1172ba96..3f6b041b 100644 --- a/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/EditGroup.java +++ b/chestnut-common/chestnut-common-core/src/main/java/com/chestnut/common/validation/EditGroup.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/pom.xml b/chestnut-common/chestnut-common-datasource/pom.xml index 9b03caac..a2f5fe09 100644 --- a/chestnut-common/chestnut-common-datasource/pom.xml +++ b/chestnut-common/chestnut-common-datasource/pom.xml @@ -5,7 +5,7 @@ chestnut-common com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBConstants.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBConstants.java index c76038f0..6641d6cf 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBConstants.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBConstants.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBErrorCode.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBErrorCode.java index 147f10be..57bd4e86 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBErrorCode.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBService.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBService.java index 6a78380b..595f7a3c 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBService.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/DBService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BackupBaseEntity.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BackupBaseEntity.java index 1c09d6a4..1b0a3c71 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BackupBaseEntity.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BackupBaseEntity.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BackupEntity.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BackupEntity.java index 999131f9..0dcf8400 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BackupEntity.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BackupEntity.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BaseEntity.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BaseEntity.java index 1fcc1690..76489ea5 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BaseEntity.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BaseEntity.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BaseEntityWithLogicDelete.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BaseEntityWithLogicDelete.java index 2ec5e4d3..1d1dad77 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BaseEntityWithLogicDelete.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/BaseEntityWithLogicDelete.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/DBTable.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/DBTable.java index 3140073b..5ac75c3a 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/DBTable.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/DBTable.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/DBTableColumn.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/DBTableColumn.java index 46b820d5..53ff3df6 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/DBTableColumn.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/DBTableColumn.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/IBackupEntity.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/IBackupEntity.java index 563f9bcf..55dcdcd5 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/IBackupEntity.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/IBackupEntity.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/IBackupable.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/IBackupable.java index 5d38b056..7e4480fc 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/IBackupable.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/IBackupable.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/LogicDeleteEntity.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/LogicDeleteEntity.java index 41b5be20..97500d54 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/LogicDeleteEntity.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/domain/LogicDeleteEntity.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/BackupServiceImpl.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/BackupServiceImpl.java index f26de63e..c240eb77 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/BackupServiceImpl.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/BackupServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/HasDAO.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/HasDAO.java index b6a3be6e..c2d46308 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/HasDAO.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/HasDAO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/IBackupService.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/IBackupService.java index ea839217..f49ffec2 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/IBackupService.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/IBackupService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/config/MybatisPlusConfiguration.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/config/MybatisPlusConfiguration.java index 9f56431c..6a661b41 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/config/MybatisPlusConfiguration.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/mybatisplus/config/MybatisPlusConfiguration.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/util/SqlBuilder.java b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/util/SqlBuilder.java index ba2e343d..b8921e4c 100644 --- a/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/util/SqlBuilder.java +++ b/chestnut-common/chestnut-common-datasource/src/main/java/com/chestnut/common/db/util/SqlBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/pom.xml b/chestnut-common/chestnut-common-extend/pom.xml index 6eaa8639..f9328178 100644 --- a/chestnut-common/chestnut-common-extend/pom.xml +++ b/chestnut-common/chestnut-common-extend/pom.xml @@ -5,7 +5,7 @@ chestnut-common com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/ExtendConstants.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/ExtendConstants.java index b3e79f13..1bf266cb 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/ExtendConstants.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/ExtendConstants.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/RateLimiter.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/RateLimiter.java index 9e9145c4..63276f63 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/RateLimiter.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/RateLimiter.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/RepeatSubmit.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/RepeatSubmit.java index 971de8df..988155f1 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/RepeatSubmit.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/RepeatSubmit.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/XssIgnore.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/XssIgnore.java index 4ff3d5ba..d99ef9b5 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/XssIgnore.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/annotation/XssIgnore.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/aspectj/RateLimiterAspect.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/aspectj/RateLimiterAspect.java index 7f48c6be..168a4cad 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/aspectj/RateLimiterAspect.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/aspectj/RateLimiterAspect.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/aspectj/RepeatSubmitAspect.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/aspectj/RepeatSubmitAspect.java index 8bf09e8f..7027b81b 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/aspectj/RepeatSubmitAspect.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/aspectj/RepeatSubmitAspect.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/RateLimiterConfig.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/RateLimiterConfig.java index 3f46c28a..477726d7 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/RateLimiterConfig.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/RateLimiterConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/RepeatSubmitConfig.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/RepeatSubmitConfig.java index 41e4dfbe..db3da218 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/RepeatSubmitConfig.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/RepeatSubmitConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/XssConfig.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/XssConfig.java index 7fee7837..a0c05570 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/XssConfig.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/XssConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/properties/XssProperties.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/properties/XssProperties.java index a9544759..ae848c34 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/properties/XssProperties.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/config/properties/XssProperties.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/enums/LimitType.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/enums/LimitType.java index 4c94025c..217e2987 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/enums/LimitType.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/enums/LimitType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/enums/XssMode.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/enums/XssMode.java index d25f16af..f5919027 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/enums/XssMode.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/enums/XssMode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/exception/RateLimiterErrorCode.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/exception/RateLimiterErrorCode.java index 70e4440b..3dbc5aa3 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/exception/RateLimiterErrorCode.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/exception/RateLimiterErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/exception/RepeatSubmitErrorCode.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/exception/RepeatSubmitErrorCode.java index 402cdc4d..6ebec5f9 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/exception/RepeatSubmitErrorCode.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/exception/RepeatSubmitErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssContextHolder.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssContextHolder.java index ff7a5935..edfdc38e 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssContextHolder.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssContextHolder.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssDeserializer.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssDeserializer.java index f52e7c9f..1a2dc20b 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssDeserializer.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssDeserializer.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssHttpServletRequestWrapper.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssHttpServletRequestWrapper.java index 98c3350c..6318d92b 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssHttpServletRequestWrapper.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssHttpServletRequestWrapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssInterceptor.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssInterceptor.java index daf5c055..b1f10547 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssInterceptor.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssInterceptor.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssOncePerRequestFilter.java b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssOncePerRequestFilter.java index 1ded6be8..bd9d457e 100644 --- a/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssOncePerRequestFilter.java +++ b/chestnut-common/chestnut-common-extend/src/main/java/com/chestnut/common/extend/xss/XssOncePerRequestFilter.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-log/pom.xml b/chestnut-common/chestnut-common-log/pom.xml index 43d0e85d..b1efcbc1 100644 --- a/chestnut-common/chestnut-common-log/pom.xml +++ b/chestnut-common/chestnut-common-log/pom.xml @@ -5,7 +5,7 @@ chestnut-common com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/ILogHandler.java b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/ILogHandler.java index 9827d843..8c5f57c6 100644 --- a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/ILogHandler.java +++ b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/ILogHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/ILogType.java b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/ILogType.java index 01c29b8c..4312e832 100644 --- a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/ILogType.java +++ b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/ILogType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/LogDetail.java b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/LogDetail.java index 15c09a71..70e4d4be 100644 --- a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/LogDetail.java +++ b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/LogDetail.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/annotation/Log.java b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/annotation/Log.java index 1fe47f52..254f54fd 100644 --- a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/annotation/Log.java +++ b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/annotation/Log.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/aspectj/LogAspect.java b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/aspectj/LogAspect.java index ad39ca98..a586a70c 100644 --- a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/aspectj/LogAspect.java +++ b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/aspectj/LogAspect.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/enums/BusinessType.java b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/enums/BusinessType.java index e0d622c4..4ade0129 100644 --- a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/enums/BusinessType.java +++ b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/enums/BusinessType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/restful/RestfulLogData.java b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/restful/RestfulLogData.java index 5e8b9a3f..211bd70a 100644 --- a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/restful/RestfulLogData.java +++ b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/restful/RestfulLogData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/restful/RestfulLogType.java b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/restful/RestfulLogType.java index 9385953c..a8b9e46f 100644 --- a/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/restful/RestfulLogType.java +++ b/chestnut-common/chestnut-common-log/src/main/java/com/chestnut/common/log/restful/RestfulLogType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-redis/pom.xml b/chestnut-common/chestnut-common-redis/pom.xml index bff3de72..dae05e55 100644 --- a/chestnut-common/chestnut-common-redis/pom.xml +++ b/chestnut-common/chestnut-common-redis/pom.xml @@ -5,7 +5,7 @@ chestnut-common com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/CacheObject.java b/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/CacheObject.java index 522abed8..830b1540 100644 --- a/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/CacheObject.java +++ b/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/CacheObject.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/IMonitoredCache.java b/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/IMonitoredCache.java index 90b4cb77..dfc52241 100644 --- a/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/IMonitoredCache.java +++ b/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/IMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/RedisCache.java b/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/RedisCache.java index f1453239..767d6a05 100644 --- a/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/RedisCache.java +++ b/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/RedisCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/config/RedisConfig.java b/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/config/RedisConfig.java index 0f63c48a..9d8a72b1 100644 --- a/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/config/RedisConfig.java +++ b/chestnut-common/chestnut-common-redis/src/main/java/com/chestnut/common/redis/config/RedisConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/pom.xml b/chestnut-common/chestnut-common-security/pom.xml index 6cd5161a..8a998027 100644 --- a/chestnut-common/chestnut-common-security/pom.xml +++ b/chestnut-common/chestnut-common-security/pom.xml @@ -5,7 +5,7 @@ chestnut-common com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/IUserType.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/IUserType.java index 04423f1b..52c69d8b 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/IUserType.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/IUserType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SaTokenDaoRedisImpl.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SaTokenDaoRedisImpl.java index 99ca6ab4..a1bec351 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SaTokenDaoRedisImpl.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SaTokenDaoRedisImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SecurityService.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SecurityService.java index 22b927ca..e858ee30 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SecurityService.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SecurityService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SecurityUtils.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SecurityUtils.java index 956b1f9d..1c82fba0 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SecurityUtils.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/SecurityUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/StpXyInterfaceImpl.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/StpXyInterfaceImpl.java index b6b9b5a7..3dc15e22 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/StpXyInterfaceImpl.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/StpXyInterfaceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/anno/ExcelExportable.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/anno/ExcelExportable.java index 8a320a4b..c3fe5c9b 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/anno/ExcelExportable.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/anno/ExcelExportable.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/anno/Priv.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/anno/Priv.java index 40eb6cce..40f54c83 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/anno/Priv.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/anno/Priv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/AuthEvaluator.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/AuthEvaluator.java index 304878d2..b3180d9e 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/AuthEvaluator.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/AuthEvaluator.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/ExcelExportAspect.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/ExcelExportAspect.java index 2807059a..e23e9ca8 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/ExcelExportAspect.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/ExcelExportAspect.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/SaCheckAspect.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/SaCheckAspect.java index 24fc3e62..3f4eefcd 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/SaCheckAspect.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/aspectj/SaCheckAspect.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/ChestnutPageConfig.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/ChestnutPageConfig.java index 1b6b9bb5..7bbcc16b 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/ChestnutPageConfig.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/ChestnutPageConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/SaTokenConfig.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/SaTokenConfig.java index a41f1ddb..5fd9c640 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/SaTokenConfig.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/SaTokenConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/properties/ChestnutPageProperties.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/properties/ChestnutPageProperties.java index 50e1e99d..d678a602 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/properties/ChestnutPageProperties.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/config/properties/ChestnutPageProperties.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/domain/BaseDTO.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/domain/BaseDTO.java index 92295a93..312397df 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/domain/BaseDTO.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/domain/BaseDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/domain/LoginUser.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/domain/LoginUser.java index b9ffc60d..dbcc6643 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/domain/LoginUser.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/domain/LoginUser.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/enums/DeviceType.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/enums/DeviceType.java index 4d44361e..fdc7e597 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/enums/DeviceType.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/enums/DeviceType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/DemoModeException.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/DemoModeException.java index 179a32e8..84f12b42 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/DemoModeException.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/DemoModeException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/SecurityErrorCode.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/SecurityErrorCode.java index e8018272..bb90e6c2 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/SecurityErrorCode.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/SecurityErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/handler/GlobalExceptionHandler.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/handler/GlobalExceptionHandler.java index e326da43..64edc3ed 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/handler/GlobalExceptionHandler.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/exception/handler/GlobalExceptionHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/BaseRestController.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/BaseRestController.java index c9e1c8ee..1c058bf5 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/BaseRestController.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/BaseRestController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/ExcelExportRequestMappingHandlerMapping.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/ExcelExportRequestMappingHandlerMapping.java index ee5d7def..3fd50585 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/ExcelExportRequestMappingHandlerMapping.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/ExcelExportRequestMappingHandlerMapping.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/PageRequest.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/PageRequest.java index 6444aebf..f795efd5 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/PageRequest.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/PageRequest.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/TableData.java b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/TableData.java index 1ca46da6..3d388ef8 100644 --- a/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/TableData.java +++ b/chestnut-common/chestnut-common-security/src/main/java/com/chestnut/common/security/web/TableData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/pom.xml b/chestnut-common/chestnut-common-staticize/pom.xml index e0609729..6ec15776 100644 --- a/chestnut-common/chestnut-common-staticize/pom.xml +++ b/chestnut-common/chestnut-common-staticize/pom.xml @@ -5,7 +5,7 @@ chestnut-common com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/FreeMarkerUtils.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/FreeMarkerUtils.java index 1c584718..62628f64 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/FreeMarkerUtils.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/FreeMarkerUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/StaticizeConstants.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/StaticizeConstants.java index 1d98eac4..0f04200c 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/StaticizeConstants.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/StaticizeConstants.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/StaticizeService.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/StaticizeService.java index 6f07d6ad..abcd35a0 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/StaticizeService.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/StaticizeService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/config/FreeMarkerConfig.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/config/FreeMarkerConfig.java index a7aebfdf..a6f10e24 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/config/FreeMarkerConfig.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/config/FreeMarkerConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/config/properties/FreeMarkerProperties.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/config/properties/FreeMarkerProperties.java index d2aad7e3..f16ee959 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/config/properties/FreeMarkerProperties.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/config/properties/FreeMarkerProperties.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/core/TemplateContext.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/core/TemplateContext.java index 24d869a4..d15d8250 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/core/TemplateContext.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/core/TemplateContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/enums/TagAttrDataType.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/enums/TagAttrDataType.java index 686d5df4..439fde65 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/enums/TagAttrDataType.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/enums/TagAttrDataType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/DuplicatePageFlagException.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/DuplicatePageFlagException.java index 60d545b5..ebae2812 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/DuplicatePageFlagException.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/DuplicatePageFlagException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/IncludeTemplateNotFoundException.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/IncludeTemplateNotFoundException.java index 3731b7da..d8a6644d 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/IncludeTemplateNotFoundException.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/IncludeTemplateNotFoundException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidFunctionArgumentException.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidFunctionArgumentException.java index e093a9f2..d3fe1963 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidFunctionArgumentException.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidFunctionArgumentException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidTagAttrTypeException.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidTagAttrTypeException.java index 8b71b767..db6eedb4 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidTagAttrTypeException.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidTagAttrTypeException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidTagAttrValueException.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidTagAttrValueException.java index 86aa8df2..7f64e6d8 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidTagAttrValueException.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/InvalidTagAttrValueException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/MissionTagAttributeException.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/MissionTagAttributeException.java index 57b27ed2..0dff7a54 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/MissionTagAttributeException.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/MissionTagAttributeException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/PageIndexOutOfBoundsException.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/PageIndexOutOfBoundsException.java index 4b35be1a..e61c214a 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/PageIndexOutOfBoundsException.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/exception/PageIndexOutOfBoundsException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/AbstractFunc.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/AbstractFunc.java index 361869e5..da85dc31 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/AbstractFunc.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/AbstractFunc.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/IFunction.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/IFunction.java index fda7e0c9..fc4bd3e9 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/IFunction.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/IFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/ClearHtmlTagFunction.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/ClearHtmlTagFunction.java index b1319dbe..09bc661e 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/ClearHtmlTagFunction.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/ClearHtmlTagFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/DateFormatFunction.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/DateFormatFunction.java index 652d7b2d..ca04f220 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/DateFormatFunction.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/DateFormatFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/GetDomainFunction.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/GetDomainFunction.java index 1d151d58..8b1dff98 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/GetDomainFunction.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/GetDomainFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/GroupByFunction.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/GroupByFunction.java index 93c58823..9229a8f2 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/GroupByFunction.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/GroupByFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/HtmlUnescapeFunction.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/HtmlUnescapeFunction.java index ef0f58eb..5b674c05 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/HtmlUnescapeFunction.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/HtmlUnescapeFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/MaxFunction.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/MaxFunction.java index f3ccb70b..60f525fc 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/MaxFunction.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/MaxFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/MinFunction.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/MinFunction.java index 8abcec8f..2f69f88a 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/MinFunction.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/MinFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/RandomIntFunction.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/RandomIntFunction.java index dd7d631b..14e52343 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/RandomIntFunction.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/RandomIntFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/URLParametersFunction.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/URLParametersFunction.java index 0512893a..23daad0c 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/URLParametersFunction.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/func/impl/URLParametersFunction.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/AbstractListTag.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/AbstractListTag.java index 2206b629..585d56f9 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/AbstractListTag.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/AbstractListTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/AbstractTag.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/AbstractTag.java index bfcbaa55..56d2834f 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/AbstractTag.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/AbstractTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/ITag.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/ITag.java index 2485de72..86cded60 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/ITag.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/ITag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/TagAttr.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/TagAttr.java index a63d4d45..42559365 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/TagAttr.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/TagAttr.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/TagAttrOption.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/TagAttrOption.java index 437fc7b7..6ea86b8d 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/TagAttrOption.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/TagAttrOption.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/impl/PageBarTag.java b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/impl/PageBarTag.java index afc62510..e20b1218 100644 --- a/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/impl/PageBarTag.java +++ b/chestnut-common/chestnut-common-staticize/src/main/java/com/chestnut/common/staticize/tag/impl/PageBarTag.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/pom.xml b/chestnut-common/chestnut-common-storage/pom.xml index 65043f2d..9613844c 100644 --- a/chestnut-common/chestnut-common-storage/pom.xml +++ b/chestnut-common/chestnut-common-storage/pom.xml @@ -5,7 +5,7 @@ chestnut-common com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/IFileStorageType.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/IFileStorageType.java index cdc5f6fd..e9efe423 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/IFileStorageType.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/IFileStorageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/OSSClient.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/OSSClient.java index e6e6edf6..43839f05 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/OSSClient.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/OSSClient.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageCopyArgs.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageCopyArgs.java index cb36e212..b4e14ef9 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageCopyArgs.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageCopyArgs.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageCreateBucketArgs.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageCreateBucketArgs.java index 8976c0c9..05b8924a 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageCreateBucketArgs.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageCreateBucketArgs.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageExistArgs.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageExistArgs.java index 98506428..25302971 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageExistArgs.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageExistArgs.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageListArgs.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageListArgs.java index a67ebbd1..43ed5d81 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageListArgs.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageListArgs.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageMoveArgs.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageMoveArgs.java index 1e48bbe0..05c67e83 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageMoveArgs.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageMoveArgs.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageReadArgs.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageReadArgs.java index f2b35490..f26c5746 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageReadArgs.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageReadArgs.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageRemoveArgs.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageRemoveArgs.java index b6c4c480..59b01cc6 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageRemoveArgs.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageRemoveArgs.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageWriteArgs.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageWriteArgs.java index 195064e0..2847adc6 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageWriteArgs.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/StorageWriteArgs.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/cos/TencentStorageType.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/cos/TencentStorageType.java index 30114fd6..941704a7 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/cos/TencentStorageType.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/cos/TencentStorageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/exception/FileStorageException.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/exception/FileStorageException.java index 75885eda..e53248f6 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/exception/FileStorageException.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/exception/FileStorageException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/exception/StorageErrorCode.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/exception/StorageErrorCode.java index fa35e3f4..60306a46 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/exception/StorageErrorCode.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/exception/StorageErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/local/LocalFileStorageType.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/local/LocalFileStorageType.java index 52ab8e61..e6c9ba8e 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/local/LocalFileStorageType.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/local/LocalFileStorageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/minio/MinIOFileStorageType.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/minio/MinIOFileStorageType.java index 508745b1..08dc31d4 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/minio/MinIOFileStorageType.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/minio/MinIOFileStorageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/oss/AliyunFileStorageType.java b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/oss/AliyunFileStorageType.java index 2c9e28c7..0e2b7b70 100644 --- a/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/oss/AliyunFileStorageType.java +++ b/chestnut-common/chestnut-common-storage/src/main/java/com/chestnut/common/storage/oss/AliyunFileStorageType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-common/pom.xml b/chestnut-common/pom.xml index 92b5b8a7..cd02c775 100644 --- a/chestnut-common/pom.xml +++ b/chestnut-common/pom.xml @@ -5,7 +5,7 @@ com.chestnut chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-modules/chestnut-comment/pom.xml b/chestnut-modules/chestnut-comment/pom.xml index 87233be0..4d08cd3d 100644 --- a/chestnut-modules/chestnut-comment/pom.xml +++ b/chestnut-modules/chestnut-comment/pom.xml @@ -3,7 +3,7 @@ chestnut-modules com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/CommentConsts.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/CommentConsts.java index 6de74f00..6be37796 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/CommentConsts.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/CommentConsts.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/CommentController.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/CommentController.java index 12d61b69..2aeea33c 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/CommentController.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/CommentController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/front/CommentApiController.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/front/CommentApiController.java index 941cfe73..011d87e3 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/front/CommentApiController.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/front/CommentApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/front/MemberCommentApiController.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/front/MemberCommentApiController.java index e3f158b8..197e3023 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/front/MemberCommentApiController.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/controller/front/MemberCommentApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/Comment.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/Comment.java index 53cb2d2a..9f6fcf5b 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/Comment.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/Comment.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/CommentLike.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/CommentLike.java index bbcba60a..20627d46 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/CommentLike.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/CommentLike.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/AuditCommentDTO.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/AuditCommentDTO.java index 37bcb7cb..312af793 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/AuditCommentDTO.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/AuditCommentDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/SubmitCommentDTO.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/SubmitCommentDTO.java index 5a20efa9..161bfdcf 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/SubmitCommentDTO.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/SubmitCommentDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/UpdateMyCommentDTO.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/UpdateMyCommentDTO.java index 05dc06c6..1ea2f2fd 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/UpdateMyCommentDTO.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/dto/UpdateMyCommentDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/vo/CommentVO.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/vo/CommentVO.java index 47c35a5e..3a77f2ad 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/vo/CommentVO.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/domain/vo/CommentVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/exception/CommentErrorCode.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/exception/CommentErrorCode.java index 9f537505..9babbfee 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/exception/CommentErrorCode.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/exception/CommentErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/fixed/dict/CommentAuditStatus.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/fixed/dict/CommentAuditStatus.java index 04d92304..8e4b6d8f 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/fixed/dict/CommentAuditStatus.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/fixed/dict/CommentAuditStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/listener/event/AfterCommentSubmitEvent.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/listener/event/AfterCommentSubmitEvent.java index ee3cfe9b..5bdeaa25 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/listener/event/AfterCommentSubmitEvent.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/listener/event/AfterCommentSubmitEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/listener/event/BeforeCommentSubmitEvent.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/listener/event/BeforeCommentSubmitEvent.java index 89122b6e..cc0fa09c 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/listener/event/BeforeCommentSubmitEvent.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/listener/event/BeforeCommentSubmitEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/mapper/CommentLikeMapper.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/mapper/CommentLikeMapper.java index b7777e03..c76ac7a0 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/mapper/CommentLikeMapper.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/mapper/CommentLikeMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/mapper/CommentMapper.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/mapper/CommentMapper.java index 627d8b0f..ee0b993f 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/mapper/CommentMapper.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/mapper/CommentMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentExpOperation.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentExpOperation.java index 14a3a045..b09bba00 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentExpOperation.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentExpOperation.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentLikeExpOperation.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentLikeExpOperation.java index 8b7348a7..3e55c479 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentLikeExpOperation.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentLikeExpOperation.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentMemberStatData.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentMemberStatData.java index 10b19e67..93a98ee9 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentMemberStatData.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/member/CommentMemberStatData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/permission/CommentPriv.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/permission/CommentPriv.java index 48423c4b..9f509ce7 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/permission/CommentPriv.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/permission/CommentPriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentApiService.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentApiService.java index 79e72f90..233b6950 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentApiService.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentApiService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentLikeService.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentLikeService.java index ffbc4fbf..8c7be07f 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentLikeService.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentLikeService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentService.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentService.java index ee702156..7ce2d0c3 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentService.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/ICommentService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentApiServiceImpl.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentApiServiceImpl.java index 22e11c98..9a342b06 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentApiServiceImpl.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentApiServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentLikeServiceImpl.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentLikeServiceImpl.java index 43ecae48..fdf91449 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentLikeServiceImpl.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentLikeServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentServiceImpl.java b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentServiceImpl.java index 0d228272..61002488 100644 --- a/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentServiceImpl.java +++ b/chestnut-modules/chestnut-comment/src/main/java/com/chestnut/comment/service/impl/CommentServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/pom.xml b/chestnut-modules/chestnut-generator/pom.xml index 9304b6cf..7b4b1de8 100644 --- a/chestnut-modules/chestnut-generator/pom.xml +++ b/chestnut-modules/chestnut-generator/pom.xml @@ -5,7 +5,7 @@ chestnut-modules com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/GenConstants.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/GenConstants.java index 748d302b..7a0222f2 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/GenConstants.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/GenConstants.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/config/GenConfig.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/config/GenConfig.java index af824a1b..485b808a 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/config/GenConfig.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/config/GenConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/controller/GenController.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/controller/GenController.java index 70bd5b4d..15200f8b 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/controller/GenController.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/controller/GenController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/domain/GenTable.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/domain/GenTable.java index 5437be1b..826174ff 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/domain/GenTable.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/domain/GenTable.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/domain/GenTableColumn.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/domain/GenTableColumn.java index 3657dfb3..a76849a0 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/domain/GenTableColumn.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/domain/GenTableColumn.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/exception/GenErrorCode.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/exception/GenErrorCode.java index 037f3b3d..d1946fb2 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/exception/GenErrorCode.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/exception/GenErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/mapper/GenTableColumnMapper.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/mapper/GenTableColumnMapper.java index 35d3afa5..4e81c68a 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/mapper/GenTableColumnMapper.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/mapper/GenTableColumnMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/mapper/GenTableMapper.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/mapper/GenTableMapper.java index 84e52953..1553c304 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/mapper/GenTableMapper.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/mapper/GenTableMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/permission/GenMenuPriv.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/permission/GenMenuPriv.java index 40c1f232..35e93c67 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/permission/GenMenuPriv.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/permission/GenMenuPriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/GenTableColumnServiceImpl.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/GenTableColumnServiceImpl.java index d750d765..5077590d 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/GenTableColumnServiceImpl.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/GenTableColumnServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/GenTableServiceImpl.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/GenTableServiceImpl.java index baa99241..075dfc2e 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/GenTableServiceImpl.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/GenTableServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/IGenTableColumnService.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/IGenTableColumnService.java index 5d52d240..442342f7 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/IGenTableColumnService.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/IGenTableColumnService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/IGenTableService.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/IGenTableService.java index 030da03f..3644124d 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/IGenTableService.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/service/IGenTableService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/GenUtils.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/GenUtils.java index 7416c298..08b114fd 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/GenUtils.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/GenUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/VelocityInitializer.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/VelocityInitializer.java index fd731eb4..be9796e5 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/VelocityInitializer.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/VelocityInitializer.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/VelocityUtils.java b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/VelocityUtils.java index 8420a1ce..1e03f93d 100644 --- a/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/VelocityUtils.java +++ b/chestnut-modules/chestnut-generator/src/main/java/com/chestnut/generator/util/VelocityUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/pom.xml b/chestnut-modules/chestnut-member/pom.xml index 462e0010..c6c94d87 100644 --- a/chestnut-modules/chestnut-member/pom.xml +++ b/chestnut-modules/chestnut-member/pom.xml @@ -3,7 +3,7 @@ chestnut-modules com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberExpOpMonitoredCache.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberExpOpMonitoredCache.java index dc8cb279..01600bf8 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberExpOpMonitoredCache.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberExpOpMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberLevelMonitoredCache.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberLevelMonitoredCache.java index d5adf14e..e844c54e 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberLevelMonitoredCache.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberLevelMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberMonitoredCache.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberMonitoredCache.java index cf11787e..3f342c6d 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberMonitoredCache.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/cache/MemberMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/config/MemberConfig.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/config/MemberConfig.java index 0eaef980..e1ee5762 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/config/MemberConfig.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/config/MemberConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/config/properties/MemberProperties.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/config/properties/MemberProperties.java index ae92c0e5..5765262a 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/config/properties/MemberProperties.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/config/properties/MemberProperties.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberController.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberController.java index f3cacefe..6b56d8c0 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberController.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberExpConfigController.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberExpConfigController.java index bc169d3c..294ad8b0 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberExpConfigController.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberExpConfigController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberLevelConfigController.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberLevelConfigController.java index b332945d..facf14c9 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberLevelConfigController.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/MemberLevelConfigController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberFavoritesApiController.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberFavoritesApiController.java index 5234ffc5..d687f9d7 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberFavoritesApiController.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberFavoritesApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberFollowApiController.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberFollowApiController.java index 12ac0857..9032ab31 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberFollowApiController.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberFollowApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLevelApiController.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLevelApiController.java index 1eeaec08..c31b7b6f 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLevelApiController.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLevelApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLikeApiController.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLikeApiController.java index 81c40e6a..c71b9510 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLikeApiController.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLikeApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLoginApiController.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLoginApiController.java index 5b03cf89..7fdf450f 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLoginApiController.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberLoginApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberSignInApiController.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberSignInApiController.java index d10fa204..444a79f6 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberSignInApiController.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/controller/front/MemberSignInApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/IMemberStatData.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/IMemberStatData.java index 193021c8..4420b36a 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/IMemberStatData.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/IMemberStatData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/IRegisterType.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/IRegisterType.java index 8ca91d0f..977e263a 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/IRegisterType.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/IRegisterType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/MemberPrivType.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/MemberPrivType.java index a8e5665f..8f5f8a3e 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/MemberPrivType.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/MemberPrivType.java @@ -1,18 +1,18 @@ -/* - * Copyright 2022-2024 兮玥(190785909@qq.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.member.core; import java.util.Set; diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/FollowMemberStatData.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/FollowMemberStatData.java index df1250f9..212cace9 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/FollowMemberStatData.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/FollowMemberStatData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/FollowerMemberStatData.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/FollowerMemberStatData.java index 3e4b3b9e..177c5fb6 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/FollowerMemberStatData.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/FollowerMemberStatData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/MemberMenuPrivType.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/MemberMenuPrivType.java index cd63982f..88fbae0e 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/MemberMenuPrivType.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/core/impl/MemberMenuPrivType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/Member.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/Member.java index 37e1cdc3..b3d9246d 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/Member.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/Member.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberExpConfig.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberExpConfig.java index 79c4daa4..89aa516d 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberExpConfig.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberExpConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberFavorites.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberFavorites.java index db4bf080..a86f710f 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberFavorites.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberFavorites.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberFollow.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberFollow.java index e77ba877..5bbe1753 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberFollow.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberFollow.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevel.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevel.java index e7d0b06b..a62c1f6d 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevel.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevel.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevelConfig.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevelConfig.java index e9cf0e17..1017fb72 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevelConfig.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevelConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevelExpLog.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevelExpLog.java index 9455a1fa..21707f7b 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevelExpLog.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLevelExpLog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLike.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLike.java index eab1a29e..066548ec 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLike.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberLike.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberSignInLog.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberSignInLog.java index 01c8c551..e635ec41 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberSignInLog.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberSignInLog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberStatData.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberStatData.java index 8ceb489a..e70e2a59 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberStatData.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/MemberStatData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/ChangeMemberEmailDTO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/ChangeMemberEmailDTO.java index b2e57454..f0b552e5 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/ChangeMemberEmailDTO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/ChangeMemberEmailDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/FavoriteDTO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/FavoriteDTO.java index 021fd91b..6c5fc7a0 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/FavoriteDTO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/FavoriteDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/LevelConfigDTO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/LevelConfigDTO.java index e50d365e..4fd90782 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/LevelConfigDTO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/LevelConfigDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/LikeDTO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/LikeDTO.java index 6e14c548..ef93ba60 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/LikeDTO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/LikeDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberComplementHistoryDTO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberComplementHistoryDTO.java index 07f83245..eb651d76 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberComplementHistoryDTO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberComplementHistoryDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberDTO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberDTO.java index 705bcb02..a7ee3bfa 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberDTO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberInfoDTO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberInfoDTO.java index e83a8bbf..1ca5038f 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberInfoDTO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberInfoDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberLoginDTO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberLoginDTO.java index 21b0a830..dd75af79 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberLoginDTO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberLoginDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberRegisterDTO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberRegisterDTO.java index a74925a4..88fec992 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberRegisterDTO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/MemberRegisterDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/ResetMemberPasswordDTO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/ResetMemberPasswordDTO.java index f48042e3..93bfe40c 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/ResetMemberPasswordDTO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/ResetMemberPasswordDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/UploadMemberAvatarDTO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/UploadMemberAvatarDTO.java index 6b919f8a..7b5c6387 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/UploadMemberAvatarDTO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/dto/UploadMemberAvatarDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/ExpOperationVO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/ExpOperationVO.java index 8439ceee..f04bb111 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/ExpOperationVO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/ExpOperationVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/LevelTypeVO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/LevelTypeVO.java index 31828cb1..83bb1df5 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/LevelTypeVO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/LevelTypeVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberCache.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberCache.java index 56652183..010d207d 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberCache.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberLevelVO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberLevelVO.java index ecd34019..599c44b8 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberLevelVO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberLevelVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberListVO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberListVO.java index 39904a44..9a8baf0b 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberListVO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberListVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberMenuVO.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberMenuVO.java index 26b36452..981ae10e 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberMenuVO.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/domain/vo/MemberMenuVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/exception/MemberErrorCode.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/exception/MemberErrorCode.java index 3f05357e..4e599b62 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/exception/MemberErrorCode.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/exception/MemberErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/config/EncryptMemberPhoneAndEmail.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/config/EncryptMemberPhoneAndEmail.java index 0e3a4051..20a42e92 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/config/EncryptMemberPhoneAndEmail.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/config/EncryptMemberPhoneAndEmail.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/config/MemberResourcePrefix.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/config/MemberResourcePrefix.java index 8f8d84e0..b009a293 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/config/MemberResourcePrefix.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/config/MemberResourcePrefix.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/dict/MemberStatus.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/dict/MemberStatus.java index 77ab5a55..d3fc5ee6 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/dict/MemberStatus.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/fixed/dict/MemberStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/IExpOperation.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/IExpOperation.java index dae32377..bc5e0161 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/IExpOperation.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/IExpOperation.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/ILevelType.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/ILevelType.java index 82bea092..5311e937 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/ILevelType.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/ILevelType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/LevelManager.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/LevelManager.java index 35eab8d0..fb6bd6cc 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/LevelManager.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/LevelManager.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/impl/DefaultLevelType.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/impl/DefaultLevelType.java index 09406616..634be803 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/impl/DefaultLevelType.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/impl/DefaultLevelType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/impl/SignInExpOperation.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/impl/SignInExpOperation.java index 14edb7b0..846a84a1 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/impl/SignInExpOperation.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/level/impl/SignInExpOperation.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberCancelFavoriteEvent.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberCancelFavoriteEvent.java index a2f36e8f..9faa6ac7 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberCancelFavoriteEvent.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberCancelFavoriteEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberCancelLikeEvent.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberCancelLikeEvent.java index 1e64b212..8e656969 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberCancelLikeEvent.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberCancelLikeEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberFavoriteEvent.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberFavoriteEvent.java index 9d6b3a9f..1b72d0da 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberFavoriteEvent.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberFavoriteEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberLikeEvent.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberLikeEvent.java index fa425ae5..8eedde1d 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberLikeEvent.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/AfterMemberLikeEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/BeforeMemberFavoriteEvent.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/BeforeMemberFavoriteEvent.java index dd517066..74798c9b 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/BeforeMemberFavoriteEvent.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/BeforeMemberFavoriteEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/BeforeMemberLikeEvent.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/BeforeMemberLikeEvent.java index c402a7c7..521aad7f 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/BeforeMemberLikeEvent.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/listener/event/BeforeMemberLikeEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberExpConfigMapper.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberExpConfigMapper.java index f17cfcc7..d3a8453c 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberExpConfigMapper.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberExpConfigMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberFavoritesMapper.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberFavoritesMapper.java index 720678ef..3ebf0967 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberFavoritesMapper.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberFavoritesMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberFollowMapper.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberFollowMapper.java index 10cfe358..bf230ef7 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberFollowMapper.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberFollowMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelConfigMapper.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelConfigMapper.java index 58a7bb3c..a3e50db6 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelConfigMapper.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelConfigMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelExpLogMapper.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelExpLogMapper.java index f8019fa7..9e27d504 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelExpLogMapper.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelExpLogMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelMapper.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelMapper.java index 3c997668..5f5480e4 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelMapper.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLevelMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLikeMapper.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLikeMapper.java index 9313f61a..15186392 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLikeMapper.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberLikeMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberMapper.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberMapper.java index a521e5db..0c01b94a 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberMapper.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberSignInLogMapper.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberSignInLogMapper.java index 7bcf9342..a8a5f8d1 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberSignInLogMapper.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberSignInLogMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberStatDataMapper.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberStatDataMapper.java index e42d3475..fd5f69bf 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberStatDataMapper.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/mapper/MemberStatDataMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/permission/MemberPriv.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/permission/MemberPriv.java index 1aea5e05..de2b0430 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/permission/MemberPriv.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/permission/MemberPriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/privilege/MemberPrivService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/privilege/MemberPrivService.java index 95638e49..d8f640ae 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/privilege/MemberPrivService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/privilege/MemberPrivService.java @@ -1,18 +1,18 @@ -/* - * Copyright 2022-2024 兮玥(190785909@qq.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.member.privilege; import lombok.RequiredArgsConstructor; diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/MemberLoginService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/MemberLoginService.java index 964c5255..47d4d0b3 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/MemberLoginService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/MemberLoginService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/MemberUserType.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/MemberUserType.java index 9a5872c0..a28b50fc 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/MemberUserType.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/MemberUserType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/StpMemberUtil.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/StpMemberUtil.java index 8083f6c3..7f19d090 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/StpMemberUtil.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/security/StpMemberUtil.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberExpConfigService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberExpConfigService.java index 2d258f37..3b06ce47 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberExpConfigService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberExpConfigService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberFavoritesService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberFavoritesService.java index 611f4493..2eb009da 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberFavoritesService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberFavoritesService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberFollowService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberFollowService.java index e4f16a0e..4b453ece 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberFollowService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberFollowService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelConfigService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelConfigService.java index a0771404..5699a05c 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelConfigService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelConfigService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelExpLogService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelExpLogService.java index f3c40b8a..023a0cfa 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelExpLogService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelExpLogService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelService.java index e5b6ff04..967b3ba8 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLevelService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLikeService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLikeService.java index 8318ef3d..a5d93002 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLikeService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberLikeService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberService.java index d1520c21..dc3bb512 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberSignInLogService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberSignInLogService.java index 49199568..ee9abf88 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberSignInLogService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberSignInLogService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberStatDataService.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberStatDataService.java index bd49973d..77963cce 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberStatDataService.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/IMemberStatDataService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberExpConfigServiceImpl.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberExpConfigServiceImpl.java index 20a63303..01e4cd2c 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberExpConfigServiceImpl.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberExpConfigServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberFavoritesServiceImpl.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberFavoritesServiceImpl.java index ad1c1aff..69b22130 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberFavoritesServiceImpl.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberFavoritesServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberFollowServiceImpl.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberFollowServiceImpl.java index 98ced7dd..7341d9a6 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberFollowServiceImpl.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberFollowServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelConfigServiceImpl.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelConfigServiceImpl.java index a26f6c36..d9ba4115 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelConfigServiceImpl.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelConfigServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelExpLogServiceImpl.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelExpLogServiceImpl.java index 3b00e60e..61d36ba9 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelExpLogServiceImpl.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelExpLogServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelServiceImpl.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelServiceImpl.java index 9c593435..55642bad 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelServiceImpl.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLevelServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLikeServiceImpl.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLikeServiceImpl.java index 05aa87c4..65ed1742 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLikeServiceImpl.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberLikeServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberServiceImpl.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberServiceImpl.java index 7c9e31b2..9924fd5f 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberServiceImpl.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberSignInLogServiceImpl.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberSignInLogServiceImpl.java index 7c0aae4e..0a8b5191 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberSignInLogServiceImpl.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberSignInLogServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberStatDataServiceImpl.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberStatDataServiceImpl.java index a32015da..7c8b6a33 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberStatDataServiceImpl.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/service/impl/MemberStatDataServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/util/MemberUtils.java b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/util/MemberUtils.java index 6f419b15..2d7ff3df 100644 --- a/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/util/MemberUtils.java +++ b/chestnut-modules/chestnut-member/src/main/java/com/chestnut/member/util/MemberUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/pom.xml b/chestnut-modules/chestnut-meta/pom.xml index 2ae2fa5d..f8640d68 100644 --- a/chestnut-modules/chestnut-meta/pom.xml +++ b/chestnut-modules/chestnut-meta/pom.xml @@ -6,7 +6,7 @@ chestnut-modules com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/cache/XModelMonitoredCache.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/cache/XModelMonitoredCache.java index 3680f881..218c2d21 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/cache/XModelMonitoredCache.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/cache/XModelMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/controller/XModelController.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/controller/XModelController.java index c6ea8b68..00896a57 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/controller/XModelController.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/controller/XModelController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/controller/XModelFieldController.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/controller/XModelFieldController.java index 349eed35..cfcceba8 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/controller/XModelFieldController.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/controller/XModelFieldController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/BaseModelData.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/BaseModelData.java index 208a5234..ccebe37a 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/BaseModelData.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/BaseModelData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaControlType.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaControlType.java index ae106f40..4b9f61d0 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaControlType.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaControlType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaFieldValidation.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaFieldValidation.java index 89ca4221..08a76935 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaFieldValidation.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaFieldValidation.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaModelType.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaModelType.java index da4ff00d..c17e10a3 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaModelType.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/IMetaModelType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/MetaModel.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/MetaModel.java index eebde6f6..afe9a5b4 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/MetaModel.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/MetaModel.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/MetaModelField.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/MetaModelField.java index 5bf58840..a50260f6 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/MetaModelField.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/MetaModelField.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Checkbox.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Checkbox.java index d3d68978..d00895f4 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Checkbox.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Checkbox.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Date.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Date.java index 4d275402..8e594f47 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Date.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Date.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_DateTime.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_DateTime.java index 036d4e8b..c6cbfaa9 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_DateTime.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_DateTime.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Input.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Input.java index cf2fe502..aa58582b 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Input.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Input.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Radio.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Radio.java index 415cb053..f89784aa 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Radio.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Radio.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Select.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Select.java index c898b6dd..9cd9f3d3 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Select.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Select.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_TextArea.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_TextArea.java index ca76cc71..f7e8c19c 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_TextArea.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_TextArea.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Time.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Time.java index 6be0bccc..89392006 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Time.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaControlType_Time.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Date.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Date.java index 230deb68..41ed4e5a 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Date.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Date.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_DateTime.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_DateTime.java index 6efd4973..c096133e 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_DateTime.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_DateTime.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Email.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Email.java index 42ee3eef..5a585cee 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Email.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Email.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Int.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Int.java index a2705713..d276f6c4 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Int.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Int.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_NotEmpty.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_NotEmpty.java index 491ab941..bc7f7e77 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_NotEmpty.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_NotEmpty.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Number.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Number.java index 02f36c3f..69f83c86 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Number.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Number.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_PhoneNumber.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_PhoneNumber.java index 8f5f6d25..0059d3e4 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_PhoneNumber.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_PhoneNumber.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Regex.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Regex.java index 98b6e6e3..917ee057 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Regex.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Regex.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Time.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Time.java index 2b6ec422..fff9ea1f 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Time.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/core/impl/MetaFieldValidation_Time.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/domain/XModel.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/domain/XModel.java index 3336c8e2..639153ea 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/domain/XModel.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/domain/XModel.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/domain/XModelField.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/domain/XModelField.java index 9fa39758..7a516cfb 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/domain/XModelField.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/domain/XModelField.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/FieldOptions.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/FieldOptions.java index 86f65d35..5c3a3a3b 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/FieldOptions.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/FieldOptions.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelDTO.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelDTO.java index 59a7398e..1a6bf03d 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelDTO.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelFieldDTO.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelFieldDTO.java index 4e71c590..1707b803 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelFieldDTO.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelFieldDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelFieldDataDTO.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelFieldDataDTO.java index 00971cd1..20566040 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelFieldDataDTO.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/dto/XModelFieldDataDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/exception/MetaErrorCode.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/exception/MetaErrorCode.java index c94af71b..2911f712 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/exception/MetaErrorCode.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/exception/MetaErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/exception/MetaXValidationException.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/exception/MetaXValidationException.java index ab1cd4ef..81bea412 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/exception/MetaXValidationException.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/exception/MetaXValidationException.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/fixed/dict/MetaFieldType.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/fixed/dict/MetaFieldType.java index 31fd1e27..612f3b84 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/fixed/dict/MetaFieldType.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/fixed/dict/MetaFieldType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/mapper/XModelFieldMapper.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/mapper/XModelFieldMapper.java index f2b9c89c..d3e84157 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/mapper/XModelFieldMapper.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/mapper/XModelFieldMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/mapper/XModelMapper.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/mapper/XModelMapper.java index 9d1ea75c..7dbe980a 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/mapper/XModelMapper.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/mapper/XModelMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelDataService.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelDataService.java index 2e5ff691..6b3ad33d 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelDataService.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelDataService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelFieldService.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelFieldService.java index 562b89a1..b9c28645 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelFieldService.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelFieldService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelService.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelService.java index ae50684e..02573521 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelService.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/IModelService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelDataServiceImpl.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelDataServiceImpl.java index a3d49d40..ee9b5e73 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelDataServiceImpl.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelDataServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelFieldServiceImpl.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelFieldServiceImpl.java index 7f20e158..7fc978d6 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelFieldServiceImpl.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelFieldServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelServiceImpl.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelServiceImpl.java index 1baab965..fe6225c6 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelServiceImpl.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/service/impl/ModelServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/util/XModelUtils.java b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/util/XModelUtils.java index b895bd79..014dc141 100644 --- a/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/util/XModelUtils.java +++ b/chestnut-modules/chestnut-meta/src/main/java/com/chestnut/xmodel/util/XModelUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-monitor/pom.xml b/chestnut-modules/chestnut-monitor/pom.xml index d323a900..f3618849 100644 --- a/chestnut-modules/chestnut-monitor/pom.xml +++ b/chestnut-modules/chestnut-monitor/pom.xml @@ -6,7 +6,7 @@ com.chestnut chestnut-modules - 1.5.3 + 1.5.4 chestnut-monitor diff --git a/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/ChestnutMonitorApplication.java b/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/ChestnutMonitorApplication.java index be5ca86f..9e8229df 100644 --- a/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/ChestnutMonitorApplication.java +++ b/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/ChestnutMonitorApplication.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/ChestnutMonitorServletInitializer.java b/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/ChestnutMonitorServletInitializer.java index d675ecab..ecdbf930 100644 --- a/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/ChestnutMonitorServletInitializer.java +++ b/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/ChestnutMonitorServletInitializer.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/config/CustomCsrfFilter.java b/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/config/CustomCsrfFilter.java index ab6096d3..ddcc261c 100644 --- a/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/config/CustomCsrfFilter.java +++ b/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/config/CustomCsrfFilter.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/config/SecurityConfig.java b/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/config/SecurityConfig.java index f4eab185..7abc744e 100644 --- a/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/config/SecurityConfig.java +++ b/chestnut-modules/chestnut-monitor/src/main/java/com/chestnut/config/SecurityConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/pom.xml b/chestnut-modules/chestnut-search/pom.xml index 00ce960d..6a54832e 100644 --- a/chestnut-modules/chestnut-search/pom.xml +++ b/chestnut-modules/chestnut-search/pom.xml @@ -3,7 +3,7 @@ chestnut-modules com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/SearchConsts.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/SearchConsts.java index 0ec9d22e..0bf61e53 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/SearchConsts.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/SearchConsts.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/DictWordController.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/DictWordController.java index 5a2d67d3..ebf74bc2 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/DictWordController.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/DictWordController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/IndexModelController.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/IndexModelController.java index cbeb23b9..51c5b017 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/IndexModelController.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/IndexModelController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/SearchLogController.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/SearchLogController.java index 0fd2c08f..14a24f75 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/SearchLogController.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/SearchLogController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/SearchWordController.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/SearchWordController.java index 1eeeb55c..082457d7 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/SearchWordController.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/controller/SearchWordController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/BaseDocument.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/BaseDocument.java index d0d05bf1..36dbf6af 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/BaseDocument.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/BaseDocument.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/ElasticSearchType.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/ElasticSearchType.java index b61d5e50..459e4bc3 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/ElasticSearchType.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/ElasticSearchType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/ISearchType.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/ISearchType.java index 94eba7ef..fdfa7c7a 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/ISearchType.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/core/ISearchType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/DictWord.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/DictWord.java index 07ac5cc4..2f51bc68 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/DictWord.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/DictWord.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/IndexModel.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/IndexModel.java index 670c6ece..8d10fc29 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/IndexModel.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/IndexModel.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/IndexModelField.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/IndexModelField.java index 9812b50e..a90a5bf4 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/IndexModelField.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/IndexModelField.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchLog.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchLog.java index 8825bde7..64cc3d9f 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchLog.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchLog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchWord.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchWord.java index 63720efd..802d8468 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchWord.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchWord.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchWordHourStat.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchWordHourStat.java index 4a1d6d20..d57c9e15 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchWordHourStat.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/SearchWordHourStat.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/DictWordDTO.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/DictWordDTO.java index 519b3581..0dc0e52c 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/DictWordDTO.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/DictWordDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchLogDTO.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchLogDTO.java index 4e920c9e..c1ebebc0 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchLogDTO.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchLogDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchModelDTO.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchModelDTO.java index bbcc3835..05d5067c 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchModelDTO.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchModelDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchWordToppingDTO.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchWordToppingDTO.java index 28839ffb..e543a5c8 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchWordToppingDTO.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/SearchWordToppingDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/WordAnalyzeDTO.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/WordAnalyzeDTO.java index 46c28d95..72741691 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/WordAnalyzeDTO.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/domain/dto/WordAnalyzeDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/exception/SearchErrorCode.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/exception/SearchErrorCode.java index 5d0d8d80..17a8682c 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/exception/SearchErrorCode.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/exception/SearchErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/fixed/dict/SearchDictWordType.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/fixed/dict/SearchDictWordType.java index 2ff67e85..9e92688c 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/fixed/dict/SearchDictWordType.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/fixed/dict/SearchDictWordType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/fixed/dict/WordAnalyzeType.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/fixed/dict/WordAnalyzeType.java index 8168e144..a85f83d5 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/fixed/dict/WordAnalyzeType.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/fixed/dict/WordAnalyzeType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/job/SearchWordStatJobHandler.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/job/SearchWordStatJobHandler.java index ee2b311d..e974d9ba 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/job/SearchWordStatJobHandler.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/job/SearchWordStatJobHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/DictWordMapper.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/DictWordMapper.java index d61ec541..30899742 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/DictWordMapper.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/DictWordMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/IndexModelFieldMapper.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/IndexModelFieldMapper.java index 445da958..eb815fd6 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/IndexModelFieldMapper.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/IndexModelFieldMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/IndexModelMapper.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/IndexModelMapper.java index fa4f5e56..17b9841d 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/IndexModelMapper.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/IndexModelMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchLogMapper.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchLogMapper.java index 27bb9d78..ecfff9fa 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchLogMapper.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchLogMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchWordHourStatMapper.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchWordHourStatMapper.java index 8b8c7a7f..602789d6 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchWordHourStatMapper.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchWordHourStatMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchWordMapper.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchWordMapper.java index 7d165c3b..d4cfd8c7 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchWordMapper.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/mapper/SearchWordMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/IDictWordService.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/IDictWordService.java index 7874a430..8ca8d604 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/IDictWordService.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/IDictWordService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/IIndexModelService.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/IIndexModelService.java index a125ca85..f6e738f9 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/IIndexModelService.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/IIndexModelService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchLogService.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchLogService.java index d385b671..bac4132c 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchLogService.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchLogService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchWordHourStatService.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchWordHourStatService.java index 67e294f4..9b6f9da0 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchWordHourStatService.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchWordHourStatService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchWordService.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchWordService.java index 504732cf..7653ef44 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchWordService.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/ISearchWordService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/DictWordServiceImpl.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/DictWordServiceImpl.java index af7ea506..08b77a3d 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/DictWordServiceImpl.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/DictWordServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/IndexModelServiceImpl.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/IndexModelServiceImpl.java index 692ccdf0..8cb6f11e 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/IndexModelServiceImpl.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/IndexModelServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchLogServiceImpl.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchLogServiceImpl.java index e0632473..a1ab6919 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchLogServiceImpl.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchLogServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchWordHourStatServiceImpl.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchWordHourStatServiceImpl.java index 31a06ed3..e6339474 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchWordHourStatServiceImpl.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchWordHourStatServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchWordServiceImpl.java b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchWordServiceImpl.java index 6aa9a11c..87de6dca 100644 --- a/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchWordServiceImpl.java +++ b/chestnut-modules/chestnut-search/src/main/java/com/chestnut/search/service/impl/SearchWordServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/pom.xml b/chestnut-modules/chestnut-stat/pom.xml index ae44f8dc..53d01374 100644 --- a/chestnut-modules/chestnut-stat/pom.xml +++ b/chestnut-modules/chestnut-stat/pom.xml @@ -6,7 +6,7 @@ chestnut-modules com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/controller/StatController.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/controller/StatController.java index d14e2bc1..35688794 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/controller/StatController.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/controller/StatController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/controller/front/StatApiController.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/controller/front/StatApiController.java index 94904f46..bdca4c80 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/controller/front/StatApiController.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/controller/front/StatApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/IStatEventHandler.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/IStatEventHandler.java index bc70c24b..a471931b 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/IStatEventHandler.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/IStatEventHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/IStatType.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/IStatType.java index 1c59f133..c35d9f0a 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/IStatType.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/IStatType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/RequestEventData.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/RequestEventData.java index 8ec69565..3db2ac6d 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/RequestEventData.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/RequestEventData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/StatEvent.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/StatEvent.java index 873d6f7c..6a34809e 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/StatEvent.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/StatEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/StatMenu.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/StatMenu.java index 64c5a9ae..cc2dbc14 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/StatMenu.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/core/StatMenu.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/errorcode/StatErrorCode.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/errorcode/StatErrorCode.java index 3a6e2b33..2346f8d3 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/errorcode/StatErrorCode.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/errorcode/StatErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/IStatService.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/IStatService.java index 2f7ad02f..dee16225 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/IStatService.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/IStatService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/impl/StatEventService.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/impl/StatEventService.java index 0fffb988..12b6aa6e 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/impl/StatEventService.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/impl/StatEventService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/impl/StatServiceImpl.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/impl/StatServiceImpl.java index 745eba07..2efc35fd 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/impl/StatServiceImpl.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/service/impl/StatServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/user/preference/StatIndexPreference.java b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/user/preference/StatIndexPreference.java index b67242d1..c86c1792 100644 --- a/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/user/preference/StatIndexPreference.java +++ b/chestnut-modules/chestnut-stat/src/main/java/com/chestnut/stat/user/preference/StatIndexPreference.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/pom.xml b/chestnut-modules/chestnut-system/pom.xml index 07165a8b..0f62b84a 100644 --- a/chestnut-modules/chestnut-system/pom.xml +++ b/chestnut-modules/chestnut-system/pom.xml @@ -5,7 +5,7 @@ chestnut-modules com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/SysConstants.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/SysConstants.java index c3c1cfac..f516edde 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/SysConstants.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/SysConstants.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/annotation/ExcelDictField.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/annotation/ExcelDictField.java index 7fdd3612..c6acd64a 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/annotation/ExcelDictField.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/annotation/ExcelDictField.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/annotation/IgnoreDemoMode.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/annotation/IgnoreDemoMode.java index 96bc9672..0a3980f9 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/annotation/IgnoreDemoMode.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/annotation/IgnoreDemoMode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/I18nMessageSource.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/I18nMessageSource.java index ca46918e..eee82631 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/I18nMessageSource.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/I18nMessageSource.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/SysI18nConfig.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/SysI18nConfig.java index 1c878b63..3fff949b 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/SysI18nConfig.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/SysI18nConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/SystemConfig.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/SystemConfig.java index 3261cda5..886aea9b 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/SystemConfig.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/SystemConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/XxlJobConfig.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/XxlJobConfig.java index 9165b82a..0d3c649c 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/XxlJobConfig.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/XxlJobConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/converter/DictConverter.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/converter/DictConverter.java index 26e309e2..cd26e96b 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/converter/DictConverter.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/converter/DictConverter.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/properties/SysProperties.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/properties/SysProperties.java index 184826da..a31745fa 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/properties/SysProperties.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/properties/SysProperties.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/properties/XxlJobProperties.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/properties/XxlJobProperties.java index d3c5fb2d..5a2adcbc 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/properties/XxlJobProperties.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/config/properties/XxlJobProperties.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/CacheController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/CacheController.java index 99758859..17015102 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/CacheController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/CacheController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/LogController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/LogController.java index 96855800..c2e7ad02 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/LogController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/LogController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/ServerController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/ServerController.java index 132f3436..b8f563a7 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/ServerController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/ServerController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysConfigController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysConfigController.java index f05ddd65..0017b7d1 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysConfigController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysConfigController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDeptController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDeptController.java index 44200962..1376e10b 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDeptController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDeptController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDictDataController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDictDataController.java index c333ba02..abaf017a 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDictDataController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDictDataController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDictTypeController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDictTypeController.java index 3aaac796..11662bfb 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDictTypeController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysDictTypeController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysI18nDictController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysI18nDictController.java index 1969d838..521eee29 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysI18nDictController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysI18nDictController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysLoginController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysLoginController.java index 1722d789..0f53d3ae 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysLoginController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysLoginController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysLogininforController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysLogininforController.java index f079a9d0..16a363ff 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysLogininforController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysLogininforController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysMenuController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysMenuController.java index a456e4d7..25f0670c 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysMenuController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysMenuController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysNoticeController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysNoticeController.java index a844249f..e8b2eef6 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysNoticeController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysNoticeController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysOperlogController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysOperlogController.java index 843a9df8..428823fc 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysOperlogController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysOperlogController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysPermissionController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysPermissionController.java index 27d5eeff..66c110c6 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysPermissionController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysPermissionController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysPostController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysPostController.java index df37520e..8c633439 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysPostController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysPostController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysProfileController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysProfileController.java index 372c6ce6..32b85712 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysProfileController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysProfileController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysRoleController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysRoleController.java index be1d2dc5..19b711f7 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysRoleController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysRoleController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysScheduledTaskController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysScheduledTaskController.java index 8461ca73..c79bb93e 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysScheduledTaskController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysScheduledTaskController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysSecurityController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysSecurityController.java index 14c3cd4a..5c02b198 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysSecurityController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysSecurityController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysUserController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysUserController.java index 562e3808..4c24fa68 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysUserController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysUserController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysUserOnlineController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysUserOnlineController.java index 28e436dc..cf4f2d38 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysUserOnlineController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/SysUserOnlineController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/AsyncController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/AsyncController.java index 89ca638d..ba8f2a28 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/AsyncController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/AsyncController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/CaptchaController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/CaptchaController.java index 888297f3..294e880f 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/CaptchaController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/CaptchaController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/CommonController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/CommonController.java index 4d343d93..68105363 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/CommonController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/CommonController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/GroovyController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/GroovyController.java index 0aa1b89c..87ed0d5e 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/GroovyController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/GroovyController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,28 +15,33 @@ */ package com.chestnut.system.controller.common; -import java.io.PrintWriter; -import java.io.StringWriter; - -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.chestnut.common.domain.R; +import com.chestnut.common.exception.CommonErrorCode; import com.chestnut.common.log.annotation.Log; import com.chestnut.common.log.enums.BusinessType; import com.chestnut.common.security.anno.Priv; +import com.chestnut.common.security.web.BaseRestController; +import com.chestnut.common.utils.Assert; +import com.chestnut.common.utils.IdUtils; +import com.chestnut.system.domain.SysGroovyScript; +import com.chestnut.system.domain.dto.ExecGroovyScriptDTO; +import com.chestnut.system.domain.dto.SaveGroovyScriptDTO; import com.chestnut.system.groovy.BaseGroovyScript; import com.chestnut.system.groovy.GroovyScriptFactory; +import com.chestnut.system.mapper.SysGroovyScriptMapper; import com.chestnut.system.permission.SysMenuPriv; import com.chestnut.system.security.AdminUserType; - +import com.chestnut.system.security.StpAdminUtil; +import com.chestnut.system.validator.LongId; import jakarta.validation.constraints.NotEmpty; -import lombok.Getter; import lombok.RequiredArgsConstructor; -import lombok.Setter; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.io.PrintWriter; +import java.io.StringWriter; +import java.util.List; /** * Groovy脚本执行控制器 @@ -44,19 +49,21 @@ import lombok.Setter; * @author 兮玥 * @email 190785909@qq.com */ +@Priv(type = AdminUserType.TYPE, value = SysMenuPriv.GroovyExec) @RestController @RequiredArgsConstructor @RequestMapping("/groovy") -public class GroovyController { +public class GroovyController extends BaseRestController { + + private final SysGroovyScriptMapper groovyScriptMapper; @Log(title = "执行Groovy脚本", businessType = BusinessType.UPDATE) - @Priv(type = AdminUserType.TYPE, value = SysMenuPriv.GroovyExec) @PostMapping("/exec") - public R execGroovyScript(@RequestBody @Validated ScriptBody scriptBody) throws Exception { + public R execGroovyScript(@RequestBody @Validated ExecGroovyScriptDTO dto) { StringWriter writer = new StringWriter(); PrintWriter printWriter = new PrintWriter(writer); try { - BaseGroovyScript script = GroovyScriptFactory.getInstance().loadNewInstance(scriptBody.getScriptText()); + BaseGroovyScript script = GroovyScriptFactory.getInstance().loadNewInstance(dto.getScriptText()); script.setPrintWriter(printWriter); script.run(); } catch (Exception e) { @@ -64,12 +71,37 @@ public class GroovyController { } return R.ok(writer.toString()); } - - @Getter - @Setter - static class ScriptBody { - - @NotEmpty - private String scriptText; + + @GetMapping("/list") + public R getGroovyScripts() { + List groovyScripts = groovyScriptMapper.selectList(new LambdaQueryWrapper<>()); + return bindDataTable(groovyScripts); + } + + @Log(title = "保存Groovy脚本", businessType = BusinessType.INSERT) + @PostMapping("/save") + public R saveGroovyScript(@RequestBody @Validated SaveGroovyScriptDTO dto) { + SysGroovyScript groovyScript = new SysGroovyScript(); + groovyScript.setScriptId(IdUtils.getSnowflakeId()); + groovyScript.setName(dto.getName()); + groovyScript.setScriptText(dto.getScriptText()); + groovyScript.setRemark(dto.getRemark()); + groovyScript.createBy(StpAdminUtil.getLoginUser().getUsername()); + groovyScriptMapper.insert(groovyScript); + return R.ok(); + } + + @Log(title = "刪除Groovy脚本", businessType = BusinessType.DELETE) + @DeleteMapping("/delete") + public R deleteGroovyScript(@RequestBody @NotEmpty List scriptIds) { + this.groovyScriptMapper.deleteBatchIds(scriptIds); + return R.ok(); + } + + @GetMapping("/{scriptId}") + public R getGroovyScript(@PathVariable @LongId Long scriptId) { + SysGroovyScript groovyScript = this.groovyScriptMapper.selectById(scriptId); + Assert.notNull(groovyScript, () -> CommonErrorCode.DATA_NOT_FOUND_BY_ID.exception("scriptId", scriptId)); + return R.ok(groovyScript); } } diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/SysIndexController.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/SysIndexController.java index 33df5b1f..01a58741 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/SysIndexController.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/controller/common/SysIndexController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysCache.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysCache.java index 3d37e342..88f33fc3 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysCache.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysConfig.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysConfig.java index ba440bea..3e11aeca 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysConfig.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDept.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDept.java index 62a0233a..1f761f28 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDept.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDept.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDictData.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDictData.java index 5faa9835..1dd8653f 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDictData.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDictData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDictType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDictType.java index 5a4e8924..cb5aa505 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDictType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysDictType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysGroovyScript.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysGroovyScript.java index 9cc34346..788acccf 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysGroovyScript.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysGroovyScript.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -42,5 +42,5 @@ public class SysGroovyScript extends BaseEntity { private String name; - private Integer scriptText; + private String scriptText; } diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysI18nDict.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysI18nDict.java index dd5dd097..4b373ad2 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysI18nDict.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysI18nDict.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysLogininfor.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysLogininfor.java index b243c501..a4495b71 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysLogininfor.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysLogininfor.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysMenu.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysMenu.java index 18039ae9..06b18ea9 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysMenu.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysMenu.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysNotice.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysNotice.java index 8006a5ae..0757d53d 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysNotice.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysNotice.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysOperLog.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysOperLog.java index ec90b465..2c5b6d4a 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysOperLog.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysOperLog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysPermission.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysPermission.java index 15252e6d..214704dc 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysPermission.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysPermission.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysPost.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysPost.java index fa6eb833..fb189e44 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysPost.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysPost.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysRole.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysRole.java index c6838f72..f0d8edbc 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysRole.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysRole.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysScheduledTask.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysScheduledTask.java index a0c907ec..f7b677a1 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysScheduledTask.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysScheduledTask.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysScheduledTaskLog.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysScheduledTaskLog.java index b3dd7582..862164cf 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysScheduledTaskLog.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysScheduledTaskLog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysSecurityConfig.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysSecurityConfig.java index dea86e58..ca0a671d 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysSecurityConfig.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysSecurityConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUser.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUser.java index 40953c84..80e354dd 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUser.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUser.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserOnline.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserOnline.java index d01284b2..8ef62ed6 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserOnline.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserOnline.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserPost.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserPost.java index b256654a..373981e0 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserPost.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserPost.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserRole.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserRole.java index c1c373d0..1d642c28 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserRole.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysUserRole.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysWeChatConfig.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysWeChatConfig.java index 8a328175..1c3e0945 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysWeChatConfig.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/SysWeChatConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/AuthRoleDTO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/AuthRoleDTO.java index 207a9462..fedb37bf 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/AuthRoleDTO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/AuthRoleDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/ClearCacheDTO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/ClearCacheDTO.java index 3adb97b7..aeca9fea 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/ClearCacheDTO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/ClearCacheDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/ExecGroovyScriptDTO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/ExecGroovyScriptDTO.java new file mode 100644 index 00000000..5dd0aa45 --- /dev/null +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/ExecGroovyScriptDTO.java @@ -0,0 +1,28 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.chestnut.system.domain.dto; + +import jakarta.validation.constraints.NotEmpty; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class ExecGroovyScriptDTO { + + @NotEmpty + private String scriptText; +} \ No newline at end of file diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/LoginBody.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/LoginBody.java index 4fc62ac3..f1428162 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/LoginBody.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/LoginBody.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/RegisterBody.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/RegisterBody.java index 014291e3..7c7373dc 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/RegisterBody.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/RegisterBody.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/SaveGroovyScriptDTO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/SaveGroovyScriptDTO.java new file mode 100644 index 00000000..0c2dbeb1 --- /dev/null +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/SaveGroovyScriptDTO.java @@ -0,0 +1,34 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.chestnut.system.domain.dto; + +import com.chestnut.common.security.domain.BaseDTO; +import jakarta.validation.constraints.NotBlank; +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class SaveGroovyScriptDTO extends BaseDTO { + + @NotBlank + private String name; + + @NotBlank(message = "{VALIDATOR.SYSTEM.SCRIPT_TEXT}") + private String scriptText; + + private String remark; +} \ No newline at end of file diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/ScheduledTaskDTO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/ScheduledTaskDTO.java index 87added5..9309203b 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/ScheduledTaskDTO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/ScheduledTaskDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/SysNoticeDTO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/SysNoticeDTO.java index bc6f1c2a..68e2c521 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/SysNoticeDTO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/SysNoticeDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/SysPermissionDTO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/SysPermissionDTO.java index 8cd7acf6..d27d2d3e 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/SysPermissionDTO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/SysPermissionDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/UserImportData.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/UserImportData.java index 2254908d..5054e87f 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/UserImportData.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/dto/UserImportData.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/AsyncTaskVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/AsyncTaskVO.java index 158e3164..e07f6f75 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/AsyncTaskVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/AsyncTaskVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/DashboardUserVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/DashboardUserVO.java index 73a9b339..1409a2a4 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/DashboardUserVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/DashboardUserVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ImageCaptchaVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ImageCaptchaVO.java index 6533eeb6..f44db55b 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ImageCaptchaVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ImageCaptchaVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/MetaVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/MetaVO.java index a025795c..34a2721c 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/MetaVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/MetaVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/RoleMenuTreeVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/RoleMenuTreeVO.java index 9bf1b170..1558c9ec 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/RoleMenuTreeVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/RoleMenuTreeVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/RouterVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/RouterVO.java index a529bb7c..464225b9 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/RouterVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/RouterVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ScheduledTaskVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ScheduledTaskVO.java index 25bdfd25..7e321845 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ScheduledTaskVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ScheduledTaskVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/SecurityCheckVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/SecurityCheckVO.java index ec4559ee..3c0bfb2e 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/SecurityCheckVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/SecurityCheckVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ShortcutVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ShortcutVO.java index 4abae0ef..2f5344a5 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ShortcutVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/ShortcutVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/StorageTypeVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/StorageTypeVO.java index 942379e1..1159067d 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/StorageTypeVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/StorageTypeVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/SysPostSelectVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/SysPostSelectVO.java index 7efc7cc6..0d338df8 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/SysPostSelectVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/SysPostSelectVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserInfoVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserInfoVO.java index d13351f9..2099a4e5 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserInfoVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserInfoVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserProfileVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserProfileVO.java index e0bd98f4..47149835 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserProfileVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserProfileVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserWithRoleFlagVO.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserWithRoleFlagVO.java index 1ff9f78f..0f3b98fa 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserWithRoleFlagVO.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/UserWithRoleFlagVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/AppInfo.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/AppInfo.java index 215e8322..fba30fba 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/AppInfo.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/AppInfo.java @@ -1,18 +1,18 @@ -/* - * Copyright 2022-2024 兮玥(190785909@qq.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.system.domain.vo.server; import lombok.Getter; diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Cpu.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Cpu.java index b2527e0c..d03479a2 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Cpu.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Cpu.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/DataSources.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/DataSources.java index 28e29dc2..86cc508f 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/DataSources.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/DataSources.java @@ -1,18 +1,18 @@ -/* - * Copyright 2022-2024 兮玥(190785909@qq.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.chestnut.system.domain.vo.server; import com.baomidou.dynamic.datasource.creator.DataSourceProperty; diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Jvm.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Jvm.java index 4229b669..b4cee8b5 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Jvm.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Jvm.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Mem.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Mem.java index 913dd55b..bda5c5ac 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Mem.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Mem.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Server.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Server.java index 7b9d23da..3cbf93cb 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Server.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Server.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Sys.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Sys.java index bc291d5e..2adff4f7 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Sys.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/Sys.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/SysFile.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/SysFile.java index 4fd1a971..0a11b5f7 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/SysFile.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/domain/vo/server/SysFile.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/MenuComponentType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/MenuComponentType.java index 7a26dafd..6b410bed 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/MenuComponentType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/MenuComponentType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/MenuType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/MenuType.java index 450cad9c..6231f939 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/MenuType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/MenuType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/PermissionOwnerType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/PermissionOwnerType.java index 22357e87..5c95d81b 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/PermissionOwnerType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/enums/PermissionOwnerType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/exception/SysErrorCode.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/exception/SysErrorCode.java index d88f18fc..ad0acf7a 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/exception/SysErrorCode.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/exception/SysErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedConfig.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedConfig.java index b6eabdd5..b9b196f3 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedConfig.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedConfig.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedConfigUtils.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedConfigUtils.java index 6133eb01..5829f3ca 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedConfigUtils.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedConfigUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedDictType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedDictType.java index 8b86b56a..3a69c28d 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedDictType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedDictType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedDictUtils.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedDictUtils.java index 1852d4f4..8494ed50 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedDictUtils.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/FixedDictUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/BackendContext.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/BackendContext.java index 68e0e410..8bb3b514 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/BackendContext.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/BackendContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/BaiduMapAccessKey.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/BaiduMapAccessKey.java index 74ef277b..8240fff5 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/BaiduMapAccessKey.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/BaiduMapAccessKey.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysCaptchaEnable.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysCaptchaEnable.java index 4a4b2698..8a4677e0 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysCaptchaEnable.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysCaptchaEnable.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysRegistEnable.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysRegistEnable.java index 167b61e6..811c2e57 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysRegistEnable.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysRegistEnable.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysUploadSizeLimit.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysUploadSizeLimit.java index 7218bd63..cd52b110 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysUploadSizeLimit.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysUploadSizeLimit.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysUploadTypeLimit.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysUploadTypeLimit.java index 22da6d81..2af3a400 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysUploadTypeLimit.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/config/SysUploadTypeLimit.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/EnableOrDisable.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/EnableOrDisable.java index 6df38142..456f9684 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/EnableOrDisable.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/EnableOrDisable.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/Gender.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/Gender.java index e4f4c7ae..8340c2f8 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/Gender.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/Gender.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/I18nDictType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/I18nDictType.java index 50f099bc..39c42169 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/I18nDictType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/I18nDictType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/LoginLogType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/LoginLogType.java index 87409d4a..945c0432 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/LoginLogType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/LoginLogType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/NoticeStatus.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/NoticeStatus.java index 6a95d652..9f0123b8 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/NoticeStatus.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/NoticeStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/NoticeType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/NoticeType.java index d67d0327..02b0b925 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/NoticeType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/NoticeType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordRetryStrategy.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordRetryStrategy.java index 910a685c..2fff3a9f 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordRetryStrategy.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordRetryStrategy.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordRule.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordRule.java index 274ca9e6..df52df37 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordRule.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordRule.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordSensitive.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordSensitive.java index 391d544a..f2b6efb6 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordSensitive.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/PasswordSensitive.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/SuccessOrFail.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/SuccessOrFail.java index 547c3fd7..393e242d 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/SuccessOrFail.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/SuccessOrFail.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/UserStatus.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/UserStatus.java index 8338447b..afec240c 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/UserStatus.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/UserStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/YesOrNo.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/YesOrNo.java index 706773ba..a7d68b62 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/YesOrNo.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/fixed/dict/YesOrNo.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/BaseGroovyScript.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/BaseGroovyScript.java index 21411dce..eba71f4a 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/BaseGroovyScript.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/BaseGroovyScript.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/GroovyScriptFactory.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/GroovyScriptFactory.java index 8e0221df..9f207ae6 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/GroovyScriptFactory.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/GroovyScriptFactory.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/TestGroovyScript.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/TestGroovyScript.java index 3f0f71fa..afd1177b 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/TestGroovyScript.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/groovy/TestGroovyScript.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/handler/SysLogHandler.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/handler/SysLogHandler.java index 8424e366..0d3cf3be 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/handler/SysLogHandler.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/handler/SysLogHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/intercepter/DemoModeInterceptor.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/intercepter/DemoModeInterceptor.java index 9766fee5..a580b4f4 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/intercepter/DemoModeInterceptor.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/intercepter/DemoModeInterceptor.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/job/SysUserUnlockJobHandler.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/job/SysUserUnlockJobHandler.java index 36cab37f..d04a10c8 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/job/SysUserUnlockJobHandler.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/job/SysUserUnlockJobHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/ILogMenu.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/ILogMenu.java index 45bc2522..e2a21030 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/ILogMenu.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/ILogMenu.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/impl/UserLoginLogMenu.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/impl/UserLoginLogMenu.java index 4f9e2e9e..631985d7 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/impl/UserLoginLogMenu.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/impl/UserLoginLogMenu.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/impl/UserOperationLogMenu.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/impl/UserOperationLogMenu.java index c2abbecc..24e84f70 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/impl/UserOperationLogMenu.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/logs/impl/UserOperationLogMenu.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysConfigMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysConfigMapper.java index 88d30507..add2f3ee 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysConfigMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysConfigMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDeptMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDeptMapper.java index 2cc53eb6..53eee66f 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDeptMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDeptMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDictDataMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDictDataMapper.java index 8e7f08ee..aa475ee3 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDictDataMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDictDataMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDictTypeMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDictTypeMapper.java index 3654d19a..ae4d3b39 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDictTypeMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysDictTypeMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysGroovyScriptMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysGroovyScriptMapper.java new file mode 100644 index 00000000..e298aef5 --- /dev/null +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysGroovyScriptMapper.java @@ -0,0 +1,26 @@ +/* + * Copyright 2022-2025 兮玥(190785909@qq.com) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.chestnut.system.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.chestnut.system.domain.SysGroovyScript; + +/** + * Groovy脚本 数据层 + */ +public interface SysGroovyScriptMapper extends BaseMapper { + +} diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysI18nDictMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysI18nDictMapper.java index 6fd088c9..34a355de 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysI18nDictMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysI18nDictMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysLogininforMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysLogininforMapper.java index 01909432..3f2a9949 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysLogininforMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysLogininforMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysMenuMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysMenuMapper.java index 39139c06..458cd77f 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysMenuMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysMenuMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysNoticeMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysNoticeMapper.java index 0a310339..47d36b5c 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysNoticeMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysNoticeMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysOperLogMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysOperLogMapper.java index 5ec430ea..f782f61e 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysOperLogMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysOperLogMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysPermissionMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysPermissionMapper.java index cde8e1d0..695f83b2 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysPermissionMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysPermissionMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysPostMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysPostMapper.java index 47efe5be..75fed970 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysPostMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysPostMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysRoleMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysRoleMapper.java index ad800d94..002d1ae1 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysRoleMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysRoleMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysScheduledTaskLogMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysScheduledTaskLogMapper.java index 19cfd42d..51537ae4 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysScheduledTaskLogMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysScheduledTaskLogMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysScheduledTaskMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysScheduledTaskMapper.java index 418865eb..575f0e49 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysScheduledTaskMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysScheduledTaskMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysSecurityConfigMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysSecurityConfigMapper.java index 2f8fd680..ae36d719 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysSecurityConfigMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysSecurityConfigMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserMapper.java index c084ca6b..b22247e1 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserPostMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserPostMapper.java index ae2fff4a..7ba5a559 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserPostMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserPostMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserRoleMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserRoleMapper.java index 399699e1..1665a1ab 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserRoleMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysUserRoleMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysWeChatConfigMapper.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysWeChatConfigMapper.java index 49bc2f32..07290d52 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysWeChatConfigMapper.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/mapper/SysWeChatConfigMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/CaptchaMonitoredCache.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/CaptchaMonitoredCache.java index 18eb3b79..07f0d962 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/CaptchaMonitoredCache.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/CaptchaMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/RateLimiterMonitoredCache.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/RateLimiterMonitoredCache.java index 2fd7646d..6ad995c0 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/RateLimiterMonitoredCache.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/RateLimiterMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/RepeatSubmitMonitoredCache.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/RepeatSubmitMonitoredCache.java index 7100e7ad..d8e7fa67 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/RepeatSubmitMonitoredCache.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/RepeatSubmitMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysConfigMonitoredCache.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysConfigMonitoredCache.java index 972ec0e6..70b275ab 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysConfigMonitoredCache.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysConfigMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysDeptMonitoredCache.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysDeptMonitoredCache.java index d8ba8fbc..360b0df4 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysDeptMonitoredCache.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysDeptMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysDictDataMonitoredCache.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysDictDataMonitoredCache.java index f6d7c030..a1173434 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysDictDataMonitoredCache.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysDictDataMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysPostMonitoredCache.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysPostMonitoredCache.java index 396301e1..d9231681 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysPostMonitoredCache.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysPostMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysRoleMonitoredCache.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysRoleMonitoredCache.java index 7e1fa400..3cf0b478 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysRoleMonitoredCache.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/monitor/SysRoleMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/IPermissionType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/IPermissionType.java index 46eee302..21005687 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/IPermissionType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/IPermissionType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/MenuPermissionType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/MenuPermissionType.java index 8f4d3580..c2c6efbe 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/MenuPermissionType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/MenuPermissionType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/PermissionUtils.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/PermissionUtils.java index d126af8c..5fc542c7 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/PermissionUtils.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/PermissionUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/SysMenuPriv.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/SysMenuPriv.java index 8f9a0408..29d841d8 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/SysMenuPriv.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/permission/SysMenuPriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/IScheduledHandler.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/IScheduledHandler.java index f8517788..f0ee2fd7 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/IScheduledHandler.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/IScheduledHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTask.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTask.java index 6ae5dc4c..9369d7ec 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTask.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTask.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTaskStatus.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTaskStatus.java index 7ca81a64..c7000a18 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTaskStatus.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTaskStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTaskTriggerType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTaskTriggerType.java index 060f53c0..e35da4d7 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTaskTriggerType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/schedule/ScheduledTaskTriggerType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/AdminUserType.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/AdminUserType.java index 0d4cf52d..475c83a7 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/AdminUserType.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/AdminUserType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/ISecurityUser.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/ISecurityUser.java index 8778ef7e..dead9cf4 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/ISecurityUser.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/ISecurityUser.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SaTokenListenerForSys.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SaTokenListenerForSys.java index d321682c..3d4be65d 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SaTokenListenerForSys.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SaTokenListenerForSys.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/StpAdminUtil.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/StpAdminUtil.java index 6d8a29c9..0c0b9328 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/StpAdminUtil.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/StpAdminUtil.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SysLoginService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SysLoginService.java index 2bb7ab8f..c6cbf75d 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SysLoginService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SysLoginService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SysRegisterService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SysRegisterService.java index f143f8a1..25f91cb3 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SysRegisterService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/security/SysRegisterService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISecurityConfigService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISecurityConfigService.java index 63d46ca6..b2fddc69 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISecurityConfigService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISecurityConfigService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysConfigService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysConfigService.java index 1b5a54bc..abb5f317 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysConfigService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysConfigService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDeptService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDeptService.java index 02726058..bddde9a2 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDeptService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDeptService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDictDataService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDictDataService.java index 802767c8..9de414ed 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDictDataService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDictDataService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDictTypeService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDictTypeService.java index 29ae167a..cd60d501 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDictTypeService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysDictTypeService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysI18nDictService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysI18nDictService.java index 5eb5be11..334af5c1 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysI18nDictService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysI18nDictService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysLogininforService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysLogininforService.java index a48497f7..830a85db 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysLogininforService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysLogininforService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysMenuService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysMenuService.java index 472aa535..11ea863b 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysMenuService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysMenuService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysNoticeService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysNoticeService.java index 2eaf84bf..4bcc790b 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysNoticeService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysNoticeService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysOperLogService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysOperLogService.java index b8dbdb74..71625d27 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysOperLogService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysOperLogService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysPermissionService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysPermissionService.java index 8037e290..61e3604b 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysPermissionService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysPermissionService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysPostService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysPostService.java index 5b7604f4..837ca769 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysPostService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysPostService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysRoleService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysRoleService.java index 35fb5d2f..2fff0d7d 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysRoleService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysRoleService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysScheduledTaskService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysScheduledTaskService.java index 06e2930d..56eb949d 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysScheduledTaskService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysScheduledTaskService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysUserOnlineService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysUserOnlineService.java index 6f219ae6..cba744be 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysUserOnlineService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysUserOnlineService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysUserService.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysUserService.java index a6a03414..5a671128 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysUserService.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/ISysUserService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SecurityConfigServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SecurityConfigServiceImpl.java index 9abba6a5..951a59eb 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SecurityConfigServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SecurityConfigServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysConfigServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysConfigServiceImpl.java index 5f725b6f..fb67c94c 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysConfigServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysConfigServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDeptServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDeptServiceImpl.java index 40688d3b..19bbc6a8 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDeptServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDeptServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDictDataServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDictDataServiceImpl.java index 53b5b8d1..d7bcc45f 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDictDataServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDictDataServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDictTypeServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDictTypeServiceImpl.java index 3ce28d47..50a87cec 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDictTypeServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysDictTypeServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysI18nDictServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysI18nDictServiceImpl.java index 3a151852..9ac982fd 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysI18nDictServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysI18nDictServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysLogininforServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysLogininforServiceImpl.java index 6310d5b3..a1db7676 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysLogininforServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysLogininforServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysMenuServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysMenuServiceImpl.java index b3c754f6..c5c46281 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysMenuServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysMenuServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysNoticeServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysNoticeServiceImpl.java index 3659d57f..e667e713 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysNoticeServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysNoticeServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysOperLogServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysOperLogServiceImpl.java index 40b3f479..5f462d51 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysOperLogServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysOperLogServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysPermissionServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysPermissionServiceImpl.java index d51e101e..d8b8d6f0 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysPermissionServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysPermissionServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysPostServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysPostServiceImpl.java index 5562f5d9..00efec88 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysPostServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysPostServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysRoleServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysRoleServiceImpl.java index 4dc4b856..01d10fad 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysRoleServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysRoleServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysScheduledTaskServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysScheduledTaskServiceImpl.java index d2db5a6d..3dd0597f 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysScheduledTaskServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysScheduledTaskServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysUserOnlineServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysUserOnlineServiceImpl.java index fba96bb0..6bbd48ee 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysUserOnlineServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysUserOnlineServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysUserServiceImpl.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysUserServiceImpl.java index a85a75fc..01bbb22a 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysUserServiceImpl.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/service/impl/SysUserServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/user/preference/IUserPreference.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/user/preference/IUserPreference.java index 0267fa61..ced2618f 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/user/preference/IUserPreference.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/user/preference/IUserPreference.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/user/preference/ShortcutUserPreference.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/user/preference/ShortcutUserPreference.java index 0dd6bf02..a6dfc8bc 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/user/preference/ShortcutUserPreference.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/user/preference/ShortcutUserPreference.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/Dict.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/Dict.java index 30bfe0a2..e62f217f 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/Dict.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/Dict.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/DictValidator.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/DictValidator.java index bf4b92f1..2a3e0123 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/DictValidator.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/DictValidator.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/LongId.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/LongId.java index 87840be4..41fdae4d 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/LongId.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/LongId.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/LongIdValidator.java b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/LongIdValidator.java index f46e5920..c5940a8d 100644 --- a/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/LongIdValidator.java +++ b/chestnut-modules/chestnut-system/src/main/java/com/chestnut/system/validator/LongIdValidator.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/pom.xml b/chestnut-modules/chestnut-vote/pom.xml index d2913912..b9312574 100644 --- a/chestnut-modules/chestnut-vote/pom.xml +++ b/chestnut-modules/chestnut-vote/pom.xml @@ -3,7 +3,7 @@ chestnut-modules com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/VoteController.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/VoteController.java index d77e6f33..ceb2731b 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/VoteController.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/VoteController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/VoteSubjectController.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/VoteSubjectController.java index 9a0a4df3..5fbda9f1 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/VoteSubjectController.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/VoteSubjectController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/front/VoteApiController.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/front/VoteApiController.java index 9f4fb1bb..f732086d 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/front/VoteApiController.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/controller/front/VoteApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/IVoteItemType.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/IVoteItemType.java index 97f411f3..c44efc89 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/IVoteItemType.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/IVoteItemType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/IVoteUserType.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/IVoteUserType.java index 6079cf50..88ed2fe2 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/IVoteUserType.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/IVoteUserType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/impl/IPVoteUserType.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/impl/IPVoteUserType.java index 159effc8..46ea15cb 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/impl/IPVoteUserType.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/impl/IPVoteUserType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/impl/TextVoteItemType.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/impl/TextVoteItemType.java index c12ef264..50107602 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/impl/TextVoteItemType.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/core/impl/TextVoteItemType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/Vote.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/Vote.java index 46b49046..3e11389f 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/Vote.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/Vote.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteLog.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteLog.java index e1a757c0..d63a4888 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteLog.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteLog.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteSubject.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteSubject.java index 5e184b28..3faa70b6 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteSubject.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteSubject.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteSubjectItem.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteSubjectItem.java index 451efff7..2213faea 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteSubjectItem.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/VoteSubjectItem.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/dto/SaveSubjectItemsDTO.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/dto/SaveSubjectItemsDTO.java index bff38743..a224fc66 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/dto/SaveSubjectItemsDTO.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/dto/SaveSubjectItemsDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/dto/VoteSubmitDTO.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/dto/VoteSubmitDTO.java index 111d79d0..7551aab5 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/dto/VoteSubmitDTO.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/dto/VoteSubmitDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteSubjectItemVO.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteSubjectItemVO.java index 9f6976fb..75c818a0 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteSubjectItemVO.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteSubjectItemVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteSubjectVO.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteSubjectVO.java index 1e8952c9..ae702aef 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteSubjectVO.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteSubjectVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteVO.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteVO.java index b785d46e..f740e8eb 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteVO.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/domain/vo/VoteVO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/exception/VoteErrorCode.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/exception/VoteErrorCode.java index 03991251..b386dbe1 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/exception/VoteErrorCode.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/exception/VoteErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteStatus.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteStatus.java index 9592b0aa..df923d97 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteStatus.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteSubjectType.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteSubjectType.java index 075a7f57..bfc27a19 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteSubjectType.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteSubjectType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteViewType.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteViewType.java index f530b161..111fba6a 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteViewType.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/fixed/dict/VoteViewType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/listener/BeforeVoteAddEvent.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/listener/BeforeVoteAddEvent.java index 5f288716..dfd8dc9e 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/listener/BeforeVoteAddEvent.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/listener/BeforeVoteAddEvent.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteLogMapper.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteLogMapper.java index b416bdb1..c2364738 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteLogMapper.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteLogMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteMapper.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteMapper.java index 78bd6c56..1fe83c98 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteMapper.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteSubjectItemMapper.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteSubjectItemMapper.java index 37109a43..23a31928 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteSubjectItemMapper.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteSubjectItemMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteSubjectMapper.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteSubjectMapper.java index 15b23ac9..23697008 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteSubjectMapper.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/mapper/VoteSubjectMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/permission/VotePriv.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/permission/VotePriv.java index 6d4b8e26..84319017 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/permission/VotePriv.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/permission/VotePriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteApiService.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteApiService.java index e9c16d9c..c1a7e312 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteApiService.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteApiService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteLogService.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteLogService.java index ea3ad0fa..b8981511 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteLogService.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteLogService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteService.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteService.java index c575c75c..cd313528 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteService.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteSubjectItemService.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteSubjectItemService.java index 4d2a2091..b53302ec 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteSubjectItemService.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteSubjectItemService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteSubjectService.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteSubjectService.java index 6c21dd83..029140d4 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteSubjectService.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/IVoteSubjectService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteApiServiceImpl.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteApiServiceImpl.java index 63f438df..71f75917 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteApiServiceImpl.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteApiServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteLogServiceImpl.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteLogServiceImpl.java index 0a3e23dd..479a882a 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteLogServiceImpl.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteLogServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteServiceImpl.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteServiceImpl.java index 8c6cc997..4afdd2f8 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteServiceImpl.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteSubjectItemServiceImpl.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteSubjectItemServiceImpl.java index 774f7a3f..6cb447d5 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteSubjectItemServiceImpl.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteSubjectItemServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteSubjectServiceImpl.java b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteSubjectServiceImpl.java index ecb71db8..3963fb31 100644 --- a/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteSubjectServiceImpl.java +++ b/chestnut-modules/chestnut-vote/src/main/java/com/chestnut/vote/service/impl/VoteSubjectServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/pom.xml b/chestnut-modules/chestnut-word/pom.xml index 793d5891..d0caec05 100644 --- a/chestnut-modules/chestnut-word/pom.xml +++ b/chestnut-modules/chestnut-word/pom.xml @@ -6,7 +6,7 @@ chestnut-modules com.chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/WordConstants.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/WordConstants.java index 3ccd8ae9..4b2d674a 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/WordConstants.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/WordConstants.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/ErrorProneWordMonitoredCache.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/ErrorProneWordMonitoredCache.java index 2fe01191..1c746e50 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/ErrorProneWordMonitoredCache.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/ErrorProneWordMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/HotWordMonitoredCache.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/HotWordMonitoredCache.java index d993cf74..b04d472d 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/HotWordMonitoredCache.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/HotWordMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/SensitiveWordMonitoredCache.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/SensitiveWordMonitoredCache.java index 4e946d8a..ebff91f7 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/SensitiveWordMonitoredCache.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/cache/SensitiveWordMonitoredCache.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/ErrorProneWordController.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/ErrorProneWordController.java index b6cb08dd..07816763 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/ErrorProneWordController.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/ErrorProneWordController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/HotWordController.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/HotWordController.java index d54d70b9..11dddebd 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/HotWordController.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/HotWordController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/HotWordGroupController.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/HotWordGroupController.java index c4227287..e177b42a 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/HotWordGroupController.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/HotWordGroupController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/SensitiveWordController.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/SensitiveWordController.java index c0c857ba..18466d97 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/SensitiveWordController.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/SensitiveWordController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/TagWordController.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/TagWordController.java index 3f028cc5..ce0ff892 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/TagWordController.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/TagWordController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/TagWordGroupController.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/TagWordGroupController.java index dc923d72..7cc6c414 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/TagWordGroupController.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/TagWordGroupController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/front/WordStatApiController.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/front/WordStatApiController.java index da0af492..12415c13 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/front/WordStatApiController.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/controller/front/WordStatApiController.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/ErrorProneWord.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/ErrorProneWord.java index 7cd89b35..ad868657 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/ErrorProneWord.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/ErrorProneWord.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/HotWord.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/HotWord.java index 50ad5f8e..cb1ac9c8 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/HotWord.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/HotWord.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/HotWordGroup.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/HotWordGroup.java index fb8873d4..b6914e8d 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/HotWordGroup.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/HotWordGroup.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/SensitiveWord.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/SensitiveWord.java index 64e684fa..00561e00 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/SensitiveWord.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/SensitiveWord.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/TagWord.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/TagWord.java index 395a5d42..3e64bf71 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/TagWord.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/TagWord.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/TagWordGroup.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/TagWordGroup.java index 385cf1d6..345c993a 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/TagWordGroup.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/TagWordGroup.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/dto/BatchAddTagDTO.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/dto/BatchAddTagDTO.java index 6b1ff8a4..8accdb7a 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/dto/BatchAddTagDTO.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/domain/dto/BatchAddTagDTO.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/exception/WordErrorCode.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/exception/WordErrorCode.java index 32e0d4a2..6e4676ea 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/exception/WordErrorCode.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/exception/WordErrorCode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/job/WordStatJobHandler.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/job/WordStatJobHandler.java index 5c322d8c..032a5dd7 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/job/WordStatJobHandler.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/job/WordStatJobHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/job/WordSyncJobHandler.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/job/WordSyncJobHandler.java index 6d8b616d..fc1765e8 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/job/WordSyncJobHandler.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/job/WordSyncJobHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/ErrorProneWordMapper.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/ErrorProneWordMapper.java index f2310499..0a7c6e53 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/ErrorProneWordMapper.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/ErrorProneWordMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/HotWordGroupMapper.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/HotWordGroupMapper.java index 6cc8b64a..74edc225 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/HotWordGroupMapper.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/HotWordGroupMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/HotWordMapper.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/HotWordMapper.java index 965f2158..4fcb45f6 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/HotWordMapper.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/HotWordMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/SensitiveWordMapper.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/SensitiveWordMapper.java index 58138f3f..6dbcd45e 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/SensitiveWordMapper.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/SensitiveWordMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/TagWordGroupMapper.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/TagWordGroupMapper.java index 03402ff7..db25ff68 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/TagWordGroupMapper.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/TagWordGroupMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/TagWordMapper.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/TagWordMapper.java index 1436343e..6557b4e2 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/TagWordMapper.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/mapper/TagWordMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/permission/WordPriv.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/permission/WordPriv.java index aa93abc6..c2c9f363 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/permission/WordPriv.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/permission/WordPriv.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/DFAModel.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/DFAModel.java index 532f395d..204e4568 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/DFAModel.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/DFAModel.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/DFANode.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/DFANode.java index 026e3f71..9c8525db 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/DFANode.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/DFANode.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/ErrorProneWordProcessor.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/ErrorProneWordProcessor.java index 67f3bfa6..3a0947a1 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/ErrorProneWordProcessor.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/ErrorProneWordProcessor.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/SensitiveWordProcessor.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/SensitiveWordProcessor.java index 44b5eecc..fb409b6a 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/SensitiveWordProcessor.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/SensitiveWordProcessor.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/SensitiveWordType.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/SensitiveWordType.java index 92244f00..a159f1da 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/SensitiveWordType.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/sensitive/SensitiveWordType.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IErrorProneWordService.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IErrorProneWordService.java index 7baa9325..53ae5967 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IErrorProneWordService.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IErrorProneWordService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IHotWordGroupService.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IHotWordGroupService.java index 39733bbb..0c91162b 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IHotWordGroupService.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IHotWordGroupService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IHotWordService.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IHotWordService.java index dcf1753a..592b5bbf 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IHotWordService.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/IHotWordService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ISensitiveWordService.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ISensitiveWordService.java index 4ccd3ee6..b177bda4 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ISensitiveWordService.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ISensitiveWordService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ITagWordGroupService.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ITagWordGroupService.java index 2e82ae7f..c7c297f3 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ITagWordGroupService.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ITagWordGroupService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ITagWordService.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ITagWordService.java index e19387cc..a024f259 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ITagWordService.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/ITagWordService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/WordStatService.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/WordStatService.java index 00f6c87a..6fc2e9f7 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/WordStatService.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/WordStatService.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/ErrorProneWordServiceImpl.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/ErrorProneWordServiceImpl.java index 88bb9870..3a48093a 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/ErrorProneWordServiceImpl.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/ErrorProneWordServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/HotWordGroupServiceImpl.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/HotWordGroupServiceImpl.java index 7e63820b..e7fe753e 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/HotWordGroupServiceImpl.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/HotWordGroupServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/HotWordServiceImpl.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/HotWordServiceImpl.java index 820e6cbe..9654a5e3 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/HotWordServiceImpl.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/HotWordServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/SensitiveWordServiceImpl.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/SensitiveWordServiceImpl.java index 3614ae69..432595d2 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/SensitiveWordServiceImpl.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/SensitiveWordServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/TagWordGroupServiceImpl.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/TagWordGroupServiceImpl.java index 92cd97e4..2d45f8e4 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/TagWordGroupServiceImpl.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/TagWordGroupServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/TagWordServiceImpl.java b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/TagWordServiceImpl.java index 615e1f4f..9a617087 100644 --- a/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/TagWordServiceImpl.java +++ b/chestnut-modules/chestnut-word/src/main/java/com/chestnut/word/service/impl/TagWordServiceImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2022-2024 兮玥(190785909@qq.com) + * Copyright 2022-2025 兮玥(190785909@qq.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/chestnut-modules/pom.xml b/chestnut-modules/pom.xml index 25a564fa..ef218118 100644 --- a/chestnut-modules/pom.xml +++ b/chestnut-modules/pom.xml @@ -5,7 +5,7 @@ com.chestnut chestnut - 1.5.3 + 1.5.4 4.0.0 diff --git a/chestnut-ui/package.json b/chestnut-ui/package.json index 769fa0c7..79148d6b 100644 --- a/chestnut-ui/package.json +++ b/chestnut-ui/package.json @@ -1,101 +1,103 @@ -{ - "name": "ChestnutCMS", - "version": "1.5.3", - "description": "ChestnutCMS[栗子内容管理系统]", - "author": "兮玥 - 190785909@qq.com", - "license": "Apache-2.0", - "copyright": "Copyright © 2022-2024 ChestnutCMS (1000mz.com) All Rights Reserved.", - "scripts": { - "dev": "vue-cli-service serve", - "build:prod": "vue-cli-service build", - "build:stage": "vue-cli-service build --mode staging", - "preview": "node build/index.js --preview", - "lint": "eslint --ext .js,.vue src" - }, - "husky": { - "hooks": { - "pre-commit": "lint-staged" - } - }, - "lint-staged": { - "src/**/*.{js,vue}": [ - "eslint --fix", - "git add" - ] - }, - "keywords": [ - "vue", - "admin", - "dashboard", - "element-ui", - "boilerplate", - "admin-template", - "management-system" - ], - "repository": { - "type": "git", - "url": "https://gitee.com/liweiyi/ChestnutCMS.git" - }, - "dependencies": { - "@riophae/vue-treeselect": "0.4.0", - "axios": "0.24.0", - "clipboard": "2.0.8", - "core-js": "3.25.3", - "cropperjs": "^1.6.2", - "echarts": "4.9.0", - "element-ui": "2.15.13", - "file-saver": "2.0.5", - "fuse.js": "6.4.3", - "highlight.js": "9.18.5", - "hls.js": "^1.3.5", - "js-beautify": "1.13.0", - "js-cookie": "3.0.1", - "jsencrypt": "3.0.0-rc.1", - "mavon-editor": "^2.10.4", - "nprogress": "0.2.0", - "quill": "1.3.7", - "screenfull": "5.0.2", - "sortablejs": "1.10.2", - "vue": "2.6.12", - "vue-aplayer": "^1.6.1", - "vue-baidu-map": "^0.21.22", - "vue-codemirror": "^4.0.6", - "vue-count-to": "1.0.13", - "vue-cropper": "0.5.5", - "vue-i18n": "^8.28.2", - "vue-meta": "2.4.0", - "vue-router": "3.4.9", - "vue-video-player": "^5.0.2", - "vuedraggable": "2.24.3", - "vuex": "3.6.0" - }, - "devDependencies": { - "@vue/cli-plugin-babel": "4.4.6", - "@vue/cli-plugin-eslint": "4.4.6", - "@vue/cli-service": "4.4.6", - "babel-eslint": "10.1.0", - "babel-plugin-dynamic-import-node": "2.3.3", - "bpmn-js": "^17.11.1", - "chalk": "4.1.0", - "ckeditor5-custom-build": "file:ckeditor5", - "compression-webpack-plugin": "5.0.2", - "connect": "3.6.6", - "eslint": "7.15.0", - "eslint-plugin-vue": "7.2.0", - "lint-staged": "10.5.3", - "runjs": "4.4.2", - "sass": "1.32.13", - "sass-loader": "10.1.1", - "script-ext-html-webpack-plugin": "2.1.5", - "svg-sprite-loader": "5.1.1", - "vue-template-compiler": "2.6.12" - }, - "engines": { - "node": ">=8.9", - "npm": ">= 3.0.0" - }, - "browserslist": [ - "> 1%", - "last 2 versions" - ] -} +{ + "name": "ChestnutCMS", + "version": "1.5.4", + "description": "ChestnutCMS[栗子内容管理系统]", + "author": "兮玥 - 190785909@qq.com", + "license": "Apache-2.0", + "copyright": "Copyright © 2022-2025 ChestnutCMS (1000mz.com) All Rights Reserved.", + "scripts": { + "dev": "vue-cli-service serve", + "build:prod": "vue-cli-service build", + "build:stage": "vue-cli-service build --mode staging", + "preview": "node build/index.js --preview", + "lint": "eslint --ext .js,.vue src" + }, + "husky": { + "hooks": { + "pre-commit": "lint-staged" + } + }, + "lint-staged": { + "src/**/*.{js,vue}": [ + "eslint --fix", + "git add" + ] + }, + "keywords": [ + "vue", + "admin", + "dashboard", + "element-ui", + "boilerplate", + "admin-template", + "management-system" + ], + "repository": { + "type": "git", + "url": "https://gitee.com/liweiyi/ChestnutCMS.git" + }, + "dependencies": { + "@riophae/vue-treeselect": "0.4.0", + "axios": "0.24.0", + "clipboard": "2.0.8", + "codemirror": "^5.65.18", + "core-js": "3.25.3", + "cropperjs": "^1.6.2", + "echarts": "4.9.0", + "element-ui": "2.15.13", + "file-saver": "2.0.5", + "fuse.js": "6.4.3", + "highlight.js": "9.18.5", + "hls.js": "^1.3.5", + "js-beautify": "1.13.0", + "js-cookie": "3.0.1", + "jsencrypt": "3.0.0-rc.1", + "mavon-editor": "^2.10.4", + "nprogress": "0.2.0", + "quill": "1.3.7", + "screenfull": "5.0.2", + "simple-uploader.js": "^0.6.0", + "sortablejs": "1.10.2", + "spark-md5": "^3.0.2", + "vue": "2.6.12", + "vue-aplayer": "^1.6.1", + "vue-baidu-map": "^0.21.22", + "vue-count-to": "1.0.13", + "vue-cropper": "0.5.5", + "vue-i18n": "^8.28.2", + "vue-meta": "2.4.0", + "vue-router": "3.4.9", + "vue-video-player": "^5.0.2", + "vuedraggable": "2.24.3", + "vuex": "3.6.0" + }, + "devDependencies": { + "@vue/cli-plugin-babel": "4.4.6", + "@vue/cli-plugin-eslint": "4.4.6", + "@vue/cli-service": "4.4.6", + "babel-eslint": "10.1.0", + "babel-plugin-dynamic-import-node": "2.3.3", + "bpmn-js": "^17.11.1", + "chalk": "4.1.0", + "ckeditor5-custom-build": "file:ckeditor5", + "compression-webpack-plugin": "5.0.2", + "connect": "3.6.6", + "eslint": "7.15.0", + "eslint-plugin-vue": "7.2.0", + "lint-staged": "10.5.3", + "runjs": "4.4.2", + "sass": "1.32.13", + "sass-loader": "10.1.1", + "script-ext-html-webpack-plugin": "2.1.5", + "svg-sprite-loader": "5.1.1", + "vue-template-compiler": "2.6.12" + }, + "engines": { + "node": ">=8.9", + "npm": ">= 3.0.0" + }, + "browserslist": [ + "> 1%", + "last 2 versions" + ] +} diff --git a/chestnut-ui/public/UEditorPlus/third-party/codemirror/codemirror.css b/chestnut-ui/public/UEditorPlus/third-party/codemirror/codemirror.css index 3aa09b49..f4d5718a 100644 --- a/chestnut-ui/public/UEditorPlus/third-party/codemirror/codemirror.css +++ b/chestnut-ui/public/UEditorPlus/third-party/codemirror/codemirror.css @@ -1,106 +1,344 @@ +/* BASICS */ + .CodeMirror { - line-height: 1.5; - font-family: monospace; + /* Set height, width, borders, and global font properties here */ + font-family: monospace; + height: 300px; + color: black; + direction: ltr; +} + +/* PADDING */ + +.CodeMirror-lines { + padding: 4px 0; /* Vertical padding around content */ +} +.CodeMirror pre.CodeMirror-line, +.CodeMirror pre.CodeMirror-line-like { + padding: 0 4px; /* Horizontal padding of content */ +} + +.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler { + background-color: white; /* The little square between H and V scrollbars */ +} + +/* GUTTER */ + +.CodeMirror-gutters { + border-right: 1px solid #ddd; + background-color: #f7f7f7; + white-space: nowrap; +} +.CodeMirror-linenumbers {} +.CodeMirror-linenumber { + padding: 0 3px 0 5px; + min-width: 20px; + text-align: right; + color: #999; + white-space: nowrap; +} + +.CodeMirror-guttermarker { color: black; } +.CodeMirror-guttermarker-subtle { color: #999; } + +/* CURSOR */ + +.CodeMirror-cursor { + border-left: 1px solid black; + border-right: none; + width: 0; +} +/* Shown when moving in bi-directional text */ +.CodeMirror div.CodeMirror-secondarycursor { + border-left: 1px solid silver; +} +.cm-fat-cursor .CodeMirror-cursor { + width: auto; + border: 0 !important; + background: #7e7; +} +.cm-fat-cursor div.CodeMirror-cursors { + z-index: 1; +} +.cm-fat-cursor .CodeMirror-line::selection, +.cm-fat-cursor .CodeMirror-line > span::selection, +.cm-fat-cursor .CodeMirror-line > span > span::selection { background: transparent; } +.cm-fat-cursor .CodeMirror-line::-moz-selection, +.cm-fat-cursor .CodeMirror-line > span::-moz-selection, +.cm-fat-cursor .CodeMirror-line > span > span::-moz-selection { background: transparent; } +.cm-fat-cursor { caret-color: transparent; } +@-moz-keyframes blink { + 0% {} + 50% { background-color: transparent; } + 100% {} +} +@-webkit-keyframes blink { + 0% {} + 50% { background-color: transparent; } + 100% {} +} +@keyframes blink { + 0% {} + 50% { background-color: transparent; } + 100% {} +} + +/* Can style cursor different in overwrite (non-insert) mode */ +.CodeMirror-overwrite .CodeMirror-cursor {} + +.cm-tab { display: inline-block; text-decoration: inherit; } + +.CodeMirror-rulers { + position: absolute; + left: 0; right: 0; top: -50px; bottom: 0; + overflow: hidden; +} +.CodeMirror-ruler { + border-left: 1px solid #ccc; + top: 0; bottom: 0; + position: absolute; +} + +/* DEFAULT THEME */ + +.cm-s-default .cm-header {color: blue;} +.cm-s-default .cm-quote {color: #090;} +.cm-negative {color: #d44;} +.cm-positive {color: #292;} +.cm-header, .cm-strong {font-weight: bold;} +.cm-em {font-style: italic;} +.cm-link {text-decoration: underline;} +.cm-strikethrough {text-decoration: line-through;} + +.cm-s-default .cm-keyword {color: #708;} +.cm-s-default .cm-atom {color: #219;} +.cm-s-default .cm-number {color: #164;} +.cm-s-default .cm-def {color: #00f;} +.cm-s-default .cm-variable, +.cm-s-default .cm-punctuation, +.cm-s-default .cm-property, +.cm-s-default .cm-operator {} +.cm-s-default .cm-variable-2 {color: #05a;} +.cm-s-default .cm-variable-3, .cm-s-default .cm-type {color: #085;} +.cm-s-default .cm-comment {color: #a50;} +.cm-s-default .cm-string {color: #a11;} +.cm-s-default .cm-string-2 {color: #f50;} +.cm-s-default .cm-meta {color: #555;} +.cm-s-default .cm-qualifier {color: #555;} +.cm-s-default .cm-builtin {color: #30a;} +.cm-s-default .cm-bracket {color: #997;} +.cm-s-default .cm-tag {color: #170;} +.cm-s-default .cm-attribute {color: #00c;} +.cm-s-default .cm-hr {color: #999;} +.cm-s-default .cm-link {color: #00c;} + +.cm-s-default .cm-error {color: #f00;} +.cm-invalidchar {color: #f00;} + +.CodeMirror-composing { border-bottom: 2px solid; } + +/* Default styles for common addons */ + +div.CodeMirror span.CodeMirror-matchingbracket {color: #0b0;} +div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;} +.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); } +.CodeMirror-activeline-background {background: #e8f2ff;} + +/* STOP */ + +/* The rest of this file contains styles related to the mechanics of + the editor. You probably shouldn't touch them. */ + +.CodeMirror { + position: relative; + overflow: hidden; + background: white; } .CodeMirror-scroll { - overflow: auto; - height: 300px; - /* This is needed to prevent an IE[67] bug where the scrolled content - is visible outside of the scrolling box. */ - position: relative; + overflow: scroll !important; /* Things will break if this is overridden */ + /* 50px is the magic margin used to hide the element's real scrollbars */ + /* See overflow: hidden in .CodeMirror */ + margin-bottom: -50px; margin-right: -50px; + padding-bottom: 50px; + height: 100%; + outline: none; /* Prevent dragging from highlighting the element */ + position: relative; + z-index: 0; +} +.CodeMirror-sizer { + position: relative; + border-right: 50px solid transparent; } +/* The fake, visible scrollbars. Used to force redraw during scrolling + before actual scrolling happens, thus preventing shaking and + flickering artifacts. */ +.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler { + position: absolute; + z-index: 6; + display: none; + outline: none; +} +.CodeMirror-vscrollbar { + right: 0; top: 0; + overflow-x: hidden; + overflow-y: scroll; +} +.CodeMirror-hscrollbar { + bottom: 0; left: 0; + overflow-y: hidden; + overflow-x: scroll; +} +.CodeMirror-scrollbar-filler { + right: 0; bottom: 0; +} +.CodeMirror-gutter-filler { + left: 0; bottom: 0; +} + +.CodeMirror-gutters { + position: absolute; left: 0; top: 0; + min-height: 100%; + z-index: 3; +} .CodeMirror-gutter { - position: absolute; left: 0; top: 0; - z-index: 10; - background-color: #f7f7f7; - border-right: 1px solid #eee; - min-width: 2em; - height: 100%; + white-space: normal; + height: 100%; + display: inline-block; + vertical-align: top; + margin-bottom: -50px; } -.CodeMirror-gutter-text { - color: #aaa; - text-align: right; - padding: .4em .2em .4em .4em; - white-space: pre !important; +.CodeMirror-gutter-wrapper { + position: absolute; + z-index: 4; + background: none !important; + border: none !important; } +.CodeMirror-gutter-background { + position: absolute; + top: 0; bottom: 0; + z-index: 4; +} +.CodeMirror-gutter-elt { + position: absolute; + cursor: default; + z-index: 4; +} +.CodeMirror-gutter-wrapper ::selection { background-color: transparent } +.CodeMirror-gutter-wrapper ::-moz-selection { background-color: transparent } + .CodeMirror-lines { - padding: .4em; + cursor: text; + min-height: 1px; /* prevents collapsing before first draw */ +} +.CodeMirror pre.CodeMirror-line, +.CodeMirror pre.CodeMirror-line-like { + /* Reset some styles that the rest of the page might have set */ + -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; + border-width: 0; + background: transparent; + font-family: inherit; + font-size: inherit; + margin: 0; + white-space: pre; + word-wrap: normal; + line-height: inherit; + color: inherit; + z-index: 2; + position: relative; + overflow: visible; + -webkit-tap-highlight-color: transparent; + -webkit-font-variant-ligatures: contextual; + font-variant-ligatures: contextual; +} +.CodeMirror-wrap pre.CodeMirror-line, +.CodeMirror-wrap pre.CodeMirror-line-like { + word-wrap: break-word; + white-space: pre-wrap; + word-break: normal; } -.CodeMirror pre { - -moz-border-radius: 0; - -webkit-border-radius: 0; - -o-border-radius: 0; - border-radius: 0; - border-width: 0; margin: 0; padding: 0; background: transparent; - font-family: inherit; - font-size: inherit; - padding: 0; margin: 0; - white-space: pre; - word-wrap: normal; +.CodeMirror-linebackground { + position: absolute; + left: 0; right: 0; top: 0; bottom: 0; + z-index: 0; } -.CodeMirror-wrap pre { - word-wrap: break-word; - white-space: pre-wrap; - line-height: 1.4; -} -.CodeMirror-wrap .CodeMirror-scroll { - overflow-x: hidden; +.CodeMirror-linewidget { + position: relative; + z-index: 2; + padding: 0.1px; /* Force widget margins to stay inside of the container */ } -.CodeMirror textarea { - outline: none !important; +.CodeMirror-widget {} + +.CodeMirror-rtl pre { direction: rtl; } + +.CodeMirror-code { + outline: none; } -.CodeMirror pre.CodeMirror-cursor { - z-index: 10; - position: absolute; +/* Force content-box sizing for the elements where we expect it */ +.CodeMirror-scroll, +.CodeMirror-sizer, +.CodeMirror-gutter, +.CodeMirror-gutters, +.CodeMirror-linenumber { + -moz-box-sizing: content-box; + box-sizing: content-box; +} + +.CodeMirror-measure { + position: absolute; + width: 100%; + height: 0; + overflow: hidden; + visibility: hidden; +} + +.CodeMirror-cursor { + position: absolute; + pointer-events: none; +} +.CodeMirror-measure pre { position: static; } + +div.CodeMirror-cursors { + visibility: hidden; + position: relative; + z-index: 3; +} +div.CodeMirror-dragcursors { + visibility: visible; +} + +.CodeMirror-focused div.CodeMirror-cursors { + visibility: visible; +} + +.CodeMirror-selected { background: #d9d9d9; } +.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; } +.CodeMirror-crosshair { cursor: crosshair; } +.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; } +.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; } + +.cm-searching { + background-color: #ffa; + background-color: rgba(255, 255, 0, .4); +} + +/* Used to force a border model for a node */ +.cm-force-border { padding-right: .1px; } + +@media print { + /* Hide the cursor when printing */ + .CodeMirror div.CodeMirror-cursors { visibility: hidden; - border-left: 1px solid black; - margin-top: -2px; -} -.CodeMirror-focused pre.CodeMirror-cursor { - visibility: visible; + } } -span.CodeMirror-selected { background: #d9d9d9; } -.CodeMirror-focused span.CodeMirror-selected { background: #d2dcf8; } +/* See issue #2901 */ +.cm-tab-wrap-hack:after { content: ''; } -.CodeMirror-searching {background: #ffa;} - -/* Default theme */ - -.cm-s-default span.cm-keyword {color: #708;} -.cm-s-default span.cm-atom {color: #219;} -.cm-s-default span.cm-number {color: #164;} -.cm-s-default span.cm-def {color: #00f;} -.cm-s-default span.cm-variable {color: black;} -.cm-s-default span.cm-variable-2 {color: #05a;} -.cm-s-default span.cm-variable-3 {color: #085;} -.cm-s-default span.cm-property {color: black;} -.cm-s-default span.cm-operator {color: black;} -.cm-s-default span.cm-comment {color: #a50;} -.cm-s-default span.cm-string {color: #a11;} -.cm-s-default span.cm-string-2 {color: #f50;} -.cm-s-default span.cm-meta {color: #555;} -.cm-s-default span.cm-error {color: #f00;} -.cm-s-default span.cm-qualifier {color: #555;} -.cm-s-default span.cm-builtin {color: #30a;} -.cm-s-default span.cm-bracket {color: #cc7;} -.cm-s-default span.cm-tag {color: #170;} -.cm-s-default span.cm-attribute {color: #00c;} -.cm-s-default span.cm-header {color: #a0a;} -.cm-s-default span.cm-quote {color: #090;} -.cm-s-default span.cm-hr {color: #999;} -.cm-s-default span.cm-link {color: #00c;} - -span.cm-header, span.cm-strong {font-weight: bold;} -span.cm-em {font-style: italic;} -span.cm-emstrong {font-style: italic; font-weight: bold;} -span.cm-link {text-decoration: underline;} - -div.CodeMirror span.CodeMirror-matchingbracket {color: #0f0;} -div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;} +/* Help users use markselection to safely style text background */ +span.CodeMirror-selectedtext { background: none; } diff --git a/chestnut-ui/public/UEditorPlus/third-party/codemirror/codemirror.js b/chestnut-ui/public/UEditorPlus/third-party/codemirror/codemirror.js index 966c3207..e42b63bb 100644 --- a/chestnut-ui/public/UEditorPlus/third-party/codemirror/codemirror.js +++ b/chestnut-ui/public/UEditorPlus/third-party/codemirror/codemirror.js @@ -1,3581 +1,9884 @@ -// CodeMirror version 2.2 +// CodeMirror, copyright (c) by Marijn Haverbeke and others +// Distributed under an MIT license: https://codemirror.net/5/LICENSE + +// This is CodeMirror (https://codemirror.net/5), a code editor +// implemented in JavaScript on top of the browser's DOM. // -// All functions that need access to the editor's state live inside -// the CodeMirror function. Below that, at the bottom of the file, -// some utilities are defined. - -// CodeMirror is the only global var we claim -var CodeMirror = (function() { - // This is the function that produces an editor instance. It's - // closure is used to store the editor state. - function CodeMirror(place, givenOptions) { - // Determine effective options based on given values and defaults. - var options = {}, defaults = CodeMirror.defaults; - for (var opt in defaults) - if (defaults.hasOwnProperty(opt)) - options[opt] = (givenOptions && givenOptions.hasOwnProperty(opt) ? givenOptions : defaults)[opt]; - - var targetDocument = options["document"]; - // The element in which the editor lives. - var wrapper = targetDocument.createElement("div"); - wrapper.className = "CodeMirror" + (options.lineWrapping ? " CodeMirror-wrap" : ""); - // This mess creates the base DOM structure for the editor. - wrapper.innerHTML = - '
' + // Wraps and hides input textarea - '
' + - '
' + - '
' + // Set to the height of the text, causes scrolling - '
' + // Moved around its parent to cover visible view - '
' + - // Provides positioning relative to (visible) text origin - '
' + - '
' + - '
 
' + // Absolutely positioned blinky cursor - '
' + // This DIV contains the actual code - '
'; - if (place.appendChild) place.appendChild(wrapper); else place(wrapper); - // I've never seen more elegant code in my life. - var inputDiv = wrapper.firstChild, input = inputDiv.firstChild, - scroller = wrapper.lastChild, code = scroller.firstChild, - mover = code.firstChild, gutter = mover.firstChild, gutterText = gutter.firstChild, - lineSpace = gutter.nextSibling.firstChild, measure = lineSpace.firstChild, - cursor = measure.nextSibling, lineDiv = cursor.nextSibling; - themeChanged(); - // Needed to hide big blue blinking cursor on Mobile Safari - if (/AppleWebKit/.test(navigator.userAgent) && /Mobile\/\w+/.test(navigator.userAgent)) input.style.width = "0px"; - if (!webkit) lineSpace.draggable = true; - if (options.tabindex != null) input.tabIndex = options.tabindex; - if (!options.gutter && !options.lineNumbers) gutter.style.display = "none"; - - // Check for problem with IE innerHTML not working when we have a - // P (or similar) parent node. - try { stringWidth("x"); } - catch (e) { - if (e.message.match(/runtime/i)) - e = new Error("A CodeMirror inside a P-style element does not work in Internet Explorer. (innerHTML bug)"); - throw e; - } - - // Delayed object wrap timeouts, making sure only one is active. blinker holds an interval. - var poll = new Delayed(), highlight = new Delayed(), blinker; - - // mode holds a mode API object. doc is the tree of Line objects, - // work an array of lines that should be parsed, and history the - // undo history (instance of History constructor). - var mode, doc = new BranchChunk([new LeafChunk([new Line("")])]), work, focused; - loadMode(); - // The selection. These are always maintained to point at valid - // positions. Inverted is used to remember that the user is - // selecting bottom-to-top. - var sel = {from: {line: 0, ch: 0}, to: {line: 0, ch: 0}, inverted: false}; - // Selection-related flags. shiftSelecting obviously tracks - // whether the user is holding shift. - var shiftSelecting, lastClick, lastDoubleClick, draggingText, overwrite = false; - // Variables used by startOperation/endOperation to track what - // happened during the operation. - var updateInput, userSelChange, changes, textChanged, selectionChanged, leaveInputAlone, - gutterDirty, callbacks; - // Current visible range (may be bigger than the view window). - var displayOffset = 0, showingFrom = 0, showingTo = 0, lastSizeC = 0; - // bracketHighlighted is used to remember that a backet has been - // marked. - var bracketHighlighted; - // Tracks the maximum line length so that the horizontal scrollbar - // can be kept static when scrolling. - var maxLine = "", maxWidth, tabText = computeTabText(); - - // Initialize the content. - operation(function(){setValue(options.value || ""); updateInput = false;})(); - var history = new History(); - - // Register our event handlers. - connect(scroller, "mousedown", operation(onMouseDown)); - connect(scroller, "dblclick", operation(onDoubleClick)); - connect(lineSpace, "dragstart", onDragStart); - connect(lineSpace, "selectstart", e_preventDefault); - // Gecko browsers fire contextmenu *after* opening the menu, at - // which point we can't mess with it anymore. Context menu is - // handled in onMouseDown for Gecko. - if (!gecko) connect(scroller, "contextmenu", onContextMenu); - connect(scroller, "scroll", function() { - updateDisplay([]); - if (options.fixedGutter) gutter.style.left = scroller.scrollLeft + "px"; - if (options.onScroll) options.onScroll(instance); - }); - connect(window, "resize", function() {updateDisplay(true);}); - connect(input, "keyup", operation(onKeyUp)); - connect(input, "input", fastPoll); - connect(input, "keydown", operation(onKeyDown)); - connect(input, "keypress", operation(onKeyPress)); - connect(input, "focus", onFocus); - connect(input, "blur", onBlur); - - connect(scroller, "dragenter", e_stop); - connect(scroller, "dragover", e_stop); - connect(scroller, "drop", operation(onDrop)); - connect(scroller, "paste", function(){focusInput(); fastPoll();}); - connect(input, "paste", fastPoll); - connect(input, "cut", operation(function(){replaceSelection("");})); - - // IE throws unspecified error in certain cases, when - // trying to access activeElement before onload - var hasFocus; try { hasFocus = (targetDocument.activeElement == input); } catch(e) { } - if (hasFocus) setTimeout(onFocus, 20); - else onBlur(); - - function isLine(l) {return l >= 0 && l < doc.size;} - // The instance object that we'll return. Mostly calls out to - // local functions in the CodeMirror function. Some do some extra - // range checking and/or clipping. operation is used to wrap the - // call so that changes it makes are tracked, and the display is - // updated afterwards. - var instance = wrapper.CodeMirror = { - getValue: getValue, - setValue: operation(setValue), - getSelection: getSelection, - replaceSelection: operation(replaceSelection), - focus: function(){focusInput(); onFocus(); fastPoll();}, - setOption: function(option, value) { - var oldVal = options[option]; - options[option] = value; - if (option == "mode" || option == "indentUnit") loadMode(); - else if (option == "readOnly" && value) {onBlur(); input.blur();} - else if (option == "theme") themeChanged(); - else if (option == "lineWrapping" && oldVal != value) operation(wrappingChanged)(); - else if (option == "tabSize") operation(tabsChanged)(); - if (option == "lineNumbers" || option == "gutter" || option == "firstLineNumber" || option == "theme") - operation(gutterChanged)(); - }, - getOption: function(option) {return options[option];}, - undo: operation(undo), - redo: operation(redo), - indentLine: operation(function(n, dir) { - if (isLine(n)) indentLine(n, dir == null ? "smart" : dir ? "add" : "subtract"); - }), - indentSelection: operation(indentSelected), - historySize: function() {return {undo: history.done.length, redo: history.undone.length};}, - clearHistory: function() {history = new History();}, - matchBrackets: operation(function(){matchBrackets(true);}), - getTokenAt: operation(function(pos) { - pos = clipPos(pos); - return getLine(pos.line).getTokenAt(mode, getStateBefore(pos.line), pos.ch); - }), - getStateAfter: function(line) { - line = clipLine(line == null ? doc.size - 1: line); - return getStateBefore(line + 1); - }, - cursorCoords: function(start){ - if (start == null) start = sel.inverted; - return pageCoords(start ? sel.from : sel.to); - }, - charCoords: function(pos){return pageCoords(clipPos(pos));}, - coordsChar: function(coords) { - var off = eltOffset(lineSpace); - return coordsChar(coords.x - off.left, coords.y - off.top); - }, - markText: operation(markText), - setBookmark: setBookmark, - setMarker: operation(addGutterMarker), - clearMarker: operation(removeGutterMarker), - setLineClass: operation(setLineClass), - hideLine: operation(function(h) {return setLineHidden(h, true);}), - showLine: operation(function(h) {return setLineHidden(h, false);}), - onDeleteLine: function(line, f) { - if (typeof line == "number") { - if (!isLine(line)) return null; - line = getLine(line); - } - (line.handlers || (line.handlers = [])).push(f); - return line; - }, - lineInfo: lineInfo, - addWidget: function(pos, node, scroll, vert, horiz) { - pos = localCoords(clipPos(pos)); - var top = pos.yBot, left = pos.x; - node.style.position = "absolute"; - code.appendChild(node); - if (vert == "over") top = pos.y; - else if (vert == "near") { - var vspace = Math.max(scroller.offsetHeight, doc.height * textHeight()), - hspace = Math.max(code.clientWidth, lineSpace.clientWidth) - paddingLeft(); - if (pos.yBot + node.offsetHeight > vspace && pos.y > node.offsetHeight) - top = pos.y - node.offsetHeight; - if (left + node.offsetWidth > hspace) - left = hspace - node.offsetWidth; - } - node.style.top = (top + paddingTop()) + "px"; - node.style.left = node.style.right = ""; - if (horiz == "right") { - left = code.clientWidth - node.offsetWidth; - node.style.right = "0px"; - } else { - if (horiz == "left") left = 0; - else if (horiz == "middle") left = (code.clientWidth - node.offsetWidth) / 2; - node.style.left = (left + paddingLeft()) + "px"; - } - if (scroll) - scrollIntoView(left, top, left + node.offsetWidth, top + node.offsetHeight); - }, - - lineCount: function() {return doc.size;}, - clipPos: clipPos, - getCursor: function(start) { - if (start == null) start = sel.inverted; - return copyPos(start ? sel.from : sel.to); - }, - somethingSelected: function() {return !posEq(sel.from, sel.to);}, - setCursor: operation(function(line, ch, user) { - if (ch == null && typeof line.line == "number") setCursor(line.line, line.ch, user); - else setCursor(line, ch, user); - }), - setSelection: operation(function(from, to, user) { - (user ? setSelectionUser : setSelection)(clipPos(from), clipPos(to || from)); - }), - getLine: function(line) {if (isLine(line)) return getLine(line).text;}, - getLineHandle: function(line) {if (isLine(line)) return getLine(line);}, - setLine: operation(function(line, text) { - if (isLine(line)) replaceRange(text, {line: line, ch: 0}, {line: line, ch: getLine(line).text.length}); - }), - removeLine: operation(function(line) { - if (isLine(line)) replaceRange("", {line: line, ch: 0}, clipPos({line: line+1, ch: 0})); - }), - replaceRange: operation(replaceRange), - getRange: function(from, to) {return getRange(clipPos(from), clipPos(to));}, - - execCommand: function(cmd) {return commands[cmd](instance);}, - // Stuff used by commands, probably not much use to outside code. - moveH: operation(moveH), - deleteH: operation(deleteH), - moveV: operation(moveV), - toggleOverwrite: function() {overwrite = !overwrite;}, - - posFromIndex: function(off) { - var lineNo = 0, ch; - doc.iter(0, doc.size, function(line) { - var sz = line.text.length + 1; - if (sz > off) { ch = off; return true; } - off -= sz; - ++lineNo; - }); - return clipPos({line: lineNo, ch: ch}); - }, - indexFromPos: function (coords) { - if (coords.line < 0 || coords.ch < 0) return 0; - var index = coords.ch; - doc.iter(0, coords.line, function (line) { - index += line.text.length + 1; - }); - return index; - }, - - operation: function(f){return operation(f)();}, - refresh: function(){updateDisplay(true);}, - getInputField: function(){return input;}, - getWrapperElement: function(){return wrapper;}, - getScrollerElement: function(){return scroller;}, - getGutterElement: function(){return gutter;} - }; - - function getLine(n) { return getLineAt(doc, n); } - function updateLineHeight(line, height) { - gutterDirty = true; - var diff = height - line.height; - for (var n = line; n; n = n.parent) n.height += diff; - } - - function setValue(code) { - var top = {line: 0, ch: 0}; - updateLines(top, {line: doc.size - 1, ch: getLine(doc.size-1).text.length}, - splitLines(code), top, top); - updateInput = true; - } - function getValue(code) { - var text = []; - doc.iter(0, doc.size, function(line) { text.push(line.text); }); - return text.join("\n"); - } - - function onMouseDown(e) { - setShift(e.shiftKey); - // Check whether this is a click in a widget - for (var n = e_target(e); n != wrapper; n = n.parentNode) - if (n.parentNode == code && n != mover) return; - - // See if this is a click in the gutter - for (var n = e_target(e); n != wrapper; n = n.parentNode) - if (n.parentNode == gutterText) { - if (options.onGutterClick) - options.onGutterClick(instance, indexOf(gutterText.childNodes, n) + showingFrom, e); - return e_preventDefault(e); - } - - var start = posFromMouse(e); - - switch (e_button(e)) { - case 3: - if (gecko && !mac) onContextMenu(e); - return; - case 2: - if (start) setCursor(start.line, start.ch, true); - return; - } - // For button 1, if it was clicked inside the editor - // (posFromMouse returning non-null), we have to adjust the - // selection. - if (!start) {if (e_target(e) == scroller) e_preventDefault(e); return;} - - if (!focused) onFocus(); - - var now = +new Date; - if (lastDoubleClick && lastDoubleClick.time > now - 400 && posEq(lastDoubleClick.pos, start)) { - e_preventDefault(e); - setTimeout(focusInput, 20); - return selectLine(start.line); - } else if (lastClick && lastClick.time > now - 400 && posEq(lastClick.pos, start)) { - lastDoubleClick = {time: now, pos: start}; - e_preventDefault(e); - return selectWordAt(start); - } else { lastClick = {time: now, pos: start}; } - - var last = start, going; - if (dragAndDrop && !posEq(sel.from, sel.to) && - !posLess(start, sel.from) && !posLess(sel.to, start)) { - // Let the drag handler handle this. - if (webkit) lineSpace.draggable = true; - var up = connect(targetDocument, "mouseup", operation(function(e2) { - if (webkit) lineSpace.draggable = false; - draggingText = false; - up(); - if (Math.abs(e.clientX - e2.clientX) + Math.abs(e.clientY - e2.clientY) < 10) { - e_preventDefault(e2); - setCursor(start.line, start.ch, true); - focusInput(); - } - }), true); - draggingText = true; - return; - } - e_preventDefault(e); - setCursor(start.line, start.ch, true); - - function extend(e) { - var cur = posFromMouse(e, true); - if (cur && !posEq(cur, last)) { - if (!focused) onFocus(); - last = cur; - setSelectionUser(start, cur); - updateInput = false; - var visible = visibleLines(); - if (cur.line >= visible.to || cur.line < visible.from) - going = setTimeout(operation(function(){extend(e);}), 150); - } - } - - var move = connect(targetDocument, "mousemove", operation(function(e) { - clearTimeout(going); - e_preventDefault(e); - extend(e); - }), true); - var up = connect(targetDocument, "mouseup", operation(function(e) { - clearTimeout(going); - var cur = posFromMouse(e); - if (cur) setSelectionUser(start, cur); - e_preventDefault(e); - focusInput(); - updateInput = true; - move(); up(); - }), true); - } - function onDoubleClick(e) { - for (var n = e_target(e); n != wrapper; n = n.parentNode) - if (n.parentNode == gutterText) return e_preventDefault(e); - var start = posFromMouse(e); - if (!start) return; - lastDoubleClick = {time: +new Date, pos: start}; - e_preventDefault(e); - selectWordAt(start); - } - function onDrop(e) { - e.preventDefault(); - var pos = posFromMouse(e, true), files = e.dataTransfer.files; - if (!pos || options.readOnly) return; - if (files && files.length && window.FileReader && window.File) { - function loadFile(file, i) { - var reader = new FileReader; - reader.onload = function() { - text[i] = reader.result; - if (++read == n) { - pos = clipPos(pos); - operation(function() { - var end = replaceRange(text.join(""), pos, pos); - setSelectionUser(pos, end); - })(); - } - }; - reader.readAsText(file); - } - var n = files.length, text = Array(n), read = 0; - for (var i = 0; i < n; ++i) loadFile(files[i], i); - } - else { - try { - var text = e.dataTransfer.getData("Text"); - if (text) { - var end = replaceRange(text, pos, pos); - var curFrom = sel.from, curTo = sel.to; - setSelectionUser(pos, end); - if (draggingText) replaceRange("", curFrom, curTo); - focusInput(); - } - } - catch(e){} - } - } - function onDragStart(e) { - var txt = getSelection(); - // This will reset escapeElement - htmlEscape(txt); - e.dataTransfer.setDragImage(escapeElement, 0, 0); - e.dataTransfer.setData("Text", txt); - } - function handleKeyBinding(e) { - var name = keyNames[e.keyCode], next = keyMap[options.keyMap].auto, bound, dropShift; - if (name == null || e.altGraphKey) { - if (next) options.keyMap = next; - return null; - } - if (e.altKey) name = "Alt-" + name; - if (e.ctrlKey) name = "Ctrl-" + name; - if (e.metaKey) name = "Cmd-" + name; - if (e.shiftKey && (bound = lookupKey("Shift-" + name, options.extraKeys, options.keyMap))) { - dropShift = true; - } else { - bound = lookupKey(name, options.extraKeys, options.keyMap); - } - if (typeof bound == "string") { - if (commands.propertyIsEnumerable(bound)) bound = commands[bound]; - else bound = null; - } - if (next && (bound || !isModifierKey(e))) options.keyMap = next; - if (!bound) return false; - if (dropShift) { - var prevShift = shiftSelecting; - shiftSelecting = null; - bound(instance); - shiftSelecting = prevShift; - } else bound(instance); - e_preventDefault(e); - return true; - } - var lastStoppedKey = null; - function onKeyDown(e) { - if (!focused) onFocus(); - var code = e.keyCode; - // IE does strange things with escape. - if (ie && code == 27) { e.returnValue = false; } - setShift(code == 16 || e.shiftKey); - // First give onKeyEvent option a chance to handle this. - if (options.onKeyEvent && options.onKeyEvent(instance, addStop(e))) return; - var handled = handleKeyBinding(e); - if (window.opera) { - lastStoppedKey = handled ? e.keyCode : null; - // Opera has no cut event... we try to at least catch the key combo - if (!handled && (mac ? e.metaKey : e.ctrlKey) && e.keyCode == 88) - replaceSelection(""); - } - } - function onKeyPress(e) { - if (window.opera && e.keyCode == lastStoppedKey) {lastStoppedKey = null; e_preventDefault(e); return;} - if (options.onKeyEvent && options.onKeyEvent(instance, addStop(e))) return; - if (window.opera && !e.which && handleKeyBinding(e)) return; - if (options.electricChars && mode.electricChars) { - var ch = String.fromCharCode(e.charCode == null ? e.keyCode : e.charCode); - if (mode.electricChars.indexOf(ch) > -1) - setTimeout(operation(function() {indentLine(sel.to.line, "smart");}), 75); - } - fastPoll(); - } - function onKeyUp(e) { - if (options.onKeyEvent && options.onKeyEvent(instance, addStop(e))) return; - if (e.keyCode == 16) shiftSelecting = null; - } - - function onFocus() { - if (options.readOnly) return; - if (!focused) { - if (options.onFocus) options.onFocus(instance); - focused = true; - if (wrapper.className.search(/\bCodeMirror-focused\b/) == -1) - wrapper.className += " CodeMirror-focused"; - if (!leaveInputAlone) resetInput(true); - } - slowPoll(); - restartBlink(); - } - function onBlur() { - if (focused) { - if (options.onBlur) options.onBlur(instance); - focused = false; - wrapper.className = wrapper.className.replace(" CodeMirror-focused", ""); - } - clearInterval(blinker); - setTimeout(function() {if (!focused) shiftSelecting = null;}, 150); - } - - // Replace the range from from to to by the strings in newText. - // Afterwards, set the selection to selFrom, selTo. - function updateLines(from, to, newText, selFrom, selTo) { - if (history) { - var old = []; - doc.iter(from.line, to.line + 1, function(line) { old.push(line.text); }); - history.addChange(from.line, newText.length, old); - while (history.done.length > options.undoDepth) history.done.shift(); - } - updateLinesNoUndo(from, to, newText, selFrom, selTo); - } - function unredoHelper(from, to) { - var change = from.pop(); - if (change) { - var replaced = [], end = change.start + change.added; - doc.iter(change.start, end, function(line) { replaced.push(line.text); }); - to.push({start: change.start, added: change.old.length, old: replaced}); - var pos = clipPos({line: change.start + change.old.length - 1, - ch: editEnd(replaced[replaced.length-1], change.old[change.old.length-1])}); - updateLinesNoUndo({line: change.start, ch: 0}, {line: end - 1, ch: getLine(end-1).text.length}, change.old, pos, pos); - updateInput = true; - } - } - function undo() {unredoHelper(history.done, history.undone);} - function redo() {unredoHelper(history.undone, history.done);} - - function updateLinesNoUndo(from, to, newText, selFrom, selTo) { - var recomputeMaxLength = false, maxLineLength = maxLine.length; - if (!options.lineWrapping) - doc.iter(from.line, to.line, function(line) { - if (line.text.length == maxLineLength) {recomputeMaxLength = true; return true;} - }); - if (from.line != to.line || newText.length > 1) gutterDirty = true; - - var nlines = to.line - from.line, firstLine = getLine(from.line), lastLine = getLine(to.line); - // First adjust the line structure, taking some care to leave highlighting intact. - if (from.ch == 0 && to.ch == 0 && newText[newText.length - 1] == "") { - // This is a whole-line replace. Treated specially to make - // sure line objects move the way they are supposed to. - var added = [], prevLine = null; - if (from.line) { - prevLine = getLine(from.line - 1); - prevLine.fixMarkEnds(lastLine); - } else lastLine.fixMarkStarts(); - for (var i = 0, e = newText.length - 1; i < e; ++i) - added.push(Line.inheritMarks(newText[i], prevLine)); - if (nlines) doc.remove(from.line, nlines, callbacks); - if (added.length) doc.insert(from.line, added); - } else if (firstLine == lastLine) { - if (newText.length == 1) - firstLine.replace(from.ch, to.ch, newText[0]); - else { - lastLine = firstLine.split(to.ch, newText[newText.length-1]); - firstLine.replace(from.ch, null, newText[0]); - firstLine.fixMarkEnds(lastLine); - var added = []; - for (var i = 1, e = newText.length - 1; i < e; ++i) - added.push(Line.inheritMarks(newText[i], firstLine)); - added.push(lastLine); - doc.insert(from.line + 1, added); - } - } else if (newText.length == 1) { - firstLine.replace(from.ch, null, newText[0]); - lastLine.replace(null, to.ch, ""); - firstLine.append(lastLine); - doc.remove(from.line + 1, nlines, callbacks); - } else { - var added = []; - firstLine.replace(from.ch, null, newText[0]); - lastLine.replace(null, to.ch, newText[newText.length-1]); - firstLine.fixMarkEnds(lastLine); - for (var i = 1, e = newText.length - 1; i < e; ++i) - added.push(Line.inheritMarks(newText[i], firstLine)); - if (nlines > 1) doc.remove(from.line + 1, nlines - 1, callbacks); - doc.insert(from.line + 1, added); - } - if (options.lineWrapping) { - var perLine = scroller.clientWidth / charWidth() - 3; - doc.iter(from.line, from.line + newText.length, function(line) { - if (line.hidden) return; - var guess = Math.ceil(line.text.length / perLine) || 1; - if (guess != line.height) updateLineHeight(line, guess); - }); - } else { - doc.iter(from.line, i + newText.length, function(line) { - var l = line.text; - if (l.length > maxLineLength) { - maxLine = l; maxLineLength = l.length; maxWidth = null; - recomputeMaxLength = false; - } - }); - if (recomputeMaxLength) { - maxLineLength = 0; maxLine = ""; maxWidth = null; - doc.iter(0, doc.size, function(line) { - var l = line.text; - if (l.length > maxLineLength) { - maxLineLength = l.length; maxLine = l; - } - }); - } - } - - // Add these lines to the work array, so that they will be - // highlighted. Adjust work lines if lines were added/removed. - var newWork = [], lendiff = newText.length - nlines - 1; - for (var i = 0, l = work.length; i < l; ++i) { - var task = work[i]; - if (task < from.line) newWork.push(task); - else if (task > to.line) newWork.push(task + lendiff); - } - var hlEnd = from.line + Math.min(newText.length, 500); - highlightLines(from.line, hlEnd); - newWork.push(hlEnd); - work = newWork; - startWorker(100); - // Remember that these lines changed, for updating the display - changes.push({from: from.line, to: to.line + 1, diff: lendiff}); - var changeObj = {from: from, to: to, text: newText}; - if (textChanged) { - for (var cur = textChanged; cur.next; cur = cur.next) {} - cur.next = changeObj; - } else textChanged = changeObj; - - // Update the selection - function updateLine(n) {return n <= Math.min(to.line, to.line + lendiff) ? n : n + lendiff;} - setSelection(selFrom, selTo, updateLine(sel.from.line), updateLine(sel.to.line)); - - // Make sure the scroll-size div has the correct height. - code.style.height = (doc.height * textHeight() + 2 * paddingTop()) + "px"; - } - - function replaceRange(code, from, to) { - from = clipPos(from); - if (!to) to = from; else to = clipPos(to); - code = splitLines(code); - function adjustPos(pos) { - if (posLess(pos, from)) return pos; - if (!posLess(to, pos)) return end; - var line = pos.line + code.length - (to.line - from.line) - 1; - var ch = pos.ch; - if (pos.line == to.line) - ch += code[code.length-1].length - (to.ch - (to.line == from.line ? from.ch : 0)); - return {line: line, ch: ch}; - } - var end; - replaceRange1(code, from, to, function(end1) { - end = end1; - return {from: adjustPos(sel.from), to: adjustPos(sel.to)}; - }); - return end; - } - function replaceSelection(code, collapse) { - replaceRange1(splitLines(code), sel.from, sel.to, function(end) { - if (collapse == "end") return {from: end, to: end}; - else if (collapse == "start") return {from: sel.from, to: sel.from}; - else return {from: sel.from, to: end}; - }); - } - function replaceRange1(code, from, to, computeSel) { - var endch = code.length == 1 ? code[0].length + from.ch : code[code.length-1].length; - var newSel = computeSel({line: from.line + code.length - 1, ch: endch}); - updateLines(from, to, code, newSel.from, newSel.to); - } - - function getRange(from, to) { - var l1 = from.line, l2 = to.line; - if (l1 == l2) return getLine(l1).text.slice(from.ch, to.ch); - var code = [getLine(l1).text.slice(from.ch)]; - doc.iter(l1 + 1, l2, function(line) { code.push(line.text); }); - code.push(getLine(l2).text.slice(0, to.ch)); - return code.join("\n"); - } - function getSelection() { - return getRange(sel.from, sel.to); - } - - var pollingFast = false; // Ensures slowPoll doesn't cancel fastPoll - function slowPoll() { - if (pollingFast) return; - poll.set(options.pollInterval, function() { - startOperation(); - readInput(); - if (focused) slowPoll(); - endOperation(); - }); - } - function fastPoll() { - var missed = false; - pollingFast = true; - function p() { - startOperation(); - var changed = readInput(); - if (!changed && !missed) {missed = true; poll.set(60, p);} - else {pollingFast = false; slowPoll();} - endOperation(); - } - poll.set(20, p); - } - - // Previnput is a hack to work with IME. If we reset the textarea - // on every change, that breaks IME. So we look for changes - // compared to the previous content instead. (Modern browsers have - // events that indicate IME taking place, but these are not widely - // supported or compatible enough yet to rely on.) - var prevInput = ""; - function readInput() { - if (leaveInputAlone || !focused || hasSelection(input)) return false; - var text = input.value; - if (text == prevInput) return false; - shiftSelecting = null; - var same = 0, l = Math.min(prevInput.length, text.length); - while (same < l && prevInput[same] == text[same]) ++same; - if (same < prevInput.length) - sel.from = {line: sel.from.line, ch: sel.from.ch - (prevInput.length - same)}; - else if (overwrite && posEq(sel.from, sel.to)) - sel.to = {line: sel.to.line, ch: Math.min(getLine(sel.to.line).text.length, sel.to.ch + (text.length - same))}; - replaceSelection(text.slice(same), "end"); - prevInput = text; - return true; - } - function resetInput(user) { - if (!posEq(sel.from, sel.to)) { - prevInput = ""; - input.value = getSelection(); - input.select(); - } else if (user) prevInput = input.value = ""; - } - - function focusInput() { - if (!options.readOnly) input.focus(); - } - - function scrollEditorIntoView() { - if (!cursor.getBoundingClientRect) return; - var rect = cursor.getBoundingClientRect(); - // IE returns bogus coordinates when the instance sits inside of an iframe and the cursor is hidden - if (ie && rect.top == rect.bottom) return; - var winH = window.innerHeight || Math.max(document.body.offsetHeight, document.documentElement.offsetHeight); - if (rect.top < 0 || rect.bottom > winH) cursor.scrollIntoView(); - } - function scrollCursorIntoView() { - var cursor = localCoords(sel.inverted ? sel.from : sel.to); - var x = options.lineWrapping ? Math.min(cursor.x, lineSpace.offsetWidth) : cursor.x; - return scrollIntoView(x, cursor.y, x, cursor.yBot); - } - function scrollIntoView(x1, y1, x2, y2) { - var pl = paddingLeft(), pt = paddingTop(), lh = textHeight(); - y1 += pt; y2 += pt; x1 += pl; x2 += pl; - var screen = scroller.clientHeight, screentop = scroller.scrollTop, scrolled = false, result = true; - if (y1 < screentop) {scroller.scrollTop = Math.max(0, y1 - 2*lh); scrolled = true;} - else if (y2 > screentop + screen) {scroller.scrollTop = y2 + lh - screen; scrolled = true;} - - var screenw = scroller.clientWidth, screenleft = scroller.scrollLeft; - var gutterw = options.fixedGutter ? gutter.clientWidth : 0; - if (x1 < screenleft + gutterw) { - if (x1 < 50) x1 = 0; - scroller.scrollLeft = Math.max(0, x1 - 10 - gutterw); - scrolled = true; - } - else if (x2 > screenw + screenleft - 3) { - scroller.scrollLeft = x2 + 10 - screenw; - scrolled = true; - if (x2 > code.clientWidth) result = false; - } - if (scrolled && options.onScroll) options.onScroll(instance); - return result; - } - - function visibleLines() { - var lh = textHeight(), top = scroller.scrollTop - paddingTop(); - var from_height = Math.max(0, Math.floor(top / lh)); - var to_height = Math.ceil((top + scroller.clientHeight) / lh); - return {from: lineAtHeight(doc, from_height), - to: lineAtHeight(doc, to_height)}; - } - // Uses a set of changes plus the current scroll position to - // determine which DOM updates have to be made, and makes the - // updates. - function updateDisplay(changes, suppressCallback) { - if (!scroller.clientWidth) { - showingFrom = showingTo = displayOffset = 0; - return; - } - // Compute the new visible window - var visible = visibleLines(); - // Bail out if the visible area is already rendered and nothing changed. - if (changes !== true && changes.length == 0 && visible.from >= showingFrom && visible.to <= showingTo) return; - var from = Math.max(visible.from - 100, 0), to = Math.min(doc.size, visible.to + 100); - if (showingFrom < from && from - showingFrom < 20) from = showingFrom; - if (showingTo > to && showingTo - to < 20) to = Math.min(doc.size, showingTo); - - // Create a range of theoretically intact lines, and punch holes - // in that using the change info. - var intact = changes === true ? [] : - computeIntact([{from: showingFrom, to: showingTo, domStart: 0}], changes); - // Clip off the parts that won't be visible - var intactLines = 0; - for (var i = 0; i < intact.length; ++i) { - var range = intact[i]; - if (range.from < from) {range.domStart += (from - range.from); range.from = from;} - if (range.to > to) range.to = to; - if (range.from >= range.to) intact.splice(i--, 1); - else intactLines += range.to - range.from; - } - if (intactLines == to - from) return; - intact.sort(function(a, b) {return a.domStart - b.domStart;}); - - var th = textHeight(), gutterDisplay = gutter.style.display; - lineDiv.style.display = gutter.style.display = "none"; - patchDisplay(from, to, intact); - lineDiv.style.display = ""; - - // Position the mover div to align with the lines it's supposed - // to be showing (which will cover the visible display) - var different = from != showingFrom || to != showingTo || lastSizeC != scroller.clientHeight + th; - // This is just a bogus formula that detects when the editor is - // resized or the font size changes. - if (different) lastSizeC = scroller.clientHeight + th; - showingFrom = from; showingTo = to; - displayOffset = heightAtLine(doc, from); - mover.style.top = (displayOffset * th) + "px"; - code.style.height = (doc.height * th + 2 * paddingTop()) + "px"; - - // Since this is all rather error prone, it is honoured with the - // only assertion in the whole file. - if (lineDiv.childNodes.length != showingTo - showingFrom) - throw new Error("BAD PATCH! " + JSON.stringify(intact) + " size=" + (showingTo - showingFrom) + - " nodes=" + lineDiv.childNodes.length); - - if (options.lineWrapping) { - maxWidth = scroller.clientWidth; - var curNode = lineDiv.firstChild; - doc.iter(showingFrom, showingTo, function(line) { - if (!line.hidden) { - var height = Math.round(curNode.offsetHeight / th) || 1; - if (line.height != height) {updateLineHeight(line, height); gutterDirty = true;} - } - curNode = curNode.nextSibling; - }); - } else { - if (maxWidth == null) maxWidth = stringWidth(maxLine); - if (maxWidth > scroller.clientWidth) { - lineSpace.style.width = maxWidth + "px"; - // Needed to prevent odd wrapping/hiding of widgets placed in here. - code.style.width = ""; - code.style.width = scroller.scrollWidth + "px"; - } else { - lineSpace.style.width = code.style.width = ""; - } - } - gutter.style.display = gutterDisplay; - if (different || gutterDirty) updateGutter(); - updateCursor(); - if (!suppressCallback && options.onUpdate) options.onUpdate(instance); - return true; - } - - function computeIntact(intact, changes) { - for (var i = 0, l = changes.length || 0; i < l; ++i) { - var change = changes[i], intact2 = [], diff = change.diff || 0; - for (var j = 0, l2 = intact.length; j < l2; ++j) { - var range = intact[j]; - if (change.to <= range.from && change.diff) - intact2.push({from: range.from + diff, to: range.to + diff, - domStart: range.domStart}); - else if (change.to <= range.from || change.from >= range.to) - intact2.push(range); - else { - if (change.from > range.from) - intact2.push({from: range.from, to: change.from, domStart: range.domStart}); - if (change.to < range.to) - intact2.push({from: change.to + diff, to: range.to + diff, - domStart: range.domStart + (change.to - range.from)}); - } - } - intact = intact2; - } - return intact; - } - - function patchDisplay(from, to, intact) { - // The first pass removes the DOM nodes that aren't intact. - if (!intact.length) lineDiv.innerHTML = ""; - else { - function killNode(node) { - var tmp = node.nextSibling; - node.parentNode.removeChild(node); - return tmp; - } - var domPos = 0, curNode = lineDiv.firstChild, n; - for (var i = 0; i < intact.length; ++i) { - var cur = intact[i]; - while (cur.domStart > domPos) {curNode = killNode(curNode); domPos++;} - for (var j = 0, e = cur.to - cur.from; j < e; ++j) {curNode = curNode.nextSibling; domPos++;} - } - while (curNode) curNode = killNode(curNode); - } - // This pass fills in the lines that actually changed. - var nextIntact = intact.shift(), curNode = lineDiv.firstChild, j = from; - var sfrom = sel.from.line, sto = sel.to.line, inSel = sfrom < from && sto >= from; - var scratch = targetDocument.createElement("div"), newElt; - doc.iter(from, to, function(line) { - var ch1 = null, ch2 = null; - if (inSel) { - ch1 = 0; - if (sto == j) {inSel = false; ch2 = sel.to.ch;} - } else if (sfrom == j) { - if (sto == j) {ch1 = sel.from.ch; ch2 = sel.to.ch;} - else {inSel = true; ch1 = sel.from.ch;} - } - if (nextIntact && nextIntact.to == j) nextIntact = intact.shift(); - if (!nextIntact || nextIntact.from > j) { - if (line.hidden) scratch.innerHTML = "
";
-                    else scratch.innerHTML = line.getHTML(ch1, ch2, true, tabText);
-                    lineDiv.insertBefore(scratch.firstChild, curNode);
-                } else {
-                    curNode = curNode.nextSibling;
-                }
-                ++j;
-            });
-        }
-
-        function updateGutter() {
-            if (!options.gutter && !options.lineNumbers) return;
-            var hText = mover.offsetHeight, hEditor = scroller.clientHeight;
-            gutter.style.height = (hText - hEditor < 2 ? hEditor : hText) + "px";
-            var html = [], i = showingFrom;
-            doc.iter(showingFrom, Math.max(showingTo, showingFrom + 1), function(line) {
-                if (line.hidden) {
-                    html.push("
");
-                } else {
-                    var marker = line.gutterMarker;
-                    var text = options.lineNumbers ? i + options.firstLineNumber : null;
-                    if (marker && marker.text)
-                        text = marker.text.replace("%N%", text != null ? text : "");
-                    else if (text == null)
-                        text = "\u00a0";
-                    html.push((marker && marker.style ? '
' : "
"), text);
-                    for (var j = 1; j < line.height; ++j) html.push("
 "); - html.push("
"); - } - ++i; - }); - gutter.style.display = "none"; - gutterText.innerHTML = html.join(""); - var minwidth = String(doc.size).length, firstNode = gutterText.firstChild, val = eltText(firstNode), pad = ""; - while (val.length + pad.length < minwidth) pad += "\u00a0"; - if (pad) firstNode.insertBefore(targetDocument.createTextNode(pad), firstNode.firstChild); - gutter.style.display = ""; - lineSpace.style.marginLeft = gutter.offsetWidth + "px"; - gutterDirty = false; - } - function updateCursor() { - var head = sel.inverted ? sel.from : sel.to, lh = textHeight(); - var pos = localCoords(head, true); - var wrapOff = eltOffset(wrapper), lineOff = eltOffset(lineDiv); - inputDiv.style.top = (pos.y + lineOff.top - wrapOff.top) + "px"; - inputDiv.style.left = (pos.x + lineOff.left - wrapOff.left) + "px"; - if (posEq(sel.from, sel.to)) { - cursor.style.top = pos.y + "px"; - cursor.style.left = (options.lineWrapping ? Math.min(pos.x, lineSpace.offsetWidth) : pos.x) + "px"; - cursor.style.display = ""; - } - else cursor.style.display = "none"; - } - - function setShift(val) { - if (val) shiftSelecting = shiftSelecting || (sel.inverted ? sel.to : sel.from); - else shiftSelecting = null; - } - function setSelectionUser(from, to) { - var sh = shiftSelecting && clipPos(shiftSelecting); - if (sh) { - if (posLess(sh, from)) from = sh; - else if (posLess(to, sh)) to = sh; - } - setSelection(from, to); - userSelChange = true; - } - // Update the selection. Last two args are only used by - // updateLines, since they have to be expressed in the line - // numbers before the update. - function setSelection(from, to, oldFrom, oldTo) { - goalColumn = null; - if (oldFrom == null) {oldFrom = sel.from.line; oldTo = sel.to.line;} - if (posEq(sel.from, from) && posEq(sel.to, to)) return; - if (posLess(to, from)) {var tmp = to; to = from; from = tmp;} - - // Skip over hidden lines. - if (from.line != oldFrom) from = skipHidden(from, oldFrom, sel.from.ch); - if (to.line != oldTo) to = skipHidden(to, oldTo, sel.to.ch); - - if (posEq(from, to)) sel.inverted = false; - else if (posEq(from, sel.to)) sel.inverted = false; - else if (posEq(to, sel.from)) sel.inverted = true; - - // Some ugly logic used to only mark the lines that actually did - // see a change in selection as changed, rather than the whole - // selected range. - if (posEq(from, to)) { - if (!posEq(sel.from, sel.to)) - changes.push({from: oldFrom, to: oldTo + 1}); - } - else if (posEq(sel.from, sel.to)) { - changes.push({from: from.line, to: to.line + 1}); - } - else { - if (!posEq(from, sel.from)) { - if (from.line < oldFrom) - changes.push({from: from.line, to: Math.min(to.line, oldFrom) + 1}); - else - changes.push({from: oldFrom, to: Math.min(oldTo, from.line) + 1}); - } - if (!posEq(to, sel.to)) { - if (to.line < oldTo) - changes.push({from: Math.max(oldFrom, from.line), to: oldTo + 1}); - else - changes.push({from: Math.max(from.line, oldTo), to: to.line + 1}); - } - } - sel.from = from; sel.to = to; - selectionChanged = true; - } - function skipHidden(pos, oldLine, oldCh) { - function getNonHidden(dir) { - var lNo = pos.line + dir, end = dir == 1 ? doc.size : -1; - while (lNo != end) { - var line = getLine(lNo); - if (!line.hidden) { - var ch = pos.ch; - if (ch > oldCh || ch > line.text.length) ch = line.text.length; - return {line: lNo, ch: ch}; - } - lNo += dir; - } - } - var line = getLine(pos.line); - if (!line.hidden) return pos; - if (pos.line >= oldLine) return getNonHidden(1) || getNonHidden(-1); - else return getNonHidden(-1) || getNonHidden(1); - } - function setCursor(line, ch, user) { - var pos = clipPos({line: line, ch: ch || 0}); - (user ? setSelectionUser : setSelection)(pos, pos); - } - - function clipLine(n) {return Math.max(0, Math.min(n, doc.size-1));} - function clipPos(pos) { - if (pos.line < 0) return {line: 0, ch: 0}; - if (pos.line >= doc.size) return {line: doc.size-1, ch: getLine(doc.size-1).text.length}; - var ch = pos.ch, linelen = getLine(pos.line).text.length; - if (ch == null || ch > linelen) return {line: pos.line, ch: linelen}; - else if (ch < 0) return {line: pos.line, ch: 0}; - else return pos; - } - - function findPosH(dir, unit) { - var end = sel.inverted ? sel.from : sel.to, line = end.line, ch = end.ch; - var lineObj = getLine(line); - function findNextLine() { - for (var l = line + dir, e = dir < 0 ? -1 : doc.size; l != e; l += dir) { - var lo = getLine(l); - if (!lo.hidden) { line = l; lineObj = lo; return true; } - } - } - function moveOnce(boundToLine) { - if (ch == (dir < 0 ? 0 : lineObj.text.length)) { - if (!boundToLine && findNextLine()) ch = dir < 0 ? lineObj.text.length : 0; - else return false; - } else ch += dir; - return true; - } - if (unit == "char") moveOnce(); - else if (unit == "column") moveOnce(true); - else if (unit == "word") { - var sawWord = false; - for (;;) { - if (dir < 0) if (!moveOnce()) break; - if (isWordChar(lineObj.text.charAt(ch))) sawWord = true; - else if (sawWord) {if (dir < 0) {dir = 1; moveOnce();} break;} - if (dir > 0) if (!moveOnce()) break; - } - } - return {line: line, ch: ch}; - } - function moveH(dir, unit) { - var pos = dir < 0 ? sel.from : sel.to; - if (shiftSelecting || posEq(sel.from, sel.to)) pos = findPosH(dir, unit); - setCursor(pos.line, pos.ch, true); - } - function deleteH(dir, unit) { - if (!posEq(sel.from, sel.to)) replaceRange("", sel.from, sel.to); - else if (dir < 0) replaceRange("", findPosH(dir, unit), sel.to); - else replaceRange("", sel.from, findPosH(dir, unit)); - userSelChange = true; - } - var goalColumn = null; - function moveV(dir, unit) { - var dist = 0, pos = localCoords(sel.inverted ? sel.from : sel.to, true); - if (goalColumn != null) pos.x = goalColumn; - if (unit == "page") dist = scroller.clientHeight; - else if (unit == "line") dist = textHeight(); - var target = coordsChar(pos.x, pos.y + dist * dir + 2); - setCursor(target.line, target.ch, true); - goalColumn = pos.x; - } - - function selectWordAt(pos) { - var line = getLine(pos.line).text; - var start = pos.ch, end = pos.ch; - while (start > 0 && isWordChar(line.charAt(start - 1))) --start; - while (end < line.length && isWordChar(line.charAt(end))) ++end; - setSelectionUser({line: pos.line, ch: start}, {line: pos.line, ch: end}); - } - function selectLine(line) { - setSelectionUser({line: line, ch: 0}, {line: line, ch: getLine(line).text.length}); - } - function indentSelected(mode) { - if (posEq(sel.from, sel.to)) return indentLine(sel.from.line, mode); - var e = sel.to.line - (sel.to.ch ? 0 : 1); - for (var i = sel.from.line; i <= e; ++i) indentLine(i, mode); - } - - function indentLine(n, how) { - if (!how) how = "add"; - if (how == "smart") { - if (!mode.indent) how = "prev"; - else var state = getStateBefore(n); - } - - var line = getLine(n), curSpace = line.indentation(options.tabSize), - curSpaceString = line.text.match(/^\s*/)[0], indentation; - if (how == "prev") { - if (n) indentation = getLine(n-1).indentation(options.tabSize); - else indentation = 0; - } - else if (how == "smart") indentation = mode.indent(state, line.text.slice(curSpaceString.length), line.text); - else if (how == "add") indentation = curSpace + options.indentUnit; - else if (how == "subtract") indentation = curSpace - options.indentUnit; - indentation = Math.max(0, indentation); - var diff = indentation - curSpace; - - if (!diff) { - if (sel.from.line != n && sel.to.line != n) return; - var indentString = curSpaceString; - } - else { - var indentString = "", pos = 0; - if (options.indentWithTabs) - for (var i = Math.floor(indentation / options.tabSize); i; --i) {pos += options.tabSize; indentString += "\t";} - while (pos < indentation) {++pos; indentString += " ";} - } - - replaceRange(indentString, {line: n, ch: 0}, {line: n, ch: curSpaceString.length}); - } - - function loadMode() { - mode = CodeMirror.getMode(options, options.mode); - doc.iter(0, doc.size, function(line) { line.stateAfter = null; }); - work = [0]; - startWorker(); - } - function gutterChanged() { - var visible = options.gutter || options.lineNumbers; - gutter.style.display = visible ? "" : "none"; - if (visible) gutterDirty = true; - else lineDiv.parentNode.style.marginLeft = 0; - } - function wrappingChanged(from, to) { - if (options.lineWrapping) { - wrapper.className += " CodeMirror-wrap"; - var perLine = scroller.clientWidth / charWidth() - 3; - doc.iter(0, doc.size, function(line) { - if (line.hidden) return; - var guess = Math.ceil(line.text.length / perLine) || 1; - if (guess != 1) updateLineHeight(line, guess); - }); - lineSpace.style.width = code.style.width = ""; - } else { - wrapper.className = wrapper.className.replace(" CodeMirror-wrap", ""); - maxWidth = null; maxLine = ""; - doc.iter(0, doc.size, function(line) { - if (line.height != 1 && !line.hidden) updateLineHeight(line, 1); - if (line.text.length > maxLine.length) maxLine = line.text; - }); - } - changes.push({from: 0, to: doc.size}); - } - function computeTabText() { - for (var str = '', i = 0; i < options.tabSize; ++i) str += " "; - return str + ""; - } - function tabsChanged() { - tabText = computeTabText(); - updateDisplay(true); - } - function themeChanged() { - scroller.className = scroller.className.replace(/\s*cm-s-\w+/g, "") + - options.theme.replace(/(^|\s)\s*/g, " cm-s-"); - } - - function TextMarker() { this.set = []; } - TextMarker.prototype.clear = operation(function() { - var min = Infinity, max = -Infinity; - for (var i = 0, e = this.set.length; i < e; ++i) { - var line = this.set[i], mk = line.marked; - if (!mk || !line.parent) continue; - var lineN = lineNo(line); - min = Math.min(min, lineN); max = Math.max(max, lineN); - for (var j = 0; j < mk.length; ++j) - if (mk[j].set == this.set) mk.splice(j--, 1); - } - if (min != Infinity) - changes.push({from: min, to: max + 1}); - }); - TextMarker.prototype.find = function() { - var from, to; - for (var i = 0, e = this.set.length; i < e; ++i) { - var line = this.set[i], mk = line.marked; - for (var j = 0; j < mk.length; ++j) { - var mark = mk[j]; - if (mark.set == this.set) { - if (mark.from != null || mark.to != null) { - var found = lineNo(line); - if (found != null) { - if (mark.from != null) from = {line: found, ch: mark.from}; - if (mark.to != null) to = {line: found, ch: mark.to}; - } - } - } - } - } - return {from: from, to: to}; - }; - - function markText(from, to, className) { - from = clipPos(from); to = clipPos(to); - var tm = new TextMarker(); - function add(line, from, to, className) { - getLine(line).addMark(new MarkedText(from, to, className, tm.set)); - } - if (from.line == to.line) add(from.line, from.ch, to.ch, className); - else { - add(from.line, from.ch, null, className); - for (var i = from.line + 1, e = to.line; i < e; ++i) - add(i, null, null, className); - add(to.line, null, to.ch, className); - } - changes.push({from: from.line, to: to.line + 1}); - return tm; - } - - function setBookmark(pos) { - pos = clipPos(pos); - var bm = new Bookmark(pos.ch); - getLine(pos.line).addMark(bm); - return bm; - } - - function addGutterMarker(line, text, className) { - if (typeof line == "number") line = getLine(clipLine(line)); - line.gutterMarker = {text: text, style: className}; - gutterDirty = true; - return line; - } - function removeGutterMarker(line) { - if (typeof line == "number") line = getLine(clipLine(line)); - line.gutterMarker = null; - gutterDirty = true; - } - - function changeLine(handle, op) { - var no = handle, line = handle; - if (typeof handle == "number") line = getLine(clipLine(handle)); - else no = lineNo(handle); - if (no == null) return null; - if (op(line, no)) changes.push({from: no, to: no + 1}); - else return null; - return line; - } - function setLineClass(handle, className) { - return changeLine(handle, function(line) { - if (line.className != className) { - line.className = className; - return true; - } - }); - } - function setLineHidden(handle, hidden) { - return changeLine(handle, function(line, no) { - if (line.hidden != hidden) { - line.hidden = hidden; - updateLineHeight(line, hidden ? 0 : 1); - if (hidden && (sel.from.line == no || sel.to.line == no)) - setSelection(skipHidden(sel.from, sel.from.line, sel.from.ch), - skipHidden(sel.to, sel.to.line, sel.to.ch)); - return (gutterDirty = true); - } - }); - } - - function lineInfo(line) { - if (typeof line == "number") { - if (!isLine(line)) return null; - var n = line; - line = getLine(line); - if (!line) return null; - } - else { - var n = lineNo(line); - if (n == null) return null; - } - var marker = line.gutterMarker; - return {line: n, handle: line, text: line.text, markerText: marker && marker.text, - markerClass: marker && marker.style, lineClass: line.className}; - } - - function stringWidth(str) { - measure.innerHTML = "
x
"; - measure.firstChild.firstChild.firstChild.nodeValue = str; - return measure.firstChild.firstChild.offsetWidth || 10; - } - // These are used to go from pixel positions to character - // positions, taking varying character widths into account. - function charFromX(line, x) { - if (x <= 0) return 0; - var lineObj = getLine(line), text = lineObj.text; - function getX(len) { - measure.innerHTML = "
" + lineObj.getHTML(null, null, false, tabText, len) + "
"; - return measure.firstChild.firstChild.offsetWidth; - } - var from = 0, fromX = 0, to = text.length, toX; - // Guess a suitable upper bound for our search. - var estimated = Math.min(to, Math.ceil(x / charWidth())); - for (;;) { - var estX = getX(estimated); - if (estX <= x && estimated < to) estimated = Math.min(to, Math.ceil(estimated * 1.2)); - else {toX = estX; to = estimated; break;} - } - if (x > toX) return to; - // Try to guess a suitable lower bound as well. - estimated = Math.floor(to * 0.8); estX = getX(estimated); - if (estX < x) {from = estimated; fromX = estX;} - // Do a binary search between these bounds. - for (;;) { - if (to - from <= 1) return (toX - x > x - fromX) ? from : to; - var middle = Math.ceil((from + to) / 2), middleX = getX(middle); - if (middleX > x) {to = middle; toX = middleX;} - else {from = middle; fromX = middleX;} - } - } - - var tempId = Math.floor(Math.random() * 0xffffff).toString(16); - function measureLine(line, ch) { - var extra = ""; - // Include extra text at the end to make sure the measured line is wrapped in the right way. - if (options.lineWrapping) { - var end = line.text.indexOf(" ", ch + 2); - extra = htmlEscape(line.text.slice(ch + 1, end < 0 ? line.text.length : end + (ie ? 5 : 0))); - } - measure.innerHTML = "
" + line.getHTML(null, null, false, tabText, ch) +
-                '' + htmlEscape(line.text.charAt(ch) || " ") + "" +
-                extra + "
"; - var elt = document.getElementById("CodeMirror-temp-" + tempId); - var top = elt.offsetTop, left = elt.offsetLeft; - // Older IEs report zero offsets for spans directly after a wrap - if (ie && ch && top == 0 && left == 0) { - var backup = document.createElement("span"); - backup.innerHTML = "x"; - elt.parentNode.insertBefore(backup, elt.nextSibling); - top = backup.offsetTop; - } - return {top: top, left: left}; - } - function localCoords(pos, inLineWrap) { - var x, lh = textHeight(), y = lh * (heightAtLine(doc, pos.line) - (inLineWrap ? displayOffset : 0)); - if (pos.ch == 0) x = 0; - else { - var sp = measureLine(getLine(pos.line), pos.ch); - x = sp.left; - if (options.lineWrapping) y += Math.max(0, sp.top); - } - return {x: x, y: y, yBot: y + lh}; - } - // Coords must be lineSpace-local - function coordsChar(x, y) { - if (y < 0) y = 0; - var th = textHeight(), cw = charWidth(), heightPos = displayOffset + Math.floor(y / th); - var lineNo = lineAtHeight(doc, heightPos); - if (lineNo >= doc.size) return {line: doc.size - 1, ch: getLine(doc.size - 1).text.length}; - var lineObj = getLine(lineNo), text = lineObj.text; - var tw = options.lineWrapping, innerOff = tw ? heightPos - heightAtLine(doc, lineNo) : 0; - if (x <= 0 && innerOff == 0) return {line: lineNo, ch: 0}; - function getX(len) { - var sp = measureLine(lineObj, len); - if (tw) { - var off = Math.round(sp.top / th); - return Math.max(0, sp.left + (off - innerOff) * scroller.clientWidth); - } - return sp.left; - } - var from = 0, fromX = 0, to = text.length, toX; - // Guess a suitable upper bound for our search. - var estimated = Math.min(to, Math.ceil((x + innerOff * scroller.clientWidth * .9) / cw)); - for (;;) { - var estX = getX(estimated); - if (estX <= x && estimated < to) estimated = Math.min(to, Math.ceil(estimated * 1.2)); - else {toX = estX; to = estimated; break;} - } - if (x > toX) return {line: lineNo, ch: to}; - // Try to guess a suitable lower bound as well. - estimated = Math.floor(to * 0.8); estX = getX(estimated); - if (estX < x) {from = estimated; fromX = estX;} - // Do a binary search between these bounds. - for (;;) { - if (to - from <= 1) return {line: lineNo, ch: (toX - x > x - fromX) ? from : to}; - var middle = Math.ceil((from + to) / 2), middleX = getX(middle); - if (middleX > x) {to = middle; toX = middleX;} - else {from = middle; fromX = middleX;} - } - } - function pageCoords(pos) { - var local = localCoords(pos, true), off = eltOffset(lineSpace); - return {x: off.left + local.x, y: off.top + local.y, yBot: off.top + local.yBot}; - } - - var cachedHeight, cachedHeightFor, measureText; - function textHeight() { - if (measureText == null) { - measureText = "
";
-                for (var i = 0; i < 49; ++i) measureText += "x
"; - measureText += "x
"; - } - var offsetHeight = lineDiv.clientHeight; - if (offsetHeight == cachedHeightFor) return cachedHeight; - cachedHeightFor = offsetHeight; - measure.innerHTML = measureText; - cachedHeight = measure.firstChild.offsetHeight / 50 || 1; - measure.innerHTML = ""; - return cachedHeight; - } - var cachedWidth, cachedWidthFor = 0; - function charWidth() { - if (scroller.clientWidth == cachedWidthFor) return cachedWidth; - cachedWidthFor = scroller.clientWidth; - return (cachedWidth = stringWidth("x")); - } - function paddingTop() {return lineSpace.offsetTop;} - function paddingLeft() {return lineSpace.offsetLeft;} - - function posFromMouse(e, liberal) { - var offW = eltOffset(scroller, true), x, y; - // Fails unpredictably on IE[67] when mouse is dragged around quickly. - try { x = e.clientX; y = e.clientY; } catch (e) { return null; } - // This is a mess of a heuristic to try and determine whether a - // scroll-bar was clicked or not, and to return null if one was - // (and !liberal). - if (!liberal && (x - offW.left > scroller.clientWidth || y - offW.top > scroller.clientHeight)) - return null; - var offL = eltOffset(lineSpace, true); - return coordsChar(x - offL.left, y - offL.top); - } - function onContextMenu(e) { - var pos = posFromMouse(e); - if (!pos || window.opera) return; // Opera is difficult. - if (posEq(sel.from, sel.to) || posLess(pos, sel.from) || !posLess(pos, sel.to)) - operation(setCursor)(pos.line, pos.ch); - - var oldCSS = input.style.cssText; - inputDiv.style.position = "absolute"; - input.style.cssText = "position: fixed; width: 30px; height: 30px; top: " + (e.clientY - 5) + - "px; left: " + (e.clientX - 5) + "px; z-index: 1000; background: white; " + - "border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);"; - leaveInputAlone = true; - var val = input.value = getSelection(); - focusInput(); - input.select(); - function rehide() { - var newVal = splitLines(input.value).join("\n"); - if (newVal != val) operation(replaceSelection)(newVal, "end"); - inputDiv.style.position = "relative"; - input.style.cssText = oldCSS; - leaveInputAlone = false; - resetInput(true); - slowPoll(); - } - - if (gecko) { - e_stop(e); - var mouseup = connect(window, "mouseup", function() { - mouseup(); - setTimeout(rehide, 20); - }, true); - } - else { - setTimeout(rehide, 50); - } - } - - // Cursor-blinking - function restartBlink() { - clearInterval(blinker); - var on = true; - cursor.style.visibility = ""; - blinker = setInterval(function() { - cursor.style.visibility = (on = !on) ? "" : "hidden"; - }, 650); - } - - var matching = {"(": ")>", ")": "(<", "[": "]>", "]": "[<", "{": "}>", "}": "{<"}; - function matchBrackets(autoclear) { - var head = sel.inverted ? sel.from : sel.to, line = getLine(head.line), pos = head.ch - 1; - var match = (pos >= 0 && matching[line.text.charAt(pos)]) || matching[line.text.charAt(++pos)]; - if (!match) return; - var ch = match.charAt(0), forward = match.charAt(1) == ">", d = forward ? 1 : -1, st = line.styles; - for (var off = pos + 1, i = 0, e = st.length; i < e; i+=2) - if ((off -= st[i].length) <= 0) {var style = st[i+1]; break;} - - var stack = [line.text.charAt(pos)], re = /[(){}[\]]/; - function scan(line, from, to) { - if (!line.text) return; - var st = line.styles, pos = forward ? 0 : line.text.length - 1, cur; - for (var i = forward ? 0 : st.length - 2, e = forward ? st.length : -2; i != e; i += 2*d) { - var text = st[i]; - if (st[i+1] != null && st[i+1] != style) {pos += d * text.length; continue;} - for (var j = forward ? 0 : text.length - 1, te = forward ? text.length : -1; j != te; j += d, pos+=d) { - if (pos >= from && pos < to && re.test(cur = text.charAt(j))) { - var match = matching[cur]; - if (match.charAt(1) == ">" == forward) stack.push(cur); - else if (stack.pop() != match.charAt(0)) return {pos: pos, match: false}; - else if (!stack.length) return {pos: pos, match: true}; - } - } - } - } - for (var i = head.line, e = forward ? Math.min(i + 100, doc.size) : Math.max(-1, i - 100); i != e; i+=d) { - var line = getLine(i), first = i == head.line; - var found = scan(line, first && forward ? pos + 1 : 0, first && !forward ? pos : line.text.length); - if (found) break; - } - if (!found) found = {pos: null, match: false}; - var style = found.match ? "CodeMirror-matchingbracket" : "CodeMirror-nonmatchingbracket"; - var one = markText({line: head.line, ch: pos}, {line: head.line, ch: pos+1}, style), - two = found.pos != null && markText({line: i, ch: found.pos}, {line: i, ch: found.pos + 1}, style); - var clear = operation(function(){one.clear(); two && two.clear();}); - if (autoclear) setTimeout(clear, 800); - else bracketHighlighted = clear; - } - - // Finds the line to start with when starting a parse. Tries to - // find a line with a stateAfter, so that it can start with a - // valid state. If that fails, it returns the line with the - // smallest indentation, which tends to need the least context to - // parse correctly. - function findStartLine(n) { - var minindent, minline; - for (var search = n, lim = n - 40; search > lim; --search) { - if (search == 0) return 0; - var line = getLine(search-1); - if (line.stateAfter) return search; - var indented = line.indentation(options.tabSize); - if (minline == null || minindent > indented) { - minline = search - 1; - minindent = indented; - } - } - return minline; - } - function getStateBefore(n) { - var start = findStartLine(n), state = start && getLine(start-1).stateAfter; - if (!state) state = startState(mode); - else state = copyState(mode, state); - doc.iter(start, n, function(line) { - line.highlight(mode, state, options.tabSize); - line.stateAfter = copyState(mode, state); - }); - if (start < n) changes.push({from: start, to: n}); - if (n < doc.size && !getLine(n).stateAfter) work.push(n); - return state; - } - function highlightLines(start, end) { - var state = getStateBefore(start); - doc.iter(start, end, function(line) { - line.highlight(mode, state, options.tabSize); - line.stateAfter = copyState(mode, state); - }); - } - function highlightWorker() { - var end = +new Date + options.workTime; - var foundWork = work.length; - while (work.length) { - if (!getLine(showingFrom).stateAfter) var task = showingFrom; - else var task = work.pop(); - if (task >= doc.size) continue; - var start = findStartLine(task), state = start && getLine(start-1).stateAfter; - if (state) state = copyState(mode, state); - else state = startState(mode); - - var unchanged = 0, compare = mode.compareStates, realChange = false, - i = start, bail = false; - doc.iter(i, doc.size, function(line) { - var hadState = line.stateAfter; - if (+new Date > end) { - work.push(i); - startWorker(options.workDelay); - if (realChange) changes.push({from: task, to: i + 1}); - return (bail = true); - } - var changed = line.highlight(mode, state, options.tabSize); - if (changed) realChange = true; - line.stateAfter = copyState(mode, state); - if (compare) { - if (hadState && compare(hadState, state)) return true; - } else { - if (changed !== false || !hadState) unchanged = 0; - else if (++unchanged > 3 && (!mode.indent || mode.indent(hadState, "") == mode.indent(state, ""))) - return true; - } - ++i; - }); - if (bail) return; - if (realChange) changes.push({from: task, to: i + 1}); - } - if (foundWork && options.onHighlightComplete) - options.onHighlightComplete(instance); - } - function startWorker(time) { - if (!work.length) return; - highlight.set(time, operation(highlightWorker)); - } - - // Operations are used to wrap changes in such a way that each - // change won't have to update the cursor and display (which would - // be awkward, slow, and error-prone), but instead updates are - // batched and then all combined and executed at once. - function startOperation() { - updateInput = userSelChange = textChanged = null; - changes = []; selectionChanged = false; callbacks = []; - } - function endOperation() { - var reScroll = false, updated; - if (selectionChanged) reScroll = !scrollCursorIntoView(); - if (changes.length) updated = updateDisplay(changes, true); - else { - if (selectionChanged) updateCursor(); - if (gutterDirty) updateGutter(); - } - if (reScroll) scrollCursorIntoView(); - if (selectionChanged) {scrollEditorIntoView(); restartBlink();} - - if (focused && !leaveInputAlone && - (updateInput === true || (updateInput !== false && selectionChanged))) - resetInput(userSelChange); - - if (selectionChanged && options.matchBrackets) - setTimeout(operation(function() { - if (bracketHighlighted) {bracketHighlighted(); bracketHighlighted = null;} - if (posEq(sel.from, sel.to)) matchBrackets(false); - }), 20); - var tc = textChanged, cbs = callbacks; // these can be reset by callbacks - if (selectionChanged && options.onCursorActivity) - options.onCursorActivity(instance); - if (tc && options.onChange && instance) - options.onChange(instance, tc); - for (var i = 0; i < cbs.length; ++i) cbs[i](instance); - if (updated && options.onUpdate) options.onUpdate(instance); - } - var nestedOperation = 0; - function operation(f) { - return function() { - if (!nestedOperation++) startOperation(); - try {var result = f.apply(this, arguments);} - finally {if (!--nestedOperation) endOperation();} - return result; - }; - } - - for (var ext in extensions) - if (extensions.propertyIsEnumerable(ext) && - !instance.propertyIsEnumerable(ext)) - instance[ext] = extensions[ext]; - return instance; - } // (end of function CodeMirror) - - // The default configuration options. - CodeMirror.defaults = { - value: "", - mode: null, - theme: "default", - indentUnit: 2, - indentWithTabs: false, - tabSize: 4, - keyMap: "default", - extraKeys: null, - electricChars: true, - onKeyEvent: null, - lineWrapping: false, - lineNumbers: false, - gutter: false, - fixedGutter: false, - firstLineNumber: 1, - readOnly: false, - onChange: null, - onCursorActivity: null, - onGutterClick: null, - onHighlightComplete: null, - onUpdate: null, - onFocus: null, onBlur: null, onScroll: null, - matchBrackets: false, - workTime: 100, - workDelay: 200, - pollInterval: 100, - undoDepth: 40, - tabindex: null, - document: window.document - }; - - var mac = /Mac/.test(navigator.platform); - var win = /Win/.test(navigator.platform); - - // Known modes, by name and by MIME - var modes = {}, mimeModes = {}; - CodeMirror.defineMode = function(name, mode) { - if (!CodeMirror.defaults.mode && name != "null") CodeMirror.defaults.mode = name; - modes[name] = mode; - }; - CodeMirror.defineMIME = function(mime, spec) { - mimeModes[mime] = spec; - }; - CodeMirror.getMode = function(options, spec) { - if (typeof spec == "string" && mimeModes.hasOwnProperty(spec)) - spec = mimeModes[spec]; - if (typeof spec == "string") - var mname = spec, config = {}; - else if (spec != null) - var mname = spec.name, config = spec; - var mfactory = modes[mname]; - if (!mfactory) { - if (window.console) console.warn("No mode " + mname + " found, falling back to plain text."); - return CodeMirror.getMode(options, "text/plain"); - } - return mfactory(options, config || {}); - }; - CodeMirror.listModes = function() { - var list = []; - for (var m in modes) - if (modes.propertyIsEnumerable(m)) list.push(m); - return list; - }; - CodeMirror.listMIMEs = function() { - var list = []; - for (var m in mimeModes) - if (mimeModes.propertyIsEnumerable(m)) list.push({mime: m, mode: mimeModes[m]}); - return list; - }; - - var extensions = CodeMirror.extensions = {}; - CodeMirror.defineExtension = function(name, func) { - extensions[name] = func; - }; - - var commands = CodeMirror.commands = { - selectAll: function(cm) {cm.setSelection({line: 0, ch: 0}, {line: cm.lineCount() - 1});}, - killLine: function(cm) { - var from = cm.getCursor(true), to = cm.getCursor(false), sel = !posEq(from, to); - if (!sel && cm.getLine(from.line).length == from.ch) cm.replaceRange("", from, {line: from.line + 1, ch: 0}); - else cm.replaceRange("", from, sel ? to : {line: from.line}); - }, - deleteLine: function(cm) {var l = cm.getCursor().line; cm.replaceRange("", {line: l, ch: 0}, {line: l});}, - undo: function(cm) {cm.undo();}, - redo: function(cm) {cm.redo();}, - goDocStart: function(cm) {cm.setCursor(0, 0, true);}, - goDocEnd: function(cm) {cm.setSelection({line: cm.lineCount() - 1}, null, true);}, - goLineStart: function(cm) {cm.setCursor(cm.getCursor().line, 0, true);}, - goLineStartSmart: function(cm) { - var cur = cm.getCursor(); - var text = cm.getLine(cur.line), firstNonWS = Math.max(0, text.search(/\S/)); - cm.setCursor(cur.line, cur.ch <= firstNonWS && cur.ch ? 0 : firstNonWS, true); - }, - goLineEnd: function(cm) {cm.setSelection({line: cm.getCursor().line}, null, true);}, - goLineUp: function(cm) {cm.moveV(-1, "line");}, - goLineDown: function(cm) {cm.moveV(1, "line");}, - goPageUp: function(cm) {cm.moveV(-1, "page");}, - goPageDown: function(cm) {cm.moveV(1, "page");}, - goCharLeft: function(cm) {cm.moveH(-1, "char");}, - goCharRight: function(cm) {cm.moveH(1, "char");}, - goColumnLeft: function(cm) {cm.moveH(-1, "column");}, - goColumnRight: function(cm) {cm.moveH(1, "column");}, - goWordLeft: function(cm) {cm.moveH(-1, "word");}, - goWordRight: function(cm) {cm.moveH(1, "word");}, - delCharLeft: function(cm) {cm.deleteH(-1, "char");}, - delCharRight: function(cm) {cm.deleteH(1, "char");}, - delWordLeft: function(cm) {cm.deleteH(-1, "word");}, - delWordRight: function(cm) {cm.deleteH(1, "word");}, - indentAuto: function(cm) {cm.indentSelection("smart");}, - indentMore: function(cm) {cm.indentSelection("add");}, - indentLess: function(cm) {cm.indentSelection("subtract");}, - insertTab: function(cm) {cm.replaceSelection("\t", "end");}, - transposeChars: function(cm) { - var cur = cm.getCursor(), line = cm.getLine(cur.line); - if (cur.ch > 0 && cur.ch < line.length - 1) - cm.replaceRange(line.charAt(cur.ch) + line.charAt(cur.ch - 1), - {line: cur.line, ch: cur.ch - 1}, {line: cur.line, ch: cur.ch + 1}); - }, - newlineAndIndent: function(cm) { - cm.replaceSelection("\n", "end"); - cm.indentLine(cm.getCursor().line); - }, - toggleOverwrite: function(cm) {cm.toggleOverwrite();} - }; - - var keyMap = CodeMirror.keyMap = {}; - keyMap.basic = { - "Left": "goCharLeft", "Right": "goCharRight", "Up": "goLineUp", "Down": "goLineDown", - "End": "goLineEnd", "Home": "goLineStartSmart", "PageUp": "goPageUp", "PageDown": "goPageDown", - "Delete": "delCharRight", "Backspace": "delCharLeft", "Tab": "indentMore", "Shift-Tab": "indentLess", - "Enter": "newlineAndIndent", "Insert": "toggleOverwrite" - }; - // Note that the save and find-related commands aren't defined by - // default. Unknown commands are simply ignored. - keyMap.pcDefault = { - "Ctrl-A": "selectAll", "Ctrl-D": "deleteLine", "Ctrl-Z": "undo", "Shift-Ctrl-Z": "redo", "Ctrl-Y": "redo", - "Ctrl-Home": "goDocStart", "Alt-Up": "goDocStart", "Ctrl-End": "goDocEnd", "Ctrl-Down": "goDocEnd", - "Ctrl-Left": "goWordLeft", "Ctrl-Right": "goWordRight", "Alt-Left": "goLineStart", "Alt-Right": "goLineEnd", - "Ctrl-Backspace": "delWordLeft", "Ctrl-Delete": "delWordRight", "Ctrl-S": "save", "Ctrl-F": "find", - "Ctrl-G": "findNext", "Shift-Ctrl-G": "findPrev", "Shift-Ctrl-F": "replace", "Shift-Ctrl-R": "replaceAll", - fallthrough: "basic" - }; - keyMap.macDefault = { - "Cmd-A": "selectAll", "Cmd-D": "deleteLine", "Cmd-Z": "undo", "Shift-Cmd-Z": "redo", "Cmd-Y": "redo", - "Cmd-Up": "goDocStart", "Cmd-End": "goDocEnd", "Cmd-Down": "goDocEnd", "Alt-Left": "goWordLeft", - "Alt-Right": "goWordRight", "Cmd-Left": "goLineStart", "Cmd-Right": "goLineEnd", "Alt-Backspace": "delWordLeft", - "Ctrl-Alt-Backspace": "delWordRight", "Alt-Delete": "delWordRight", "Cmd-S": "save", "Cmd-F": "find", - "Cmd-G": "findNext", "Shift-Cmd-G": "findPrev", "Cmd-Alt-F": "replace", "Shift-Cmd-Alt-F": "replaceAll", - fallthrough: ["basic", "emacsy"] - }; - keyMap["default"] = mac ? keyMap.macDefault : keyMap.pcDefault; - keyMap.emacsy = { - "Ctrl-F": "goCharRight", "Ctrl-B": "goCharLeft", "Ctrl-P": "goLineUp", "Ctrl-N": "goLineDown", - "Alt-F": "goWordRight", "Alt-B": "goWordLeft", "Ctrl-A": "goLineStart", "Ctrl-E": "goLineEnd", - "Ctrl-V": "goPageUp", "Shift-Ctrl-V": "goPageDown", "Ctrl-D": "delCharRight", "Ctrl-H": "delCharLeft", - "Alt-D": "delWordRight", "Alt-Backspace": "delWordLeft", "Ctrl-K": "killLine", "Ctrl-T": "transposeChars" - }; - - function lookupKey(name, extraMap, map) { - function lookup(name, map, ft) { - var found = map[name]; - if (found != null) return found; - if (ft == null) ft = map.fallthrough; - if (ft == null) return map.catchall; - if (typeof ft == "string") return lookup(name, keyMap[ft]); - for (var i = 0, e = ft.length; i < e; ++i) { - found = lookup(name, keyMap[ft[i]]); - if (found != null) return found; - } - return null; - } - return extraMap ? lookup(name, extraMap, map) : lookup(name, keyMap[map]); +// You can find some technical background for some of the code below +// at http://marijnhaverbeke.nl/blog/#cm-internals . + +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = global || self, global.CodeMirror = factory()); +}(this, (function () { 'use strict'; + + // Kludges for bugs and behavior differences that can't be feature + // detected are enabled based on userAgent etc sniffing. + var userAgent = navigator.userAgent; + var platform = navigator.platform; + + var gecko = /gecko\/\d/i.test(userAgent); + var ie_upto10 = /MSIE \d/.test(userAgent); + var ie_11up = /Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(userAgent); + var edge = /Edge\/(\d+)/.exec(userAgent); + var ie = ie_upto10 || ie_11up || edge; + var ie_version = ie && (ie_upto10 ? document.documentMode || 6 : +(edge || ie_11up)[1]); + var webkit = !edge && /WebKit\//.test(userAgent); + var qtwebkit = webkit && /Qt\/\d+\.\d+/.test(userAgent); + var chrome = !edge && /Chrome\/(\d+)/.exec(userAgent); + var chrome_version = chrome && +chrome[1]; + var presto = /Opera\//.test(userAgent); + var safari = /Apple Computer/.test(navigator.vendor); + var mac_geMountainLion = /Mac OS X 1\d\D([8-9]|\d\d)\D/.test(userAgent); + var phantom = /PhantomJS/.test(userAgent); + + var ios = safari && (/Mobile\/\w+/.test(userAgent) || navigator.maxTouchPoints > 2); + var android = /Android/.test(userAgent); + // This is woefully incomplete. Suggestions for alternative methods welcome. + var mobile = ios || android || /webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(userAgent); + var mac = ios || /Mac/.test(platform); + var chromeOS = /\bCrOS\b/.test(userAgent); + var windows = /win/i.test(platform); + + var presto_version = presto && userAgent.match(/Version\/(\d*\.\d*)/); + if (presto_version) { presto_version = Number(presto_version[1]); } + if (presto_version && presto_version >= 15) { presto = false; webkit = true; } + // Some browsers use the wrong event properties to signal cmd/ctrl on OS X + var flipCtrlCmd = mac && (qtwebkit || presto && (presto_version == null || presto_version < 12.11)); + var captureRightClick = gecko || (ie && ie_version >= 9); + + function classTest(cls) { return new RegExp("(^|\\s)" + cls + "(?:$|\\s)\\s*") } + + var rmClass = function(node, cls) { + var current = node.className; + var match = classTest(cls).exec(current); + if (match) { + var after = current.slice(match.index + match[0].length); + node.className = current.slice(0, match.index) + (after ? match[1] + after : ""); } - function isModifierKey(event) { - var name = keyNames[event.keyCode]; - return name == "Ctrl" || name == "Alt" || name == "Shift" || name == "Mod"; + }; + + function removeChildren(e) { + for (var count = e.childNodes.length; count > 0; --count) + { e.removeChild(e.firstChild); } + return e + } + + function removeChildrenAndAdd(parent, e) { + return removeChildren(parent).appendChild(e) + } + + function elt(tag, content, className, style) { + var e = document.createElement(tag); + if (className) { e.className = className; } + if (style) { e.style.cssText = style; } + if (typeof content == "string") { e.appendChild(document.createTextNode(content)); } + else if (content) { for (var i = 0; i < content.length; ++i) { e.appendChild(content[i]); } } + return e + } + // wrapper for elt, which removes the elt from the accessibility tree + function eltP(tag, content, className, style) { + var e = elt(tag, content, className, style); + e.setAttribute("role", "presentation"); + return e + } + + var range; + if (document.createRange) { range = function(node, start, end, endNode) { + var r = document.createRange(); + r.setEnd(endNode || node, end); + r.setStart(node, start); + return r + }; } + else { range = function(node, start, end) { + var r = document.body.createTextRange(); + try { r.moveToElementText(node.parentNode); } + catch(e) { return r } + r.collapse(true); + r.moveEnd("character", end); + r.moveStart("character", start); + return r + }; } + + function contains(parent, child) { + if (child.nodeType == 3) // Android browser always returns false when child is a textnode + { child = child.parentNode; } + if (parent.contains) + { return parent.contains(child) } + do { + if (child.nodeType == 11) { child = child.host; } + if (child == parent) { return true } + } while (child = child.parentNode) + } + + function activeElt(rootNode) { + // IE and Edge may throw an "Unspecified Error" when accessing document.activeElement. + // IE < 10 will throw when accessed while the page is loading or in an iframe. + // IE > 9 and Edge will throw when accessed in an iframe if document.body is unavailable. + var doc = rootNode.ownerDocument || rootNode; + var activeElement; + try { + activeElement = rootNode.activeElement; + } catch(e) { + activeElement = doc.body || null; + } + while (activeElement && activeElement.shadowRoot && activeElement.shadowRoot.activeElement) + { activeElement = activeElement.shadowRoot.activeElement; } + return activeElement + } + + function addClass(node, cls) { + var current = node.className; + if (!classTest(cls).test(current)) { node.className += (current ? " " : "") + cls; } + } + function joinClasses(a, b) { + var as = a.split(" "); + for (var i = 0; i < as.length; i++) + { if (as[i] && !classTest(as[i]).test(b)) { b += " " + as[i]; } } + return b + } + + var selectInput = function(node) { node.select(); }; + if (ios) // Mobile Safari apparently has a bug where select() is broken. + { selectInput = function(node) { node.selectionStart = 0; node.selectionEnd = node.value.length; }; } + else if (ie) // Suppress mysterious IE10 errors + { selectInput = function(node) { try { node.select(); } catch(_e) {} }; } + + function doc(cm) { return cm.display.wrapper.ownerDocument } + + function root(cm) { + return rootNode(cm.display.wrapper) + } + + function rootNode(element) { + // Detect modern browsers (2017+). + return element.getRootNode ? element.getRootNode() : element.ownerDocument + } + + function win(cm) { return doc(cm).defaultView } + + function bind(f) { + var args = Array.prototype.slice.call(arguments, 1); + return function(){return f.apply(null, args)} + } + + function copyObj(obj, target, overwrite) { + if (!target) { target = {}; } + for (var prop in obj) + { if (obj.hasOwnProperty(prop) && (overwrite !== false || !target.hasOwnProperty(prop))) + { target[prop] = obj[prop]; } } + return target + } + + // Counts the column offset in a string, taking tabs into account. + // Used mostly to find indentation. + function countColumn(string, end, tabSize, startIndex, startValue) { + if (end == null) { + end = string.search(/[^\s\u00a0]/); + if (end == -1) { end = string.length; } + } + for (var i = startIndex || 0, n = startValue || 0;;) { + var nextTab = string.indexOf("\t", i); + if (nextTab < 0 || nextTab >= end) + { return n + (end - i) } + n += nextTab - i; + n += tabSize - (n % tabSize); + i = nextTab + 1; + } + } + + var Delayed = function() { + this.id = null; + this.f = null; + this.time = 0; + this.handler = bind(this.onTimeout, this); + }; + Delayed.prototype.onTimeout = function (self) { + self.id = 0; + if (self.time <= +new Date) { + self.f(); + } else { + setTimeout(self.handler, self.time - +new Date); + } + }; + Delayed.prototype.set = function (ms, f) { + this.f = f; + var time = +new Date + ms; + if (!this.id || time < this.time) { + clearTimeout(this.id); + this.id = setTimeout(this.handler, ms); + this.time = time; + } + }; + + function indexOf(array, elt) { + for (var i = 0; i < array.length; ++i) + { if (array[i] == elt) { return i } } + return -1 + } + + // Number of pixels added to scroller and sizer to hide scrollbar + var scrollerGap = 50; + + // Returned or thrown by various protocols to signal 'I'm not + // handling this'. + var Pass = {toString: function(){return "CodeMirror.Pass"}}; + + // Reused option objects for setSelection & friends + var sel_dontScroll = {scroll: false}, sel_mouse = {origin: "*mouse"}, sel_move = {origin: "+move"}; + + // The inverse of countColumn -- find the offset that corresponds to + // a particular column. + function findColumn(string, goal, tabSize) { + for (var pos = 0, col = 0;;) { + var nextTab = string.indexOf("\t", pos); + if (nextTab == -1) { nextTab = string.length; } + var skipped = nextTab - pos; + if (nextTab == string.length || col + skipped >= goal) + { return pos + Math.min(skipped, goal - col) } + col += nextTab - pos; + col += tabSize - (col % tabSize); + pos = nextTab + 1; + if (col >= goal) { return pos } + } + } + + var spaceStrs = [""]; + function spaceStr(n) { + while (spaceStrs.length <= n) + { spaceStrs.push(lst(spaceStrs) + " "); } + return spaceStrs[n] + } + + function lst(arr) { return arr[arr.length-1] } + + function map(array, f) { + var out = []; + for (var i = 0; i < array.length; i++) { out[i] = f(array[i], i); } + return out + } + + function insertSorted(array, value, score) { + var pos = 0, priority = score(value); + while (pos < array.length && score(array[pos]) <= priority) { pos++; } + array.splice(pos, 0, value); + } + + function nothing() {} + + function createObj(base, props) { + var inst; + if (Object.create) { + inst = Object.create(base); + } else { + nothing.prototype = base; + inst = new nothing(); + } + if (props) { copyObj(props, inst); } + return inst + } + + var nonASCIISingleCaseWordChar = /[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/; + function isWordCharBasic(ch) { + return /\w/.test(ch) || ch > "\x80" && + (ch.toUpperCase() != ch.toLowerCase() || nonASCIISingleCaseWordChar.test(ch)) + } + function isWordChar(ch, helper) { + if (!helper) { return isWordCharBasic(ch) } + if (helper.source.indexOf("\\w") > -1 && isWordCharBasic(ch)) { return true } + return helper.test(ch) + } + + function isEmpty(obj) { + for (var n in obj) { if (obj.hasOwnProperty(n) && obj[n]) { return false } } + return true + } + + // Extending unicode characters. A series of a non-extending char + + // any number of extending chars is treated as a single unit as far + // as editing and measuring is concerned. This is not fully correct, + // since some scripts/fonts/browsers also treat other configurations + // of code points as a group. + var extendingChars = /[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/; + function isExtendingChar(ch) { return ch.charCodeAt(0) >= 768 && extendingChars.test(ch) } + + // Returns a number from the range [`0`; `str.length`] unless `pos` is outside that range. + function skipExtendingChars(str, pos, dir) { + while ((dir < 0 ? pos > 0 : pos < str.length) && isExtendingChar(str.charAt(pos))) { pos += dir; } + return pos + } + + // Returns the value from the range [`from`; `to`] that satisfies + // `pred` and is closest to `from`. Assumes that at least `to` + // satisfies `pred`. Supports `from` being greater than `to`. + function findFirst(pred, from, to) { + // At any point we are certain `to` satisfies `pred`, don't know + // whether `from` does. + var dir = from > to ? -1 : 1; + for (;;) { + if (from == to) { return from } + var midF = (from + to) / 2, mid = dir < 0 ? Math.ceil(midF) : Math.floor(midF); + if (mid == from) { return pred(mid) ? from : to } + if (pred(mid)) { to = mid; } + else { from = mid + dir; } + } + } + + // BIDI HELPERS + + function iterateBidiSections(order, from, to, f) { + if (!order) { return f(from, to, "ltr", 0) } + var found = false; + for (var i = 0; i < order.length; ++i) { + var part = order[i]; + if (part.from < to && part.to > from || from == to && part.to == from) { + f(Math.max(part.from, from), Math.min(part.to, to), part.level == 1 ? "rtl" : "ltr", i); + found = true; + } + } + if (!found) { f(from, to, "ltr"); } + } + + var bidiOther = null; + function getBidiPartAt(order, ch, sticky) { + var found; + bidiOther = null; + for (var i = 0; i < order.length; ++i) { + var cur = order[i]; + if (cur.from < ch && cur.to > ch) { return i } + if (cur.to == ch) { + if (cur.from != cur.to && sticky == "before") { found = i; } + else { bidiOther = i; } + } + if (cur.from == ch) { + if (cur.from != cur.to && sticky != "before") { found = i; } + else { bidiOther = i; } + } + } + return found != null ? found : bidiOther + } + + // Bidirectional ordering algorithm + // See http://unicode.org/reports/tr9/tr9-13.html for the algorithm + // that this (partially) implements. + + // One-char codes used for character types: + // L (L): Left-to-Right + // R (R): Right-to-Left + // r (AL): Right-to-Left Arabic + // 1 (EN): European Number + // + (ES): European Number Separator + // % (ET): European Number Terminator + // n (AN): Arabic Number + // , (CS): Common Number Separator + // m (NSM): Non-Spacing Mark + // b (BN): Boundary Neutral + // s (B): Paragraph Separator + // t (S): Segment Separator + // w (WS): Whitespace + // N (ON): Other Neutrals + + // Returns null if characters are ordered as they appear + // (left-to-right), or an array of sections ({from, to, level} + // objects) in the order in which they occur visually. + var bidiOrdering = (function() { + // Character types for codepoints 0 to 0xff + var lowTypes = "bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN"; + // Character types for codepoints 0x600 to 0x6f9 + var arabicTypes = "nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111"; + function charType(code) { + if (code <= 0xf7) { return lowTypes.charAt(code) } + else if (0x590 <= code && code <= 0x5f4) { return "R" } + else if (0x600 <= code && code <= 0x6f9) { return arabicTypes.charAt(code - 0x600) } + else if (0x6ee <= code && code <= 0x8ac) { return "r" } + else if (0x2000 <= code && code <= 0x200b) { return "w" } + else if (code == 0x200c) { return "b" } + else { return "L" } } - CodeMirror.fromTextArea = function(textarea, options) { - if (!options) options = {}; - options.value = textarea.value; - if (!options.tabindex && textarea.tabindex) - options.tabindex = textarea.tabindex; + var bidiRE = /[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/; + var isNeutral = /[stwN]/, isStrong = /[LRr]/, countsAsLeft = /[Lb1n]/, countsAsNum = /[1n]/; - function save() {textarea.value = instance.getValue();} - if (textarea.form) { - // Deplorable hack to make the submit method do the right thing. - var rmSubmit = connect(textarea.form, "submit", save, true); - if (typeof textarea.form.submit == "function") { - var realSubmit = textarea.form.submit; - function wrappedSubmit() { - save(); - textarea.form.submit = realSubmit; - textarea.form.submit(); - textarea.form.submit = wrappedSubmit; - } - textarea.form.submit = wrappedSubmit; + function BidiSpan(level, from, to) { + this.level = level; + this.from = from; this.to = to; + } + + return function(str, direction) { + var outerType = direction == "ltr" ? "L" : "R"; + + if (str.length == 0 || direction == "ltr" && !bidiRE.test(str)) { return false } + var len = str.length, types = []; + for (var i = 0; i < len; ++i) + { types.push(charType(str.charCodeAt(i))); } + + // W1. Examine each non-spacing mark (NSM) in the level run, and + // change the type of the NSM to the type of the previous + // character. If the NSM is at the start of the level run, it will + // get the type of sor. + for (var i$1 = 0, prev = outerType; i$1 < len; ++i$1) { + var type = types[i$1]; + if (type == "m") { types[i$1] = prev; } + else { prev = type; } + } + + // W2. Search backwards from each instance of a European number + // until the first strong type (R, L, AL, or sor) is found. If an + // AL is found, change the type of the European number to Arabic + // number. + // W3. Change all ALs to R. + for (var i$2 = 0, cur = outerType; i$2 < len; ++i$2) { + var type$1 = types[i$2]; + if (type$1 == "1" && cur == "r") { types[i$2] = "n"; } + else if (isStrong.test(type$1)) { cur = type$1; if (type$1 == "r") { types[i$2] = "R"; } } + } + + // W4. A single European separator between two European numbers + // changes to a European number. A single common separator between + // two numbers of the same type changes to that type. + for (var i$3 = 1, prev$1 = types[0]; i$3 < len - 1; ++i$3) { + var type$2 = types[i$3]; + if (type$2 == "+" && prev$1 == "1" && types[i$3+1] == "1") { types[i$3] = "1"; } + else if (type$2 == "," && prev$1 == types[i$3+1] && + (prev$1 == "1" || prev$1 == "n")) { types[i$3] = prev$1; } + prev$1 = type$2; + } + + // W5. A sequence of European terminators adjacent to European + // numbers changes to all European numbers. + // W6. Otherwise, separators and terminators change to Other + // Neutral. + for (var i$4 = 0; i$4 < len; ++i$4) { + var type$3 = types[i$4]; + if (type$3 == ",") { types[i$4] = "N"; } + else if (type$3 == "%") { + var end = (void 0); + for (end = i$4 + 1; end < len && types[end] == "%"; ++end) {} + var replace = (i$4 && types[i$4-1] == "!") || (end < len && types[end] == "1") ? "1" : "N"; + for (var j = i$4; j < end; ++j) { types[j] = replace; } + i$4 = end - 1; + } + } + + // W7. Search backwards from each instance of a European number + // until the first strong type (R, L, or sor) is found. If an L is + // found, then change the type of the European number to L. + for (var i$5 = 0, cur$1 = outerType; i$5 < len; ++i$5) { + var type$4 = types[i$5]; + if (cur$1 == "L" && type$4 == "1") { types[i$5] = "L"; } + else if (isStrong.test(type$4)) { cur$1 = type$4; } + } + + // N1. A sequence of neutrals takes the direction of the + // surrounding strong text if the text on both sides has the same + // direction. European and Arabic numbers act as if they were R in + // terms of their influence on neutrals. Start-of-level-run (sor) + // and end-of-level-run (eor) are used at level run boundaries. + // N2. Any remaining neutrals take the embedding direction. + for (var i$6 = 0; i$6 < len; ++i$6) { + if (isNeutral.test(types[i$6])) { + var end$1 = (void 0); + for (end$1 = i$6 + 1; end$1 < len && isNeutral.test(types[end$1]); ++end$1) {} + var before = (i$6 ? types[i$6-1] : outerType) == "L"; + var after = (end$1 < len ? types[end$1] : outerType) == "L"; + var replace$1 = before == after ? (before ? "L" : "R") : outerType; + for (var j$1 = i$6; j$1 < end$1; ++j$1) { types[j$1] = replace$1; } + i$6 = end$1 - 1; + } + } + + // Here we depart from the documented algorithm, in order to avoid + // building up an actual levels array. Since there are only three + // levels (0, 1, 2) in an implementation that doesn't take + // explicit embedding into account, we can build up the order on + // the fly, without following the level-based algorithm. + var order = [], m; + for (var i$7 = 0; i$7 < len;) { + if (countsAsLeft.test(types[i$7])) { + var start = i$7; + for (++i$7; i$7 < len && countsAsLeft.test(types[i$7]); ++i$7) {} + order.push(new BidiSpan(0, start, i$7)); + } else { + var pos = i$7, at = order.length, isRTL = direction == "rtl" ? 1 : 0; + for (++i$7; i$7 < len && types[i$7] != "L"; ++i$7) {} + for (var j$2 = pos; j$2 < i$7;) { + if (countsAsNum.test(types[j$2])) { + if (pos < j$2) { order.splice(at, 0, new BidiSpan(1, pos, j$2)); at += isRTL; } + var nstart = j$2; + for (++j$2; j$2 < i$7 && countsAsNum.test(types[j$2]); ++j$2) {} + order.splice(at, 0, new BidiSpan(2, nstart, j$2)); + at += isRTL; + pos = j$2; + } else { ++j$2; } + } + if (pos < i$7) { order.splice(at, 0, new BidiSpan(1, pos, i$7)); } + } + } + if (direction == "ltr") { + if (order[0].level == 1 && (m = str.match(/^\s+/))) { + order[0].from = m[0].length; + order.unshift(new BidiSpan(0, 0, m[0].length)); + } + if (lst(order).level == 1 && (m = str.match(/\s+$/))) { + lst(order).to -= m[0].length; + order.push(new BidiSpan(0, len - m[0].length, len)); + } + } + + return direction == "rtl" ? order.reverse() : order + } + })(); + + // Get the bidi ordering for the given line (and cache it). Returns + // false for lines that are fully left-to-right, and an array of + // BidiSpan objects otherwise. + function getOrder(line, direction) { + var order = line.order; + if (order == null) { order = line.order = bidiOrdering(line.text, direction); } + return order + } + + // EVENT HANDLING + + // Lightweight event framework. on/off also work on DOM nodes, + // registering native DOM handlers. + + var noHandlers = []; + + var on = function(emitter, type, f) { + if (emitter.addEventListener) { + emitter.addEventListener(type, f, false); + } else if (emitter.attachEvent) { + emitter.attachEvent("on" + type, f); + } else { + var map = emitter._handlers || (emitter._handlers = {}); + map[type] = (map[type] || noHandlers).concat(f); + } + }; + + function getHandlers(emitter, type) { + return emitter._handlers && emitter._handlers[type] || noHandlers + } + + function off(emitter, type, f) { + if (emitter.removeEventListener) { + emitter.removeEventListener(type, f, false); + } else if (emitter.detachEvent) { + emitter.detachEvent("on" + type, f); + } else { + var map = emitter._handlers, arr = map && map[type]; + if (arr) { + var index = indexOf(arr, f); + if (index > -1) + { map[type] = arr.slice(0, index).concat(arr.slice(index + 1)); } + } + } + } + + function signal(emitter, type /*, values...*/) { + var handlers = getHandlers(emitter, type); + if (!handlers.length) { return } + var args = Array.prototype.slice.call(arguments, 2); + for (var i = 0; i < handlers.length; ++i) { handlers[i].apply(null, args); } + } + + // The DOM events that CodeMirror handles can be overridden by + // registering a (non-DOM) handler on the editor for the event name, + // and preventDefault-ing the event in that handler. + function signalDOMEvent(cm, e, override) { + if (typeof e == "string") + { e = {type: e, preventDefault: function() { this.defaultPrevented = true; }}; } + signal(cm, override || e.type, cm, e); + return e_defaultPrevented(e) || e.codemirrorIgnore + } + + function signalCursorActivity(cm) { + var arr = cm._handlers && cm._handlers.cursorActivity; + if (!arr) { return } + var set = cm.curOp.cursorActivityHandlers || (cm.curOp.cursorActivityHandlers = []); + for (var i = 0; i < arr.length; ++i) { if (indexOf(set, arr[i]) == -1) + { set.push(arr[i]); } } + } + + function hasHandler(emitter, type) { + return getHandlers(emitter, type).length > 0 + } + + // Add on and off methods to a constructor's prototype, to make + // registering events on such objects more convenient. + function eventMixin(ctor) { + ctor.prototype.on = function(type, f) {on(this, type, f);}; + ctor.prototype.off = function(type, f) {off(this, type, f);}; + } + + // Due to the fact that we still support jurassic IE versions, some + // compatibility wrappers are needed. + + function e_preventDefault(e) { + if (e.preventDefault) { e.preventDefault(); } + else { e.returnValue = false; } + } + function e_stopPropagation(e) { + if (e.stopPropagation) { e.stopPropagation(); } + else { e.cancelBubble = true; } + } + function e_defaultPrevented(e) { + return e.defaultPrevented != null ? e.defaultPrevented : e.returnValue == false + } + function e_stop(e) {e_preventDefault(e); e_stopPropagation(e);} + + function e_target(e) {return e.target || e.srcElement} + function e_button(e) { + var b = e.which; + if (b == null) { + if (e.button & 1) { b = 1; } + else if (e.button & 2) { b = 3; } + else if (e.button & 4) { b = 2; } + } + if (mac && e.ctrlKey && b == 1) { b = 3; } + return b + } + + // Detect drag-and-drop + var dragAndDrop = function() { + // There is *some* kind of drag-and-drop support in IE6-8, but I + // couldn't get it to work yet. + if (ie && ie_version < 9) { return false } + var div = elt('div'); + return "draggable" in div || "dragDrop" in div + }(); + + var zwspSupported; + function zeroWidthElement(measure) { + if (zwspSupported == null) { + var test = elt("span", "\u200b"); + removeChildrenAndAdd(measure, elt("span", [test, document.createTextNode("x")])); + if (measure.firstChild.offsetHeight != 0) + { zwspSupported = test.offsetWidth <= 1 && test.offsetHeight > 2 && !(ie && ie_version < 8); } + } + var node = zwspSupported ? elt("span", "\u200b") : + elt("span", "\u00a0", null, "display: inline-block; width: 1px; margin-right: -1px"); + node.setAttribute("cm-text", ""); + return node + } + + // Feature-detect IE's crummy client rect reporting for bidi text + var badBidiRects; + function hasBadBidiRects(measure) { + if (badBidiRects != null) { return badBidiRects } + var txt = removeChildrenAndAdd(measure, document.createTextNode("A\u062eA")); + var r0 = range(txt, 0, 1).getBoundingClientRect(); + var r1 = range(txt, 1, 2).getBoundingClientRect(); + removeChildren(measure); + if (!r0 || r0.left == r0.right) { return false } // Safari returns null in some cases (#2780) + return badBidiRects = (r1.right - r0.right < 3) + } + + // See if "".split is the broken IE version, if so, provide an + // alternative way to split lines. + var splitLinesAuto = "\n\nb".split(/\n/).length != 3 ? function (string) { + var pos = 0, result = [], l = string.length; + while (pos <= l) { + var nl = string.indexOf("\n", pos); + if (nl == -1) { nl = string.length; } + var line = string.slice(pos, string.charAt(nl - 1) == "\r" ? nl - 1 : nl); + var rt = line.indexOf("\r"); + if (rt != -1) { + result.push(line.slice(0, rt)); + pos += rt + 1; + } else { + result.push(line); + pos = nl + 1; + } + } + return result + } : function (string) { return string.split(/\r\n?|\n/); }; + + var hasSelection = window.getSelection ? function (te) { + try { return te.selectionStart != te.selectionEnd } + catch(e) { return false } + } : function (te) { + var range; + try {range = te.ownerDocument.selection.createRange();} + catch(e) {} + if (!range || range.parentElement() != te) { return false } + return range.compareEndPoints("StartToEnd", range) != 0 + }; + + var hasCopyEvent = (function () { + var e = elt("div"); + if ("oncopy" in e) { return true } + e.setAttribute("oncopy", "return;"); + return typeof e.oncopy == "function" + })(); + + var badZoomedRects = null; + function hasBadZoomedRects(measure) { + if (badZoomedRects != null) { return badZoomedRects } + var node = removeChildrenAndAdd(measure, elt("span", "x")); + var normal = node.getBoundingClientRect(); + var fromRange = range(node, 0, 1).getBoundingClientRect(); + return badZoomedRects = Math.abs(normal.left - fromRange.left) > 1 + } + + // Known modes, by name and by MIME + var modes = {}, mimeModes = {}; + + // Extra arguments are stored as the mode's dependencies, which is + // used by (legacy) mechanisms like loadmode.js to automatically + // load a mode. (Preferred mechanism is the require/define calls.) + function defineMode(name, mode) { + if (arguments.length > 2) + { mode.dependencies = Array.prototype.slice.call(arguments, 2); } + modes[name] = mode; + } + + function defineMIME(mime, spec) { + mimeModes[mime] = spec; + } + + // Given a MIME type, a {name, ...options} config object, or a name + // string, return a mode config object. + function resolveMode(spec) { + if (typeof spec == "string" && mimeModes.hasOwnProperty(spec)) { + spec = mimeModes[spec]; + } else if (spec && typeof spec.name == "string" && mimeModes.hasOwnProperty(spec.name)) { + var found = mimeModes[spec.name]; + if (typeof found == "string") { found = {name: found}; } + spec = createObj(found, spec); + spec.name = found.name; + } else if (typeof spec == "string" && /^[\w\-]+\/[\w\-]+\+xml$/.test(spec)) { + return resolveMode("application/xml") + } else if (typeof spec == "string" && /^[\w\-]+\/[\w\-]+\+json$/.test(spec)) { + return resolveMode("application/json") + } + if (typeof spec == "string") { return {name: spec} } + else { return spec || {name: "null"} } + } + + // Given a mode spec (anything that resolveMode accepts), find and + // initialize an actual mode object. + function getMode(options, spec) { + spec = resolveMode(spec); + var mfactory = modes[spec.name]; + if (!mfactory) { return getMode(options, "text/plain") } + var modeObj = mfactory(options, spec); + if (modeExtensions.hasOwnProperty(spec.name)) { + var exts = modeExtensions[spec.name]; + for (var prop in exts) { + if (!exts.hasOwnProperty(prop)) { continue } + if (modeObj.hasOwnProperty(prop)) { modeObj["_" + prop] = modeObj[prop]; } + modeObj[prop] = exts[prop]; + } + } + modeObj.name = spec.name; + if (spec.helperType) { modeObj.helperType = spec.helperType; } + if (spec.modeProps) { for (var prop$1 in spec.modeProps) + { modeObj[prop$1] = spec.modeProps[prop$1]; } } + + return modeObj + } + + // This can be used to attach properties to mode objects from + // outside the actual mode definition. + var modeExtensions = {}; + function extendMode(mode, properties) { + var exts = modeExtensions.hasOwnProperty(mode) ? modeExtensions[mode] : (modeExtensions[mode] = {}); + copyObj(properties, exts); + } + + function copyState(mode, state) { + if (state === true) { return state } + if (mode.copyState) { return mode.copyState(state) } + var nstate = {}; + for (var n in state) { + var val = state[n]; + if (val instanceof Array) { val = val.concat([]); } + nstate[n] = val; + } + return nstate + } + + // Given a mode and a state (for that mode), find the inner mode and + // state at the position that the state refers to. + function innerMode(mode, state) { + var info; + while (mode.innerMode) { + info = mode.innerMode(state); + if (!info || info.mode == mode) { break } + state = info.state; + mode = info.mode; + } + return info || {mode: mode, state: state} + } + + function startState(mode, a1, a2) { + return mode.startState ? mode.startState(a1, a2) : true + } + + // STRING STREAM + + // Fed to the mode parsers, provides helper functions to make + // parsers more succinct. + + var StringStream = function(string, tabSize, lineOracle) { + this.pos = this.start = 0; + this.string = string; + this.tabSize = tabSize || 8; + this.lastColumnPos = this.lastColumnValue = 0; + this.lineStart = 0; + this.lineOracle = lineOracle; + }; + + StringStream.prototype.eol = function () {return this.pos >= this.string.length}; + StringStream.prototype.sol = function () {return this.pos == this.lineStart}; + StringStream.prototype.peek = function () {return this.string.charAt(this.pos) || undefined}; + StringStream.prototype.next = function () { + if (this.pos < this.string.length) + { return this.string.charAt(this.pos++) } + }; + StringStream.prototype.eat = function (match) { + var ch = this.string.charAt(this.pos); + var ok; + if (typeof match == "string") { ok = ch == match; } + else { ok = ch && (match.test ? match.test(ch) : match(ch)); } + if (ok) {++this.pos; return ch} + }; + StringStream.prototype.eatWhile = function (match) { + var start = this.pos; + while (this.eat(match)){} + return this.pos > start + }; + StringStream.prototype.eatSpace = function () { + var start = this.pos; + while (/[\s\u00a0]/.test(this.string.charAt(this.pos))) { ++this.pos; } + return this.pos > start + }; + StringStream.prototype.skipToEnd = function () {this.pos = this.string.length;}; + StringStream.prototype.skipTo = function (ch) { + var found = this.string.indexOf(ch, this.pos); + if (found > -1) {this.pos = found; return true} + }; + StringStream.prototype.backUp = function (n) {this.pos -= n;}; + StringStream.prototype.column = function () { + if (this.lastColumnPos < this.start) { + this.lastColumnValue = countColumn(this.string, this.start, this.tabSize, this.lastColumnPos, this.lastColumnValue); + this.lastColumnPos = this.start; + } + return this.lastColumnValue - (this.lineStart ? countColumn(this.string, this.lineStart, this.tabSize) : 0) + }; + StringStream.prototype.indentation = function () { + return countColumn(this.string, null, this.tabSize) - + (this.lineStart ? countColumn(this.string, this.lineStart, this.tabSize) : 0) + }; + StringStream.prototype.match = function (pattern, consume, caseInsensitive) { + if (typeof pattern == "string") { + var cased = function (str) { return caseInsensitive ? str.toLowerCase() : str; }; + var substr = this.string.substr(this.pos, pattern.length); + if (cased(substr) == cased(pattern)) { + if (consume !== false) { this.pos += pattern.length; } + return true + } + } else { + var match = this.string.slice(this.pos).match(pattern); + if (match && match.index > 0) { return null } + if (match && consume !== false) { this.pos += match[0].length; } + return match + } + }; + StringStream.prototype.current = function (){return this.string.slice(this.start, this.pos)}; + StringStream.prototype.hideFirstChars = function (n, inner) { + this.lineStart += n; + try { return inner() } + finally { this.lineStart -= n; } + }; + StringStream.prototype.lookAhead = function (n) { + var oracle = this.lineOracle; + return oracle && oracle.lookAhead(n) + }; + StringStream.prototype.baseToken = function () { + var oracle = this.lineOracle; + return oracle && oracle.baseToken(this.pos) + }; + + // Find the line object corresponding to the given line number. + function getLine(doc, n) { + n -= doc.first; + if (n < 0 || n >= doc.size) { throw new Error("There is no line " + (n + doc.first) + " in the document.") } + var chunk = doc; + while (!chunk.lines) { + for (var i = 0;; ++i) { + var child = chunk.children[i], sz = child.chunkSize(); + if (n < sz) { chunk = child; break } + n -= sz; + } + } + return chunk.lines[n] + } + + // Get the part of a document between two positions, as an array of + // strings. + function getBetween(doc, start, end) { + var out = [], n = start.line; + doc.iter(start.line, end.line + 1, function (line) { + var text = line.text; + if (n == end.line) { text = text.slice(0, end.ch); } + if (n == start.line) { text = text.slice(start.ch); } + out.push(text); + ++n; + }); + return out + } + // Get the lines between from and to, as array of strings. + function getLines(doc, from, to) { + var out = []; + doc.iter(from, to, function (line) { out.push(line.text); }); // iter aborts when callback returns truthy value + return out + } + + // Update the height of a line, propagating the height change + // upwards to parent nodes. + function updateLineHeight(line, height) { + var diff = height - line.height; + if (diff) { for (var n = line; n; n = n.parent) { n.height += diff; } } + } + + // Given a line object, find its line number by walking up through + // its parent links. + function lineNo(line) { + if (line.parent == null) { return null } + var cur = line.parent, no = indexOf(cur.lines, line); + for (var chunk = cur.parent; chunk; cur = chunk, chunk = chunk.parent) { + for (var i = 0;; ++i) { + if (chunk.children[i] == cur) { break } + no += chunk.children[i].chunkSize(); + } + } + return no + cur.first + } + + // Find the line at the given vertical position, using the height + // information in the document tree. + function lineAtHeight(chunk, h) { + var n = chunk.first; + outer: do { + for (var i$1 = 0; i$1 < chunk.children.length; ++i$1) { + var child = chunk.children[i$1], ch = child.height; + if (h < ch) { chunk = child; continue outer } + h -= ch; + n += child.chunkSize(); + } + return n + } while (!chunk.lines) + var i = 0; + for (; i < chunk.lines.length; ++i) { + var line = chunk.lines[i], lh = line.height; + if (h < lh) { break } + h -= lh; + } + return n + i + } + + function isLine(doc, l) {return l >= doc.first && l < doc.first + doc.size} + + function lineNumberFor(options, i) { + return String(options.lineNumberFormatter(i + options.firstLineNumber)) + } + + // A Pos instance represents a position within the text. + function Pos(line, ch, sticky) { + if ( sticky === void 0 ) sticky = null; + + if (!(this instanceof Pos)) { return new Pos(line, ch, sticky) } + this.line = line; + this.ch = ch; + this.sticky = sticky; + } + + // Compare two positions, return 0 if they are the same, a negative + // number when a is less, and a positive number otherwise. + function cmp(a, b) { return a.line - b.line || a.ch - b.ch } + + function equalCursorPos(a, b) { return a.sticky == b.sticky && cmp(a, b) == 0 } + + function copyPos(x) {return Pos(x.line, x.ch)} + function maxPos(a, b) { return cmp(a, b) < 0 ? b : a } + function minPos(a, b) { return cmp(a, b) < 0 ? a : b } + + // Most of the external API clips given positions to make sure they + // actually exist within the document. + function clipLine(doc, n) {return Math.max(doc.first, Math.min(n, doc.first + doc.size - 1))} + function clipPos(doc, pos) { + if (pos.line < doc.first) { return Pos(doc.first, 0) } + var last = doc.first + doc.size - 1; + if (pos.line > last) { return Pos(last, getLine(doc, last).text.length) } + return clipToLen(pos, getLine(doc, pos.line).text.length) + } + function clipToLen(pos, linelen) { + var ch = pos.ch; + if (ch == null || ch > linelen) { return Pos(pos.line, linelen) } + else if (ch < 0) { return Pos(pos.line, 0) } + else { return pos } + } + function clipPosArray(doc, array) { + var out = []; + for (var i = 0; i < array.length; i++) { out[i] = clipPos(doc, array[i]); } + return out + } + + var SavedContext = function(state, lookAhead) { + this.state = state; + this.lookAhead = lookAhead; + }; + + var Context = function(doc, state, line, lookAhead) { + this.state = state; + this.doc = doc; + this.line = line; + this.maxLookAhead = lookAhead || 0; + this.baseTokens = null; + this.baseTokenPos = 1; + }; + + Context.prototype.lookAhead = function (n) { + var line = this.doc.getLine(this.line + n); + if (line != null && n > this.maxLookAhead) { this.maxLookAhead = n; } + return line + }; + + Context.prototype.baseToken = function (n) { + if (!this.baseTokens) { return null } + while (this.baseTokens[this.baseTokenPos] <= n) + { this.baseTokenPos += 2; } + var type = this.baseTokens[this.baseTokenPos + 1]; + return {type: type && type.replace(/( |^)overlay .*/, ""), + size: this.baseTokens[this.baseTokenPos] - n} + }; + + Context.prototype.nextLine = function () { + this.line++; + if (this.maxLookAhead > 0) { this.maxLookAhead--; } + }; + + Context.fromSaved = function (doc, saved, line) { + if (saved instanceof SavedContext) + { return new Context(doc, copyState(doc.mode, saved.state), line, saved.lookAhead) } + else + { return new Context(doc, copyState(doc.mode, saved), line) } + }; + + Context.prototype.save = function (copy) { + var state = copy !== false ? copyState(this.doc.mode, this.state) : this.state; + return this.maxLookAhead > 0 ? new SavedContext(state, this.maxLookAhead) : state + }; + + + // Compute a style array (an array starting with a mode generation + // -- for invalidation -- followed by pairs of end positions and + // style strings), which is used to highlight the tokens on the + // line. + function highlightLine(cm, line, context, forceToEnd) { + // A styles array always starts with a number identifying the + // mode/overlays that it is based on (for easy invalidation). + var st = [cm.state.modeGen], lineClasses = {}; + // Compute the base array of styles + runMode(cm, line.text, cm.doc.mode, context, function (end, style) { return st.push(end, style); }, + lineClasses, forceToEnd); + var state = context.state; + + // Run overlays, adjust style array. + var loop = function ( o ) { + context.baseTokens = st; + var overlay = cm.state.overlays[o], i = 1, at = 0; + context.state = true; + runMode(cm, line.text, overlay.mode, context, function (end, style) { + var start = i; + // Ensure there's a token end at the current position, and that i points at it + while (at < end) { + var i_end = st[i]; + if (i_end > end) + { st.splice(i, 1, end, st[i+1], i_end); } + i += 2; + at = Math.min(end, i_end); + } + if (!style) { return } + if (overlay.opaque) { + st.splice(start, i - start, end, "overlay " + style); + i = start + 2; + } else { + for (; start < i; start += 2) { + var cur = st[start+1]; + st[start+1] = (cur ? cur + " " : "") + "overlay " + style; + } + } + }, lineClasses); + context.state = state; + context.baseTokens = null; + context.baseTokenPos = 1; + }; + + for (var o = 0; o < cm.state.overlays.length; ++o) loop( o ); + + return {styles: st, classes: lineClasses.bgClass || lineClasses.textClass ? lineClasses : null} + } + + function getLineStyles(cm, line, updateFrontier) { + if (!line.styles || line.styles[0] != cm.state.modeGen) { + var context = getContextBefore(cm, lineNo(line)); + var resetState = line.text.length > cm.options.maxHighlightLength && copyState(cm.doc.mode, context.state); + var result = highlightLine(cm, line, context); + if (resetState) { context.state = resetState; } + line.stateAfter = context.save(!resetState); + line.styles = result.styles; + if (result.classes) { line.styleClasses = result.classes; } + else if (line.styleClasses) { line.styleClasses = null; } + if (updateFrontier === cm.doc.highlightFrontier) + { cm.doc.modeFrontier = Math.max(cm.doc.modeFrontier, ++cm.doc.highlightFrontier); } + } + return line.styles + } + + function getContextBefore(cm, n, precise) { + var doc = cm.doc, display = cm.display; + if (!doc.mode.startState) { return new Context(doc, true, n) } + var start = findStartLine(cm, n, precise); + var saved = start > doc.first && getLine(doc, start - 1).stateAfter; + var context = saved ? Context.fromSaved(doc, saved, start) : new Context(doc, startState(doc.mode), start); + + doc.iter(start, n, function (line) { + processLine(cm, line.text, context); + var pos = context.line; + line.stateAfter = pos == n - 1 || pos % 5 == 0 || pos >= display.viewFrom && pos < display.viewTo ? context.save() : null; + context.nextLine(); + }); + if (precise) { doc.modeFrontier = context.line; } + return context + } + + // Lightweight form of highlight -- proceed over this line and + // update state, but don't save a style array. Used for lines that + // aren't currently visible. + function processLine(cm, text, context, startAt) { + var mode = cm.doc.mode; + var stream = new StringStream(text, cm.options.tabSize, context); + stream.start = stream.pos = startAt || 0; + if (text == "") { callBlankLine(mode, context.state); } + while (!stream.eol()) { + readToken(mode, stream, context.state); + stream.start = stream.pos; + } + } + + function callBlankLine(mode, state) { + if (mode.blankLine) { return mode.blankLine(state) } + if (!mode.innerMode) { return } + var inner = innerMode(mode, state); + if (inner.mode.blankLine) { return inner.mode.blankLine(inner.state) } + } + + function readToken(mode, stream, state, inner) { + for (var i = 0; i < 10; i++) { + if (inner) { inner[0] = innerMode(mode, state).mode; } + var style = mode.token(stream, state); + if (stream.pos > stream.start) { return style } + } + throw new Error("Mode " + mode.name + " failed to advance stream.") + } + + var Token = function(stream, type, state) { + this.start = stream.start; this.end = stream.pos; + this.string = stream.current(); + this.type = type || null; + this.state = state; + }; + + // Utility for getTokenAt and getLineTokens + function takeToken(cm, pos, precise, asArray) { + var doc = cm.doc, mode = doc.mode, style; + pos = clipPos(doc, pos); + var line = getLine(doc, pos.line), context = getContextBefore(cm, pos.line, precise); + var stream = new StringStream(line.text, cm.options.tabSize, context), tokens; + if (asArray) { tokens = []; } + while ((asArray || stream.pos < pos.ch) && !stream.eol()) { + stream.start = stream.pos; + style = readToken(mode, stream, context.state); + if (asArray) { tokens.push(new Token(stream, style, copyState(doc.mode, context.state))); } + } + return asArray ? tokens : new Token(stream, style, context.state) + } + + function extractLineClasses(type, output) { + if (type) { for (;;) { + var lineClass = type.match(/(?:^|\s+)line-(background-)?(\S+)/); + if (!lineClass) { break } + type = type.slice(0, lineClass.index) + type.slice(lineClass.index + lineClass[0].length); + var prop = lineClass[1] ? "bgClass" : "textClass"; + if (output[prop] == null) + { output[prop] = lineClass[2]; } + else if (!(new RegExp("(?:^|\\s)" + lineClass[2] + "(?:$|\\s)")).test(output[prop])) + { output[prop] += " " + lineClass[2]; } + } } + return type + } + + // Run the given mode's parser over a line, calling f for each token. + function runMode(cm, text, mode, context, f, lineClasses, forceToEnd) { + var flattenSpans = mode.flattenSpans; + if (flattenSpans == null) { flattenSpans = cm.options.flattenSpans; } + var curStart = 0, curStyle = null; + var stream = new StringStream(text, cm.options.tabSize, context), style; + var inner = cm.options.addModeClass && [null]; + if (text == "") { extractLineClasses(callBlankLine(mode, context.state), lineClasses); } + while (!stream.eol()) { + if (stream.pos > cm.options.maxHighlightLength) { + flattenSpans = false; + if (forceToEnd) { processLine(cm, text, context, stream.pos); } + stream.pos = text.length; + style = null; + } else { + style = extractLineClasses(readToken(mode, stream, context.state, inner), lineClasses); + } + if (inner) { + var mName = inner[0].name; + if (mName) { style = "m-" + (style ? mName + " " + style : mName); } + } + if (!flattenSpans || curStyle != style) { + while (curStart < stream.start) { + curStart = Math.min(stream.start, curStart + 5000); + f(curStart, curStyle); + } + curStyle = style; + } + stream.start = stream.pos; + } + while (curStart < stream.pos) { + // Webkit seems to refuse to render text nodes longer than 57444 + // characters, and returns inaccurate measurements in nodes + // starting around 5000 chars. + var pos = Math.min(stream.pos, curStart + 5000); + f(pos, curStyle); + curStart = pos; + } + } + + // Finds the line to start with when starting a parse. Tries to + // find a line with a stateAfter, so that it can start with a + // valid state. If that fails, it returns the line with the + // smallest indentation, which tends to need the least context to + // parse correctly. + function findStartLine(cm, n, precise) { + var minindent, minline, doc = cm.doc; + var lim = precise ? -1 : n - (cm.doc.mode.innerMode ? 1000 : 100); + for (var search = n; search > lim; --search) { + if (search <= doc.first) { return doc.first } + var line = getLine(doc, search - 1), after = line.stateAfter; + if (after && (!precise || search + (after instanceof SavedContext ? after.lookAhead : 0) <= doc.modeFrontier)) + { return search } + var indented = countColumn(line.text, null, cm.options.tabSize); + if (minline == null || minindent > indented) { + minline = search - 1; + minindent = indented; + } + } + return minline + } + + function retreatFrontier(doc, n) { + doc.modeFrontier = Math.min(doc.modeFrontier, n); + if (doc.highlightFrontier < n - 10) { return } + var start = doc.first; + for (var line = n - 1; line > start; line--) { + var saved = getLine(doc, line).stateAfter; + // change is on 3 + // state on line 1 looked ahead 2 -- so saw 3 + // test 1 + 2 < 3 should cover this + if (saved && (!(saved instanceof SavedContext) || line + saved.lookAhead < n)) { + start = line + 1; + break + } + } + doc.highlightFrontier = Math.min(doc.highlightFrontier, start); + } + + // Optimize some code when these features are not used. + var sawReadOnlySpans = false, sawCollapsedSpans = false; + + function seeReadOnlySpans() { + sawReadOnlySpans = true; + } + + function seeCollapsedSpans() { + sawCollapsedSpans = true; + } + + // TEXTMARKER SPANS + + function MarkedSpan(marker, from, to) { + this.marker = marker; + this.from = from; this.to = to; + } + + // Search an array of spans for a span matching the given marker. + function getMarkedSpanFor(spans, marker) { + if (spans) { for (var i = 0; i < spans.length; ++i) { + var span = spans[i]; + if (span.marker == marker) { return span } + } } + } + + // Remove a span from an array, returning undefined if no spans are + // left (we don't store arrays for lines without spans). + function removeMarkedSpan(spans, span) { + var r; + for (var i = 0; i < spans.length; ++i) + { if (spans[i] != span) { (r || (r = [])).push(spans[i]); } } + return r + } + + // Add a span to a line. + function addMarkedSpan(line, span, op) { + var inThisOp = op && window.WeakSet && (op.markedSpans || (op.markedSpans = new WeakSet)); + if (inThisOp && line.markedSpans && inThisOp.has(line.markedSpans)) { + line.markedSpans.push(span); + } else { + line.markedSpans = line.markedSpans ? line.markedSpans.concat([span]) : [span]; + if (inThisOp) { inThisOp.add(line.markedSpans); } + } + span.marker.attachLine(line); + } + + // Used for the algorithm that adjusts markers for a change in the + // document. These functions cut an array of spans at a given + // character position, returning an array of remaining chunks (or + // undefined if nothing remains). + function markedSpansBefore(old, startCh, isInsert) { + var nw; + if (old) { for (var i = 0; i < old.length; ++i) { + var span = old[i], marker = span.marker; + var startsBefore = span.from == null || (marker.inclusiveLeft ? span.from <= startCh : span.from < startCh); + if (startsBefore || span.from == startCh && marker.type == "bookmark" && (!isInsert || !span.marker.insertLeft)) { + var endsAfter = span.to == null || (marker.inclusiveRight ? span.to >= startCh : span.to > startCh) + ;(nw || (nw = [])).push(new MarkedSpan(marker, span.from, endsAfter ? null : span.to)); + } + } } + return nw + } + function markedSpansAfter(old, endCh, isInsert) { + var nw; + if (old) { for (var i = 0; i < old.length; ++i) { + var span = old[i], marker = span.marker; + var endsAfter = span.to == null || (marker.inclusiveRight ? span.to >= endCh : span.to > endCh); + if (endsAfter || span.from == endCh && marker.type == "bookmark" && (!isInsert || span.marker.insertLeft)) { + var startsBefore = span.from == null || (marker.inclusiveLeft ? span.from <= endCh : span.from < endCh) + ;(nw || (nw = [])).push(new MarkedSpan(marker, startsBefore ? null : span.from - endCh, + span.to == null ? null : span.to - endCh)); + } + } } + return nw + } + + // Given a change object, compute the new set of marker spans that + // cover the line in which the change took place. Removes spans + // entirely within the change, reconnects spans belonging to the + // same marker that appear on both sides of the change, and cuts off + // spans partially within the change. Returns an array of span + // arrays with one element for each line in (after) the change. + function stretchSpansOverChange(doc, change) { + if (change.full) { return null } + var oldFirst = isLine(doc, change.from.line) && getLine(doc, change.from.line).markedSpans; + var oldLast = isLine(doc, change.to.line) && getLine(doc, change.to.line).markedSpans; + if (!oldFirst && !oldLast) { return null } + + var startCh = change.from.ch, endCh = change.to.ch, isInsert = cmp(change.from, change.to) == 0; + // Get the spans that 'stick out' on both sides + var first = markedSpansBefore(oldFirst, startCh, isInsert); + var last = markedSpansAfter(oldLast, endCh, isInsert); + + // Next, merge those two ends + var sameLine = change.text.length == 1, offset = lst(change.text).length + (sameLine ? startCh : 0); + if (first) { + // Fix up .to properties of first + for (var i = 0; i < first.length; ++i) { + var span = first[i]; + if (span.to == null) { + var found = getMarkedSpanFor(last, span.marker); + if (!found) { span.to = startCh; } + else if (sameLine) { span.to = found.to == null ? null : found.to + offset; } + } + } + } + if (last) { + // Fix up .from in last (or move them into first in case of sameLine) + for (var i$1 = 0; i$1 < last.length; ++i$1) { + var span$1 = last[i$1]; + if (span$1.to != null) { span$1.to += offset; } + if (span$1.from == null) { + var found$1 = getMarkedSpanFor(first, span$1.marker); + if (!found$1) { + span$1.from = offset; + if (sameLine) { (first || (first = [])).push(span$1); } + } + } else { + span$1.from += offset; + if (sameLine) { (first || (first = [])).push(span$1); } + } + } + } + // Make sure we didn't create any zero-length spans + if (first) { first = clearEmptySpans(first); } + if (last && last != first) { last = clearEmptySpans(last); } + + var newMarkers = [first]; + if (!sameLine) { + // Fill gap with whole-line-spans + var gap = change.text.length - 2, gapMarkers; + if (gap > 0 && first) + { for (var i$2 = 0; i$2 < first.length; ++i$2) + { if (first[i$2].to == null) + { (gapMarkers || (gapMarkers = [])).push(new MarkedSpan(first[i$2].marker, null, null)); } } } + for (var i$3 = 0; i$3 < gap; ++i$3) + { newMarkers.push(gapMarkers); } + newMarkers.push(last); + } + return newMarkers + } + + // Remove spans that are empty and don't have a clearWhenEmpty + // option of false. + function clearEmptySpans(spans) { + for (var i = 0; i < spans.length; ++i) { + var span = spans[i]; + if (span.from != null && span.from == span.to && span.marker.clearWhenEmpty !== false) + { spans.splice(i--, 1); } + } + if (!spans.length) { return null } + return spans + } + + // Used to 'clip' out readOnly ranges when making a change. + function removeReadOnlyRanges(doc, from, to) { + var markers = null; + doc.iter(from.line, to.line + 1, function (line) { + if (line.markedSpans) { for (var i = 0; i < line.markedSpans.length; ++i) { + var mark = line.markedSpans[i].marker; + if (mark.readOnly && (!markers || indexOf(markers, mark) == -1)) + { (markers || (markers = [])).push(mark); } + } } + }); + if (!markers) { return null } + var parts = [{from: from, to: to}]; + for (var i = 0; i < markers.length; ++i) { + var mk = markers[i], m = mk.find(0); + for (var j = 0; j < parts.length; ++j) { + var p = parts[j]; + if (cmp(p.to, m.from) < 0 || cmp(p.from, m.to) > 0) { continue } + var newParts = [j, 1], dfrom = cmp(p.from, m.from), dto = cmp(p.to, m.to); + if (dfrom < 0 || !mk.inclusiveLeft && !dfrom) + { newParts.push({from: p.from, to: m.from}); } + if (dto > 0 || !mk.inclusiveRight && !dto) + { newParts.push({from: m.to, to: p.to}); } + parts.splice.apply(parts, newParts); + j += newParts.length - 3; + } + } + return parts + } + + // Connect or disconnect spans from a line. + function detachMarkedSpans(line) { + var spans = line.markedSpans; + if (!spans) { return } + for (var i = 0; i < spans.length; ++i) + { spans[i].marker.detachLine(line); } + line.markedSpans = null; + } + function attachMarkedSpans(line, spans) { + if (!spans) { return } + for (var i = 0; i < spans.length; ++i) + { spans[i].marker.attachLine(line); } + line.markedSpans = spans; + } + + // Helpers used when computing which overlapping collapsed span + // counts as the larger one. + function extraLeft(marker) { return marker.inclusiveLeft ? -1 : 0 } + function extraRight(marker) { return marker.inclusiveRight ? 1 : 0 } + + // Returns a number indicating which of two overlapping collapsed + // spans is larger (and thus includes the other). Falls back to + // comparing ids when the spans cover exactly the same range. + function compareCollapsedMarkers(a, b) { + var lenDiff = a.lines.length - b.lines.length; + if (lenDiff != 0) { return lenDiff } + var aPos = a.find(), bPos = b.find(); + var fromCmp = cmp(aPos.from, bPos.from) || extraLeft(a) - extraLeft(b); + if (fromCmp) { return -fromCmp } + var toCmp = cmp(aPos.to, bPos.to) || extraRight(a) - extraRight(b); + if (toCmp) { return toCmp } + return b.id - a.id + } + + // Find out whether a line ends or starts in a collapsed span. If + // so, return the marker for that span. + function collapsedSpanAtSide(line, start) { + var sps = sawCollapsedSpans && line.markedSpans, found; + if (sps) { for (var sp = (void 0), i = 0; i < sps.length; ++i) { + sp = sps[i]; + if (sp.marker.collapsed && (start ? sp.from : sp.to) == null && + (!found || compareCollapsedMarkers(found, sp.marker) < 0)) + { found = sp.marker; } + } } + return found + } + function collapsedSpanAtStart(line) { return collapsedSpanAtSide(line, true) } + function collapsedSpanAtEnd(line) { return collapsedSpanAtSide(line, false) } + + function collapsedSpanAround(line, ch) { + var sps = sawCollapsedSpans && line.markedSpans, found; + if (sps) { for (var i = 0; i < sps.length; ++i) { + var sp = sps[i]; + if (sp.marker.collapsed && (sp.from == null || sp.from < ch) && (sp.to == null || sp.to > ch) && + (!found || compareCollapsedMarkers(found, sp.marker) < 0)) { found = sp.marker; } + } } + return found + } + + // Test whether there exists a collapsed span that partially + // overlaps (covers the start or end, but not both) of a new span. + // Such overlap is not allowed. + function conflictingCollapsedRange(doc, lineNo, from, to, marker) { + var line = getLine(doc, lineNo); + var sps = sawCollapsedSpans && line.markedSpans; + if (sps) { for (var i = 0; i < sps.length; ++i) { + var sp = sps[i]; + if (!sp.marker.collapsed) { continue } + var found = sp.marker.find(0); + var fromCmp = cmp(found.from, from) || extraLeft(sp.marker) - extraLeft(marker); + var toCmp = cmp(found.to, to) || extraRight(sp.marker) - extraRight(marker); + if (fromCmp >= 0 && toCmp <= 0 || fromCmp <= 0 && toCmp >= 0) { continue } + if (fromCmp <= 0 && (sp.marker.inclusiveRight && marker.inclusiveLeft ? cmp(found.to, from) >= 0 : cmp(found.to, from) > 0) || + fromCmp >= 0 && (sp.marker.inclusiveRight && marker.inclusiveLeft ? cmp(found.from, to) <= 0 : cmp(found.from, to) < 0)) + { return true } + } } + } + + // A visual line is a line as drawn on the screen. Folding, for + // example, can cause multiple logical lines to appear on the same + // visual line. This finds the start of the visual line that the + // given line is part of (usually that is the line itself). + function visualLine(line) { + var merged; + while (merged = collapsedSpanAtStart(line)) + { line = merged.find(-1, true).line; } + return line + } + + function visualLineEnd(line) { + var merged; + while (merged = collapsedSpanAtEnd(line)) + { line = merged.find(1, true).line; } + return line + } + + // Returns an array of logical lines that continue the visual line + // started by the argument, or undefined if there are no such lines. + function visualLineContinued(line) { + var merged, lines; + while (merged = collapsedSpanAtEnd(line)) { + line = merged.find(1, true).line + ;(lines || (lines = [])).push(line); + } + return lines + } + + // Get the line number of the start of the visual line that the + // given line number is part of. + function visualLineNo(doc, lineN) { + var line = getLine(doc, lineN), vis = visualLine(line); + if (line == vis) { return lineN } + return lineNo(vis) + } + + // Get the line number of the start of the next visual line after + // the given line. + function visualLineEndNo(doc, lineN) { + if (lineN > doc.lastLine()) { return lineN } + var line = getLine(doc, lineN), merged; + if (!lineIsHidden(doc, line)) { return lineN } + while (merged = collapsedSpanAtEnd(line)) + { line = merged.find(1, true).line; } + return lineNo(line) + 1 + } + + // Compute whether a line is hidden. Lines count as hidden when they + // are part of a visual line that starts with another line, or when + // they are entirely covered by collapsed, non-widget span. + function lineIsHidden(doc, line) { + var sps = sawCollapsedSpans && line.markedSpans; + if (sps) { for (var sp = (void 0), i = 0; i < sps.length; ++i) { + sp = sps[i]; + if (!sp.marker.collapsed) { continue } + if (sp.from == null) { return true } + if (sp.marker.widgetNode) { continue } + if (sp.from == 0 && sp.marker.inclusiveLeft && lineIsHiddenInner(doc, line, sp)) + { return true } + } } + } + function lineIsHiddenInner(doc, line, span) { + if (span.to == null) { + var end = span.marker.find(1, true); + return lineIsHiddenInner(doc, end.line, getMarkedSpanFor(end.line.markedSpans, span.marker)) + } + if (span.marker.inclusiveRight && span.to == line.text.length) + { return true } + for (var sp = (void 0), i = 0; i < line.markedSpans.length; ++i) { + sp = line.markedSpans[i]; + if (sp.marker.collapsed && !sp.marker.widgetNode && sp.from == span.to && + (sp.to == null || sp.to != span.from) && + (sp.marker.inclusiveLeft || span.marker.inclusiveRight) && + lineIsHiddenInner(doc, line, sp)) { return true } + } + } + + // Find the height above the given line. + function heightAtLine(lineObj) { + lineObj = visualLine(lineObj); + + var h = 0, chunk = lineObj.parent; + for (var i = 0; i < chunk.lines.length; ++i) { + var line = chunk.lines[i]; + if (line == lineObj) { break } + else { h += line.height; } + } + for (var p = chunk.parent; p; chunk = p, p = chunk.parent) { + for (var i$1 = 0; i$1 < p.children.length; ++i$1) { + var cur = p.children[i$1]; + if (cur == chunk) { break } + else { h += cur.height; } + } + } + return h + } + + // Compute the character length of a line, taking into account + // collapsed ranges (see markText) that might hide parts, and join + // other lines onto it. + function lineLength(line) { + if (line.height == 0) { return 0 } + var len = line.text.length, merged, cur = line; + while (merged = collapsedSpanAtStart(cur)) { + var found = merged.find(0, true); + cur = found.from.line; + len += found.from.ch - found.to.ch; + } + cur = line; + while (merged = collapsedSpanAtEnd(cur)) { + var found$1 = merged.find(0, true); + len -= cur.text.length - found$1.from.ch; + cur = found$1.to.line; + len += cur.text.length - found$1.to.ch; + } + return len + } + + // Find the longest line in the document. + function findMaxLine(cm) { + var d = cm.display, doc = cm.doc; + d.maxLine = getLine(doc, doc.first); + d.maxLineLength = lineLength(d.maxLine); + d.maxLineChanged = true; + doc.iter(function (line) { + var len = lineLength(line); + if (len > d.maxLineLength) { + d.maxLineLength = len; + d.maxLine = line; + } + }); + } + + // LINE DATA STRUCTURE + + // Line objects. These hold state related to a line, including + // highlighting info (the styles array). + var Line = function(text, markedSpans, estimateHeight) { + this.text = text; + attachMarkedSpans(this, markedSpans); + this.height = estimateHeight ? estimateHeight(this) : 1; + }; + + Line.prototype.lineNo = function () { return lineNo(this) }; + eventMixin(Line); + + // Change the content (text, markers) of a line. Automatically + // invalidates cached information and tries to re-estimate the + // line's height. + function updateLine(line, text, markedSpans, estimateHeight) { + line.text = text; + if (line.stateAfter) { line.stateAfter = null; } + if (line.styles) { line.styles = null; } + if (line.order != null) { line.order = null; } + detachMarkedSpans(line); + attachMarkedSpans(line, markedSpans); + var estHeight = estimateHeight ? estimateHeight(line) : 1; + if (estHeight != line.height) { updateLineHeight(line, estHeight); } + } + + // Detach a line from the document tree and its markers. + function cleanUpLine(line) { + line.parent = null; + detachMarkedSpans(line); + } + + // Convert a style as returned by a mode (either null, or a string + // containing one or more styles) to a CSS style. This is cached, + // and also looks for line-wide styles. + var styleToClassCache = {}, styleToClassCacheWithMode = {}; + function interpretTokenStyle(style, options) { + if (!style || /^\s*$/.test(style)) { return null } + var cache = options.addModeClass ? styleToClassCacheWithMode : styleToClassCache; + return cache[style] || + (cache[style] = style.replace(/\S+/g, "cm-$&")) + } + + // Render the DOM representation of the text of a line. Also builds + // up a 'line map', which points at the DOM nodes that represent + // specific stretches of text, and is used by the measuring code. + // The returned object contains the DOM node, this map, and + // information about line-wide styles that were set by the mode. + function buildLineContent(cm, lineView) { + // The padding-right forces the element to have a 'border', which + // is needed on Webkit to be able to get line-level bounding + // rectangles for it (in measureChar). + var content = eltP("span", null, null, webkit ? "padding-right: .1px" : null); + var builder = {pre: eltP("pre", [content], "CodeMirror-line"), content: content, + col: 0, pos: 0, cm: cm, + trailingSpace: false, + splitSpaces: cm.getOption("lineWrapping")}; + lineView.measure = {}; + + // Iterate over the logical lines that make up this visual line. + for (var i = 0; i <= (lineView.rest ? lineView.rest.length : 0); i++) { + var line = i ? lineView.rest[i - 1] : lineView.line, order = (void 0); + builder.pos = 0; + builder.addToken = buildToken; + // Optionally wire in some hacks into the token-rendering + // algorithm, to deal with browser quirks. + if (hasBadBidiRects(cm.display.measure) && (order = getOrder(line, cm.doc.direction))) + { builder.addToken = buildTokenBadBidi(builder.addToken, order); } + builder.map = []; + var allowFrontierUpdate = lineView != cm.display.externalMeasured && lineNo(line); + insertLineContent(line, builder, getLineStyles(cm, line, allowFrontierUpdate)); + if (line.styleClasses) { + if (line.styleClasses.bgClass) + { builder.bgClass = joinClasses(line.styleClasses.bgClass, builder.bgClass || ""); } + if (line.styleClasses.textClass) + { builder.textClass = joinClasses(line.styleClasses.textClass, builder.textClass || ""); } + } + + // Ensure at least a single node is present, for measuring. + if (builder.map.length == 0) + { builder.map.push(0, 0, builder.content.appendChild(zeroWidthElement(cm.display.measure))); } + + // Store the map and a cache object for the current logical line + if (i == 0) { + lineView.measure.map = builder.map; + lineView.measure.cache = {}; + } else { + (lineView.measure.maps || (lineView.measure.maps = [])).push(builder.map) + ;(lineView.measure.caches || (lineView.measure.caches = [])).push({}); + } + } + + // See issue #2901 + if (webkit) { + var last = builder.content.lastChild; + if (/\bcm-tab\b/.test(last.className) || (last.querySelector && last.querySelector(".cm-tab"))) + { builder.content.className = "cm-tab-wrap-hack"; } + } + + signal(cm, "renderLine", cm, lineView.line, builder.pre); + if (builder.pre.className) + { builder.textClass = joinClasses(builder.pre.className, builder.textClass || ""); } + + return builder + } + + function defaultSpecialCharPlaceholder(ch) { + var token = elt("span", "\u2022", "cm-invalidchar"); + token.title = "\\u" + ch.charCodeAt(0).toString(16); + token.setAttribute("aria-label", token.title); + return token + } + + // Build up the DOM representation for a single token, and add it to + // the line map. Takes care to render special characters separately. + function buildToken(builder, text, style, startStyle, endStyle, css, attributes) { + if (!text) { return } + var displayText = builder.splitSpaces ? splitSpaces(text, builder.trailingSpace) : text; + var special = builder.cm.state.specialChars, mustWrap = false; + var content; + if (!special.test(text)) { + builder.col += text.length; + content = document.createTextNode(displayText); + builder.map.push(builder.pos, builder.pos + text.length, content); + if (ie && ie_version < 9) { mustWrap = true; } + builder.pos += text.length; + } else { + content = document.createDocumentFragment(); + var pos = 0; + while (true) { + special.lastIndex = pos; + var m = special.exec(text); + var skipped = m ? m.index - pos : text.length - pos; + if (skipped) { + var txt = document.createTextNode(displayText.slice(pos, pos + skipped)); + if (ie && ie_version < 9) { content.appendChild(elt("span", [txt])); } + else { content.appendChild(txt); } + builder.map.push(builder.pos, builder.pos + skipped, txt); + builder.col += skipped; + builder.pos += skipped; + } + if (!m) { break } + pos += skipped + 1; + var txt$1 = (void 0); + if (m[0] == "\t") { + var tabSize = builder.cm.options.tabSize, tabWidth = tabSize - builder.col % tabSize; + txt$1 = content.appendChild(elt("span", spaceStr(tabWidth), "cm-tab")); + txt$1.setAttribute("role", "presentation"); + txt$1.setAttribute("cm-text", "\t"); + builder.col += tabWidth; + } else if (m[0] == "\r" || m[0] == "\n") { + txt$1 = content.appendChild(elt("span", m[0] == "\r" ? "\u240d" : "\u2424", "cm-invalidchar")); + txt$1.setAttribute("cm-text", m[0]); + builder.col += 1; + } else { + txt$1 = builder.cm.options.specialCharPlaceholder(m[0]); + txt$1.setAttribute("cm-text", m[0]); + if (ie && ie_version < 9) { content.appendChild(elt("span", [txt$1])); } + else { content.appendChild(txt$1); } + builder.col += 1; + } + builder.map.push(builder.pos, builder.pos + 1, txt$1); + builder.pos++; + } + } + builder.trailingSpace = displayText.charCodeAt(text.length - 1) == 32; + if (style || startStyle || endStyle || mustWrap || css || attributes) { + var fullStyle = style || ""; + if (startStyle) { fullStyle += startStyle; } + if (endStyle) { fullStyle += endStyle; } + var token = elt("span", [content], fullStyle, css); + if (attributes) { + for (var attr in attributes) { if (attributes.hasOwnProperty(attr) && attr != "style" && attr != "class") + { token.setAttribute(attr, attributes[attr]); } } + } + return builder.content.appendChild(token) + } + builder.content.appendChild(content); + } + + // Change some spaces to NBSP to prevent the browser from collapsing + // trailing spaces at the end of a line when rendering text (issue #1362). + function splitSpaces(text, trailingBefore) { + if (text.length > 1 && !/ /.test(text)) { return text } + var spaceBefore = trailingBefore, result = ""; + for (var i = 0; i < text.length; i++) { + var ch = text.charAt(i); + if (ch == " " && spaceBefore && (i == text.length - 1 || text.charCodeAt(i + 1) == 32)) + { ch = "\u00a0"; } + result += ch; + spaceBefore = ch == " "; + } + return result + } + + // Work around nonsense dimensions being reported for stretches of + // right-to-left text. + function buildTokenBadBidi(inner, order) { + return function (builder, text, style, startStyle, endStyle, css, attributes) { + style = style ? style + " cm-force-border" : "cm-force-border"; + var start = builder.pos, end = start + text.length; + for (;;) { + // Find the part that overlaps with the start of this text + var part = (void 0); + for (var i = 0; i < order.length; i++) { + part = order[i]; + if (part.to > start && part.from <= start) { break } + } + if (part.to >= end) { return inner(builder, text, style, startStyle, endStyle, css, attributes) } + inner(builder, text.slice(0, part.to - start), style, startStyle, null, css, attributes); + startStyle = null; + text = text.slice(part.to - start); + start = part.to; + } + } + } + + function buildCollapsedSpan(builder, size, marker, ignoreWidget) { + var widget = !ignoreWidget && marker.widgetNode; + if (widget) { builder.map.push(builder.pos, builder.pos + size, widget); } + if (!ignoreWidget && builder.cm.display.input.needsContentAttribute) { + if (!widget) + { widget = builder.content.appendChild(document.createElement("span")); } + widget.setAttribute("cm-marker", marker.id); + } + if (widget) { + builder.cm.display.input.setUneditable(widget); + builder.content.appendChild(widget); + } + builder.pos += size; + builder.trailingSpace = false; + } + + // Outputs a number of spans to make up a line, taking highlighting + // and marked text into account. + function insertLineContent(line, builder, styles) { + var spans = line.markedSpans, allText = line.text, at = 0; + if (!spans) { + for (var i$1 = 1; i$1 < styles.length; i$1+=2) + { builder.addToken(builder, allText.slice(at, at = styles[i$1]), interpretTokenStyle(styles[i$1+1], builder.cm.options)); } + return + } + + var len = allText.length, pos = 0, i = 1, text = "", style, css; + var nextChange = 0, spanStyle, spanEndStyle, spanStartStyle, collapsed, attributes; + for (;;) { + if (nextChange == pos) { // Update current marker set + spanStyle = spanEndStyle = spanStartStyle = css = ""; + attributes = null; + collapsed = null; nextChange = Infinity; + var foundBookmarks = [], endStyles = (void 0); + for (var j = 0; j < spans.length; ++j) { + var sp = spans[j], m = sp.marker; + if (m.type == "bookmark" && sp.from == pos && m.widgetNode) { + foundBookmarks.push(m); + } else if (sp.from <= pos && (sp.to == null || sp.to > pos || m.collapsed && sp.to == pos && sp.from == pos)) { + if (sp.to != null && sp.to != pos && nextChange > sp.to) { + nextChange = sp.to; + spanEndStyle = ""; } + if (m.className) { spanStyle += " " + m.className; } + if (m.css) { css = (css ? css + ";" : "") + m.css; } + if (m.startStyle && sp.from == pos) { spanStartStyle += " " + m.startStyle; } + if (m.endStyle && sp.to == nextChange) { (endStyles || (endStyles = [])).push(m.endStyle, sp.to); } + // support for the old title property + // https://github.com/codemirror/CodeMirror/pull/5673 + if (m.title) { (attributes || (attributes = {})).title = m.title; } + if (m.attributes) { + for (var attr in m.attributes) + { (attributes || (attributes = {}))[attr] = m.attributes[attr]; } + } + if (m.collapsed && (!collapsed || compareCollapsedMarkers(collapsed.marker, m) < 0)) + { collapsed = sp; } + } else if (sp.from > pos && nextChange > sp.from) { + nextChange = sp.from; + } + } + if (endStyles) { for (var j$1 = 0; j$1 < endStyles.length; j$1 += 2) + { if (endStyles[j$1 + 1] == nextChange) { spanEndStyle += " " + endStyles[j$1]; } } } + + if (!collapsed || collapsed.from == pos) { for (var j$2 = 0; j$2 < foundBookmarks.length; ++j$2) + { buildCollapsedSpan(builder, 0, foundBookmarks[j$2]); } } + if (collapsed && (collapsed.from || 0) == pos) { + buildCollapsedSpan(builder, (collapsed.to == null ? len + 1 : collapsed.to) - pos, + collapsed.marker, collapsed.from == null); + if (collapsed.to == null) { return } + if (collapsed.to == pos) { collapsed = false; } + } + } + if (pos >= len) { break } + + var upto = Math.min(len, nextChange); + while (true) { + if (text) { + var end = pos + text.length; + if (!collapsed) { + var tokenText = end > upto ? text.slice(0, upto - pos) : text; + builder.addToken(builder, tokenText, style ? style + spanStyle : spanStyle, + spanStartStyle, pos + tokenText.length == nextChange ? spanEndStyle : "", css, attributes); + } + if (end >= upto) {text = text.slice(upto - pos); pos = upto; break} + pos = end; + spanStartStyle = ""; + } + text = allText.slice(at, at = styles[i++]); + style = interpretTokenStyle(styles[i++], builder.cm.options); + } + } + } + + + // These objects are used to represent the visible (currently drawn) + // part of the document. A LineView may correspond to multiple + // logical lines, if those are connected by collapsed ranges. + function LineView(doc, line, lineN) { + // The starting line + this.line = line; + // Continuing lines, if any + this.rest = visualLineContinued(line); + // Number of logical lines in this visual line + this.size = this.rest ? lineNo(lst(this.rest)) - lineN + 1 : 1; + this.node = this.text = null; + this.hidden = lineIsHidden(doc, line); + } + + // Create a range of LineView objects for the given lines. + function buildViewArray(cm, from, to) { + var array = [], nextPos; + for (var pos = from; pos < to; pos = nextPos) { + var view = new LineView(cm.doc, getLine(cm.doc, pos), pos); + nextPos = pos + view.size; + array.push(view); + } + return array + } + + var operationGroup = null; + + function pushOperation(op) { + if (operationGroup) { + operationGroup.ops.push(op); + } else { + op.ownsGroup = operationGroup = { + ops: [op], + delayedCallbacks: [] + }; + } + } + + function fireCallbacksForOps(group) { + // Calls delayed callbacks and cursorActivity handlers until no + // new ones appear + var callbacks = group.delayedCallbacks, i = 0; + do { + for (; i < callbacks.length; i++) + { callbacks[i].call(null); } + for (var j = 0; j < group.ops.length; j++) { + var op = group.ops[j]; + if (op.cursorActivityHandlers) + { while (op.cursorActivityCalled < op.cursorActivityHandlers.length) + { op.cursorActivityHandlers[op.cursorActivityCalled++].call(null, op.cm); } } + } + } while (i < callbacks.length) + } + + function finishOperation(op, endCb) { + var group = op.ownsGroup; + if (!group) { return } + + try { fireCallbacksForOps(group); } + finally { + operationGroup = null; + endCb(group); + } + } + + var orphanDelayedCallbacks = null; + + // Often, we want to signal events at a point where we are in the + // middle of some work, but don't want the handler to start calling + // other methods on the editor, which might be in an inconsistent + // state or simply not expect any other events to happen. + // signalLater looks whether there are any handlers, and schedules + // them to be executed when the last operation ends, or, if no + // operation is active, when a timeout fires. + function signalLater(emitter, type /*, values...*/) { + var arr = getHandlers(emitter, type); + if (!arr.length) { return } + var args = Array.prototype.slice.call(arguments, 2), list; + if (operationGroup) { + list = operationGroup.delayedCallbacks; + } else if (orphanDelayedCallbacks) { + list = orphanDelayedCallbacks; + } else { + list = orphanDelayedCallbacks = []; + setTimeout(fireOrphanDelayed, 0); + } + var loop = function ( i ) { + list.push(function () { return arr[i].apply(null, args); }); + }; + + for (var i = 0; i < arr.length; ++i) + loop( i ); + } + + function fireOrphanDelayed() { + var delayed = orphanDelayedCallbacks; + orphanDelayedCallbacks = null; + for (var i = 0; i < delayed.length; ++i) { delayed[i](); } + } + + // When an aspect of a line changes, a string is added to + // lineView.changes. This updates the relevant part of the line's + // DOM structure. + function updateLineForChanges(cm, lineView, lineN, dims) { + for (var j = 0; j < lineView.changes.length; j++) { + var type = lineView.changes[j]; + if (type == "text") { updateLineText(cm, lineView); } + else if (type == "gutter") { updateLineGutter(cm, lineView, lineN, dims); } + else if (type == "class") { updateLineClasses(cm, lineView); } + else if (type == "widget") { updateLineWidgets(cm, lineView, dims); } + } + lineView.changes = null; + } + + // Lines with gutter elements, widgets or a background class need to + // be wrapped, and have the extra elements added to the wrapper div + function ensureLineWrapped(lineView) { + if (lineView.node == lineView.text) { + lineView.node = elt("div", null, null, "position: relative"); + if (lineView.text.parentNode) + { lineView.text.parentNode.replaceChild(lineView.node, lineView.text); } + lineView.node.appendChild(lineView.text); + if (ie && ie_version < 8) { lineView.node.style.zIndex = 2; } + } + return lineView.node + } + + function updateLineBackground(cm, lineView) { + var cls = lineView.bgClass ? lineView.bgClass + " " + (lineView.line.bgClass || "") : lineView.line.bgClass; + if (cls) { cls += " CodeMirror-linebackground"; } + if (lineView.background) { + if (cls) { lineView.background.className = cls; } + else { lineView.background.parentNode.removeChild(lineView.background); lineView.background = null; } + } else if (cls) { + var wrap = ensureLineWrapped(lineView); + lineView.background = wrap.insertBefore(elt("div", null, cls), wrap.firstChild); + cm.display.input.setUneditable(lineView.background); + } + } + + // Wrapper around buildLineContent which will reuse the structure + // in display.externalMeasured when possible. + function getLineContent(cm, lineView) { + var ext = cm.display.externalMeasured; + if (ext && ext.line == lineView.line) { + cm.display.externalMeasured = null; + lineView.measure = ext.measure; + return ext.built + } + return buildLineContent(cm, lineView) + } + + // Redraw the line's text. Interacts with the background and text + // classes because the mode may output tokens that influence these + // classes. + function updateLineText(cm, lineView) { + var cls = lineView.text.className; + var built = getLineContent(cm, lineView); + if (lineView.text == lineView.node) { lineView.node = built.pre; } + lineView.text.parentNode.replaceChild(built.pre, lineView.text); + lineView.text = built.pre; + if (built.bgClass != lineView.bgClass || built.textClass != lineView.textClass) { + lineView.bgClass = built.bgClass; + lineView.textClass = built.textClass; + updateLineClasses(cm, lineView); + } else if (cls) { + lineView.text.className = cls; + } + } + + function updateLineClasses(cm, lineView) { + updateLineBackground(cm, lineView); + if (lineView.line.wrapClass) + { ensureLineWrapped(lineView).className = lineView.line.wrapClass; } + else if (lineView.node != lineView.text) + { lineView.node.className = ""; } + var textClass = lineView.textClass ? lineView.textClass + " " + (lineView.line.textClass || "") : lineView.line.textClass; + lineView.text.className = textClass || ""; + } + + function updateLineGutter(cm, lineView, lineN, dims) { + if (lineView.gutter) { + lineView.node.removeChild(lineView.gutter); + lineView.gutter = null; + } + if (lineView.gutterBackground) { + lineView.node.removeChild(lineView.gutterBackground); + lineView.gutterBackground = null; + } + if (lineView.line.gutterClass) { + var wrap = ensureLineWrapped(lineView); + lineView.gutterBackground = elt("div", null, "CodeMirror-gutter-background " + lineView.line.gutterClass, + ("left: " + (cm.options.fixedGutter ? dims.fixedPos : -dims.gutterTotalWidth) + "px; width: " + (dims.gutterTotalWidth) + "px")); + cm.display.input.setUneditable(lineView.gutterBackground); + wrap.insertBefore(lineView.gutterBackground, lineView.text); + } + var markers = lineView.line.gutterMarkers; + if (cm.options.lineNumbers || markers) { + var wrap$1 = ensureLineWrapped(lineView); + var gutterWrap = lineView.gutter = elt("div", null, "CodeMirror-gutter-wrapper", ("left: " + (cm.options.fixedGutter ? dims.fixedPos : -dims.gutterTotalWidth) + "px")); + gutterWrap.setAttribute("aria-hidden", "true"); + cm.display.input.setUneditable(gutterWrap); + wrap$1.insertBefore(gutterWrap, lineView.text); + if (lineView.line.gutterClass) + { gutterWrap.className += " " + lineView.line.gutterClass; } + if (cm.options.lineNumbers && (!markers || !markers["CodeMirror-linenumbers"])) + { lineView.lineNumber = gutterWrap.appendChild( + elt("div", lineNumberFor(cm.options, lineN), + "CodeMirror-linenumber CodeMirror-gutter-elt", + ("left: " + (dims.gutterLeft["CodeMirror-linenumbers"]) + "px; width: " + (cm.display.lineNumInnerWidth) + "px"))); } + if (markers) { for (var k = 0; k < cm.display.gutterSpecs.length; ++k) { + var id = cm.display.gutterSpecs[k].className, found = markers.hasOwnProperty(id) && markers[id]; + if (found) + { gutterWrap.appendChild(elt("div", [found], "CodeMirror-gutter-elt", + ("left: " + (dims.gutterLeft[id]) + "px; width: " + (dims.gutterWidth[id]) + "px"))); } + } } + } + } + + function updateLineWidgets(cm, lineView, dims) { + if (lineView.alignable) { lineView.alignable = null; } + var isWidget = classTest("CodeMirror-linewidget"); + for (var node = lineView.node.firstChild, next = (void 0); node; node = next) { + next = node.nextSibling; + if (isWidget.test(node.className)) { lineView.node.removeChild(node); } + } + insertLineWidgets(cm, lineView, dims); + } + + // Build a line's DOM representation from scratch + function buildLineElement(cm, lineView, lineN, dims) { + var built = getLineContent(cm, lineView); + lineView.text = lineView.node = built.pre; + if (built.bgClass) { lineView.bgClass = built.bgClass; } + if (built.textClass) { lineView.textClass = built.textClass; } + + updateLineClasses(cm, lineView); + updateLineGutter(cm, lineView, lineN, dims); + insertLineWidgets(cm, lineView, dims); + return lineView.node + } + + // A lineView may contain multiple logical lines (when merged by + // collapsed spans). The widgets for all of them need to be drawn. + function insertLineWidgets(cm, lineView, dims) { + insertLineWidgetsFor(cm, lineView.line, lineView, dims, true); + if (lineView.rest) { for (var i = 0; i < lineView.rest.length; i++) + { insertLineWidgetsFor(cm, lineView.rest[i], lineView, dims, false); } } + } + + function insertLineWidgetsFor(cm, line, lineView, dims, allowAbove) { + if (!line.widgets) { return } + var wrap = ensureLineWrapped(lineView); + for (var i = 0, ws = line.widgets; i < ws.length; ++i) { + var widget = ws[i], node = elt("div", [widget.node], "CodeMirror-linewidget" + (widget.className ? " " + widget.className : "")); + if (!widget.handleMouseEvents) { node.setAttribute("cm-ignore-events", "true"); } + positionLineWidget(widget, node, lineView, dims); + cm.display.input.setUneditable(node); + if (allowAbove && widget.above) + { wrap.insertBefore(node, lineView.gutter || lineView.text); } + else + { wrap.appendChild(node); } + signalLater(widget, "redraw"); + } + } + + function positionLineWidget(widget, node, lineView, dims) { + if (widget.noHScroll) { + (lineView.alignable || (lineView.alignable = [])).push(node); + var width = dims.wrapperWidth; + node.style.left = dims.fixedPos + "px"; + if (!widget.coverGutter) { + width -= dims.gutterTotalWidth; + node.style.paddingLeft = dims.gutterTotalWidth + "px"; + } + node.style.width = width + "px"; + } + if (widget.coverGutter) { + node.style.zIndex = 5; + node.style.position = "relative"; + if (!widget.noHScroll) { node.style.marginLeft = -dims.gutterTotalWidth + "px"; } + } + } + + function widgetHeight(widget) { + if (widget.height != null) { return widget.height } + var cm = widget.doc.cm; + if (!cm) { return 0 } + if (!contains(document.body, widget.node)) { + var parentStyle = "position: relative;"; + if (widget.coverGutter) + { parentStyle += "margin-left: -" + cm.display.gutters.offsetWidth + "px;"; } + if (widget.noHScroll) + { parentStyle += "width: " + cm.display.wrapper.clientWidth + "px;"; } + removeChildrenAndAdd(cm.display.measure, elt("div", [widget.node], null, parentStyle)); + } + return widget.height = widget.node.parentNode.offsetHeight + } + + // Return true when the given mouse event happened in a widget + function eventInWidget(display, e) { + for (var n = e_target(e); n != display.wrapper; n = n.parentNode) { + if (!n || (n.nodeType == 1 && n.getAttribute("cm-ignore-events") == "true") || + (n.parentNode == display.sizer && n != display.mover)) + { return true } + } + } + + // POSITION MEASUREMENT + + function paddingTop(display) {return display.lineSpace.offsetTop} + function paddingVert(display) {return display.mover.offsetHeight - display.lineSpace.offsetHeight} + function paddingH(display) { + if (display.cachedPaddingH) { return display.cachedPaddingH } + var e = removeChildrenAndAdd(display.measure, elt("pre", "x", "CodeMirror-line-like")); + var style = window.getComputedStyle ? window.getComputedStyle(e) : e.currentStyle; + var data = {left: parseInt(style.paddingLeft), right: parseInt(style.paddingRight)}; + if (!isNaN(data.left) && !isNaN(data.right)) { display.cachedPaddingH = data; } + return data + } + + function scrollGap(cm) { return scrollerGap - cm.display.nativeBarWidth } + function displayWidth(cm) { + return cm.display.scroller.clientWidth - scrollGap(cm) - cm.display.barWidth + } + function displayHeight(cm) { + return cm.display.scroller.clientHeight - scrollGap(cm) - cm.display.barHeight + } + + // Ensure the lineView.wrapping.heights array is populated. This is + // an array of bottom offsets for the lines that make up a drawn + // line. When lineWrapping is on, there might be more than one + // height. + function ensureLineHeights(cm, lineView, rect) { + var wrapping = cm.options.lineWrapping; + var curWidth = wrapping && displayWidth(cm); + if (!lineView.measure.heights || wrapping && lineView.measure.width != curWidth) { + var heights = lineView.measure.heights = []; + if (wrapping) { + lineView.measure.width = curWidth; + var rects = lineView.text.firstChild.getClientRects(); + for (var i = 0; i < rects.length - 1; i++) { + var cur = rects[i], next = rects[i + 1]; + if (Math.abs(cur.bottom - next.bottom) > 2) + { heights.push((cur.bottom + next.top) / 2 - rect.top); } + } + } + heights.push(rect.bottom - rect.top); + } + } + + // Find a line map (mapping character offsets to text nodes) and a + // measurement cache for the given line number. (A line view might + // contain multiple lines when collapsed ranges are present.) + function mapFromLineView(lineView, line, lineN) { + if (lineView.line == line) + { return {map: lineView.measure.map, cache: lineView.measure.cache} } + if (lineView.rest) { + for (var i = 0; i < lineView.rest.length; i++) + { if (lineView.rest[i] == line) + { return {map: lineView.measure.maps[i], cache: lineView.measure.caches[i]} } } + for (var i$1 = 0; i$1 < lineView.rest.length; i$1++) + { if (lineNo(lineView.rest[i$1]) > lineN) + { return {map: lineView.measure.maps[i$1], cache: lineView.measure.caches[i$1], before: true} } } + } + } + + // Render a line into the hidden node display.externalMeasured. Used + // when measurement is needed for a line that's not in the viewport. + function updateExternalMeasurement(cm, line) { + line = visualLine(line); + var lineN = lineNo(line); + var view = cm.display.externalMeasured = new LineView(cm.doc, line, lineN); + view.lineN = lineN; + var built = view.built = buildLineContent(cm, view); + view.text = built.pre; + removeChildrenAndAdd(cm.display.lineMeasure, built.pre); + return view + } + + // Get a {top, bottom, left, right} box (in line-local coordinates) + // for a given character. + function measureChar(cm, line, ch, bias) { + return measureCharPrepared(cm, prepareMeasureForLine(cm, line), ch, bias) + } + + // Find a line view that corresponds to the given line number. + function findViewForLine(cm, lineN) { + if (lineN >= cm.display.viewFrom && lineN < cm.display.viewTo) + { return cm.display.view[findViewIndex(cm, lineN)] } + var ext = cm.display.externalMeasured; + if (ext && lineN >= ext.lineN && lineN < ext.lineN + ext.size) + { return ext } + } + + // Measurement can be split in two steps, the set-up work that + // applies to the whole line, and the measurement of the actual + // character. Functions like coordsChar, that need to do a lot of + // measurements in a row, can thus ensure that the set-up work is + // only done once. + function prepareMeasureForLine(cm, line) { + var lineN = lineNo(line); + var view = findViewForLine(cm, lineN); + if (view && !view.text) { + view = null; + } else if (view && view.changes) { + updateLineForChanges(cm, view, lineN, getDimensions(cm)); + cm.curOp.forceUpdate = true; + } + if (!view) + { view = updateExternalMeasurement(cm, line); } + + var info = mapFromLineView(view, line, lineN); + return { + line: line, view: view, rect: null, + map: info.map, cache: info.cache, before: info.before, + hasHeights: false + } + } + + // Given a prepared measurement object, measures the position of an + // actual character (or fetches it from the cache). + function measureCharPrepared(cm, prepared, ch, bias, varHeight) { + if (prepared.before) { ch = -1; } + var key = ch + (bias || ""), found; + if (prepared.cache.hasOwnProperty(key)) { + found = prepared.cache[key]; + } else { + if (!prepared.rect) + { prepared.rect = prepared.view.text.getBoundingClientRect(); } + if (!prepared.hasHeights) { + ensureLineHeights(cm, prepared.view, prepared.rect); + prepared.hasHeights = true; + } + found = measureCharInner(cm, prepared, ch, bias); + if (!found.bogus) { prepared.cache[key] = found; } + } + return {left: found.left, right: found.right, + top: varHeight ? found.rtop : found.top, + bottom: varHeight ? found.rbottom : found.bottom} + } + + var nullRect = {left: 0, right: 0, top: 0, bottom: 0}; + + function nodeAndOffsetInLineMap(map, ch, bias) { + var node, start, end, collapse, mStart, mEnd; + // First, search the line map for the text node corresponding to, + // or closest to, the target character. + for (var i = 0; i < map.length; i += 3) { + mStart = map[i]; + mEnd = map[i + 1]; + if (ch < mStart) { + start = 0; end = 1; + collapse = "left"; + } else if (ch < mEnd) { + start = ch - mStart; + end = start + 1; + } else if (i == map.length - 3 || ch == mEnd && map[i + 3] > ch) { + end = mEnd - mStart; + start = end - 1; + if (ch >= mEnd) { collapse = "right"; } + } + if (start != null) { + node = map[i + 2]; + if (mStart == mEnd && bias == (node.insertLeft ? "left" : "right")) + { collapse = bias; } + if (bias == "left" && start == 0) + { while (i && map[i - 2] == map[i - 3] && map[i - 1].insertLeft) { + node = map[(i -= 3) + 2]; + collapse = "left"; + } } + if (bias == "right" && start == mEnd - mStart) + { while (i < map.length - 3 && map[i + 3] == map[i + 4] && !map[i + 5].insertLeft) { + node = map[(i += 3) + 2]; + collapse = "right"; + } } + break + } + } + return {node: node, start: start, end: end, collapse: collapse, coverStart: mStart, coverEnd: mEnd} + } + + function getUsefulRect(rects, bias) { + var rect = nullRect; + if (bias == "left") { for (var i = 0; i < rects.length; i++) { + if ((rect = rects[i]).left != rect.right) { break } + } } else { for (var i$1 = rects.length - 1; i$1 >= 0; i$1--) { + if ((rect = rects[i$1]).left != rect.right) { break } + } } + return rect + } + + function measureCharInner(cm, prepared, ch, bias) { + var place = nodeAndOffsetInLineMap(prepared.map, ch, bias); + var node = place.node, start = place.start, end = place.end, collapse = place.collapse; + + var rect; + if (node.nodeType == 3) { // If it is a text node, use a range to retrieve the coordinates. + for (var i$1 = 0; i$1 < 4; i$1++) { // Retry a maximum of 4 times when nonsense rectangles are returned + while (start && isExtendingChar(prepared.line.text.charAt(place.coverStart + start))) { --start; } + while (place.coverStart + end < place.coverEnd && isExtendingChar(prepared.line.text.charAt(place.coverStart + end))) { ++end; } + if (ie && ie_version < 9 && start == 0 && end == place.coverEnd - place.coverStart) + { rect = node.parentNode.getBoundingClientRect(); } + else + { rect = getUsefulRect(range(node, start, end).getClientRects(), bias); } + if (rect.left || rect.right || start == 0) { break } + end = start; + start = start - 1; + collapse = "right"; + } + if (ie && ie_version < 11) { rect = maybeUpdateRectForZooming(cm.display.measure, rect); } + } else { // If it is a widget, simply get the box for the whole widget. + if (start > 0) { collapse = bias = "right"; } + var rects; + if (cm.options.lineWrapping && (rects = node.getClientRects()).length > 1) + { rect = rects[bias == "right" ? rects.length - 1 : 0]; } + else + { rect = node.getBoundingClientRect(); } + } + if (ie && ie_version < 9 && !start && (!rect || !rect.left && !rect.right)) { + var rSpan = node.parentNode.getClientRects()[0]; + if (rSpan) + { rect = {left: rSpan.left, right: rSpan.left + charWidth(cm.display), top: rSpan.top, bottom: rSpan.bottom}; } + else + { rect = nullRect; } + } + + var rtop = rect.top - prepared.rect.top, rbot = rect.bottom - prepared.rect.top; + var mid = (rtop + rbot) / 2; + var heights = prepared.view.measure.heights; + var i = 0; + for (; i < heights.length - 1; i++) + { if (mid < heights[i]) { break } } + var top = i ? heights[i - 1] : 0, bot = heights[i]; + var result = {left: (collapse == "right" ? rect.right : rect.left) - prepared.rect.left, + right: (collapse == "left" ? rect.left : rect.right) - prepared.rect.left, + top: top, bottom: bot}; + if (!rect.left && !rect.right) { result.bogus = true; } + if (!cm.options.singleCursorHeightPerLine) { result.rtop = rtop; result.rbottom = rbot; } + + return result + } + + // Work around problem with bounding client rects on ranges being + // returned incorrectly when zoomed on IE10 and below. + function maybeUpdateRectForZooming(measure, rect) { + if (!window.screen || screen.logicalXDPI == null || + screen.logicalXDPI == screen.deviceXDPI || !hasBadZoomedRects(measure)) + { return rect } + var scaleX = screen.logicalXDPI / screen.deviceXDPI; + var scaleY = screen.logicalYDPI / screen.deviceYDPI; + return {left: rect.left * scaleX, right: rect.right * scaleX, + top: rect.top * scaleY, bottom: rect.bottom * scaleY} + } + + function clearLineMeasurementCacheFor(lineView) { + if (lineView.measure) { + lineView.measure.cache = {}; + lineView.measure.heights = null; + if (lineView.rest) { for (var i = 0; i < lineView.rest.length; i++) + { lineView.measure.caches[i] = {}; } } + } + } + + function clearLineMeasurementCache(cm) { + cm.display.externalMeasure = null; + removeChildren(cm.display.lineMeasure); + for (var i = 0; i < cm.display.view.length; i++) + { clearLineMeasurementCacheFor(cm.display.view[i]); } + } + + function clearCaches(cm) { + clearLineMeasurementCache(cm); + cm.display.cachedCharWidth = cm.display.cachedTextHeight = cm.display.cachedPaddingH = null; + if (!cm.options.lineWrapping) { cm.display.maxLineChanged = true; } + cm.display.lineNumChars = null; + } + + function pageScrollX(doc) { + // Work around https://bugs.chromium.org/p/chromium/issues/detail?id=489206 + // which causes page_Offset and bounding client rects to use + // different reference viewports and invalidate our calculations. + if (chrome && android) { return -(doc.body.getBoundingClientRect().left - parseInt(getComputedStyle(doc.body).marginLeft)) } + return doc.defaultView.pageXOffset || (doc.documentElement || doc.body).scrollLeft + } + function pageScrollY(doc) { + if (chrome && android) { return -(doc.body.getBoundingClientRect().top - parseInt(getComputedStyle(doc.body).marginTop)) } + return doc.defaultView.pageYOffset || (doc.documentElement || doc.body).scrollTop + } + + function widgetTopHeight(lineObj) { + var ref = visualLine(lineObj); + var widgets = ref.widgets; + var height = 0; + if (widgets) { for (var i = 0; i < widgets.length; ++i) { if (widgets[i].above) + { height += widgetHeight(widgets[i]); } } } + return height + } + + // Converts a {top, bottom, left, right} box from line-local + // coordinates into another coordinate system. Context may be one of + // "line", "div" (display.lineDiv), "local"./null (editor), "window", + // or "page". + function intoCoordSystem(cm, lineObj, rect, context, includeWidgets) { + if (!includeWidgets) { + var height = widgetTopHeight(lineObj); + rect.top += height; rect.bottom += height; + } + if (context == "line") { return rect } + if (!context) { context = "local"; } + var yOff = heightAtLine(lineObj); + if (context == "local") { yOff += paddingTop(cm.display); } + else { yOff -= cm.display.viewOffset; } + if (context == "page" || context == "window") { + var lOff = cm.display.lineSpace.getBoundingClientRect(); + yOff += lOff.top + (context == "window" ? 0 : pageScrollY(doc(cm))); + var xOff = lOff.left + (context == "window" ? 0 : pageScrollX(doc(cm))); + rect.left += xOff; rect.right += xOff; + } + rect.top += yOff; rect.bottom += yOff; + return rect + } + + // Coverts a box from "div" coords to another coordinate system. + // Context may be "window", "page", "div", or "local"./null. + function fromCoordSystem(cm, coords, context) { + if (context == "div") { return coords } + var left = coords.left, top = coords.top; + // First move into "page" coordinate system + if (context == "page") { + left -= pageScrollX(doc(cm)); + top -= pageScrollY(doc(cm)); + } else if (context == "local" || !context) { + var localBox = cm.display.sizer.getBoundingClientRect(); + left += localBox.left; + top += localBox.top; + } + + var lineSpaceBox = cm.display.lineSpace.getBoundingClientRect(); + return {left: left - lineSpaceBox.left, top: top - lineSpaceBox.top} + } + + function charCoords(cm, pos, context, lineObj, bias) { + if (!lineObj) { lineObj = getLine(cm.doc, pos.line); } + return intoCoordSystem(cm, lineObj, measureChar(cm, lineObj, pos.ch, bias), context) + } + + // Returns a box for a given cursor position, which may have an + // 'other' property containing the position of the secondary cursor + // on a bidi boundary. + // A cursor Pos(line, char, "before") is on the same visual line as `char - 1` + // and after `char - 1` in writing order of `char - 1` + // A cursor Pos(line, char, "after") is on the same visual line as `char` + // and before `char` in writing order of `char` + // Examples (upper-case letters are RTL, lower-case are LTR): + // Pos(0, 1, ...) + // before after + // ab a|b a|b + // aB a|B aB| + // Ab |Ab A|b + // AB B|A B|A + // Every position after the last character on a line is considered to stick + // to the last character on the line. + function cursorCoords(cm, pos, context, lineObj, preparedMeasure, varHeight) { + lineObj = lineObj || getLine(cm.doc, pos.line); + if (!preparedMeasure) { preparedMeasure = prepareMeasureForLine(cm, lineObj); } + function get(ch, right) { + var m = measureCharPrepared(cm, preparedMeasure, ch, right ? "right" : "left", varHeight); + if (right) { m.left = m.right; } else { m.right = m.left; } + return intoCoordSystem(cm, lineObj, m, context) + } + var order = getOrder(lineObj, cm.doc.direction), ch = pos.ch, sticky = pos.sticky; + if (ch >= lineObj.text.length) { + ch = lineObj.text.length; + sticky = "before"; + } else if (ch <= 0) { + ch = 0; + sticky = "after"; + } + if (!order) { return get(sticky == "before" ? ch - 1 : ch, sticky == "before") } + + function getBidi(ch, partPos, invert) { + var part = order[partPos], right = part.level == 1; + return get(invert ? ch - 1 : ch, right != invert) + } + var partPos = getBidiPartAt(order, ch, sticky); + var other = bidiOther; + var val = getBidi(ch, partPos, sticky == "before"); + if (other != null) { val.other = getBidi(ch, other, sticky != "before"); } + return val + } + + // Used to cheaply estimate the coordinates for a position. Used for + // intermediate scroll updates. + function estimateCoords(cm, pos) { + var left = 0; + pos = clipPos(cm.doc, pos); + if (!cm.options.lineWrapping) { left = charWidth(cm.display) * pos.ch; } + var lineObj = getLine(cm.doc, pos.line); + var top = heightAtLine(lineObj) + paddingTop(cm.display); + return {left: left, right: left, top: top, bottom: top + lineObj.height} + } + + // Positions returned by coordsChar contain some extra information. + // xRel is the relative x position of the input coordinates compared + // to the found position (so xRel > 0 means the coordinates are to + // the right of the character position, for example). When outside + // is true, that means the coordinates lie outside the line's + // vertical range. + function PosWithInfo(line, ch, sticky, outside, xRel) { + var pos = Pos(line, ch, sticky); + pos.xRel = xRel; + if (outside) { pos.outside = outside; } + return pos + } + + // Compute the character position closest to the given coordinates. + // Input must be lineSpace-local ("div" coordinate system). + function coordsChar(cm, x, y) { + var doc = cm.doc; + y += cm.display.viewOffset; + if (y < 0) { return PosWithInfo(doc.first, 0, null, -1, -1) } + var lineN = lineAtHeight(doc, y), last = doc.first + doc.size - 1; + if (lineN > last) + { return PosWithInfo(doc.first + doc.size - 1, getLine(doc, last).text.length, null, 1, 1) } + if (x < 0) { x = 0; } + + var lineObj = getLine(doc, lineN); + for (;;) { + var found = coordsCharInner(cm, lineObj, lineN, x, y); + var collapsed = collapsedSpanAround(lineObj, found.ch + (found.xRel > 0 || found.outside > 0 ? 1 : 0)); + if (!collapsed) { return found } + var rangeEnd = collapsed.find(1); + if (rangeEnd.line == lineN) { return rangeEnd } + lineObj = getLine(doc, lineN = rangeEnd.line); + } + } + + function wrappedLineExtent(cm, lineObj, preparedMeasure, y) { + y -= widgetTopHeight(lineObj); + var end = lineObj.text.length; + var begin = findFirst(function (ch) { return measureCharPrepared(cm, preparedMeasure, ch - 1).bottom <= y; }, end, 0); + end = findFirst(function (ch) { return measureCharPrepared(cm, preparedMeasure, ch).top > y; }, begin, end); + return {begin: begin, end: end} + } + + function wrappedLineExtentChar(cm, lineObj, preparedMeasure, target) { + if (!preparedMeasure) { preparedMeasure = prepareMeasureForLine(cm, lineObj); } + var targetTop = intoCoordSystem(cm, lineObj, measureCharPrepared(cm, preparedMeasure, target), "line").top; + return wrappedLineExtent(cm, lineObj, preparedMeasure, targetTop) + } + + // Returns true if the given side of a box is after the given + // coordinates, in top-to-bottom, left-to-right order. + function boxIsAfter(box, x, y, left) { + return box.bottom <= y ? false : box.top > y ? true : (left ? box.left : box.right) > x + } + + function coordsCharInner(cm, lineObj, lineNo, x, y) { + // Move y into line-local coordinate space + y -= heightAtLine(lineObj); + var preparedMeasure = prepareMeasureForLine(cm, lineObj); + // When directly calling `measureCharPrepared`, we have to adjust + // for the widgets at this line. + var widgetHeight = widgetTopHeight(lineObj); + var begin = 0, end = lineObj.text.length, ltr = true; + + var order = getOrder(lineObj, cm.doc.direction); + // If the line isn't plain left-to-right text, first figure out + // which bidi section the coordinates fall into. + if (order) { + var part = (cm.options.lineWrapping ? coordsBidiPartWrapped : coordsBidiPart) + (cm, lineObj, lineNo, preparedMeasure, order, x, y); + ltr = part.level != 1; + // The awkward -1 offsets are needed because findFirst (called + // on these below) will treat its first bound as inclusive, + // second as exclusive, but we want to actually address the + // characters in the part's range + begin = ltr ? part.from : part.to - 1; + end = ltr ? part.to : part.from - 1; + } + + // A binary search to find the first character whose bounding box + // starts after the coordinates. If we run across any whose box wrap + // the coordinates, store that. + var chAround = null, boxAround = null; + var ch = findFirst(function (ch) { + var box = measureCharPrepared(cm, preparedMeasure, ch); + box.top += widgetHeight; box.bottom += widgetHeight; + if (!boxIsAfter(box, x, y, false)) { return false } + if (box.top <= y && box.left <= x) { + chAround = ch; + boxAround = box; + } + return true + }, begin, end); + + var baseX, sticky, outside = false; + // If a box around the coordinates was found, use that + if (boxAround) { + // Distinguish coordinates nearer to the left or right side of the box + var atLeft = x - boxAround.left < boxAround.right - x, atStart = atLeft == ltr; + ch = chAround + (atStart ? 0 : 1); + sticky = atStart ? "after" : "before"; + baseX = atLeft ? boxAround.left : boxAround.right; + } else { + // (Adjust for extended bound, if necessary.) + if (!ltr && (ch == end || ch == begin)) { ch++; } + // To determine which side to associate with, get the box to the + // left of the character and compare it's vertical position to the + // coordinates + sticky = ch == 0 ? "after" : ch == lineObj.text.length ? "before" : + (measureCharPrepared(cm, preparedMeasure, ch - (ltr ? 1 : 0)).bottom + widgetHeight <= y) == ltr ? + "after" : "before"; + // Now get accurate coordinates for this place, in order to get a + // base X position + var coords = cursorCoords(cm, Pos(lineNo, ch, sticky), "line", lineObj, preparedMeasure); + baseX = coords.left; + outside = y < coords.top ? -1 : y >= coords.bottom ? 1 : 0; + } + + ch = skipExtendingChars(lineObj.text, ch, 1); + return PosWithInfo(lineNo, ch, sticky, outside, x - baseX) + } + + function coordsBidiPart(cm, lineObj, lineNo, preparedMeasure, order, x, y) { + // Bidi parts are sorted left-to-right, and in a non-line-wrapping + // situation, we can take this ordering to correspond to the visual + // ordering. This finds the first part whose end is after the given + // coordinates. + var index = findFirst(function (i) { + var part = order[i], ltr = part.level != 1; + return boxIsAfter(cursorCoords(cm, Pos(lineNo, ltr ? part.to : part.from, ltr ? "before" : "after"), + "line", lineObj, preparedMeasure), x, y, true) + }, 0, order.length - 1); + var part = order[index]; + // If this isn't the first part, the part's start is also after + // the coordinates, and the coordinates aren't on the same line as + // that start, move one part back. + if (index > 0) { + var ltr = part.level != 1; + var start = cursorCoords(cm, Pos(lineNo, ltr ? part.from : part.to, ltr ? "after" : "before"), + "line", lineObj, preparedMeasure); + if (boxIsAfter(start, x, y, true) && start.top > y) + { part = order[index - 1]; } + } + return part + } + + function coordsBidiPartWrapped(cm, lineObj, _lineNo, preparedMeasure, order, x, y) { + // In a wrapped line, rtl text on wrapping boundaries can do things + // that don't correspond to the ordering in our `order` array at + // all, so a binary search doesn't work, and we want to return a + // part that only spans one line so that the binary search in + // coordsCharInner is safe. As such, we first find the extent of the + // wrapped line, and then do a flat search in which we discard any + // spans that aren't on the line. + var ref = wrappedLineExtent(cm, lineObj, preparedMeasure, y); + var begin = ref.begin; + var end = ref.end; + if (/\s/.test(lineObj.text.charAt(end - 1))) { end--; } + var part = null, closestDist = null; + for (var i = 0; i < order.length; i++) { + var p = order[i]; + if (p.from >= end || p.to <= begin) { continue } + var ltr = p.level != 1; + var endX = measureCharPrepared(cm, preparedMeasure, ltr ? Math.min(end, p.to) - 1 : Math.max(begin, p.from)).right; + // Weigh against spans ending before this, so that they are only + // picked if nothing ends after + var dist = endX < x ? x - endX + 1e9 : endX - x; + if (!part || closestDist > dist) { + part = p; + closestDist = dist; + } + } + if (!part) { part = order[order.length - 1]; } + // Clip the part to the wrapped line. + if (part.from < begin) { part = {from: begin, to: part.to, level: part.level}; } + if (part.to > end) { part = {from: part.from, to: end, level: part.level}; } + return part + } + + var measureText; + // Compute the default text height. + function textHeight(display) { + if (display.cachedTextHeight != null) { return display.cachedTextHeight } + if (measureText == null) { + measureText = elt("pre", null, "CodeMirror-line-like"); + // Measure a bunch of lines, for browsers that compute + // fractional heights. + for (var i = 0; i < 49; ++i) { + measureText.appendChild(document.createTextNode("x")); + measureText.appendChild(elt("br")); + } + measureText.appendChild(document.createTextNode("x")); + } + removeChildrenAndAdd(display.measure, measureText); + var height = measureText.offsetHeight / 50; + if (height > 3) { display.cachedTextHeight = height; } + removeChildren(display.measure); + return height || 1 + } + + // Compute the default character width. + function charWidth(display) { + if (display.cachedCharWidth != null) { return display.cachedCharWidth } + var anchor = elt("span", "xxxxxxxxxx"); + var pre = elt("pre", [anchor], "CodeMirror-line-like"); + removeChildrenAndAdd(display.measure, pre); + var rect = anchor.getBoundingClientRect(), width = (rect.right - rect.left) / 10; + if (width > 2) { display.cachedCharWidth = width; } + return width || 10 + } + + // Do a bulk-read of the DOM positions and sizes needed to draw the + // view, so that we don't interleave reading and writing to the DOM. + function getDimensions(cm) { + var d = cm.display, left = {}, width = {}; + var gutterLeft = d.gutters.clientLeft; + for (var n = d.gutters.firstChild, i = 0; n; n = n.nextSibling, ++i) { + var id = cm.display.gutterSpecs[i].className; + left[id] = n.offsetLeft + n.clientLeft + gutterLeft; + width[id] = n.clientWidth; + } + return {fixedPos: compensateForHScroll(d), + gutterTotalWidth: d.gutters.offsetWidth, + gutterLeft: left, + gutterWidth: width, + wrapperWidth: d.wrapper.clientWidth} + } + + // Computes display.scroller.scrollLeft + display.gutters.offsetWidth, + // but using getBoundingClientRect to get a sub-pixel-accurate + // result. + function compensateForHScroll(display) { + return display.scroller.getBoundingClientRect().left - display.sizer.getBoundingClientRect().left + } + + // Returns a function that estimates the height of a line, to use as + // first approximation until the line becomes visible (and is thus + // properly measurable). + function estimateHeight(cm) { + var th = textHeight(cm.display), wrapping = cm.options.lineWrapping; + var perLine = wrapping && Math.max(5, cm.display.scroller.clientWidth / charWidth(cm.display) - 3); + return function (line) { + if (lineIsHidden(cm.doc, line)) { return 0 } + + var widgetsHeight = 0; + if (line.widgets) { for (var i = 0; i < line.widgets.length; i++) { + if (line.widgets[i].height) { widgetsHeight += line.widgets[i].height; } + } } + + if (wrapping) + { return widgetsHeight + (Math.ceil(line.text.length / perLine) || 1) * th } + else + { return widgetsHeight + th } + } + } + + function estimateLineHeights(cm) { + var doc = cm.doc, est = estimateHeight(cm); + doc.iter(function (line) { + var estHeight = est(line); + if (estHeight != line.height) { updateLineHeight(line, estHeight); } + }); + } + + // Given a mouse event, find the corresponding position. If liberal + // is false, it checks whether a gutter or scrollbar was clicked, + // and returns null if it was. forRect is used by rectangular + // selections, and tries to estimate a character position even for + // coordinates beyond the right of the text. + function posFromMouse(cm, e, liberal, forRect) { + var display = cm.display; + if (!liberal && e_target(e).getAttribute("cm-not-content") == "true") { return null } + + var x, y, space = display.lineSpace.getBoundingClientRect(); + // Fails unpredictably on IE[67] when mouse is dragged around quickly. + try { x = e.clientX - space.left; y = e.clientY - space.top; } + catch (e$1) { return null } + var coords = coordsChar(cm, x, y), line; + if (forRect && coords.xRel > 0 && (line = getLine(cm.doc, coords.line).text).length == coords.ch) { + var colDiff = countColumn(line, line.length, cm.options.tabSize) - line.length; + coords = Pos(coords.line, Math.max(0, Math.round((x - paddingH(cm.display).left) / charWidth(cm.display)) - colDiff)); + } + return coords + } + + // Find the view element corresponding to a given line. Return null + // when the line isn't visible. + function findViewIndex(cm, n) { + if (n >= cm.display.viewTo) { return null } + n -= cm.display.viewFrom; + if (n < 0) { return null } + var view = cm.display.view; + for (var i = 0; i < view.length; i++) { + n -= view[i].size; + if (n < 0) { return i } + } + } + + // Updates the display.view data structure for a given change to the + // document. From and to are in pre-change coordinates. Lendiff is + // the amount of lines added or subtracted by the change. This is + // used for changes that span multiple lines, or change the way + // lines are divided into visual lines. regLineChange (below) + // registers single-line changes. + function regChange(cm, from, to, lendiff) { + if (from == null) { from = cm.doc.first; } + if (to == null) { to = cm.doc.first + cm.doc.size; } + if (!lendiff) { lendiff = 0; } + + var display = cm.display; + if (lendiff && to < display.viewTo && + (display.updateLineNumbers == null || display.updateLineNumbers > from)) + { display.updateLineNumbers = from; } + + cm.curOp.viewChanged = true; + + if (from >= display.viewTo) { // Change after + if (sawCollapsedSpans && visualLineNo(cm.doc, from) < display.viewTo) + { resetView(cm); } + } else if (to <= display.viewFrom) { // Change before + if (sawCollapsedSpans && visualLineEndNo(cm.doc, to + lendiff) > display.viewFrom) { + resetView(cm); + } else { + display.viewFrom += lendiff; + display.viewTo += lendiff; + } + } else if (from <= display.viewFrom && to >= display.viewTo) { // Full overlap + resetView(cm); + } else if (from <= display.viewFrom) { // Top overlap + var cut = viewCuttingPoint(cm, to, to + lendiff, 1); + if (cut) { + display.view = display.view.slice(cut.index); + display.viewFrom = cut.lineN; + display.viewTo += lendiff; + } else { + resetView(cm); + } + } else if (to >= display.viewTo) { // Bottom overlap + var cut$1 = viewCuttingPoint(cm, from, from, -1); + if (cut$1) { + display.view = display.view.slice(0, cut$1.index); + display.viewTo = cut$1.lineN; + } else { + resetView(cm); + } + } else { // Gap in the middle + var cutTop = viewCuttingPoint(cm, from, from, -1); + var cutBot = viewCuttingPoint(cm, to, to + lendiff, 1); + if (cutTop && cutBot) { + display.view = display.view.slice(0, cutTop.index) + .concat(buildViewArray(cm, cutTop.lineN, cutBot.lineN)) + .concat(display.view.slice(cutBot.index)); + display.viewTo += lendiff; + } else { + resetView(cm); + } + } + + var ext = display.externalMeasured; + if (ext) { + if (to < ext.lineN) + { ext.lineN += lendiff; } + else if (from < ext.lineN + ext.size) + { display.externalMeasured = null; } + } + } + + // Register a change to a single line. Type must be one of "text", + // "gutter", "class", "widget" + function regLineChange(cm, line, type) { + cm.curOp.viewChanged = true; + var display = cm.display, ext = cm.display.externalMeasured; + if (ext && line >= ext.lineN && line < ext.lineN + ext.size) + { display.externalMeasured = null; } + + if (line < display.viewFrom || line >= display.viewTo) { return } + var lineView = display.view[findViewIndex(cm, line)]; + if (lineView.node == null) { return } + var arr = lineView.changes || (lineView.changes = []); + if (indexOf(arr, type) == -1) { arr.push(type); } + } + + // Clear the view. + function resetView(cm) { + cm.display.viewFrom = cm.display.viewTo = cm.doc.first; + cm.display.view = []; + cm.display.viewOffset = 0; + } + + function viewCuttingPoint(cm, oldN, newN, dir) { + var index = findViewIndex(cm, oldN), diff, view = cm.display.view; + if (!sawCollapsedSpans || newN == cm.doc.first + cm.doc.size) + { return {index: index, lineN: newN} } + var n = cm.display.viewFrom; + for (var i = 0; i < index; i++) + { n += view[i].size; } + if (n != oldN) { + if (dir > 0) { + if (index == view.length - 1) { return null } + diff = (n + view[index].size) - oldN; + index++; + } else { + diff = n - oldN; + } + oldN += diff; newN += diff; + } + while (visualLineNo(cm.doc, newN) != newN) { + if (index == (dir < 0 ? 0 : view.length - 1)) { return null } + newN += dir * view[index - (dir < 0 ? 1 : 0)].size; + index += dir; + } + return {index: index, lineN: newN} + } + + // Force the view to cover a given range, adding empty view element + // or clipping off existing ones as needed. + function adjustView(cm, from, to) { + var display = cm.display, view = display.view; + if (view.length == 0 || from >= display.viewTo || to <= display.viewFrom) { + display.view = buildViewArray(cm, from, to); + display.viewFrom = from; + } else { + if (display.viewFrom > from) + { display.view = buildViewArray(cm, from, display.viewFrom).concat(display.view); } + else if (display.viewFrom < from) + { display.view = display.view.slice(findViewIndex(cm, from)); } + display.viewFrom = from; + if (display.viewTo < to) + { display.view = display.view.concat(buildViewArray(cm, display.viewTo, to)); } + else if (display.viewTo > to) + { display.view = display.view.slice(0, findViewIndex(cm, to)); } + } + display.viewTo = to; + } + + // Count the number of lines in the view whose DOM representation is + // out of date (or nonexistent). + function countDirtyView(cm) { + var view = cm.display.view, dirty = 0; + for (var i = 0; i < view.length; i++) { + var lineView = view[i]; + if (!lineView.hidden && (!lineView.node || lineView.changes)) { ++dirty; } + } + return dirty + } + + function updateSelection(cm) { + cm.display.input.showSelection(cm.display.input.prepareSelection()); + } + + function prepareSelection(cm, primary) { + if ( primary === void 0 ) primary = true; + + var doc = cm.doc, result = {}; + var curFragment = result.cursors = document.createDocumentFragment(); + var selFragment = result.selection = document.createDocumentFragment(); + + var customCursor = cm.options.$customCursor; + if (customCursor) { primary = true; } + for (var i = 0; i < doc.sel.ranges.length; i++) { + if (!primary && i == doc.sel.primIndex) { continue } + var range = doc.sel.ranges[i]; + if (range.from().line >= cm.display.viewTo || range.to().line < cm.display.viewFrom) { continue } + var collapsed = range.empty(); + if (customCursor) { + var head = customCursor(cm, range); + if (head) { drawSelectionCursor(cm, head, curFragment); } + } else if (collapsed || cm.options.showCursorWhenSelecting) { + drawSelectionCursor(cm, range.head, curFragment); + } + if (!collapsed) + { drawSelectionRange(cm, range, selFragment); } + } + return result + } + + // Draws a cursor for the given range + function drawSelectionCursor(cm, head, output) { + var pos = cursorCoords(cm, head, "div", null, null, !cm.options.singleCursorHeightPerLine); + + var cursor = output.appendChild(elt("div", "\u00a0", "CodeMirror-cursor")); + cursor.style.left = pos.left + "px"; + cursor.style.top = pos.top + "px"; + cursor.style.height = Math.max(0, pos.bottom - pos.top) * cm.options.cursorHeight + "px"; + + if (/\bcm-fat-cursor\b/.test(cm.getWrapperElement().className)) { + var charPos = charCoords(cm, head, "div", null, null); + var width = charPos.right - charPos.left; + cursor.style.width = (width > 0 ? width : cm.defaultCharWidth()) + "px"; + } + + if (pos.other) { + // Secondary cursor, shown when on a 'jump' in bi-directional text + var otherCursor = output.appendChild(elt("div", "\u00a0", "CodeMirror-cursor CodeMirror-secondarycursor")); + otherCursor.style.display = ""; + otherCursor.style.left = pos.other.left + "px"; + otherCursor.style.top = pos.other.top + "px"; + otherCursor.style.height = (pos.other.bottom - pos.other.top) * .85 + "px"; + } + } + + function cmpCoords(a, b) { return a.top - b.top || a.left - b.left } + + // Draws the given range as a highlighted selection + function drawSelectionRange(cm, range, output) { + var display = cm.display, doc = cm.doc; + var fragment = document.createDocumentFragment(); + var padding = paddingH(cm.display), leftSide = padding.left; + var rightSide = Math.max(display.sizerWidth, displayWidth(cm) - display.sizer.offsetLeft) - padding.right; + var docLTR = doc.direction == "ltr"; + + function add(left, top, width, bottom) { + if (top < 0) { top = 0; } + top = Math.round(top); + bottom = Math.round(bottom); + fragment.appendChild(elt("div", null, "CodeMirror-selected", ("position: absolute; left: " + left + "px;\n top: " + top + "px; width: " + (width == null ? rightSide - left : width) + "px;\n height: " + (bottom - top) + "px"))); + } + + function drawForLine(line, fromArg, toArg) { + var lineObj = getLine(doc, line); + var lineLen = lineObj.text.length; + var start, end; + function coords(ch, bias) { + return charCoords(cm, Pos(line, ch), "div", lineObj, bias) + } + + function wrapX(pos, dir, side) { + var extent = wrappedLineExtentChar(cm, lineObj, null, pos); + var prop = (dir == "ltr") == (side == "after") ? "left" : "right"; + var ch = side == "after" ? extent.begin : extent.end - (/\s/.test(lineObj.text.charAt(extent.end - 1)) ? 2 : 1); + return coords(ch, prop)[prop] + } + + var order = getOrder(lineObj, doc.direction); + iterateBidiSections(order, fromArg || 0, toArg == null ? lineLen : toArg, function (from, to, dir, i) { + var ltr = dir == "ltr"; + var fromPos = coords(from, ltr ? "left" : "right"); + var toPos = coords(to - 1, ltr ? "right" : "left"); + + var openStart = fromArg == null && from == 0, openEnd = toArg == null && to == lineLen; + var first = i == 0, last = !order || i == order.length - 1; + if (toPos.top - fromPos.top <= 3) { // Single line + var openLeft = (docLTR ? openStart : openEnd) && first; + var openRight = (docLTR ? openEnd : openStart) && last; + var left = openLeft ? leftSide : (ltr ? fromPos : toPos).left; + var right = openRight ? rightSide : (ltr ? toPos : fromPos).right; + add(left, fromPos.top, right - left, fromPos.bottom); + } else { // Multiple lines + var topLeft, topRight, botLeft, botRight; + if (ltr) { + topLeft = docLTR && openStart && first ? leftSide : fromPos.left; + topRight = docLTR ? rightSide : wrapX(from, dir, "before"); + botLeft = docLTR ? leftSide : wrapX(to, dir, "after"); + botRight = docLTR && openEnd && last ? rightSide : toPos.right; + } else { + topLeft = !docLTR ? leftSide : wrapX(from, dir, "before"); + topRight = !docLTR && openStart && first ? rightSide : fromPos.right; + botLeft = !docLTR && openEnd && last ? leftSide : toPos.left; + botRight = !docLTR ? rightSide : wrapX(to, dir, "after"); + } + add(topLeft, fromPos.top, topRight - topLeft, fromPos.bottom); + if (fromPos.bottom < toPos.top) { add(leftSide, fromPos.bottom, null, toPos.top); } + add(botLeft, toPos.top, botRight - botLeft, toPos.bottom); } - textarea.style.display = "none"; - var instance = CodeMirror(function(node) { - textarea.parentNode.insertBefore(node, textarea.nextSibling); - }, options); - instance.save = save; - instance.getTextArea = function() { return textarea; }; - instance.toTextArea = function() { + if (!start || cmpCoords(fromPos, start) < 0) { start = fromPos; } + if (cmpCoords(toPos, start) < 0) { start = toPos; } + if (!end || cmpCoords(fromPos, end) < 0) { end = fromPos; } + if (cmpCoords(toPos, end) < 0) { end = toPos; } + }); + return {start: start, end: end} + } + + var sFrom = range.from(), sTo = range.to(); + if (sFrom.line == sTo.line) { + drawForLine(sFrom.line, sFrom.ch, sTo.ch); + } else { + var fromLine = getLine(doc, sFrom.line), toLine = getLine(doc, sTo.line); + var singleVLine = visualLine(fromLine) == visualLine(toLine); + var leftEnd = drawForLine(sFrom.line, sFrom.ch, singleVLine ? fromLine.text.length + 1 : null).end; + var rightStart = drawForLine(sTo.line, singleVLine ? 0 : null, sTo.ch).start; + if (singleVLine) { + if (leftEnd.top < rightStart.top - 2) { + add(leftEnd.right, leftEnd.top, null, leftEnd.bottom); + add(leftSide, rightStart.top, rightStart.left, rightStart.bottom); + } else { + add(leftEnd.right, leftEnd.top, rightStart.left - leftEnd.right, leftEnd.bottom); + } + } + if (leftEnd.bottom < rightStart.top) + { add(leftSide, leftEnd.bottom, null, rightStart.top); } + } + + output.appendChild(fragment); + } + + // Cursor-blinking + function restartBlink(cm) { + if (!cm.state.focused) { return } + var display = cm.display; + clearInterval(display.blinker); + var on = true; + display.cursorDiv.style.visibility = ""; + if (cm.options.cursorBlinkRate > 0) + { display.blinker = setInterval(function () { + if (!cm.hasFocus()) { onBlur(cm); } + display.cursorDiv.style.visibility = (on = !on) ? "" : "hidden"; + }, cm.options.cursorBlinkRate); } + else if (cm.options.cursorBlinkRate < 0) + { display.cursorDiv.style.visibility = "hidden"; } + } + + function ensureFocus(cm) { + if (!cm.hasFocus()) { + cm.display.input.focus(); + if (!cm.state.focused) { onFocus(cm); } + } + } + + function delayBlurEvent(cm) { + cm.state.delayingBlurEvent = true; + setTimeout(function () { if (cm.state.delayingBlurEvent) { + cm.state.delayingBlurEvent = false; + if (cm.state.focused) { onBlur(cm); } + } }, 100); + } + + function onFocus(cm, e) { + if (cm.state.delayingBlurEvent && !cm.state.draggingText) { cm.state.delayingBlurEvent = false; } + + if (cm.options.readOnly == "nocursor") { return } + if (!cm.state.focused) { + signal(cm, "focus", cm, e); + cm.state.focused = true; + addClass(cm.display.wrapper, "CodeMirror-focused"); + // This test prevents this from firing when a context + // menu is closed (since the input reset would kill the + // select-all detection hack) + if (!cm.curOp && cm.display.selForContextMenu != cm.doc.sel) { + cm.display.input.reset(); + if (webkit) { setTimeout(function () { return cm.display.input.reset(true); }, 20); } // Issue #1730 + } + cm.display.input.receivedFocus(); + } + restartBlink(cm); + } + function onBlur(cm, e) { + if (cm.state.delayingBlurEvent) { return } + + if (cm.state.focused) { + signal(cm, "blur", cm, e); + cm.state.focused = false; + rmClass(cm.display.wrapper, "CodeMirror-focused"); + } + clearInterval(cm.display.blinker); + setTimeout(function () { if (!cm.state.focused) { cm.display.shift = false; } }, 150); + } + + // Read the actual heights of the rendered lines, and update their + // stored heights to match. + function updateHeightsInViewport(cm) { + var display = cm.display; + var prevBottom = display.lineDiv.offsetTop; + var viewTop = Math.max(0, display.scroller.getBoundingClientRect().top); + var oldHeight = display.lineDiv.getBoundingClientRect().top; + var mustScroll = 0; + for (var i = 0; i < display.view.length; i++) { + var cur = display.view[i], wrapping = cm.options.lineWrapping; + var height = (void 0), width = 0; + if (cur.hidden) { continue } + oldHeight += cur.line.height; + if (ie && ie_version < 8) { + var bot = cur.node.offsetTop + cur.node.offsetHeight; + height = bot - prevBottom; + prevBottom = bot; + } else { + var box = cur.node.getBoundingClientRect(); + height = box.bottom - box.top; + // Check that lines don't extend past the right of the current + // editor width + if (!wrapping && cur.text.firstChild) + { width = cur.text.firstChild.getBoundingClientRect().right - box.left - 1; } + } + var diff = cur.line.height - height; + if (diff > .005 || diff < -.005) { + if (oldHeight < viewTop) { mustScroll -= diff; } + updateLineHeight(cur.line, height); + updateWidgetHeight(cur.line); + if (cur.rest) { for (var j = 0; j < cur.rest.length; j++) + { updateWidgetHeight(cur.rest[j]); } } + } + if (width > cm.display.sizerWidth) { + var chWidth = Math.ceil(width / charWidth(cm.display)); + if (chWidth > cm.display.maxLineLength) { + cm.display.maxLineLength = chWidth; + cm.display.maxLine = cur.line; + cm.display.maxLineChanged = true; + } + } + } + if (Math.abs(mustScroll) > 2) { display.scroller.scrollTop += mustScroll; } + } + + // Read and store the height of line widgets associated with the + // given line. + function updateWidgetHeight(line) { + if (line.widgets) { for (var i = 0; i < line.widgets.length; ++i) { + var w = line.widgets[i], parent = w.node.parentNode; + if (parent) { w.height = parent.offsetHeight; } + } } + } + + // Compute the lines that are visible in a given viewport (defaults + // the current scroll position). viewport may contain top, + // height, and ensure (see op.scrollToPos) properties. + function visibleLines(display, doc, viewport) { + var top = viewport && viewport.top != null ? Math.max(0, viewport.top) : display.scroller.scrollTop; + top = Math.floor(top - paddingTop(display)); + var bottom = viewport && viewport.bottom != null ? viewport.bottom : top + display.wrapper.clientHeight; + + var from = lineAtHeight(doc, top), to = lineAtHeight(doc, bottom); + // Ensure is a {from: {line, ch}, to: {line, ch}} object, and + // forces those lines into the viewport (if possible). + if (viewport && viewport.ensure) { + var ensureFrom = viewport.ensure.from.line, ensureTo = viewport.ensure.to.line; + if (ensureFrom < from) { + from = ensureFrom; + to = lineAtHeight(doc, heightAtLine(getLine(doc, ensureFrom)) + display.wrapper.clientHeight); + } else if (Math.min(ensureTo, doc.lastLine()) >= to) { + from = lineAtHeight(doc, heightAtLine(getLine(doc, ensureTo)) - display.wrapper.clientHeight); + to = ensureTo; + } + } + return {from: from, to: Math.max(to, from + 1)} + } + + // SCROLLING THINGS INTO VIEW + + // If an editor sits on the top or bottom of the window, partially + // scrolled out of view, this ensures that the cursor is visible. + function maybeScrollWindow(cm, rect) { + if (signalDOMEvent(cm, "scrollCursorIntoView")) { return } + + var display = cm.display, box = display.sizer.getBoundingClientRect(), doScroll = null; + var doc = display.wrapper.ownerDocument; + if (rect.top + box.top < 0) { doScroll = true; } + else if (rect.bottom + box.top > (doc.defaultView.innerHeight || doc.documentElement.clientHeight)) { doScroll = false; } + if (doScroll != null && !phantom) { + var scrollNode = elt("div", "\u200b", null, ("position: absolute;\n top: " + (rect.top - display.viewOffset - paddingTop(cm.display)) + "px;\n height: " + (rect.bottom - rect.top + scrollGap(cm) + display.barHeight) + "px;\n left: " + (rect.left) + "px; width: " + (Math.max(2, rect.right - rect.left)) + "px;")); + cm.display.lineSpace.appendChild(scrollNode); + scrollNode.scrollIntoView(doScroll); + cm.display.lineSpace.removeChild(scrollNode); + } + } + + // Scroll a given position into view (immediately), verifying that + // it actually became visible (as line heights are accurately + // measured, the position of something may 'drift' during drawing). + function scrollPosIntoView(cm, pos, end, margin) { + if (margin == null) { margin = 0; } + var rect; + if (!cm.options.lineWrapping && pos == end) { + // Set pos and end to the cursor positions around the character pos sticks to + // If pos.sticky == "before", that is around pos.ch - 1, otherwise around pos.ch + // If pos == Pos(_, 0, "before"), pos and end are unchanged + end = pos.sticky == "before" ? Pos(pos.line, pos.ch + 1, "before") : pos; + pos = pos.ch ? Pos(pos.line, pos.sticky == "before" ? pos.ch - 1 : pos.ch, "after") : pos; + } + for (var limit = 0; limit < 5; limit++) { + var changed = false; + var coords = cursorCoords(cm, pos); + var endCoords = !end || end == pos ? coords : cursorCoords(cm, end); + rect = {left: Math.min(coords.left, endCoords.left), + top: Math.min(coords.top, endCoords.top) - margin, + right: Math.max(coords.left, endCoords.left), + bottom: Math.max(coords.bottom, endCoords.bottom) + margin}; + var scrollPos = calculateScrollPos(cm, rect); + var startTop = cm.doc.scrollTop, startLeft = cm.doc.scrollLeft; + if (scrollPos.scrollTop != null) { + updateScrollTop(cm, scrollPos.scrollTop); + if (Math.abs(cm.doc.scrollTop - startTop) > 1) { changed = true; } + } + if (scrollPos.scrollLeft != null) { + setScrollLeft(cm, scrollPos.scrollLeft); + if (Math.abs(cm.doc.scrollLeft - startLeft) > 1) { changed = true; } + } + if (!changed) { break } + } + return rect + } + + // Scroll a given set of coordinates into view (immediately). + function scrollIntoView(cm, rect) { + var scrollPos = calculateScrollPos(cm, rect); + if (scrollPos.scrollTop != null) { updateScrollTop(cm, scrollPos.scrollTop); } + if (scrollPos.scrollLeft != null) { setScrollLeft(cm, scrollPos.scrollLeft); } + } + + // Calculate a new scroll position needed to scroll the given + // rectangle into view. Returns an object with scrollTop and + // scrollLeft properties. When these are undefined, the + // vertical/horizontal position does not need to be adjusted. + function calculateScrollPos(cm, rect) { + var display = cm.display, snapMargin = textHeight(cm.display); + if (rect.top < 0) { rect.top = 0; } + var screentop = cm.curOp && cm.curOp.scrollTop != null ? cm.curOp.scrollTop : display.scroller.scrollTop; + var screen = displayHeight(cm), result = {}; + if (rect.bottom - rect.top > screen) { rect.bottom = rect.top + screen; } + var docBottom = cm.doc.height + paddingVert(display); + var atTop = rect.top < snapMargin, atBottom = rect.bottom > docBottom - snapMargin; + if (rect.top < screentop) { + result.scrollTop = atTop ? 0 : rect.top; + } else if (rect.bottom > screentop + screen) { + var newTop = Math.min(rect.top, (atBottom ? docBottom : rect.bottom) - screen); + if (newTop != screentop) { result.scrollTop = newTop; } + } + + var gutterSpace = cm.options.fixedGutter ? 0 : display.gutters.offsetWidth; + var screenleft = cm.curOp && cm.curOp.scrollLeft != null ? cm.curOp.scrollLeft : display.scroller.scrollLeft - gutterSpace; + var screenw = displayWidth(cm) - display.gutters.offsetWidth; + var tooWide = rect.right - rect.left > screenw; + if (tooWide) { rect.right = rect.left + screenw; } + if (rect.left < 10) + { result.scrollLeft = 0; } + else if (rect.left < screenleft) + { result.scrollLeft = Math.max(0, rect.left + gutterSpace - (tooWide ? 0 : 10)); } + else if (rect.right > screenw + screenleft - 3) + { result.scrollLeft = rect.right + (tooWide ? 0 : 10) - screenw; } + return result + } + + // Store a relative adjustment to the scroll position in the current + // operation (to be applied when the operation finishes). + function addToScrollTop(cm, top) { + if (top == null) { return } + resolveScrollToPos(cm); + cm.curOp.scrollTop = (cm.curOp.scrollTop == null ? cm.doc.scrollTop : cm.curOp.scrollTop) + top; + } + + // Make sure that at the end of the operation the current cursor is + // shown. + function ensureCursorVisible(cm) { + resolveScrollToPos(cm); + var cur = cm.getCursor(); + cm.curOp.scrollToPos = {from: cur, to: cur, margin: cm.options.cursorScrollMargin}; + } + + function scrollToCoords(cm, x, y) { + if (x != null || y != null) { resolveScrollToPos(cm); } + if (x != null) { cm.curOp.scrollLeft = x; } + if (y != null) { cm.curOp.scrollTop = y; } + } + + function scrollToRange(cm, range) { + resolveScrollToPos(cm); + cm.curOp.scrollToPos = range; + } + + // When an operation has its scrollToPos property set, and another + // scroll action is applied before the end of the operation, this + // 'simulates' scrolling that position into view in a cheap way, so + // that the effect of intermediate scroll commands is not ignored. + function resolveScrollToPos(cm) { + var range = cm.curOp.scrollToPos; + if (range) { + cm.curOp.scrollToPos = null; + var from = estimateCoords(cm, range.from), to = estimateCoords(cm, range.to); + scrollToCoordsRange(cm, from, to, range.margin); + } + } + + function scrollToCoordsRange(cm, from, to, margin) { + var sPos = calculateScrollPos(cm, { + left: Math.min(from.left, to.left), + top: Math.min(from.top, to.top) - margin, + right: Math.max(from.right, to.right), + bottom: Math.max(from.bottom, to.bottom) + margin + }); + scrollToCoords(cm, sPos.scrollLeft, sPos.scrollTop); + } + + // Sync the scrollable area and scrollbars, ensure the viewport + // covers the visible area. + function updateScrollTop(cm, val) { + if (Math.abs(cm.doc.scrollTop - val) < 2) { return } + if (!gecko) { updateDisplaySimple(cm, {top: val}); } + setScrollTop(cm, val, true); + if (gecko) { updateDisplaySimple(cm); } + startWorker(cm, 100); + } + + function setScrollTop(cm, val, forceScroll) { + val = Math.max(0, Math.min(cm.display.scroller.scrollHeight - cm.display.scroller.clientHeight, val)); + if (cm.display.scroller.scrollTop == val && !forceScroll) { return } + cm.doc.scrollTop = val; + cm.display.scrollbars.setScrollTop(val); + if (cm.display.scroller.scrollTop != val) { cm.display.scroller.scrollTop = val; } + } + + // Sync scroller and scrollbar, ensure the gutter elements are + // aligned. + function setScrollLeft(cm, val, isScroller, forceScroll) { + val = Math.max(0, Math.min(val, cm.display.scroller.scrollWidth - cm.display.scroller.clientWidth)); + if ((isScroller ? val == cm.doc.scrollLeft : Math.abs(cm.doc.scrollLeft - val) < 2) && !forceScroll) { return } + cm.doc.scrollLeft = val; + alignHorizontally(cm); + if (cm.display.scroller.scrollLeft != val) { cm.display.scroller.scrollLeft = val; } + cm.display.scrollbars.setScrollLeft(val); + } + + // SCROLLBARS + + // Prepare DOM reads needed to update the scrollbars. Done in one + // shot to minimize update/measure roundtrips. + function measureForScrollbars(cm) { + var d = cm.display, gutterW = d.gutters.offsetWidth; + var docH = Math.round(cm.doc.height + paddingVert(cm.display)); + return { + clientHeight: d.scroller.clientHeight, + viewHeight: d.wrapper.clientHeight, + scrollWidth: d.scroller.scrollWidth, clientWidth: d.scroller.clientWidth, + viewWidth: d.wrapper.clientWidth, + barLeft: cm.options.fixedGutter ? gutterW : 0, + docHeight: docH, + scrollHeight: docH + scrollGap(cm) + d.barHeight, + nativeBarWidth: d.nativeBarWidth, + gutterWidth: gutterW + } + } + + var NativeScrollbars = function(place, scroll, cm) { + this.cm = cm; + var vert = this.vert = elt("div", [elt("div", null, null, "min-width: 1px")], "CodeMirror-vscrollbar"); + var horiz = this.horiz = elt("div", [elt("div", null, null, "height: 100%; min-height: 1px")], "CodeMirror-hscrollbar"); + vert.tabIndex = horiz.tabIndex = -1; + place(vert); place(horiz); + + on(vert, "scroll", function () { + if (vert.clientHeight) { scroll(vert.scrollTop, "vertical"); } + }); + on(horiz, "scroll", function () { + if (horiz.clientWidth) { scroll(horiz.scrollLeft, "horizontal"); } + }); + + this.checkedZeroWidth = false; + // Need to set a minimum width to see the scrollbar on IE7 (but must not set it on IE8). + if (ie && ie_version < 8) { this.horiz.style.minHeight = this.vert.style.minWidth = "18px"; } + }; + + NativeScrollbars.prototype.update = function (measure) { + var needsH = measure.scrollWidth > measure.clientWidth + 1; + var needsV = measure.scrollHeight > measure.clientHeight + 1; + var sWidth = measure.nativeBarWidth; + + if (needsV) { + this.vert.style.display = "block"; + this.vert.style.bottom = needsH ? sWidth + "px" : "0"; + var totalHeight = measure.viewHeight - (needsH ? sWidth : 0); + // A bug in IE8 can cause this value to be negative, so guard it. + this.vert.firstChild.style.height = + Math.max(0, measure.scrollHeight - measure.clientHeight + totalHeight) + "px"; + } else { + this.vert.scrollTop = 0; + this.vert.style.display = ""; + this.vert.firstChild.style.height = "0"; + } + + if (needsH) { + this.horiz.style.display = "block"; + this.horiz.style.right = needsV ? sWidth + "px" : "0"; + this.horiz.style.left = measure.barLeft + "px"; + var totalWidth = measure.viewWidth - measure.barLeft - (needsV ? sWidth : 0); + this.horiz.firstChild.style.width = + Math.max(0, measure.scrollWidth - measure.clientWidth + totalWidth) + "px"; + } else { + this.horiz.style.display = ""; + this.horiz.firstChild.style.width = "0"; + } + + if (!this.checkedZeroWidth && measure.clientHeight > 0) { + if (sWidth == 0) { this.zeroWidthHack(); } + this.checkedZeroWidth = true; + } + + return {right: needsV ? sWidth : 0, bottom: needsH ? sWidth : 0} + }; + + NativeScrollbars.prototype.setScrollLeft = function (pos) { + if (this.horiz.scrollLeft != pos) { this.horiz.scrollLeft = pos; } + if (this.disableHoriz) { this.enableZeroWidthBar(this.horiz, this.disableHoriz, "horiz"); } + }; + + NativeScrollbars.prototype.setScrollTop = function (pos) { + if (this.vert.scrollTop != pos) { this.vert.scrollTop = pos; } + if (this.disableVert) { this.enableZeroWidthBar(this.vert, this.disableVert, "vert"); } + }; + + NativeScrollbars.prototype.zeroWidthHack = function () { + var w = mac && !mac_geMountainLion ? "12px" : "18px"; + this.horiz.style.height = this.vert.style.width = w; + this.horiz.style.visibility = this.vert.style.visibility = "hidden"; + this.disableHoriz = new Delayed; + this.disableVert = new Delayed; + }; + + NativeScrollbars.prototype.enableZeroWidthBar = function (bar, delay, type) { + bar.style.visibility = ""; + function maybeDisable() { + // To find out whether the scrollbar is still visible, we + // check whether the element under the pixel in the bottom + // right corner of the scrollbar box is the scrollbar box + // itself (when the bar is still visible) or its filler child + // (when the bar is hidden). If it is still visible, we keep + // it enabled, if it's hidden, we disable pointer events. + var box = bar.getBoundingClientRect(); + var elt = type == "vert" ? document.elementFromPoint(box.right - 1, (box.top + box.bottom) / 2) + : document.elementFromPoint((box.right + box.left) / 2, box.bottom - 1); + if (elt != bar) { bar.style.visibility = "hidden"; } + else { delay.set(1000, maybeDisable); } + } + delay.set(1000, maybeDisable); + }; + + NativeScrollbars.prototype.clear = function () { + var parent = this.horiz.parentNode; + parent.removeChild(this.horiz); + parent.removeChild(this.vert); + }; + + var NullScrollbars = function () {}; + + NullScrollbars.prototype.update = function () { return {bottom: 0, right: 0} }; + NullScrollbars.prototype.setScrollLeft = function () {}; + NullScrollbars.prototype.setScrollTop = function () {}; + NullScrollbars.prototype.clear = function () {}; + + function updateScrollbars(cm, measure) { + if (!measure) { measure = measureForScrollbars(cm); } + var startWidth = cm.display.barWidth, startHeight = cm.display.barHeight; + updateScrollbarsInner(cm, measure); + for (var i = 0; i < 4 && startWidth != cm.display.barWidth || startHeight != cm.display.barHeight; i++) { + if (startWidth != cm.display.barWidth && cm.options.lineWrapping) + { updateHeightsInViewport(cm); } + updateScrollbarsInner(cm, measureForScrollbars(cm)); + startWidth = cm.display.barWidth; startHeight = cm.display.barHeight; + } + } + + // Re-synchronize the fake scrollbars with the actual size of the + // content. + function updateScrollbarsInner(cm, measure) { + var d = cm.display; + var sizes = d.scrollbars.update(measure); + + d.sizer.style.paddingRight = (d.barWidth = sizes.right) + "px"; + d.sizer.style.paddingBottom = (d.barHeight = sizes.bottom) + "px"; + d.heightForcer.style.borderBottom = sizes.bottom + "px solid transparent"; + + if (sizes.right && sizes.bottom) { + d.scrollbarFiller.style.display = "block"; + d.scrollbarFiller.style.height = sizes.bottom + "px"; + d.scrollbarFiller.style.width = sizes.right + "px"; + } else { d.scrollbarFiller.style.display = ""; } + if (sizes.bottom && cm.options.coverGutterNextToScrollbar && cm.options.fixedGutter) { + d.gutterFiller.style.display = "block"; + d.gutterFiller.style.height = sizes.bottom + "px"; + d.gutterFiller.style.width = measure.gutterWidth + "px"; + } else { d.gutterFiller.style.display = ""; } + } + + var scrollbarModel = {"native": NativeScrollbars, "null": NullScrollbars}; + + function initScrollbars(cm) { + if (cm.display.scrollbars) { + cm.display.scrollbars.clear(); + if (cm.display.scrollbars.addClass) + { rmClass(cm.display.wrapper, cm.display.scrollbars.addClass); } + } + + cm.display.scrollbars = new scrollbarModel[cm.options.scrollbarStyle](function (node) { + cm.display.wrapper.insertBefore(node, cm.display.scrollbarFiller); + // Prevent clicks in the scrollbars from killing focus + on(node, "mousedown", function () { + if (cm.state.focused) { setTimeout(function () { return cm.display.input.focus(); }, 0); } + }); + node.setAttribute("cm-not-content", "true"); + }, function (pos, axis) { + if (axis == "horizontal") { setScrollLeft(cm, pos); } + else { updateScrollTop(cm, pos); } + }, cm); + if (cm.display.scrollbars.addClass) + { addClass(cm.display.wrapper, cm.display.scrollbars.addClass); } + } + + // Operations are used to wrap a series of changes to the editor + // state in such a way that each change won't have to update the + // cursor and display (which would be awkward, slow, and + // error-prone). Instead, display updates are batched and then all + // combined and executed at once. + + var nextOpId = 0; + // Start a new operation. + function startOperation(cm) { + cm.curOp = { + cm: cm, + viewChanged: false, // Flag that indicates that lines might need to be redrawn + startHeight: cm.doc.height, // Used to detect need to update scrollbar + forceUpdate: false, // Used to force a redraw + updateInput: 0, // Whether to reset the input textarea + typing: false, // Whether this reset should be careful to leave existing text (for compositing) + changeObjs: null, // Accumulated changes, for firing change events + cursorActivityHandlers: null, // Set of handlers to fire cursorActivity on + cursorActivityCalled: 0, // Tracks which cursorActivity handlers have been called already + selectionChanged: false, // Whether the selection needs to be redrawn + updateMaxLine: false, // Set when the widest line needs to be determined anew + scrollLeft: null, scrollTop: null, // Intermediate scroll position, not pushed to DOM yet + scrollToPos: null, // Used to scroll to a specific position + focus: false, + id: ++nextOpId, // Unique ID + markArrays: null // Used by addMarkedSpan + }; + pushOperation(cm.curOp); + } + + // Finish an operation, updating the display and signalling delayed events + function endOperation(cm) { + var op = cm.curOp; + if (op) { finishOperation(op, function (group) { + for (var i = 0; i < group.ops.length; i++) + { group.ops[i].cm.curOp = null; } + endOperations(group); + }); } + } + + // The DOM updates done when an operation finishes are batched so + // that the minimum number of relayouts are required. + function endOperations(group) { + var ops = group.ops; + for (var i = 0; i < ops.length; i++) // Read DOM + { endOperation_R1(ops[i]); } + for (var i$1 = 0; i$1 < ops.length; i$1++) // Write DOM (maybe) + { endOperation_W1(ops[i$1]); } + for (var i$2 = 0; i$2 < ops.length; i$2++) // Read DOM + { endOperation_R2(ops[i$2]); } + for (var i$3 = 0; i$3 < ops.length; i$3++) // Write DOM (maybe) + { endOperation_W2(ops[i$3]); } + for (var i$4 = 0; i$4 < ops.length; i$4++) // Read DOM + { endOperation_finish(ops[i$4]); } + } + + function endOperation_R1(op) { + var cm = op.cm, display = cm.display; + maybeClipScrollbars(cm); + if (op.updateMaxLine) { findMaxLine(cm); } + + op.mustUpdate = op.viewChanged || op.forceUpdate || op.scrollTop != null || + op.scrollToPos && (op.scrollToPos.from.line < display.viewFrom || + op.scrollToPos.to.line >= display.viewTo) || + display.maxLineChanged && cm.options.lineWrapping; + op.update = op.mustUpdate && + new DisplayUpdate(cm, op.mustUpdate && {top: op.scrollTop, ensure: op.scrollToPos}, op.forceUpdate); + } + + function endOperation_W1(op) { + op.updatedDisplay = op.mustUpdate && updateDisplayIfNeeded(op.cm, op.update); + } + + function endOperation_R2(op) { + var cm = op.cm, display = cm.display; + if (op.updatedDisplay) { updateHeightsInViewport(cm); } + + op.barMeasure = measureForScrollbars(cm); + + // If the max line changed since it was last measured, measure it, + // and ensure the document's width matches it. + // updateDisplay_W2 will use these properties to do the actual resizing + if (display.maxLineChanged && !cm.options.lineWrapping) { + op.adjustWidthTo = measureChar(cm, display.maxLine, display.maxLine.text.length).left + 3; + cm.display.sizerWidth = op.adjustWidthTo; + op.barMeasure.scrollWidth = + Math.max(display.scroller.clientWidth, display.sizer.offsetLeft + op.adjustWidthTo + scrollGap(cm) + cm.display.barWidth); + op.maxScrollLeft = Math.max(0, display.sizer.offsetLeft + op.adjustWidthTo - displayWidth(cm)); + } + + if (op.updatedDisplay || op.selectionChanged) + { op.preparedSelection = display.input.prepareSelection(); } + } + + function endOperation_W2(op) { + var cm = op.cm; + + if (op.adjustWidthTo != null) { + cm.display.sizer.style.minWidth = op.adjustWidthTo + "px"; + if (op.maxScrollLeft < cm.doc.scrollLeft) + { setScrollLeft(cm, Math.min(cm.display.scroller.scrollLeft, op.maxScrollLeft), true); } + cm.display.maxLineChanged = false; + } + + var takeFocus = op.focus && op.focus == activeElt(root(cm)); + if (op.preparedSelection) + { cm.display.input.showSelection(op.preparedSelection, takeFocus); } + if (op.updatedDisplay || op.startHeight != cm.doc.height) + { updateScrollbars(cm, op.barMeasure); } + if (op.updatedDisplay) + { setDocumentHeight(cm, op.barMeasure); } + + if (op.selectionChanged) { restartBlink(cm); } + + if (cm.state.focused && op.updateInput) + { cm.display.input.reset(op.typing); } + if (takeFocus) { ensureFocus(op.cm); } + } + + function endOperation_finish(op) { + var cm = op.cm, display = cm.display, doc = cm.doc; + + if (op.updatedDisplay) { postUpdateDisplay(cm, op.update); } + + // Abort mouse wheel delta measurement, when scrolling explicitly + if (display.wheelStartX != null && (op.scrollTop != null || op.scrollLeft != null || op.scrollToPos)) + { display.wheelStartX = display.wheelStartY = null; } + + // Propagate the scroll position to the actual DOM scroller + if (op.scrollTop != null) { setScrollTop(cm, op.scrollTop, op.forceScroll); } + + if (op.scrollLeft != null) { setScrollLeft(cm, op.scrollLeft, true, true); } + // If we need to scroll a specific position into view, do so. + if (op.scrollToPos) { + var rect = scrollPosIntoView(cm, clipPos(doc, op.scrollToPos.from), + clipPos(doc, op.scrollToPos.to), op.scrollToPos.margin); + maybeScrollWindow(cm, rect); + } + + // Fire events for markers that are hidden/unidden by editing or + // undoing + var hidden = op.maybeHiddenMarkers, unhidden = op.maybeUnhiddenMarkers; + if (hidden) { for (var i = 0; i < hidden.length; ++i) + { if (!hidden[i].lines.length) { signal(hidden[i], "hide"); } } } + if (unhidden) { for (var i$1 = 0; i$1 < unhidden.length; ++i$1) + { if (unhidden[i$1].lines.length) { signal(unhidden[i$1], "unhide"); } } } + + if (display.wrapper.offsetHeight) + { doc.scrollTop = cm.display.scroller.scrollTop; } + + // Fire change events, and delayed event handlers + if (op.changeObjs) + { signal(cm, "changes", cm, op.changeObjs); } + if (op.update) + { op.update.finish(); } + } + + // Run the given function in an operation + function runInOp(cm, f) { + if (cm.curOp) { return f() } + startOperation(cm); + try { return f() } + finally { endOperation(cm); } + } + // Wraps a function in an operation. Returns the wrapped function. + function operation(cm, f) { + return function() { + if (cm.curOp) { return f.apply(cm, arguments) } + startOperation(cm); + try { return f.apply(cm, arguments) } + finally { endOperation(cm); } + } + } + // Used to add methods to editor and doc instances, wrapping them in + // operations. + function methodOp(f) { + return function() { + if (this.curOp) { return f.apply(this, arguments) } + startOperation(this); + try { return f.apply(this, arguments) } + finally { endOperation(this); } + } + } + function docMethodOp(f) { + return function() { + var cm = this.cm; + if (!cm || cm.curOp) { return f.apply(this, arguments) } + startOperation(cm); + try { return f.apply(this, arguments) } + finally { endOperation(cm); } + } + } + + // HIGHLIGHT WORKER + + function startWorker(cm, time) { + if (cm.doc.highlightFrontier < cm.display.viewTo) + { cm.state.highlight.set(time, bind(highlightWorker, cm)); } + } + + function highlightWorker(cm) { + var doc = cm.doc; + if (doc.highlightFrontier >= cm.display.viewTo) { return } + var end = +new Date + cm.options.workTime; + var context = getContextBefore(cm, doc.highlightFrontier); + var changedLines = []; + + doc.iter(context.line, Math.min(doc.first + doc.size, cm.display.viewTo + 500), function (line) { + if (context.line >= cm.display.viewFrom) { // Visible + var oldStyles = line.styles; + var resetState = line.text.length > cm.options.maxHighlightLength ? copyState(doc.mode, context.state) : null; + var highlighted = highlightLine(cm, line, context, true); + if (resetState) { context.state = resetState; } + line.styles = highlighted.styles; + var oldCls = line.styleClasses, newCls = highlighted.classes; + if (newCls) { line.styleClasses = newCls; } + else if (oldCls) { line.styleClasses = null; } + var ischange = !oldStyles || oldStyles.length != line.styles.length || + oldCls != newCls && (!oldCls || !newCls || oldCls.bgClass != newCls.bgClass || oldCls.textClass != newCls.textClass); + for (var i = 0; !ischange && i < oldStyles.length; ++i) { ischange = oldStyles[i] != line.styles[i]; } + if (ischange) { changedLines.push(context.line); } + line.stateAfter = context.save(); + context.nextLine(); + } else { + if (line.text.length <= cm.options.maxHighlightLength) + { processLine(cm, line.text, context); } + line.stateAfter = context.line % 5 == 0 ? context.save() : null; + context.nextLine(); + } + if (+new Date > end) { + startWorker(cm, cm.options.workDelay); + return true + } + }); + doc.highlightFrontier = context.line; + doc.modeFrontier = Math.max(doc.modeFrontier, context.line); + if (changedLines.length) { runInOp(cm, function () { + for (var i = 0; i < changedLines.length; i++) + { regLineChange(cm, changedLines[i], "text"); } + }); } + } + + // DISPLAY DRAWING + + var DisplayUpdate = function(cm, viewport, force) { + var display = cm.display; + + this.viewport = viewport; + // Store some values that we'll need later (but don't want to force a relayout for) + this.visible = visibleLines(display, cm.doc, viewport); + this.editorIsHidden = !display.wrapper.offsetWidth; + this.wrapperHeight = display.wrapper.clientHeight; + this.wrapperWidth = display.wrapper.clientWidth; + this.oldDisplayWidth = displayWidth(cm); + this.force = force; + this.dims = getDimensions(cm); + this.events = []; + }; + + DisplayUpdate.prototype.signal = function (emitter, type) { + if (hasHandler(emitter, type)) + { this.events.push(arguments); } + }; + DisplayUpdate.prototype.finish = function () { + for (var i = 0; i < this.events.length; i++) + { signal.apply(null, this.events[i]); } + }; + + function maybeClipScrollbars(cm) { + var display = cm.display; + if (!display.scrollbarsClipped && display.scroller.offsetWidth) { + display.nativeBarWidth = display.scroller.offsetWidth - display.scroller.clientWidth; + display.heightForcer.style.height = scrollGap(cm) + "px"; + display.sizer.style.marginBottom = -display.nativeBarWidth + "px"; + display.sizer.style.borderRightWidth = scrollGap(cm) + "px"; + display.scrollbarsClipped = true; + } + } + + function selectionSnapshot(cm) { + if (cm.hasFocus()) { return null } + var active = activeElt(root(cm)); + if (!active || !contains(cm.display.lineDiv, active)) { return null } + var result = {activeElt: active}; + if (window.getSelection) { + var sel = win(cm).getSelection(); + if (sel.anchorNode && sel.extend && contains(cm.display.lineDiv, sel.anchorNode)) { + result.anchorNode = sel.anchorNode; + result.anchorOffset = sel.anchorOffset; + result.focusNode = sel.focusNode; + result.focusOffset = sel.focusOffset; + } + } + return result + } + + function restoreSelection(snapshot) { + if (!snapshot || !snapshot.activeElt || snapshot.activeElt == activeElt(rootNode(snapshot.activeElt))) { return } + snapshot.activeElt.focus(); + if (!/^(INPUT|TEXTAREA)$/.test(snapshot.activeElt.nodeName) && + snapshot.anchorNode && contains(document.body, snapshot.anchorNode) && contains(document.body, snapshot.focusNode)) { + var doc = snapshot.activeElt.ownerDocument; + var sel = doc.defaultView.getSelection(), range = doc.createRange(); + range.setEnd(snapshot.anchorNode, snapshot.anchorOffset); + range.collapse(false); + sel.removeAllRanges(); + sel.addRange(range); + sel.extend(snapshot.focusNode, snapshot.focusOffset); + } + } + + // Does the actual updating of the line display. Bails out + // (returning false) when there is nothing to be done and forced is + // false. + function updateDisplayIfNeeded(cm, update) { + var display = cm.display, doc = cm.doc; + + if (update.editorIsHidden) { + resetView(cm); + return false + } + + // Bail out if the visible area is already rendered and nothing changed. + if (!update.force && + update.visible.from >= display.viewFrom && update.visible.to <= display.viewTo && + (display.updateLineNumbers == null || display.updateLineNumbers >= display.viewTo) && + display.renderedView == display.view && countDirtyView(cm) == 0) + { return false } + + if (maybeUpdateLineNumberWidth(cm)) { + resetView(cm); + update.dims = getDimensions(cm); + } + + // Compute a suitable new viewport (from & to) + var end = doc.first + doc.size; + var from = Math.max(update.visible.from - cm.options.viewportMargin, doc.first); + var to = Math.min(end, update.visible.to + cm.options.viewportMargin); + if (display.viewFrom < from && from - display.viewFrom < 20) { from = Math.max(doc.first, display.viewFrom); } + if (display.viewTo > to && display.viewTo - to < 20) { to = Math.min(end, display.viewTo); } + if (sawCollapsedSpans) { + from = visualLineNo(cm.doc, from); + to = visualLineEndNo(cm.doc, to); + } + + var different = from != display.viewFrom || to != display.viewTo || + display.lastWrapHeight != update.wrapperHeight || display.lastWrapWidth != update.wrapperWidth; + adjustView(cm, from, to); + + display.viewOffset = heightAtLine(getLine(cm.doc, display.viewFrom)); + // Position the mover div to align with the current scroll position + cm.display.mover.style.top = display.viewOffset + "px"; + + var toUpdate = countDirtyView(cm); + if (!different && toUpdate == 0 && !update.force && display.renderedView == display.view && + (display.updateLineNumbers == null || display.updateLineNumbers >= display.viewTo)) + { return false } + + // For big changes, we hide the enclosing element during the + // update, since that speeds up the operations on most browsers. + var selSnapshot = selectionSnapshot(cm); + if (toUpdate > 4) { display.lineDiv.style.display = "none"; } + patchDisplay(cm, display.updateLineNumbers, update.dims); + if (toUpdate > 4) { display.lineDiv.style.display = ""; } + display.renderedView = display.view; + // There might have been a widget with a focused element that got + // hidden or updated, if so re-focus it. + restoreSelection(selSnapshot); + + // Prevent selection and cursors from interfering with the scroll + // width and height. + removeChildren(display.cursorDiv); + removeChildren(display.selectionDiv); + display.gutters.style.height = display.sizer.style.minHeight = 0; + + if (different) { + display.lastWrapHeight = update.wrapperHeight; + display.lastWrapWidth = update.wrapperWidth; + startWorker(cm, 400); + } + + display.updateLineNumbers = null; + + return true + } + + function postUpdateDisplay(cm, update) { + var viewport = update.viewport; + + for (var first = true;; first = false) { + if (!first || !cm.options.lineWrapping || update.oldDisplayWidth == displayWidth(cm)) { + // Clip forced viewport to actual scrollable area. + if (viewport && viewport.top != null) + { viewport = {top: Math.min(cm.doc.height + paddingVert(cm.display) - displayHeight(cm), viewport.top)}; } + // Updated line heights might result in the drawn area not + // actually covering the viewport. Keep looping until it does. + update.visible = visibleLines(cm.display, cm.doc, viewport); + if (update.visible.from >= cm.display.viewFrom && update.visible.to <= cm.display.viewTo) + { break } + } else if (first) { + update.visible = visibleLines(cm.display, cm.doc, viewport); + } + if (!updateDisplayIfNeeded(cm, update)) { break } + updateHeightsInViewport(cm); + var barMeasure = measureForScrollbars(cm); + updateSelection(cm); + updateScrollbars(cm, barMeasure); + setDocumentHeight(cm, barMeasure); + update.force = false; + } + + update.signal(cm, "update", cm); + if (cm.display.viewFrom != cm.display.reportedViewFrom || cm.display.viewTo != cm.display.reportedViewTo) { + update.signal(cm, "viewportChange", cm, cm.display.viewFrom, cm.display.viewTo); + cm.display.reportedViewFrom = cm.display.viewFrom; cm.display.reportedViewTo = cm.display.viewTo; + } + } + + function updateDisplaySimple(cm, viewport) { + var update = new DisplayUpdate(cm, viewport); + if (updateDisplayIfNeeded(cm, update)) { + updateHeightsInViewport(cm); + postUpdateDisplay(cm, update); + var barMeasure = measureForScrollbars(cm); + updateSelection(cm); + updateScrollbars(cm, barMeasure); + setDocumentHeight(cm, barMeasure); + update.finish(); + } + } + + // Sync the actual display DOM structure with display.view, removing + // nodes for lines that are no longer in view, and creating the ones + // that are not there yet, and updating the ones that are out of + // date. + function patchDisplay(cm, updateNumbersFrom, dims) { + var display = cm.display, lineNumbers = cm.options.lineNumbers; + var container = display.lineDiv, cur = container.firstChild; + + function rm(node) { + var next = node.nextSibling; + // Works around a throw-scroll bug in OS X Webkit + if (webkit && mac && cm.display.currentWheelTarget == node) + { node.style.display = "none"; } + else + { node.parentNode.removeChild(node); } + return next + } + + var view = display.view, lineN = display.viewFrom; + // Loop over the elements in the view, syncing cur (the DOM nodes + // in display.lineDiv) with the view as we go. + for (var i = 0; i < view.length; i++) { + var lineView = view[i]; + if (lineView.hidden) ; else if (!lineView.node || lineView.node.parentNode != container) { // Not drawn yet + var node = buildLineElement(cm, lineView, lineN, dims); + container.insertBefore(node, cur); + } else { // Already drawn + while (cur != lineView.node) { cur = rm(cur); } + var updateNumber = lineNumbers && updateNumbersFrom != null && + updateNumbersFrom <= lineN && lineView.lineNumber; + if (lineView.changes) { + if (indexOf(lineView.changes, "gutter") > -1) { updateNumber = false; } + updateLineForChanges(cm, lineView, lineN, dims); + } + if (updateNumber) { + removeChildren(lineView.lineNumber); + lineView.lineNumber.appendChild(document.createTextNode(lineNumberFor(cm.options, lineN))); + } + cur = lineView.node.nextSibling; + } + lineN += lineView.size; + } + while (cur) { cur = rm(cur); } + } + + function updateGutterSpace(display) { + var width = display.gutters.offsetWidth; + display.sizer.style.marginLeft = width + "px"; + // Send an event to consumers responding to changes in gutter width. + signalLater(display, "gutterChanged", display); + } + + function setDocumentHeight(cm, measure) { + cm.display.sizer.style.minHeight = measure.docHeight + "px"; + cm.display.heightForcer.style.top = measure.docHeight + "px"; + cm.display.gutters.style.height = (measure.docHeight + cm.display.barHeight + scrollGap(cm)) + "px"; + } + + // Re-align line numbers and gutter marks to compensate for + // horizontal scrolling. + function alignHorizontally(cm) { + var display = cm.display, view = display.view; + if (!display.alignWidgets && (!display.gutters.firstChild || !cm.options.fixedGutter)) { return } + var comp = compensateForHScroll(display) - display.scroller.scrollLeft + cm.doc.scrollLeft; + var gutterW = display.gutters.offsetWidth, left = comp + "px"; + for (var i = 0; i < view.length; i++) { if (!view[i].hidden) { + if (cm.options.fixedGutter) { + if (view[i].gutter) + { view[i].gutter.style.left = left; } + if (view[i].gutterBackground) + { view[i].gutterBackground.style.left = left; } + } + var align = view[i].alignable; + if (align) { for (var j = 0; j < align.length; j++) + { align[j].style.left = left; } } + } } + if (cm.options.fixedGutter) + { display.gutters.style.left = (comp + gutterW) + "px"; } + } + + // Used to ensure that the line number gutter is still the right + // size for the current document size. Returns true when an update + // is needed. + function maybeUpdateLineNumberWidth(cm) { + if (!cm.options.lineNumbers) { return false } + var doc = cm.doc, last = lineNumberFor(cm.options, doc.first + doc.size - 1), display = cm.display; + if (last.length != display.lineNumChars) { + var test = display.measure.appendChild(elt("div", [elt("div", last)], + "CodeMirror-linenumber CodeMirror-gutter-elt")); + var innerW = test.firstChild.offsetWidth, padding = test.offsetWidth - innerW; + display.lineGutter.style.width = ""; + display.lineNumInnerWidth = Math.max(innerW, display.lineGutter.offsetWidth - padding) + 1; + display.lineNumWidth = display.lineNumInnerWidth + padding; + display.lineNumChars = display.lineNumInnerWidth ? last.length : -1; + display.lineGutter.style.width = display.lineNumWidth + "px"; + updateGutterSpace(cm.display); + return true + } + return false + } + + function getGutters(gutters, lineNumbers) { + var result = [], sawLineNumbers = false; + for (var i = 0; i < gutters.length; i++) { + var name = gutters[i], style = null; + if (typeof name != "string") { style = name.style; name = name.className; } + if (name == "CodeMirror-linenumbers") { + if (!lineNumbers) { continue } + else { sawLineNumbers = true; } + } + result.push({className: name, style: style}); + } + if (lineNumbers && !sawLineNumbers) { result.push({className: "CodeMirror-linenumbers", style: null}); } + return result + } + + // Rebuild the gutter elements, ensure the margin to the left of the + // code matches their width. + function renderGutters(display) { + var gutters = display.gutters, specs = display.gutterSpecs; + removeChildren(gutters); + display.lineGutter = null; + for (var i = 0; i < specs.length; ++i) { + var ref = specs[i]; + var className = ref.className; + var style = ref.style; + var gElt = gutters.appendChild(elt("div", null, "CodeMirror-gutter " + className)); + if (style) { gElt.style.cssText = style; } + if (className == "CodeMirror-linenumbers") { + display.lineGutter = gElt; + gElt.style.width = (display.lineNumWidth || 1) + "px"; + } + } + gutters.style.display = specs.length ? "" : "none"; + updateGutterSpace(display); + } + + function updateGutters(cm) { + renderGutters(cm.display); + regChange(cm); + alignHorizontally(cm); + } + + // The display handles the DOM integration, both for input reading + // and content drawing. It holds references to DOM nodes and + // display-related state. + + function Display(place, doc, input, options) { + var d = this; + this.input = input; + + // Covers bottom-right square when both scrollbars are present. + d.scrollbarFiller = elt("div", null, "CodeMirror-scrollbar-filler"); + d.scrollbarFiller.setAttribute("cm-not-content", "true"); + // Covers bottom of gutter when coverGutterNextToScrollbar is on + // and h scrollbar is present. + d.gutterFiller = elt("div", null, "CodeMirror-gutter-filler"); + d.gutterFiller.setAttribute("cm-not-content", "true"); + // Will contain the actual code, positioned to cover the viewport. + d.lineDiv = eltP("div", null, "CodeMirror-code"); + // Elements are added to these to represent selection and cursors. + d.selectionDiv = elt("div", null, null, "position: relative; z-index: 1"); + d.cursorDiv = elt("div", null, "CodeMirror-cursors"); + // A visibility: hidden element used to find the size of things. + d.measure = elt("div", null, "CodeMirror-measure"); + // When lines outside of the viewport are measured, they are drawn in this. + d.lineMeasure = elt("div", null, "CodeMirror-measure"); + // Wraps everything that needs to exist inside the vertically-padded coordinate system + d.lineSpace = eltP("div", [d.measure, d.lineMeasure, d.selectionDiv, d.cursorDiv, d.lineDiv], + null, "position: relative; outline: none"); + var lines = eltP("div", [d.lineSpace], "CodeMirror-lines"); + // Moved around its parent to cover visible view. + d.mover = elt("div", [lines], null, "position: relative"); + // Set to the height of the document, allowing scrolling. + d.sizer = elt("div", [d.mover], "CodeMirror-sizer"); + d.sizerWidth = null; + // Behavior of elts with overflow: auto and padding is + // inconsistent across browsers. This is used to ensure the + // scrollable area is big enough. + d.heightForcer = elt("div", null, null, "position: absolute; height: " + scrollerGap + "px; width: 1px;"); + // Will contain the gutters, if any. + d.gutters = elt("div", null, "CodeMirror-gutters"); + d.lineGutter = null; + // Actual scrollable element. + d.scroller = elt("div", [d.sizer, d.heightForcer, d.gutters], "CodeMirror-scroll"); + d.scroller.setAttribute("tabIndex", "-1"); + // The element in which the editor lives. + d.wrapper = elt("div", [d.scrollbarFiller, d.gutterFiller, d.scroller], "CodeMirror"); + // See #6982. FIXME remove when this has been fixed for a while in Chrome + if (chrome && chrome_version >= 105) { d.wrapper.style.clipPath = "inset(0px)"; } + + // This attribute is respected by automatic translation systems such as Google Translate, + // and may also be respected by tools used by human translators. + d.wrapper.setAttribute('translate', 'no'); + + // Work around IE7 z-index bug (not perfect, hence IE7 not really being supported) + if (ie && ie_version < 8) { d.gutters.style.zIndex = -1; d.scroller.style.paddingRight = 0; } + if (!webkit && !(gecko && mobile)) { d.scroller.draggable = true; } + + if (place) { + if (place.appendChild) { place.appendChild(d.wrapper); } + else { place(d.wrapper); } + } + + // Current rendered range (may be bigger than the view window). + d.viewFrom = d.viewTo = doc.first; + d.reportedViewFrom = d.reportedViewTo = doc.first; + // Information about the rendered lines. + d.view = []; + d.renderedView = null; + // Holds info about a single rendered line when it was rendered + // for measurement, while not in view. + d.externalMeasured = null; + // Empty space (in pixels) above the view + d.viewOffset = 0; + d.lastWrapHeight = d.lastWrapWidth = 0; + d.updateLineNumbers = null; + + d.nativeBarWidth = d.barHeight = d.barWidth = 0; + d.scrollbarsClipped = false; + + // Used to only resize the line number gutter when necessary (when + // the amount of lines crosses a boundary that makes its width change) + d.lineNumWidth = d.lineNumInnerWidth = d.lineNumChars = null; + // Set to true when a non-horizontal-scrolling line widget is + // added. As an optimization, line widget aligning is skipped when + // this is false. + d.alignWidgets = false; + + d.cachedCharWidth = d.cachedTextHeight = d.cachedPaddingH = null; + + // Tracks the maximum line length so that the horizontal scrollbar + // can be kept static when scrolling. + d.maxLine = null; + d.maxLineLength = 0; + d.maxLineChanged = false; + + // Used for measuring wheel scrolling granularity + d.wheelDX = d.wheelDY = d.wheelStartX = d.wheelStartY = null; + + // True when shift is held down. + d.shift = false; + + // Used to track whether anything happened since the context menu + // was opened. + d.selForContextMenu = null; + + d.activeTouch = null; + + d.gutterSpecs = getGutters(options.gutters, options.lineNumbers); + renderGutters(d); + + input.init(d); + } + + // Since the delta values reported on mouse wheel events are + // unstandardized between browsers and even browser versions, and + // generally horribly unpredictable, this code starts by measuring + // the scroll effect that the first few mouse wheel events have, + // and, from that, detects the way it can convert deltas to pixel + // offsets afterwards. + // + // The reason we want to know the amount a wheel event will scroll + // is that it gives us a chance to update the display before the + // actual scrolling happens, reducing flickering. + + var wheelSamples = 0, wheelPixelsPerUnit = null; + // Fill in a browser-detected starting value on browsers where we + // know one. These don't have to be accurate -- the result of them + // being wrong would just be a slight flicker on the first wheel + // scroll (if it is large enough). + if (ie) { wheelPixelsPerUnit = -.53; } + else if (gecko) { wheelPixelsPerUnit = 15; } + else if (chrome) { wheelPixelsPerUnit = -.7; } + else if (safari) { wheelPixelsPerUnit = -1/3; } + + function wheelEventDelta(e) { + var dx = e.wheelDeltaX, dy = e.wheelDeltaY; + if (dx == null && e.detail && e.axis == e.HORIZONTAL_AXIS) { dx = e.detail; } + if (dy == null && e.detail && e.axis == e.VERTICAL_AXIS) { dy = e.detail; } + else if (dy == null) { dy = e.wheelDelta; } + return {x: dx, y: dy} + } + function wheelEventPixels(e) { + var delta = wheelEventDelta(e); + delta.x *= wheelPixelsPerUnit; + delta.y *= wheelPixelsPerUnit; + return delta + } + + function onScrollWheel(cm, e) { + // On Chrome 102, viewport updates somehow stop wheel-based + // scrolling. Turning off pointer events during the scroll seems + // to avoid the issue. + if (chrome && chrome_version == 102) { + if (cm.display.chromeScrollHack == null) { cm.display.sizer.style.pointerEvents = "none"; } + else { clearTimeout(cm.display.chromeScrollHack); } + cm.display.chromeScrollHack = setTimeout(function () { + cm.display.chromeScrollHack = null; + cm.display.sizer.style.pointerEvents = ""; + }, 100); + } + var delta = wheelEventDelta(e), dx = delta.x, dy = delta.y; + var pixelsPerUnit = wheelPixelsPerUnit; + if (e.deltaMode === 0) { + dx = e.deltaX; + dy = e.deltaY; + pixelsPerUnit = 1; + } + + var display = cm.display, scroll = display.scroller; + // Quit if there's nothing to scroll here + var canScrollX = scroll.scrollWidth > scroll.clientWidth; + var canScrollY = scroll.scrollHeight > scroll.clientHeight; + if (!(dx && canScrollX || dy && canScrollY)) { return } + + // Webkit browsers on OS X abort momentum scrolls when the target + // of the scroll event is removed from the scrollable element. + // This hack (see related code in patchDisplay) makes sure the + // element is kept around. + if (dy && mac && webkit) { + outer: for (var cur = e.target, view = display.view; cur != scroll; cur = cur.parentNode) { + for (var i = 0; i < view.length; i++) { + if (view[i].node == cur) { + cm.display.currentWheelTarget = cur; + break outer + } + } + } + } + + // On some browsers, horizontal scrolling will cause redraws to + // happen before the gutter has been realigned, causing it to + // wriggle around in a most unseemly way. When we have an + // estimated pixels/delta value, we just handle horizontal + // scrolling entirely here. It'll be slightly off from native, but + // better than glitching out. + if (dx && !gecko && !presto && pixelsPerUnit != null) { + if (dy && canScrollY) + { updateScrollTop(cm, Math.max(0, scroll.scrollTop + dy * pixelsPerUnit)); } + setScrollLeft(cm, Math.max(0, scroll.scrollLeft + dx * pixelsPerUnit)); + // Only prevent default scrolling if vertical scrolling is + // actually possible. Otherwise, it causes vertical scroll + // jitter on OSX trackpads when deltaX is small and deltaY + // is large (issue #3579) + if (!dy || (dy && canScrollY)) + { e_preventDefault(e); } + display.wheelStartX = null; // Abort measurement, if in progress + return + } + + // 'Project' the visible viewport to cover the area that is being + // scrolled into view (if we know enough to estimate it). + if (dy && pixelsPerUnit != null) { + var pixels = dy * pixelsPerUnit; + var top = cm.doc.scrollTop, bot = top + display.wrapper.clientHeight; + if (pixels < 0) { top = Math.max(0, top + pixels - 50); } + else { bot = Math.min(cm.doc.height, bot + pixels + 50); } + updateDisplaySimple(cm, {top: top, bottom: bot}); + } + + if (wheelSamples < 20 && e.deltaMode !== 0) { + if (display.wheelStartX == null) { + display.wheelStartX = scroll.scrollLeft; display.wheelStartY = scroll.scrollTop; + display.wheelDX = dx; display.wheelDY = dy; + setTimeout(function () { + if (display.wheelStartX == null) { return } + var movedX = scroll.scrollLeft - display.wheelStartX; + var movedY = scroll.scrollTop - display.wheelStartY; + var sample = (movedY && display.wheelDY && movedY / display.wheelDY) || + (movedX && display.wheelDX && movedX / display.wheelDX); + display.wheelStartX = display.wheelStartY = null; + if (!sample) { return } + wheelPixelsPerUnit = (wheelPixelsPerUnit * wheelSamples + sample) / (wheelSamples + 1); + ++wheelSamples; + }, 200); + } else { + display.wheelDX += dx; display.wheelDY += dy; + } + } + } + + // Selection objects are immutable. A new one is created every time + // the selection changes. A selection is one or more non-overlapping + // (and non-touching) ranges, sorted, and an integer that indicates + // which one is the primary selection (the one that's scrolled into + // view, that getCursor returns, etc). + var Selection = function(ranges, primIndex) { + this.ranges = ranges; + this.primIndex = primIndex; + }; + + Selection.prototype.primary = function () { return this.ranges[this.primIndex] }; + + Selection.prototype.equals = function (other) { + if (other == this) { return true } + if (other.primIndex != this.primIndex || other.ranges.length != this.ranges.length) { return false } + for (var i = 0; i < this.ranges.length; i++) { + var here = this.ranges[i], there = other.ranges[i]; + if (!equalCursorPos(here.anchor, there.anchor) || !equalCursorPos(here.head, there.head)) { return false } + } + return true + }; + + Selection.prototype.deepCopy = function () { + var out = []; + for (var i = 0; i < this.ranges.length; i++) + { out[i] = new Range(copyPos(this.ranges[i].anchor), copyPos(this.ranges[i].head)); } + return new Selection(out, this.primIndex) + }; + + Selection.prototype.somethingSelected = function () { + for (var i = 0; i < this.ranges.length; i++) + { if (!this.ranges[i].empty()) { return true } } + return false + }; + + Selection.prototype.contains = function (pos, end) { + if (!end) { end = pos; } + for (var i = 0; i < this.ranges.length; i++) { + var range = this.ranges[i]; + if (cmp(end, range.from()) >= 0 && cmp(pos, range.to()) <= 0) + { return i } + } + return -1 + }; + + var Range = function(anchor, head) { + this.anchor = anchor; this.head = head; + }; + + Range.prototype.from = function () { return minPos(this.anchor, this.head) }; + Range.prototype.to = function () { return maxPos(this.anchor, this.head) }; + Range.prototype.empty = function () { return this.head.line == this.anchor.line && this.head.ch == this.anchor.ch }; + + // Take an unsorted, potentially overlapping set of ranges, and + // build a selection out of it. 'Consumes' ranges array (modifying + // it). + function normalizeSelection(cm, ranges, primIndex) { + var mayTouch = cm && cm.options.selectionsMayTouch; + var prim = ranges[primIndex]; + ranges.sort(function (a, b) { return cmp(a.from(), b.from()); }); + primIndex = indexOf(ranges, prim); + for (var i = 1; i < ranges.length; i++) { + var cur = ranges[i], prev = ranges[i - 1]; + var diff = cmp(prev.to(), cur.from()); + if (mayTouch && !cur.empty() ? diff > 0 : diff >= 0) { + var from = minPos(prev.from(), cur.from()), to = maxPos(prev.to(), cur.to()); + var inv = prev.empty() ? cur.from() == cur.head : prev.from() == prev.head; + if (i <= primIndex) { --primIndex; } + ranges.splice(--i, 2, new Range(inv ? to : from, inv ? from : to)); + } + } + return new Selection(ranges, primIndex) + } + + function simpleSelection(anchor, head) { + return new Selection([new Range(anchor, head || anchor)], 0) + } + + // Compute the position of the end of a change (its 'to' property + // refers to the pre-change end). + function changeEnd(change) { + if (!change.text) { return change.to } + return Pos(change.from.line + change.text.length - 1, + lst(change.text).length + (change.text.length == 1 ? change.from.ch : 0)) + } + + // Adjust a position to refer to the post-change position of the + // same text, or the end of the change if the change covers it. + function adjustForChange(pos, change) { + if (cmp(pos, change.from) < 0) { return pos } + if (cmp(pos, change.to) <= 0) { return changeEnd(change) } + + var line = pos.line + change.text.length - (change.to.line - change.from.line) - 1, ch = pos.ch; + if (pos.line == change.to.line) { ch += changeEnd(change).ch - change.to.ch; } + return Pos(line, ch) + } + + function computeSelAfterChange(doc, change) { + var out = []; + for (var i = 0; i < doc.sel.ranges.length; i++) { + var range = doc.sel.ranges[i]; + out.push(new Range(adjustForChange(range.anchor, change), + adjustForChange(range.head, change))); + } + return normalizeSelection(doc.cm, out, doc.sel.primIndex) + } + + function offsetPos(pos, old, nw) { + if (pos.line == old.line) + { return Pos(nw.line, pos.ch - old.ch + nw.ch) } + else + { return Pos(nw.line + (pos.line - old.line), pos.ch) } + } + + // Used by replaceSelections to allow moving the selection to the + // start or around the replaced test. Hint may be "start" or "around". + function computeReplacedSel(doc, changes, hint) { + var out = []; + var oldPrev = Pos(doc.first, 0), newPrev = oldPrev; + for (var i = 0; i < changes.length; i++) { + var change = changes[i]; + var from = offsetPos(change.from, oldPrev, newPrev); + var to = offsetPos(changeEnd(change), oldPrev, newPrev); + oldPrev = change.to; + newPrev = to; + if (hint == "around") { + var range = doc.sel.ranges[i], inv = cmp(range.head, range.anchor) < 0; + out[i] = new Range(inv ? to : from, inv ? from : to); + } else { + out[i] = new Range(from, from); + } + } + return new Selection(out, doc.sel.primIndex) + } + + // Used to get the editor into a consistent state again when options change. + + function loadMode(cm) { + cm.doc.mode = getMode(cm.options, cm.doc.modeOption); + resetModeState(cm); + } + + function resetModeState(cm) { + cm.doc.iter(function (line) { + if (line.stateAfter) { line.stateAfter = null; } + if (line.styles) { line.styles = null; } + }); + cm.doc.modeFrontier = cm.doc.highlightFrontier = cm.doc.first; + startWorker(cm, 100); + cm.state.modeGen++; + if (cm.curOp) { regChange(cm); } + } + + // DOCUMENT DATA STRUCTURE + + // By default, updates that start and end at the beginning of a line + // are treated specially, in order to make the association of line + // widgets and marker elements with the text behave more intuitive. + function isWholeLineUpdate(doc, change) { + return change.from.ch == 0 && change.to.ch == 0 && lst(change.text) == "" && + (!doc.cm || doc.cm.options.wholeLineUpdateBefore) + } + + // Perform a change on the document data structure. + function updateDoc(doc, change, markedSpans, estimateHeight) { + function spansFor(n) {return markedSpans ? markedSpans[n] : null} + function update(line, text, spans) { + updateLine(line, text, spans, estimateHeight); + signalLater(line, "change", line, change); + } + function linesFor(start, end) { + var result = []; + for (var i = start; i < end; ++i) + { result.push(new Line(text[i], spansFor(i), estimateHeight)); } + return result + } + + var from = change.from, to = change.to, text = change.text; + var firstLine = getLine(doc, from.line), lastLine = getLine(doc, to.line); + var lastText = lst(text), lastSpans = spansFor(text.length - 1), nlines = to.line - from.line; + + // Adjust the line structure + if (change.full) { + doc.insert(0, linesFor(0, text.length)); + doc.remove(text.length, doc.size - text.length); + } else if (isWholeLineUpdate(doc, change)) { + // This is a whole-line replace. Treated specially to make + // sure line objects move the way they are supposed to. + var added = linesFor(0, text.length - 1); + update(lastLine, lastLine.text, lastSpans); + if (nlines) { doc.remove(from.line, nlines); } + if (added.length) { doc.insert(from.line, added); } + } else if (firstLine == lastLine) { + if (text.length == 1) { + update(firstLine, firstLine.text.slice(0, from.ch) + lastText + firstLine.text.slice(to.ch), lastSpans); + } else { + var added$1 = linesFor(1, text.length - 1); + added$1.push(new Line(lastText + firstLine.text.slice(to.ch), lastSpans, estimateHeight)); + update(firstLine, firstLine.text.slice(0, from.ch) + text[0], spansFor(0)); + doc.insert(from.line + 1, added$1); + } + } else if (text.length == 1) { + update(firstLine, firstLine.text.slice(0, from.ch) + text[0] + lastLine.text.slice(to.ch), spansFor(0)); + doc.remove(from.line + 1, nlines); + } else { + update(firstLine, firstLine.text.slice(0, from.ch) + text[0], spansFor(0)); + update(lastLine, lastText + lastLine.text.slice(to.ch), lastSpans); + var added$2 = linesFor(1, text.length - 1); + if (nlines > 1) { doc.remove(from.line + 1, nlines - 1); } + doc.insert(from.line + 1, added$2); + } + + signalLater(doc, "change", doc, change); + } + + // Call f for all linked documents. + function linkedDocs(doc, f, sharedHistOnly) { + function propagate(doc, skip, sharedHist) { + if (doc.linked) { for (var i = 0; i < doc.linked.length; ++i) { + var rel = doc.linked[i]; + if (rel.doc == skip) { continue } + var shared = sharedHist && rel.sharedHist; + if (sharedHistOnly && !shared) { continue } + f(rel.doc, shared); + propagate(rel.doc, doc, shared); + } } + } + propagate(doc, null, true); + } + + // Attach a document to an editor. + function attachDoc(cm, doc) { + if (doc.cm) { throw new Error("This document is already in use.") } + cm.doc = doc; + doc.cm = cm; + estimateLineHeights(cm); + loadMode(cm); + setDirectionClass(cm); + cm.options.direction = doc.direction; + if (!cm.options.lineWrapping) { findMaxLine(cm); } + cm.options.mode = doc.modeOption; + regChange(cm); + } + + function setDirectionClass(cm) { + (cm.doc.direction == "rtl" ? addClass : rmClass)(cm.display.lineDiv, "CodeMirror-rtl"); + } + + function directionChanged(cm) { + runInOp(cm, function () { + setDirectionClass(cm); + regChange(cm); + }); + } + + function History(prev) { + // Arrays of change events and selections. Doing something adds an + // event to done and clears undo. Undoing moves events from done + // to undone, redoing moves them in the other direction. + this.done = []; this.undone = []; + this.undoDepth = prev ? prev.undoDepth : Infinity; + // Used to track when changes can be merged into a single undo + // event + this.lastModTime = this.lastSelTime = 0; + this.lastOp = this.lastSelOp = null; + this.lastOrigin = this.lastSelOrigin = null; + // Used by the isClean() method + this.generation = this.maxGeneration = prev ? prev.maxGeneration : 1; + } + + // Create a history change event from an updateDoc-style change + // object. + function historyChangeFromChange(doc, change) { + var histChange = {from: copyPos(change.from), to: changeEnd(change), text: getBetween(doc, change.from, change.to)}; + attachLocalSpans(doc, histChange, change.from.line, change.to.line + 1); + linkedDocs(doc, function (doc) { return attachLocalSpans(doc, histChange, change.from.line, change.to.line + 1); }, true); + return histChange + } + + // Pop all selection events off the end of a history array. Stop at + // a change event. + function clearSelectionEvents(array) { + while (array.length) { + var last = lst(array); + if (last.ranges) { array.pop(); } + else { break } + } + } + + // Find the top change event in the history. Pop off selection + // events that are in the way. + function lastChangeEvent(hist, force) { + if (force) { + clearSelectionEvents(hist.done); + return lst(hist.done) + } else if (hist.done.length && !lst(hist.done).ranges) { + return lst(hist.done) + } else if (hist.done.length > 1 && !hist.done[hist.done.length - 2].ranges) { + hist.done.pop(); + return lst(hist.done) + } + } + + // Register a change in the history. Merges changes that are within + // a single operation, or are close together with an origin that + // allows merging (starting with "+") into a single event. + function addChangeToHistory(doc, change, selAfter, opId) { + var hist = doc.history; + hist.undone.length = 0; + var time = +new Date, cur; + var last; + + if ((hist.lastOp == opId || + hist.lastOrigin == change.origin && change.origin && + ((change.origin.charAt(0) == "+" && hist.lastModTime > time - (doc.cm ? doc.cm.options.historyEventDelay : 500)) || + change.origin.charAt(0) == "*")) && + (cur = lastChangeEvent(hist, hist.lastOp == opId))) { + // Merge this change into the last event + last = lst(cur.changes); + if (cmp(change.from, change.to) == 0 && cmp(change.from, last.to) == 0) { + // Optimized case for simple insertion -- don't want to add + // new changesets for every character typed + last.to = changeEnd(change); + } else { + // Add new sub-event + cur.changes.push(historyChangeFromChange(doc, change)); + } + } else { + // Can not be merged, start a new event. + var before = lst(hist.done); + if (!before || !before.ranges) + { pushSelectionToHistory(doc.sel, hist.done); } + cur = {changes: [historyChangeFromChange(doc, change)], + generation: hist.generation}; + hist.done.push(cur); + while (hist.done.length > hist.undoDepth) { + hist.done.shift(); + if (!hist.done[0].ranges) { hist.done.shift(); } + } + } + hist.done.push(selAfter); + hist.generation = ++hist.maxGeneration; + hist.lastModTime = hist.lastSelTime = time; + hist.lastOp = hist.lastSelOp = opId; + hist.lastOrigin = hist.lastSelOrigin = change.origin; + + if (!last) { signal(doc, "historyAdded"); } + } + + function selectionEventCanBeMerged(doc, origin, prev, sel) { + var ch = origin.charAt(0); + return ch == "*" || + ch == "+" && + prev.ranges.length == sel.ranges.length && + prev.somethingSelected() == sel.somethingSelected() && + new Date - doc.history.lastSelTime <= (doc.cm ? doc.cm.options.historyEventDelay : 500) + } + + // Called whenever the selection changes, sets the new selection as + // the pending selection in the history, and pushes the old pending + // selection into the 'done' array when it was significantly + // different (in number of selected ranges, emptiness, or time). + function addSelectionToHistory(doc, sel, opId, options) { + var hist = doc.history, origin = options && options.origin; + + // A new event is started when the previous origin does not match + // the current, or the origins don't allow matching. Origins + // starting with * are always merged, those starting with + are + // merged when similar and close together in time. + if (opId == hist.lastSelOp || + (origin && hist.lastSelOrigin == origin && + (hist.lastModTime == hist.lastSelTime && hist.lastOrigin == origin || + selectionEventCanBeMerged(doc, origin, lst(hist.done), sel)))) + { hist.done[hist.done.length - 1] = sel; } + else + { pushSelectionToHistory(sel, hist.done); } + + hist.lastSelTime = +new Date; + hist.lastSelOrigin = origin; + hist.lastSelOp = opId; + if (options && options.clearRedo !== false) + { clearSelectionEvents(hist.undone); } + } + + function pushSelectionToHistory(sel, dest) { + var top = lst(dest); + if (!(top && top.ranges && top.equals(sel))) + { dest.push(sel); } + } + + // Used to store marked span information in the history. + function attachLocalSpans(doc, change, from, to) { + var existing = change["spans_" + doc.id], n = 0; + doc.iter(Math.max(doc.first, from), Math.min(doc.first + doc.size, to), function (line) { + if (line.markedSpans) + { (existing || (existing = change["spans_" + doc.id] = {}))[n] = line.markedSpans; } + ++n; + }); + } + + // When un/re-doing restores text containing marked spans, those + // that have been explicitly cleared should not be restored. + function removeClearedSpans(spans) { + if (!spans) { return null } + var out; + for (var i = 0; i < spans.length; ++i) { + if (spans[i].marker.explicitlyCleared) { if (!out) { out = spans.slice(0, i); } } + else if (out) { out.push(spans[i]); } + } + return !out ? spans : out.length ? out : null + } + + // Retrieve and filter the old marked spans stored in a change event. + function getOldSpans(doc, change) { + var found = change["spans_" + doc.id]; + if (!found) { return null } + var nw = []; + for (var i = 0; i < change.text.length; ++i) + { nw.push(removeClearedSpans(found[i])); } + return nw + } + + // Used for un/re-doing changes from the history. Combines the + // result of computing the existing spans with the set of spans that + // existed in the history (so that deleting around a span and then + // undoing brings back the span). + function mergeOldSpans(doc, change) { + var old = getOldSpans(doc, change); + var stretched = stretchSpansOverChange(doc, change); + if (!old) { return stretched } + if (!stretched) { return old } + + for (var i = 0; i < old.length; ++i) { + var oldCur = old[i], stretchCur = stretched[i]; + if (oldCur && stretchCur) { + spans: for (var j = 0; j < stretchCur.length; ++j) { + var span = stretchCur[j]; + for (var k = 0; k < oldCur.length; ++k) + { if (oldCur[k].marker == span.marker) { continue spans } } + oldCur.push(span); + } + } else if (stretchCur) { + old[i] = stretchCur; + } + } + return old + } + + // Used both to provide a JSON-safe object in .getHistory, and, when + // detaching a document, to split the history in two + function copyHistoryArray(events, newGroup, instantiateSel) { + var copy = []; + for (var i = 0; i < events.length; ++i) { + var event = events[i]; + if (event.ranges) { + copy.push(instantiateSel ? Selection.prototype.deepCopy.call(event) : event); + continue + } + var changes = event.changes, newChanges = []; + copy.push({changes: newChanges}); + for (var j = 0; j < changes.length; ++j) { + var change = changes[j], m = (void 0); + newChanges.push({from: change.from, to: change.to, text: change.text}); + if (newGroup) { for (var prop in change) { if (m = prop.match(/^spans_(\d+)$/)) { + if (indexOf(newGroup, Number(m[1])) > -1) { + lst(newChanges)[prop] = change[prop]; + delete change[prop]; + } + } } } + } + } + return copy + } + + // The 'scroll' parameter given to many of these indicated whether + // the new cursor position should be scrolled into view after + // modifying the selection. + + // If shift is held or the extend flag is set, extends a range to + // include a given position (and optionally a second position). + // Otherwise, simply returns the range between the given positions. + // Used for cursor motion and such. + function extendRange(range, head, other, extend) { + if (extend) { + var anchor = range.anchor; + if (other) { + var posBefore = cmp(head, anchor) < 0; + if (posBefore != (cmp(other, anchor) < 0)) { + anchor = head; + head = other; + } else if (posBefore != (cmp(head, other) < 0)) { + head = other; + } + } + return new Range(anchor, head) + } else { + return new Range(other || head, head) + } + } + + // Extend the primary selection range, discard the rest. + function extendSelection(doc, head, other, options, extend) { + if (extend == null) { extend = doc.cm && (doc.cm.display.shift || doc.extend); } + setSelection(doc, new Selection([extendRange(doc.sel.primary(), head, other, extend)], 0), options); + } + + // Extend all selections (pos is an array of selections with length + // equal the number of selections) + function extendSelections(doc, heads, options) { + var out = []; + var extend = doc.cm && (doc.cm.display.shift || doc.extend); + for (var i = 0; i < doc.sel.ranges.length; i++) + { out[i] = extendRange(doc.sel.ranges[i], heads[i], null, extend); } + var newSel = normalizeSelection(doc.cm, out, doc.sel.primIndex); + setSelection(doc, newSel, options); + } + + // Updates a single range in the selection. + function replaceOneSelection(doc, i, range, options) { + var ranges = doc.sel.ranges.slice(0); + ranges[i] = range; + setSelection(doc, normalizeSelection(doc.cm, ranges, doc.sel.primIndex), options); + } + + // Reset the selection to a single range. + function setSimpleSelection(doc, anchor, head, options) { + setSelection(doc, simpleSelection(anchor, head), options); + } + + // Give beforeSelectionChange handlers a change to influence a + // selection update. + function filterSelectionChange(doc, sel, options) { + var obj = { + ranges: sel.ranges, + update: function(ranges) { + this.ranges = []; + for (var i = 0; i < ranges.length; i++) + { this.ranges[i] = new Range(clipPos(doc, ranges[i].anchor), + clipPos(doc, ranges[i].head)); } + }, + origin: options && options.origin + }; + signal(doc, "beforeSelectionChange", doc, obj); + if (doc.cm) { signal(doc.cm, "beforeSelectionChange", doc.cm, obj); } + if (obj.ranges != sel.ranges) { return normalizeSelection(doc.cm, obj.ranges, obj.ranges.length - 1) } + else { return sel } + } + + function setSelectionReplaceHistory(doc, sel, options) { + var done = doc.history.done, last = lst(done); + if (last && last.ranges) { + done[done.length - 1] = sel; + setSelectionNoUndo(doc, sel, options); + } else { + setSelection(doc, sel, options); + } + } + + // Set a new selection. + function setSelection(doc, sel, options) { + setSelectionNoUndo(doc, sel, options); + addSelectionToHistory(doc, doc.sel, doc.cm ? doc.cm.curOp.id : NaN, options); + } + + function setSelectionNoUndo(doc, sel, options) { + if (hasHandler(doc, "beforeSelectionChange") || doc.cm && hasHandler(doc.cm, "beforeSelectionChange")) + { sel = filterSelectionChange(doc, sel, options); } + + var bias = options && options.bias || + (cmp(sel.primary().head, doc.sel.primary().head) < 0 ? -1 : 1); + setSelectionInner(doc, skipAtomicInSelection(doc, sel, bias, true)); + + if (!(options && options.scroll === false) && doc.cm && doc.cm.getOption("readOnly") != "nocursor") + { ensureCursorVisible(doc.cm); } + } + + function setSelectionInner(doc, sel) { + if (sel.equals(doc.sel)) { return } + + doc.sel = sel; + + if (doc.cm) { + doc.cm.curOp.updateInput = 1; + doc.cm.curOp.selectionChanged = true; + signalCursorActivity(doc.cm); + } + signalLater(doc, "cursorActivity", doc); + } + + // Verify that the selection does not partially select any atomic + // marked ranges. + function reCheckSelection(doc) { + setSelectionInner(doc, skipAtomicInSelection(doc, doc.sel, null, false)); + } + + // Return a selection that does not partially select any atomic + // ranges. + function skipAtomicInSelection(doc, sel, bias, mayClear) { + var out; + for (var i = 0; i < sel.ranges.length; i++) { + var range = sel.ranges[i]; + var old = sel.ranges.length == doc.sel.ranges.length && doc.sel.ranges[i]; + var newAnchor = skipAtomic(doc, range.anchor, old && old.anchor, bias, mayClear); + var newHead = range.head == range.anchor ? newAnchor : skipAtomic(doc, range.head, old && old.head, bias, mayClear); + if (out || newAnchor != range.anchor || newHead != range.head) { + if (!out) { out = sel.ranges.slice(0, i); } + out[i] = new Range(newAnchor, newHead); + } + } + return out ? normalizeSelection(doc.cm, out, sel.primIndex) : sel + } + + function skipAtomicInner(doc, pos, oldPos, dir, mayClear) { + var line = getLine(doc, pos.line); + if (line.markedSpans) { for (var i = 0; i < line.markedSpans.length; ++i) { + var sp = line.markedSpans[i], m = sp.marker; + + // Determine if we should prevent the cursor being placed to the left/right of an atomic marker + // Historically this was determined using the inclusiveLeft/Right option, but the new way to control it + // is with selectLeft/Right + var preventCursorLeft = ("selectLeft" in m) ? !m.selectLeft : m.inclusiveLeft; + var preventCursorRight = ("selectRight" in m) ? !m.selectRight : m.inclusiveRight; + + if ((sp.from == null || (preventCursorLeft ? sp.from <= pos.ch : sp.from < pos.ch)) && + (sp.to == null || (preventCursorRight ? sp.to >= pos.ch : sp.to > pos.ch))) { + if (mayClear) { + signal(m, "beforeCursorEnter"); + if (m.explicitlyCleared) { + if (!line.markedSpans) { break } + else {--i; continue} + } + } + if (!m.atomic) { continue } + + if (oldPos) { + var near = m.find(dir < 0 ? 1 : -1), diff = (void 0); + if (dir < 0 ? preventCursorRight : preventCursorLeft) + { near = movePos(doc, near, -dir, near && near.line == pos.line ? line : null); } + if (near && near.line == pos.line && (diff = cmp(near, oldPos)) && (dir < 0 ? diff < 0 : diff > 0)) + { return skipAtomicInner(doc, near, pos, dir, mayClear) } + } + + var far = m.find(dir < 0 ? -1 : 1); + if (dir < 0 ? preventCursorLeft : preventCursorRight) + { far = movePos(doc, far, dir, far.line == pos.line ? line : null); } + return far ? skipAtomicInner(doc, far, pos, dir, mayClear) : null + } + } } + return pos + } + + // Ensure a given position is not inside an atomic range. + function skipAtomic(doc, pos, oldPos, bias, mayClear) { + var dir = bias || 1; + var found = skipAtomicInner(doc, pos, oldPos, dir, mayClear) || + (!mayClear && skipAtomicInner(doc, pos, oldPos, dir, true)) || + skipAtomicInner(doc, pos, oldPos, -dir, mayClear) || + (!mayClear && skipAtomicInner(doc, pos, oldPos, -dir, true)); + if (!found) { + doc.cantEdit = true; + return Pos(doc.first, 0) + } + return found + } + + function movePos(doc, pos, dir, line) { + if (dir < 0 && pos.ch == 0) { + if (pos.line > doc.first) { return clipPos(doc, Pos(pos.line - 1)) } + else { return null } + } else if (dir > 0 && pos.ch == (line || getLine(doc, pos.line)).text.length) { + if (pos.line < doc.first + doc.size - 1) { return Pos(pos.line + 1, 0) } + else { return null } + } else { + return new Pos(pos.line, pos.ch + dir) + } + } + + function selectAll(cm) { + cm.setSelection(Pos(cm.firstLine(), 0), Pos(cm.lastLine()), sel_dontScroll); + } + + // UPDATING + + // Allow "beforeChange" event handlers to influence a change + function filterChange(doc, change, update) { + var obj = { + canceled: false, + from: change.from, + to: change.to, + text: change.text, + origin: change.origin, + cancel: function () { return obj.canceled = true; } + }; + if (update) { obj.update = function (from, to, text, origin) { + if (from) { obj.from = clipPos(doc, from); } + if (to) { obj.to = clipPos(doc, to); } + if (text) { obj.text = text; } + if (origin !== undefined) { obj.origin = origin; } + }; } + signal(doc, "beforeChange", doc, obj); + if (doc.cm) { signal(doc.cm, "beforeChange", doc.cm, obj); } + + if (obj.canceled) { + if (doc.cm) { doc.cm.curOp.updateInput = 2; } + return null + } + return {from: obj.from, to: obj.to, text: obj.text, origin: obj.origin} + } + + // Apply a change to a document, and add it to the document's + // history, and propagating it to all linked documents. + function makeChange(doc, change, ignoreReadOnly) { + if (doc.cm) { + if (!doc.cm.curOp) { return operation(doc.cm, makeChange)(doc, change, ignoreReadOnly) } + if (doc.cm.state.suppressEdits) { return } + } + + if (hasHandler(doc, "beforeChange") || doc.cm && hasHandler(doc.cm, "beforeChange")) { + change = filterChange(doc, change, true); + if (!change) { return } + } + + // Possibly split or suppress the update based on the presence + // of read-only spans in its range. + var split = sawReadOnlySpans && !ignoreReadOnly && removeReadOnlyRanges(doc, change.from, change.to); + if (split) { + for (var i = split.length - 1; i >= 0; --i) + { makeChangeInner(doc, {from: split[i].from, to: split[i].to, text: i ? [""] : change.text, origin: change.origin}); } + } else { + makeChangeInner(doc, change); + } + } + + function makeChangeInner(doc, change) { + if (change.text.length == 1 && change.text[0] == "" && cmp(change.from, change.to) == 0) { return } + var selAfter = computeSelAfterChange(doc, change); + addChangeToHistory(doc, change, selAfter, doc.cm ? doc.cm.curOp.id : NaN); + + makeChangeSingleDoc(doc, change, selAfter, stretchSpansOverChange(doc, change)); + var rebased = []; + + linkedDocs(doc, function (doc, sharedHist) { + if (!sharedHist && indexOf(rebased, doc.history) == -1) { + rebaseHist(doc.history, change); + rebased.push(doc.history); + } + makeChangeSingleDoc(doc, change, null, stretchSpansOverChange(doc, change)); + }); + } + + // Revert a change stored in a document's history. + function makeChangeFromHistory(doc, type, allowSelectionOnly) { + var suppress = doc.cm && doc.cm.state.suppressEdits; + if (suppress && !allowSelectionOnly) { return } + + var hist = doc.history, event, selAfter = doc.sel; + var source = type == "undo" ? hist.done : hist.undone, dest = type == "undo" ? hist.undone : hist.done; + + // Verify that there is a useable event (so that ctrl-z won't + // needlessly clear selection events) + var i = 0; + for (; i < source.length; i++) { + event = source[i]; + if (allowSelectionOnly ? event.ranges && !event.equals(doc.sel) : !event.ranges) + { break } + } + if (i == source.length) { return } + hist.lastOrigin = hist.lastSelOrigin = null; + + for (;;) { + event = source.pop(); + if (event.ranges) { + pushSelectionToHistory(event, dest); + if (allowSelectionOnly && !event.equals(doc.sel)) { + setSelection(doc, event, {clearRedo: false}); + return + } + selAfter = event; + } else if (suppress) { + source.push(event); + return + } else { break } + } + + // Build up a reverse change object to add to the opposite history + // stack (redo when undoing, and vice versa). + var antiChanges = []; + pushSelectionToHistory(selAfter, dest); + dest.push({changes: antiChanges, generation: hist.generation}); + hist.generation = event.generation || ++hist.maxGeneration; + + var filter = hasHandler(doc, "beforeChange") || doc.cm && hasHandler(doc.cm, "beforeChange"); + + var loop = function ( i ) { + var change = event.changes[i]; + change.origin = type; + if (filter && !filterChange(doc, change, false)) { + source.length = 0; + return {} + } + + antiChanges.push(historyChangeFromChange(doc, change)); + + var after = i ? computeSelAfterChange(doc, change) : lst(source); + makeChangeSingleDoc(doc, change, after, mergeOldSpans(doc, change)); + if (!i && doc.cm) { doc.cm.scrollIntoView({from: change.from, to: changeEnd(change)}); } + var rebased = []; + + // Propagate to the linked documents + linkedDocs(doc, function (doc, sharedHist) { + if (!sharedHist && indexOf(rebased, doc.history) == -1) { + rebaseHist(doc.history, change); + rebased.push(doc.history); + } + makeChangeSingleDoc(doc, change, null, mergeOldSpans(doc, change)); + }); + }; + + for (var i$1 = event.changes.length - 1; i$1 >= 0; --i$1) { + var returned = loop( i$1 ); + + if ( returned ) return returned.v; + } + } + + // Sub-views need their line numbers shifted when text is added + // above or below them in the parent document. + function shiftDoc(doc, distance) { + if (distance == 0) { return } + doc.first += distance; + doc.sel = new Selection(map(doc.sel.ranges, function (range) { return new Range( + Pos(range.anchor.line + distance, range.anchor.ch), + Pos(range.head.line + distance, range.head.ch) + ); }), doc.sel.primIndex); + if (doc.cm) { + regChange(doc.cm, doc.first, doc.first - distance, distance); + for (var d = doc.cm.display, l = d.viewFrom; l < d.viewTo; l++) + { regLineChange(doc.cm, l, "gutter"); } + } + } + + // More lower-level change function, handling only a single document + // (not linked ones). + function makeChangeSingleDoc(doc, change, selAfter, spans) { + if (doc.cm && !doc.cm.curOp) + { return operation(doc.cm, makeChangeSingleDoc)(doc, change, selAfter, spans) } + + if (change.to.line < doc.first) { + shiftDoc(doc, change.text.length - 1 - (change.to.line - change.from.line)); + return + } + if (change.from.line > doc.lastLine()) { return } + + // Clip the change to the size of this doc + if (change.from.line < doc.first) { + var shift = change.text.length - 1 - (doc.first - change.from.line); + shiftDoc(doc, shift); + change = {from: Pos(doc.first, 0), to: Pos(change.to.line + shift, change.to.ch), + text: [lst(change.text)], origin: change.origin}; + } + var last = doc.lastLine(); + if (change.to.line > last) { + change = {from: change.from, to: Pos(last, getLine(doc, last).text.length), + text: [change.text[0]], origin: change.origin}; + } + + change.removed = getBetween(doc, change.from, change.to); + + if (!selAfter) { selAfter = computeSelAfterChange(doc, change); } + if (doc.cm) { makeChangeSingleDocInEditor(doc.cm, change, spans); } + else { updateDoc(doc, change, spans); } + setSelectionNoUndo(doc, selAfter, sel_dontScroll); + + if (doc.cantEdit && skipAtomic(doc, Pos(doc.firstLine(), 0))) + { doc.cantEdit = false; } + } + + // Handle the interaction of a change to a document with the editor + // that this document is part of. + function makeChangeSingleDocInEditor(cm, change, spans) { + var doc = cm.doc, display = cm.display, from = change.from, to = change.to; + + var recomputeMaxLength = false, checkWidthStart = from.line; + if (!cm.options.lineWrapping) { + checkWidthStart = lineNo(visualLine(getLine(doc, from.line))); + doc.iter(checkWidthStart, to.line + 1, function (line) { + if (line == display.maxLine) { + recomputeMaxLength = true; + return true + } + }); + } + + if (doc.sel.contains(change.from, change.to) > -1) + { signalCursorActivity(cm); } + + updateDoc(doc, change, spans, estimateHeight(cm)); + + if (!cm.options.lineWrapping) { + doc.iter(checkWidthStart, from.line + change.text.length, function (line) { + var len = lineLength(line); + if (len > display.maxLineLength) { + display.maxLine = line; + display.maxLineLength = len; + display.maxLineChanged = true; + recomputeMaxLength = false; + } + }); + if (recomputeMaxLength) { cm.curOp.updateMaxLine = true; } + } + + retreatFrontier(doc, from.line); + startWorker(cm, 400); + + var lendiff = change.text.length - (to.line - from.line) - 1; + // Remember that these lines changed, for updating the display + if (change.full) + { regChange(cm); } + else if (from.line == to.line && change.text.length == 1 && !isWholeLineUpdate(cm.doc, change)) + { regLineChange(cm, from.line, "text"); } + else + { regChange(cm, from.line, to.line + 1, lendiff); } + + var changesHandler = hasHandler(cm, "changes"), changeHandler = hasHandler(cm, "change"); + if (changeHandler || changesHandler) { + var obj = { + from: from, to: to, + text: change.text, + removed: change.removed, + origin: change.origin + }; + if (changeHandler) { signalLater(cm, "change", cm, obj); } + if (changesHandler) { (cm.curOp.changeObjs || (cm.curOp.changeObjs = [])).push(obj); } + } + cm.display.selForContextMenu = null; + } + + function replaceRange(doc, code, from, to, origin) { + var assign; + + if (!to) { to = from; } + if (cmp(to, from) < 0) { (assign = [to, from], from = assign[0], to = assign[1]); } + if (typeof code == "string") { code = doc.splitLines(code); } + makeChange(doc, {from: from, to: to, text: code, origin: origin}); + } + + // Rebasing/resetting history to deal with externally-sourced changes + + function rebaseHistSelSingle(pos, from, to, diff) { + if (to < pos.line) { + pos.line += diff; + } else if (from < pos.line) { + pos.line = from; + pos.ch = 0; + } + } + + // Tries to rebase an array of history events given a change in the + // document. If the change touches the same lines as the event, the + // event, and everything 'behind' it, is discarded. If the change is + // before the event, the event's positions are updated. Uses a + // copy-on-write scheme for the positions, to avoid having to + // reallocate them all on every rebase, but also avoid problems with + // shared position objects being unsafely updated. + function rebaseHistArray(array, from, to, diff) { + for (var i = 0; i < array.length; ++i) { + var sub = array[i], ok = true; + if (sub.ranges) { + if (!sub.copied) { sub = array[i] = sub.deepCopy(); sub.copied = true; } + for (var j = 0; j < sub.ranges.length; j++) { + rebaseHistSelSingle(sub.ranges[j].anchor, from, to, diff); + rebaseHistSelSingle(sub.ranges[j].head, from, to, diff); + } + continue + } + for (var j$1 = 0; j$1 < sub.changes.length; ++j$1) { + var cur = sub.changes[j$1]; + if (to < cur.from.line) { + cur.from = Pos(cur.from.line + diff, cur.from.ch); + cur.to = Pos(cur.to.line + diff, cur.to.ch); + } else if (from <= cur.to.line) { + ok = false; + break + } + } + if (!ok) { + array.splice(0, i + 1); + i = 0; + } + } + } + + function rebaseHist(hist, change) { + var from = change.from.line, to = change.to.line, diff = change.text.length - (to - from) - 1; + rebaseHistArray(hist.done, from, to, diff); + rebaseHistArray(hist.undone, from, to, diff); + } + + // Utility for applying a change to a line by handle or number, + // returning the number and optionally registering the line as + // changed. + function changeLine(doc, handle, changeType, op) { + var no = handle, line = handle; + if (typeof handle == "number") { line = getLine(doc, clipLine(doc, handle)); } + else { no = lineNo(handle); } + if (no == null) { return null } + if (op(line, no) && doc.cm) { regLineChange(doc.cm, no, changeType); } + return line + } + + // The document is represented as a BTree consisting of leaves, with + // chunk of lines in them, and branches, with up to ten leaves or + // other branch nodes below them. The top node is always a branch + // node, and is the document object itself (meaning it has + // additional methods and properties). + // + // All nodes have parent links. The tree is used both to go from + // line numbers to line objects, and to go from objects to numbers. + // It also indexes by height, and is used to convert between height + // and line object, and to find the total height of the document. + // + // See also http://marijnhaverbeke.nl/blog/codemirror-line-tree.html + + function LeafChunk(lines) { + this.lines = lines; + this.parent = null; + var height = 0; + for (var i = 0; i < lines.length; ++i) { + lines[i].parent = this; + height += lines[i].height; + } + this.height = height; + } + + LeafChunk.prototype = { + chunkSize: function() { return this.lines.length }, + + // Remove the n lines at offset 'at'. + removeInner: function(at, n) { + for (var i = at, e = at + n; i < e; ++i) { + var line = this.lines[i]; + this.height -= line.height; + cleanUpLine(line); + signalLater(line, "delete"); + } + this.lines.splice(at, n); + }, + + // Helper used to collapse a small branch into a single leaf. + collapse: function(lines) { + lines.push.apply(lines, this.lines); + }, + + // Insert the given array of lines at offset 'at', count them as + // having the given height. + insertInner: function(at, lines, height) { + this.height += height; + this.lines = this.lines.slice(0, at).concat(lines).concat(this.lines.slice(at)); + for (var i = 0; i < lines.length; ++i) { lines[i].parent = this; } + }, + + // Used to iterate over a part of the tree. + iterN: function(at, n, op) { + for (var e = at + n; at < e; ++at) + { if (op(this.lines[at])) { return true } } + } + }; + + function BranchChunk(children) { + this.children = children; + var size = 0, height = 0; + for (var i = 0; i < children.length; ++i) { + var ch = children[i]; + size += ch.chunkSize(); height += ch.height; + ch.parent = this; + } + this.size = size; + this.height = height; + this.parent = null; + } + + BranchChunk.prototype = { + chunkSize: function() { return this.size }, + + removeInner: function(at, n) { + this.size -= n; + for (var i = 0; i < this.children.length; ++i) { + var child = this.children[i], sz = child.chunkSize(); + if (at < sz) { + var rm = Math.min(n, sz - at), oldHeight = child.height; + child.removeInner(at, rm); + this.height -= oldHeight - child.height; + if (sz == rm) { this.children.splice(i--, 1); child.parent = null; } + if ((n -= rm) == 0) { break } + at = 0; + } else { at -= sz; } + } + // If the result is smaller than 25 lines, ensure that it is a + // single leaf node. + if (this.size - n < 25 && + (this.children.length > 1 || !(this.children[0] instanceof LeafChunk))) { + var lines = []; + this.collapse(lines); + this.children = [new LeafChunk(lines)]; + this.children[0].parent = this; + } + }, + + collapse: function(lines) { + for (var i = 0; i < this.children.length; ++i) { this.children[i].collapse(lines); } + }, + + insertInner: function(at, lines, height) { + this.size += lines.length; + this.height += height; + for (var i = 0; i < this.children.length; ++i) { + var child = this.children[i], sz = child.chunkSize(); + if (at <= sz) { + child.insertInner(at, lines, height); + if (child.lines && child.lines.length > 50) { + // To avoid memory thrashing when child.lines is huge (e.g. first view of a large file), it's never spliced. + // Instead, small slices are taken. They're taken in order because sequential memory accesses are fastest. + var remaining = child.lines.length % 25 + 25; + for (var pos = remaining; pos < child.lines.length;) { + var leaf = new LeafChunk(child.lines.slice(pos, pos += 25)); + child.height -= leaf.height; + this.children.splice(++i, 0, leaf); + leaf.parent = this; + } + child.lines = child.lines.slice(0, remaining); + this.maybeSpill(); + } + break + } + at -= sz; + } + }, + + // When a node has grown, check whether it should be split. + maybeSpill: function() { + if (this.children.length <= 10) { return } + var me = this; + do { + var spilled = me.children.splice(me.children.length - 5, 5); + var sibling = new BranchChunk(spilled); + if (!me.parent) { // Become the parent node + var copy = new BranchChunk(me.children); + copy.parent = me; + me.children = [copy, sibling]; + me = copy; + } else { + me.size -= sibling.size; + me.height -= sibling.height; + var myIndex = indexOf(me.parent.children, me); + me.parent.children.splice(myIndex + 1, 0, sibling); + } + sibling.parent = me.parent; + } while (me.children.length > 10) + me.parent.maybeSpill(); + }, + + iterN: function(at, n, op) { + for (var i = 0; i < this.children.length; ++i) { + var child = this.children[i], sz = child.chunkSize(); + if (at < sz) { + var used = Math.min(n, sz - at); + if (child.iterN(at, used, op)) { return true } + if ((n -= used) == 0) { break } + at = 0; + } else { at -= sz; } + } + } + }; + + // Line widgets are block elements displayed above or below a line. + + var LineWidget = function(doc, node, options) { + if (options) { for (var opt in options) { if (options.hasOwnProperty(opt)) + { this[opt] = options[opt]; } } } + this.doc = doc; + this.node = node; + }; + + LineWidget.prototype.clear = function () { + var cm = this.doc.cm, ws = this.line.widgets, line = this.line, no = lineNo(line); + if (no == null || !ws) { return } + for (var i = 0; i < ws.length; ++i) { if (ws[i] == this) { ws.splice(i--, 1); } } + if (!ws.length) { line.widgets = null; } + var height = widgetHeight(this); + updateLineHeight(line, Math.max(0, line.height - height)); + if (cm) { + runInOp(cm, function () { + adjustScrollWhenAboveVisible(cm, line, -height); + regLineChange(cm, no, "widget"); + }); + signalLater(cm, "lineWidgetCleared", cm, this, no); + } + }; + + LineWidget.prototype.changed = function () { + var this$1 = this; + + var oldH = this.height, cm = this.doc.cm, line = this.line; + this.height = null; + var diff = widgetHeight(this) - oldH; + if (!diff) { return } + if (!lineIsHidden(this.doc, line)) { updateLineHeight(line, line.height + diff); } + if (cm) { + runInOp(cm, function () { + cm.curOp.forceUpdate = true; + adjustScrollWhenAboveVisible(cm, line, diff); + signalLater(cm, "lineWidgetChanged", cm, this$1, lineNo(line)); + }); + } + }; + eventMixin(LineWidget); + + function adjustScrollWhenAboveVisible(cm, line, diff) { + if (heightAtLine(line) < ((cm.curOp && cm.curOp.scrollTop) || cm.doc.scrollTop)) + { addToScrollTop(cm, diff); } + } + + function addLineWidget(doc, handle, node, options) { + var widget = new LineWidget(doc, node, options); + var cm = doc.cm; + if (cm && widget.noHScroll) { cm.display.alignWidgets = true; } + changeLine(doc, handle, "widget", function (line) { + var widgets = line.widgets || (line.widgets = []); + if (widget.insertAt == null) { widgets.push(widget); } + else { widgets.splice(Math.min(widgets.length, Math.max(0, widget.insertAt)), 0, widget); } + widget.line = line; + if (cm && !lineIsHidden(doc, line)) { + var aboveVisible = heightAtLine(line) < doc.scrollTop; + updateLineHeight(line, line.height + widgetHeight(widget)); + if (aboveVisible) { addToScrollTop(cm, widget.height); } + cm.curOp.forceUpdate = true; + } + return true + }); + if (cm) { signalLater(cm, "lineWidgetAdded", cm, widget, typeof handle == "number" ? handle : lineNo(handle)); } + return widget + } + + // TEXTMARKERS + + // Created with markText and setBookmark methods. A TextMarker is a + // handle that can be used to clear or find a marked position in the + // document. Line objects hold arrays (markedSpans) containing + // {from, to, marker} object pointing to such marker objects, and + // indicating that such a marker is present on that line. Multiple + // lines may point to the same marker when it spans across lines. + // The spans will have null for their from/to properties when the + // marker continues beyond the start/end of the line. Markers have + // links back to the lines they currently touch. + + // Collapsed markers have unique ids, in order to be able to order + // them, which is needed for uniquely determining an outer marker + // when they overlap (they may nest, but not partially overlap). + var nextMarkerId = 0; + + var TextMarker = function(doc, type) { + this.lines = []; + this.type = type; + this.doc = doc; + this.id = ++nextMarkerId; + }; + + // Clear the marker. + TextMarker.prototype.clear = function () { + if (this.explicitlyCleared) { return } + var cm = this.doc.cm, withOp = cm && !cm.curOp; + if (withOp) { startOperation(cm); } + if (hasHandler(this, "clear")) { + var found = this.find(); + if (found) { signalLater(this, "clear", found.from, found.to); } + } + var min = null, max = null; + for (var i = 0; i < this.lines.length; ++i) { + var line = this.lines[i]; + var span = getMarkedSpanFor(line.markedSpans, this); + if (cm && !this.collapsed) { regLineChange(cm, lineNo(line), "text"); } + else if (cm) { + if (span.to != null) { max = lineNo(line); } + if (span.from != null) { min = lineNo(line); } + } + line.markedSpans = removeMarkedSpan(line.markedSpans, span); + if (span.from == null && this.collapsed && !lineIsHidden(this.doc, line) && cm) + { updateLineHeight(line, textHeight(cm.display)); } + } + if (cm && this.collapsed && !cm.options.lineWrapping) { for (var i$1 = 0; i$1 < this.lines.length; ++i$1) { + var visual = visualLine(this.lines[i$1]), len = lineLength(visual); + if (len > cm.display.maxLineLength) { + cm.display.maxLine = visual; + cm.display.maxLineLength = len; + cm.display.maxLineChanged = true; + } + } } + + if (min != null && cm && this.collapsed) { regChange(cm, min, max + 1); } + this.lines.length = 0; + this.explicitlyCleared = true; + if (this.atomic && this.doc.cantEdit) { + this.doc.cantEdit = false; + if (cm) { reCheckSelection(cm.doc); } + } + if (cm) { signalLater(cm, "markerCleared", cm, this, min, max); } + if (withOp) { endOperation(cm); } + if (this.parent) { this.parent.clear(); } + }; + + // Find the position of the marker in the document. Returns a {from, + // to} object by default. Side can be passed to get a specific side + // -- 0 (both), -1 (left), or 1 (right). When lineObj is true, the + // Pos objects returned contain a line object, rather than a line + // number (used to prevent looking up the same line twice). + TextMarker.prototype.find = function (side, lineObj) { + if (side == null && this.type == "bookmark") { side = 1; } + var from, to; + for (var i = 0; i < this.lines.length; ++i) { + var line = this.lines[i]; + var span = getMarkedSpanFor(line.markedSpans, this); + if (span.from != null) { + from = Pos(lineObj ? line : lineNo(line), span.from); + if (side == -1) { return from } + } + if (span.to != null) { + to = Pos(lineObj ? line : lineNo(line), span.to); + if (side == 1) { return to } + } + } + return from && {from: from, to: to} + }; + + // Signals that the marker's widget changed, and surrounding layout + // should be recomputed. + TextMarker.prototype.changed = function () { + var this$1 = this; + + var pos = this.find(-1, true), widget = this, cm = this.doc.cm; + if (!pos || !cm) { return } + runInOp(cm, function () { + var line = pos.line, lineN = lineNo(pos.line); + var view = findViewForLine(cm, lineN); + if (view) { + clearLineMeasurementCacheFor(view); + cm.curOp.selectionChanged = cm.curOp.forceUpdate = true; + } + cm.curOp.updateMaxLine = true; + if (!lineIsHidden(widget.doc, line) && widget.height != null) { + var oldHeight = widget.height; + widget.height = null; + var dHeight = widgetHeight(widget) - oldHeight; + if (dHeight) + { updateLineHeight(line, line.height + dHeight); } + } + signalLater(cm, "markerChanged", cm, this$1); + }); + }; + + TextMarker.prototype.attachLine = function (line) { + if (!this.lines.length && this.doc.cm) { + var op = this.doc.cm.curOp; + if (!op.maybeHiddenMarkers || indexOf(op.maybeHiddenMarkers, this) == -1) + { (op.maybeUnhiddenMarkers || (op.maybeUnhiddenMarkers = [])).push(this); } + } + this.lines.push(line); + }; + + TextMarker.prototype.detachLine = function (line) { + this.lines.splice(indexOf(this.lines, line), 1); + if (!this.lines.length && this.doc.cm) { + var op = this.doc.cm.curOp + ;(op.maybeHiddenMarkers || (op.maybeHiddenMarkers = [])).push(this); + } + }; + eventMixin(TextMarker); + + // Create a marker, wire it up to the right lines, and + function markText(doc, from, to, options, type) { + // Shared markers (across linked documents) are handled separately + // (markTextShared will call out to this again, once per + // document). + if (options && options.shared) { return markTextShared(doc, from, to, options, type) } + // Ensure we are in an operation. + if (doc.cm && !doc.cm.curOp) { return operation(doc.cm, markText)(doc, from, to, options, type) } + + var marker = new TextMarker(doc, type), diff = cmp(from, to); + if (options) { copyObj(options, marker, false); } + // Don't connect empty markers unless clearWhenEmpty is false + if (diff > 0 || diff == 0 && marker.clearWhenEmpty !== false) + { return marker } + if (marker.replacedWith) { + // Showing up as a widget implies collapsed (widget replaces text) + marker.collapsed = true; + marker.widgetNode = eltP("span", [marker.replacedWith], "CodeMirror-widget"); + if (!options.handleMouseEvents) { marker.widgetNode.setAttribute("cm-ignore-events", "true"); } + if (options.insertLeft) { marker.widgetNode.insertLeft = true; } + } + if (marker.collapsed) { + if (conflictingCollapsedRange(doc, from.line, from, to, marker) || + from.line != to.line && conflictingCollapsedRange(doc, to.line, from, to, marker)) + { throw new Error("Inserting collapsed marker partially overlapping an existing one") } + seeCollapsedSpans(); + } + + if (marker.addToHistory) + { addChangeToHistory(doc, {from: from, to: to, origin: "markText"}, doc.sel, NaN); } + + var curLine = from.line, cm = doc.cm, updateMaxLine; + doc.iter(curLine, to.line + 1, function (line) { + if (cm && marker.collapsed && !cm.options.lineWrapping && visualLine(line) == cm.display.maxLine) + { updateMaxLine = true; } + if (marker.collapsed && curLine != from.line) { updateLineHeight(line, 0); } + addMarkedSpan(line, new MarkedSpan(marker, + curLine == from.line ? from.ch : null, + curLine == to.line ? to.ch : null), doc.cm && doc.cm.curOp); + ++curLine; + }); + // lineIsHidden depends on the presence of the spans, so needs a second pass + if (marker.collapsed) { doc.iter(from.line, to.line + 1, function (line) { + if (lineIsHidden(doc, line)) { updateLineHeight(line, 0); } + }); } + + if (marker.clearOnEnter) { on(marker, "beforeCursorEnter", function () { return marker.clear(); }); } + + if (marker.readOnly) { + seeReadOnlySpans(); + if (doc.history.done.length || doc.history.undone.length) + { doc.clearHistory(); } + } + if (marker.collapsed) { + marker.id = ++nextMarkerId; + marker.atomic = true; + } + if (cm) { + // Sync editor state + if (updateMaxLine) { cm.curOp.updateMaxLine = true; } + if (marker.collapsed) + { regChange(cm, from.line, to.line + 1); } + else if (marker.className || marker.startStyle || marker.endStyle || marker.css || + marker.attributes || marker.title) + { for (var i = from.line; i <= to.line; i++) { regLineChange(cm, i, "text"); } } + if (marker.atomic) { reCheckSelection(cm.doc); } + signalLater(cm, "markerAdded", cm, marker); + } + return marker + } + + // SHARED TEXTMARKERS + + // A shared marker spans multiple linked documents. It is + // implemented as a meta-marker-object controlling multiple normal + // markers. + var SharedTextMarker = function(markers, primary) { + this.markers = markers; + this.primary = primary; + for (var i = 0; i < markers.length; ++i) + { markers[i].parent = this; } + }; + + SharedTextMarker.prototype.clear = function () { + if (this.explicitlyCleared) { return } + this.explicitlyCleared = true; + for (var i = 0; i < this.markers.length; ++i) + { this.markers[i].clear(); } + signalLater(this, "clear"); + }; + + SharedTextMarker.prototype.find = function (side, lineObj) { + return this.primary.find(side, lineObj) + }; + eventMixin(SharedTextMarker); + + function markTextShared(doc, from, to, options, type) { + options = copyObj(options); + options.shared = false; + var markers = [markText(doc, from, to, options, type)], primary = markers[0]; + var widget = options.widgetNode; + linkedDocs(doc, function (doc) { + if (widget) { options.widgetNode = widget.cloneNode(true); } + markers.push(markText(doc, clipPos(doc, from), clipPos(doc, to), options, type)); + for (var i = 0; i < doc.linked.length; ++i) + { if (doc.linked[i].isParent) { return } } + primary = lst(markers); + }); + return new SharedTextMarker(markers, primary) + } + + function findSharedMarkers(doc) { + return doc.findMarks(Pos(doc.first, 0), doc.clipPos(Pos(doc.lastLine())), function (m) { return m.parent; }) + } + + function copySharedMarkers(doc, markers) { + for (var i = 0; i < markers.length; i++) { + var marker = markers[i], pos = marker.find(); + var mFrom = doc.clipPos(pos.from), mTo = doc.clipPos(pos.to); + if (cmp(mFrom, mTo)) { + var subMark = markText(doc, mFrom, mTo, marker.primary, marker.primary.type); + marker.markers.push(subMark); + subMark.parent = marker; + } + } + } + + function detachSharedMarkers(markers) { + var loop = function ( i ) { + var marker = markers[i], linked = [marker.primary.doc]; + linkedDocs(marker.primary.doc, function (d) { return linked.push(d); }); + for (var j = 0; j < marker.markers.length; j++) { + var subMarker = marker.markers[j]; + if (indexOf(linked, subMarker.doc) == -1) { + subMarker.parent = null; + marker.markers.splice(j--, 1); + } + } + }; + + for (var i = 0; i < markers.length; i++) loop( i ); + } + + var nextDocId = 0; + var Doc = function(text, mode, firstLine, lineSep, direction) { + if (!(this instanceof Doc)) { return new Doc(text, mode, firstLine, lineSep, direction) } + if (firstLine == null) { firstLine = 0; } + + BranchChunk.call(this, [new LeafChunk([new Line("", null)])]); + this.first = firstLine; + this.scrollTop = this.scrollLeft = 0; + this.cantEdit = false; + this.cleanGeneration = 1; + this.modeFrontier = this.highlightFrontier = firstLine; + var start = Pos(firstLine, 0); + this.sel = simpleSelection(start); + this.history = new History(null); + this.id = ++nextDocId; + this.modeOption = mode; + this.lineSep = lineSep; + this.direction = (direction == "rtl") ? "rtl" : "ltr"; + this.extend = false; + + if (typeof text == "string") { text = this.splitLines(text); } + updateDoc(this, {from: start, to: start, text: text}); + setSelection(this, simpleSelection(start), sel_dontScroll); + }; + + Doc.prototype = createObj(BranchChunk.prototype, { + constructor: Doc, + // Iterate over the document. Supports two forms -- with only one + // argument, it calls that for each line in the document. With + // three, it iterates over the range given by the first two (with + // the second being non-inclusive). + iter: function(from, to, op) { + if (op) { this.iterN(from - this.first, to - from, op); } + else { this.iterN(this.first, this.first + this.size, from); } + }, + + // Non-public interface for adding and removing lines. + insert: function(at, lines) { + var height = 0; + for (var i = 0; i < lines.length; ++i) { height += lines[i].height; } + this.insertInner(at - this.first, lines, height); + }, + remove: function(at, n) { this.removeInner(at - this.first, n); }, + + // From here, the methods are part of the public interface. Most + // are also available from CodeMirror (editor) instances. + + getValue: function(lineSep) { + var lines = getLines(this, this.first, this.first + this.size); + if (lineSep === false) { return lines } + return lines.join(lineSep || this.lineSeparator()) + }, + setValue: docMethodOp(function(code) { + var top = Pos(this.first, 0), last = this.first + this.size - 1; + makeChange(this, {from: top, to: Pos(last, getLine(this, last).text.length), + text: this.splitLines(code), origin: "setValue", full: true}, true); + if (this.cm) { scrollToCoords(this.cm, 0, 0); } + setSelection(this, simpleSelection(top), sel_dontScroll); + }), + replaceRange: function(code, from, to, origin) { + from = clipPos(this, from); + to = to ? clipPos(this, to) : from; + replaceRange(this, code, from, to, origin); + }, + getRange: function(from, to, lineSep) { + var lines = getBetween(this, clipPos(this, from), clipPos(this, to)); + if (lineSep === false) { return lines } + if (lineSep === '') { return lines.join('') } + return lines.join(lineSep || this.lineSeparator()) + }, + + getLine: function(line) {var l = this.getLineHandle(line); return l && l.text}, + + getLineHandle: function(line) {if (isLine(this, line)) { return getLine(this, line) }}, + getLineNumber: function(line) {return lineNo(line)}, + + getLineHandleVisualStart: function(line) { + if (typeof line == "number") { line = getLine(this, line); } + return visualLine(line) + }, + + lineCount: function() {return this.size}, + firstLine: function() {return this.first}, + lastLine: function() {return this.first + this.size - 1}, + + clipPos: function(pos) {return clipPos(this, pos)}, + + getCursor: function(start) { + var range = this.sel.primary(), pos; + if (start == null || start == "head") { pos = range.head; } + else if (start == "anchor") { pos = range.anchor; } + else if (start == "end" || start == "to" || start === false) { pos = range.to(); } + else { pos = range.from(); } + return pos + }, + listSelections: function() { return this.sel.ranges }, + somethingSelected: function() {return this.sel.somethingSelected()}, + + setCursor: docMethodOp(function(line, ch, options) { + setSimpleSelection(this, clipPos(this, typeof line == "number" ? Pos(line, ch || 0) : line), null, options); + }), + setSelection: docMethodOp(function(anchor, head, options) { + setSimpleSelection(this, clipPos(this, anchor), clipPos(this, head || anchor), options); + }), + extendSelection: docMethodOp(function(head, other, options) { + extendSelection(this, clipPos(this, head), other && clipPos(this, other), options); + }), + extendSelections: docMethodOp(function(heads, options) { + extendSelections(this, clipPosArray(this, heads), options); + }), + extendSelectionsBy: docMethodOp(function(f, options) { + var heads = map(this.sel.ranges, f); + extendSelections(this, clipPosArray(this, heads), options); + }), + setSelections: docMethodOp(function(ranges, primary, options) { + if (!ranges.length) { return } + var out = []; + for (var i = 0; i < ranges.length; i++) + { out[i] = new Range(clipPos(this, ranges[i].anchor), + clipPos(this, ranges[i].head || ranges[i].anchor)); } + if (primary == null) { primary = Math.min(ranges.length - 1, this.sel.primIndex); } + setSelection(this, normalizeSelection(this.cm, out, primary), options); + }), + addSelection: docMethodOp(function(anchor, head, options) { + var ranges = this.sel.ranges.slice(0); + ranges.push(new Range(clipPos(this, anchor), clipPos(this, head || anchor))); + setSelection(this, normalizeSelection(this.cm, ranges, ranges.length - 1), options); + }), + + getSelection: function(lineSep) { + var ranges = this.sel.ranges, lines; + for (var i = 0; i < ranges.length; i++) { + var sel = getBetween(this, ranges[i].from(), ranges[i].to()); + lines = lines ? lines.concat(sel) : sel; + } + if (lineSep === false) { return lines } + else { return lines.join(lineSep || this.lineSeparator()) } + }, + getSelections: function(lineSep) { + var parts = [], ranges = this.sel.ranges; + for (var i = 0; i < ranges.length; i++) { + var sel = getBetween(this, ranges[i].from(), ranges[i].to()); + if (lineSep !== false) { sel = sel.join(lineSep || this.lineSeparator()); } + parts[i] = sel; + } + return parts + }, + replaceSelection: function(code, collapse, origin) { + var dup = []; + for (var i = 0; i < this.sel.ranges.length; i++) + { dup[i] = code; } + this.replaceSelections(dup, collapse, origin || "+input"); + }, + replaceSelections: docMethodOp(function(code, collapse, origin) { + var changes = [], sel = this.sel; + for (var i = 0; i < sel.ranges.length; i++) { + var range = sel.ranges[i]; + changes[i] = {from: range.from(), to: range.to(), text: this.splitLines(code[i]), origin: origin}; + } + var newSel = collapse && collapse != "end" && computeReplacedSel(this, changes, collapse); + for (var i$1 = changes.length - 1; i$1 >= 0; i$1--) + { makeChange(this, changes[i$1]); } + if (newSel) { setSelectionReplaceHistory(this, newSel); } + else if (this.cm) { ensureCursorVisible(this.cm); } + }), + undo: docMethodOp(function() {makeChangeFromHistory(this, "undo");}), + redo: docMethodOp(function() {makeChangeFromHistory(this, "redo");}), + undoSelection: docMethodOp(function() {makeChangeFromHistory(this, "undo", true);}), + redoSelection: docMethodOp(function() {makeChangeFromHistory(this, "redo", true);}), + + setExtending: function(val) {this.extend = val;}, + getExtending: function() {return this.extend}, + + historySize: function() { + var hist = this.history, done = 0, undone = 0; + for (var i = 0; i < hist.done.length; i++) { if (!hist.done[i].ranges) { ++done; } } + for (var i$1 = 0; i$1 < hist.undone.length; i$1++) { if (!hist.undone[i$1].ranges) { ++undone; } } + return {undo: done, redo: undone} + }, + clearHistory: function() { + var this$1 = this; + + this.history = new History(this.history); + linkedDocs(this, function (doc) { return doc.history = this$1.history; }, true); + }, + + markClean: function() { + this.cleanGeneration = this.changeGeneration(true); + }, + changeGeneration: function(forceSplit) { + if (forceSplit) + { this.history.lastOp = this.history.lastSelOp = this.history.lastOrigin = null; } + return this.history.generation + }, + isClean: function (gen) { + return this.history.generation == (gen || this.cleanGeneration) + }, + + getHistory: function() { + return {done: copyHistoryArray(this.history.done), + undone: copyHistoryArray(this.history.undone)} + }, + setHistory: function(histData) { + var hist = this.history = new History(this.history); + hist.done = copyHistoryArray(histData.done.slice(0), null, true); + hist.undone = copyHistoryArray(histData.undone.slice(0), null, true); + }, + + setGutterMarker: docMethodOp(function(line, gutterID, value) { + return changeLine(this, line, "gutter", function (line) { + var markers = line.gutterMarkers || (line.gutterMarkers = {}); + markers[gutterID] = value; + if (!value && isEmpty(markers)) { line.gutterMarkers = null; } + return true + }) + }), + + clearGutter: docMethodOp(function(gutterID) { + var this$1 = this; + + this.iter(function (line) { + if (line.gutterMarkers && line.gutterMarkers[gutterID]) { + changeLine(this$1, line, "gutter", function () { + line.gutterMarkers[gutterID] = null; + if (isEmpty(line.gutterMarkers)) { line.gutterMarkers = null; } + return true + }); + } + }); + }), + + lineInfo: function(line) { + var n; + if (typeof line == "number") { + if (!isLine(this, line)) { return null } + n = line; + line = getLine(this, line); + if (!line) { return null } + } else { + n = lineNo(line); + if (n == null) { return null } + } + return {line: n, handle: line, text: line.text, gutterMarkers: line.gutterMarkers, + textClass: line.textClass, bgClass: line.bgClass, wrapClass: line.wrapClass, + widgets: line.widgets} + }, + + addLineClass: docMethodOp(function(handle, where, cls) { + return changeLine(this, handle, where == "gutter" ? "gutter" : "class", function (line) { + var prop = where == "text" ? "textClass" + : where == "background" ? "bgClass" + : where == "gutter" ? "gutterClass" : "wrapClass"; + if (!line[prop]) { line[prop] = cls; } + else if (classTest(cls).test(line[prop])) { return false } + else { line[prop] += " " + cls; } + return true + }) + }), + removeLineClass: docMethodOp(function(handle, where, cls) { + return changeLine(this, handle, where == "gutter" ? "gutter" : "class", function (line) { + var prop = where == "text" ? "textClass" + : where == "background" ? "bgClass" + : where == "gutter" ? "gutterClass" : "wrapClass"; + var cur = line[prop]; + if (!cur) { return false } + else if (cls == null) { line[prop] = null; } + else { + var found = cur.match(classTest(cls)); + if (!found) { return false } + var end = found.index + found[0].length; + line[prop] = cur.slice(0, found.index) + (!found.index || end == cur.length ? "" : " ") + cur.slice(end) || null; + } + return true + }) + }), + + addLineWidget: docMethodOp(function(handle, node, options) { + return addLineWidget(this, handle, node, options) + }), + removeLineWidget: function(widget) { widget.clear(); }, + + markText: function(from, to, options) { + return markText(this, clipPos(this, from), clipPos(this, to), options, options && options.type || "range") + }, + setBookmark: function(pos, options) { + var realOpts = {replacedWith: options && (options.nodeType == null ? options.widget : options), + insertLeft: options && options.insertLeft, + clearWhenEmpty: false, shared: options && options.shared, + handleMouseEvents: options && options.handleMouseEvents}; + pos = clipPos(this, pos); + return markText(this, pos, pos, realOpts, "bookmark") + }, + findMarksAt: function(pos) { + pos = clipPos(this, pos); + var markers = [], spans = getLine(this, pos.line).markedSpans; + if (spans) { for (var i = 0; i < spans.length; ++i) { + var span = spans[i]; + if ((span.from == null || span.from <= pos.ch) && + (span.to == null || span.to >= pos.ch)) + { markers.push(span.marker.parent || span.marker); } + } } + return markers + }, + findMarks: function(from, to, filter) { + from = clipPos(this, from); to = clipPos(this, to); + var found = [], lineNo = from.line; + this.iter(from.line, to.line + 1, function (line) { + var spans = line.markedSpans; + if (spans) { for (var i = 0; i < spans.length; i++) { + var span = spans[i]; + if (!(span.to != null && lineNo == from.line && from.ch >= span.to || + span.from == null && lineNo != from.line || + span.from != null && lineNo == to.line && span.from >= to.ch) && + (!filter || filter(span.marker))) + { found.push(span.marker.parent || span.marker); } + } } + ++lineNo; + }); + return found + }, + getAllMarks: function() { + var markers = []; + this.iter(function (line) { + var sps = line.markedSpans; + if (sps) { for (var i = 0; i < sps.length; ++i) + { if (sps[i].from != null) { markers.push(sps[i].marker); } } } + }); + return markers + }, + + posFromIndex: function(off) { + var ch, lineNo = this.first, sepSize = this.lineSeparator().length; + this.iter(function (line) { + var sz = line.text.length + sepSize; + if (sz > off) { ch = off; return true } + off -= sz; + ++lineNo; + }); + return clipPos(this, Pos(lineNo, ch)) + }, + indexFromPos: function (coords) { + coords = clipPos(this, coords); + var index = coords.ch; + if (coords.line < this.first || coords.ch < 0) { return 0 } + var sepSize = this.lineSeparator().length; + this.iter(this.first, coords.line, function (line) { // iter aborts when callback returns a truthy value + index += line.text.length + sepSize; + }); + return index + }, + + copy: function(copyHistory) { + var doc = new Doc(getLines(this, this.first, this.first + this.size), + this.modeOption, this.first, this.lineSep, this.direction); + doc.scrollTop = this.scrollTop; doc.scrollLeft = this.scrollLeft; + doc.sel = this.sel; + doc.extend = false; + if (copyHistory) { + doc.history.undoDepth = this.history.undoDepth; + doc.setHistory(this.getHistory()); + } + return doc + }, + + linkedDoc: function(options) { + if (!options) { options = {}; } + var from = this.first, to = this.first + this.size; + if (options.from != null && options.from > from) { from = options.from; } + if (options.to != null && options.to < to) { to = options.to; } + var copy = new Doc(getLines(this, from, to), options.mode || this.modeOption, from, this.lineSep, this.direction); + if (options.sharedHist) { copy.history = this.history + ; }(this.linked || (this.linked = [])).push({doc: copy, sharedHist: options.sharedHist}); + copy.linked = [{doc: this, isParent: true, sharedHist: options.sharedHist}]; + copySharedMarkers(copy, findSharedMarkers(this)); + return copy + }, + unlinkDoc: function(other) { + if (other instanceof CodeMirror) { other = other.doc; } + if (this.linked) { for (var i = 0; i < this.linked.length; ++i) { + var link = this.linked[i]; + if (link.doc != other) { continue } + this.linked.splice(i, 1); + other.unlinkDoc(this); + detachSharedMarkers(findSharedMarkers(this)); + break + } } + // If the histories were shared, split them again + if (other.history == this.history) { + var splitIds = [other.id]; + linkedDocs(other, function (doc) { return splitIds.push(doc.id); }, true); + other.history = new History(null); + other.history.done = copyHistoryArray(this.history.done, splitIds); + other.history.undone = copyHistoryArray(this.history.undone, splitIds); + } + }, + iterLinkedDocs: function(f) {linkedDocs(this, f);}, + + getMode: function() {return this.mode}, + getEditor: function() {return this.cm}, + + splitLines: function(str) { + if (this.lineSep) { return str.split(this.lineSep) } + return splitLinesAuto(str) + }, + lineSeparator: function() { return this.lineSep || "\n" }, + + setDirection: docMethodOp(function (dir) { + if (dir != "rtl") { dir = "ltr"; } + if (dir == this.direction) { return } + this.direction = dir; + this.iter(function (line) { return line.order = null; }); + if (this.cm) { directionChanged(this.cm); } + }) + }); + + // Public alias. + Doc.prototype.eachLine = Doc.prototype.iter; + + // Kludge to work around strange IE behavior where it'll sometimes + // re-fire a series of drag-related events right after the drop (#1551) + var lastDrop = 0; + + function onDrop(e) { + var cm = this; + clearDragCursor(cm); + if (signalDOMEvent(cm, e) || eventInWidget(cm.display, e)) + { return } + e_preventDefault(e); + if (ie) { lastDrop = +new Date; } + var pos = posFromMouse(cm, e, true), files = e.dataTransfer.files; + if (!pos || cm.isReadOnly()) { return } + // Might be a file drop, in which case we simply extract the text + // and insert it. + if (files && files.length && window.FileReader && window.File) { + var n = files.length, text = Array(n), read = 0; + var markAsReadAndPasteIfAllFilesAreRead = function () { + if (++read == n) { + operation(cm, function () { + pos = clipPos(cm.doc, pos); + var change = {from: pos, to: pos, + text: cm.doc.splitLines( + text.filter(function (t) { return t != null; }).join(cm.doc.lineSeparator())), + origin: "paste"}; + makeChange(cm.doc, change); + setSelectionReplaceHistory(cm.doc, simpleSelection(clipPos(cm.doc, pos), clipPos(cm.doc, changeEnd(change)))); + })(); + } + }; + var readTextFromFile = function (file, i) { + if (cm.options.allowDropFileTypes && + indexOf(cm.options.allowDropFileTypes, file.type) == -1) { + markAsReadAndPasteIfAllFilesAreRead(); + return + } + var reader = new FileReader; + reader.onerror = function () { return markAsReadAndPasteIfAllFilesAreRead(); }; + reader.onload = function () { + var content = reader.result; + if (/[\x00-\x08\x0e-\x1f]{2}/.test(content)) { + markAsReadAndPasteIfAllFilesAreRead(); + return + } + text[i] = content; + markAsReadAndPasteIfAllFilesAreRead(); + }; + reader.readAsText(file); + }; + for (var i = 0; i < files.length; i++) { readTextFromFile(files[i], i); } + } else { // Normal drop + // Don't do a replace if the drop happened inside of the selected text. + if (cm.state.draggingText && cm.doc.sel.contains(pos) > -1) { + cm.state.draggingText(e); + // Ensure the editor is re-focused + setTimeout(function () { return cm.display.input.focus(); }, 20); + return + } + try { + var text$1 = e.dataTransfer.getData("Text"); + if (text$1) { + var selected; + if (cm.state.draggingText && !cm.state.draggingText.copy) + { selected = cm.listSelections(); } + setSelectionNoUndo(cm.doc, simpleSelection(pos, pos)); + if (selected) { for (var i$1 = 0; i$1 < selected.length; ++i$1) + { replaceRange(cm.doc, "", selected[i$1].anchor, selected[i$1].head, "drag"); } } + cm.replaceSelection(text$1, "around", "paste"); + cm.display.input.focus(); + } + } + catch(e$1){} + } + } + + function onDragStart(cm, e) { + if (ie && (!cm.state.draggingText || +new Date - lastDrop < 100)) { e_stop(e); return } + if (signalDOMEvent(cm, e) || eventInWidget(cm.display, e)) { return } + + e.dataTransfer.setData("Text", cm.getSelection()); + e.dataTransfer.effectAllowed = "copyMove"; + + // Use dummy image instead of default browsers image. + // Recent Safari (~6.0.2) have a tendency to segfault when this happens, so we don't do it there. + if (e.dataTransfer.setDragImage && !safari) { + var img = elt("img", null, null, "position: fixed; left: 0; top: 0;"); + img.src = "data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="; + if (presto) { + img.width = img.height = 1; + cm.display.wrapper.appendChild(img); + // Force a relayout, or Opera won't use our image for some obscure reason + img._top = img.offsetTop; + } + e.dataTransfer.setDragImage(img, 0, 0); + if (presto) { img.parentNode.removeChild(img); } + } + } + + function onDragOver(cm, e) { + var pos = posFromMouse(cm, e); + if (!pos) { return } + var frag = document.createDocumentFragment(); + drawSelectionCursor(cm, pos, frag); + if (!cm.display.dragCursor) { + cm.display.dragCursor = elt("div", null, "CodeMirror-cursors CodeMirror-dragcursors"); + cm.display.lineSpace.insertBefore(cm.display.dragCursor, cm.display.cursorDiv); + } + removeChildrenAndAdd(cm.display.dragCursor, frag); + } + + function clearDragCursor(cm) { + if (cm.display.dragCursor) { + cm.display.lineSpace.removeChild(cm.display.dragCursor); + cm.display.dragCursor = null; + } + } + + // These must be handled carefully, because naively registering a + // handler for each editor will cause the editors to never be + // garbage collected. + + function forEachCodeMirror(f) { + if (!document.getElementsByClassName) { return } + var byClass = document.getElementsByClassName("CodeMirror"), editors = []; + for (var i = 0; i < byClass.length; i++) { + var cm = byClass[i].CodeMirror; + if (cm) { editors.push(cm); } + } + if (editors.length) { editors[0].operation(function () { + for (var i = 0; i < editors.length; i++) { f(editors[i]); } + }); } + } + + var globalsRegistered = false; + function ensureGlobalHandlers() { + if (globalsRegistered) { return } + registerGlobalHandlers(); + globalsRegistered = true; + } + function registerGlobalHandlers() { + // When the window resizes, we need to refresh active editors. + var resizeTimer; + on(window, "resize", function () { + if (resizeTimer == null) { resizeTimer = setTimeout(function () { + resizeTimer = null; + forEachCodeMirror(onResize); + }, 100); } + }); + // When the window loses focus, we want to show the editor as blurred + on(window, "blur", function () { return forEachCodeMirror(onBlur); }); + } + // Called when the window resizes + function onResize(cm) { + var d = cm.display; + // Might be a text scaling operation, clear size caches. + d.cachedCharWidth = d.cachedTextHeight = d.cachedPaddingH = null; + d.scrollbarsClipped = false; + cm.setSize(); + } + + var keyNames = { + 3: "Pause", 8: "Backspace", 9: "Tab", 13: "Enter", 16: "Shift", 17: "Ctrl", 18: "Alt", + 19: "Pause", 20: "CapsLock", 27: "Esc", 32: "Space", 33: "PageUp", 34: "PageDown", 35: "End", + 36: "Home", 37: "Left", 38: "Up", 39: "Right", 40: "Down", 44: "PrintScrn", 45: "Insert", + 46: "Delete", 59: ";", 61: "=", 91: "Mod", 92: "Mod", 93: "Mod", + 106: "*", 107: "=", 109: "-", 110: ".", 111: "/", 145: "ScrollLock", + 173: "-", 186: ";", 187: "=", 188: ",", 189: "-", 190: ".", 191: "/", 192: "`", 219: "[", 220: "\\", + 221: "]", 222: "'", 224: "Mod", 63232: "Up", 63233: "Down", 63234: "Left", 63235: "Right", 63272: "Delete", + 63273: "Home", 63275: "End", 63276: "PageUp", 63277: "PageDown", 63302: "Insert" + }; + + // Number keys + for (var i = 0; i < 10; i++) { keyNames[i + 48] = keyNames[i + 96] = String(i); } + // Alphabetic keys + for (var i$1 = 65; i$1 <= 90; i$1++) { keyNames[i$1] = String.fromCharCode(i$1); } + // Function keys + for (var i$2 = 1; i$2 <= 12; i$2++) { keyNames[i$2 + 111] = keyNames[i$2 + 63235] = "F" + i$2; } + + var keyMap = {}; + + keyMap.basic = { + "Left": "goCharLeft", "Right": "goCharRight", "Up": "goLineUp", "Down": "goLineDown", + "End": "goLineEnd", "Home": "goLineStartSmart", "PageUp": "goPageUp", "PageDown": "goPageDown", + "Delete": "delCharAfter", "Backspace": "delCharBefore", "Shift-Backspace": "delCharBefore", + "Tab": "defaultTab", "Shift-Tab": "indentAuto", + "Enter": "newlineAndIndent", "Insert": "toggleOverwrite", + "Esc": "singleSelection" + }; + // Note that the save and find-related commands aren't defined by + // default. User code or addons can define them. Unknown commands + // are simply ignored. + keyMap.pcDefault = { + "Ctrl-A": "selectAll", "Ctrl-D": "deleteLine", "Ctrl-Z": "undo", "Shift-Ctrl-Z": "redo", "Ctrl-Y": "redo", + "Ctrl-Home": "goDocStart", "Ctrl-End": "goDocEnd", "Ctrl-Up": "goLineUp", "Ctrl-Down": "goLineDown", + "Ctrl-Left": "goGroupLeft", "Ctrl-Right": "goGroupRight", "Alt-Left": "goLineStart", "Alt-Right": "goLineEnd", + "Ctrl-Backspace": "delGroupBefore", "Ctrl-Delete": "delGroupAfter", "Ctrl-S": "save", "Ctrl-F": "find", + "Ctrl-G": "findNext", "Shift-Ctrl-G": "findPrev", "Shift-Ctrl-F": "replace", "Shift-Ctrl-R": "replaceAll", + "Ctrl-[": "indentLess", "Ctrl-]": "indentMore", + "Ctrl-U": "undoSelection", "Shift-Ctrl-U": "redoSelection", "Alt-U": "redoSelection", + "fallthrough": "basic" + }; + // Very basic readline/emacs-style bindings, which are standard on Mac. + keyMap.emacsy = { + "Ctrl-F": "goCharRight", "Ctrl-B": "goCharLeft", "Ctrl-P": "goLineUp", "Ctrl-N": "goLineDown", + "Ctrl-A": "goLineStart", "Ctrl-E": "goLineEnd", "Ctrl-V": "goPageDown", "Shift-Ctrl-V": "goPageUp", + "Ctrl-D": "delCharAfter", "Ctrl-H": "delCharBefore", "Alt-Backspace": "delWordBefore", "Ctrl-K": "killLine", + "Ctrl-T": "transposeChars", "Ctrl-O": "openLine" + }; + keyMap.macDefault = { + "Cmd-A": "selectAll", "Cmd-D": "deleteLine", "Cmd-Z": "undo", "Shift-Cmd-Z": "redo", "Cmd-Y": "redo", + "Cmd-Home": "goDocStart", "Cmd-Up": "goDocStart", "Cmd-End": "goDocEnd", "Cmd-Down": "goDocEnd", "Alt-Left": "goGroupLeft", + "Alt-Right": "goGroupRight", "Cmd-Left": "goLineLeft", "Cmd-Right": "goLineRight", "Alt-Backspace": "delGroupBefore", + "Ctrl-Alt-Backspace": "delGroupAfter", "Alt-Delete": "delGroupAfter", "Cmd-S": "save", "Cmd-F": "find", + "Cmd-G": "findNext", "Shift-Cmd-G": "findPrev", "Cmd-Alt-F": "replace", "Shift-Cmd-Alt-F": "replaceAll", + "Cmd-[": "indentLess", "Cmd-]": "indentMore", "Cmd-Backspace": "delWrappedLineLeft", "Cmd-Delete": "delWrappedLineRight", + "Cmd-U": "undoSelection", "Shift-Cmd-U": "redoSelection", "Ctrl-Up": "goDocStart", "Ctrl-Down": "goDocEnd", + "fallthrough": ["basic", "emacsy"] + }; + keyMap["default"] = mac ? keyMap.macDefault : keyMap.pcDefault; + + // KEYMAP DISPATCH + + function normalizeKeyName(name) { + var parts = name.split(/-(?!$)/); + name = parts[parts.length - 1]; + var alt, ctrl, shift, cmd; + for (var i = 0; i < parts.length - 1; i++) { + var mod = parts[i]; + if (/^(cmd|meta|m)$/i.test(mod)) { cmd = true; } + else if (/^a(lt)?$/i.test(mod)) { alt = true; } + else if (/^(c|ctrl|control)$/i.test(mod)) { ctrl = true; } + else if (/^s(hift)?$/i.test(mod)) { shift = true; } + else { throw new Error("Unrecognized modifier name: " + mod) } + } + if (alt) { name = "Alt-" + name; } + if (ctrl) { name = "Ctrl-" + name; } + if (cmd) { name = "Cmd-" + name; } + if (shift) { name = "Shift-" + name; } + return name + } + + // This is a kludge to keep keymaps mostly working as raw objects + // (backwards compatibility) while at the same time support features + // like normalization and multi-stroke key bindings. It compiles a + // new normalized keymap, and then updates the old object to reflect + // this. + function normalizeKeyMap(keymap) { + var copy = {}; + for (var keyname in keymap) { if (keymap.hasOwnProperty(keyname)) { + var value = keymap[keyname]; + if (/^(name|fallthrough|(de|at)tach)$/.test(keyname)) { continue } + if (value == "...") { delete keymap[keyname]; continue } + + var keys = map(keyname.split(" "), normalizeKeyName); + for (var i = 0; i < keys.length; i++) { + var val = (void 0), name = (void 0); + if (i == keys.length - 1) { + name = keys.join(" "); + val = value; + } else { + name = keys.slice(0, i + 1).join(" "); + val = "..."; + } + var prev = copy[name]; + if (!prev) { copy[name] = val; } + else if (prev != val) { throw new Error("Inconsistent bindings for " + name) } + } + delete keymap[keyname]; + } } + for (var prop in copy) { keymap[prop] = copy[prop]; } + return keymap + } + + function lookupKey(key, map, handle, context) { + map = getKeyMap(map); + var found = map.call ? map.call(key, context) : map[key]; + if (found === false) { return "nothing" } + if (found === "...") { return "multi" } + if (found != null && handle(found)) { return "handled" } + + if (map.fallthrough) { + if (Object.prototype.toString.call(map.fallthrough) != "[object Array]") + { return lookupKey(key, map.fallthrough, handle, context) } + for (var i = 0; i < map.fallthrough.length; i++) { + var result = lookupKey(key, map.fallthrough[i], handle, context); + if (result) { return result } + } + } + } + + // Modifier key presses don't count as 'real' key presses for the + // purpose of keymap fallthrough. + function isModifierKey(value) { + var name = typeof value == "string" ? value : keyNames[value.keyCode]; + return name == "Ctrl" || name == "Alt" || name == "Shift" || name == "Mod" + } + + function addModifierNames(name, event, noShift) { + var base = name; + if (event.altKey && base != "Alt") { name = "Alt-" + name; } + if ((flipCtrlCmd ? event.metaKey : event.ctrlKey) && base != "Ctrl") { name = "Ctrl-" + name; } + if ((flipCtrlCmd ? event.ctrlKey : event.metaKey) && base != "Mod") { name = "Cmd-" + name; } + if (!noShift && event.shiftKey && base != "Shift") { name = "Shift-" + name; } + return name + } + + // Look up the name of a key as indicated by an event object. + function keyName(event, noShift) { + if (presto && event.keyCode == 34 && event["char"]) { return false } + var name = keyNames[event.keyCode]; + if (name == null || event.altGraphKey) { return false } + // Ctrl-ScrollLock has keyCode 3, same as Ctrl-Pause, + // so we'll use event.code when available (Chrome 48+, FF 38+, Safari 10.1+) + if (event.keyCode == 3 && event.code) { name = event.code; } + return addModifierNames(name, event, noShift) + } + + function getKeyMap(val) { + return typeof val == "string" ? keyMap[val] : val + } + + // Helper for deleting text near the selection(s), used to implement + // backspace, delete, and similar functionality. + function deleteNearSelection(cm, compute) { + var ranges = cm.doc.sel.ranges, kill = []; + // Build up a set of ranges to kill first, merging overlapping + // ranges. + for (var i = 0; i < ranges.length; i++) { + var toKill = compute(ranges[i]); + while (kill.length && cmp(toKill.from, lst(kill).to) <= 0) { + var replaced = kill.pop(); + if (cmp(replaced.from, toKill.from) < 0) { + toKill.from = replaced.from; + break + } + } + kill.push(toKill); + } + // Next, remove those actual ranges. + runInOp(cm, function () { + for (var i = kill.length - 1; i >= 0; i--) + { replaceRange(cm.doc, "", kill[i].from, kill[i].to, "+delete"); } + ensureCursorVisible(cm); + }); + } + + function moveCharLogically(line, ch, dir) { + var target = skipExtendingChars(line.text, ch + dir, dir); + return target < 0 || target > line.text.length ? null : target + } + + function moveLogically(line, start, dir) { + var ch = moveCharLogically(line, start.ch, dir); + return ch == null ? null : new Pos(start.line, ch, dir < 0 ? "after" : "before") + } + + function endOfLine(visually, cm, lineObj, lineNo, dir) { + if (visually) { + if (cm.doc.direction == "rtl") { dir = -dir; } + var order = getOrder(lineObj, cm.doc.direction); + if (order) { + var part = dir < 0 ? lst(order) : order[0]; + var moveInStorageOrder = (dir < 0) == (part.level == 1); + var sticky = moveInStorageOrder ? "after" : "before"; + var ch; + // With a wrapped rtl chunk (possibly spanning multiple bidi parts), + // it could be that the last bidi part is not on the last visual line, + // since visual lines contain content order-consecutive chunks. + // Thus, in rtl, we are looking for the first (content-order) character + // in the rtl chunk that is on the last line (that is, the same line + // as the last (content-order) character). + if (part.level > 0 || cm.doc.direction == "rtl") { + var prep = prepareMeasureForLine(cm, lineObj); + ch = dir < 0 ? lineObj.text.length - 1 : 0; + var targetTop = measureCharPrepared(cm, prep, ch).top; + ch = findFirst(function (ch) { return measureCharPrepared(cm, prep, ch).top == targetTop; }, (dir < 0) == (part.level == 1) ? part.from : part.to - 1, ch); + if (sticky == "before") { ch = moveCharLogically(lineObj, ch, 1); } + } else { ch = dir < 0 ? part.to : part.from; } + return new Pos(lineNo, ch, sticky) + } + } + return new Pos(lineNo, dir < 0 ? lineObj.text.length : 0, dir < 0 ? "before" : "after") + } + + function moveVisually(cm, line, start, dir) { + var bidi = getOrder(line, cm.doc.direction); + if (!bidi) { return moveLogically(line, start, dir) } + if (start.ch >= line.text.length) { + start.ch = line.text.length; + start.sticky = "before"; + } else if (start.ch <= 0) { + start.ch = 0; + start.sticky = "after"; + } + var partPos = getBidiPartAt(bidi, start.ch, start.sticky), part = bidi[partPos]; + if (cm.doc.direction == "ltr" && part.level % 2 == 0 && (dir > 0 ? part.to > start.ch : part.from < start.ch)) { + // Case 1: We move within an ltr part in an ltr editor. Even with wrapped lines, + // nothing interesting happens. + return moveLogically(line, start, dir) + } + + var mv = function (pos, dir) { return moveCharLogically(line, pos instanceof Pos ? pos.ch : pos, dir); }; + var prep; + var getWrappedLineExtent = function (ch) { + if (!cm.options.lineWrapping) { return {begin: 0, end: line.text.length} } + prep = prep || prepareMeasureForLine(cm, line); + return wrappedLineExtentChar(cm, line, prep, ch) + }; + var wrappedLineExtent = getWrappedLineExtent(start.sticky == "before" ? mv(start, -1) : start.ch); + + if (cm.doc.direction == "rtl" || part.level == 1) { + var moveInStorageOrder = (part.level == 1) == (dir < 0); + var ch = mv(start, moveInStorageOrder ? 1 : -1); + if (ch != null && (!moveInStorageOrder ? ch >= part.from && ch >= wrappedLineExtent.begin : ch <= part.to && ch <= wrappedLineExtent.end)) { + // Case 2: We move within an rtl part or in an rtl editor on the same visual line + var sticky = moveInStorageOrder ? "before" : "after"; + return new Pos(start.line, ch, sticky) + } + } + + // Case 3: Could not move within this bidi part in this visual line, so leave + // the current bidi part + + var searchInVisualLine = function (partPos, dir, wrappedLineExtent) { + var getRes = function (ch, moveInStorageOrder) { return moveInStorageOrder + ? new Pos(start.line, mv(ch, 1), "before") + : new Pos(start.line, ch, "after"); }; + + for (; partPos >= 0 && partPos < bidi.length; partPos += dir) { + var part = bidi[partPos]; + var moveInStorageOrder = (dir > 0) == (part.level != 1); + var ch = moveInStorageOrder ? wrappedLineExtent.begin : mv(wrappedLineExtent.end, -1); + if (part.from <= ch && ch < part.to) { return getRes(ch, moveInStorageOrder) } + ch = moveInStorageOrder ? part.from : mv(part.to, -1); + if (wrappedLineExtent.begin <= ch && ch < wrappedLineExtent.end) { return getRes(ch, moveInStorageOrder) } + } + }; + + // Case 3a: Look for other bidi parts on the same visual line + var res = searchInVisualLine(partPos + dir, dir, wrappedLineExtent); + if (res) { return res } + + // Case 3b: Look for other bidi parts on the next visual line + var nextCh = dir > 0 ? wrappedLineExtent.end : mv(wrappedLineExtent.begin, -1); + if (nextCh != null && !(dir > 0 && nextCh == line.text.length)) { + res = searchInVisualLine(dir > 0 ? 0 : bidi.length - 1, dir, getWrappedLineExtent(nextCh)); + if (res) { return res } + } + + // Case 4: Nowhere to move + return null + } + + // Commands are parameter-less actions that can be performed on an + // editor, mostly used for keybindings. + var commands = { + selectAll: selectAll, + singleSelection: function (cm) { return cm.setSelection(cm.getCursor("anchor"), cm.getCursor("head"), sel_dontScroll); }, + killLine: function (cm) { return deleteNearSelection(cm, function (range) { + if (range.empty()) { + var len = getLine(cm.doc, range.head.line).text.length; + if (range.head.ch == len && range.head.line < cm.lastLine()) + { return {from: range.head, to: Pos(range.head.line + 1, 0)} } + else + { return {from: range.head, to: Pos(range.head.line, len)} } + } else { + return {from: range.from(), to: range.to()} + } + }); }, + deleteLine: function (cm) { return deleteNearSelection(cm, function (range) { return ({ + from: Pos(range.from().line, 0), + to: clipPos(cm.doc, Pos(range.to().line + 1, 0)) + }); }); }, + delLineLeft: function (cm) { return deleteNearSelection(cm, function (range) { return ({ + from: Pos(range.from().line, 0), to: range.from() + }); }); }, + delWrappedLineLeft: function (cm) { return deleteNearSelection(cm, function (range) { + var top = cm.charCoords(range.head, "div").top + 5; + var leftPos = cm.coordsChar({left: 0, top: top}, "div"); + return {from: leftPos, to: range.from()} + }); }, + delWrappedLineRight: function (cm) { return deleteNearSelection(cm, function (range) { + var top = cm.charCoords(range.head, "div").top + 5; + var rightPos = cm.coordsChar({left: cm.display.lineDiv.offsetWidth + 100, top: top}, "div"); + return {from: range.from(), to: rightPos } + }); }, + undo: function (cm) { return cm.undo(); }, + redo: function (cm) { return cm.redo(); }, + undoSelection: function (cm) { return cm.undoSelection(); }, + redoSelection: function (cm) { return cm.redoSelection(); }, + goDocStart: function (cm) { return cm.extendSelection(Pos(cm.firstLine(), 0)); }, + goDocEnd: function (cm) { return cm.extendSelection(Pos(cm.lastLine())); }, + goLineStart: function (cm) { return cm.extendSelectionsBy(function (range) { return lineStart(cm, range.head.line); }, + {origin: "+move", bias: 1} + ); }, + goLineStartSmart: function (cm) { return cm.extendSelectionsBy(function (range) { return lineStartSmart(cm, range.head); }, + {origin: "+move", bias: 1} + ); }, + goLineEnd: function (cm) { return cm.extendSelectionsBy(function (range) { return lineEnd(cm, range.head.line); }, + {origin: "+move", bias: -1} + ); }, + goLineRight: function (cm) { return cm.extendSelectionsBy(function (range) { + var top = cm.cursorCoords(range.head, "div").top + 5; + return cm.coordsChar({left: cm.display.lineDiv.offsetWidth + 100, top: top}, "div") + }, sel_move); }, + goLineLeft: function (cm) { return cm.extendSelectionsBy(function (range) { + var top = cm.cursorCoords(range.head, "div").top + 5; + return cm.coordsChar({left: 0, top: top}, "div") + }, sel_move); }, + goLineLeftSmart: function (cm) { return cm.extendSelectionsBy(function (range) { + var top = cm.cursorCoords(range.head, "div").top + 5; + var pos = cm.coordsChar({left: 0, top: top}, "div"); + if (pos.ch < cm.getLine(pos.line).search(/\S/)) { return lineStartSmart(cm, range.head) } + return pos + }, sel_move); }, + goLineUp: function (cm) { return cm.moveV(-1, "line"); }, + goLineDown: function (cm) { return cm.moveV(1, "line"); }, + goPageUp: function (cm) { return cm.moveV(-1, "page"); }, + goPageDown: function (cm) { return cm.moveV(1, "page"); }, + goCharLeft: function (cm) { return cm.moveH(-1, "char"); }, + goCharRight: function (cm) { return cm.moveH(1, "char"); }, + goColumnLeft: function (cm) { return cm.moveH(-1, "column"); }, + goColumnRight: function (cm) { return cm.moveH(1, "column"); }, + goWordLeft: function (cm) { return cm.moveH(-1, "word"); }, + goGroupRight: function (cm) { return cm.moveH(1, "group"); }, + goGroupLeft: function (cm) { return cm.moveH(-1, "group"); }, + goWordRight: function (cm) { return cm.moveH(1, "word"); }, + delCharBefore: function (cm) { return cm.deleteH(-1, "codepoint"); }, + delCharAfter: function (cm) { return cm.deleteH(1, "char"); }, + delWordBefore: function (cm) { return cm.deleteH(-1, "word"); }, + delWordAfter: function (cm) { return cm.deleteH(1, "word"); }, + delGroupBefore: function (cm) { return cm.deleteH(-1, "group"); }, + delGroupAfter: function (cm) { return cm.deleteH(1, "group"); }, + indentAuto: function (cm) { return cm.indentSelection("smart"); }, + indentMore: function (cm) { return cm.indentSelection("add"); }, + indentLess: function (cm) { return cm.indentSelection("subtract"); }, + insertTab: function (cm) { return cm.replaceSelection("\t"); }, + insertSoftTab: function (cm) { + var spaces = [], ranges = cm.listSelections(), tabSize = cm.options.tabSize; + for (var i = 0; i < ranges.length; i++) { + var pos = ranges[i].from(); + var col = countColumn(cm.getLine(pos.line), pos.ch, tabSize); + spaces.push(spaceStr(tabSize - col % tabSize)); + } + cm.replaceSelections(spaces); + }, + defaultTab: function (cm) { + if (cm.somethingSelected()) { cm.indentSelection("add"); } + else { cm.execCommand("insertTab"); } + }, + // Swap the two chars left and right of each selection's head. + // Move cursor behind the two swapped characters afterwards. + // + // Doesn't consider line feeds a character. + // Doesn't scan more than one line above to find a character. + // Doesn't do anything on an empty line. + // Doesn't do anything with non-empty selections. + transposeChars: function (cm) { return runInOp(cm, function () { + var ranges = cm.listSelections(), newSel = []; + for (var i = 0; i < ranges.length; i++) { + if (!ranges[i].empty()) { continue } + var cur = ranges[i].head, line = getLine(cm.doc, cur.line).text; + if (line) { + if (cur.ch == line.length) { cur = new Pos(cur.line, cur.ch - 1); } + if (cur.ch > 0) { + cur = new Pos(cur.line, cur.ch + 1); + cm.replaceRange(line.charAt(cur.ch - 1) + line.charAt(cur.ch - 2), + Pos(cur.line, cur.ch - 2), cur, "+transpose"); + } else if (cur.line > cm.doc.first) { + var prev = getLine(cm.doc, cur.line - 1).text; + if (prev) { + cur = new Pos(cur.line, 1); + cm.replaceRange(line.charAt(0) + cm.doc.lineSeparator() + + prev.charAt(prev.length - 1), + Pos(cur.line - 1, prev.length - 1), cur, "+transpose"); + } + } + } + newSel.push(new Range(cur, cur)); + } + cm.setSelections(newSel); + }); }, + newlineAndIndent: function (cm) { return runInOp(cm, function () { + var sels = cm.listSelections(); + for (var i = sels.length - 1; i >= 0; i--) + { cm.replaceRange(cm.doc.lineSeparator(), sels[i].anchor, sels[i].head, "+input"); } + sels = cm.listSelections(); + for (var i$1 = 0; i$1 < sels.length; i$1++) + { cm.indentLine(sels[i$1].from().line, null, true); } + ensureCursorVisible(cm); + }); }, + openLine: function (cm) { return cm.replaceSelection("\n", "start"); }, + toggleOverwrite: function (cm) { return cm.toggleOverwrite(); } + }; + + + function lineStart(cm, lineN) { + var line = getLine(cm.doc, lineN); + var visual = visualLine(line); + if (visual != line) { lineN = lineNo(visual); } + return endOfLine(true, cm, visual, lineN, 1) + } + function lineEnd(cm, lineN) { + var line = getLine(cm.doc, lineN); + var visual = visualLineEnd(line); + if (visual != line) { lineN = lineNo(visual); } + return endOfLine(true, cm, line, lineN, -1) + } + function lineStartSmart(cm, pos) { + var start = lineStart(cm, pos.line); + var line = getLine(cm.doc, start.line); + var order = getOrder(line, cm.doc.direction); + if (!order || order[0].level == 0) { + var firstNonWS = Math.max(start.ch, line.text.search(/\S/)); + var inWS = pos.line == start.line && pos.ch <= firstNonWS && pos.ch; + return Pos(start.line, inWS ? 0 : firstNonWS, start.sticky) + } + return start + } + + // Run a handler that was bound to a key. + function doHandleBinding(cm, bound, dropShift) { + if (typeof bound == "string") { + bound = commands[bound]; + if (!bound) { return false } + } + // Ensure previous input has been read, so that the handler sees a + // consistent view of the document + cm.display.input.ensurePolled(); + var prevShift = cm.display.shift, done = false; + try { + if (cm.isReadOnly()) { cm.state.suppressEdits = true; } + if (dropShift) { cm.display.shift = false; } + done = bound(cm) != Pass; + } finally { + cm.display.shift = prevShift; + cm.state.suppressEdits = false; + } + return done + } + + function lookupKeyForEditor(cm, name, handle) { + for (var i = 0; i < cm.state.keyMaps.length; i++) { + var result = lookupKey(name, cm.state.keyMaps[i], handle, cm); + if (result) { return result } + } + return (cm.options.extraKeys && lookupKey(name, cm.options.extraKeys, handle, cm)) + || lookupKey(name, cm.options.keyMap, handle, cm) + } + + // Note that, despite the name, this function is also used to check + // for bound mouse clicks. + + var stopSeq = new Delayed; + + function dispatchKey(cm, name, e, handle) { + var seq = cm.state.keySeq; + if (seq) { + if (isModifierKey(name)) { return "handled" } + if (/\'$/.test(name)) + { cm.state.keySeq = null; } + else + { stopSeq.set(50, function () { + if (cm.state.keySeq == seq) { + cm.state.keySeq = null; + cm.display.input.reset(); + } + }); } + if (dispatchKeyInner(cm, seq + " " + name, e, handle)) { return true } + } + return dispatchKeyInner(cm, name, e, handle) + } + + function dispatchKeyInner(cm, name, e, handle) { + var result = lookupKeyForEditor(cm, name, handle); + + if (result == "multi") + { cm.state.keySeq = name; } + if (result == "handled") + { signalLater(cm, "keyHandled", cm, name, e); } + + if (result == "handled" || result == "multi") { + e_preventDefault(e); + restartBlink(cm); + } + + return !!result + } + + // Handle a key from the keydown event. + function handleKeyBinding(cm, e) { + var name = keyName(e, true); + if (!name) { return false } + + if (e.shiftKey && !cm.state.keySeq) { + // First try to resolve full name (including 'Shift-'). Failing + // that, see if there is a cursor-motion command (starting with + // 'go') bound to the keyname without 'Shift-'. + return dispatchKey(cm, "Shift-" + name, e, function (b) { return doHandleBinding(cm, b, true); }) + || dispatchKey(cm, name, e, function (b) { + if (typeof b == "string" ? /^go[A-Z]/.test(b) : b.motion) + { return doHandleBinding(cm, b) } + }) + } else { + return dispatchKey(cm, name, e, function (b) { return doHandleBinding(cm, b); }) + } + } + + // Handle a key from the keypress event + function handleCharBinding(cm, e, ch) { + return dispatchKey(cm, "'" + ch + "'", e, function (b) { return doHandleBinding(cm, b, true); }) + } + + var lastStoppedKey = null; + function onKeyDown(e) { + var cm = this; + if (e.target && e.target != cm.display.input.getField()) { return } + cm.curOp.focus = activeElt(root(cm)); + if (signalDOMEvent(cm, e)) { return } + // IE does strange things with escape. + if (ie && ie_version < 11 && e.keyCode == 27) { e.returnValue = false; } + var code = e.keyCode; + cm.display.shift = code == 16 || e.shiftKey; + var handled = handleKeyBinding(cm, e); + if (presto) { + lastStoppedKey = handled ? code : null; + // Opera has no cut event... we try to at least catch the key combo + if (!handled && code == 88 && !hasCopyEvent && (mac ? e.metaKey : e.ctrlKey)) + { cm.replaceSelection("", null, "cut"); } + } + if (gecko && !mac && !handled && code == 46 && e.shiftKey && !e.ctrlKey && document.execCommand) + { document.execCommand("cut"); } + + // Turn mouse into crosshair when Alt is held on Mac. + if (code == 18 && !/\bCodeMirror-crosshair\b/.test(cm.display.lineDiv.className)) + { showCrossHair(cm); } + } + + function showCrossHair(cm) { + var lineDiv = cm.display.lineDiv; + addClass(lineDiv, "CodeMirror-crosshair"); + + function up(e) { + if (e.keyCode == 18 || !e.altKey) { + rmClass(lineDiv, "CodeMirror-crosshair"); + off(document, "keyup", up); + off(document, "mouseover", up); + } + } + on(document, "keyup", up); + on(document, "mouseover", up); + } + + function onKeyUp(e) { + if (e.keyCode == 16) { this.doc.sel.shift = false; } + signalDOMEvent(this, e); + } + + function onKeyPress(e) { + var cm = this; + if (e.target && e.target != cm.display.input.getField()) { return } + if (eventInWidget(cm.display, e) || signalDOMEvent(cm, e) || e.ctrlKey && !e.altKey || mac && e.metaKey) { return } + var keyCode = e.keyCode, charCode = e.charCode; + if (presto && keyCode == lastStoppedKey) {lastStoppedKey = null; e_preventDefault(e); return} + if ((presto && (!e.which || e.which < 10)) && handleKeyBinding(cm, e)) { return } + var ch = String.fromCharCode(charCode == null ? keyCode : charCode); + // Some browsers fire keypress events for backspace + if (ch == "\x08") { return } + if (handleCharBinding(cm, e, ch)) { return } + cm.display.input.onKeyPress(e); + } + + var DOUBLECLICK_DELAY = 400; + + var PastClick = function(time, pos, button) { + this.time = time; + this.pos = pos; + this.button = button; + }; + + PastClick.prototype.compare = function (time, pos, button) { + return this.time + DOUBLECLICK_DELAY > time && + cmp(pos, this.pos) == 0 && button == this.button + }; + + var lastClick, lastDoubleClick; + function clickRepeat(pos, button) { + var now = +new Date; + if (lastDoubleClick && lastDoubleClick.compare(now, pos, button)) { + lastClick = lastDoubleClick = null; + return "triple" + } else if (lastClick && lastClick.compare(now, pos, button)) { + lastDoubleClick = new PastClick(now, pos, button); + lastClick = null; + return "double" + } else { + lastClick = new PastClick(now, pos, button); + lastDoubleClick = null; + return "single" + } + } + + // A mouse down can be a single click, double click, triple click, + // start of selection drag, start of text drag, new cursor + // (ctrl-click), rectangle drag (alt-drag), or xwin + // middle-click-paste. Or it might be a click on something we should + // not interfere with, such as a scrollbar or widget. + function onMouseDown(e) { + var cm = this, display = cm.display; + if (signalDOMEvent(cm, e) || display.activeTouch && display.input.supportsTouch()) { return } + display.input.ensurePolled(); + display.shift = e.shiftKey; + + if (eventInWidget(display, e)) { + if (!webkit) { + // Briefly turn off draggability, to allow widgets to do + // normal dragging things. + display.scroller.draggable = false; + setTimeout(function () { return display.scroller.draggable = true; }, 100); + } + return + } + if (clickInGutter(cm, e)) { return } + var pos = posFromMouse(cm, e), button = e_button(e), repeat = pos ? clickRepeat(pos, button) : "single"; + win(cm).focus(); + + // #3261: make sure, that we're not starting a second selection + if (button == 1 && cm.state.selectingText) + { cm.state.selectingText(e); } + + if (pos && handleMappedButton(cm, button, pos, repeat, e)) { return } + + if (button == 1) { + if (pos) { leftButtonDown(cm, pos, repeat, e); } + else if (e_target(e) == display.scroller) { e_preventDefault(e); } + } else if (button == 2) { + if (pos) { extendSelection(cm.doc, pos); } + setTimeout(function () { return display.input.focus(); }, 20); + } else if (button == 3) { + if (captureRightClick) { cm.display.input.onContextMenu(e); } + else { delayBlurEvent(cm); } + } + } + + function handleMappedButton(cm, button, pos, repeat, event) { + var name = "Click"; + if (repeat == "double") { name = "Double" + name; } + else if (repeat == "triple") { name = "Triple" + name; } + name = (button == 1 ? "Left" : button == 2 ? "Middle" : "Right") + name; + + return dispatchKey(cm, addModifierNames(name, event), event, function (bound) { + if (typeof bound == "string") { bound = commands[bound]; } + if (!bound) { return false } + var done = false; + try { + if (cm.isReadOnly()) { cm.state.suppressEdits = true; } + done = bound(cm, pos) != Pass; + } finally { + cm.state.suppressEdits = false; + } + return done + }) + } + + function configureMouse(cm, repeat, event) { + var option = cm.getOption("configureMouse"); + var value = option ? option(cm, repeat, event) : {}; + if (value.unit == null) { + var rect = chromeOS ? event.shiftKey && event.metaKey : event.altKey; + value.unit = rect ? "rectangle" : repeat == "single" ? "char" : repeat == "double" ? "word" : "line"; + } + if (value.extend == null || cm.doc.extend) { value.extend = cm.doc.extend || event.shiftKey; } + if (value.addNew == null) { value.addNew = mac ? event.metaKey : event.ctrlKey; } + if (value.moveOnDrag == null) { value.moveOnDrag = !(mac ? event.altKey : event.ctrlKey); } + return value + } + + function leftButtonDown(cm, pos, repeat, event) { + if (ie) { setTimeout(bind(ensureFocus, cm), 0); } + else { cm.curOp.focus = activeElt(root(cm)); } + + var behavior = configureMouse(cm, repeat, event); + + var sel = cm.doc.sel, contained; + if (cm.options.dragDrop && dragAndDrop && !cm.isReadOnly() && + repeat == "single" && (contained = sel.contains(pos)) > -1 && + (cmp((contained = sel.ranges[contained]).from(), pos) < 0 || pos.xRel > 0) && + (cmp(contained.to(), pos) > 0 || pos.xRel < 0)) + { leftButtonStartDrag(cm, event, pos, behavior); } + else + { leftButtonSelect(cm, event, pos, behavior); } + } + + // Start a text drag. When it ends, see if any dragging actually + // happen, and treat as a click if it didn't. + function leftButtonStartDrag(cm, event, pos, behavior) { + var display = cm.display, moved = false; + var dragEnd = operation(cm, function (e) { + if (webkit) { display.scroller.draggable = false; } + cm.state.draggingText = false; + if (cm.state.delayingBlurEvent) { + if (cm.hasFocus()) { cm.state.delayingBlurEvent = false; } + else { delayBlurEvent(cm); } + } + off(display.wrapper.ownerDocument, "mouseup", dragEnd); + off(display.wrapper.ownerDocument, "mousemove", mouseMove); + off(display.scroller, "dragstart", dragStart); + off(display.scroller, "drop", dragEnd); + if (!moved) { + e_preventDefault(e); + if (!behavior.addNew) + { extendSelection(cm.doc, pos, null, null, behavior.extend); } + // Work around unexplainable focus problem in IE9 (#2127) and Chrome (#3081) + if ((webkit && !safari) || ie && ie_version == 9) + { setTimeout(function () {display.wrapper.ownerDocument.body.focus({preventScroll: true}); display.input.focus();}, 20); } + else + { display.input.focus(); } + } + }); + var mouseMove = function(e2) { + moved = moved || Math.abs(event.clientX - e2.clientX) + Math.abs(event.clientY - e2.clientY) >= 10; + }; + var dragStart = function () { return moved = true; }; + // Let the drag handler handle this. + if (webkit) { display.scroller.draggable = true; } + cm.state.draggingText = dragEnd; + dragEnd.copy = !behavior.moveOnDrag; + on(display.wrapper.ownerDocument, "mouseup", dragEnd); + on(display.wrapper.ownerDocument, "mousemove", mouseMove); + on(display.scroller, "dragstart", dragStart); + on(display.scroller, "drop", dragEnd); + + cm.state.delayingBlurEvent = true; + setTimeout(function () { return display.input.focus(); }, 20); + // IE's approach to draggable + if (display.scroller.dragDrop) { display.scroller.dragDrop(); } + } + + function rangeForUnit(cm, pos, unit) { + if (unit == "char") { return new Range(pos, pos) } + if (unit == "word") { return cm.findWordAt(pos) } + if (unit == "line") { return new Range(Pos(pos.line, 0), clipPos(cm.doc, Pos(pos.line + 1, 0))) } + var result = unit(cm, pos); + return new Range(result.from, result.to) + } + + // Normal selection, as opposed to text dragging. + function leftButtonSelect(cm, event, start, behavior) { + if (ie) { delayBlurEvent(cm); } + var display = cm.display, doc = cm.doc; + e_preventDefault(event); + + var ourRange, ourIndex, startSel = doc.sel, ranges = startSel.ranges; + if (behavior.addNew && !behavior.extend) { + ourIndex = doc.sel.contains(start); + if (ourIndex > -1) + { ourRange = ranges[ourIndex]; } + else + { ourRange = new Range(start, start); } + } else { + ourRange = doc.sel.primary(); + ourIndex = doc.sel.primIndex; + } + + if (behavior.unit == "rectangle") { + if (!behavior.addNew) { ourRange = new Range(start, start); } + start = posFromMouse(cm, event, true, true); + ourIndex = -1; + } else { + var range = rangeForUnit(cm, start, behavior.unit); + if (behavior.extend) + { ourRange = extendRange(ourRange, range.anchor, range.head, behavior.extend); } + else + { ourRange = range; } + } + + if (!behavior.addNew) { + ourIndex = 0; + setSelection(doc, new Selection([ourRange], 0), sel_mouse); + startSel = doc.sel; + } else if (ourIndex == -1) { + ourIndex = ranges.length; + setSelection(doc, normalizeSelection(cm, ranges.concat([ourRange]), ourIndex), + {scroll: false, origin: "*mouse"}); + } else if (ranges.length > 1 && ranges[ourIndex].empty() && behavior.unit == "char" && !behavior.extend) { + setSelection(doc, normalizeSelection(cm, ranges.slice(0, ourIndex).concat(ranges.slice(ourIndex + 1)), 0), + {scroll: false, origin: "*mouse"}); + startSel = doc.sel; + } else { + replaceOneSelection(doc, ourIndex, ourRange, sel_mouse); + } + + var lastPos = start; + function extendTo(pos) { + if (cmp(lastPos, pos) == 0) { return } + lastPos = pos; + + if (behavior.unit == "rectangle") { + var ranges = [], tabSize = cm.options.tabSize; + var startCol = countColumn(getLine(doc, start.line).text, start.ch, tabSize); + var posCol = countColumn(getLine(doc, pos.line).text, pos.ch, tabSize); + var left = Math.min(startCol, posCol), right = Math.max(startCol, posCol); + for (var line = Math.min(start.line, pos.line), end = Math.min(cm.lastLine(), Math.max(start.line, pos.line)); + line <= end; line++) { + var text = getLine(doc, line).text, leftPos = findColumn(text, left, tabSize); + if (left == right) + { ranges.push(new Range(Pos(line, leftPos), Pos(line, leftPos))); } + else if (text.length > leftPos) + { ranges.push(new Range(Pos(line, leftPos), Pos(line, findColumn(text, right, tabSize)))); } + } + if (!ranges.length) { ranges.push(new Range(start, start)); } + setSelection(doc, normalizeSelection(cm, startSel.ranges.slice(0, ourIndex).concat(ranges), ourIndex), + {origin: "*mouse", scroll: false}); + cm.scrollIntoView(pos); + } else { + var oldRange = ourRange; + var range = rangeForUnit(cm, pos, behavior.unit); + var anchor = oldRange.anchor, head; + if (cmp(range.anchor, anchor) > 0) { + head = range.head; + anchor = minPos(oldRange.from(), range.anchor); + } else { + head = range.anchor; + anchor = maxPos(oldRange.to(), range.head); + } + var ranges$1 = startSel.ranges.slice(0); + ranges$1[ourIndex] = bidiSimplify(cm, new Range(clipPos(doc, anchor), head)); + setSelection(doc, normalizeSelection(cm, ranges$1, ourIndex), sel_mouse); + } + } + + var editorSize = display.wrapper.getBoundingClientRect(); + // Used to ensure timeout re-tries don't fire when another extend + // happened in the meantime (clearTimeout isn't reliable -- at + // least on Chrome, the timeouts still happen even when cleared, + // if the clear happens after their scheduled firing time). + var counter = 0; + + function extend(e) { + var curCount = ++counter; + var cur = posFromMouse(cm, e, true, behavior.unit == "rectangle"); + if (!cur) { return } + if (cmp(cur, lastPos) != 0) { + cm.curOp.focus = activeElt(root(cm)); + extendTo(cur); + var visible = visibleLines(display, doc); + if (cur.line >= visible.to || cur.line < visible.from) + { setTimeout(operation(cm, function () {if (counter == curCount) { extend(e); }}), 150); } + } else { + var outside = e.clientY < editorSize.top ? -20 : e.clientY > editorSize.bottom ? 20 : 0; + if (outside) { setTimeout(operation(cm, function () { + if (counter != curCount) { return } + display.scroller.scrollTop += outside; + extend(e); + }), 50); } + } + } + + function done(e) { + cm.state.selectingText = false; + counter = Infinity; + // If e is null or undefined we interpret this as someone trying + // to explicitly cancel the selection rather than the user + // letting go of the mouse button. + if (e) { + e_preventDefault(e); + display.input.focus(); + } + off(display.wrapper.ownerDocument, "mousemove", move); + off(display.wrapper.ownerDocument, "mouseup", up); + doc.history.lastSelOrigin = null; + } + + var move = operation(cm, function (e) { + if (e.buttons === 0 || !e_button(e)) { done(e); } + else { extend(e); } + }); + var up = operation(cm, done); + cm.state.selectingText = up; + on(display.wrapper.ownerDocument, "mousemove", move); + on(display.wrapper.ownerDocument, "mouseup", up); + } + + // Used when mouse-selecting to adjust the anchor to the proper side + // of a bidi jump depending on the visual position of the head. + function bidiSimplify(cm, range) { + var anchor = range.anchor; + var head = range.head; + var anchorLine = getLine(cm.doc, anchor.line); + if (cmp(anchor, head) == 0 && anchor.sticky == head.sticky) { return range } + var order = getOrder(anchorLine); + if (!order) { return range } + var index = getBidiPartAt(order, anchor.ch, anchor.sticky), part = order[index]; + if (part.from != anchor.ch && part.to != anchor.ch) { return range } + var boundary = index + ((part.from == anchor.ch) == (part.level != 1) ? 0 : 1); + if (boundary == 0 || boundary == order.length) { return range } + + // Compute the relative visual position of the head compared to the + // anchor (<0 is to the left, >0 to the right) + var leftSide; + if (head.line != anchor.line) { + leftSide = (head.line - anchor.line) * (cm.doc.direction == "ltr" ? 1 : -1) > 0; + } else { + var headIndex = getBidiPartAt(order, head.ch, head.sticky); + var dir = headIndex - index || (head.ch - anchor.ch) * (part.level == 1 ? -1 : 1); + if (headIndex == boundary - 1 || headIndex == boundary) + { leftSide = dir < 0; } + else + { leftSide = dir > 0; } + } + + var usePart = order[boundary + (leftSide ? -1 : 0)]; + var from = leftSide == (usePart.level == 1); + var ch = from ? usePart.from : usePart.to, sticky = from ? "after" : "before"; + return anchor.ch == ch && anchor.sticky == sticky ? range : new Range(new Pos(anchor.line, ch, sticky), head) + } + + + // Determines whether an event happened in the gutter, and fires the + // handlers for the corresponding event. + function gutterEvent(cm, e, type, prevent) { + var mX, mY; + if (e.touches) { + mX = e.touches[0].clientX; + mY = e.touches[0].clientY; + } else { + try { mX = e.clientX; mY = e.clientY; } + catch(e$1) { return false } + } + if (mX >= Math.floor(cm.display.gutters.getBoundingClientRect().right)) { return false } + if (prevent) { e_preventDefault(e); } + + var display = cm.display; + var lineBox = display.lineDiv.getBoundingClientRect(); + + if (mY > lineBox.bottom || !hasHandler(cm, type)) { return e_defaultPrevented(e) } + mY -= lineBox.top - display.viewOffset; + + for (var i = 0; i < cm.display.gutterSpecs.length; ++i) { + var g = display.gutters.childNodes[i]; + if (g && g.getBoundingClientRect().right >= mX) { + var line = lineAtHeight(cm.doc, mY); + var gutter = cm.display.gutterSpecs[i]; + signal(cm, type, cm, line, gutter.className, e); + return e_defaultPrevented(e) + } + } + } + + function clickInGutter(cm, e) { + return gutterEvent(cm, e, "gutterClick", true) + } + + // CONTEXT MENU HANDLING + + // To make the context menu work, we need to briefly unhide the + // textarea (making it as unobtrusive as possible) to let the + // right-click take effect on it. + function onContextMenu(cm, e) { + if (eventInWidget(cm.display, e) || contextMenuInGutter(cm, e)) { return } + if (signalDOMEvent(cm, e, "contextmenu")) { return } + if (!captureRightClick) { cm.display.input.onContextMenu(e); } + } + + function contextMenuInGutter(cm, e) { + if (!hasHandler(cm, "gutterContextMenu")) { return false } + return gutterEvent(cm, e, "gutterContextMenu", false) + } + + function themeChanged(cm) { + cm.display.wrapper.className = cm.display.wrapper.className.replace(/\s*cm-s-\S+/g, "") + + cm.options.theme.replace(/(^|\s)\s*/g, " cm-s-"); + clearCaches(cm); + } + + var Init = {toString: function(){return "CodeMirror.Init"}}; + + var defaults = {}; + var optionHandlers = {}; + + function defineOptions(CodeMirror) { + var optionHandlers = CodeMirror.optionHandlers; + + function option(name, deflt, handle, notOnInit) { + CodeMirror.defaults[name] = deflt; + if (handle) { optionHandlers[name] = + notOnInit ? function (cm, val, old) {if (old != Init) { handle(cm, val, old); }} : handle; } + } + + CodeMirror.defineOption = option; + + // Passed to option handlers when there is no old value. + CodeMirror.Init = Init; + + // These two are, on init, called from the constructor because they + // have to be initialized before the editor can start at all. + option("value", "", function (cm, val) { return cm.setValue(val); }, true); + option("mode", null, function (cm, val) { + cm.doc.modeOption = val; + loadMode(cm); + }, true); + + option("indentUnit", 2, loadMode, true); + option("indentWithTabs", false); + option("smartIndent", true); + option("tabSize", 4, function (cm) { + resetModeState(cm); + clearCaches(cm); + regChange(cm); + }, true); + + option("lineSeparator", null, function (cm, val) { + cm.doc.lineSep = val; + if (!val) { return } + var newBreaks = [], lineNo = cm.doc.first; + cm.doc.iter(function (line) { + for (var pos = 0;;) { + var found = line.text.indexOf(val, pos); + if (found == -1) { break } + pos = found + val.length; + newBreaks.push(Pos(lineNo, found)); + } + lineNo++; + }); + for (var i = newBreaks.length - 1; i >= 0; i--) + { replaceRange(cm.doc, val, newBreaks[i], Pos(newBreaks[i].line, newBreaks[i].ch + val.length)); } + }); + option("specialChars", /[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b\u200e\u200f\u2028\u2029\u202d\u202e\u2066\u2067\u2069\ufeff\ufff9-\ufffc]/g, function (cm, val, old) { + cm.state.specialChars = new RegExp(val.source + (val.test("\t") ? "" : "|\t"), "g"); + if (old != Init) { cm.refresh(); } + }); + option("specialCharPlaceholder", defaultSpecialCharPlaceholder, function (cm) { return cm.refresh(); }, true); + option("electricChars", true); + option("inputStyle", mobile ? "contenteditable" : "textarea", function () { + throw new Error("inputStyle can not (yet) be changed in a running editor") // FIXME + }, true); + option("spellcheck", false, function (cm, val) { return cm.getInputField().spellcheck = val; }, true); + option("autocorrect", false, function (cm, val) { return cm.getInputField().autocorrect = val; }, true); + option("autocapitalize", false, function (cm, val) { return cm.getInputField().autocapitalize = val; }, true); + option("rtlMoveVisually", !windows); + option("wholeLineUpdateBefore", true); + + option("theme", "default", function (cm) { + themeChanged(cm); + updateGutters(cm); + }, true); + option("keyMap", "default", function (cm, val, old) { + var next = getKeyMap(val); + var prev = old != Init && getKeyMap(old); + if (prev && prev.detach) { prev.detach(cm, next); } + if (next.attach) { next.attach(cm, prev || null); } + }); + option("extraKeys", null); + option("configureMouse", null); + + option("lineWrapping", false, wrappingChanged, true); + option("gutters", [], function (cm, val) { + cm.display.gutterSpecs = getGutters(val, cm.options.lineNumbers); + updateGutters(cm); + }, true); + option("fixedGutter", true, function (cm, val) { + cm.display.gutters.style.left = val ? compensateForHScroll(cm.display) + "px" : "0"; + cm.refresh(); + }, true); + option("coverGutterNextToScrollbar", false, function (cm) { return updateScrollbars(cm); }, true); + option("scrollbarStyle", "native", function (cm) { + initScrollbars(cm); + updateScrollbars(cm); + cm.display.scrollbars.setScrollTop(cm.doc.scrollTop); + cm.display.scrollbars.setScrollLeft(cm.doc.scrollLeft); + }, true); + option("lineNumbers", false, function (cm, val) { + cm.display.gutterSpecs = getGutters(cm.options.gutters, val); + updateGutters(cm); + }, true); + option("firstLineNumber", 1, updateGutters, true); + option("lineNumberFormatter", function (integer) { return integer; }, updateGutters, true); + option("showCursorWhenSelecting", false, updateSelection, true); + + option("resetSelectionOnContextMenu", true); + option("lineWiseCopyCut", true); + option("pasteLinesPerSelection", true); + option("selectionsMayTouch", false); + + option("readOnly", false, function (cm, val) { + if (val == "nocursor") { + onBlur(cm); + cm.display.input.blur(); + } + cm.display.input.readOnlyChanged(val); + }); + + option("screenReaderLabel", null, function (cm, val) { + val = (val === '') ? null : val; + cm.display.input.screenReaderLabelChanged(val); + }); + + option("disableInput", false, function (cm, val) {if (!val) { cm.display.input.reset(); }}, true); + option("dragDrop", true, dragDropChanged); + option("allowDropFileTypes", null); + + option("cursorBlinkRate", 530); + option("cursorScrollMargin", 0); + option("cursorHeight", 1, updateSelection, true); + option("singleCursorHeightPerLine", true, updateSelection, true); + option("workTime", 100); + option("workDelay", 100); + option("flattenSpans", true, resetModeState, true); + option("addModeClass", false, resetModeState, true); + option("pollInterval", 100); + option("undoDepth", 200, function (cm, val) { return cm.doc.history.undoDepth = val; }); + option("historyEventDelay", 1250); + option("viewportMargin", 10, function (cm) { return cm.refresh(); }, true); + option("maxHighlightLength", 10000, resetModeState, true); + option("moveInputWithCursor", true, function (cm, val) { + if (!val) { cm.display.input.resetPosition(); } + }); + + option("tabindex", null, function (cm, val) { return cm.display.input.getField().tabIndex = val || ""; }); + option("autofocus", null); + option("direction", "ltr", function (cm, val) { return cm.doc.setDirection(val); }, true); + option("phrases", null); + } + + function dragDropChanged(cm, value, old) { + var wasOn = old && old != Init; + if (!value != !wasOn) { + var funcs = cm.display.dragFunctions; + var toggle = value ? on : off; + toggle(cm.display.scroller, "dragstart", funcs.start); + toggle(cm.display.scroller, "dragenter", funcs.enter); + toggle(cm.display.scroller, "dragover", funcs.over); + toggle(cm.display.scroller, "dragleave", funcs.leave); + toggle(cm.display.scroller, "drop", funcs.drop); + } + } + + function wrappingChanged(cm) { + if (cm.options.lineWrapping) { + addClass(cm.display.wrapper, "CodeMirror-wrap"); + cm.display.sizer.style.minWidth = ""; + cm.display.sizerWidth = null; + } else { + rmClass(cm.display.wrapper, "CodeMirror-wrap"); + findMaxLine(cm); + } + estimateLineHeights(cm); + regChange(cm); + clearCaches(cm); + setTimeout(function () { return updateScrollbars(cm); }, 100); + } + + // A CodeMirror instance represents an editor. This is the object + // that user code is usually dealing with. + + function CodeMirror(place, options) { + var this$1 = this; + + if (!(this instanceof CodeMirror)) { return new CodeMirror(place, options) } + + this.options = options = options ? copyObj(options) : {}; + // Determine effective options based on given values and defaults. + copyObj(defaults, options, false); + + var doc = options.value; + if (typeof doc == "string") { doc = new Doc(doc, options.mode, null, options.lineSeparator, options.direction); } + else if (options.mode) { doc.modeOption = options.mode; } + this.doc = doc; + + var input = new CodeMirror.inputStyles[options.inputStyle](this); + var display = this.display = new Display(place, doc, input, options); + display.wrapper.CodeMirror = this; + themeChanged(this); + if (options.lineWrapping) + { this.display.wrapper.className += " CodeMirror-wrap"; } + initScrollbars(this); + + this.state = { + keyMaps: [], // stores maps added by addKeyMap + overlays: [], // highlighting overlays, as added by addOverlay + modeGen: 0, // bumped when mode/overlay changes, used to invalidate highlighting info + overwrite: false, + delayingBlurEvent: false, + focused: false, + suppressEdits: false, // used to disable editing during key handlers when in readOnly mode + pasteIncoming: -1, cutIncoming: -1, // help recognize paste/cut edits in input.poll + selectingText: false, + draggingText: false, + highlight: new Delayed(), // stores highlight worker timeout + keySeq: null, // Unfinished key sequence + specialChars: null + }; + + if (options.autofocus && !mobile) { display.input.focus(); } + + // Override magic textarea content restore that IE sometimes does + // on our hidden textarea on reload + if (ie && ie_version < 11) { setTimeout(function () { return this$1.display.input.reset(true); }, 20); } + + registerEventHandlers(this); + ensureGlobalHandlers(); + + startOperation(this); + this.curOp.forceUpdate = true; + attachDoc(this, doc); + + if ((options.autofocus && !mobile) || this.hasFocus()) + { setTimeout(function () { + if (this$1.hasFocus() && !this$1.state.focused) { onFocus(this$1); } + }, 20); } + else + { onBlur(this); } + + for (var opt in optionHandlers) { if (optionHandlers.hasOwnProperty(opt)) + { optionHandlers[opt](this, options[opt], Init); } } + maybeUpdateLineNumberWidth(this); + if (options.finishInit) { options.finishInit(this); } + for (var i = 0; i < initHooks.length; ++i) { initHooks[i](this); } + endOperation(this); + // Suppress optimizelegibility in Webkit, since it breaks text + // measuring on line wrapping boundaries. + if (webkit && options.lineWrapping && + getComputedStyle(display.lineDiv).textRendering == "optimizelegibility") + { display.lineDiv.style.textRendering = "auto"; } + } + + // The default configuration options. + CodeMirror.defaults = defaults; + // Functions to run when options are changed. + CodeMirror.optionHandlers = optionHandlers; + + // Attach the necessary event handlers when initializing the editor + function registerEventHandlers(cm) { + var d = cm.display; + on(d.scroller, "mousedown", operation(cm, onMouseDown)); + // Older IE's will not fire a second mousedown for a double click + if (ie && ie_version < 11) + { on(d.scroller, "dblclick", operation(cm, function (e) { + if (signalDOMEvent(cm, e)) { return } + var pos = posFromMouse(cm, e); + if (!pos || clickInGutter(cm, e) || eventInWidget(cm.display, e)) { return } + e_preventDefault(e); + var word = cm.findWordAt(pos); + extendSelection(cm.doc, word.anchor, word.head); + })); } + else + { on(d.scroller, "dblclick", function (e) { return signalDOMEvent(cm, e) || e_preventDefault(e); }); } + // Some browsers fire contextmenu *after* opening the menu, at + // which point we can't mess with it anymore. Context menu is + // handled in onMouseDown for these browsers. + on(d.scroller, "contextmenu", function (e) { return onContextMenu(cm, e); }); + on(d.input.getField(), "contextmenu", function (e) { + if (!d.scroller.contains(e.target)) { onContextMenu(cm, e); } + }); + + // Used to suppress mouse event handling when a touch happens + var touchFinished, prevTouch = {end: 0}; + function finishTouch() { + if (d.activeTouch) { + touchFinished = setTimeout(function () { return d.activeTouch = null; }, 1000); + prevTouch = d.activeTouch; + prevTouch.end = +new Date; + } + } + function isMouseLikeTouchEvent(e) { + if (e.touches.length != 1) { return false } + var touch = e.touches[0]; + return touch.radiusX <= 1 && touch.radiusY <= 1 + } + function farAway(touch, other) { + if (other.left == null) { return true } + var dx = other.left - touch.left, dy = other.top - touch.top; + return dx * dx + dy * dy > 20 * 20 + } + on(d.scroller, "touchstart", function (e) { + if (!signalDOMEvent(cm, e) && !isMouseLikeTouchEvent(e) && !clickInGutter(cm, e)) { + d.input.ensurePolled(); + clearTimeout(touchFinished); + var now = +new Date; + d.activeTouch = {start: now, moved: false, + prev: now - prevTouch.end <= 300 ? prevTouch : null}; + if (e.touches.length == 1) { + d.activeTouch.left = e.touches[0].pageX; + d.activeTouch.top = e.touches[0].pageY; + } + } + }); + on(d.scroller, "touchmove", function () { + if (d.activeTouch) { d.activeTouch.moved = true; } + }); + on(d.scroller, "touchend", function (e) { + var touch = d.activeTouch; + if (touch && !eventInWidget(d, e) && touch.left != null && + !touch.moved && new Date - touch.start < 300) { + var pos = cm.coordsChar(d.activeTouch, "page"), range; + if (!touch.prev || farAway(touch, touch.prev)) // Single tap + { range = new Range(pos, pos); } + else if (!touch.prev.prev || farAway(touch, touch.prev.prev)) // Double tap + { range = cm.findWordAt(pos); } + else // Triple tap + { range = new Range(Pos(pos.line, 0), clipPos(cm.doc, Pos(pos.line + 1, 0))); } + cm.setSelection(range.anchor, range.head); + cm.focus(); + e_preventDefault(e); + } + finishTouch(); + }); + on(d.scroller, "touchcancel", finishTouch); + + // Sync scrolling between fake scrollbars and real scrollable + // area, ensure viewport is updated when scrolling. + on(d.scroller, "scroll", function () { + if (d.scroller.clientHeight) { + updateScrollTop(cm, d.scroller.scrollTop); + setScrollLeft(cm, d.scroller.scrollLeft, true); + signal(cm, "scroll", cm); + } + }); + + // Listen to wheel events in order to try and update the viewport on time. + on(d.scroller, "mousewheel", function (e) { return onScrollWheel(cm, e); }); + on(d.scroller, "DOMMouseScroll", function (e) { return onScrollWheel(cm, e); }); + + // Prevent wrapper from ever scrolling + on(d.wrapper, "scroll", function () { return d.wrapper.scrollTop = d.wrapper.scrollLeft = 0; }); + + d.dragFunctions = { + enter: function (e) {if (!signalDOMEvent(cm, e)) { e_stop(e); }}, + over: function (e) {if (!signalDOMEvent(cm, e)) { onDragOver(cm, e); e_stop(e); }}, + start: function (e) { return onDragStart(cm, e); }, + drop: operation(cm, onDrop), + leave: function (e) {if (!signalDOMEvent(cm, e)) { clearDragCursor(cm); }} + }; + + var inp = d.input.getField(); + on(inp, "keyup", function (e) { return onKeyUp.call(cm, e); }); + on(inp, "keydown", operation(cm, onKeyDown)); + on(inp, "keypress", operation(cm, onKeyPress)); + on(inp, "focus", function (e) { return onFocus(cm, e); }); + on(inp, "blur", function (e) { return onBlur(cm, e); }); + } + + var initHooks = []; + CodeMirror.defineInitHook = function (f) { return initHooks.push(f); }; + + // Indent the given line. The how parameter can be "smart", + // "add"/null, "subtract", or "prev". When aggressive is false + // (typically set to true for forced single-line indents), empty + // lines are not indented, and places where the mode returns Pass + // are left alone. + function indentLine(cm, n, how, aggressive) { + var doc = cm.doc, state; + if (how == null) { how = "add"; } + if (how == "smart") { + // Fall back to "prev" when the mode doesn't have an indentation + // method. + if (!doc.mode.indent) { how = "prev"; } + else { state = getContextBefore(cm, n).state; } + } + + var tabSize = cm.options.tabSize; + var line = getLine(doc, n), curSpace = countColumn(line.text, null, tabSize); + if (line.stateAfter) { line.stateAfter = null; } + var curSpaceString = line.text.match(/^\s*/)[0], indentation; + if (!aggressive && !/\S/.test(line.text)) { + indentation = 0; + how = "not"; + } else if (how == "smart") { + indentation = doc.mode.indent(state, line.text.slice(curSpaceString.length), line.text); + if (indentation == Pass || indentation > 150) { + if (!aggressive) { return } + how = "prev"; + } + } + if (how == "prev") { + if (n > doc.first) { indentation = countColumn(getLine(doc, n-1).text, null, tabSize); } + else { indentation = 0; } + } else if (how == "add") { + indentation = curSpace + cm.options.indentUnit; + } else if (how == "subtract") { + indentation = curSpace - cm.options.indentUnit; + } else if (typeof how == "number") { + indentation = curSpace + how; + } + indentation = Math.max(0, indentation); + + var indentString = "", pos = 0; + if (cm.options.indentWithTabs) + { for (var i = Math.floor(indentation / tabSize); i; --i) {pos += tabSize; indentString += "\t";} } + if (pos < indentation) { indentString += spaceStr(indentation - pos); } + + if (indentString != curSpaceString) { + replaceRange(doc, indentString, Pos(n, 0), Pos(n, curSpaceString.length), "+input"); + line.stateAfter = null; + return true + } else { + // Ensure that, if the cursor was in the whitespace at the start + // of the line, it is moved to the end of that space. + for (var i$1 = 0; i$1 < doc.sel.ranges.length; i$1++) { + var range = doc.sel.ranges[i$1]; + if (range.head.line == n && range.head.ch < curSpaceString.length) { + var pos$1 = Pos(n, curSpaceString.length); + replaceOneSelection(doc, i$1, new Range(pos$1, pos$1)); + break + } + } + } + } + + // This will be set to a {lineWise: bool, text: [string]} object, so + // that, when pasting, we know what kind of selections the copied + // text was made out of. + var lastCopied = null; + + function setLastCopied(newLastCopied) { + lastCopied = newLastCopied; + } + + function applyTextInput(cm, inserted, deleted, sel, origin) { + var doc = cm.doc; + cm.display.shift = false; + if (!sel) { sel = doc.sel; } + + var recent = +new Date - 200; + var paste = origin == "paste" || cm.state.pasteIncoming > recent; + var textLines = splitLinesAuto(inserted), multiPaste = null; + // When pasting N lines into N selections, insert one line per selection + if (paste && sel.ranges.length > 1) { + if (lastCopied && lastCopied.text.join("\n") == inserted) { + if (sel.ranges.length % lastCopied.text.length == 0) { + multiPaste = []; + for (var i = 0; i < lastCopied.text.length; i++) + { multiPaste.push(doc.splitLines(lastCopied.text[i])); } + } + } else if (textLines.length == sel.ranges.length && cm.options.pasteLinesPerSelection) { + multiPaste = map(textLines, function (l) { return [l]; }); + } + } + + var updateInput = cm.curOp.updateInput; + // Normal behavior is to insert the new text into every selection + for (var i$1 = sel.ranges.length - 1; i$1 >= 0; i$1--) { + var range = sel.ranges[i$1]; + var from = range.from(), to = range.to(); + if (range.empty()) { + if (deleted && deleted > 0) // Handle deletion + { from = Pos(from.line, from.ch - deleted); } + else if (cm.state.overwrite && !paste) // Handle overwrite + { to = Pos(to.line, Math.min(getLine(doc, to.line).text.length, to.ch + lst(textLines).length)); } + else if (paste && lastCopied && lastCopied.lineWise && lastCopied.text.join("\n") == textLines.join("\n")) + { from = to = Pos(from.line, 0); } + } + var changeEvent = {from: from, to: to, text: multiPaste ? multiPaste[i$1 % multiPaste.length] : textLines, + origin: origin || (paste ? "paste" : cm.state.cutIncoming > recent ? "cut" : "+input")}; + makeChange(cm.doc, changeEvent); + signalLater(cm, "inputRead", cm, changeEvent); + } + if (inserted && !paste) + { triggerElectric(cm, inserted); } + + ensureCursorVisible(cm); + if (cm.curOp.updateInput < 2) { cm.curOp.updateInput = updateInput; } + cm.curOp.typing = true; + cm.state.pasteIncoming = cm.state.cutIncoming = -1; + } + + function handlePaste(e, cm) { + var pasted = e.clipboardData && e.clipboardData.getData("Text"); + if (pasted) { + e.preventDefault(); + if (!cm.isReadOnly() && !cm.options.disableInput && cm.hasFocus()) + { runInOp(cm, function () { return applyTextInput(cm, pasted, 0, null, "paste"); }); } + return true + } + } + + function triggerElectric(cm, inserted) { + // When an 'electric' character is inserted, immediately trigger a reindent + if (!cm.options.electricChars || !cm.options.smartIndent) { return } + var sel = cm.doc.sel; + + for (var i = sel.ranges.length - 1; i >= 0; i--) { + var range = sel.ranges[i]; + if (range.head.ch > 100 || (i && sel.ranges[i - 1].head.line == range.head.line)) { continue } + var mode = cm.getModeAt(range.head); + var indented = false; + if (mode.electricChars) { + for (var j = 0; j < mode.electricChars.length; j++) + { if (inserted.indexOf(mode.electricChars.charAt(j)) > -1) { + indented = indentLine(cm, range.head.line, "smart"); + break + } } + } else if (mode.electricInput) { + if (mode.electricInput.test(getLine(cm.doc, range.head.line).text.slice(0, range.head.ch))) + { indented = indentLine(cm, range.head.line, "smart"); } + } + if (indented) { signalLater(cm, "electricInput", cm, range.head.line); } + } + } + + function copyableRanges(cm) { + var text = [], ranges = []; + for (var i = 0; i < cm.doc.sel.ranges.length; i++) { + var line = cm.doc.sel.ranges[i].head.line; + var lineRange = {anchor: Pos(line, 0), head: Pos(line + 1, 0)}; + ranges.push(lineRange); + text.push(cm.getRange(lineRange.anchor, lineRange.head)); + } + return {text: text, ranges: ranges} + } + + function disableBrowserMagic(field, spellcheck, autocorrect, autocapitalize) { + field.setAttribute("autocorrect", autocorrect ? "on" : "off"); + field.setAttribute("autocapitalize", autocapitalize ? "on" : "off"); + field.setAttribute("spellcheck", !!spellcheck); + } + + function hiddenTextarea() { + var te = elt("textarea", null, null, "position: absolute; bottom: -1em; padding: 0; width: 1px; height: 1em; min-height: 1em; outline: none"); + var div = elt("div", [te], null, "overflow: hidden; position: relative; width: 3px; height: 0px;"); + // The textarea is kept positioned near the cursor to prevent the + // fact that it'll be scrolled into view on input from scrolling + // our fake cursor out of view. On webkit, when wrap=off, paste is + // very slow. So make the area wide instead. + if (webkit) { te.style.width = "1000px"; } + else { te.setAttribute("wrap", "off"); } + // If border: 0; -- iOS fails to open keyboard (issue #1287) + if (ios) { te.style.border = "1px solid black"; } + return div + } + + // The publicly visible API. Note that methodOp(f) means + // 'wrap f in an operation, performed on its `this` parameter'. + + // This is not the complete set of editor methods. Most of the + // methods defined on the Doc type are also injected into + // CodeMirror.prototype, for backwards compatibility and + // convenience. + + function addEditorMethods(CodeMirror) { + var optionHandlers = CodeMirror.optionHandlers; + + var helpers = CodeMirror.helpers = {}; + + CodeMirror.prototype = { + constructor: CodeMirror, + focus: function(){win(this).focus(); this.display.input.focus();}, + + setOption: function(option, value) { + var options = this.options, old = options[option]; + if (options[option] == value && option != "mode") { return } + options[option] = value; + if (optionHandlers.hasOwnProperty(option)) + { operation(this, optionHandlers[option])(this, value, old); } + signal(this, "optionChange", this, option); + }, + + getOption: function(option) {return this.options[option]}, + getDoc: function() {return this.doc}, + + addKeyMap: function(map, bottom) { + this.state.keyMaps[bottom ? "push" : "unshift"](getKeyMap(map)); + }, + removeKeyMap: function(map) { + var maps = this.state.keyMaps; + for (var i = 0; i < maps.length; ++i) + { if (maps[i] == map || maps[i].name == map) { + maps.splice(i, 1); + return true + } } + }, + + addOverlay: methodOp(function(spec, options) { + var mode = spec.token ? spec : CodeMirror.getMode(this.options, spec); + if (mode.startState) { throw new Error("Overlays may not be stateful.") } + insertSorted(this.state.overlays, + {mode: mode, modeSpec: spec, opaque: options && options.opaque, + priority: (options && options.priority) || 0}, + function (overlay) { return overlay.priority; }); + this.state.modeGen++; + regChange(this); + }), + removeOverlay: methodOp(function(spec) { + var overlays = this.state.overlays; + for (var i = 0; i < overlays.length; ++i) { + var cur = overlays[i].modeSpec; + if (cur == spec || typeof spec == "string" && cur.name == spec) { + overlays.splice(i, 1); + this.state.modeGen++; + regChange(this); + return + } + } + }), + + indentLine: methodOp(function(n, dir, aggressive) { + if (typeof dir != "string" && typeof dir != "number") { + if (dir == null) { dir = this.options.smartIndent ? "smart" : "prev"; } + else { dir = dir ? "add" : "subtract"; } + } + if (isLine(this.doc, n)) { indentLine(this, n, dir, aggressive); } + }), + indentSelection: methodOp(function(how) { + var ranges = this.doc.sel.ranges, end = -1; + for (var i = 0; i < ranges.length; i++) { + var range = ranges[i]; + if (!range.empty()) { + var from = range.from(), to = range.to(); + var start = Math.max(end, from.line); + end = Math.min(this.lastLine(), to.line - (to.ch ? 0 : 1)) + 1; + for (var j = start; j < end; ++j) + { indentLine(this, j, how); } + var newRanges = this.doc.sel.ranges; + if (from.ch == 0 && ranges.length == newRanges.length && newRanges[i].from().ch > 0) + { replaceOneSelection(this.doc, i, new Range(from, newRanges[i].to()), sel_dontScroll); } + } else if (range.head.line > end) { + indentLine(this, range.head.line, how, true); + end = range.head.line; + if (i == this.doc.sel.primIndex) { ensureCursorVisible(this); } + } + } + }), + + // Fetch the parser token for a given character. Useful for hacks + // that want to inspect the mode state (say, for completion). + getTokenAt: function(pos, precise) { + return takeToken(this, pos, precise) + }, + + getLineTokens: function(line, precise) { + return takeToken(this, Pos(line), precise, true) + }, + + getTokenTypeAt: function(pos) { + pos = clipPos(this.doc, pos); + var styles = getLineStyles(this, getLine(this.doc, pos.line)); + var before = 0, after = (styles.length - 1) / 2, ch = pos.ch; + var type; + if (ch == 0) { type = styles[2]; } + else { for (;;) { + var mid = (before + after) >> 1; + if ((mid ? styles[mid * 2 - 1] : 0) >= ch) { after = mid; } + else if (styles[mid * 2 + 1] < ch) { before = mid + 1; } + else { type = styles[mid * 2 + 2]; break } + } } + var cut = type ? type.indexOf("overlay ") : -1; + return cut < 0 ? type : cut == 0 ? null : type.slice(0, cut - 1) + }, + + getModeAt: function(pos) { + var mode = this.doc.mode; + if (!mode.innerMode) { return mode } + return CodeMirror.innerMode(mode, this.getTokenAt(pos).state).mode + }, + + getHelper: function(pos, type) { + return this.getHelpers(pos, type)[0] + }, + + getHelpers: function(pos, type) { + var found = []; + if (!helpers.hasOwnProperty(type)) { return found } + var help = helpers[type], mode = this.getModeAt(pos); + if (typeof mode[type] == "string") { + if (help[mode[type]]) { found.push(help[mode[type]]); } + } else if (mode[type]) { + for (var i = 0; i < mode[type].length; i++) { + var val = help[mode[type][i]]; + if (val) { found.push(val); } + } + } else if (mode.helperType && help[mode.helperType]) { + found.push(help[mode.helperType]); + } else if (help[mode.name]) { + found.push(help[mode.name]); + } + for (var i$1 = 0; i$1 < help._global.length; i$1++) { + var cur = help._global[i$1]; + if (cur.pred(mode, this) && indexOf(found, cur.val) == -1) + { found.push(cur.val); } + } + return found + }, + + getStateAfter: function(line, precise) { + var doc = this.doc; + line = clipLine(doc, line == null ? doc.first + doc.size - 1: line); + return getContextBefore(this, line + 1, precise).state + }, + + cursorCoords: function(start, mode) { + var pos, range = this.doc.sel.primary(); + if (start == null) { pos = range.head; } + else if (typeof start == "object") { pos = clipPos(this.doc, start); } + else { pos = start ? range.from() : range.to(); } + return cursorCoords(this, pos, mode || "page") + }, + + charCoords: function(pos, mode) { + return charCoords(this, clipPos(this.doc, pos), mode || "page") + }, + + coordsChar: function(coords, mode) { + coords = fromCoordSystem(this, coords, mode || "page"); + return coordsChar(this, coords.left, coords.top) + }, + + lineAtHeight: function(height, mode) { + height = fromCoordSystem(this, {top: height, left: 0}, mode || "page").top; + return lineAtHeight(this.doc, height + this.display.viewOffset) + }, + heightAtLine: function(line, mode, includeWidgets) { + var end = false, lineObj; + if (typeof line == "number") { + var last = this.doc.first + this.doc.size - 1; + if (line < this.doc.first) { line = this.doc.first; } + else if (line > last) { line = last; end = true; } + lineObj = getLine(this.doc, line); + } else { + lineObj = line; + } + return intoCoordSystem(this, lineObj, {top: 0, left: 0}, mode || "page", includeWidgets || end).top + + (end ? this.doc.height - heightAtLine(lineObj) : 0) + }, + + defaultTextHeight: function() { return textHeight(this.display) }, + defaultCharWidth: function() { return charWidth(this.display) }, + + getViewport: function() { return {from: this.display.viewFrom, to: this.display.viewTo}}, + + addWidget: function(pos, node, scroll, vert, horiz) { + var display = this.display; + pos = cursorCoords(this, clipPos(this.doc, pos)); + var top = pos.bottom, left = pos.left; + node.style.position = "absolute"; + node.setAttribute("cm-ignore-events", "true"); + this.display.input.setUneditable(node); + display.sizer.appendChild(node); + if (vert == "over") { + top = pos.top; + } else if (vert == "above" || vert == "near") { + var vspace = Math.max(display.wrapper.clientHeight, this.doc.height), + hspace = Math.max(display.sizer.clientWidth, display.lineSpace.clientWidth); + // Default to positioning above (if specified and possible); otherwise default to positioning below + if ((vert == 'above' || pos.bottom + node.offsetHeight > vspace) && pos.top > node.offsetHeight) + { top = pos.top - node.offsetHeight; } + else if (pos.bottom + node.offsetHeight <= vspace) + { top = pos.bottom; } + if (left + node.offsetWidth > hspace) + { left = hspace - node.offsetWidth; } + } + node.style.top = top + "px"; + node.style.left = node.style.right = ""; + if (horiz == "right") { + left = display.sizer.clientWidth - node.offsetWidth; + node.style.right = "0px"; + } else { + if (horiz == "left") { left = 0; } + else if (horiz == "middle") { left = (display.sizer.clientWidth - node.offsetWidth) / 2; } + node.style.left = left + "px"; + } + if (scroll) + { scrollIntoView(this, {left: left, top: top, right: left + node.offsetWidth, bottom: top + node.offsetHeight}); } + }, + + triggerOnKeyDown: methodOp(onKeyDown), + triggerOnKeyPress: methodOp(onKeyPress), + triggerOnKeyUp: onKeyUp, + triggerOnMouseDown: methodOp(onMouseDown), + + execCommand: function(cmd) { + if (commands.hasOwnProperty(cmd)) + { return commands[cmd].call(null, this) } + }, + + triggerElectric: methodOp(function(text) { triggerElectric(this, text); }), + + findPosH: function(from, amount, unit, visually) { + var dir = 1; + if (amount < 0) { dir = -1; amount = -amount; } + var cur = clipPos(this.doc, from); + for (var i = 0; i < amount; ++i) { + cur = findPosH(this.doc, cur, dir, unit, visually); + if (cur.hitSide) { break } + } + return cur + }, + + moveH: methodOp(function(dir, unit) { + var this$1 = this; + + this.extendSelectionsBy(function (range) { + if (this$1.display.shift || this$1.doc.extend || range.empty()) + { return findPosH(this$1.doc, range.head, dir, unit, this$1.options.rtlMoveVisually) } + else + { return dir < 0 ? range.from() : range.to() } + }, sel_move); + }), + + deleteH: methodOp(function(dir, unit) { + var sel = this.doc.sel, doc = this.doc; + if (sel.somethingSelected()) + { doc.replaceSelection("", null, "+delete"); } + else + { deleteNearSelection(this, function (range) { + var other = findPosH(doc, range.head, dir, unit, false); + return dir < 0 ? {from: other, to: range.head} : {from: range.head, to: other} + }); } + }), + + findPosV: function(from, amount, unit, goalColumn) { + var dir = 1, x = goalColumn; + if (amount < 0) { dir = -1; amount = -amount; } + var cur = clipPos(this.doc, from); + for (var i = 0; i < amount; ++i) { + var coords = cursorCoords(this, cur, "div"); + if (x == null) { x = coords.left; } + else { coords.left = x; } + cur = findPosV(this, coords, dir, unit); + if (cur.hitSide) { break } + } + return cur + }, + + moveV: methodOp(function(dir, unit) { + var this$1 = this; + + var doc = this.doc, goals = []; + var collapse = !this.display.shift && !doc.extend && doc.sel.somethingSelected(); + doc.extendSelectionsBy(function (range) { + if (collapse) + { return dir < 0 ? range.from() : range.to() } + var headPos = cursorCoords(this$1, range.head, "div"); + if (range.goalColumn != null) { headPos.left = range.goalColumn; } + goals.push(headPos.left); + var pos = findPosV(this$1, headPos, dir, unit); + if (unit == "page" && range == doc.sel.primary()) + { addToScrollTop(this$1, charCoords(this$1, pos, "div").top - headPos.top); } + return pos + }, sel_move); + if (goals.length) { for (var i = 0; i < doc.sel.ranges.length; i++) + { doc.sel.ranges[i].goalColumn = goals[i]; } } + }), + + // Find the word at the given position (as returned by coordsChar). + findWordAt: function(pos) { + var doc = this.doc, line = getLine(doc, pos.line).text; + var start = pos.ch, end = pos.ch; + if (line) { + var helper = this.getHelper(pos, "wordChars"); + if ((pos.sticky == "before" || end == line.length) && start) { --start; } else { ++end; } + var startChar = line.charAt(start); + var check = isWordChar(startChar, helper) + ? function (ch) { return isWordChar(ch, helper); } + : /\s/.test(startChar) ? function (ch) { return /\s/.test(ch); } + : function (ch) { return (!/\s/.test(ch) && !isWordChar(ch)); }; + while (start > 0 && check(line.charAt(start - 1))) { --start; } + while (end < line.length && check(line.charAt(end))) { ++end; } + } + return new Range(Pos(pos.line, start), Pos(pos.line, end)) + }, + + toggleOverwrite: function(value) { + if (value != null && value == this.state.overwrite) { return } + if (this.state.overwrite = !this.state.overwrite) + { addClass(this.display.cursorDiv, "CodeMirror-overwrite"); } + else + { rmClass(this.display.cursorDiv, "CodeMirror-overwrite"); } + + signal(this, "overwriteToggle", this, this.state.overwrite); + }, + hasFocus: function() { return this.display.input.getField() == activeElt(root(this)) }, + isReadOnly: function() { return !!(this.options.readOnly || this.doc.cantEdit) }, + + scrollTo: methodOp(function (x, y) { scrollToCoords(this, x, y); }), + getScrollInfo: function() { + var scroller = this.display.scroller; + return {left: scroller.scrollLeft, top: scroller.scrollTop, + height: scroller.scrollHeight - scrollGap(this) - this.display.barHeight, + width: scroller.scrollWidth - scrollGap(this) - this.display.barWidth, + clientHeight: displayHeight(this), clientWidth: displayWidth(this)} + }, + + scrollIntoView: methodOp(function(range, margin) { + if (range == null) { + range = {from: this.doc.sel.primary().head, to: null}; + if (margin == null) { margin = this.options.cursorScrollMargin; } + } else if (typeof range == "number") { + range = {from: Pos(range, 0), to: null}; + } else if (range.from == null) { + range = {from: range, to: null}; + } + if (!range.to) { range.to = range.from; } + range.margin = margin || 0; + + if (range.from.line != null) { + scrollToRange(this, range); + } else { + scrollToCoordsRange(this, range.from, range.to, range.margin); + } + }), + + setSize: methodOp(function(width, height) { + var this$1 = this; + + var interpret = function (val) { return typeof val == "number" || /^\d+$/.test(String(val)) ? val + "px" : val; }; + if (width != null) { this.display.wrapper.style.width = interpret(width); } + if (height != null) { this.display.wrapper.style.height = interpret(height); } + if (this.options.lineWrapping) { clearLineMeasurementCache(this); } + var lineNo = this.display.viewFrom; + this.doc.iter(lineNo, this.display.viewTo, function (line) { + if (line.widgets) { for (var i = 0; i < line.widgets.length; i++) + { if (line.widgets[i].noHScroll) { regLineChange(this$1, lineNo, "widget"); break } } } + ++lineNo; + }); + this.curOp.forceUpdate = true; + signal(this, "refresh", this); + }), + + operation: function(f){return runInOp(this, f)}, + startOperation: function(){return startOperation(this)}, + endOperation: function(){return endOperation(this)}, + + refresh: methodOp(function() { + var oldHeight = this.display.cachedTextHeight; + regChange(this); + this.curOp.forceUpdate = true; + clearCaches(this); + scrollToCoords(this, this.doc.scrollLeft, this.doc.scrollTop); + updateGutterSpace(this.display); + if (oldHeight == null || Math.abs(oldHeight - textHeight(this.display)) > .5 || this.options.lineWrapping) + { estimateLineHeights(this); } + signal(this, "refresh", this); + }), + + swapDoc: methodOp(function(doc) { + var old = this.doc; + old.cm = null; + // Cancel the current text selection if any (#5821) + if (this.state.selectingText) { this.state.selectingText(); } + attachDoc(this, doc); + clearCaches(this); + this.display.input.reset(); + scrollToCoords(this, doc.scrollLeft, doc.scrollTop); + this.curOp.forceScroll = true; + signalLater(this, "swapDoc", this, old); + return old + }), + + phrase: function(phraseText) { + var phrases = this.options.phrases; + return phrases && Object.prototype.hasOwnProperty.call(phrases, phraseText) ? phrases[phraseText] : phraseText + }, + + getInputField: function(){return this.display.input.getField()}, + getWrapperElement: function(){return this.display.wrapper}, + getScrollerElement: function(){return this.display.scroller}, + getGutterElement: function(){return this.display.gutters} + }; + eventMixin(CodeMirror); + + CodeMirror.registerHelper = function(type, name, value) { + if (!helpers.hasOwnProperty(type)) { helpers[type] = CodeMirror[type] = {_global: []}; } + helpers[type][name] = value; + }; + CodeMirror.registerGlobalHelper = function(type, name, predicate, value) { + CodeMirror.registerHelper(type, name, value); + helpers[type]._global.push({pred: predicate, val: value}); + }; + } + + // Used for horizontal relative motion. Dir is -1 or 1 (left or + // right), unit can be "codepoint", "char", "column" (like char, but + // doesn't cross line boundaries), "word" (across next word), or + // "group" (to the start of next group of word or + // non-word-non-whitespace chars). The visually param controls + // whether, in right-to-left text, direction 1 means to move towards + // the next index in the string, or towards the character to the right + // of the current position. The resulting position will have a + // hitSide=true property if it reached the end of the document. + function findPosH(doc, pos, dir, unit, visually) { + var oldPos = pos; + var origDir = dir; + var lineObj = getLine(doc, pos.line); + var lineDir = visually && doc.direction == "rtl" ? -dir : dir; + function findNextLine() { + var l = pos.line + lineDir; + if (l < doc.first || l >= doc.first + doc.size) { return false } + pos = new Pos(l, pos.ch, pos.sticky); + return lineObj = getLine(doc, l) + } + function moveOnce(boundToLine) { + var next; + if (unit == "codepoint") { + var ch = lineObj.text.charCodeAt(pos.ch + (dir > 0 ? 0 : -1)); + if (isNaN(ch)) { + next = null; + } else { + var astral = dir > 0 ? ch >= 0xD800 && ch < 0xDC00 : ch >= 0xDC00 && ch < 0xDFFF; + next = new Pos(pos.line, Math.max(0, Math.min(lineObj.text.length, pos.ch + dir * (astral ? 2 : 1))), -dir); + } + } else if (visually) { + next = moveVisually(doc.cm, lineObj, pos, dir); + } else { + next = moveLogically(lineObj, pos, dir); + } + if (next == null) { + if (!boundToLine && findNextLine()) + { pos = endOfLine(visually, doc.cm, lineObj, pos.line, lineDir); } + else + { return false } + } else { + pos = next; + } + return true + } + + if (unit == "char" || unit == "codepoint") { + moveOnce(); + } else if (unit == "column") { + moveOnce(true); + } else if (unit == "word" || unit == "group") { + var sawType = null, group = unit == "group"; + var helper = doc.cm && doc.cm.getHelper(pos, "wordChars"); + for (var first = true;; first = false) { + if (dir < 0 && !moveOnce(!first)) { break } + var cur = lineObj.text.charAt(pos.ch) || "\n"; + var type = isWordChar(cur, helper) ? "w" + : group && cur == "\n" ? "n" + : !group || /\s/.test(cur) ? null + : "p"; + if (group && !first && !type) { type = "s"; } + if (sawType && sawType != type) { + if (dir < 0) {dir = 1; moveOnce(); pos.sticky = "after";} + break + } + + if (type) { sawType = type; } + if (dir > 0 && !moveOnce(!first)) { break } + } + } + var result = skipAtomic(doc, pos, oldPos, origDir, true); + if (equalCursorPos(oldPos, result)) { result.hitSide = true; } + return result + } + + // For relative vertical movement. Dir may be -1 or 1. Unit can be + // "page" or "line". The resulting position will have a hitSide=true + // property if it reached the end of the document. + function findPosV(cm, pos, dir, unit) { + var doc = cm.doc, x = pos.left, y; + if (unit == "page") { + var pageSize = Math.min(cm.display.wrapper.clientHeight, win(cm).innerHeight || doc(cm).documentElement.clientHeight); + var moveAmount = Math.max(pageSize - .5 * textHeight(cm.display), 3); + y = (dir > 0 ? pos.bottom : pos.top) + dir * moveAmount; + + } else if (unit == "line") { + y = dir > 0 ? pos.bottom + 3 : pos.top - 3; + } + var target; + for (;;) { + target = coordsChar(cm, x, y); + if (!target.outside) { break } + if (dir < 0 ? y <= 0 : y >= doc.height) { target.hitSide = true; break } + y += dir * 5; + } + return target + } + + // CONTENTEDITABLE INPUT STYLE + + var ContentEditableInput = function(cm) { + this.cm = cm; + this.lastAnchorNode = this.lastAnchorOffset = this.lastFocusNode = this.lastFocusOffset = null; + this.polling = new Delayed(); + this.composing = null; + this.gracePeriod = false; + this.readDOMTimeout = null; + }; + + ContentEditableInput.prototype.init = function (display) { + var this$1 = this; + + var input = this, cm = input.cm; + var div = input.div = display.lineDiv; + div.contentEditable = true; + disableBrowserMagic(div, cm.options.spellcheck, cm.options.autocorrect, cm.options.autocapitalize); + + function belongsToInput(e) { + for (var t = e.target; t; t = t.parentNode) { + if (t == div) { return true } + if (/\bCodeMirror-(?:line)?widget\b/.test(t.className)) { break } + } + return false + } + + on(div, "paste", function (e) { + if (!belongsToInput(e) || signalDOMEvent(cm, e) || handlePaste(e, cm)) { return } + // IE doesn't fire input events, so we schedule a read for the pasted content in this way + if (ie_version <= 11) { setTimeout(operation(cm, function () { return this$1.updateFromDOM(); }), 20); } + }); + + on(div, "compositionstart", function (e) { + this$1.composing = {data: e.data, done: false}; + }); + on(div, "compositionupdate", function (e) { + if (!this$1.composing) { this$1.composing = {data: e.data, done: false}; } + }); + on(div, "compositionend", function (e) { + if (this$1.composing) { + if (e.data != this$1.composing.data) { this$1.readFromDOMSoon(); } + this$1.composing.done = true; + } + }); + + on(div, "touchstart", function () { return input.forceCompositionEnd(); }); + + on(div, "input", function () { + if (!this$1.composing) { this$1.readFromDOMSoon(); } + }); + + function onCopyCut(e) { + if (!belongsToInput(e) || signalDOMEvent(cm, e)) { return } + if (cm.somethingSelected()) { + setLastCopied({lineWise: false, text: cm.getSelections()}); + if (e.type == "cut") { cm.replaceSelection("", null, "cut"); } + } else if (!cm.options.lineWiseCopyCut) { + return + } else { + var ranges = copyableRanges(cm); + setLastCopied({lineWise: true, text: ranges.text}); + if (e.type == "cut") { + cm.operation(function () { + cm.setSelections(ranges.ranges, 0, sel_dontScroll); + cm.replaceSelection("", null, "cut"); + }); + } + } + if (e.clipboardData) { + e.clipboardData.clearData(); + var content = lastCopied.text.join("\n"); + // iOS exposes the clipboard API, but seems to discard content inserted into it + e.clipboardData.setData("Text", content); + if (e.clipboardData.getData("Text") == content) { + e.preventDefault(); + return + } + } + // Old-fashioned briefly-focus-a-textarea hack + var kludge = hiddenTextarea(), te = kludge.firstChild; + disableBrowserMagic(te); + cm.display.lineSpace.insertBefore(kludge, cm.display.lineSpace.firstChild); + te.value = lastCopied.text.join("\n"); + var hadFocus = activeElt(rootNode(div)); + selectInput(te); + setTimeout(function () { + cm.display.lineSpace.removeChild(kludge); + hadFocus.focus(); + if (hadFocus == div) { input.showPrimarySelection(); } + }, 50); + } + on(div, "copy", onCopyCut); + on(div, "cut", onCopyCut); + }; + + ContentEditableInput.prototype.screenReaderLabelChanged = function (label) { + // Label for screenreaders, accessibility + if(label) { + this.div.setAttribute('aria-label', label); + } else { + this.div.removeAttribute('aria-label'); + } + }; + + ContentEditableInput.prototype.prepareSelection = function () { + var result = prepareSelection(this.cm, false); + result.focus = activeElt(rootNode(this.div)) == this.div; + return result + }; + + ContentEditableInput.prototype.showSelection = function (info, takeFocus) { + if (!info || !this.cm.display.view.length) { return } + if (info.focus || takeFocus) { this.showPrimarySelection(); } + this.showMultipleSelections(info); + }; + + ContentEditableInput.prototype.getSelection = function () { + return this.cm.display.wrapper.ownerDocument.getSelection() + }; + + ContentEditableInput.prototype.showPrimarySelection = function () { + var sel = this.getSelection(), cm = this.cm, prim = cm.doc.sel.primary(); + var from = prim.from(), to = prim.to(); + + if (cm.display.viewTo == cm.display.viewFrom || from.line >= cm.display.viewTo || to.line < cm.display.viewFrom) { + sel.removeAllRanges(); + return + } + + var curAnchor = domToPos(cm, sel.anchorNode, sel.anchorOffset); + var curFocus = domToPos(cm, sel.focusNode, sel.focusOffset); + if (curAnchor && !curAnchor.bad && curFocus && !curFocus.bad && + cmp(minPos(curAnchor, curFocus), from) == 0 && + cmp(maxPos(curAnchor, curFocus), to) == 0) + { return } + + var view = cm.display.view; + var start = (from.line >= cm.display.viewFrom && posToDOM(cm, from)) || + {node: view[0].measure.map[2], offset: 0}; + var end = to.line < cm.display.viewTo && posToDOM(cm, to); + if (!end) { + var measure = view[view.length - 1].measure; + var map = measure.maps ? measure.maps[measure.maps.length - 1] : measure.map; + end = {node: map[map.length - 1], offset: map[map.length - 2] - map[map.length - 3]}; + } + + if (!start || !end) { + sel.removeAllRanges(); + return + } + + var old = sel.rangeCount && sel.getRangeAt(0), rng; + try { rng = range(start.node, start.offset, end.offset, end.node); } + catch(e) {} // Our model of the DOM might be outdated, in which case the range we try to set can be impossible + if (rng) { + if (!gecko && cm.state.focused) { + sel.collapse(start.node, start.offset); + if (!rng.collapsed) { + sel.removeAllRanges(); + sel.addRange(rng); + } + } else { + sel.removeAllRanges(); + sel.addRange(rng); + } + if (old && sel.anchorNode == null) { sel.addRange(old); } + else if (gecko) { this.startGracePeriod(); } + } + this.rememberSelection(); + }; + + ContentEditableInput.prototype.startGracePeriod = function () { + var this$1 = this; + + clearTimeout(this.gracePeriod); + this.gracePeriod = setTimeout(function () { + this$1.gracePeriod = false; + if (this$1.selectionChanged()) + { this$1.cm.operation(function () { return this$1.cm.curOp.selectionChanged = true; }); } + }, 20); + }; + + ContentEditableInput.prototype.showMultipleSelections = function (info) { + removeChildrenAndAdd(this.cm.display.cursorDiv, info.cursors); + removeChildrenAndAdd(this.cm.display.selectionDiv, info.selection); + }; + + ContentEditableInput.prototype.rememberSelection = function () { + var sel = this.getSelection(); + this.lastAnchorNode = sel.anchorNode; this.lastAnchorOffset = sel.anchorOffset; + this.lastFocusNode = sel.focusNode; this.lastFocusOffset = sel.focusOffset; + }; + + ContentEditableInput.prototype.selectionInEditor = function () { + var sel = this.getSelection(); + if (!sel.rangeCount) { return false } + var node = sel.getRangeAt(0).commonAncestorContainer; + return contains(this.div, node) + }; + + ContentEditableInput.prototype.focus = function () { + if (this.cm.options.readOnly != "nocursor") { + if (!this.selectionInEditor() || activeElt(rootNode(this.div)) != this.div) + { this.showSelection(this.prepareSelection(), true); } + this.div.focus(); + } + }; + ContentEditableInput.prototype.blur = function () { this.div.blur(); }; + ContentEditableInput.prototype.getField = function () { return this.div }; + + ContentEditableInput.prototype.supportsTouch = function () { return true }; + + ContentEditableInput.prototype.receivedFocus = function () { + var this$1 = this; + + var input = this; + if (this.selectionInEditor()) + { setTimeout(function () { return this$1.pollSelection(); }, 20); } + else + { runInOp(this.cm, function () { return input.cm.curOp.selectionChanged = true; }); } + + function poll() { + if (input.cm.state.focused) { + input.pollSelection(); + input.polling.set(input.cm.options.pollInterval, poll); + } + } + this.polling.set(this.cm.options.pollInterval, poll); + }; + + ContentEditableInput.prototype.selectionChanged = function () { + var sel = this.getSelection(); + return sel.anchorNode != this.lastAnchorNode || sel.anchorOffset != this.lastAnchorOffset || + sel.focusNode != this.lastFocusNode || sel.focusOffset != this.lastFocusOffset + }; + + ContentEditableInput.prototype.pollSelection = function () { + if (this.readDOMTimeout != null || this.gracePeriod || !this.selectionChanged()) { return } + var sel = this.getSelection(), cm = this.cm; + // On Android Chrome (version 56, at least), backspacing into an + // uneditable block element will put the cursor in that element, + // and then, because it's not editable, hide the virtual keyboard. + // Because Android doesn't allow us to actually detect backspace + // presses in a sane way, this code checks for when that happens + // and simulates a backspace press in this case. + if (android && chrome && this.cm.display.gutterSpecs.length && isInGutter(sel.anchorNode)) { + this.cm.triggerOnKeyDown({type: "keydown", keyCode: 8, preventDefault: Math.abs}); + this.blur(); + this.focus(); + return + } + if (this.composing) { return } + this.rememberSelection(); + var anchor = domToPos(cm, sel.anchorNode, sel.anchorOffset); + var head = domToPos(cm, sel.focusNode, sel.focusOffset); + if (anchor && head) { runInOp(cm, function () { + setSelection(cm.doc, simpleSelection(anchor, head), sel_dontScroll); + if (anchor.bad || head.bad) { cm.curOp.selectionChanged = true; } + }); } + }; + + ContentEditableInput.prototype.pollContent = function () { + if (this.readDOMTimeout != null) { + clearTimeout(this.readDOMTimeout); + this.readDOMTimeout = null; + } + + var cm = this.cm, display = cm.display, sel = cm.doc.sel.primary(); + var from = sel.from(), to = sel.to(); + if (from.ch == 0 && from.line > cm.firstLine()) + { from = Pos(from.line - 1, getLine(cm.doc, from.line - 1).length); } + if (to.ch == getLine(cm.doc, to.line).text.length && to.line < cm.lastLine()) + { to = Pos(to.line + 1, 0); } + if (from.line < display.viewFrom || to.line > display.viewTo - 1) { return false } + + var fromIndex, fromLine, fromNode; + if (from.line == display.viewFrom || (fromIndex = findViewIndex(cm, from.line)) == 0) { + fromLine = lineNo(display.view[0].line); + fromNode = display.view[0].node; + } else { + fromLine = lineNo(display.view[fromIndex].line); + fromNode = display.view[fromIndex - 1].node.nextSibling; + } + var toIndex = findViewIndex(cm, to.line); + var toLine, toNode; + if (toIndex == display.view.length - 1) { + toLine = display.viewTo - 1; + toNode = display.lineDiv.lastChild; + } else { + toLine = lineNo(display.view[toIndex + 1].line) - 1; + toNode = display.view[toIndex + 1].node.previousSibling; + } + + if (!fromNode) { return false } + var newText = cm.doc.splitLines(domTextBetween(cm, fromNode, toNode, fromLine, toLine)); + var oldText = getBetween(cm.doc, Pos(fromLine, 0), Pos(toLine, getLine(cm.doc, toLine).text.length)); + while (newText.length > 1 && oldText.length > 1) { + if (lst(newText) == lst(oldText)) { newText.pop(); oldText.pop(); toLine--; } + else if (newText[0] == oldText[0]) { newText.shift(); oldText.shift(); fromLine++; } + else { break } + } + + var cutFront = 0, cutEnd = 0; + var newTop = newText[0], oldTop = oldText[0], maxCutFront = Math.min(newTop.length, oldTop.length); + while (cutFront < maxCutFront && newTop.charCodeAt(cutFront) == oldTop.charCodeAt(cutFront)) + { ++cutFront; } + var newBot = lst(newText), oldBot = lst(oldText); + var maxCutEnd = Math.min(newBot.length - (newText.length == 1 ? cutFront : 0), + oldBot.length - (oldText.length == 1 ? cutFront : 0)); + while (cutEnd < maxCutEnd && + newBot.charCodeAt(newBot.length - cutEnd - 1) == oldBot.charCodeAt(oldBot.length - cutEnd - 1)) + { ++cutEnd; } + // Try to move start of change to start of selection if ambiguous + if (newText.length == 1 && oldText.length == 1 && fromLine == from.line) { + while (cutFront && cutFront > from.ch && + newBot.charCodeAt(newBot.length - cutEnd - 1) == oldBot.charCodeAt(oldBot.length - cutEnd - 1)) { + cutFront--; + cutEnd++; + } + } + + newText[newText.length - 1] = newBot.slice(0, newBot.length - cutEnd).replace(/^\u200b+/, ""); + newText[0] = newText[0].slice(cutFront).replace(/\u200b+$/, ""); + + var chFrom = Pos(fromLine, cutFront); + var chTo = Pos(toLine, oldText.length ? lst(oldText).length - cutEnd : 0); + if (newText.length > 1 || newText[0] || cmp(chFrom, chTo)) { + replaceRange(cm.doc, newText, chFrom, chTo, "+input"); + return true + } + }; + + ContentEditableInput.prototype.ensurePolled = function () { + this.forceCompositionEnd(); + }; + ContentEditableInput.prototype.reset = function () { + this.forceCompositionEnd(); + }; + ContentEditableInput.prototype.forceCompositionEnd = function () { + if (!this.composing) { return } + clearTimeout(this.readDOMTimeout); + this.composing = null; + this.updateFromDOM(); + this.div.blur(); + this.div.focus(); + }; + ContentEditableInput.prototype.readFromDOMSoon = function () { + var this$1 = this; + + if (this.readDOMTimeout != null) { return } + this.readDOMTimeout = setTimeout(function () { + this$1.readDOMTimeout = null; + if (this$1.composing) { + if (this$1.composing.done) { this$1.composing = null; } + else { return } + } + this$1.updateFromDOM(); + }, 80); + }; + + ContentEditableInput.prototype.updateFromDOM = function () { + var this$1 = this; + + if (this.cm.isReadOnly() || !this.pollContent()) + { runInOp(this.cm, function () { return regChange(this$1.cm); }); } + }; + + ContentEditableInput.prototype.setUneditable = function (node) { + node.contentEditable = "false"; + }; + + ContentEditableInput.prototype.onKeyPress = function (e) { + if (e.charCode == 0 || this.composing) { return } + e.preventDefault(); + if (!this.cm.isReadOnly()) + { operation(this.cm, applyTextInput)(this.cm, String.fromCharCode(e.charCode == null ? e.keyCode : e.charCode), 0); } + }; + + ContentEditableInput.prototype.readOnlyChanged = function (val) { + this.div.contentEditable = String(val != "nocursor"); + }; + + ContentEditableInput.prototype.onContextMenu = function () {}; + ContentEditableInput.prototype.resetPosition = function () {}; + + ContentEditableInput.prototype.needsContentAttribute = true; + + function posToDOM(cm, pos) { + var view = findViewForLine(cm, pos.line); + if (!view || view.hidden) { return null } + var line = getLine(cm.doc, pos.line); + var info = mapFromLineView(view, line, pos.line); + + var order = getOrder(line, cm.doc.direction), side = "left"; + if (order) { + var partPos = getBidiPartAt(order, pos.ch); + side = partPos % 2 ? "right" : "left"; + } + var result = nodeAndOffsetInLineMap(info.map, pos.ch, side); + result.offset = result.collapse == "right" ? result.end : result.start; + return result + } + + function isInGutter(node) { + for (var scan = node; scan; scan = scan.parentNode) + { if (/CodeMirror-gutter-wrapper/.test(scan.className)) { return true } } + return false + } + + function badPos(pos, bad) { if (bad) { pos.bad = true; } return pos } + + function domTextBetween(cm, from, to, fromLine, toLine) { + var text = "", closing = false, lineSep = cm.doc.lineSeparator(), extraLinebreak = false; + function recognizeMarker(id) { return function (marker) { return marker.id == id; } } + function close() { + if (closing) { + text += lineSep; + if (extraLinebreak) { text += lineSep; } + closing = extraLinebreak = false; + } + } + function addText(str) { + if (str) { + close(); + text += str; + } + } + function walk(node) { + if (node.nodeType == 1) { + var cmText = node.getAttribute("cm-text"); + if (cmText) { + addText(cmText); + return + } + var markerID = node.getAttribute("cm-marker"), range; + if (markerID) { + var found = cm.findMarks(Pos(fromLine, 0), Pos(toLine + 1, 0), recognizeMarker(+markerID)); + if (found.length && (range = found[0].find(0))) + { addText(getBetween(cm.doc, range.from, range.to).join(lineSep)); } + return + } + if (node.getAttribute("contenteditable") == "false") { return } + var isBlock = /^(pre|div|p|li|table|br)$/i.test(node.nodeName); + if (!/^br$/i.test(node.nodeName) && node.textContent.length == 0) { return } + + if (isBlock) { close(); } + for (var i = 0; i < node.childNodes.length; i++) + { walk(node.childNodes[i]); } + + if (/^(pre|p)$/i.test(node.nodeName)) { extraLinebreak = true; } + if (isBlock) { closing = true; } + } else if (node.nodeType == 3) { + addText(node.nodeValue.replace(/\u200b/g, "").replace(/\u00a0/g, " ")); + } + } + for (;;) { + walk(from); + if (from == to) { break } + from = from.nextSibling; + extraLinebreak = false; + } + return text + } + + function domToPos(cm, node, offset) { + var lineNode; + if (node == cm.display.lineDiv) { + lineNode = cm.display.lineDiv.childNodes[offset]; + if (!lineNode) { return badPos(cm.clipPos(Pos(cm.display.viewTo - 1)), true) } + node = null; offset = 0; + } else { + for (lineNode = node;; lineNode = lineNode.parentNode) { + if (!lineNode || lineNode == cm.display.lineDiv) { return null } + if (lineNode.parentNode && lineNode.parentNode == cm.display.lineDiv) { break } + } + } + for (var i = 0; i < cm.display.view.length; i++) { + var lineView = cm.display.view[i]; + if (lineView.node == lineNode) + { return locateNodeInLineView(lineView, node, offset) } + } + } + + function locateNodeInLineView(lineView, node, offset) { + var wrapper = lineView.text.firstChild, bad = false; + if (!node || !contains(wrapper, node)) { return badPos(Pos(lineNo(lineView.line), 0), true) } + if (node == wrapper) { + bad = true; + node = wrapper.childNodes[offset]; + offset = 0; + if (!node) { + var line = lineView.rest ? lst(lineView.rest) : lineView.line; + return badPos(Pos(lineNo(line), line.text.length), bad) + } + } + + var textNode = node.nodeType == 3 ? node : null, topNode = node; + if (!textNode && node.childNodes.length == 1 && node.firstChild.nodeType == 3) { + textNode = node.firstChild; + if (offset) { offset = textNode.nodeValue.length; } + } + while (topNode.parentNode != wrapper) { topNode = topNode.parentNode; } + var measure = lineView.measure, maps = measure.maps; + + function find(textNode, topNode, offset) { + for (var i = -1; i < (maps ? maps.length : 0); i++) { + var map = i < 0 ? measure.map : maps[i]; + for (var j = 0; j < map.length; j += 3) { + var curNode = map[j + 2]; + if (curNode == textNode || curNode == topNode) { + var line = lineNo(i < 0 ? lineView.line : lineView.rest[i]); + var ch = map[j] + offset; + if (offset < 0 || curNode != textNode) { ch = map[j + (offset ? 1 : 0)]; } + return Pos(line, ch) + } + } + } + } + var found = find(textNode, topNode, offset); + if (found) { return badPos(found, bad) } + + // FIXME this is all really shaky. might handle the few cases it needs to handle, but likely to cause problems + for (var after = topNode.nextSibling, dist = textNode ? textNode.nodeValue.length - offset : 0; after; after = after.nextSibling) { + found = find(after, after.firstChild, 0); + if (found) + { return badPos(Pos(found.line, found.ch - dist), bad) } + else + { dist += after.textContent.length; } + } + for (var before = topNode.previousSibling, dist$1 = offset; before; before = before.previousSibling) { + found = find(before, before.firstChild, -1); + if (found) + { return badPos(Pos(found.line, found.ch + dist$1), bad) } + else + { dist$1 += before.textContent.length; } + } + } + + // TEXTAREA INPUT STYLE + + var TextareaInput = function(cm) { + this.cm = cm; + // See input.poll and input.reset + this.prevInput = ""; + + // Flag that indicates whether we expect input to appear real soon + // now (after some event like 'keypress' or 'input') and are + // polling intensively. + this.pollingFast = false; + // Self-resetting timeout for the poller + this.polling = new Delayed(); + // Used to work around IE issue with selection being forgotten when focus moves away from textarea + this.hasSelection = false; + this.composing = null; + this.resetting = false; + }; + + TextareaInput.prototype.init = function (display) { + var this$1 = this; + + var input = this, cm = this.cm; + this.createField(display); + var te = this.textarea; + + display.wrapper.insertBefore(this.wrapper, display.wrapper.firstChild); + + // Needed to hide big blue blinking cursor on Mobile Safari (doesn't seem to work in iOS 8 anymore) + if (ios) { te.style.width = "0px"; } + + on(te, "input", function () { + if (ie && ie_version >= 9 && this$1.hasSelection) { this$1.hasSelection = null; } + input.poll(); + }); + + on(te, "paste", function (e) { + if (signalDOMEvent(cm, e) || handlePaste(e, cm)) { return } + + cm.state.pasteIncoming = +new Date; + input.fastPoll(); + }); + + function prepareCopyCut(e) { + if (signalDOMEvent(cm, e)) { return } + if (cm.somethingSelected()) { + setLastCopied({lineWise: false, text: cm.getSelections()}); + } else if (!cm.options.lineWiseCopyCut) { + return + } else { + var ranges = copyableRanges(cm); + setLastCopied({lineWise: true, text: ranges.text}); + if (e.type == "cut") { + cm.setSelections(ranges.ranges, null, sel_dontScroll); + } else { + input.prevInput = ""; + te.value = ranges.text.join("\n"); + selectInput(te); + } + } + if (e.type == "cut") { cm.state.cutIncoming = +new Date; } + } + on(te, "cut", prepareCopyCut); + on(te, "copy", prepareCopyCut); + + on(display.scroller, "paste", function (e) { + if (eventInWidget(display, e) || signalDOMEvent(cm, e)) { return } + if (!te.dispatchEvent) { + cm.state.pasteIncoming = +new Date; + input.focus(); + return + } + + // Pass the `paste` event to the textarea so it's handled by its event listener. + var event = new Event("paste"); + event.clipboardData = e.clipboardData; + te.dispatchEvent(event); + }); + + // Prevent normal selection in the editor (we handle our own) + on(display.lineSpace, "selectstart", function (e) { + if (!eventInWidget(display, e)) { e_preventDefault(e); } + }); + + on(te, "compositionstart", function () { + var start = cm.getCursor("from"); + if (input.composing) { input.composing.range.clear(); } + input.composing = { + start: start, + range: cm.markText(start, cm.getCursor("to"), {className: "CodeMirror-composing"}) + }; + }); + on(te, "compositionend", function () { + if (input.composing) { + input.poll(); + input.composing.range.clear(); + input.composing = null; + } + }); + }; + + TextareaInput.prototype.createField = function (_display) { + // Wraps and hides input textarea + this.wrapper = hiddenTextarea(); + // The semihidden textarea that is focused when the editor is + // focused, and receives input. + this.textarea = this.wrapper.firstChild; + var opts = this.cm.options; + disableBrowserMagic(this.textarea, opts.spellcheck, opts.autocorrect, opts.autocapitalize); + }; + + TextareaInput.prototype.screenReaderLabelChanged = function (label) { + // Label for screenreaders, accessibility + if(label) { + this.textarea.setAttribute('aria-label', label); + } else { + this.textarea.removeAttribute('aria-label'); + } + }; + + TextareaInput.prototype.prepareSelection = function () { + // Redraw the selection and/or cursor + var cm = this.cm, display = cm.display, doc = cm.doc; + var result = prepareSelection(cm); + + // Move the hidden textarea near the cursor to prevent scrolling artifacts + if (cm.options.moveInputWithCursor) { + var headPos = cursorCoords(cm, doc.sel.primary().head, "div"); + var wrapOff = display.wrapper.getBoundingClientRect(), lineOff = display.lineDiv.getBoundingClientRect(); + result.teTop = Math.max(0, Math.min(display.wrapper.clientHeight - 10, + headPos.top + lineOff.top - wrapOff.top)); + result.teLeft = Math.max(0, Math.min(display.wrapper.clientWidth - 10, + headPos.left + lineOff.left - wrapOff.left)); + } + + return result + }; + + TextareaInput.prototype.showSelection = function (drawn) { + var cm = this.cm, display = cm.display; + removeChildrenAndAdd(display.cursorDiv, drawn.cursors); + removeChildrenAndAdd(display.selectionDiv, drawn.selection); + if (drawn.teTop != null) { + this.wrapper.style.top = drawn.teTop + "px"; + this.wrapper.style.left = drawn.teLeft + "px"; + } + }; + + // Reset the input to correspond to the selection (or to be empty, + // when not typing and nothing is selected) + TextareaInput.prototype.reset = function (typing) { + if (this.contextMenuPending || this.composing && typing) { return } + var cm = this.cm; + this.resetting = true; + if (cm.somethingSelected()) { + this.prevInput = ""; + var content = cm.getSelection(); + this.textarea.value = content; + if (cm.state.focused) { selectInput(this.textarea); } + if (ie && ie_version >= 9) { this.hasSelection = content; } + } else if (!typing) { + this.prevInput = this.textarea.value = ""; + if (ie && ie_version >= 9) { this.hasSelection = null; } + } + this.resetting = false; + }; + + TextareaInput.prototype.getField = function () { return this.textarea }; + + TextareaInput.prototype.supportsTouch = function () { return false }; + + TextareaInput.prototype.focus = function () { + if (this.cm.options.readOnly != "nocursor" && (!mobile || activeElt(rootNode(this.textarea)) != this.textarea)) { + try { this.textarea.focus(); } + catch (e) {} // IE8 will throw if the textarea is display: none or not in DOM + } + }; + + TextareaInput.prototype.blur = function () { this.textarea.blur(); }; + + TextareaInput.prototype.resetPosition = function () { + this.wrapper.style.top = this.wrapper.style.left = 0; + }; + + TextareaInput.prototype.receivedFocus = function () { this.slowPoll(); }; + + // Poll for input changes, using the normal rate of polling. This + // runs as long as the editor is focused. + TextareaInput.prototype.slowPoll = function () { + var this$1 = this; + + if (this.pollingFast) { return } + this.polling.set(this.cm.options.pollInterval, function () { + this$1.poll(); + if (this$1.cm.state.focused) { this$1.slowPoll(); } + }); + }; + + // When an event has just come in that is likely to add or change + // something in the input textarea, we poll faster, to ensure that + // the change appears on the screen quickly. + TextareaInput.prototype.fastPoll = function () { + var missed = false, input = this; + input.pollingFast = true; + function p() { + var changed = input.poll(); + if (!changed && !missed) {missed = true; input.polling.set(60, p);} + else {input.pollingFast = false; input.slowPoll();} + } + input.polling.set(20, p); + }; + + // Read input from the textarea, and update the document to match. + // When something is selected, it is present in the textarea, and + // selected (unless it is huge, in which case a placeholder is + // used). When nothing is selected, the cursor sits after previously + // seen text (can be empty), which is stored in prevInput (we must + // not reset the textarea when typing, because that breaks IME). + TextareaInput.prototype.poll = function () { + var this$1 = this; + + var cm = this.cm, input = this.textarea, prevInput = this.prevInput; + // Since this is called a *lot*, try to bail out as cheaply as + // possible when it is clear that nothing happened. hasSelection + // will be the case when there is a lot of text in the textarea, + // in which case reading its value would be expensive. + if (this.contextMenuPending || this.resetting || !cm.state.focused || + (hasSelection(input) && !prevInput && !this.composing) || + cm.isReadOnly() || cm.options.disableInput || cm.state.keySeq) + { return false } + + var text = input.value; + // If nothing changed, bail. + if (text == prevInput && !cm.somethingSelected()) { return false } + // Work around nonsensical selection resetting in IE9/10, and + // inexplicable appearance of private area unicode characters on + // some key combos in Mac (#2689). + if (ie && ie_version >= 9 && this.hasSelection === text || + mac && /[\uf700-\uf7ff]/.test(text)) { + cm.display.input.reset(); + return false + } + + if (cm.doc.sel == cm.display.selForContextMenu) { + var first = text.charCodeAt(0); + if (first == 0x200b && !prevInput) { prevInput = "\u200b"; } + if (first == 0x21da) { this.reset(); return this.cm.execCommand("undo") } + } + // Find the part of the input that is actually new + var same = 0, l = Math.min(prevInput.length, text.length); + while (same < l && prevInput.charCodeAt(same) == text.charCodeAt(same)) { ++same; } + + runInOp(cm, function () { + applyTextInput(cm, text.slice(same), prevInput.length - same, + null, this$1.composing ? "*compose" : null); + + // Don't leave long text in the textarea, since it makes further polling slow + if (text.length > 1000 || text.indexOf("\n") > -1) { input.value = this$1.prevInput = ""; } + else { this$1.prevInput = text; } + + if (this$1.composing) { + this$1.composing.range.clear(); + this$1.composing.range = cm.markText(this$1.composing.start, cm.getCursor("to"), + {className: "CodeMirror-composing"}); + } + }); + return true + }; + + TextareaInput.prototype.ensurePolled = function () { + if (this.pollingFast && this.poll()) { this.pollingFast = false; } + }; + + TextareaInput.prototype.onKeyPress = function () { + if (ie && ie_version >= 9) { this.hasSelection = null; } + this.fastPoll(); + }; + + TextareaInput.prototype.onContextMenu = function (e) { + var input = this, cm = input.cm, display = cm.display, te = input.textarea; + if (input.contextMenuPending) { input.contextMenuPending(); } + var pos = posFromMouse(cm, e), scrollPos = display.scroller.scrollTop; + if (!pos || presto) { return } // Opera is difficult. + + // Reset the current text selection only if the click is done outside of the selection + // and 'resetSelectionOnContextMenu' option is true. + var reset = cm.options.resetSelectionOnContextMenu; + if (reset && cm.doc.sel.contains(pos) == -1) + { operation(cm, setSelection)(cm.doc, simpleSelection(pos), sel_dontScroll); } + + var oldCSS = te.style.cssText, oldWrapperCSS = input.wrapper.style.cssText; + var wrapperBox = input.wrapper.offsetParent.getBoundingClientRect(); + input.wrapper.style.cssText = "position: static"; + te.style.cssText = "position: absolute; width: 30px; height: 30px;\n top: " + (e.clientY - wrapperBox.top - 5) + "px; left: " + (e.clientX - wrapperBox.left - 5) + "px;\n z-index: 1000; background: " + (ie ? "rgba(255, 255, 255, .05)" : "transparent") + ";\n outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);"; + var oldScrollY; + if (webkit) { oldScrollY = te.ownerDocument.defaultView.scrollY; } // Work around Chrome issue (#2712) + display.input.focus(); + if (webkit) { te.ownerDocument.defaultView.scrollTo(null, oldScrollY); } + display.input.reset(); + // Adds "Select all" to context menu in FF + if (!cm.somethingSelected()) { te.value = input.prevInput = " "; } + input.contextMenuPending = rehide; + display.selForContextMenu = cm.doc.sel; + clearTimeout(display.detectingSelectAll); + + // Select-all will be greyed out if there's nothing to select, so + // this adds a zero-width space so that we can later check whether + // it got selected. + function prepareSelectAllHack() { + if (te.selectionStart != null) { + var selected = cm.somethingSelected(); + var extval = "\u200b" + (selected ? te.value : ""); + te.value = "\u21da"; // Used to catch context-menu undo + te.value = extval; + input.prevInput = selected ? "" : "\u200b"; + te.selectionStart = 1; te.selectionEnd = extval.length; + // Re-set this, in case some other handler touched the + // selection in the meantime. + display.selForContextMenu = cm.doc.sel; + } + } + function rehide() { + if (input.contextMenuPending != rehide) { return } + input.contextMenuPending = false; + input.wrapper.style.cssText = oldWrapperCSS; + te.style.cssText = oldCSS; + if (ie && ie_version < 9) { display.scrollbars.setScrollTop(display.scroller.scrollTop = scrollPos); } + + // Try to detect the user choosing select-all + if (te.selectionStart != null) { + if (!ie || (ie && ie_version < 9)) { prepareSelectAllHack(); } + var i = 0, poll = function () { + if (display.selForContextMenu == cm.doc.sel && te.selectionStart == 0 && + te.selectionEnd > 0 && input.prevInput == "\u200b") { + operation(cm, selectAll)(cm); + } else if (i++ < 10) { + display.detectingSelectAll = setTimeout(poll, 500); + } else { + display.selForContextMenu = null; + display.input.reset(); + } + }; + display.detectingSelectAll = setTimeout(poll, 200); + } + } + + if (ie && ie_version >= 9) { prepareSelectAllHack(); } + if (captureRightClick) { + e_stop(e); + var mouseup = function () { + off(window, "mouseup", mouseup); + setTimeout(rehide, 20); + }; + on(window, "mouseup", mouseup); + } else { + setTimeout(rehide, 50); + } + }; + + TextareaInput.prototype.readOnlyChanged = function (val) { + if (!val) { this.reset(); } + this.textarea.disabled = val == "nocursor"; + this.textarea.readOnly = !!val; + }; + + TextareaInput.prototype.setUneditable = function () {}; + + TextareaInput.prototype.needsContentAttribute = false; + + function fromTextArea(textarea, options) { + options = options ? copyObj(options) : {}; + options.value = textarea.value; + if (!options.tabindex && textarea.tabIndex) + { options.tabindex = textarea.tabIndex; } + if (!options.placeholder && textarea.placeholder) + { options.placeholder = textarea.placeholder; } + // Set autofocus to true if this textarea is focused, or if it has + // autofocus and no other element is focused. + if (options.autofocus == null) { + var hasFocus = activeElt(rootNode(textarea)); + options.autofocus = hasFocus == textarea || + textarea.getAttribute("autofocus") != null && hasFocus == document.body; + } + + function save() {textarea.value = cm.getValue();} + + var realSubmit; + if (textarea.form) { + on(textarea.form, "submit", save); + // Deplorable hack to make the submit method do the right thing. + if (!options.leaveSubmitMethodAlone) { + var form = textarea.form; + realSubmit = form.submit; + try { + var wrappedSubmit = form.submit = function () { save(); - textarea.parentNode.removeChild(instance.getWrapperElement()); - textarea.style.display = ""; - if (textarea.form) { - rmSubmit(); - if (typeof textarea.form.submit == "function") - textarea.form.submit = realSubmit; - } - }; - return instance; + form.submit = realSubmit; + form.submit(); + form.submit = wrappedSubmit; + }; + } catch(e) {} + } + } + + options.finishInit = function (cm) { + cm.save = save; + cm.getTextArea = function () { return textarea; }; + cm.toTextArea = function () { + cm.toTextArea = isNaN; // Prevent this from being ran twice + save(); + textarea.parentNode.removeChild(cm.getWrapperElement()); + textarea.style.display = ""; + if (textarea.form) { + off(textarea.form, "submit", save); + if (!options.leaveSubmitMethodAlone && typeof textarea.form.submit == "function") + { textarea.form.submit = realSubmit; } + } + }; }; - // Utility functions for working with state. Exported because modes - // sometimes need to do this. - function copyState(mode, state) { - if (state === true) return state; - if (mode.copyState) return mode.copyState(state); - var nstate = {}; - for (var n in state) { - var val = state[n]; - if (val instanceof Array) val = val.concat([]); - nstate[n] = val; - } - return nstate; - } + textarea.style.display = "none"; + var cm = CodeMirror(function (node) { return textarea.parentNode.insertBefore(node, textarea.nextSibling); }, + options); + return cm + } + + function addLegacyProps(CodeMirror) { + CodeMirror.off = off; + CodeMirror.on = on; + CodeMirror.wheelEventPixels = wheelEventPixels; + CodeMirror.Doc = Doc; + CodeMirror.splitLines = splitLinesAuto; + CodeMirror.countColumn = countColumn; + CodeMirror.findColumn = findColumn; + CodeMirror.isWordChar = isWordCharBasic; + CodeMirror.Pass = Pass; + CodeMirror.signal = signal; + CodeMirror.Line = Line; + CodeMirror.changeEnd = changeEnd; + CodeMirror.scrollbarModel = scrollbarModel; + CodeMirror.Pos = Pos; + CodeMirror.cmpPos = cmp; + CodeMirror.modes = modes; + CodeMirror.mimeModes = mimeModes; + CodeMirror.resolveMode = resolveMode; + CodeMirror.getMode = getMode; + CodeMirror.modeExtensions = modeExtensions; + CodeMirror.extendMode = extendMode; CodeMirror.copyState = copyState; - function startState(mode, a1, a2) { - return mode.startState ? mode.startState(a1, a2) : true; - } CodeMirror.startState = startState; - - // The character stream used by a mode's parser. - function StringStream(string, tabSize) { - this.pos = this.start = 0; - this.string = string; - this.tabSize = tabSize || 8; - } - StringStream.prototype = { - eol: function() {return this.pos >= this.string.length;}, - sol: function() {return this.pos == 0;}, - peek: function() {return this.string.charAt(this.pos);}, - next: function() { - if (this.pos < this.string.length) - return this.string.charAt(this.pos++); - }, - eat: function(match) { - var ch = this.string.charAt(this.pos); - if (typeof match == "string") var ok = ch == match; - else var ok = ch && (match.test ? match.test(ch) : match(ch)); - if (ok) {++this.pos; return ch;} - }, - eatWhile: function(match) { - var start = this.pos; - while (this.eat(match)){} - return this.pos > start; - }, - eatSpace: function() { - var start = this.pos; - while (/[\s\u00a0]/.test(this.string.charAt(this.pos))) ++this.pos; - return this.pos > start; - }, - skipToEnd: function() {this.pos = this.string.length;}, - skipTo: function(ch) { - var found = this.string.indexOf(ch, this.pos); - if (found > -1) {this.pos = found; return true;} - }, - backUp: function(n) {this.pos -= n;}, - column: function() {return countColumn(this.string, this.start, this.tabSize);}, - indentation: function() {return countColumn(this.string, null, this.tabSize);}, - match: function(pattern, consume, caseInsensitive) { - if (typeof pattern == "string") { - function cased(str) {return caseInsensitive ? str.toLowerCase() : str;} - if (cased(this.string).indexOf(cased(pattern), this.pos) == this.pos) { - if (consume !== false) this.pos += pattern.length; - return true; - } - } - else { - var match = this.string.slice(this.pos).match(pattern); - if (match && consume !== false) this.pos += match[0].length; - return match; - } - }, - current: function(){return this.string.slice(this.start, this.pos);} - }; + CodeMirror.innerMode = innerMode; + CodeMirror.commands = commands; + CodeMirror.keyMap = keyMap; + CodeMirror.keyName = keyName; + CodeMirror.isModifierKey = isModifierKey; + CodeMirror.lookupKey = lookupKey; + CodeMirror.normalizeKeyMap = normalizeKeyMap; CodeMirror.StringStream = StringStream; - - function MarkedText(from, to, className, set) { - this.from = from; this.to = to; this.style = className; this.set = set; - } - MarkedText.prototype = { - attach: function(line) { this.set.push(line); }, - detach: function(line) { - var ix = indexOf(this.set, line); - if (ix > -1) this.set.splice(ix, 1); - }, - split: function(pos, lenBefore) { - if (this.to <= pos && this.to != null) return null; - var from = this.from < pos || this.from == null ? null : this.from - pos + lenBefore; - var to = this.to == null ? null : this.to - pos + lenBefore; - return new MarkedText(from, to, this.style, this.set); - }, - dup: function() { return new MarkedText(null, null, this.style, this.set); }, - clipTo: function(fromOpen, from, toOpen, to, diff) { - if (this.from != null && this.from >= from) - this.from = Math.max(to, this.from) + diff; - if (this.to != null && this.to > from) - this.to = to < this.to ? this.to + diff : from; - if (fromOpen && to > this.from && (to < this.to || this.to == null)) - this.from = null; - if (toOpen && (from < this.to || this.to == null) && (from > this.from || this.from == null)) - this.to = null; - }, - isDead: function() { return this.from != null && this.to != null && this.from >= this.to; }, - sameSet: function(x) { return this.set == x.set; } - }; - - function Bookmark(pos) { - this.from = pos; this.to = pos; this.line = null; - } - Bookmark.prototype = { - attach: function(line) { this.line = line; }, - detach: function(line) { if (this.line == line) this.line = null; }, - split: function(pos, lenBefore) { - if (pos < this.from) { - this.from = this.to = (this.from - pos) + lenBefore; - return this; - } - }, - isDead: function() { return this.from > this.to; }, - clipTo: function(fromOpen, from, toOpen, to, diff) { - if ((fromOpen || from < this.from) && (toOpen || to > this.to)) { - this.from = 0; this.to = -1; - } else if (this.from > from) { - this.from = this.to = Math.max(to, this.from) + diff; - } - }, - sameSet: function(x) { return false; }, - find: function() { - if (!this.line || !this.line.parent) return null; - return {line: lineNo(this.line), ch: this.from}; - }, - clear: function() { - if (this.line) { - var found = indexOf(this.line.marked, this); - if (found != -1) this.line.marked.splice(found, 1); - this.line = null; - } - } - }; - - // Line objects. These hold state related to a line, including - // highlighting info (the styles array). - function Line(text, styles) { - this.styles = styles || [text, null]; - this.text = text; - this.height = 1; - this.marked = this.gutterMarker = this.className = this.handlers = null; - this.stateAfter = this.parent = this.hidden = null; - } - Line.inheritMarks = function(text, orig) { - var ln = new Line(text), mk = orig && orig.marked; - if (mk) { - for (var i = 0; i < mk.length; ++i) { - if (mk[i].to == null && mk[i].style) { - var newmk = ln.marked || (ln.marked = []), mark = mk[i]; - var nmark = mark.dup(); newmk.push(nmark); nmark.attach(ln); - } - } - } - return ln; - } - Line.prototype = { - // Replace a piece of a line, keeping the styles around it intact. - replace: function(from, to_, text) { - var st = [], mk = this.marked, to = to_ == null ? this.text.length : to_; - copyStyles(0, from, this.styles, st); - if (text) st.push(text, null); - copyStyles(to, this.text.length, this.styles, st); - this.styles = st; - this.text = this.text.slice(0, from) + text + this.text.slice(to); - this.stateAfter = null; - if (mk) { - var diff = text.length - (to - from); - for (var i = 0, mark = mk[i]; i < mk.length; ++i) { - mark.clipTo(from == null, from || 0, to_ == null, to, diff); - if (mark.isDead()) {mark.detach(this); mk.splice(i--, 1);} - } - } - }, - // Split a part off a line, keeping styles and markers intact. - split: function(pos, textBefore) { - var st = [textBefore, null], mk = this.marked; - copyStyles(pos, this.text.length, this.styles, st); - var taken = new Line(textBefore + this.text.slice(pos), st); - if (mk) { - for (var i = 0; i < mk.length; ++i) { - var mark = mk[i]; - var newmark = mark.split(pos, textBefore.length); - if (newmark) { - if (!taken.marked) taken.marked = []; - taken.marked.push(newmark); newmark.attach(taken); - } - } - } - return taken; - }, - append: function(line) { - var mylen = this.text.length, mk = line.marked, mymk = this.marked; - this.text += line.text; - copyStyles(0, line.text.length, line.styles, this.styles); - if (mymk) { - for (var i = 0; i < mymk.length; ++i) - if (mymk[i].to == null) mymk[i].to = mylen; - } - if (mk && mk.length) { - if (!mymk) this.marked = mymk = []; - outer: for (var i = 0; i < mk.length; ++i) { - var mark = mk[i]; - if (!mark.from) { - for (var j = 0; j < mymk.length; ++j) { - var mymark = mymk[j]; - if (mymark.to == mylen && mymark.sameSet(mark)) { - mymark.to = mark.to == null ? null : mark.to + mylen; - if (mymark.isDead()) { - mymark.detach(this); - mk.splice(i--, 1); - } - continue outer; - } - } - } - mymk.push(mark); - mark.attach(this); - mark.from += mylen; - if (mark.to != null) mark.to += mylen; - } - } - }, - fixMarkEnds: function(other) { - var mk = this.marked, omk = other.marked; - if (!mk) return; - for (var i = 0; i < mk.length; ++i) { - var mark = mk[i], close = mark.to == null; - if (close && omk) { - for (var j = 0; j < omk.length; ++j) - if (omk[j].sameSet(mark)) {close = false; break;} - } - if (close) mark.to = this.text.length; - } - }, - fixMarkStarts: function() { - var mk = this.marked; - if (!mk) return; - for (var i = 0; i < mk.length; ++i) - if (mk[i].from == null) mk[i].from = 0; - }, - addMark: function(mark) { - mark.attach(this); - if (this.marked == null) this.marked = []; - this.marked.push(mark); - this.marked.sort(function(a, b){return (a.from || 0) - (b.from || 0);}); - }, - // Run the given mode's parser over a line, update the styles - // array, which contains alternating fragments of text and CSS - // classes. - highlight: function(mode, state, tabSize) { - var stream = new StringStream(this.text, tabSize), st = this.styles, pos = 0; - var changed = false, curWord = st[0], prevWord; - if (this.text == "" && mode.blankLine) mode.blankLine(state); - while (!stream.eol()) { - var style = mode.token(stream, state); - var substr = this.text.slice(stream.start, stream.pos); - stream.start = stream.pos; - if (pos && st[pos-1] == style) - st[pos-2] += substr; - else if (substr) { - if (!changed && (st[pos+1] != style || (pos && st[pos-2] != prevWord))) changed = true; - st[pos++] = substr; st[pos++] = style; - prevWord = curWord; curWord = st[pos]; - } - // Give up when line is ridiculously long - if (stream.pos > 5000) { - st[pos++] = this.text.slice(stream.pos); st[pos++] = null; - break; - } - } - if (st.length != pos) {st.length = pos; changed = true;} - if (pos && st[pos-2] != prevWord) changed = true; - // Short lines with simple highlights return null, and are - // counted as changed by the driver because they are likely to - // highlight the same way in various contexts. - return changed || (st.length < 5 && this.text.length < 10 ? null : false); - }, - // Fetch the parser token for a given character. Useful for hacks - // that want to inspect the mode state (say, for completion). - getTokenAt: function(mode, state, ch) { - var txt = this.text, stream = new StringStream(txt); - while (stream.pos < ch && !stream.eol()) { - stream.start = stream.pos; - var style = mode.token(stream, state); - } - return {start: stream.start, - end: stream.pos, - string: stream.current(), - className: style || null, - state: state}; - }, - indentation: function(tabSize) {return countColumn(this.text, null, tabSize);}, - // Produces an HTML fragment for the line, taking selection, - // marking, and highlighting into account. - getHTML: function(sfrom, sto, includePre, tabText, endAt) { - var html = [], first = true; - if (includePre) - html.push(this.className ? '
': "
");
-            function span(text, style) {
-                if (!text) return;
-                // Work around a bug where, in some compat modes, IE ignores leading spaces
-                if (first && ie && text.charAt(0) == " ") text = "\u00a0" + text.slice(1);
-                first = false;
-                if (style) html.push('', htmlEscape(text).replace(/\t/g, tabText), "");
-                else html.push(htmlEscape(text).replace(/\t/g, tabText));
-            }
-            var st = this.styles, allText = this.text, marked = this.marked;
-            if (sfrom == sto) sfrom = null;
-            var len = allText.length;
-            if (endAt != null) len = Math.min(endAt, len);
-
-            if (!allText && endAt == null)
-                span(" ", sfrom != null && sto == null ? "CodeMirror-selected" : null);
-            else if (!marked && sfrom == null)
-                for (var i = 0, ch = 0; ch < len; i+=2) {
-                    var str = st[i], style = st[i+1], l = str.length;
-                    if (ch + l > len) str = str.slice(0, len - ch);
-                    ch += l;
-                    span(str, style && "cm-" + style);
-                }
-            else {
-                var pos = 0, i = 0, text = "", style, sg = 0;
-                var markpos = -1, mark = null;
-                function nextMark() {
-                    if (marked) {
-                        markpos += 1;
-                        mark = (markpos < marked.length) ? marked[markpos] : null;
-                    }
-                }
-                nextMark();
-                while (pos < len) {
-                    var upto = len;
-                    var extraStyle = "";
-                    if (sfrom != null) {
-                        if (sfrom > pos) upto = sfrom;
-                        else if (sto == null || sto > pos) {
-                            extraStyle = " CodeMirror-selected";
-                            if (sto != null) upto = Math.min(upto, sto);
-                        }
-                    }
-                    while (mark && mark.to != null && mark.to <= pos) nextMark();
-                    if (mark) {
-                        if (mark.from > pos) upto = Math.min(upto, mark.from);
-                        else {
-                            extraStyle += " " + mark.style;
-                            if (mark.to != null) upto = Math.min(upto, mark.to);
-                        }
-                    }
-                    for (;;) {
-                        var end = pos + text.length;
-                        var appliedStyle = style;
-                        if (extraStyle) appliedStyle = style ? style + extraStyle : extraStyle;
-                        span(end > upto ? text.slice(0, upto - pos) : text, appliedStyle);
-                        if (end >= upto) {text = text.slice(upto - pos); pos = upto; break;}
-                        pos = end;
-                        text = st[i++]; style = "cm-" + st[i++];
-                    }
-                }
-                if (sfrom != null && sto == null) span(" ", "CodeMirror-selected");
-            }
-            if (includePre) html.push("
"); - return html.join(""); - }, - cleanUp: function() { - this.parent = null; - if (this.marked) - for (var i = 0, e = this.marked.length; i < e; ++i) this.marked[i].detach(this); - } - }; - // Utility used by replace and split above - function copyStyles(from, to, source, dest) { - for (var i = 0, pos = 0, state = 0; pos < to; i+=2) { - var part = source[i], end = pos + part.length; - if (state == 0) { - if (end > from) dest.push(part.slice(from - pos, Math.min(part.length, to - pos)), source[i+1]); - if (end >= from) state = 1; - } - else if (state == 1) { - if (end > to) dest.push(part.slice(0, to - pos), source[i+1]); - else dest.push(part, source[i+1]); - } - pos = end; - } - } - - // Data structure that holds the sequence of lines. - function LeafChunk(lines) { - this.lines = lines; - this.parent = null; - for (var i = 0, e = lines.length, height = 0; i < e; ++i) { - lines[i].parent = this; - height += lines[i].height; - } - this.height = height; - } - LeafChunk.prototype = { - chunkSize: function() { return this.lines.length; }, - remove: function(at, n, callbacks) { - for (var i = at, e = at + n; i < e; ++i) { - var line = this.lines[i]; - this.height -= line.height; - line.cleanUp(); - if (line.handlers) - for (var j = 0; j < line.handlers.length; ++j) callbacks.push(line.handlers[j]); - } - this.lines.splice(at, n); - }, - collapse: function(lines) { - lines.splice.apply(lines, [lines.length, 0].concat(this.lines)); - }, - insertHeight: function(at, lines, height) { - this.height += height; - this.lines.splice.apply(this.lines, [at, 0].concat(lines)); - for (var i = 0, e = lines.length; i < e; ++i) lines[i].parent = this; - }, - iterN: function(at, n, op) { - for (var e = at + n; at < e; ++at) - if (op(this.lines[at])) return true; - } - }; - function BranchChunk(children) { - this.children = children; - var size = 0, height = 0; - for (var i = 0, e = children.length; i < e; ++i) { - var ch = children[i]; - size += ch.chunkSize(); height += ch.height; - ch.parent = this; - } - this.size = size; - this.height = height; - this.parent = null; - } - BranchChunk.prototype = { - chunkSize: function() { return this.size; }, - remove: function(at, n, callbacks) { - this.size -= n; - for (var i = 0; i < this.children.length; ++i) { - var child = this.children[i], sz = child.chunkSize(); - if (at < sz) { - var rm = Math.min(n, sz - at), oldHeight = child.height; - child.remove(at, rm, callbacks); - this.height -= oldHeight - child.height; - if (sz == rm) { this.children.splice(i--, 1); child.parent = null; } - if ((n -= rm) == 0) break; - at = 0; - } else at -= sz; - } - if (this.size - n < 25) { - var lines = []; - this.collapse(lines); - this.children = [new LeafChunk(lines)]; - } - }, - collapse: function(lines) { - for (var i = 0, e = this.children.length; i < e; ++i) this.children[i].collapse(lines); - }, - insert: function(at, lines) { - var height = 0; - for (var i = 0, e = lines.length; i < e; ++i) height += lines[i].height; - this.insertHeight(at, lines, height); - }, - insertHeight: function(at, lines, height) { - this.size += lines.length; - this.height += height; - for (var i = 0, e = this.children.length; i < e; ++i) { - var child = this.children[i], sz = child.chunkSize(); - if (at <= sz) { - child.insertHeight(at, lines, height); - if (child.lines && child.lines.length > 50) { - while (child.lines.length > 50) { - var spilled = child.lines.splice(child.lines.length - 25, 25); - var newleaf = new LeafChunk(spilled); - child.height -= newleaf.height; - this.children.splice(i + 1, 0, newleaf); - newleaf.parent = this; - } - this.maybeSpill(); - } - break; - } - at -= sz; - } - }, - maybeSpill: function() { - if (this.children.length <= 10) return; - var me = this; - do { - var spilled = me.children.splice(me.children.length - 5, 5); - var sibling = new BranchChunk(spilled); - if (!me.parent) { // Become the parent node - var copy = new BranchChunk(me.children); - copy.parent = me; - me.children = [copy, sibling]; - me = copy; - } else { - me.size -= sibling.size; - me.height -= sibling.height; - var myIndex = indexOf(me.parent.children, me); - me.parent.children.splice(myIndex + 1, 0, sibling); - } - sibling.parent = me.parent; - } while (me.children.length > 10); - me.parent.maybeSpill(); - }, - iter: function(from, to, op) { this.iterN(from, to - from, op); }, - iterN: function(at, n, op) { - for (var i = 0, e = this.children.length; i < e; ++i) { - var child = this.children[i], sz = child.chunkSize(); - if (at < sz) { - var used = Math.min(n, sz - at); - if (child.iterN(at, used, op)) return true; - if ((n -= used) == 0) break; - at = 0; - } else at -= sz; - } - } - }; - - function getLineAt(chunk, n) { - while (!chunk.lines) { - for (var i = 0;; ++i) { - var child = chunk.children[i], sz = child.chunkSize(); - if (n < sz) { chunk = child; break; } - n -= sz; - } - } - return chunk.lines[n]; - } - function lineNo(line) { - if (line.parent == null) return null; - var cur = line.parent, no = indexOf(cur.lines, line); - for (var chunk = cur.parent; chunk; cur = chunk, chunk = chunk.parent) { - for (var i = 0, e = chunk.children.length; ; ++i) { - if (chunk.children[i] == cur) break; - no += chunk.children[i].chunkSize(); - } - } - return no; - } - function lineAtHeight(chunk, h) { - var n = 0; - outer: do { - for (var i = 0, e = chunk.children.length; i < e; ++i) { - var child = chunk.children[i], ch = child.height; - if (h < ch) { chunk = child; continue outer; } - h -= ch; - n += child.chunkSize(); - } - return n; - } while (!chunk.lines); - for (var i = 0, e = chunk.lines.length; i < e; ++i) { - var line = chunk.lines[i], lh = line.height; - if (h < lh) break; - h -= lh; - } - return n + i; - } - function heightAtLine(chunk, n) { - var h = 0; - outer: do { - for (var i = 0, e = chunk.children.length; i < e; ++i) { - var child = chunk.children[i], sz = child.chunkSize(); - if (n < sz) { chunk = child; continue outer; } - n -= sz; - h += child.height; - } - return h; - } while (!chunk.lines); - for (var i = 0; i < n; ++i) h += chunk.lines[i].height; - return h; - } - - // The history object 'chunks' changes that are made close together - // and at almost the same time into bigger undoable units. - function History() { - this.time = 0; - this.done = []; this.undone = []; - } - History.prototype = { - addChange: function(start, added, old) { - this.undone.length = 0; - var time = +new Date, last = this.done[this.done.length - 1]; - if (time - this.time > 400 || !last || - last.start > start + added || last.start + last.added < start - last.added + last.old.length) - this.done.push({start: start, added: added, old: old}); - else { - var oldoff = 0; - if (start < last.start) { - for (var i = last.start - start - 1; i >= 0; --i) - last.old.unshift(old[i]); - last.added += last.start - start; - last.start = start; - } - else if (last.start < start) { - oldoff = start - last.start; - added += oldoff; - } - for (var i = last.added - oldoff, e = old.length; i < e; ++i) - last.old.push(old[i]); - if (last.added < added) last.added = added; - } - this.time = time; - } - }; - - function stopMethod() {e_stop(this);} - // Ensure an event has a stop method. - function addStop(event) { - if (!event.stop) event.stop = stopMethod; - return event; - } - - function e_preventDefault(e) { - if (e.preventDefault) e.preventDefault(); - else e.returnValue = false; - } - function e_stopPropagation(e) { - if (e.stopPropagation) e.stopPropagation(); - else e.cancelBubble = true; - } - function e_stop(e) {e_preventDefault(e); e_stopPropagation(e);} - CodeMirror.e_stop = e_stop; + CodeMirror.SharedTextMarker = SharedTextMarker; + CodeMirror.TextMarker = TextMarker; + CodeMirror.LineWidget = LineWidget; CodeMirror.e_preventDefault = e_preventDefault; CodeMirror.e_stopPropagation = e_stopPropagation; - - function e_target(e) {return e.target || e.srcElement;} - function e_button(e) { - if (e.which) return e.which; - else if (e.button & 1) return 1; - else if (e.button & 2) return 3; - else if (e.button & 4) return 2; - } - - // Event handler registration. If disconnect is true, it'll return a - // function that unregisters the handler. - function connect(node, type, handler, disconnect) { - if (typeof node.addEventListener == "function") { - node.addEventListener(type, handler, false); - if (disconnect) return function() {node.removeEventListener(type, handler, false);}; - } - else { - var wrapHandler = function(event) {handler(event || window.event);}; - node.attachEvent("on" + type, wrapHandler); - if (disconnect) return function() {node.detachEvent("on" + type, wrapHandler);}; - } - } - CodeMirror.connect = connect; - - function Delayed() {this.id = null;} - Delayed.prototype = {set: function(ms, f) {clearTimeout(this.id); this.id = setTimeout(f, ms);}}; - - // Detect drag-and-drop - var dragAndDrop = function() { - // IE8 has ondragstart and ondrop properties, but doesn't seem to - // actually support ondragstart the way it's supposed to work. - if (/MSIE [1-8]\b/.test(navigator.userAgent)) return false; - var div = document.createElement('div'); - return "draggable" in div; - }(); - - var gecko = /gecko\/\d{7}/i.test(navigator.userAgent); - var ie = /MSIE \d/.test(navigator.userAgent); - var webkit = /WebKit\//.test(navigator.userAgent); - - var lineSep = "\n"; - // Feature-detect whether newlines in textareas are converted to \r\n - (function () { - var te = document.createElement("textarea"); - te.value = "foo\nbar"; - if (te.value.indexOf("\r") > -1) lineSep = "\r\n"; - }()); - - // Counts the column offset in a string, taking tabs into account. - // Used mostly to find indentation. - function countColumn(string, end, tabSize) { - if (end == null) { - end = string.search(/[^\s\u00a0]/); - if (end == -1) end = string.length; - } - for (var i = 0, n = 0; i < end; ++i) { - if (string.charAt(i) == "\t") n += tabSize - (n % tabSize); - else ++n; - } - return n; - } - - function computedStyle(elt) { - if (elt.currentStyle) return elt.currentStyle; - return window.getComputedStyle(elt, null); - } - - // Find the position of an element by following the offsetParent chain. - // If screen==true, it returns screen (rather than page) coordinates. - function eltOffset(node, screen) { - var bod = node.ownerDocument.body; - var x = 0, y = 0, skipBody = false; - for (var n = node; n; n = n.offsetParent) { - var ol = n.offsetLeft, ot = n.offsetTop; - // Firefox reports weird inverted offsets when the body has a border. - if (n == bod) { x += Math.abs(ol); y += Math.abs(ot); } - else { x += ol, y += ot; } - if (screen && computedStyle(n).position == "fixed") - skipBody = true; - } - var e = screen && !skipBody ? null : bod; - for (var n = node.parentNode; n != e; n = n.parentNode) - if (n.scrollLeft != null) { x -= n.scrollLeft; y -= n.scrollTop;} - return {left: x, top: y}; - } - // Use the faster and saner getBoundingClientRect method when possible. - if (document.documentElement.getBoundingClientRect != null) eltOffset = function(node, screen) { - // Take the parts of bounding client rect that we are interested in so we are able to edit if need be, - // since the returned value cannot be changed externally (they are kept in sync as the element moves within the page) - try { var box = node.getBoundingClientRect(); box = { top: box.top, left: box.left }; } - catch(e) { box = {top: 0, left: 0}; } - if (!screen) { - // Get the toplevel scroll, working around browser differences. - if (window.pageYOffset == null) { - var t = document.documentElement || document.body.parentNode; - if (t.scrollTop == null) t = document.body; - box.top += t.scrollTop; box.left += t.scrollLeft; - } else { - box.top += window.pageYOffset; box.left += window.pageXOffset; - } - } - return box; - }; - - // Get a node's text content. - function eltText(node) { - return node.textContent || node.innerText || node.nodeValue || ""; - } - - // Operations on {line, ch} objects. - function posEq(a, b) {return a.line == b.line && a.ch == b.ch;} - function posLess(a, b) {return a.line < b.line || (a.line == b.line && a.ch < b.ch);} - function copyPos(x) {return {line: x.line, ch: x.ch};} - - var escapeElement = document.createElement("pre"); - function htmlEscape(str) { - escapeElement.textContent = str; - return escapeElement.innerHTML; - } - // Recent (late 2011) Opera betas insert bogus newlines at the start - // of the textContent, so we strip those. - if (htmlEscape("a") == "\na") - htmlEscape = function(str) { - escapeElement.textContent = str; - return escapeElement.innerHTML.slice(1); - }; - // Some IEs don't preserve tabs through innerHTML - else if (htmlEscape("\t") != "\t") - htmlEscape = function(str) { - escapeElement.innerHTML = ""; - escapeElement.appendChild(document.createTextNode(str)); - return escapeElement.innerHTML; - }; - CodeMirror.htmlEscape = htmlEscape; - - // Used to position the cursor after an undo/redo by finding the - // last edited character. - function editEnd(from, to) { - if (!to) return from ? from.length : 0; - if (!from) return to.length; - for (var i = from.length, j = to.length; i >= 0 && j >= 0; --i, --j) - if (from.charAt(i) != to.charAt(j)) break; - return j + 1; - } - - function indexOf(collection, elt) { - if (collection.indexOf) return collection.indexOf(elt); - for (var i = 0, e = collection.length; i < e; ++i) - if (collection[i] == elt) return i; - return -1; - } - function isWordChar(ch) { - return /\w/.test(ch) || ch.toUpperCase() != ch.toLowerCase(); - } - - // See if "".split is the broken IE version, if so, provide an - // alternative way to split lines. - var splitLines = "\n\nb".split(/\n/).length != 3 ? function(string) { - var pos = 0, nl, result = []; - while ((nl = string.indexOf("\n", pos)) > -1) { - result.push(string.slice(pos, string.charAt(nl-1) == "\r" ? nl - 1 : nl)); - pos = nl + 1; - } - result.push(string.slice(pos)); - return result; - } : function(string){return string.split(/\r?\n/);}; - CodeMirror.splitLines = splitLines; - - var hasSelection = window.getSelection ? function(te) { - try { return te.selectionStart != te.selectionEnd; } - catch(e) { return false; } - } : function(te) { - try {var range = te.ownerDocument.selection.createRange();} - catch(e) {} - if (!range || range.parentElement() != te) return false; - return range.compareEndPoints("StartToEnd", range) != 0; - }; - - CodeMirror.defineMode("null", function() { - return {token: function(stream) {stream.skipToEnd();}}; - }); - CodeMirror.defineMIME("text/plain", "null"); - - var keyNames = {3: "Enter", 8: "Backspace", 9: "Tab", 13: "Enter", 16: "Shift", 17: "Ctrl", 18: "Alt", - 19: "Pause", 20: "CapsLock", 27: "Esc", 32: "Space", 33: "PageUp", 34: "PageDown", 35: "End", - 36: "Home", 37: "Left", 38: "Up", 39: "Right", 40: "Down", 44: "PrintScrn", 45: "Insert", - 46: "Delete", 59: ";", 91: "Mod", 92: "Mod", 93: "Mod", 186: ";", 187: "=", 188: ",", - 189: "-", 190: ".", 191: "/", 192: "`", 219: "[", 220: "\\", 221: "]", 222: "'", 63276: "PageUp", - 63277: "PageDown", 63275: "End", 63273: "Home", 63234: "Left", 63232: "Up", 63235: "Right", - 63233: "Down", 63302: "Insert", 63272: "Delete"}; + CodeMirror.e_stop = e_stop; + CodeMirror.addClass = addClass; + CodeMirror.contains = contains; + CodeMirror.rmClass = rmClass; CodeMirror.keyNames = keyNames; - (function() { - // Number keys - for (var i = 0; i < 10; i++) keyNames[i + 48] = String(i); - // Alphabetic keys - for (var i = 65; i <= 90; i++) keyNames[i] = String.fromCharCode(i); - // Function keys - for (var i = 1; i <= 12; i++) keyNames[i + 111] = keyNames[i + 63235] = "F" + i; - })(); + } - return CodeMirror; -})(); -CodeMirror.defineMode("xml", function(config, parserConfig) { - var indentUnit = config.indentUnit; - var Kludges = parserConfig.htmlMode ? { - autoSelfClosers: {"br": true, "img": true, "hr": true, "link": true, "input": true, - "meta": true, "col": true, "frame": true, "base": true, "area": true}, - doNotIndent: {"pre": true}, - allowUnquoted: true - } : {autoSelfClosers: {}, doNotIndent: {}, allowUnquoted: false}; - var alignCDATA = parserConfig.alignCDATA; + // EDITOR CONSTRUCTOR - // Return variables for tokenizers - var tagName, type; + defineOptions(CodeMirror); - function inText(stream, state) { - function chain(parser) { - state.tokenize = parser; - return parser(stream, state); - } + addEditorMethods(CodeMirror); - var ch = stream.next(); - if (ch == "<") { - if (stream.eat("!")) { - if (stream.eat("[")) { - if (stream.match("CDATA[")) return chain(inBlock("atom", "]]>")); - else return null; - } - else if (stream.match("--")) return chain(inBlock("comment", "-->")); - else if (stream.match("DOCTYPE", true, true)) { - stream.eatWhile(/[\w\._\-]/); - return chain(doctype(1)); - } - else return null; - } - else if (stream.eat("?")) { - stream.eatWhile(/[\w\._\-]/); - state.tokenize = inBlock("meta", "?>"); - return "meta"; - } - else { - type = stream.eat("/") ? "closeTag" : "openTag"; - stream.eatSpace(); - tagName = ""; - var c; - while ((c = stream.eat(/[^\s\u00a0=<>\"\'\/?]/))) tagName += c; - state.tokenize = inTag; - return "tag"; - } - } - else if (ch == "&") { - stream.eatWhile(/[^;]/); - stream.eat(";"); - return "atom"; - } - else { - stream.eatWhile(/[^&<]/); - return null; - } - } + // Set up methods on CodeMirror's prototype to redirect to the editor's document. + var dontDelegate = "iter insert remove copy getEditor constructor".split(" "); + for (var prop in Doc.prototype) { if (Doc.prototype.hasOwnProperty(prop) && indexOf(dontDelegate, prop) < 0) + { CodeMirror.prototype[prop] = (function(method) { + return function() {return method.apply(this.doc, arguments)} + })(Doc.prototype[prop]); } } - function inTag(stream, state) { - var ch = stream.next(); - if (ch == ">" || (ch == "/" && stream.eat(">"))) { - state.tokenize = inText; - type = ch == ">" ? "endTag" : "selfcloseTag"; - return "tag"; - } - else if (ch == "=") { - type = "equals"; - return null; - } - else if (/[\'\"]/.test(ch)) { - state.tokenize = inAttribute(ch); - return state.tokenize(stream, state); - } - else { - stream.eatWhile(/[^\s\u00a0=<>\"\'\/?]/); - return "word"; - } - } + eventMixin(Doc); + CodeMirror.inputStyles = {"textarea": TextareaInput, "contenteditable": ContentEditableInput}; - function inAttribute(quote) { - return function(stream, state) { - while (!stream.eol()) { - if (stream.next() == quote) { - state.tokenize = inTag; - break; - } - } - return "string"; - }; - } + // Extra arguments are stored as the mode's dependencies, which is + // used by (legacy) mechanisms like loadmode.js to automatically + // load a mode. (Preferred mechanism is the require/define calls.) + CodeMirror.defineMode = function(name/*, mode, …*/) { + if (!CodeMirror.defaults.mode && name != "null") { CodeMirror.defaults.mode = name; } + defineMode.apply(this, arguments); + }; - function inBlock(style, terminator) { - return function(stream, state) { - while (!stream.eol()) { - if (stream.match(terminator)) { - state.tokenize = inText; - break; - } - stream.next(); - } - return style; - }; - } - function doctype(depth) { - return function(stream, state) { - var ch; - while ((ch = stream.next()) != null) { - if (ch == "<") { - state.tokenize = doctype(depth + 1); - return state.tokenize(stream, state); - } else if (ch == ">") { - if (depth == 1) { - state.tokenize = inText; - break; - } else { - state.tokenize = doctype(depth - 1); - return state.tokenize(stream, state); - } - } - } - return "meta"; - }; - } + CodeMirror.defineMIME = defineMIME; - var curState, setStyle; - function pass() { - for (var i = arguments.length - 1; i >= 0; i--) curState.cc.push(arguments[i]); - } - function cont() { - pass.apply(null, arguments); - return true; - } + // Minimal default mode. + CodeMirror.defineMode("null", function () { return ({token: function (stream) { return stream.skipToEnd(); }}); }); + CodeMirror.defineMIME("text/plain", "null"); - function pushContext(tagName, startOfLine) { - var noIndent = Kludges.doNotIndent.hasOwnProperty(tagName) || (curState.context && curState.context.noIndent); - curState.context = { - prev: curState.context, - tagName: tagName, - indent: curState.indented, - startOfLine: startOfLine, - noIndent: noIndent - }; - } - function popContext() { - if (curState.context) curState.context = curState.context.prev; - } + // EXTENSIONS - function element(type) { - if (type == "openTag") { - curState.tagName = tagName; - return cont(attributes, endtag(curState.startOfLine)); - } else if (type == "closeTag") { - var err = false; - if (curState.context) { - err = curState.context.tagName != tagName; - } else { - err = true; - } - if (err) setStyle = "error"; - return cont(endclosetag(err)); - } - return cont(); - } - function endtag(startOfLine) { - return function(type) { - if (type == "selfcloseTag" || - (type == "endTag" && Kludges.autoSelfClosers.hasOwnProperty(curState.tagName.toLowerCase()))) - return cont(); - if (type == "endTag") {pushContext(curState.tagName, startOfLine); return cont();} - return cont(); - }; - } - function endclosetag(err) { - return function(type) { - if (err) setStyle = "error"; - if (type == "endTag") { popContext(); return cont(); } - setStyle = "error"; - return cont(arguments.callee); - } - } + CodeMirror.defineExtension = function (name, func) { + CodeMirror.prototype[name] = func; + }; + CodeMirror.defineDocExtension = function (name, func) { + Doc.prototype[name] = func; + }; - function attributes(type) { - if (type == "word") {setStyle = "attribute"; return cont(attributes);} - if (type == "equals") return cont(attvalue, attributes); - if (type == "string") {setStyle = "error"; return cont(attributes);} - return pass(); - } - function attvalue(type) { - if (type == "word" && Kludges.allowUnquoted) {setStyle = "string"; return cont();} - if (type == "string") return cont(attvaluemaybe); - return pass(); - } - function attvaluemaybe(type) { - if (type == "string") return cont(attvaluemaybe); - else return pass(); - } + CodeMirror.fromTextArea = fromTextArea; - return { - startState: function() { - return {tokenize: inText, cc: [], indented: 0, startOfLine: true, tagName: null, context: null}; - }, + addLegacyProps(CodeMirror); - token: function(stream, state) { - if (stream.sol()) { - state.startOfLine = true; - state.indented = stream.indentation(); - } - if (stream.eatSpace()) return null; + CodeMirror.version = "5.65.18"; - setStyle = type = tagName = null; - var style = state.tokenize(stream, state); - state.type = type; - if ((style || type) && style != "comment") { - curState = state; - while (true) { - var comb = state.cc.pop() || element; - if (comb(type || style)) break; - } - } - state.startOfLine = false; - return setStyle || style; - }, + return CodeMirror; - indent: function(state, textAfter, fullLine) { - var context = state.context; - if ((state.tokenize != inTag && state.tokenize != inText) || - context && context.noIndent) - return fullLine ? fullLine.match(/^(\s*)/)[0].length : 0; - if (alignCDATA && /!?|]/; - - function chain(stream, state, f) { - state.tokenize = f; - return f(stream, state); - } - - function nextUntilUnescaped(stream, end) { - var escaped = false, next; - while ((next = stream.next()) != null) { - if (next == end && !escaped) - return false; - escaped = !escaped && next == "\\"; - } - return escaped; - } - - // Used as scratch variables to communicate multiple values without - // consing up tons of objects. - var type, content; - function ret(tp, style, cont) { - type = tp; content = cont; - return style; - } - - function jsTokenBase(stream, state) { - var ch = stream.next(); - if (ch == '"' || ch == "'") - return chain(stream, state, jsTokenString(ch)); - else if (/[\[\]{}\(\),;\:\.]/.test(ch)) - return ret(ch); - else if (ch == "0" && stream.eat(/x/i)) { - stream.eatWhile(/[\da-f]/i); - return ret("number", "number"); - } - else if (/\d/.test(ch)) { - stream.match(/^\d*(?:\.\d*)?(?:[eE][+\-]?\d+)?/); - return ret("number", "number"); - } - else if (ch == "/") { - if (stream.eat("*")) { - return chain(stream, state, jsTokenComment); - } - else if (stream.eat("/")) { - stream.skipToEnd(); - return ret("comment", "comment"); - } - else if (state.reAllowed) { - nextUntilUnescaped(stream, "/"); - stream.eatWhile(/[gimy]/); // 'y' is "sticky" option in Mozilla - return ret("regexp", "string"); - } - else { - stream.eatWhile(isOperatorChar); - return ret("operator", null, stream.current()); - } - } - else if (ch == "#") { - stream.skipToEnd(); - return ret("error", "error"); - } - else if (isOperatorChar.test(ch)) { - stream.eatWhile(isOperatorChar); - return ret("operator", null, stream.current()); - } - else { - stream.eatWhile(/[\w\$_]/); - var word = stream.current(), known = keywords.propertyIsEnumerable(word) && keywords[word]; - return (known && state.kwAllowed) ? ret(known.type, known.style, word) : - ret("variable", "variable", word); - } - } - - function jsTokenString(quote) { - return function(stream, state) { - if (!nextUntilUnescaped(stream, quote)) - state.tokenize = jsTokenBase; - return ret("string", "string"); - }; - } - - function jsTokenComment(stream, state) { - var maybeEnd = false, ch; - while (ch = stream.next()) { - if (ch == "/" && maybeEnd) { - state.tokenize = jsTokenBase; - break; - } - maybeEnd = (ch == "*"); - } - return ret("comment", "comment"); - } - - // Parser - - var atomicTypes = {"atom": true, "number": true, "variable": true, "string": true, "regexp": true}; - - function JSLexical(indented, column, type, align, prev, info) { - this.indented = indented; - this.column = column; - this.type = type; - this.prev = prev; - this.info = info; - if (align != null) this.align = align; - } - - function inScope(state, varname) { - for (var v = state.localVars; v; v = v.next) - if (v.name == varname) return true; - } - - function parseJS(state, style, type, content, stream) { - var cc = state.cc; - // Communicate our context to the combinators. - // (Less wasteful than consing up a hundred closures on every call.) - cx.state = state; cx.stream = stream; cx.marked = null, cx.cc = cc; - - if (!state.lexical.hasOwnProperty("align")) - state.lexical.align = true; - - while(true) { - var combinator = cc.length ? cc.pop() : jsonMode ? expression : statement; - if (combinator(type, content)) { - while(cc.length && cc[cc.length - 1].lex) - cc.pop()(); - if (cx.marked) return cx.marked; - if (type == "variable" && inScope(state, content)) return "variable-2"; - return style; - } - } - } - - // Combinator utils - - var cx = {state: null, column: null, marked: null, cc: null}; - function pass() { - for (var i = arguments.length - 1; i >= 0; i--) cx.cc.push(arguments[i]); - } - function cont() { - pass.apply(null, arguments); - return true; - } - function register(varname) { - var state = cx.state; - if (state.context) { - cx.marked = "def"; - for (var v = state.localVars; v; v = v.next) - if (v.name == varname) return; - state.localVars = {name: varname, next: state.localVars}; - } - } - - // Combinators - - var defaultVars = {name: "this", next: {name: "arguments"}}; - function pushcontext() { - if (!cx.state.context) cx.state.localVars = defaultVars; - cx.state.context = {prev: cx.state.context, vars: cx.state.localVars}; - } - function popcontext() { - cx.state.localVars = cx.state.context.vars; - cx.state.context = cx.state.context.prev; - } - function pushlex(type, info) { - var result = function() { - var state = cx.state; - state.lexical = new JSLexical(state.indented, cx.stream.column(), type, null, state.lexical, info) - }; - result.lex = true; - return result; - } - function poplex() { - var state = cx.state; - if (state.lexical.prev) { - if (state.lexical.type == ")") - state.indented = state.lexical.indented; - state.lexical = state.lexical.prev; - } - } - poplex.lex = true; - - function expect(wanted) { - return function expecting(type) { - if (type == wanted) return cont(); - else if (wanted == ";") return pass(); - else return cont(arguments.callee); - }; - } - - function statement(type) { - if (type == "var") return cont(pushlex("vardef"), vardef1, expect(";"), poplex); - if (type == "keyword a") return cont(pushlex("form"), expression, statement, poplex); - if (type == "keyword b") return cont(pushlex("form"), statement, poplex); - if (type == "{") return cont(pushlex("}"), block, poplex); - if (type == ";") return cont(); - if (type == "function") return cont(functiondef); - if (type == "for") return cont(pushlex("form"), expect("("), pushlex(")"), forspec1, expect(")"), - poplex, statement, poplex); - if (type == "variable") return cont(pushlex("stat"), maybelabel); - if (type == "switch") return cont(pushlex("form"), expression, pushlex("}", "switch"), expect("{"), - block, poplex, poplex); - if (type == "case") return cont(expression, expect(":")); - if (type == "default") return cont(expect(":")); - if (type == "catch") return cont(pushlex("form"), pushcontext, expect("("), funarg, expect(")"), - statement, poplex, popcontext); - return pass(pushlex("stat"), expression, expect(";"), poplex); - } - function expression(type) { - if (atomicTypes.hasOwnProperty(type)) return cont(maybeoperator); - if (type == "function") return cont(functiondef); - if (type == "keyword c") return cont(maybeexpression); - if (type == "(") return cont(pushlex(")"), expression, expect(")"), poplex, maybeoperator); - if (type == "operator") return cont(expression); - if (type == "[") return cont(pushlex("]"), commasep(expression, "]"), poplex, maybeoperator); - if (type == "{") return cont(pushlex("}"), commasep(objprop, "}"), poplex, maybeoperator); - return cont(); - } - function maybeexpression(type) { - if (type.match(/[;\}\)\],]/)) return pass(); - return pass(expression); - } - - function maybeoperator(type, value) { - if (type == "operator" && /\+\+|--/.test(value)) return cont(maybeoperator); - if (type == "operator") return cont(expression); - if (type == ";") return; - if (type == "(") return cont(pushlex(")"), commasep(expression, ")"), poplex, maybeoperator); - if (type == ".") return cont(property, maybeoperator); - if (type == "[") return cont(pushlex("]"), expression, expect("]"), poplex, maybeoperator); - } - function maybelabel(type) { - if (type == ":") return cont(poplex, statement); - return pass(maybeoperator, expect(";"), poplex); - } - function property(type) { - if (type == "variable") {cx.marked = "property"; return cont();} - } - function objprop(type) { - if (type == "variable") cx.marked = "property"; - if (atomicTypes.hasOwnProperty(type)) return cont(expect(":"), expression); - } - function commasep(what, end) { - function proceed(type) { - if (type == ",") return cont(what, proceed); - if (type == end) return cont(); - return cont(expect(end)); - } - return function commaSeparated(type) { - if (type == end) return cont(); - else return pass(what, proceed); - }; - } - function block(type) { - if (type == "}") return cont(); - return pass(statement, block); - } - function vardef1(type, value) { - if (type == "variable"){register(value); return cont(vardef2);} - return cont(); - } - function vardef2(type, value) { - if (value == "=") return cont(expression, vardef2); - if (type == ",") return cont(vardef1); - } - function forspec1(type) { - if (type == "var") return cont(vardef1, forspec2); - if (type == ";") return pass(forspec2); - if (type == "variable") return cont(formaybein); - return pass(forspec2); - } - function formaybein(type, value) { - if (value == "in") return cont(expression); - return cont(maybeoperator, forspec2); - } - function forspec2(type, value) { - if (type == ";") return cont(forspec3); - if (value == "in") return cont(expression); - return cont(expression, expect(";"), forspec3); - } - function forspec3(type) { - if (type != ")") cont(expression); - } - function functiondef(type, value) { - if (type == "variable") {register(value); return cont(functiondef);} - if (type == "(") return cont(pushlex(")"), pushcontext, commasep(funarg, ")"), poplex, statement, popcontext); - } - function funarg(type, value) { - if (type == "variable") {register(value); return cont();} - } - - // Interface - - return { - startState: function(basecolumn) { - return { - tokenize: jsTokenBase, - reAllowed: true, - kwAllowed: true, - cc: [], - lexical: new JSLexical((basecolumn || 0) - indentUnit, 0, "block", false), - localVars: null, - context: null, - indented: 0 - }; - }, - - token: function(stream, state) { - if (stream.sol()) { - if (!state.lexical.hasOwnProperty("align")) - state.lexical.align = false; - state.indented = stream.indentation(); - } - if (stream.eatSpace()) return null; - var style = state.tokenize(stream, state); - if (type == "comment") return style; - state.reAllowed = type == "operator" || type == "keyword c" || type.match(/^[\[{}\(,;:]$/); - state.kwAllowed = type != '.'; - return parseJS(state, style, type, content, stream); - }, - - indent: function(state, textAfter) { - if (state.tokenize != jsTokenBase) return 0; - var firstChar = textAfter && textAfter.charAt(0), lexical = state.lexical, - type = lexical.type, closing = firstChar == type; - if (type == "vardef") return lexical.indented + 4; - else if (type == "form" && firstChar == "{") return lexical.indented; - else if (type == "stat" || type == "form") return lexical.indented + indentUnit; - else if (lexical.info == "switch" && !closing) - return lexical.indented + (/^(?:case|default)\b/.test(textAfter) ? indentUnit : 2 * indentUnit); - else if (lexical.align) return lexical.column + (closing ? 0 : 1); - else return lexical.indented + (closing ? 0 : indentUnit); - }, - - electricChars: ":{}" - }; -}); - -CodeMirror.defineMIME("text/javascript", "javascript"); -CodeMirror.defineMIME("application/json", {name: "javascript", json: true}); - -CodeMirror.defineMode("css", function(config) { - var indentUnit = config.indentUnit, type; - function ret(style, tp) {type = tp; return style;} - - function tokenBase(stream, state) { - var ch = stream.next(); - if (ch == "@") {stream.eatWhile(/[\w\\\-]/); return ret("meta", stream.current());} - else if (ch == "/" && stream.eat("*")) { - state.tokenize = tokenCComment; - return tokenCComment(stream, state); - } - else if (ch == "<" && stream.eat("!")) { - state.tokenize = tokenSGMLComment; - return tokenSGMLComment(stream, state); - } - else if (ch == "=") ret(null, "compare"); - else if ((ch == "~" || ch == "|") && stream.eat("=")) return ret(null, "compare"); - else if (ch == "\"" || ch == "'") { - state.tokenize = tokenString(ch); - return state.tokenize(stream, state); - } - else if (ch == "#") { - stream.eatWhile(/[\w\\\-]/); - return ret("atom", "hash"); - } - else if (ch == "!") { - stream.match(/^\s*\w*/); - return ret("keyword", "important"); - } - else if (/\d/.test(ch)) { - stream.eatWhile(/[\w.%]/); - return ret("number", "unit"); - } - else if (/[,.+>*\/]/.test(ch)) { - return ret(null, "select-op"); - } - else if (/[;{}:\[\]]/.test(ch)) { - return ret(null, ch); - } - else { - stream.eatWhile(/[\w\\\-]/); - return ret("variable", "variable"); - } - } - - function tokenCComment(stream, state) { - var maybeEnd = false, ch; - while ((ch = stream.next()) != null) { - if (maybeEnd && ch == "/") { - state.tokenize = tokenBase; - break; - } - maybeEnd = (ch == "*"); - } - return ret("comment", "comment"); - } - - function tokenSGMLComment(stream, state) { - var dashes = 0, ch; - while ((ch = stream.next()) != null) { - if (dashes >= 2 && ch == ">") { - state.tokenize = tokenBase; - break; - } - dashes = (ch == "-") ? dashes + 1 : 0; - } - return ret("comment", "comment"); - } - - function tokenString(quote) { - return function(stream, state) { - var escaped = false, ch; - while ((ch = stream.next()) != null) { - if (ch == quote && !escaped) - break; - escaped = !escaped && ch == "\\"; - } - if (!escaped) state.tokenize = tokenBase; - return ret("string", "string"); - }; - } - - return { - startState: function(base) { - return {tokenize: tokenBase, - baseIndent: base || 0, - stack: []}; - }, - - token: function(stream, state) { - if (stream.eatSpace()) return null; - var style = state.tokenize(stream, state); - - var context = state.stack[state.stack.length-1]; - if (type == "hash" && context == "rule") style = "atom"; - else if (style == "variable") { - if (context == "rule") style = "number"; - else if (!context || context == "@media{") style = "tag"; - } - - if (context == "rule" && /^[\{\};]$/.test(type)) - state.stack.pop(); - if (type == "{") { - if (context == "@media") state.stack[state.stack.length-1] = "@media{"; - else state.stack.push("{"); - } - else if (type == "}") state.stack.pop(); - else if (type == "@media") state.stack.push("@media"); - else if (context == "{" && type != "comment") state.stack.push("rule"); - return style; - }, - - indent: function(state, textAfter) { - var n = state.stack.length; - if (/^\}/.test(textAfter)) - n -= state.stack[state.stack.length-1] == "rule" ? 2 : 1; - return state.baseIndent + n * indentUnit; - }, - - electricChars: "}" - }; -}); - -CodeMirror.defineMIME("text/css", "css"); -CodeMirror.defineMode("htmlmixed", function(config, parserConfig) { - var htmlMode = CodeMirror.getMode(config, {name: "xml", htmlMode: true}); - var jsMode = CodeMirror.getMode(config, "javascript"); - var cssMode = CodeMirror.getMode(config, "css"); - - function html(stream, state) { - var style = htmlMode.token(stream, state.htmlState); - if (style == "tag" && stream.current() == ">" && state.htmlState.context) { - if (/^script$/i.test(state.htmlState.context.tagName)) { - state.token = javascript; - state.localState = jsMode.startState(htmlMode.indent(state.htmlState, "")); - state.mode = "javascript"; - } - else if (/^style$/i.test(state.htmlState.context.tagName)) { - state.token = css; - state.localState = cssMode.startState(htmlMode.indent(state.htmlState, "")); - state.mode = "css"; - } - } - return style; - } - function maybeBackup(stream, pat, style) { - var cur = stream.current(); - var close = cur.search(pat); - if (close > -1) stream.backUp(cur.length - close); - return style; - } - function javascript(stream, state) { - if (stream.match(/^<\/\s*script\s*>/i, false)) { - state.token = html; - state.curState = null; - state.mode = "html"; - return html(stream, state); - } - return maybeBackup(stream, /<\/\s*script\s*>/, - jsMode.token(stream, state.localState)); - } - function css(stream, state) { - if (stream.match(/^<\/\s*style\s*>/i, false)) { - state.token = html; - state.localState = null; - state.mode = "html"; - return html(stream, state); - } - return maybeBackup(stream, /<\/\s*style\s*>/, - cssMode.token(stream, state.localState)); - } - - return { - startState: function() { - var state = htmlMode.startState(); - return {token: html, localState: null, mode: "html", htmlState: state}; - }, - - copyState: function(state) { - if (state.localState) - var local = CodeMirror.copyState(state.token == css ? cssMode : jsMode, state.localState); - return {token: state.token, localState: local, mode: state.mode, - htmlState: CodeMirror.copyState(htmlMode, state.htmlState)}; - }, - - token: function(stream, state) { - return state.token(stream, state); - }, - - indent: function(state, textAfter) { - if (state.token == html || /^\s*<\//.test(textAfter)) - return htmlMode.indent(state.htmlState, textAfter); - else if (state.token == javascript) - return jsMode.indent(state.localState, textAfter); - else - return cssMode.indent(state.localState, textAfter); - }, - - compareStates: function(a, b) { - return htmlMode.compareStates(a.htmlState, b.htmlState); - }, - - electricChars: "/{}:" - } -}); - -CodeMirror.defineMIME("text/html", "htmlmixed"); +}))); diff --git a/chestnut-ui/src/api/system/groovy.js b/chestnut-ui/src/api/system/groovy.js index b25d1961..3de9b46d 100644 --- a/chestnut-ui/src/api/system/groovy.js +++ b/chestnut-ui/src/api/system/groovy.js @@ -1,9 +1,39 @@ import request from '@/utils/request' -export function executeGroovySrcity(data) { +export function executeGroovyScript(data) { return request({ url: '/groovy/exec', method: 'post', data: data }) +} + +export function getGroovyScript(scriptId) { + return request({ + url: '/groovy/' + scriptId, + method: 'get' + }) +} + +export function getGroovyScriptList() { + return request({ + url: '/groovy/list', + method: 'get' + }) +} + +export function saveGroovyScript(data) { + return request({ + url: '/groovy/save', + method: 'post', + data: data + }) +} + +export function deleteGroovyScript(scriptIds) { + return request({ + url: '/groovy/delete', + method: 'delete', + data: scriptIds + }) } \ No newline at end of file diff --git a/chestnut-ui/src/assets/styles/chestnut.scss b/chestnut-ui/src/assets/styles/chestnut.scss index 90e724f3..d5dd0cdc 100644 --- a/chestnut-ui/src/assets/styles/chestnut.scss +++ b/chestnut-ui/src/assets/styles/chestnut.scss @@ -1,7 +1,7 @@ /** - * 通用css样式布局处理 - * Copyright (c) 2023 兮玥(190785909@qq.com) - */ + * 通用css样式布局处理 + * Copyright © 2022-2025 兮玥(190785909@qq.com) + */ /** 基础通用 **/ .pt5 { diff --git a/chestnut-ui/src/components/CodeMirror/index.vue b/chestnut-ui/src/components/CodeMirror/index.vue new file mode 100644 index 00000000..98ff103d --- /dev/null +++ b/chestnut-ui/src/components/CodeMirror/index.vue @@ -0,0 +1,210 @@ + + + diff --git a/chestnut-ui/src/directive/dialog/drag.js b/chestnut-ui/src/directive/dialog/drag.js index d373bf60..b729edfa 100644 --- a/chestnut-ui/src/directive/dialog/drag.js +++ b/chestnut-ui/src/directive/dialog/drag.js @@ -1,7 +1,7 @@ /** -* v-dialogDrag 弹窗拖拽 - * Copyright (c) 2023 兮玥(190785909@qq.com) -*/ + * v-dialogDrag 弹窗拖拽 + * Copyright © 2022-2025 兮玥(190785909@qq.com) + */ export default { bind(el, binding, vnode, oldVnode) { diff --git a/chestnut-ui/src/directive/dialog/dragHeight.js b/chestnut-ui/src/directive/dialog/dragHeight.js index 880352b2..7b17d02d 100644 --- a/chestnut-ui/src/directive/dialog/dragHeight.js +++ b/chestnut-ui/src/directive/dialog/dragHeight.js @@ -1,7 +1,7 @@ /** -* v-dialogDragWidth 可拖动弹窗高度(右下角) - * Copyright (c) 2023 兮玥(190785909@qq.com) -*/ + * v-dialogDragWidth 可拖动弹窗高度(右下角) + * Copyright © 2022-2025 兮玥(190785909@qq.com) + */ export default { bind(el) { diff --git a/chestnut-ui/src/directive/dialog/dragWidth.js b/chestnut-ui/src/directive/dialog/dragWidth.js index ac369144..6c777984 100644 --- a/chestnut-ui/src/directive/dialog/dragWidth.js +++ b/chestnut-ui/src/directive/dialog/dragWidth.js @@ -1,7 +1,7 @@ /** -* v-dialogDragWidth 可拖动弹窗宽度(右侧边) - * Copyright (c) 2023 兮玥(190785909@qq.com) -*/ + * v-dialogDragWidth 可拖动弹窗宽度(右侧边) + * Copyright © 2022-2025 兮玥(190785909@qq.com) + */ export default { bind(el) { diff --git a/chestnut-ui/src/directive/module/clipboard.js b/chestnut-ui/src/directive/module/clipboard.js index edbf3b67..b352f2f8 100644 --- a/chestnut-ui/src/directive/module/clipboard.js +++ b/chestnut-ui/src/directive/module/clipboard.js @@ -1,7 +1,7 @@ /** -* v-clipboard 文字复制剪贴 - * Copyright (c) 2023 兮玥(190785909@qq.com) -*/ + * v-clipboard 文字复制剪贴 + * Copyright © 2022-2025 兮玥(190785909@qq.com) + */ import Clipboard from 'clipboard' export default { diff --git a/chestnut-ui/src/directive/permission/hasPermi.js b/chestnut-ui/src/directive/permission/hasPermi.js index c1f46853..c58fe4e2 100644 --- a/chestnut-ui/src/directive/permission/hasPermi.js +++ b/chestnut-ui/src/directive/permission/hasPermi.js @@ -1,6 +1,6 @@ /** * v-hasPermi 操作权限处理 - * Copyright (c) 2023 兮玥(190785909@qq.com) + * Copyright © 2022-2025 兮玥(190785909@qq.com) * * 1、非el-button标签的按钮权限需要给对应控件添加class="btn-permi" * 2、表格操作列的多个按钮需要给按钮添加一个包裹住用来占位,否则会影响按钮位置 diff --git a/chestnut-ui/src/directive/permission/hasRole.js b/chestnut-ui/src/directive/permission/hasRole.js index 4af92bbd..744d62e9 100644 --- a/chestnut-ui/src/directive/permission/hasRole.js +++ b/chestnut-ui/src/directive/permission/hasRole.js @@ -1,6 +1,6 @@ /** * v-hasRole 角色权限处理 - * Copyright (c) 2023 兮玥(190785909@qq.com) + * Copyright © 2022-2025 兮玥(190785909@qq.com) */ import store from '@/store' diff --git a/chestnut-ui/src/i18n/lang/en.js b/chestnut-ui/src/i18n/lang/en.js index 0e5303df..5bf89b17 100644 --- a/chestnut-ui/src/i18n/lang/en.js +++ b/chestnut-ui/src/i18n/lang/en.js @@ -78,7 +78,6 @@ export default { ServerConnectFailed: 'Server connection failed.', ServerConnectTimeout: 'Server connection timeout.', ServerApiError: 'Server api error: {0}', - Downloading: 'Downloading...', Loading: 'Loading...', DownloadFailed: 'Download failed, please contact the administrator.', InvalidFileSuffix: 'Unsupport file format, only "{0}" is supported.', @@ -88,6 +87,14 @@ export default { Downloading: "Downloading...", Downloaded: "Download completed.", DownloadTimeout: "Download timeout.", + Unit: { + Year: "yr", + Month: "mo", + Day: "d", + Hour: "h", + Minute: "min", + Second: "s" + }, RuleTips: { NotEmpty: "Cannot be empty.", Email: "Invalid email.", diff --git a/chestnut-ui/src/i18n/lang/zh-CN.js b/chestnut-ui/src/i18n/lang/zh-CN.js index ce18040a..2ee3f603 100644 --- a/chestnut-ui/src/i18n/lang/zh-CN.js +++ b/chestnut-ui/src/i18n/lang/zh-CN.js @@ -78,7 +78,6 @@ export default { ServerConnectFailed: '后端接口连接异常', ServerConnectTimeout: '系统接口请求超时', ServerApiError: '系统接口{0}异常', - Downloading: '正在下载数据,请稍候', Loading: '正在加载,请稍后', DownloadFailed: '下载文件出现错误,请联系管理员!', InvalidFileSuffix: '文件格式错误,仅支持:{0}', @@ -88,6 +87,14 @@ export default { Downloading: "正在下载...", Downloaded: "下载完成", DownloadTimeout: "下载超时", + Unit: { + Year: "年", + Month: "月", + Day: "天", + Hour: "时", + Minute: "分", + Second: "秒" + }, RuleTips: { NotEmpty: "不能为空", Email: "Email格式错误", @@ -1404,7 +1411,13 @@ export default { Cut: "裁剪", UploadLimit: "上传文件数量不能超过:{0}", UploadFileSizeLimit: "上传文件大小不能超过:{0}", - RemoteLinkErr: "资源外链不能为空且必须是http://或https://开头的网络地址" + RemoteLinkErr: "资源外链不能为空且必须是http://或https://开头的网络地址", + UploadSuccess: "上传成功", + UploadFail: "上传失败", + Uploading: "上传中...", + Md5ing: "计算MD5中...", + Paused: "暂停中...", + Waiting: "等待中..." }, PublishPipe: { Name: "名称", diff --git a/chestnut-ui/src/i18n/lang/zh-TW.js b/chestnut-ui/src/i18n/lang/zh-TW.js index 3c3f2f53..5e736ba8 100644 --- a/chestnut-ui/src/i18n/lang/zh-TW.js +++ b/chestnut-ui/src/i18n/lang/zh-TW.js @@ -78,7 +78,6 @@ export default { ServerConnectFailed: '後端介面連接異常', ServerConnectTimeout: '系統介面請求超時', ServerApiError: '系統介面{0}異常', - Downloading: '正在下載數據,請稍候', Loading: '正在載入,請稍後', DownloadFailed: '下載檔案出現錯誤,請聯繫管理員!', InvalidFileSuffix: '檔案格式錯誤,僅支援:{0}', @@ -88,6 +87,14 @@ export default { Downloading: "正在下載...", Downloaded: "下載完成", DownloadTimeout: "下載超時", + Unit: { + Year: "年", + Month: "月", + Day: "天", + Hour: "時", + Minute: "分", + Second: "秒" + }, RuleTips: { NotEmpty: "不能為空", Email: "Email格式錯誤", diff --git a/chestnut-ui/src/utils/chestnut.js b/chestnut-ui/src/utils/chestnut.js index 53e04985..31f16865 100644 --- a/chestnut-ui/src/utils/chestnut.js +++ b/chestnut-ui/src/utils/chestnut.js @@ -3,7 +3,7 @@ /** * 通用js方法封装处理 * - * Copyright (c) 2023 chestnut + * Copyright © 2022-2025 兮玥(190785909@qq.com) */ import i18n from '@/i18n' diff --git a/chestnut-ui/src/views/cms/components/ImageGroup/index.vue b/chestnut-ui/src/views/cms/components/ImageGroup/index.vue index e054053f..250c5350 100644 --- a/chestnut-ui/src/views/cms/components/ImageGroup/index.vue +++ b/chestnut-ui/src/views/cms/components/ImageGroup/index.vue @@ -34,6 +34,7 @@ :open.sync="openResourceDialog" rtype="image" :upload-limit="1" + :single="true" @ok="handleResourceDialogOk"> diff --git a/chestnut-ui/src/views/cms/components/LogoView/index.vue b/chestnut-ui/src/views/cms/components/LogoView/index.vue index f1438855..f0969c02 100644 --- a/chestnut-ui/src/views/cms/components/LogoView/index.vue +++ b/chestnut-ui/src/views/cms/components/LogoView/index.vue @@ -30,6 +30,7 @@ :open.sync="openResourceDialog" rtype="image" :upload-limit="1" + :single="true" @ok="handleResourceDialogOk"> diff --git a/chestnut-ui/src/views/cms/components/QuillEditor/index.vue b/chestnut-ui/src/views/cms/components/QuillEditor/index.vue index 2f3bfce4..081ee6c3 100644 --- a/chestnut-ui/src/views/cms/components/QuillEditor/index.vue +++ b/chestnut-ui/src/views/cms/components/QuillEditor/index.vue @@ -8,6 +8,7 @@ :open.sync="openResourceDialog" rtype="image" :upload-limit="uploadLimit" + :single="uploadLimit==1" @ok="handleResourceDialogOk"> @@ -81,7 +82,7 @@ export default { name: 'cms-quill-editor', components: { - 'cms-resource-dialog': CMSResourceDialog + 'cms-resource-dialog': CMSResourceDialog, }, data() { return { @@ -236,4 +237,4 @@ white-space: pre-wrap !important; line-height: normal !important; } - + \ No newline at end of file diff --git a/chestnut-ui/src/views/cms/components/ResourceUploder/index.vue b/chestnut-ui/src/views/cms/components/ResourceUploder/index.vue index 23d1f9bf..653fbf88 100644 --- a/chestnut-ui/src/views/cms/components/ResourceUploder/index.vue +++ b/chestnut-ui/src/views/cms/components/ResourceUploder/index.vue @@ -30,6 +30,7 @@ :open.sync="openResourceDialog" :rtype="type" :upload-limit="1" + :single="true" @ok="handleResourceDialogOk"> @@ -37,7 +38,6 @@ - - + \ No newline at end of file diff --git a/chestnut-ui/src/views/cms/contentcore/siteInfo.vue b/chestnut-ui/src/views/cms/contentcore/siteInfo.vue index 738a3ba0..f01a3334 100644 --- a/chestnut-ui/src/views/cms/contentcore/siteInfo.vue +++ b/chestnut-ui/src/views/cms/contentcore/siteInfo.vue @@ -109,7 +109,7 @@ - + @@ -269,7 +269,6 @@