This commit is contained in:
Jesse-Ma
2022-07-21 18:51:30 +08:00
parent 0bdd2eea5c
commit deb1fbe49d
22 changed files with 26943 additions and 346 deletions

View File

@@ -1,86 +1,100 @@
import Vue from 'vue'
import VueRouter from 'vue-router'
import EditNote from '@/views/EditNote.vue'
import ViewNote from '@/views/ViewNote.vue'
import ErrorView from '@/views/ErrorView.vue'
import BlankNote from '@/views/BlankNote.vue'
import Vue from "vue";
import VueRouter from "vue-router";
import EditNote from "@/views/EditNote.vue";
import ViewNote from "@/views/ViewNote.vue";
import ErrorView from "@/views/ErrorView.vue";
import BlankNote from "@/views/BlankNote.vue";
import { getKeyMeta, getNoteMeta } from "@/api/note";
import { getStoreKey } from "@/api/lock";
import storage from "@/libs/storage";
Vue.use(VueRouter)
Vue.use(VueRouter);
let keyMeta = null;
var keyMeta = null;
var noteMeta = null;
function getKeyMetaParam() {
return keyMeta;
}
function getNoteMetaParam() {
return noteMeta;
}
function getNoteView() {
let path = location.pathname;
if (null != keyMeta) {
path = "/" + keyMeta.key;
}
let path = location.pathname;
if (null != keyMeta) {
path = "/" + keyMeta.key;
}
let reg = /^\/[abcdefhikmnopqstuvwxyz23456789]{16}$/
if (!reg.test(path)) {
return;
}
let reg = /^\/[abcdefhikmnopqstuvwxyz23456789]{16}$/;
if (!reg.test(path)) {
return;
}
let key = path.substr(1, path.length - 1);
let key = path.substr(1, path.length - 1);
let storeKey = getStoreKey(key);
if (keyMeta && keyMeta.cipher) {
storage.session.setObject(storeKey + '.keyMeta', keyMeta);
let storeKey = getStoreKey(key);
if (keyMeta && keyMeta.cipher) {
// storage.session.setObject(storeKey + '.keyMeta', keyMeta);
return EditNote;
}
noteMeta = getNoteMeta(key);
if (!noteMeta || !noteMeta.key) {
let storeText = storage.local.getText(storeKey + ".text");
if (storeText) {
let starray = storeText.split("|");
let commitFlag = starray[2];
if (commitFlag == "1") {
storage.local.delete(storeKey + '.text');
return BlankNote;
} else {
return EditNote;
}
} else {
return BlankNote;
}
let noteMeta = null;
noteMeta = getNoteMeta(key);
if (!noteMeta || !noteMeta.key) {
let storeText = storage.local.getText(storeKey + '.text');
if(storeText){
return EditNote;
}else{
return BlankNote;
}
}
storage.session.setObject(storeKey + '.noteMeta', noteMeta);
return ViewNote;
}
// storage.session.setObject(storeKey + '.noteMeta', noteMeta);
return ViewNote;
}
function getHomeRedirect() {
let path = location.pathname;
if (path != '/') {
return;
}
let km = getKeyMeta();
km.isNew = true;
//sessionStorage.setItem(km.getKey() + '.keyMeta', km);
keyMeta = km;
return '/' + keyMeta.key;
let path = location.pathname;
if (path != "/") {
return;
}
let km = getKeyMeta();
km.isNew = true;
//sessionStorage.setItem(km.getKey() + '.keyMeta', km);
keyMeta = km;
return "/" + keyMeta.key;
}
const routes = [
{
path: '/',
name: 'home',
redirect: getHomeRedirect(),
},
{
path: '/error',
name: 'error',
component: ErrorView,
},
{
path: '/:name([abcdefhikmnopqstuvwxyz23456789]{16})',
name: 'note',
component: getNoteView(),
}
]
{
path: "/",
name: "home",
redirect: getHomeRedirect(),
},
{
path: "/error",
name: "error",
component: ErrorView,
},
{
path: "/:name([abcdefhikmnopqstuvwxyz23456789]{16})",
name: "note",
component: getNoteView(),
meta: { keyMeta: getKeyMetaParam(), noteMeta: getNoteMetaParam() },
},
];
const router = new VueRouter({
routes,
mode: 'history'
})
routes,
mode: "history",
});
export default router
export default router;