mirror of
https://github.com/Jonnyan404/memos-bber.git
synced 2026-04-24 19:48:37 +09:00
2023.07.16
This commit is contained in:
@@ -6,6 +6,8 @@ Chrome 应用商店:<https://chrome.google.com/webstore/detail/memos-bber/cbhj
|
||||
|
||||
## 更新日志
|
||||
|
||||
2023.07.16 支持 Memos v0.14.0 `api/v1`,同时兼容之前的 api。
|
||||
|
||||
2023.04.29 右键菜单的一系列改进,感谢 @EZForever 的 PR [#17](https://github.com/lmm214/memos-bber/pull/17)
|
||||
|
||||
2023.04.09 匹配 v0.12.0 附件链接由 filename 改为 publicId 。
|
||||
|
||||
+54
-20
@@ -150,8 +150,15 @@ function uploadImage(data) {
|
||||
let now = dayjs().format('YYYYMMDDHHmmss')
|
||||
let new_name = old_name[0] + '_' + now + '.' + file_ext;
|
||||
formData.append('file', data, new_name)
|
||||
var upAjaxUrl = ''
|
||||
var regUrl = /.*\/api\/v1\/.*/;
|
||||
if (regUrl.test(info.apiUrl)){
|
||||
upAjaxUrl = info.apiUrl.replace(/api\/v1\/memo/,'api/v1/resource/blob')
|
||||
}else{
|
||||
upAjaxUrl = info.apiUrl.replace(/api\/memo/,'api/resource/blob')
|
||||
}
|
||||
$.ajax({
|
||||
url: info.apiUrl.replace(/api\/memo/,'api/resource/blob'),
|
||||
url: upAjaxUrl,
|
||||
data: formData,
|
||||
type: 'post',
|
||||
cache: false,
|
||||
@@ -159,9 +166,13 @@ function uploadImage(data) {
|
||||
contentType: false,
|
||||
dataType: 'json',
|
||||
success: function (result) {
|
||||
if (result.data.id) {
|
||||
var arrData = result || ''
|
||||
if(result.data){
|
||||
arrData = result.data
|
||||
}
|
||||
if (arrData.id) {
|
||||
//获取到图片
|
||||
relistNow.push(result.data.id)
|
||||
relistNow.push(arrData.id)
|
||||
chrome.storage.sync.set(
|
||||
{
|
||||
open_action: '',
|
||||
@@ -215,17 +226,20 @@ $('#saveKey').click(function () {
|
||||
|
||||
$('#opensite').click(function () {
|
||||
get_info(function (info) {
|
||||
chrome.tabs.create({url:info.apiUrl.replace(/api\/memo.*/,'')})
|
||||
chrome.tabs.create({url:info.apiUrl.replace(/api\/(v1\/)?memo.*/,'')})
|
||||
})
|
||||
})
|
||||
|
||||
$('#tags').click(function () {
|
||||
get_info(function (info) {
|
||||
if (info.apiUrl) {
|
||||
var tagUrl = info.apiUrl.replace(/api\/memo/,'api/tag')
|
||||
var tagUrl = info.apiUrl.replace(/api\/(v1\/)?memo/,'api/$1tag')
|
||||
var tagDom = ""
|
||||
$.get(tagUrl,function(data){
|
||||
var arrData = data.data
|
||||
var arrData = data || ''
|
||||
if(data.data){
|
||||
arrData = data.data
|
||||
}
|
||||
$.each(arrData, function(i,obj){
|
||||
tagDom += '<span class="item-container">#'+obj+'</span>'
|
||||
});
|
||||
@@ -282,7 +296,11 @@ $('#search').click(function () {
|
||||
if(pattern){
|
||||
$.get( info.apiUrl ,function(data){
|
||||
const options = {keys: ['content']};
|
||||
const fuse = new Fuse(data.data, options);
|
||||
var fuseData = data || ''
|
||||
if(data.data){
|
||||
fuseData = data.data
|
||||
}
|
||||
const fuse = new Fuse(fuseData, options);
|
||||
var searchData = fuse.search(pattern)
|
||||
for(var i=0;i < searchData.length;i++){
|
||||
searchDom += '<div class="random-item"><div class="random-time"><span id="random-link" data-id="'+searchData[i].item.id+'"><svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="32" height="32"><path d="M864 640a32 32 0 0 1 64 0v224.096A63.936 63.936 0 0 1 864.096 928H159.904A63.936 63.936 0 0 1 96 864.096V159.904C96 124.608 124.64 96 159.904 96H384a32 32 0 0 1 0 64H192.064A31.904 31.904 0 0 0 160 192.064v639.872A31.904 31.904 0 0 0 192.064 864h639.872A31.904 31.904 0 0 0 864 831.936V640zm-485.184 52.48a31.84 31.84 0 0 1-45.12-.128 31.808 31.808 0 0 1-.128-45.12L815.04 166.048l-176.128.736a31.392 31.392 0 0 1-31.584-31.744 32.32 32.32 0 0 1 31.84-32l255.232-1.056a31.36 31.36 0 0 1 31.584 31.584L924.928 388.8a32.32 32.32 0 0 1-32 31.84 31.392 31.392 0 0 1-31.712-31.584l.736-179.392L378.816 692.48z" fill="#666" data-spm-anchor-id="a313x.7781069.0.i12" class="selected"/></svg></span><span id="random-delete" data-id="'+searchData[i].item.id+'"><svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="32" height="32"><path d="M224 322.6h576c16.6 0 30-13.4 30-30s-13.4-30-30-30H224c-16.6 0-30 13.4-30 30 0 16.5 13.5 30 30 30zm66.1-144.2h443.8c16.6 0 30-13.4 30-30s-13.4-30-30-30H290.1c-16.6 0-30 13.4-30 30s13.4 30 30 30zm339.5 435.5H394.4c-16.6 0-30 13.4-30 30s13.4 30 30 30h235.2c16.6 0 30-13.4 30-30s-13.4-30-30-30z" fill="#666"/><path d="M850.3 403.9H173.7c-33 0-60 27-60 60v360c0 33 27 60 60 60h676.6c33 0 60-27 60-60v-360c0-33-27-60-60-60zm-.1 419.8l-.1.1H173.9l-.1-.1V464l.1-.1h676.2l.1.1v359.7z" fill="#666"/></svg></span>'+dayjs(new Date(searchData[i].item.createdTs)*1000).fromNow()+'</div><div class="random-content">'+searchData[i].item.content.replace(/!\[.*?\]\((.*?)\)/g,' <img class="random-image" src="$1"/> ').replace(/\[(.*?)\]\((.*?)\)/g,' <a href="$2" target="_blank">$1</a> ')+'</div>'
|
||||
@@ -296,7 +314,7 @@ $('#search').click(function () {
|
||||
resLink = resexlink
|
||||
}else{
|
||||
fileId = resourceList[j].publicId || resourceList[j].filename
|
||||
resLink = info.apiUrl.replace(/api\/memo.*/,'')+'o/r/'+resourceList[j].id+'/'+fileId
|
||||
resLink = info.apiUrl.replace(/api\/(v1\/)?memo.*/,'')+'o/r/'+resourceList[j].id+'/'+fileId
|
||||
}
|
||||
if(restype == 'image'){
|
||||
searchDom += '<img class="random-image" src="'+resLink+'"/>'
|
||||
@@ -332,20 +350,28 @@ $('#random').click(function () {
|
||||
if( $("#taglist").is(':visible') && nowTag[1]){
|
||||
var tagUrl = info.apiUrl+'&rowStatus=NORMAL&tag='+nowTag[1]
|
||||
$.get(tagUrl,function(data){
|
||||
let randomNum = Math.floor(Math.random() * (data.data.length));
|
||||
var randomData = data.data[randomNum]
|
||||
var arrData = data || ''
|
||||
if(data.data){
|
||||
arrData = data.data
|
||||
}
|
||||
let randomNum = Math.floor(Math.random() * (arrData.length));
|
||||
var randomData = arrData[randomNum]
|
||||
randDom(randomData)
|
||||
})
|
||||
}else{
|
||||
var randomUrl0 = info.apiUrl+'&rowStatus=NORMAL&limit=1'
|
||||
$.get(randomUrl0,function(data){
|
||||
var creatorId = data.data[0].creatorId
|
||||
var randomUrl1 = info.apiUrl.replace(/api\/memo.*/,'api/memo/stats?creatorId=')+creatorId
|
||||
var arrData = data || ''
|
||||
if(data.data){
|
||||
arrData = data.data
|
||||
}
|
||||
var creatorId = arrData[0].creatorId
|
||||
var randomUrl1 = info.apiUrl.replace(/api\/(v1\/)?memo.*/,'api/$1memo/stats?creatorId=')+creatorId
|
||||
$.get(randomUrl1,function(data){
|
||||
let randomNum = Math.floor(Math.random() * (data.data.length)) + 1;
|
||||
let randomNum = Math.floor(Math.random() * (arrData.length)) + 1;
|
||||
var randomUrl2 = info.apiUrl+'&rowStatus=NORMAL&limit=1&offset='+randomNum
|
||||
$.get(randomUrl2,function(data){
|
||||
var randomData = data.data[0]
|
||||
var randomData = arrData[0]
|
||||
randDom(randomData)
|
||||
});
|
||||
});
|
||||
@@ -372,7 +398,7 @@ function randDom(randomData){
|
||||
resLink = resexlink
|
||||
}else{
|
||||
fileId = resourceList[j].publicId || resourceList[j].filename
|
||||
resLink = info.apiUrl.replace(/api\/memo.*/,'')+'o/r/'+resourceList[j].id+'/'+fileId
|
||||
resLink = info.apiUrl.replace(/api\/(v1\/)?memo.*/,'')+'o/r/'+resourceList[j].id+'/'+fileId
|
||||
}
|
||||
if(restype == 'image'){
|
||||
randomDom += '<img class="random-image" src="'+resLink+'"/>'
|
||||
@@ -391,14 +417,14 @@ function randDom(randomData){
|
||||
$(document).on("click","#random-link",function () {
|
||||
var memoId = $("#random-link").data('id');
|
||||
get_info(function (info) {
|
||||
chrome.tabs.create({url:info.apiUrl.replace(/api\/memo.*/,'')+"m/"+memoId})
|
||||
chrome.tabs.create({url:info.apiUrl.replace(/api\/(v1\/)?memo.*/,'')+"m/"+memoId})
|
||||
})
|
||||
})
|
||||
|
||||
$(document).on("click","#random-delete",function () {
|
||||
get_info(function (info) {
|
||||
var memosId = $("#random-delete").data('id');
|
||||
var deleteUrl = info.apiUrl.replace(/api\/memo(.*)/,'api/memo/'+memosId+'$1')
|
||||
var deleteUrl = info.apiUrl.replace(/api\/(v1\/)?memo(.*)/,'api/$1memo/'+memosId+'$2')
|
||||
$.ajax({
|
||||
url:deleteUrl,
|
||||
type:"PATCH",
|
||||
@@ -492,9 +518,13 @@ function getOne(memosId){
|
||||
get_info(function (info) {
|
||||
if (info.apiUrl) {
|
||||
$("#randomlist").html('').hide()
|
||||
var getUrl = info.apiUrl.replace(/api\/memo(.*)/,'api/memo/'+memosId+'$1')
|
||||
var getUrl = info.apiUrl.replace(/api\/(v1\/)?memo(.*)/,'api/$1memo/'+memosId+'$2')
|
||||
$.get(getUrl,function(data){
|
||||
randDom(data.data)
|
||||
var arrData = data || ''
|
||||
if(data.data){
|
||||
arrData = data.data
|
||||
}
|
||||
randDom(arrData)
|
||||
});
|
||||
} else {
|
||||
$.message({
|
||||
@@ -535,7 +565,11 @@ function sendText() {
|
||||
dataType:"json",
|
||||
success: function(result){
|
||||
//发送成功
|
||||
getOne(result.data.id)
|
||||
var arrData = result || ''
|
||||
if(result.data){
|
||||
arrData = result.data
|
||||
}
|
||||
getOne(arrData.id)
|
||||
chrome.storage.sync.set(
|
||||
{ open_action: '', open_content: '',resourceIdList:''},
|
||||
function () {
|
||||
|
||||
Reference in New Issue
Block a user