diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 4a2f7e6..7deae33 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "1.5.1" + ".": "1.6.0" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index b1f16a5..4eaf9a1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,64 +1,121 @@ # Changelog -## [1.5.1](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.5.0...v1.5.1) (2023-10-09) +## [1.6.0](https://github.com/terwer/siyuan-plugin-picgo/compare/siyuan-plugin-picgo-v1.5.1...siyuan-plugin-picgo-v1.6.0) (2024-03-27) +### Features +* adapt universal picgo config path ([07cc413](https://github.com/terwer/siyuan-plugin-picgo/commit/07cc413dd8975c40b3b924ba6732107ce6a12c9d)) +* add axios for request ([678ad8a](https://github.com/terwer/siyuan-plugin-picgo/commit/678ad8aeb5ee03edfbde5bef4eb51d410f88a38a)) +* add clipboard image support ([5c131a0](https://github.com/terwer/siyuan-plugin-picgo/commit/5c131a0b723243be107f4a6fd45b3f2884ed3667)) +* add deps ([d0be32a](https://github.com/terwer/siyuan-plugin-picgo/commit/d0be32aa1fa84cdcaeb7929c9bbf9ba14e542b3a)) +* add element-plus support ([6ab4d7c](https://github.com/terwer/siyuan-plugin-picgo/commit/6ab4d7cd802f387138c392d2dd0ec0bc82d8e393)) +* add events support ([7d7678e](https://github.com/terwer/siyuan-plugin-picgo/commit/7d7678e082f6223f29f01270a54ff992748ae0c1)) +* add icons ([d090d80](https://github.com/terwer/siyuan-plugin-picgo/commit/d090d80db9ff49026ea274895959d9ddc39b99ff)) +* add image download support ([3b28338](https://github.com/terwer/siyuan-plugin-picgo/commit/3b283387314a4d697673c42c35c6cac89e4e2813)) +* add lifecycle ([6789d48](https://github.com/terwer/siyuan-plugin-picgo/commit/6789d48d4762efdc2cefd660883f2952891f2f92)) +* add localforge support ([066cd00](https://github.com/terwer/siyuan-plugin-picgo/commit/066cd00eabaa002197541240ca0645953abba15d)) +* add new logo ([6d8d4fa](https://github.com/terwer/siyuan-plugin-picgo/commit/6d8d4fa5b95152fca5ee282de3f2880598df2e32)) +* add partial i18n support ([def516b](https://github.com/terwer/siyuan-plugin-picgo/commit/def516ba1961e992d7d3ce93af71e3cc67a3622b)) +* add path alias, use eruda as debug console ([cb29b16](https://github.com/terwer/siyuan-plugin-picgo/commit/cb29b166b68f002798da694d3bb086cb62eb1c7e)) +* add picgo core 1.5.6 as electron start version ([02660ad](https://github.com/terwer/siyuan-plugin-picgo/commit/02660ad416d3100e413abfd414124616da315afc)) +* add picgo core 1.5.6 as start version ([d1614bf](https://github.com/terwer/siyuan-plugin-picgo/commit/d1614bf23056b3a3f419396bc8aa35dc68361f54)) +* add picgo request ([78deb04](https://github.com/terwer/siyuan-plugin-picgo/commit/78deb045970b90f06111c0e127c06fe9ba9a623a)) +* add picgo siyuan lib ([c21177b](https://github.com/terwer/siyuan-plugin-picgo/commit/c21177b37b8e2897746b2777b34d94bd669fa0c8)) +* add plugin db support ([5c0c623](https://github.com/terwer/siyuan-plugin-picgo/commit/5c0c623072b2813acbf9e45380a86812acddcac1)) +* add post api ([3cd4047](https://github.com/terwer/siyuan-plugin-picgo/commit/3cd40472145cc53d9636ce4ad2fd6cc2ecc2eed1)) +* add router and pages ([c856eaf](https://github.com/terwer/siyuan-plugin-picgo/commit/c856eaf72ecc392592980a71ddc885aec138c269)) +* add siyuan api ([e2134ad](https://github.com/terwer/siyuan-plugin-picgo/commit/e2134ad10df824572477a8dcce17a134df4f2445)) +* add smms plugin ([679625b](https://github.com/terwer/siyuan-plugin-picgo/commit/679625b63f2c3feb73edb69f5ca5b0fed11a0d32)) +* add transformer ([a570bca](https://github.com/terwer/siyuan-plugin-picgo/commit/a570bca0928e8cdbca78852c47c2fd7f51555c93)) +* add universal picgo core ([5b074ea](https://github.com/terwer/siyuan-plugin-picgo/commit/5b074ea269f1b1713f38de1996fd2d45dfbf128b)) +* add universal picgo store ([9e4a6bc](https://github.com/terwer/siyuan-plugin-picgo/commit/9e4a6bc403bedb77641a0894de14979b05c6ea31)) +* add vite-plugin-node-polyfills ([ded32c5](https://github.com/terwer/siyuan-plugin-picgo/commit/ded32c5b3dc6d7c71e313ae675e3d87321f9f833)) +* allow image copy for different types ([9b8ca99](https://github.com/terwer/siyuan-plugin-picgo/commit/9b8ca99b9b8c92664d313af829df401ab1983c54)) +* avoid refresh page after upload ([3e241e0](https://github.com/terwer/siyuan-plugin-picgo/commit/3e241e02689683deb29b755312b5a42aa13e30ab)) +* basic picgo flow ([f09fb41](https://github.com/terwer/siyuan-plugin-picgo/commit/f09fb4173d6060595ee3b0124cf7af58b3588428)) +* browser upload list ([8482c3a](https://github.com/terwer/siyuan-plugin-picgo/commit/8482c3a50d05c7cef768a5904e457415ad5eb525)) +* bundled picgo setting ([49a0ed4](https://github.com/terwer/siyuan-plugin-picgo/commit/49a0ed448d4993262d46784da2c679a75ed20013)) +* change siyuan api default config path ([610be2c](https://github.com/terwer/siyuan-plugin-picgo/commit/610be2c8e70c25220b76ed39d451fcf2b837a498)) +* config update ([af4a2f1](https://github.com/terwer/siyuan-plugin-picgo/commit/af4a2f1116fc88a5d49c2fd9f080edef2b5290a6)) +* db support electron and browser ([7d38391](https://github.com/terwer/siyuan-plugin-picgo/commit/7d3839187d88224c79a2f6d0ba7efd2de5dfdfef)) +* electron write file ([a0717f3](https://github.com/terwer/siyuan-plugin-picgo/commit/a0717f3415f7889c465f04298f9e4a54614f0df3)) +* external picgo setting ([ca52410](https://github.com/terwer/siyuan-plugin-picgo/commit/ca5241013256825b972b55f201f6f6d4138ebe1e)) +* finish picgo store ataptor ([c44c32a](https://github.com/terwer/siyuan-plugin-picgo/commit/c44c32a43697eb0c34a1179eefdf6af8aa6220dd)) +* gitlab no need proxy ([db08307](https://github.com/terwer/siyuan-plugin-picgo/commit/db083079a04e89d9edce45ce7aa8177af49fe568)) +* init picgo ([7f9db6c](https://github.com/terwer/siyuan-plugin-picgo/commit/7f9db6c4ae3b22307e374ed781da3238c9b40210)) +* init siyuan picgo ([95ebc61](https://github.com/terwer/siyuan-plugin-picgo/commit/95ebc617e0df9372ae4460481f90609b466d15f6)) +* lifecycle should throw error ([ed67d2d](https://github.com/terwer/siyuan-plugin-picgo/commit/ed67d2ddfbf1c89d84f4777905ea065a37a76cf0)) +* loding style ([b3a9b5e](https://github.com/terwer/siyuan-plugin-picgo/commit/b3a9b5e8a2fdaf8db3f607030b480955a1775b29)) +* new method for extract file name ([218f32c](https://github.com/terwer/siyuan-plugin-picgo/commit/218f32c6c2274af416bf24bc6a79f579dd3d12d5)) +* pic bed config ([aeb9c1b](https://github.com/terwer/siyuan-plugin-picgo/commit/aeb9c1b04f43084a0982f1dbb6e537aac2fb8313)) +* picbed config ([b0af419](https://github.com/terwer/siyuan-plugin-picgo/commit/b0af4196c7690bf61c8809bf3329414cf211b238)) +* reactive config setting ([025d5f6](https://github.com/terwer/siyuan-plugin-picgo/commit/025d5f682da1ac4c49008c273a2b14918e6838d0)) +* refactoring project structure ([d07f16f](https://github.com/terwer/siyuan-plugin-picgo/commit/d07f16fd086e6c2045034a0f198dc73c7500294f)) +* remove default encode behavior ([3355f03](https://github.com/terwer/siyuan-plugin-picgo/commit/3355f0307181a291e6ede46add10f67671a6e0fd)) +* remove token for public projects ([54712f8](https://github.com/terwer/siyuan-plugin-picgo/commit/54712f8439a9c9dffaeba9af0b8b8f9073331203)) +* rename cfg folder to universal-picgo ([7a0ee05](https://github.com/terwer/siyuan-plugin-picgo/commit/7a0ee05a444efebc569e11d26c8f9acbc7093c98)) +* restructure db ([adfa24e](https://github.com/terwer/siyuan-plugin-picgo/commit/adfa24e9064b5a6dce10570fb4e9d7bddd976464)) +* save clipboard image ([7b986ab](https://github.com/terwer/siyuan-plugin-picgo/commit/7b986abc68f52e0d2be9a68a73b5f51603da2e7f)) +* support aliyun ([5e09220](https://github.com/terwer/siyuan-plugin-picgo/commit/5e09220765befbb0f85940215deedbd038a52523)) +* support aliyun via cors proxy ([32ace45](https://github.com/terwer/siyuan-plugin-picgo/commit/32ace453c5c36882aca17ea2eb7c2efe5a9e13f7)) +* support browser i18n ([17da086](https://github.com/terwer/siyuan-plugin-picgo/commit/17da0861d9b41ef4db42f43f706726a08004982e)) +* support drag upload ([86fc400](https://github.com/terwer/siyuan-plugin-picgo/commit/86fc40038f866bbf54b972713652f5ec4f1906c5)) +* support external picgo ([6aed459](https://github.com/terwer/siyuan-plugin-picgo/commit/6aed459d34cff3aa92deb64c284f6da4baebd871)) +* support github ([e6dc381](https://github.com/terwer/siyuan-plugin-picgo/commit/e6dc38136f3740252c1cf9e417c0288ffc11a690)) +* support gitlab ([b7a1d48](https://github.com/terwer/siyuan-plugin-picgo/commit/b7a1d48a620f71c321b5d96e9f8bd8c26fe2754f)) +* support gitlab upload ([7b24e50](https://github.com/terwer/siyuan-plugin-picgo/commit/7b24e507b1d2a2d07ec7af471e699fb4c01e42bb)) +* support imgur ([80df23e](https://github.com/terwer/siyuan-plugin-picgo/commit/80df23e8927028afd120197053503206334c1ca5)) +* support qiniu ([3cb223a](https://github.com/terwer/siyuan-plugin-picgo/commit/3cb223a49b067b255cfd2b03bd86dc984bede262)) +* support qiniu without proxy ([ada39eb](https://github.com/terwer/siyuan-plugin-picgo/commit/ada39eb89b9111d1d127411c5537569950226ec9)) +* support sm.ms ([7a7cb59](https://github.com/terwer/siyuan-plugin-picgo/commit/7a7cb5915abfafc350a65e2add38a7186655094e)) +* support some setting ([282192e](https://github.com/terwer/siyuan-plugin-picgo/commit/282192e295a4ccb63d0e7c54953eafd659cfb902)) +* support tencent cos ([b4fc844](https://github.com/terwer/siyuan-plugin-picgo/commit/b4fc844d15c62f34dab557044b78d0c66dff041b)) +* support upyun ([3ea89d8](https://github.com/terwer/siyuan-plugin-picgo/commit/3ea89d8843c109ce363cea466d583100ba53f98d)) +* update config ([1043cb2](https://github.com/terwer/siyuan-plugin-picgo/commit/1043cb25483d6bb40c6ba932ed63a9d88f079a87)) +* update pic bed config ([7e4dc05](https://github.com/terwer/siyuan-plugin-picgo/commit/7e4dc05b2d132782dd7bb1b7492075666a4a775a)) +* update picgo config ([a4aaae1](https://github.com/terwer/siyuan-plugin-picgo/commit/a4aaae1f2aaae3c09258cba8d31e2434fcedf6c8)) +* update siyuan setting ([0b930c8](https://github.com/terwer/siyuan-plugin-picgo/commit/0b930c80539892259c1334a0404433782a6445e7)) +* upload list ([ee955b0](https://github.com/terwer/siyuan-plugin-picgo/commit/ee955b0c5c37feb914cb4c0772a406a3671df17d)) +* upyun todo ([ea1798d](https://github.com/terwer/siyuan-plugin-picgo/commit/ea1798d2d9752cd8025a782b51476d0f29332c7e)) +* use ts-localstorage for browser ([952cff9](https://github.com/terwer/siyuan-plugin-picgo/commit/952cff98996a29999842113db9fd3cf0e2bb8a51)) ### Bug Fixes +* change build scripts ([9545e57](https://github.com/terwer/siyuan-plugin-picgo/commit/9545e577a089a5b9c6b50131c10cb96952ad7fe3)) +* change dependabot ([b8c5085](https://github.com/terwer/siyuan-plugin-picgo/commit/b8c5085789bdfa9f626ca1bde7c5289f69ced8f4)) +* change dev scripts ([30cd4c2](https://github.com/terwer/siyuan-plugin-picgo/commit/30cd4c2d35e0e172db04d9bbce172174e2a4a6cb)) +* change project structure ([0589cf8](https://github.com/terwer/siyuan-plugin-picgo/commit/0589cf8c47b898258b17e2cfbc2fe030afd1f638)) +* change release-please ([cccb5a7](https://github.com/terwer/siyuan-plugin-picgo/commit/cccb5a78e8dc39aa91f0214c6373f7f63e8bab32)) +* config init should before request ([616d73f](https://github.com/terwer/siyuan-plugin-picgo/commit/616d73fe66106d6e7adcb4292dc097a289aa60bf)) +* **deps:** bump actions/checkout from 3 to 4 ([50f23c8](https://github.com/terwer/siyuan-plugin-picgo/commit/50f23c87a9a991875a4fa9df9d793cf46861c752)) * **deps:** bump siyuan from 0.7.9 to 0.8.4 ([a4330d5](https://github.com/terwer/siyuan-plugin-picgo/commit/a4330d50195337c7c04e39c1d88b266faeeef7bd)) * **deps:** bump zhi-fetch-middleware from 0.2.21 to 0.6.5 ([0b7223c](https://github.com/terwer/siyuan-plugin-picgo/commit/0b7223c58d61f1953c347be9dbf3ac5563d66d03)) * fix typo ([c0c82a7](https://github.com/terwer/siyuan-plugin-picgo/commit/c0c82a79de2ef8d2b082fbc482f5b1b5f4051dcf)) +* fix vue conflict ([6cbce25](https://github.com/terwer/siyuan-plugin-picgo/commit/6cbce25c9e7d33ccf3aae2b03074f29edfea8486)) +* import error ([aa068bb](https://github.com/terwer/siyuan-plugin-picgo/commit/aa068bb68efc2df79a4ab6dcea6ca5104853be69)) +### Miscellaneous +* add file or blob support ([1b36f70](https://github.com/terwer/siyuan-plugin-picgo/commit/1b36f70413b00ce3829b8cafdeb1388943f59778)) +* add license ([3e51524](https://github.com/terwer/siyuan-plugin-picgo/commit/3e51524ca897dcbc1bc606e00b93ff05b35c07e6)) +* add more pages ([c825d68](https://github.com/terwer/siyuan-plugin-picgo/commit/c825d685e5c85615980efb72b8ec0bfaca02ecc3)) +* browser support request proxy ([f14765d](https://github.com/terwer/siyuan-plugin-picgo/commit/f14765d148eef000a39c5b9bd9c59397f619e4e1)) +* browser support url upload ([26413dc](https://github.com/terwer/siyuan-plugin-picgo/commit/26413dcfe924b4ad17f51e0ebb6259b7919bb5a8)) +* change release name ([04a907c](https://github.com/terwer/siyuan-plugin-picgo/commit/04a907c4439a8ec312a8ff6ef543a1c7c4b5c9cd)) +* **deps-dev:** bump @tsconfig/svelte from 5.0.3 to 5.0.4 ([46f3020](https://github.com/terwer/siyuan-plugin-picgo/commit/46f3020881807db77153bc5b5552043dcc0c7bf5)) +* **deps-dev:** bump siyuan from 0.9.5 to 0.9.6 ([6656148](https://github.com/terwer/siyuan-plugin-picgo/commit/66561482589ed66f26c98dbcc3de7ca7bc046578)) +* **deps-dev:** bump vite-plugin-static-copy from 1.0.1 to 1.0.2 ([e5d11a3](https://github.com/terwer/siyuan-plugin-picgo/commit/e5d11a34e7a5fd024a3593314a43d2b549c6e251)) +* **deps-dev:** bump vitest from 1.3.1 to 1.4.0 ([e187549](https://github.com/terwer/siyuan-plugin-picgo/commit/e187549c73128a2f02955bfbbb8897fe4bd58d18)) +* ignore script cache ([b88113e](https://github.com/terwer/siyuan-plugin-picgo/commit/b88113ee0d110b46e5b8bb93cd2475abf58ba746)) +* prepare for release ([c5d90da](https://github.com/terwer/siyuan-plugin-picgo/commit/c5d90da071dbbc97cc0d8372c40028f80671110b)) +* support base64 ([3539519](https://github.com/terwer/siyuan-plugin-picgo/commit/3539519e04661023dd335bd4282bb0819ca55215)) +* support remote picture url ([54a136c](https://github.com/terwer/siyuan-plugin-picgo/commit/54a136ca28105393700277ad07ecfc364b7c3693)) +* update deps ([5426b05](https://github.com/terwer/siyuan-plugin-picgo/commit/5426b05a48cf0e4a334b2bc8d908e7cc05f5a8b0)) +## [1.5.1](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.5.0...v1.5.1) (2023-10-09) ## [1.5.0](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.4.5...v1.5.0) (2023-10-09) -### Features -* [#164](https://github.com/terwer/siyuan-plugin-picgo/issues/164) 解决插件与最新版思源笔记的兼容问题 ([f530adb](https://github.com/terwer/siyuan-plugin-picgo/commit/f530adba90bc7c263ac029d28dd546ddc28961be)) -* 修复 picgo 插件菜单显示异常问题 ([8179a20](https://github.com/terwer/siyuan-plugin-picgo/commit/8179a20a519fcf7b1980a9f46afae361eac0024d)) -* 修复部分提示未展示问题 ([57718f8](https://github.com/terwer/siyuan-plugin-picgo/commit/57718f8e428cc7cf12a01ee2970614943cdb03a2)) -* 修复页面刷新错误 ([dbc9883](https://github.com/terwer/siyuan-plugin-picgo/commit/dbc9883dccb128b1a3d5b28f358889d22a5bf5f7)) ## [1.4.5](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.4.4...v1.4.5) (2023-08-14) -* 紧急修复 picgo 插件无法打开的问题 ([6f0f6c1](https://github.com/terwer/siyuan-plugin-picgo/commit/6f0f6c16c4fb95717a00deefdc8e10c79d67d743)) ## [1.4.4](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.4.3...v1.4.4) (2023-08-12) -* 紧急修复 picgo 插件初始化失败问题 ([3937259](https://github.com/terwer/siyuan-plugin-picgo/commit/3937259e78ef637118c78ec55df890ee1e39b0a9)) ## [1.4.3](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.4.2...v1.4.3) (2023-08-12) -* 优化部分日志级别 ([2d09312](https://github.com/terwer/siyuan-plugin-picgo/commit/2d093128a0f1e5d032ed9ce2f3d6c3e6cb43240c)) ## [1.4.2](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.4.1...v1.4.2) (2023-08-12) -* 修复pinia错误 ([0bb2569](https://github.com/terwer/siyuan-plugin-picgo/commit/0bb256971f4f73c94efaf8fd153526a9d176c0d6)) ## [1.4.1](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.4.0...v1.4.1) (2023-08-12) -* 修复单个上传错误的问题 ([7c4163d](https://github.com/terwer/siyuan-plugin-picgo/commit/7c4163deeb8c84a835414760bece1553885caa8f)) ## [1.4.0](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.3.1...v1.4.0) (2023-08-11) -* 优化配置导入导出交互 ([41d3901](https://github.com/terwer/siyuan-plugin-picgo/commit/41d39018acb04606433183bf035aed2713b7987b)) -* 支持内置picgo和外部picgo切换 ([ae833cc](https://github.com/terwer/siyuan-plugin-picgo/commit/ae833cc69fb69830b59e846c2244c870b10b4d1d)) -* 支持配置思源地址 ([a3e49ea](https://github.com/terwer/siyuan-plugin-picgo/commit/a3e49ea3a83803841e76b5dfb614236923363764)) -* 上传失败也要保存元数据 ([2265a25](https://github.com/terwer/siyuan-plugin-picgo/commit/2265a2551b4e4d5a4bf48c3450689f675b2cb392)) ## [1.3.1](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.3.0...v1.3.1) (2023-08-11) -* 图片转换支持自定义本地图片前缀 ([cccb511](https://github.com/terwer/siyuan-plugin-picgo/commit/cccb511bcb28ec5fc34cd41839ae5d88b6c2f067)) ## [1.3.0](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.2.0...v1.3.0) (2023-08-11) -* 单个图片上传失败不能影响整体 ([63950dd](https://github.com/terwer/siyuan-plugin-picgo/commit/63950dddd1ccf84ff3dd9ba3dbc978b36049663f)) -* 导出图片解析模块给其他插件使用 ([ecc082a](https://github.com/terwer/siyuan-plugin-picgo/commit/ecc082af8e2575b33d8b784382eb1ab562bf4065)) -* 解析图片链接 ([fbdbaad](https://github.com/terwer/siyuan-plugin-picgo/commit/fbdbaad30fe295de1ce51081f65ebfda6399acb5)) ## [1.2.0](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.1.1...v1.2.0) (2023-08-11) -* 支持作为 npm 类库给其他插件使用 ([8326245](https://github.com/terwer/siyuan-plugin-picgo/commit/83262450a8a68fb4a57367feff56fc35d214218e)) -* 优化项目依赖 ([48b45cf](https://github.com/terwer/siyuan-plugin-picgo/commit/48b45cf5b6142e856718fecc1a14d05dd7fd30b2)) -* 修复配置错误校验结果未阻止的问题 ([d287be6](https://github.com/terwer/siyuan-plugin-picgo/commit/d287be6f4e8a2a8c045dea24c321d5ac27d3a6fb)) -* 按钮名称直接显示,目前的操作不够直观,后续考虑抽象成菜单或许更好 ([9243ea9](https://github.com/terwer/siyuan-plugin-picgo/commit/9243ea97612e8b93b4b3b784eef573f0822a7c72)) ## [1.1.1](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.1.0...v1.1.1) (2023-06-15) -* 移除错误弹出 ([11d5aa5](https://github.com/terwer/siyuan-plugin-picgo/commit/11d5aa5da54eee01d01e0a129fb9784a56ce3342)) -* 移除错误弹窗,升级部分依赖 ([2b6b055](https://github.com/terwer/siyuan-plugin-picgo/commit/2b6b05532ebdec1bbe134463dcc377865cac35a2)) ## [1.1.0](https://github.com/terwer/siyuan-plugin-picgo/compare/v1.0.0...v1.1.0) (2023-06-15) -* picgo 插件第一版-sypicgo.js 更新到 1.2.5 ([dd9e364](https://github.com/terwer/siyuan-plugin-picgo/commit/dd9e3646a40b4e83cfa3a48b7b32d9e18fba4776)) -### Miscellaneous -* add license ([3e51524](https://github.com/terwer/siyuan-plugin-picgo/commit/3e51524ca897dcbc1bc606e00b93ff05b35c07e6)) -## 1.0.0 (2023-06-14) -* picgo 插件第一版 ([ed0d114](https://github.com/terwer/siyuan-plugin-picgo/commit/ed0d114e82d83a835919b9516b5a47d64e1574a0)) -* picgo 插件第一版-ui 调整 ([77d3bc5](https://github.com/terwer/siyuan-plugin-picgo/commit/77d3bc5e7546c72490776b3ae5dfd5f7fb9c06d0)) -* picgo 插件第一版-优化页面跳转与路由 ([815ebb0](https://github.com/terwer/siyuan-plugin-picgo/commit/815ebb0ab3cb0b83bea2b257dffc9874cf1c8a62)) -* picgo 插件第一版-信息 font-awesome 图标 ([4d9c303](https://github.com/terwer/siyuan-plugin-picgo/commit/4d9c303c38ee54e472568d28deea5bef09e5c8b5)) -* picgo 插件第一版-修复重新上传报错的问题 ([4c4bc64](https://github.com/terwer/siyuan-plugin-picgo/commit/4c4bc642ce7fcf20ebfb1be64a6edde4bc73b560)) -* picgo 插件第一版-初始化 picgo 实例 ([b25f113](https://github.com/terwer/siyuan-plugin-picgo/commit/b25f1130d02f46ace0db521bdbc65a3b5dabaca1)) -* picgo 插件第一版-初始化基本页面、日志等 ([0155cd4](https://github.com/terwer/siyuan-plugin-picgo/commit/0155cd421d25d6f05d63d0db385e5c632995c5e0)) -* picgo 插件第一版-前期仅支持 pc 客户端 ([c95d21d](https://github.com/terwer/siyuan-plugin-picgo/commit/c95d21d8fdb1340d60f8d830a3e91f0dbd5ea969)) -* picgo 插件第一版-图床配置 ([25b5deb](https://github.com/terwer/siyuan-plugin-picgo/commit/25b5debbef05119cea21e4dad419edd49ee4637e)) -* picgo 插件第一版-完成桥接版剪贴板上传 ([5b595ce](https://github.com/terwer/siyuan-plugin-picgo/commit/5b595ceddf2f2c4d96fe498bc1686e0e7c7e4683)) -* picgo 插件第一版-定义 picgo 图床基本流程 ([1066132](https://github.com/terwer/siyuan-plugin-picgo/commit/1066132464194d129024029ff6d75baa126d8909)) -* picgo 插件第一版-支持配置导入导出 ([a712109](https://github.com/terwer/siyuan-plugin-picgo/commit/a712109d65f5e421d1a87caf3f1dee469c807d74)) -* picgo 插件第一版-新增调试模式 ([365b003](https://github.com/terwer/siyuan-plugin-picgo/commit/365b0039db50715d5c9009974395ee9752627fe0)) -* picgo 插件第一版-新增预览图 ([dab14a3](https://github.com/terwer/siyuan-plugin-picgo/commit/dab14a3a999d5e89e5458d2feb0c43b4387edeb0)) -* picgo 插件第一版-显示图片列表 ([85d2694](https://github.com/terwer/siyuan-plugin-picgo/commit/85d26946be9bfcacebd1225e5e3c13cf0e4a866e)) -* 初始化 picgo 插件 ([ee4727d](https://github.com/terwer/siyuan-plugin-picgo/commit/ee4727d4cd5e475224b1a828921884a4019df74b)) -* update deps ([5426b05](https://github.com/terwer/siyuan-plugin-picgo/commit/5426b05a48cf0e4a334b2bc8d908e7cc05f5a8b0)) \ No newline at end of file +## 1.0.0 (2023-06-14) \ No newline at end of file diff --git a/libs/Universal-PicGo-Core/package.json b/libs/Universal-PicGo-Core/package.json index 3589c5e..2aa43aa 100644 --- a/libs/Universal-PicGo-Core/package.json +++ b/libs/Universal-PicGo-Core/package.json @@ -1,6 +1,6 @@ { "name": "universal-picgo", - "version": "1.5.6", + "version": "1.6.0", "type": "module", "description": "picgo lib for node, browser and electron", "main": "./dist/index.js", @@ -44,4 +44,4 @@ "publishConfig": { "access": "public" } -} +} \ No newline at end of file diff --git a/libs/Universal-PicGo-Core/src/index.ts b/libs/Universal-PicGo-Core/src/index.ts index 2d9de13..e90bad3 100644 --- a/libs/Universal-PicGo-Core/src/index.ts +++ b/libs/Universal-PicGo-Core/src/index.ts @@ -17,12 +17,12 @@ import { IUploaderConfigListItem, IPluginConfig, } from "./types" -import { isFileOrBlob } from "./utils/common" +import { isFileOrBlob, calculateMD5 } from "./utils/common" export { UniversalPicGo, ExternalPicgo, eventBus } export { ConfigDb, PluginLoaderDb, ExternalPicgoConfigDb } export { PicgoTypeEnum, IBusEvent } -export { isFileOrBlob } +export { isFileOrBlob, calculateMD5 } export { win, currentWin, parentWin, hasNodeEnv } export { type IPicGo, diff --git a/libs/Universal-PicGo-Core/src/plugins/uploader/upyun/index.ts b/libs/Universal-PicGo-Core/src/plugins/uploader/upyun/index.ts index a675086..e9c213e 100644 --- a/libs/Universal-PicGo-Core/src/plugins/uploader/upyun/index.ts +++ b/libs/Universal-PicGo-Core/src/plugins/uploader/upyun/index.ts @@ -10,16 +10,11 @@ import crypto from "crypto" import { ILocalesKey } from "../../../i18n/zh-CN" import { IPicGo, IPluginConfig, IUpyunConfig } from "../../../types" -import { base64ToBuffer } from "../../../utils/common" +import { base64ToBuffer, calculateMD5 } from "../../../utils/common" import { IBuildInEvent } from "../../../utils/enums" import { Buffer } from "../../../utils/nodePolyfill" import { AxiosRequestConfig } from "axios" -// 封装计算MD5哈希的方法 -function calculateMD5(input: string) { - return crypto.createHash("md5").update(input).digest("hex") -} - function hmacsha1(secret: string, value: string) { return crypto.createHmac("sha1", secret).update(value, "utf8").digest().toString("base64") } diff --git a/libs/Universal-PicGo-Core/src/utils/common.ts b/libs/Universal-PicGo-Core/src/utils/common.ts index a46f4b5..c313b4d 100644 --- a/libs/Universal-PicGo-Core/src/utils/common.ts +++ b/libs/Universal-PicGo-Core/src/utils/common.ts @@ -12,6 +12,7 @@ import { hasNodeEnv, win } from "universal-picgo-store" import imageSize from "./image-size" import { calculateHash } from "./hashUtil" import { Buffer } from "./nodePolyfill" +import crypto from "crypto" export const isUrl = (url: string): boolean => url.startsWith("http://") || url.startsWith("https://") @@ -442,3 +443,6 @@ export const getImageSize = (file: Buffer | typeof win.Buffer): IImgSize => { } } } + +// 封装计算MD5哈希的方法 +export const calculateMD5 = (input: string) => crypto.createHash("md5").update(input).digest("hex") diff --git a/libs/Universal-PicGo-Store/package.json b/libs/Universal-PicGo-Store/package.json index 5556652..7fd62f7 100644 --- a/libs/Universal-PicGo-Store/package.json +++ b/libs/Universal-PicGo-Store/package.json @@ -1,6 +1,6 @@ { "name": "universal-picgo-store", - "version": "1.5.6", + "version": "1.6.0", "type": "module", "description": "For PicGo projects to write & read data from browser, node or electron", "main": "./dist/index.js", @@ -39,4 +39,4 @@ "publishConfig": { "access": "public" } -} +} \ No newline at end of file diff --git a/libs/zhi-siyuan-picgo/package.json b/libs/zhi-siyuan-picgo/package.json index 35ef607..20b3be9 100644 --- a/libs/zhi-siyuan-picgo/package.json +++ b/libs/zhi-siyuan-picgo/package.json @@ -1,6 +1,6 @@ { "name": "zhi-siyuan-picgo", - "version": "0.0.1", + "version": "1.6.0", "type": "module", "description": "picgo lib for siyuan-note", "main": "./dist/index.js", @@ -41,4 +41,4 @@ "publishConfig": { "access": "public" } -} +} \ No newline at end of file diff --git a/libs/zhi-siyuan-picgo/src/index.ts b/libs/zhi-siyuan-picgo/src/index.ts index a7eb0ab..511ddca 100644 --- a/libs/zhi-siyuan-picgo/src/index.ts +++ b/libs/zhi-siyuan-picgo/src/index.ts @@ -7,26 +7,32 @@ * of this license document, but changing it is not allowed. */ +import { SiyuanPicGo } from "./lib/siyuanPicgo" import { SiyuanPicgoPostApi } from "./lib/siyuanPicgoPostApi" import { + calculateMD5, ConfigDb, ExternalPicgoConfigDb, + IConfig, IExternalPicgoConfig, IImgInfo, IPicGo, IPicgoDb, - IConfig, + IPluginConfig, PicgoTypeEnum, PluginLoaderDb, - IPluginConfig, } from "universal-picgo" import { SiyuanConfig as SiyuanPicgoConfig } from "zhi-siyuan-api" import { PicgoHelper } from "./lib/picgoHelper" import { retrieveImageFromClipboardAsBlob } from "./lib/utils/browserClipboard" -import { copyToClipboardInBrowser } from "./lib/utils/utils" +import { copyToClipboardInBrowser, generateUniqueName } from "./lib/utils/utils" +import { ImageItem } from "./lib/models/ImageItem" +import { ImageParser } from "./lib/parser/ImageParser" +import { ParsedImage } from "./lib/models/ParsedImage" -export { SiyuanPicgoConfig, SiyuanPicgoPostApi, PicgoHelper } -export { retrieveImageFromClipboardAsBlob, copyToClipboardInBrowser } +export { SiyuanPicGo, SiyuanPicgoConfig, SiyuanPicgoPostApi, PicgoHelper } +export { ImageItem, ImageParser, ParsedImage } +export { retrieveImageFromClipboardAsBlob, copyToClipboardInBrowser, calculateMD5, generateUniqueName } export { ConfigDb, PluginLoaderDb, ExternalPicgoConfigDb } export { PicgoTypeEnum } export { type IPicGo, type IImgInfo, type IPicgoDb, type IConfig, type IExternalPicgoConfig, type IPluginConfig } diff --git a/libs/zhi-siyuan-picgo/src/lib/siyuanPicgo.ts b/libs/zhi-siyuan-picgo/src/lib/siyuanPicgo.ts new file mode 100644 index 0000000..0da11e3 --- /dev/null +++ b/libs/zhi-siyuan-picgo/src/lib/siyuanPicgo.ts @@ -0,0 +1,50 @@ +/* + * GNU GENERAL PUBLIC LICENSE + * Version 3, 29 June 2007 + * + * Copyright (C) 2024 Terwer, Inc. + * Everyone is permitted to copy and distribute verbatim copies + * of this license document, but changing it is not allowed. + */ + +import { SiyuanPicgoPostApi } from "./siyuanPicgoPostApi" +import { SiyuanConfig, SiyuanKernelApi } from "zhi-siyuan-api" + +/** + * 思源笔记 PicGo 实例 + */ +class SiyuanPicGo { + public static async getInstance(siyuanConfig: SiyuanConfig, isDev?: boolean): Promise { + return new Promise((resolve, _reject) => { + const siyuanApi = new SiyuanKernelApi(siyuanConfig) + const picgo = new SiyuanPicgoPostApi(siyuanConfig, isDev) + + let needUpdate = false + const checkConfig = () => { + if (picgo.cfgUpdating) { + needUpdate = true + siyuanApi.pushMsg({ + msg: "检测到旧配置,正在迁移配置,请勿进行任何操作...", + timeout: 1000, + }) + console.warn("检测到旧配置,正在迁移配置,请勿进行任何操作...") + setTimeout(checkConfig, 1000) + } else { + if (needUpdate) { + siyuanApi.pushMsg({ + msg: "PicGO 图床历史配置迁移完成", + timeout: 7000, + }) + console.log("PicGO 图床历史配置迁移完成") + needUpdate = false + } + console.log("picgo instance is ready") + resolve(picgo) + } + } + checkConfig() + }) + } +} + +export { SiyuanPicGo } diff --git a/libs/zhi-siyuan-picgo/src/lib/siyuanPicgoPostApi.ts b/libs/zhi-siyuan-picgo/src/lib/siyuanPicgoPostApi.ts index 6657169..8a0a5a9 100644 --- a/libs/zhi-siyuan-picgo/src/lib/siyuanPicgoPostApi.ts +++ b/libs/zhi-siyuan-picgo/src/lib/siyuanPicgoPostApi.ts @@ -9,7 +9,7 @@ import { ILogger, simpleLogger } from "zhi-lib-base" import { SiyuanPicGoUploadApi } from "./siyuanPicGoUploadApi" -import { hasNodeEnv, IImgInfo, IPicGo, win } from "universal-picgo" +import { hasNodeEnv, IPicGo, isFileOrBlob, win } from "universal-picgo" import { ParsedImage } from "./models/ParsedImage" import { ImageItem } from "./models/ImageItem" import { SIYUAN_PICGO_FILE_MAP_KEY } from "./constants" @@ -18,7 +18,7 @@ import { SiyuanConfig, SiyuanKernelApi } from "zhi-siyuan-api" import { ImageParser } from "./parser/ImageParser" import { PicgoPostResult } from "./models/PicgoPostResult" import { DeviceDetection, DeviceTypeEnum, SiyuanDevice } from "zhi-device" -import { isFileOrBlob } from "universal-picgo" +import { IImgInfo } from "universal-picgo/src" /** * Picgo与文章交互的通用方法 @@ -26,7 +26,7 @@ import { isFileOrBlob } from "universal-picgo" class SiyuanPicgoPostApi { private readonly logger: ILogger private readonly imageParser: ImageParser - private readonly siyuanApi: SiyuanKernelApi + public readonly siyuanApi: SiyuanKernelApi private readonly siyuanConfig: SiyuanConfig private readonly isSiyuanOrSiyuanNewWin: boolean private readonly picgoApi: SiyuanPicGoUploadApi @@ -71,7 +71,7 @@ class SiyuanPicgoPostApi { * * @param input 路径数组,可为空,为空上传剪贴板 */ - public async upload(input?: any[]): Promise { + public async originalUpload(input?: any[]): Promise { return this.picgoApi.upload(input) } @@ -129,8 +129,10 @@ class SiyuanPicgoPostApi { return ret } + // =================================================================================================================== + /** - * 上传当前文章图片到图床(提供给外部调用) + * 上传当前文章图片到图床(单篇文档所有图片全部批量上传,提供给外部调用) * * @param pageId 文章ID * @param attrs 文章属性 @@ -223,7 +225,7 @@ class SiyuanPicgoPostApi { } /** - * 上传单张图片到图床 + * 上传单张图片到图床(当前图片单个上传,提供给外部调用) * * @param pageId 文章ID * @param attrs 文章属性 @@ -238,7 +240,7 @@ class SiyuanPicgoPostApi { ): Promise { const mapInfoStr = attrs[SIYUAN_PICGO_FILE_MAP_KEY] ?? "{}" const fileMap = JsonUtil.safeParse(mapInfoStr, {}) - this.logger.warn("fileMap=>", fileMap) + this.logger.debug("fileMap=>", fileMap) // 处理上传 const filePaths = [] @@ -247,7 +249,8 @@ class SiyuanPicgoPostApi { return } - let imageFullPath: string + // 兼容剪贴板 + let imageFullPath: string | Blob | File // blob 或者 file 直接上传 if (isFileOrBlob(imageItem.url)) { imageFullPath = imageItem.url @@ -270,11 +273,16 @@ class SiyuanPicgoPostApi { } } - this.logger.warn("isSiyuanOrSiyuanNewWin=>" + this.isSiyuanOrSiyuanNewWin + ", imageFullPath=>", imageFullPath) - filePaths.push(imageFullPath) + // noinspection SuspiciousTypeOfGuard + if (!imageFullPath || (typeof imageFullPath === "string" && imageFullPath.trim().length == 0)) { + this.logger.warn("upload from clipboard") + } else { + filePaths.push(imageFullPath) + } + this.logger.warn("start uploading =>", filePaths) // 批量上传 - const imageJson: any = await this.picgoApi.upload(filePaths) + const imageJson: any = await this.originalUpload(filePaths) this.logger.debug("图片上传完成,imageJson=>", imageJson) const imageJsonObj = JsonUtil.safeParse(imageJson, []) as any // 处理后续 diff --git a/libs/zhi-siyuan-picgo/src/lib/utils/md5Util.ts b/libs/zhi-siyuan-picgo/src/lib/utils/md5Util.ts index 9467b21..2be20c7 100644 --- a/libs/zhi-siyuan-picgo/src/lib/utils/md5Util.ts +++ b/libs/zhi-siyuan-picgo/src/lib/utils/md5Util.ts @@ -7,7 +7,7 @@ * of this license document, but changing it is not allowed. */ -import { md5 } from "js-md5" +import { calculateMD5 } from "universal-picgo" /** * 获取文件名的hash @@ -15,12 +15,5 @@ import { md5 } from "js-md5" * @param filename 文件名 */ export const getFileHash = (filename: string): string => { - // import { createHash } from "crypto" - // const hash = createHash("sha256") - // hash.update(filename) - // return hash.digest("hex") - - // Base64.toBase64(filename).substring(0, 8); - - return md5(filename) + return calculateMD5(filename) } diff --git a/libs/zhi-siyuan-picgo/src/lib/utils/utils.ts b/libs/zhi-siyuan-picgo/src/lib/utils/utils.ts index b76b830..1951316 100644 --- a/libs/zhi-siyuan-picgo/src/lib/utils/utils.ts +++ b/libs/zhi-siyuan-picgo/src/lib/utils/utils.ts @@ -85,3 +85,20 @@ export const trimValues = (obj: any) => { }) return newObj } + +export function generateUniqueName() { + const currentTime = Math.floor(Date.now() / 1000) // 获取当前时间戳(秒级) + + function generateRandomString(length: number) { + const characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789" + let randomString = "" + for (let i = 0; i < length; i++) { + randomString += characters.charAt(Math.floor(Math.random() * characters.length)) + } + return randomString + } + + const randomString = generateRandomString(6) // 生成长度为6的随机字符串 + const uniqueName = `${currentTime}_${randomString}` + return uniqueName + ".png" +} diff --git a/package.json b/package.json index 43a3e41..37c59de 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "siyuan-plugin-picgo", - "version": "1.5.1", + "version": "1.6.0", "description": "picgo plugin for siyuan-note", "scripts": { "serve": "turbo run serve", diff --git a/packages/picgo-plugin-app/package.json b/packages/picgo-plugin-app/package.json index d6d0c6d..7792c5b 100644 --- a/packages/picgo-plugin-app/package.json +++ b/packages/picgo-plugin-app/package.json @@ -1,7 +1,7 @@ { "name": "picgo-plugin-app", "private": true, - "version": "1.5.1", + "version": "1.6.0", "type": "module", "scripts": { "serve": "python -u scripts/serve.py && vite", @@ -39,4 +39,4 @@ "zhi-siyuan-api": "^2.19.1", "zhi-siyuan-picgo": "workspace:*" } -} +} \ No newline at end of file diff --git a/packages/picgo-plugin-app/src/components/home/controls/DragUpload.vue b/packages/picgo-plugin-app/src/components/home/controls/DragUpload.vue index e139c4e..f0a7039 100644 --- a/packages/picgo-plugin-app/src/components/home/controls/DragUpload.vue +++ b/packages/picgo-plugin-app/src/components/home/controls/DragUpload.vue @@ -10,13 +10,11 @@