├── .vscode
└── extensions.json
├── .babelrc
├── src
├── utils
│ ├── storage.js
│ └── request.js
├── components
│ ├── gloab
│ │ ├── index.js
│ │ └── Layout.vue
│ ├── widget
│ │ ├── index.js
│ │ ├── NoteBook.vue
│ │ ├── Widget.vue
│ │ ├── RssList.vue
│ │ ├── Podcast.vue
│ │ └── ChatGPT.vue
│ ├── HelloWorld.vue
│ ├── MarkDown.vue
│ ├── EventList.vue
│ └── TodoList.vue
├── main.js
├── assets
│ └── vue.svg
├── views
│ ├── Todo.vue
│ ├── Note.vue
│ ├── ChatGPT.vue
│ ├── Index.vue
│ └── Index copy.vue
├── App.vue
├── router
│ └── index.js
├── store
│ └── index.js
├── style.css
└── services
│ └── index.js
├── .gitignore
├── vite.config.js
├── package.json
├── index.html
├── README.md
└── pnpm-lock.yaml
/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
3 | }
4 |
--------------------------------------------------------------------------------
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [["es2015", { "modules": false }]],
3 | "plugins": [
4 | [
5 | "component",
6 | {
7 | "libraryName": "element-ui",
8 | "styleLibraryName": "theme-chalk"
9 | }
10 | ]
11 | ]
12 | }
13 |
--------------------------------------------------------------------------------
/src/utils/storage.js:
--------------------------------------------------------------------------------
1 | export function setItem(k, v) {
2 | if (v) {
3 | localStorage.setItem(k, JSON.stringify(v))
4 | } else {
5 | localStorage.removeItem(k)
6 | }
7 | }
8 | export function getItem(k) {
9 | let v = localStorage.getItem(k);
10 | return v ? JSON.parse(v) : v
11 | }
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/src/components/gloab/index.js:
--------------------------------------------------------------------------------
1 | import { ElDialog } from "element-plus";
2 | import Layout from './Layout.vue'
3 | import "element-plus/es/components/dialog/style/css";
4 | ElDialog.__name = 'el-dialog'
5 |
6 | const components = [ElDialog, Layout]
7 | export default {
8 | install: (app, options) => {
9 | components.forEach(c => {
10 | app.component(c.__name, c)
11 | })
12 | }
13 | }
--------------------------------------------------------------------------------
/src/components/widget/index.js:
--------------------------------------------------------------------------------
1 | import NoteBook from "./NoteBook.vue"
2 | import RssList from "./RssList.vue"
3 | import Podcast from "./Podcast.vue"
4 | import ChatGPT from "./ChatGPT.vue"
5 |
6 | const widgets = [NoteBook, RssList, Podcast, ChatGPT]
7 |
8 | export default {
9 | install: (app, options) => {
10 | widgets.forEach(widget => {
11 | app.component(widget.__name, widget)
12 | })
13 | }
14 | }
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import { createApp } from 'vue'
2 | import './style.css'
3 | import "@mdi/font/css/materialdesignicons.min.css"
4 | import App from './App.vue'
5 | import widget from './components/widget'
6 | import gloabCom from './components/gloab'
7 | import { createPinia } from 'pinia'
8 | const pinia = createPinia()
9 | import router from './router';
10 |
11 | const app = createApp(App);
12 | app.use(pinia).use(router).use(widget).use(gloabCom).mount('#app')
13 |
--------------------------------------------------------------------------------
/src/assets/vue.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/views/Todo.vue:
--------------------------------------------------------------------------------
1 |
8 |
9 |
10 |
14 |
15 |
16 |
17 |
22 |
--------------------------------------------------------------------------------
/vite.config.js:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'vite'
2 | import path from "path";
3 | import vue from '@vitejs/plugin-vue'
4 | import ElementPlus from 'unplugin-element-plus/vite'
5 |
6 |
7 | // https://vitejs.dev/config/
8 | export default defineConfig({
9 | resolve: {
10 | alias: {
11 | "@": path.resolve(__dirname, "src"),
12 | "components": path.resolve(__dirname, "src/components"),
13 | "api": path.resolve(__dirname, "src/api"),
14 | "views": path.resolve(__dirname, "src/views"),
15 | },
16 | },
17 | plugins: [
18 | vue(),
19 | ElementPlus({
20 | // options
21 | }),
22 | ],
23 | })
24 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
8 |
9 |
10 |
11 |
12 |
13 |
27 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "moon-note",
3 | "private": true,
4 | "version": "0.0.0",
5 | "type": "module",
6 | "scripts": {
7 | "dev": "vite",
8 | "build": "vite build",
9 | "preview": "vite preview"
10 | },
11 | "dependencies": {
12 | "@mdi/font": "^7.1.96",
13 | "element-plus": "^2.2.32",
14 | "less": "^4.1.3",
15 | "moment": "^2.29.4",
16 | "pinia": "^2.0.32",
17 | "vue": "^3.2.45",
18 | "vue-router": "4",
19 | "vue3-aplayer": "^1.7.3",
20 | "vue3-markdown": "^1.1.7"
21 | },
22 | "devDependencies": {
23 | "@vitejs/plugin-vue": "^4.0.0",
24 | "unplugin-element-plus": "^0.7.0",
25 | "vite": "^4.1.0"
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Moon bullet journal
8 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # moon note (Moon Bullet journal)
2 |
3 | I used this weekend to develop a small bullet journal application called [Moon note](https://weekendproject.space/journal.html), which means: the light of the moon comes from the sun.
4 |
5 | feature:
6 |
7 | - [x] No server (data stored locally)
8 |
9 | - [x] Note
10 |
11 | - [x] Event
12 |
13 | - [x] Todo
14 |
15 | - [ ] Use pwa offline
16 |
17 | - [x] Data export
18 |
19 | - [ ] Data import
20 |
21 | - [x] Widget (Podcat, RssList, Quick Note)
22 |
23 | - [x] Custom widget
24 |
25 | - [ ] Three-party widgets
26 |
27 | - [x] Favorite URLs
28 |
29 | - [x] Date view jump
30 |
31 | - [x] Responsive
32 |
33 |
34 |
35 | **Use**
36 |
37 | ```
38 | npm install
39 |
40 | npm run dev
41 | ```
42 | or
43 | ```
44 | npm install
45 |
46 | npm run build
47 | ```
48 |
--------------------------------------------------------------------------------
/src/components/HelloWorld.vue:
--------------------------------------------------------------------------------
1 |
10 |
11 |
12 | {{ msg }}
13 |
14 |
15 |
16 |
17 | Edit
18 | components/HelloWorld.vue to test HMR
19 |
20 |
21 |
22 |
23 | Check out
24 | create-vue, the official Vue + Vite starter
27 |
28 |
29 | Install
30 | Volar
31 | in your IDE for a better DX
32 |
33 | Click on the Vite and Vue logos to learn more
34 |
35 |
36 |
41 |
--------------------------------------------------------------------------------
/src/utils/request.js:
--------------------------------------------------------------------------------
1 | export function get(url, config) {
2 | return request(url, 'GET', config)
3 | }
4 |
5 | export function post(url, data, config) {
6 | return request(url, 'POST', JSON.stringify(data), config)
7 | }
8 |
9 |
10 | function request(url, method, data, config) {
11 | return new Promise((resolve, reject) => {
12 | const xhr = new XMLHttpRequest();
13 | xhr.open(method, url, true)
14 | initConfig(xhr, config)
15 | xhr.onreadystatechange = () => {
16 | if (xhr.readyState == 4) {
17 | if (xhr.status == 200) {
18 | resolve(JSON.parse(xhr.responseText))
19 | } else {
20 | reject(xhr)
21 | }
22 | }
23 |
24 | }
25 | xhr.send(data)
26 | })
27 | }
28 |
29 |
30 | function initConfig(xhr, config) {
31 | if (config) {
32 | if (config.headers) {
33 | for (let k in config.headers) {
34 | xhr.setRequestHeader(k, config.headers[k])
35 | }
36 | }
37 | }
38 |
39 | }
--------------------------------------------------------------------------------
/src/router/index.js:
--------------------------------------------------------------------------------
1 | // 1. Define route components.
2 | // These can be imported from other files
3 | import { createRouter, createWebHashHistory } from 'vue-router'
4 |
5 | const About = { template: 'About
' }
6 |
7 | // 2. Define some routes
8 | // Each route should map to a component.
9 | // We'll talk about nested routes later.
10 | const routes = [
11 | { path: '/', component: () => import('@/views/Index.vue') },
12 | { path: '/chat-gpt', component: () => import('@/views/ChatGPT.vue') },
13 | { path: '/chat-gpt-online', meta: { fullScreen: true }, component: () => import('@/views/ChatGPT.vue') },
14 | { path: '/todo', component: () => import('@/views/Todo.vue') },
15 | { path: '/note', component: () => import('@/views/Note.vue') },
16 | { path: '/about', component: About },
17 | ]
18 |
19 | // 3. Create the router instance and pass the `routes` option
20 | // You can pass in additional options here, but let's
21 | // keep it simple for now.
22 | const router = createRouter({
23 | // 4. Provide the history implementation to use. We are using the hash history for simplicity here.
24 | history: createWebHashHistory(),
25 | routes, // short for `routes: routes`
26 | })
27 |
28 | export default router
--------------------------------------------------------------------------------
/src/views/Note.vue:
--------------------------------------------------------------------------------
1 |
21 |
22 |
23 |
26 |
34 |
35 |
36 |
37 |
38 |
39 |
47 |
--------------------------------------------------------------------------------
/src/store/index.js:
--------------------------------------------------------------------------------
1 | // stores/counter.js
2 | import { defineStore } from 'pinia'
3 | import { ref, reactive, onMounted, watch } from 'vue'
4 | import moment from 'moment'
5 | import { getUrls, getWids, readBp, listDay, saveUrls, saveWids, saveBp } from '../services'
6 |
7 | export const useStore = defineStore('default', () => {
8 | let f = getUrls();
9 | const favs = reactive(f);
10 | const wids = reactive(getWids());
11 | const bp = reactive(readBp(moment().format('YYYY-MM-DD')))
12 | const days = ref(listDay(moment().format('YYYY-MM')))
13 | const count = ref(0)
14 | onMounted(() => {
15 | watch(favs, (v) => {
16 | saveUrls(v)
17 | })
18 | watch(wids, (v) => {
19 | saveWids(v)
20 | })
21 | watch(bp, v => {
22 | saveBp(v)
23 | })
24 | watch(count, v => {
25 | alert(v)
26 | })
27 | })
28 |
29 | function changeDate(date) {
30 | const day = moment(date).format('YYYY-MM-DD')
31 | const month = moment(date).format('YYYY-MM')
32 | let d = readBp(day)
33 | // console.log(d)
34 | bp.day = d.day
35 | bp.events = d.events
36 | bp.note = d.note
37 | bp.todos = d.todos
38 | // days.splice(0, days.length)
39 | console.log(days, listDay(month))
40 | days.value = listDay(month)
41 | // listDay(moment).push(o => days.push(o))
42 | }
43 | return {
44 | favs,
45 | wids,
46 | bp,
47 | days,
48 | count,
49 | changeDate
50 | }
51 | })
--------------------------------------------------------------------------------
/src/components/widget/NoteBook.vue:
--------------------------------------------------------------------------------
1 |
23 |
24 |
25 |
32 |
33 |
41 |
42 |
47 |
48 |
49 |
68 |
--------------------------------------------------------------------------------
/src/components/widget/Widget.vue:
--------------------------------------------------------------------------------
1 |
22 |
23 |
24 |
42 |
43 |
44 |
64 |
--------------------------------------------------------------------------------
/src/views/ChatGPT.vue:
--------------------------------------------------------------------------------
1 |
14 |
15 |
16 |
17 |
18 |
24 |
25 |
26 |
27 |
28 |
71 |
--------------------------------------------------------------------------------
/src/style.css:
--------------------------------------------------------------------------------
1 | :root {
2 | font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;
3 | line-height: 1.5;
4 |
5 | color-scheme: light dark;
6 | /* color: rgba(255, 255, 255, 0.87); */
7 | background-color: #242424;
8 |
9 | font-synthesis: none;
10 | text-rendering: optimizeLegibility;
11 | -webkit-font-smoothing: antialiased;
12 | -moz-osx-font-smoothing: grayscale;
13 | -webkit-text-size-adjust: 100%;
14 | --continer-padding: 30px;
15 | --inner-padding: 20px;
16 | --top-height: 50px;
17 | }
18 | html body {
19 | padding: 0;
20 | margin: 0;
21 | }
22 | * {
23 | box-sizing: border-box;
24 | }
25 | /* 设置滚动条的样式 */
26 | ::-webkit-scrollbar {
27 | width: 5px;
28 | }
29 |
30 | /* 滚动槽 */
31 | ::-webkit-scrollbar-track {
32 | border-radius: 2px;
33 | }
34 |
35 | /* 滚动条滑块 */
36 | ::-webkit-scrollbar-thumb {
37 | border-radius: 2px;
38 | background: rgba(88, 88, 88, 0.6);
39 | }
40 |
41 | ::-webkit-scrollbar-thumb:window-inactive {
42 | background: rgba(88, 88, 88, 0.8);
43 | }
44 | a {
45 | font-weight: 500;
46 | color: #646cff;
47 | text-decoration: inherit;
48 | }
49 | a:hover {
50 | color: #535bf2;
51 | }
52 | .navs a {
53 | color: #000;
54 | }
55 | .navs a:hover,
56 | .navs .router-link-active {
57 | color: #00b08c;
58 | }
59 | .input {
60 | width: 100%;
61 | height: 36px;
62 | line-height: 36px;
63 | border: none;
64 | background: #eee;
65 | padding: 0 8px;
66 | border-radius: 10px;
67 | }
68 | .label ~ .label {
69 | display: block;
70 | margin-top: 1.5em;
71 | }
72 |
73 | @media (prefers-color-scheme: light) {
74 | :root {
75 | color: #213547;
76 | background-color: #ffffff;
77 | }
78 | a:hover {
79 | color: #747bff;
80 | }
81 | button {
82 | background-color: #f9f9f9;
83 | }
84 | }
85 |
86 | #app .el-calendar {
87 | --el-calendar-cell-width: 42px;
88 | --el-calendar-cell-height: 1.2em;
89 | --el-calendar-border: none;
90 | --el-fill-color-blank: transparent;
91 | }
92 |
93 | #app .el-dialog {
94 | width: none;
95 | min-width: 320px;
96 | max-width: 50%;
97 | }
98 |
--------------------------------------------------------------------------------
/src/components/MarkDown.vue:
--------------------------------------------------------------------------------
1 |
35 |
36 |
37 |
45 |
46 |
83 |
--------------------------------------------------------------------------------
/src/views/Index.vue:
--------------------------------------------------------------------------------
1 |
23 |
24 |
25 |
26 |
27 |
28 |
34 |
35 |
36 |
37 |
38 |
39 |
43 |
44 |
45 |
46 |
47 |
48 |
51 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
--------------------------------------------------------------------------------
/src/components/EventList.vue:
--------------------------------------------------------------------------------
1 |
26 |
27 |
28 |
29 |
30 |
37 |
38 |
39 | -
40 |
41 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
86 |
--------------------------------------------------------------------------------
/src/components/TodoList.vue:
--------------------------------------------------------------------------------
1 |
27 |
28 |
29 |
49 |
50 |
51 |
91 |
--------------------------------------------------------------------------------
/src/components/widget/RssList.vue:
--------------------------------------------------------------------------------
1 |
33 |
34 |
35 |
43 |
46 |
47 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
73 |
74 |
75 |
76 |
77 |
106 |
--------------------------------------------------------------------------------
/src/components/widget/Podcast.vue:
--------------------------------------------------------------------------------
1 |
49 |
50 |
51 |
63 |
64 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
79 |
80 |
81 |
82 |
83 |
138 |
--------------------------------------------------------------------------------
/src/services/index.js:
--------------------------------------------------------------------------------
1 | import { onMounted, watch, ref } from "vue";
2 | import { setItem, getItem } from "../utils/storage";
3 | import moment from 'moment'
4 | // {
5 | // favs:[''],
6 | // wids:[{
7 | // name:'Podcast',
8 | // title: ''
9 | // data:'xxxxx'||{}||araray
10 | // }]
11 | // bps:{
12 | // '2023-11':[{
13 | // day: '2023-11-01',
14 | // todo:[{vaule:'',done:false}],
15 | // note: '',
16 | // event:['']
17 | // }]
18 | // }
19 | // }
20 |
21 | export function importData(str) {
22 | const d = JSON.parse(str);
23 | saveUrls(d.urls)
24 | saveWids(d.wids)
25 | let bpsIndex = []
26 | for (let k of d.bps) {
27 | bdsIndex.push(k)
28 | let v = d.bps[k]
29 | saveBps(k, v)
30 | }
31 | saveBpIndex(bdsIndex)
32 | }
33 |
34 | export function exportData() {
35 | let bps = {}
36 | let ix = getBPIndex()
37 | for (let month of ix) {
38 | bps[month] = getBps(month)
39 | }
40 | return {
41 | urls: getUrls(),
42 | wids: getWids(),
43 | bps
44 | }
45 | }
46 |
47 | export function readBp(day) {
48 | let k = day.substr(0, 7);
49 | let v = getItem(k);
50 | if (v) {
51 | let array = v.filter(o => o.day == day)
52 | if (array.length) {
53 | return array[0]
54 | }
55 | }
56 | if (getBPIndex().length) {
57 | return {
58 | day: day,
59 | todos: [],
60 | note: '',
61 | events: []
62 | }
63 | } else {
64 | return {
65 | day: day,
66 | todos: [{ value: 'note', done: true }, { value: 'event', done: true }, { value: 'todo', done: true }, { value: '离线使用 pwa', done: false }, { value: '数据导出', done: true }, { value: '导入', done: false }, { value: '小组件 (Podcat, RssList, Quick Note)', done: true }, { value: '自定义小组件', done: true }, { value: '三方小组件', done: false }, { value: '常用网址收藏', done: true }, { value: '日期查看跳转', done: true }],
67 | note: '欢迎使用 Moon bullet journals , 数据全部存放再您的个人设备上,无需担心数据泄露,可以点击右上角导出,支持离线使用,在这里[查看源码](https://github.com/weekend-project-space/moon-note) \n > Note采用md书写格式下面是语法示例 \n ## Markdown Basic Syntax \n> Dorothy followed her through many of the beautiful rooms in her castle. \n - [x] Write the press release',
68 | events: ['hello world']
69 | }
70 | }
71 |
72 | }
73 |
74 | export function listDay(month) {
75 | let k = month;
76 | let v = getBps(k);
77 | if (v) {
78 | return v.filter(o => o.note.length || o.events.length || o.todos.length).map(o => o.day)
79 | }
80 | return []
81 | }
82 |
83 | export function getBps(month) {
84 | let k = month;
85 | let v = getItem(k);
86 | return v ? v : []
87 | }
88 |
89 | export function getWids() {
90 | let k = 'wids';
91 | let v = getItem(k)
92 | return v ? v : [
93 | {
94 | name: "ChatGPT",
95 | title: "ChatGPT",
96 | data: "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",
97 | },
98 | {
99 | name: "Podcast",
100 | title: "podcast",
101 | data: "https://rsshub.app/ximalaya/album/51101122/0/shownote",
102 | },
103 | {
104 | name: "RssList",
105 | title: "RssList",
106 | data: "https://api.webfollow.cc/api/articles?source=EXPLORE&sort=channel,desc",
107 | },
108 | ]
109 | }
110 |
111 | export function getUrls() {
112 | let k = 'favs';
113 | let v = getItem(k)
114 | return v ? v : []
115 | }
116 |
117 | export function getBPIndex() {
118 | let k = 'bp-index'
119 | let v = getItem(k)
120 | return v ? v : []
121 | }
122 |
123 | export function saveBp(obj) {
124 | if (obj.note.length || obj.events.length || obj.todos.length) {
125 | let k = obj.day.substr(0, 7);
126 | let v = getItem(k)
127 | if (!v) {
128 | v = [obj]
129 | setItem(k, v)
130 | } else {
131 | if (!v.filter(o => o.day == obj.day).length) {
132 | v.push(obj)
133 | setItem(k, v)
134 | } else {
135 | for (let i = 0; i < v.length; i++) {
136 | if (v[i].day == obj.day) {
137 | v[i] = obj;
138 | }
139 | }
140 | setItem(k, v)
141 | }
142 | }
143 | let ix = getBPIndex()
144 | if (!ix) {
145 | ix = [k]
146 | saveBpIndex(ix)
147 | } else {
148 | let vs = new Set(ix)
149 | if (!vs.has(k)) {
150 | ix.push(k)
151 | saveBpIndex(ix)
152 | }
153 | }
154 | }
155 | }
156 |
157 | export function saveBps(month, v) {
158 | setItem(moment, v)
159 | }
160 |
161 | export function saveWids(v) {
162 | setItem('wids', v)
163 | }
164 |
165 | export function saveUrls(v) {
166 | setItem('favs', v)
167 | }
168 |
169 | export function saveBpIndex(v) {
170 | setItem('bp-index', v)
171 | }
172 |
173 | // function addWid(obj) {
174 | // let k = 'wids';
175 | // let v = getItem(k)
176 | // if (!v) {
177 | // v = []
178 | // }
179 | // if (!v.filter(o => o.name == obj.name).length) {
180 | // v.push(obj)
181 | // setItem(k, v)
182 | // }
183 | // }
184 |
185 | // function addUrl(url) {
186 | // let k = 'urls';
187 | // let v = getItem(k)
188 | // if (!v) {
189 | // v = []
190 | // }
191 | // if (!v.filter(o => o == url).length) {
192 | // v.push(obj)
193 | // setItem(k, v)
194 | // }
195 | // }
--------------------------------------------------------------------------------
/src/views/Index copy.vue:
--------------------------------------------------------------------------------
1 |
51 |
52 |
53 |
54 |
75 |
76 |
77 | Moon bullet journal
78 |
88 |
89 |
90 |
91 |
92 |
93 |
99 |
100 |
101 |
102 |
103 |
104 |
108 |
109 |
110 |
111 |
112 |
113 |
116 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
146 |
147 |
148 |
152 |
153 |
154 |
155 |
156 |
160 |
161 | -
162 |
Total num
163 |
164 |
165 | -
166 |
Done num
167 |
168 |
169 |
170 |
171 |
172 |
176 |
177 | -
178 |
179 |
180 |
181 |
182 |
183 |
184 |
188 |
189 | -
190 |
191 |
192 |
193 |
194 |
195 |
196 |
197 |
202 |
203 |
218 |
219 |
220 |
221 | {{ data.day.split("-").slice(2).join("-") }}
222 |
223 |
224 | {{ data.isSelected ? "✔️" : hasDay(data.day) ? "-" : "" }}
225 |
226 |
227 |
228 |
229 |
230 |
231 |
232 |
233 |
575 |
592 |
--------------------------------------------------------------------------------
/src/components/gloab/Layout.vue:
--------------------------------------------------------------------------------
1 |
40 |
41 |
42 |
43 |
94 |
95 |
96 | Moon bullet journal
97 |
107 |
108 |
109 |
110 |
111 |
112 |
124 |
125 |
126 |
130 |
131 |
132 |
133 |
134 |
138 |
139 | -
140 |
Total num
141 |
142 |
143 | -
144 |
Done num
145 |
146 |
147 |
148 |
149 |
150 |
154 |
155 | -
156 |
157 |
158 |
159 |
160 |
161 |
162 |
166 |
167 | -
168 |
169 |
170 |
171 |
172 |
173 |
174 |
175 |
180 |
181 |
196 |
197 |
198 |
199 | {{ data.day.split("-").slice(2).join("-") }}
200 |
201 |
202 |
211 |
212 |
213 |
214 |
215 |
216 |
217 |
218 |
219 |
419 |
566 |
--------------------------------------------------------------------------------
/src/components/widget/ChatGPT.vue:
--------------------------------------------------------------------------------
1 |
100 |
101 |
102 |
103 |
104 |
105 |
119 | {{ title }}
120 |
121 |
122 |
123 |
126 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
149 |
153 |
154 |
155 |
156 |
160 |
161 |
162 |
163 |
177 |
请稍等, 正在思考中...
178 |
179 |
180 |
181 |
182 |
183 |
190 |
193 |
194 |
195 |
196 |
197 |
198 |
199 |
200 |
201 |
202 |
205 |
206 |
207 |
208 |
209 |
289 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: 5.4
2 |
3 | specifiers:
4 | '@mdi/font': ^7.1.96
5 | '@vitejs/plugin-vue': ^4.0.0
6 | element-plus: ^2.2.32
7 | less: ^4.1.3
8 | moment: ^2.29.4
9 | pinia: ^2.0.32
10 | unplugin-element-plus: ^0.7.0
11 | vite: ^4.1.0
12 | vue: ^3.2.45
13 | vue-router: '4'
14 | vue3-aplayer: ^1.7.3
15 | vue3-markdown: ^1.1.7
16 |
17 | dependencies:
18 | '@mdi/font': 7.1.96
19 | element-plus: 2.2.32_vue@3.2.47
20 | less: 4.1.3
21 | moment: 2.29.4
22 | pinia: 2.0.32_vue@3.2.47
23 | vue: 3.2.47
24 | vue-router: 4.1.6_vue@3.2.47
25 | vue3-aplayer: 1.7.3_vue@3.2.47
26 | vue3-markdown: 1.1.7
27 |
28 | devDependencies:
29 | '@vitejs/plugin-vue': 4.0.0_vite@4.1.4+vue@3.2.47
30 | unplugin-element-plus: 0.7.0
31 | vite: 4.1.4_less@4.1.3
32 |
33 | packages:
34 |
35 | /@babel/helper-string-parser/7.19.4:
36 | resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==}
37 | engines: {node: '>=6.9.0'}
38 |
39 | /@babel/helper-validator-identifier/7.19.1:
40 | resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==}
41 | engines: {node: '>=6.9.0'}
42 |
43 | /@babel/parser/7.21.2:
44 | resolution: {integrity: sha512-URpaIJQwEkEC2T9Kn+Ai6Xe/02iNaVCuT/PtoRz3GPVJVDpPd7mLo+VddTbhCRU9TXqW5mSrQfXZyi8kDKOVpQ==}
45 | engines: {node: '>=6.0.0'}
46 | hasBin: true
47 | dependencies:
48 | '@babel/types': 7.21.2
49 |
50 | /@babel/types/7.21.2:
51 | resolution: {integrity: sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==}
52 | engines: {node: '>=6.9.0'}
53 | dependencies:
54 | '@babel/helper-string-parser': 7.19.4
55 | '@babel/helper-validator-identifier': 7.19.1
56 | to-fast-properties: 2.0.0
57 |
58 | /@ctrl/tinycolor/3.6.0:
59 | resolution: {integrity: sha512-/Z3l6pXthq0JvMYdUFyX9j0MaCltlIn6mfh9jLyQwg5aPKxkyNa0PTHtU1AlFXLNk55ZuAeJRcpvq+tmLfKmaQ==}
60 | engines: {node: '>=10'}
61 | dev: false
62 |
63 | /@element-plus/icons-vue/2.0.10_vue@3.2.47:
64 | resolution: {integrity: sha512-ygEZ1mwPjcPo/OulhzLE7mtDrQBWI8vZzEWSNB2W/RNCRjoQGwbaK4N8lV4rid7Ts4qvySU3njMN7YCiSlSaTQ==}
65 | peerDependencies:
66 | vue: ^3.2.0
67 | dependencies:
68 | vue: 3.2.47
69 | dev: false
70 |
71 | /@esbuild/android-arm/0.16.17:
72 | resolution: {integrity: sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==}
73 | engines: {node: '>=12'}
74 | cpu: [arm]
75 | os: [android]
76 | requiresBuild: true
77 | dev: true
78 | optional: true
79 |
80 | /@esbuild/android-arm64/0.16.17:
81 | resolution: {integrity: sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==}
82 | engines: {node: '>=12'}
83 | cpu: [arm64]
84 | os: [android]
85 | requiresBuild: true
86 | dev: true
87 | optional: true
88 |
89 | /@esbuild/android-x64/0.16.17:
90 | resolution: {integrity: sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==}
91 | engines: {node: '>=12'}
92 | cpu: [x64]
93 | os: [android]
94 | requiresBuild: true
95 | dev: true
96 | optional: true
97 |
98 | /@esbuild/darwin-arm64/0.16.17:
99 | resolution: {integrity: sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==}
100 | engines: {node: '>=12'}
101 | cpu: [arm64]
102 | os: [darwin]
103 | requiresBuild: true
104 | dev: true
105 | optional: true
106 |
107 | /@esbuild/darwin-x64/0.16.17:
108 | resolution: {integrity: sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==}
109 | engines: {node: '>=12'}
110 | cpu: [x64]
111 | os: [darwin]
112 | requiresBuild: true
113 | dev: true
114 | optional: true
115 |
116 | /@esbuild/freebsd-arm64/0.16.17:
117 | resolution: {integrity: sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==}
118 | engines: {node: '>=12'}
119 | cpu: [arm64]
120 | os: [freebsd]
121 | requiresBuild: true
122 | dev: true
123 | optional: true
124 |
125 | /@esbuild/freebsd-x64/0.16.17:
126 | resolution: {integrity: sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==}
127 | engines: {node: '>=12'}
128 | cpu: [x64]
129 | os: [freebsd]
130 | requiresBuild: true
131 | dev: true
132 | optional: true
133 |
134 | /@esbuild/linux-arm/0.16.17:
135 | resolution: {integrity: sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==}
136 | engines: {node: '>=12'}
137 | cpu: [arm]
138 | os: [linux]
139 | requiresBuild: true
140 | dev: true
141 | optional: true
142 |
143 | /@esbuild/linux-arm64/0.16.17:
144 | resolution: {integrity: sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==}
145 | engines: {node: '>=12'}
146 | cpu: [arm64]
147 | os: [linux]
148 | requiresBuild: true
149 | dev: true
150 | optional: true
151 |
152 | /@esbuild/linux-ia32/0.16.17:
153 | resolution: {integrity: sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==}
154 | engines: {node: '>=12'}
155 | cpu: [ia32]
156 | os: [linux]
157 | requiresBuild: true
158 | dev: true
159 | optional: true
160 |
161 | /@esbuild/linux-loong64/0.16.17:
162 | resolution: {integrity: sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==}
163 | engines: {node: '>=12'}
164 | cpu: [loong64]
165 | os: [linux]
166 | requiresBuild: true
167 | dev: true
168 | optional: true
169 |
170 | /@esbuild/linux-mips64el/0.16.17:
171 | resolution: {integrity: sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==}
172 | engines: {node: '>=12'}
173 | cpu: [mips64el]
174 | os: [linux]
175 | requiresBuild: true
176 | dev: true
177 | optional: true
178 |
179 | /@esbuild/linux-ppc64/0.16.17:
180 | resolution: {integrity: sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==}
181 | engines: {node: '>=12'}
182 | cpu: [ppc64]
183 | os: [linux]
184 | requiresBuild: true
185 | dev: true
186 | optional: true
187 |
188 | /@esbuild/linux-riscv64/0.16.17:
189 | resolution: {integrity: sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==}
190 | engines: {node: '>=12'}
191 | cpu: [riscv64]
192 | os: [linux]
193 | requiresBuild: true
194 | dev: true
195 | optional: true
196 |
197 | /@esbuild/linux-s390x/0.16.17:
198 | resolution: {integrity: sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==}
199 | engines: {node: '>=12'}
200 | cpu: [s390x]
201 | os: [linux]
202 | requiresBuild: true
203 | dev: true
204 | optional: true
205 |
206 | /@esbuild/linux-x64/0.16.17:
207 | resolution: {integrity: sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==}
208 | engines: {node: '>=12'}
209 | cpu: [x64]
210 | os: [linux]
211 | requiresBuild: true
212 | dev: true
213 | optional: true
214 |
215 | /@esbuild/netbsd-x64/0.16.17:
216 | resolution: {integrity: sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==}
217 | engines: {node: '>=12'}
218 | cpu: [x64]
219 | os: [netbsd]
220 | requiresBuild: true
221 | dev: true
222 | optional: true
223 |
224 | /@esbuild/openbsd-x64/0.16.17:
225 | resolution: {integrity: sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==}
226 | engines: {node: '>=12'}
227 | cpu: [x64]
228 | os: [openbsd]
229 | requiresBuild: true
230 | dev: true
231 | optional: true
232 |
233 | /@esbuild/sunos-x64/0.16.17:
234 | resolution: {integrity: sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==}
235 | engines: {node: '>=12'}
236 | cpu: [x64]
237 | os: [sunos]
238 | requiresBuild: true
239 | dev: true
240 | optional: true
241 |
242 | /@esbuild/win32-arm64/0.16.17:
243 | resolution: {integrity: sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==}
244 | engines: {node: '>=12'}
245 | cpu: [arm64]
246 | os: [win32]
247 | requiresBuild: true
248 | dev: true
249 | optional: true
250 |
251 | /@esbuild/win32-ia32/0.16.17:
252 | resolution: {integrity: sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==}
253 | engines: {node: '>=12'}
254 | cpu: [ia32]
255 | os: [win32]
256 | requiresBuild: true
257 | dev: true
258 | optional: true
259 |
260 | /@esbuild/win32-x64/0.16.17:
261 | resolution: {integrity: sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==}
262 | engines: {node: '>=12'}
263 | cpu: [x64]
264 | os: [win32]
265 | requiresBuild: true
266 | dev: true
267 | optional: true
268 |
269 | /@floating-ui/core/1.2.1:
270 | resolution: {integrity: sha512-LSqwPZkK3rYfD7GKoIeExXOyYx6Q1O4iqZWwIehDNuv3Dv425FIAE8PRwtAx1imEolFTHgBEcoFHm9MDnYgPCg==}
271 | dev: false
272 |
273 | /@floating-ui/dom/1.2.1:
274 | resolution: {integrity: sha512-Rt45SmRiV8eU+xXSB9t0uMYiQ/ZWGE/jumse2o3i5RGlyvcbqOF4q+1qBnzLE2kZ5JGhq0iMkcGXUKbFe7MpTA==}
275 | dependencies:
276 | '@floating-ui/core': 1.2.1
277 | dev: false
278 |
279 | /@jridgewell/sourcemap-codec/1.4.14:
280 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==}
281 | dev: true
282 |
283 | /@mdi/font/7.1.96:
284 | resolution: {integrity: sha512-Imag6npmfkBDi2Ze2jiZVAPTDIKLxhz2Sx82xJ2zctyAU5LYJejLI5ChnDwiD9bMkQfVuzEsI98Q8toHyC+HCg==}
285 | dev: false
286 |
287 | /@popperjs/core/2.11.6:
288 | resolution: {integrity: sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==}
289 | dev: false
290 |
291 | /@rollup/pluginutils/5.0.2:
292 | resolution: {integrity: sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==}
293 | engines: {node: '>=14.0.0'}
294 | peerDependencies:
295 | rollup: ^1.20.0||^2.0.0||^3.0.0
296 | peerDependenciesMeta:
297 | rollup:
298 | optional: true
299 | dependencies:
300 | '@types/estree': 1.0.0
301 | estree-walker: 2.0.2
302 | picomatch: 2.3.1
303 | dev: true
304 |
305 | /@sxzz/popperjs-es/2.11.7:
306 | resolution: {integrity: sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==}
307 | dev: false
308 |
309 | /@types/debug/4.1.7:
310 | resolution: {integrity: sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==}
311 | dependencies:
312 | '@types/ms': 0.7.31
313 | dev: false
314 |
315 | /@types/estree/1.0.0:
316 | resolution: {integrity: sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ==}
317 | dev: true
318 |
319 | /@types/katex/0.11.1:
320 | resolution: {integrity: sha512-DUlIj2nk0YnJdlWgsFuVKcX27MLW0KbKmGVoUHmFr+74FYYNUDAaj9ZqTADvsbE8rfxuVmSFc7KczYn5Y09ozg==}
321 | dev: false
322 |
323 | /@types/lodash-es/4.17.6:
324 | resolution: {integrity: sha512-R+zTeVUKDdfoRxpAryaQNRKk3105Rrgx2CFRClIgRGaqDTdjsm8h6IYA8ir584W3ePzkZfst5xIgDwYrlh9HLg==}
325 | dependencies:
326 | '@types/lodash': 4.14.191
327 | dev: false
328 |
329 | /@types/lodash/4.14.191:
330 | resolution: {integrity: sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==}
331 | dev: false
332 |
333 | /@types/ms/0.7.31:
334 | resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==}
335 | dev: false
336 |
337 | /@types/web-bluetooth/0.0.16:
338 | resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==}
339 | dev: false
340 |
341 | /@vitejs/plugin-vue/4.0.0_vite@4.1.4+vue@3.2.47:
342 | resolution: {integrity: sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==}
343 | engines: {node: ^14.18.0 || >=16.0.0}
344 | peerDependencies:
345 | vite: ^4.0.0
346 | vue: ^3.2.25
347 | dependencies:
348 | vite: 4.1.4_less@4.1.3
349 | vue: 3.2.47
350 | dev: true
351 |
352 | /@vue/compiler-core/3.2.47:
353 | resolution: {integrity: sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==}
354 | dependencies:
355 | '@babel/parser': 7.21.2
356 | '@vue/shared': 3.2.47
357 | estree-walker: 2.0.2
358 | source-map: 0.6.1
359 |
360 | /@vue/compiler-dom/3.2.47:
361 | resolution: {integrity: sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==}
362 | dependencies:
363 | '@vue/compiler-core': 3.2.47
364 | '@vue/shared': 3.2.47
365 |
366 | /@vue/compiler-sfc/3.2.47:
367 | resolution: {integrity: sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==}
368 | dependencies:
369 | '@babel/parser': 7.21.2
370 | '@vue/compiler-core': 3.2.47
371 | '@vue/compiler-dom': 3.2.47
372 | '@vue/compiler-ssr': 3.2.47
373 | '@vue/reactivity-transform': 3.2.47
374 | '@vue/shared': 3.2.47
375 | estree-walker: 2.0.2
376 | magic-string: 0.25.9
377 | postcss: 8.4.21
378 | source-map: 0.6.1
379 |
380 | /@vue/compiler-ssr/3.2.47:
381 | resolution: {integrity: sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==}
382 | dependencies:
383 | '@vue/compiler-dom': 3.2.47
384 | '@vue/shared': 3.2.47
385 |
386 | /@vue/devtools-api/6.5.0:
387 | resolution: {integrity: sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==}
388 | dev: false
389 |
390 | /@vue/reactivity-transform/3.2.47:
391 | resolution: {integrity: sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==}
392 | dependencies:
393 | '@babel/parser': 7.21.2
394 | '@vue/compiler-core': 3.2.47
395 | '@vue/shared': 3.2.47
396 | estree-walker: 2.0.2
397 | magic-string: 0.25.9
398 |
399 | /@vue/reactivity/3.2.47:
400 | resolution: {integrity: sha512-7khqQ/75oyyg+N/e+iwV6lpy1f5wq759NdlS1fpAhFXa8VeAIKGgk2E/C4VF59lx5b+Ezs5fpp/5WsRYXQiKxQ==}
401 | dependencies:
402 | '@vue/shared': 3.2.47
403 |
404 | /@vue/runtime-core/3.2.47:
405 | resolution: {integrity: sha512-RZxbLQIRB/K0ev0K9FXhNbBzT32H9iRtYbaXb0ZIz2usLms/D55dJR2t6cIEUn6vyhS3ALNvNthI+Q95C+NOpA==}
406 | dependencies:
407 | '@vue/reactivity': 3.2.47
408 | '@vue/shared': 3.2.47
409 |
410 | /@vue/runtime-dom/3.2.47:
411 | resolution: {integrity: sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==}
412 | dependencies:
413 | '@vue/runtime-core': 3.2.47
414 | '@vue/shared': 3.2.47
415 | csstype: 2.6.21
416 |
417 | /@vue/server-renderer/3.2.47_vue@3.2.47:
418 | resolution: {integrity: sha512-dN9gc1i8EvmP9RCzvneONXsKfBRgqFeFZLurmHOveL7oH6HiFXJw5OGu294n1nHc/HMgTy6LulU/tv5/A7f/LA==}
419 | peerDependencies:
420 | vue: 3.2.47
421 | dependencies:
422 | '@vue/compiler-ssr': 3.2.47
423 | '@vue/shared': 3.2.47
424 | vue: 3.2.47
425 |
426 | /@vue/shared/3.2.47:
427 | resolution: {integrity: sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==}
428 |
429 | /@vueuse/core/9.13.0_vue@3.2.47:
430 | resolution: {integrity: sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==}
431 | dependencies:
432 | '@types/web-bluetooth': 0.0.16
433 | '@vueuse/metadata': 9.13.0
434 | '@vueuse/shared': 9.13.0_vue@3.2.47
435 | vue-demi: 0.13.11_vue@3.2.47
436 | transitivePeerDependencies:
437 | - '@vue/composition-api'
438 | - vue
439 | dev: false
440 |
441 | /@vueuse/metadata/9.13.0:
442 | resolution: {integrity: sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==}
443 | dev: false
444 |
445 | /@vueuse/shared/9.13.0_vue@3.2.47:
446 | resolution: {integrity: sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==}
447 | dependencies:
448 | vue-demi: 0.13.11_vue@3.2.47
449 | transitivePeerDependencies:
450 | - '@vue/composition-api'
451 | - vue
452 | dev: false
453 |
454 | /acorn/8.8.2:
455 | resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==}
456 | engines: {node: '>=0.4.0'}
457 | hasBin: true
458 | dev: true
459 |
460 | /ansi-styles/4.3.0:
461 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
462 | engines: {node: '>=8'}
463 | dependencies:
464 | color-convert: 2.0.1
465 | dev: false
466 |
467 | /anymatch/3.1.3:
468 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
469 | engines: {node: '>= 8'}
470 | dependencies:
471 | normalize-path: 3.0.0
472 | picomatch: 2.3.1
473 | dev: true
474 |
475 | /async-validator/4.2.5:
476 | resolution: {integrity: sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==}
477 | dev: false
478 |
479 | /big.js/5.2.2:
480 | resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==}
481 | dev: false
482 |
483 | /binary-extensions/2.2.0:
484 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
485 | engines: {node: '>=8'}
486 | dev: true
487 |
488 | /braces/3.0.2:
489 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
490 | engines: {node: '>=8'}
491 | dependencies:
492 | fill-range: 7.0.1
493 | dev: true
494 |
495 | /chalk/4.1.2:
496 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
497 | engines: {node: '>=10'}
498 | dependencies:
499 | ansi-styles: 4.3.0
500 | supports-color: 7.2.0
501 | dev: false
502 |
503 | /character-entities/2.0.2:
504 | resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
505 | dev: false
506 |
507 | /chokidar/3.5.3:
508 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
509 | engines: {node: '>= 8.10.0'}
510 | dependencies:
511 | anymatch: 3.1.3
512 | braces: 3.0.2
513 | glob-parent: 5.1.2
514 | is-binary-path: 2.1.0
515 | is-glob: 4.0.3
516 | normalize-path: 3.0.0
517 | readdirp: 3.6.0
518 | optionalDependencies:
519 | fsevents: 2.3.2
520 | dev: true
521 |
522 | /color-convert/2.0.1:
523 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
524 | engines: {node: '>=7.0.0'}
525 | dependencies:
526 | color-name: 1.1.4
527 | dev: false
528 |
529 | /color-name/1.1.4:
530 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
531 | dev: false
532 |
533 | /commander/8.3.0:
534 | resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==}
535 | engines: {node: '>= 12'}
536 | dev: false
537 |
538 | /copy-anything/2.0.6:
539 | resolution: {integrity: sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==}
540 | dependencies:
541 | is-what: 3.14.1
542 |
543 | /csstype/2.6.21:
544 | resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==}
545 |
546 | /dayjs/1.11.7:
547 | resolution: {integrity: sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==}
548 | dev: false
549 |
550 | /debug/3.2.7:
551 | resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
552 | peerDependencies:
553 | supports-color: '*'
554 | peerDependenciesMeta:
555 | supports-color:
556 | optional: true
557 | dependencies:
558 | ms: 2.1.3
559 | optional: true
560 |
561 | /debug/4.3.4:
562 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
563 | engines: {node: '>=6.0'}
564 | peerDependencies:
565 | supports-color: '*'
566 | peerDependenciesMeta:
567 | supports-color:
568 | optional: true
569 | dependencies:
570 | ms: 2.1.2
571 | dev: false
572 |
573 | /decode-named-character-reference/1.0.2:
574 | resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==}
575 | dependencies:
576 | character-entities: 2.0.2
577 | dev: false
578 |
579 | /dequal/2.0.3:
580 | resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
581 | engines: {node: '>=6'}
582 | dev: false
583 |
584 | /diff/5.1.0:
585 | resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==}
586 | engines: {node: '>=0.3.1'}
587 | dev: false
588 |
589 | /dompurify/2.4.4:
590 | resolution: {integrity: sha512-1e2SpqHiRx4DPvmRuXU5J0di3iQACwJM+mFGE2HAkkK7Tbnfk9WcghcAmyWc9CRrjyRRUpmuhPUH6LphQQR3EQ==}
591 | dev: false
592 |
593 | /element-plus/2.2.32_vue@3.2.47:
594 | resolution: {integrity: sha512-DTJMhYOy6MApbmh6z/95hPTK5WrBiNHGzV4IN+uEkup1WoimQ+Qyt8RxKdTe/X1LWEJ8YgWv/Cl8P4ocrt5z5g==}
595 | peerDependencies:
596 | vue: ^3.2.0
597 | dependencies:
598 | '@ctrl/tinycolor': 3.6.0
599 | '@element-plus/icons-vue': 2.0.10_vue@3.2.47
600 | '@floating-ui/dom': 1.2.1
601 | '@popperjs/core': /@sxzz/popperjs-es/2.11.7
602 | '@types/lodash': 4.14.191
603 | '@types/lodash-es': 4.17.6
604 | '@vueuse/core': 9.13.0_vue@3.2.47
605 | async-validator: 4.2.5
606 | dayjs: 1.11.7
607 | escape-html: 1.0.3
608 | lodash: 4.17.21
609 | lodash-es: 4.17.21
610 | lodash-unified: 1.0.3_3ib2ivapxullxkx3xftsimdk7u
611 | memoize-one: 6.0.0
612 | normalize-wheel-es: 1.2.0
613 | vue: 3.2.47
614 | transitivePeerDependencies:
615 | - '@vue/composition-api'
616 | dev: false
617 |
618 | /emojis-list/3.0.0:
619 | resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==}
620 | engines: {node: '>= 4'}
621 | dev: false
622 |
623 | /errno/0.1.8:
624 | resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==}
625 | hasBin: true
626 | requiresBuild: true
627 | dependencies:
628 | prr: 1.0.1
629 | optional: true
630 |
631 | /es-module-lexer/1.2.0:
632 | resolution: {integrity: sha512-2BMfqBDeVCcOlLaL1ZAfp+D868SczNpKArrTM3dhpd7dK/OVlogzY15qpUngt+LMTq5UC/csb9vVQAgupucSbA==}
633 | dev: true
634 |
635 | /esbuild/0.16.17:
636 | resolution: {integrity: sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==}
637 | engines: {node: '>=12'}
638 | hasBin: true
639 | requiresBuild: true
640 | optionalDependencies:
641 | '@esbuild/android-arm': 0.16.17
642 | '@esbuild/android-arm64': 0.16.17
643 | '@esbuild/android-x64': 0.16.17
644 | '@esbuild/darwin-arm64': 0.16.17
645 | '@esbuild/darwin-x64': 0.16.17
646 | '@esbuild/freebsd-arm64': 0.16.17
647 | '@esbuild/freebsd-x64': 0.16.17
648 | '@esbuild/linux-arm': 0.16.17
649 | '@esbuild/linux-arm64': 0.16.17
650 | '@esbuild/linux-ia32': 0.16.17
651 | '@esbuild/linux-loong64': 0.16.17
652 | '@esbuild/linux-mips64el': 0.16.17
653 | '@esbuild/linux-ppc64': 0.16.17
654 | '@esbuild/linux-riscv64': 0.16.17
655 | '@esbuild/linux-s390x': 0.16.17
656 | '@esbuild/linux-x64': 0.16.17
657 | '@esbuild/netbsd-x64': 0.16.17
658 | '@esbuild/openbsd-x64': 0.16.17
659 | '@esbuild/sunos-x64': 0.16.17
660 | '@esbuild/win32-arm64': 0.16.17
661 | '@esbuild/win32-ia32': 0.16.17
662 | '@esbuild/win32-x64': 0.16.17
663 | dev: true
664 |
665 | /escape-html/1.0.3:
666 | resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
667 | dev: false
668 |
669 | /estree-walker/2.0.2:
670 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
671 |
672 | /fill-range/7.0.1:
673 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
674 | engines: {node: '>=8'}
675 | dependencies:
676 | to-regex-range: 5.0.1
677 | dev: true
678 |
679 | /fsevents/2.3.2:
680 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
681 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
682 | os: [darwin]
683 | requiresBuild: true
684 | dev: true
685 | optional: true
686 |
687 | /function-bind/1.1.1:
688 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
689 | dev: true
690 |
691 | /glob-parent/5.1.2:
692 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
693 | engines: {node: '>= 6'}
694 | dependencies:
695 | is-glob: 4.0.3
696 | dev: true
697 |
698 | /graceful-fs/4.2.10:
699 | resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
700 | requiresBuild: true
701 | optional: true
702 |
703 | /has-flag/4.0.0:
704 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
705 | engines: {node: '>=8'}
706 | dev: false
707 |
708 | /has/1.0.3:
709 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
710 | engines: {node: '>= 0.4.0'}
711 | dependencies:
712 | function-bind: 1.1.1
713 | dev: true
714 |
715 | /hash-sum/2.0.0:
716 | resolution: {integrity: sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==}
717 | dev: false
718 |
719 | /iconv-lite/0.6.3:
720 | resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
721 | engines: {node: '>=0.10.0'}
722 | dependencies:
723 | safer-buffer: 2.1.2
724 | optional: true
725 |
726 | /image-size/0.5.5:
727 | resolution: {integrity: sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==}
728 | engines: {node: '>=0.10.0'}
729 | hasBin: true
730 | requiresBuild: true
731 | optional: true
732 |
733 | /is-binary-path/2.1.0:
734 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
735 | engines: {node: '>=8'}
736 | dependencies:
737 | binary-extensions: 2.2.0
738 | dev: true
739 |
740 | /is-core-module/2.11.0:
741 | resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==}
742 | dependencies:
743 | has: 1.0.3
744 | dev: true
745 |
746 | /is-extglob/2.1.1:
747 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
748 | engines: {node: '>=0.10.0'}
749 | dev: true
750 |
751 | /is-glob/4.0.3:
752 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
753 | engines: {node: '>=0.10.0'}
754 | dependencies:
755 | is-extglob: 2.1.1
756 | dev: true
757 |
758 | /is-number/7.0.0:
759 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
760 | engines: {node: '>=0.12.0'}
761 | dev: true
762 |
763 | /is-what/3.14.1:
764 | resolution: {integrity: sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==}
765 |
766 | /json5/2.2.3:
767 | resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
768 | engines: {node: '>=6'}
769 | hasBin: true
770 | dev: false
771 |
772 | /katex/0.13.24:
773 | resolution: {integrity: sha512-jZxYuKCma3VS5UuxOx/rFV1QyGSl3Uy/i0kTJF3HgQ5xMinCQVF8Zd4bMY/9aI9b9A2pjIBOsjSSm68ykTAr8w==}
774 | hasBin: true
775 | dependencies:
776 | commander: 8.3.0
777 | dev: false
778 |
779 | /kleur/4.1.5:
780 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
781 | engines: {node: '>=6'}
782 | dev: false
783 |
784 | /less/4.1.3:
785 | resolution: {integrity: sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==}
786 | engines: {node: '>=6'}
787 | hasBin: true
788 | dependencies:
789 | copy-anything: 2.0.6
790 | parse-node-version: 1.0.1
791 | tslib: 2.5.0
792 | optionalDependencies:
793 | errno: 0.1.8
794 | graceful-fs: 4.2.10
795 | image-size: 0.5.5
796 | make-dir: 2.1.0
797 | mime: 1.6.0
798 | needle: 3.2.0
799 | source-map: 0.6.1
800 | transitivePeerDependencies:
801 | - supports-color
802 |
803 | /loader-utils/2.0.4:
804 | resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==}
805 | engines: {node: '>=8.9.0'}
806 | dependencies:
807 | big.js: 5.2.2
808 | emojis-list: 3.0.0
809 | json5: 2.2.3
810 | dev: false
811 |
812 | /lodash-es/4.17.21:
813 | resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
814 | dev: false
815 |
816 | /lodash-unified/1.0.3_3ib2ivapxullxkx3xftsimdk7u:
817 | resolution: {integrity: sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==}
818 | peerDependencies:
819 | '@types/lodash-es': '*'
820 | lodash: '*'
821 | lodash-es: '*'
822 | dependencies:
823 | '@types/lodash-es': 4.17.6
824 | lodash: 4.17.21
825 | lodash-es: 4.17.21
826 | dev: false
827 |
828 | /lodash/4.17.21:
829 | resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
830 | dev: false
831 |
832 | /magic-string/0.25.9:
833 | resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
834 | dependencies:
835 | sourcemap-codec: 1.4.8
836 |
837 | /magic-string/0.29.0:
838 | resolution: {integrity: sha512-WcfidHrDjMY+eLjlU+8OvwREqHwpgCeKVBUpQ3OhYYuvfaYCUgcbuBzappNzZvg/v8onU3oQj+BYpkOJe9Iw4Q==}
839 | engines: {node: '>=12'}
840 | dependencies:
841 | '@jridgewell/sourcemap-codec': 1.4.14
842 | dev: true
843 |
844 | /make-dir/2.1.0:
845 | resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==}
846 | engines: {node: '>=6'}
847 | requiresBuild: true
848 | dependencies:
849 | pify: 4.0.1
850 | semver: 5.7.1
851 | optional: true
852 |
853 | /memoize-one/6.0.0:
854 | resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==}
855 | dev: false
856 |
857 | /micromark-core-commonmark/1.0.6:
858 | resolution: {integrity: sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA==}
859 | dependencies:
860 | decode-named-character-reference: 1.0.2
861 | micromark-factory-destination: 1.0.0
862 | micromark-factory-label: 1.0.2
863 | micromark-factory-space: 1.0.0
864 | micromark-factory-title: 1.0.2
865 | micromark-factory-whitespace: 1.0.0
866 | micromark-util-character: 1.1.0
867 | micromark-util-chunked: 1.0.0
868 | micromark-util-classify-character: 1.0.0
869 | micromark-util-html-tag-name: 1.1.0
870 | micromark-util-normalize-identifier: 1.0.0
871 | micromark-util-resolve-all: 1.0.0
872 | micromark-util-subtokenize: 1.0.2
873 | micromark-util-symbol: 1.0.1
874 | micromark-util-types: 1.0.2
875 | uvu: 0.5.6
876 | dev: false
877 |
878 | /micromark-extension-gfm-autolink-literal/1.0.3:
879 | resolution: {integrity: sha512-i3dmvU0htawfWED8aHMMAzAVp/F0Z+0bPh3YrbTPPL1v4YAlCZpy5rBO5p0LPYiZo0zFVkoYh7vDU7yQSiCMjg==}
880 | dependencies:
881 | micromark-util-character: 1.1.0
882 | micromark-util-sanitize-uri: 1.1.0
883 | micromark-util-symbol: 1.0.1
884 | micromark-util-types: 1.0.2
885 | uvu: 0.5.6
886 | dev: false
887 |
888 | /micromark-extension-gfm-footnote/1.0.4:
889 | resolution: {integrity: sha512-E/fmPmDqLiMUP8mLJ8NbJWJ4bTw6tS+FEQS8CcuDtZpILuOb2kjLqPEeAePF1djXROHXChM/wPJw0iS4kHCcIg==}
890 | dependencies:
891 | micromark-core-commonmark: 1.0.6
892 | micromark-factory-space: 1.0.0
893 | micromark-util-character: 1.1.0
894 | micromark-util-normalize-identifier: 1.0.0
895 | micromark-util-sanitize-uri: 1.1.0
896 | micromark-util-symbol: 1.0.1
897 | micromark-util-types: 1.0.2
898 | uvu: 0.5.6
899 | dev: false
900 |
901 | /micromark-extension-gfm-strikethrough/1.0.4:
902 | resolution: {integrity: sha512-/vjHU/lalmjZCT5xt7CcHVJGq8sYRm80z24qAKXzaHzem/xsDYb2yLL+NNVbYvmpLx3O7SYPuGL5pzusL9CLIQ==}
903 | dependencies:
904 | micromark-util-chunked: 1.0.0
905 | micromark-util-classify-character: 1.0.0
906 | micromark-util-resolve-all: 1.0.0
907 | micromark-util-symbol: 1.0.1
908 | micromark-util-types: 1.0.2
909 | uvu: 0.5.6
910 | dev: false
911 |
912 | /micromark-extension-gfm-table/1.0.5:
913 | resolution: {integrity: sha512-xAZ8J1X9W9K3JTJTUL7G6wSKhp2ZYHrFk5qJgY/4B33scJzE2kpfRL6oiw/veJTbt7jiM/1rngLlOKPWr1G+vg==}
914 | dependencies:
915 | micromark-factory-space: 1.0.0
916 | micromark-util-character: 1.1.0
917 | micromark-util-symbol: 1.0.1
918 | micromark-util-types: 1.0.2
919 | uvu: 0.5.6
920 | dev: false
921 |
922 | /micromark-extension-gfm-tagfilter/1.0.1:
923 | resolution: {integrity: sha512-Ty6psLAcAjboRa/UKUbbUcwjVAv5plxmpUTy2XC/3nJFL37eHej8jrHrRzkqcpipJliuBH30DTs7+3wqNcQUVA==}
924 | dependencies:
925 | micromark-util-types: 1.0.2
926 | dev: false
927 |
928 | /micromark-extension-gfm-task-list-item/1.0.3:
929 | resolution: {integrity: sha512-PpysK2S1Q/5VXi72IIapbi/jliaiOFzv7THH4amwXeYXLq3l1uo8/2Be0Ac1rEwK20MQEsGH2ltAZLNY2KI/0Q==}
930 | dependencies:
931 | micromark-factory-space: 1.0.0
932 | micromark-util-character: 1.1.0
933 | micromark-util-symbol: 1.0.1
934 | micromark-util-types: 1.0.2
935 | uvu: 0.5.6
936 | dev: false
937 |
938 | /micromark-extension-gfm/2.0.1:
939 | resolution: {integrity: sha512-p2sGjajLa0iYiGQdT0oelahRYtMWvLjy8J9LOCxzIQsllMCGLbsLW+Nc+N4vi02jcRJvedVJ68cjelKIO6bpDA==}
940 | dependencies:
941 | micromark-extension-gfm-autolink-literal: 1.0.3
942 | micromark-extension-gfm-footnote: 1.0.4
943 | micromark-extension-gfm-strikethrough: 1.0.4
944 | micromark-extension-gfm-table: 1.0.5
945 | micromark-extension-gfm-tagfilter: 1.0.1
946 | micromark-extension-gfm-task-list-item: 1.0.3
947 | micromark-util-combine-extensions: 1.0.0
948 | micromark-util-types: 1.0.2
949 | dev: false
950 |
951 | /micromark-extension-math/2.0.2:
952 | resolution: {integrity: sha512-cFv2B/E4pFPBBFuGgLHkkNiFAIQv08iDgPH2HCuR2z3AUgMLecES5Cq7AVtwOtZeRrbA80QgMUk8VVW0Z+D2FA==}
953 | dependencies:
954 | '@types/katex': 0.11.1
955 | katex: 0.13.24
956 | micromark-factory-space: 1.0.0
957 | micromark-util-character: 1.1.0
958 | micromark-util-symbol: 1.0.1
959 | micromark-util-types: 1.0.2
960 | uvu: 0.5.6
961 | dev: false
962 |
963 | /micromark-factory-destination/1.0.0:
964 | resolution: {integrity: sha512-eUBA7Rs1/xtTVun9TmV3gjfPz2wEwgK5R5xcbIM5ZYAtvGF6JkyaDsj0agx8urXnO31tEO6Ug83iVH3tdedLnw==}
965 | dependencies:
966 | micromark-util-character: 1.1.0
967 | micromark-util-symbol: 1.0.1
968 | micromark-util-types: 1.0.2
969 | dev: false
970 |
971 | /micromark-factory-label/1.0.2:
972 | resolution: {integrity: sha512-CTIwxlOnU7dEshXDQ+dsr2n+yxpP0+fn271pu0bwDIS8uqfFcumXpj5mLn3hSC8iw2MUr6Gx8EcKng1dD7i6hg==}
973 | dependencies:
974 | micromark-util-character: 1.1.0
975 | micromark-util-symbol: 1.0.1
976 | micromark-util-types: 1.0.2
977 | uvu: 0.5.6
978 | dev: false
979 |
980 | /micromark-factory-space/1.0.0:
981 | resolution: {integrity: sha512-qUmqs4kj9a5yBnk3JMLyjtWYN6Mzfcx8uJfi5XAveBniDevmZasdGBba5b4QsvRcAkmvGo5ACmSUmyGiKTLZew==}
982 | dependencies:
983 | micromark-util-character: 1.1.0
984 | micromark-util-types: 1.0.2
985 | dev: false
986 |
987 | /micromark-factory-title/1.0.2:
988 | resolution: {integrity: sha512-zily+Nr4yFqgMGRKLpTVsNl5L4PMu485fGFDOQJQBl2NFpjGte1e86zC0da93wf97jrc4+2G2GQudFMHn3IX+A==}
989 | dependencies:
990 | micromark-factory-space: 1.0.0
991 | micromark-util-character: 1.1.0
992 | micromark-util-symbol: 1.0.1
993 | micromark-util-types: 1.0.2
994 | uvu: 0.5.6
995 | dev: false
996 |
997 | /micromark-factory-whitespace/1.0.0:
998 | resolution: {integrity: sha512-Qx7uEyahU1lt1RnsECBiuEbfr9INjQTGa6Err+gF3g0Tx4YEviPbqqGKNv/NrBaE7dVHdn1bVZKM/n5I/Bak7A==}
999 | dependencies:
1000 | micromark-factory-space: 1.0.0
1001 | micromark-util-character: 1.1.0
1002 | micromark-util-symbol: 1.0.1
1003 | micromark-util-types: 1.0.2
1004 | dev: false
1005 |
1006 | /micromark-util-character/1.1.0:
1007 | resolution: {integrity: sha512-agJ5B3unGNJ9rJvADMJ5ZiYjBRyDpzKAOk01Kpi1TKhlT1APx3XZk6eN7RtSz1erbWHC2L8T3xLZ81wdtGRZzg==}
1008 | dependencies:
1009 | micromark-util-symbol: 1.0.1
1010 | micromark-util-types: 1.0.2
1011 | dev: false
1012 |
1013 | /micromark-util-chunked/1.0.0:
1014 | resolution: {integrity: sha512-5e8xTis5tEZKgesfbQMKRCyzvffRRUX+lK/y+DvsMFdabAicPkkZV6gO+FEWi9RfuKKoxxPwNL+dFF0SMImc1g==}
1015 | dependencies:
1016 | micromark-util-symbol: 1.0.1
1017 | dev: false
1018 |
1019 | /micromark-util-classify-character/1.0.0:
1020 | resolution: {integrity: sha512-F8oW2KKrQRb3vS5ud5HIqBVkCqQi224Nm55o5wYLzY/9PwHGXC01tr3d7+TqHHz6zrKQ72Okwtvm/xQm6OVNZA==}
1021 | dependencies:
1022 | micromark-util-character: 1.1.0
1023 | micromark-util-symbol: 1.0.1
1024 | micromark-util-types: 1.0.2
1025 | dev: false
1026 |
1027 | /micromark-util-combine-extensions/1.0.0:
1028 | resolution: {integrity: sha512-J8H058vFBdo/6+AsjHp2NF7AJ02SZtWaVUjsayNFeAiydTxUwViQPxN0Hf8dp4FmCQi0UUFovFsEyRSUmFH3MA==}
1029 | dependencies:
1030 | micromark-util-chunked: 1.0.0
1031 | micromark-util-types: 1.0.2
1032 | dev: false
1033 |
1034 | /micromark-util-decode-numeric-character-reference/1.0.0:
1035 | resolution: {integrity: sha512-OzO9AI5VUtrTD7KSdagf4MWgHMtET17Ua1fIpXTpuhclCqD8egFWo85GxSGvxgkGS74bEahvtM0WP0HjvV0e4w==}
1036 | dependencies:
1037 | micromark-util-symbol: 1.0.1
1038 | dev: false
1039 |
1040 | /micromark-util-encode/1.0.1:
1041 | resolution: {integrity: sha512-U2s5YdnAYexjKDel31SVMPbfi+eF8y1U4pfiRW/Y8EFVCy/vgxk/2wWTxzcqE71LHtCuCzlBDRU2a5CQ5j+mQA==}
1042 | dev: false
1043 |
1044 | /micromark-util-html-tag-name/1.1.0:
1045 | resolution: {integrity: sha512-BKlClMmYROy9UiV03SwNmckkjn8QHVaWkqoAqzivabvdGcwNGMMMH/5szAnywmsTBUzDsU57/mFi0sp4BQO6dA==}
1046 | dev: false
1047 |
1048 | /micromark-util-normalize-identifier/1.0.0:
1049 | resolution: {integrity: sha512-yg+zrL14bBTFrQ7n35CmByWUTFsgst5JhA4gJYoty4Dqzj4Z4Fr/DHekSS5aLfH9bdlfnSvKAWsAgJhIbogyBg==}
1050 | dependencies:
1051 | micromark-util-symbol: 1.0.1
1052 | dev: false
1053 |
1054 | /micromark-util-resolve-all/1.0.0:
1055 | resolution: {integrity: sha512-CB/AGk98u50k42kvgaMM94wzBqozSzDDaonKU7P7jwQIuH2RU0TeBqGYJz2WY1UdihhjweivStrJ2JdkdEmcfw==}
1056 | dependencies:
1057 | micromark-util-types: 1.0.2
1058 | dev: false
1059 |
1060 | /micromark-util-sanitize-uri/1.1.0:
1061 | resolution: {integrity: sha512-RoxtuSCX6sUNtxhbmsEFQfWzs8VN7cTctmBPvYivo98xb/kDEoTCtJQX5wyzIYEmk/lvNFTat4hL8oW0KndFpg==}
1062 | dependencies:
1063 | micromark-util-character: 1.1.0
1064 | micromark-util-encode: 1.0.1
1065 | micromark-util-symbol: 1.0.1
1066 | dev: false
1067 |
1068 | /micromark-util-subtokenize/1.0.2:
1069 | resolution: {integrity: sha512-d90uqCnXp/cy4G881Ub4psE57Sf8YD0pim9QdjCRNjfas2M1u6Lbt+XZK9gnHL2XFhnozZiEdCa9CNfXSfQ6xA==}
1070 | dependencies:
1071 | micromark-util-chunked: 1.0.0
1072 | micromark-util-symbol: 1.0.1
1073 | micromark-util-types: 1.0.2
1074 | uvu: 0.5.6
1075 | dev: false
1076 |
1077 | /micromark-util-symbol/1.0.1:
1078 | resolution: {integrity: sha512-oKDEMK2u5qqAptasDAwWDXq0tG9AssVwAx3E9bBF3t/shRIGsWIRG+cGafs2p/SnDSOecnt6hZPCE2o6lHfFmQ==}
1079 | dev: false
1080 |
1081 | /micromark-util-types/1.0.2:
1082 | resolution: {integrity: sha512-DCfg/T8fcrhrRKTPjRrw/5LLvdGV7BHySf/1LOZx7TzWZdYRjogNtyNq885z3nNallwr3QUKARjqvHqX1/7t+w==}
1083 | dev: false
1084 |
1085 | /micromark/3.1.0:
1086 | resolution: {integrity: sha512-6Mj0yHLdUZjHnOPgr5xfWIMqMWS12zDN6iws9SLuSz76W8jTtAv24MN4/CL7gJrl5vtxGInkkqDv/JIoRsQOvA==}
1087 | dependencies:
1088 | '@types/debug': 4.1.7
1089 | debug: 4.3.4
1090 | decode-named-character-reference: 1.0.2
1091 | micromark-core-commonmark: 1.0.6
1092 | micromark-factory-space: 1.0.0
1093 | micromark-util-character: 1.1.0
1094 | micromark-util-chunked: 1.0.0
1095 | micromark-util-combine-extensions: 1.0.0
1096 | micromark-util-decode-numeric-character-reference: 1.0.0
1097 | micromark-util-encode: 1.0.1
1098 | micromark-util-normalize-identifier: 1.0.0
1099 | micromark-util-resolve-all: 1.0.0
1100 | micromark-util-sanitize-uri: 1.1.0
1101 | micromark-util-subtokenize: 1.0.2
1102 | micromark-util-symbol: 1.0.1
1103 | micromark-util-types: 1.0.2
1104 | uvu: 0.5.6
1105 | transitivePeerDependencies:
1106 | - supports-color
1107 | dev: false
1108 |
1109 | /mime/1.6.0:
1110 | resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==}
1111 | engines: {node: '>=4'}
1112 | hasBin: true
1113 | requiresBuild: true
1114 | optional: true
1115 |
1116 | /moment/2.29.4:
1117 | resolution: {integrity: sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==}
1118 | dev: false
1119 |
1120 | /mri/1.2.0:
1121 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
1122 | engines: {node: '>=4'}
1123 | dev: false
1124 |
1125 | /ms/2.1.2:
1126 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
1127 | dev: false
1128 |
1129 | /ms/2.1.3:
1130 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
1131 | optional: true
1132 |
1133 | /nanoid/3.3.4:
1134 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==}
1135 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
1136 | hasBin: true
1137 |
1138 | /needle/3.2.0:
1139 | resolution: {integrity: sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==}
1140 | engines: {node: '>= 4.4.x'}
1141 | hasBin: true
1142 | requiresBuild: true
1143 | dependencies:
1144 | debug: 3.2.7
1145 | iconv-lite: 0.6.3
1146 | sax: 1.2.4
1147 | transitivePeerDependencies:
1148 | - supports-color
1149 | optional: true
1150 |
1151 | /normalize-path/3.0.0:
1152 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
1153 | engines: {node: '>=0.10.0'}
1154 | dev: true
1155 |
1156 | /normalize-wheel-es/1.2.0:
1157 | resolution: {integrity: sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==}
1158 | dev: false
1159 |
1160 | /parse-node-version/1.0.1:
1161 | resolution: {integrity: sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==}
1162 | engines: {node: '>= 0.10'}
1163 |
1164 | /path-parse/1.0.7:
1165 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
1166 | dev: true
1167 |
1168 | /picocolors/1.0.0:
1169 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
1170 |
1171 | /picomatch/2.3.1:
1172 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
1173 | engines: {node: '>=8.6'}
1174 | dev: true
1175 |
1176 | /pify/4.0.1:
1177 | resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==}
1178 | engines: {node: '>=6'}
1179 | optional: true
1180 |
1181 | /pinia/2.0.32_vue@3.2.47:
1182 | resolution: {integrity: sha512-8Tw4OrpCSJ028UUyp0gYPP/wyjigLoEceuO/x1G+FlHVf73337e5vLm4uDmrRIoBG1hvaed/eSHnrCFjOc4nkA==}
1183 | peerDependencies:
1184 | '@vue/composition-api': ^1.4.0
1185 | typescript: '>=4.4.4'
1186 | vue: ^2.6.14 || ^3.2.0
1187 | peerDependenciesMeta:
1188 | '@vue/composition-api':
1189 | optional: true
1190 | typescript:
1191 | optional: true
1192 | dependencies:
1193 | '@vue/devtools-api': 6.5.0
1194 | vue: 3.2.47
1195 | vue-demi: 0.13.11_vue@3.2.47
1196 | dev: false
1197 |
1198 | /postcss/8.4.21:
1199 | resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==}
1200 | engines: {node: ^10 || ^12 || >=14}
1201 | dependencies:
1202 | nanoid: 3.3.4
1203 | picocolors: 1.0.0
1204 | source-map-js: 1.0.2
1205 |
1206 | /prr/1.0.1:
1207 | resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==}
1208 | optional: true
1209 |
1210 | /readdirp/3.6.0:
1211 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
1212 | engines: {node: '>=8.10.0'}
1213 | dependencies:
1214 | picomatch: 2.3.1
1215 | dev: true
1216 |
1217 | /resolve/1.22.1:
1218 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==}
1219 | hasBin: true
1220 | dependencies:
1221 | is-core-module: 2.11.0
1222 | path-parse: 1.0.7
1223 | supports-preserve-symlinks-flag: 1.0.0
1224 | dev: true
1225 |
1226 | /rollup/3.17.2:
1227 | resolution: {integrity: sha512-qMNZdlQPCkWodrAZ3qnJtvCAl4vpQ8q77uEujVCCbC/6CLB7Lcmvjq7HyiOSnf4fxTT9XgsE36oLHJBH49xjqA==}
1228 | engines: {node: '>=14.18.0', npm: '>=8.0.0'}
1229 | hasBin: true
1230 | optionalDependencies:
1231 | fsevents: 2.3.2
1232 | dev: true
1233 |
1234 | /sade/1.8.1:
1235 | resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
1236 | engines: {node: '>=6'}
1237 | dependencies:
1238 | mri: 1.2.0
1239 | dev: false
1240 |
1241 | /safer-buffer/2.1.2:
1242 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
1243 | optional: true
1244 |
1245 | /sax/1.2.4:
1246 | resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==}
1247 | optional: true
1248 |
1249 | /semver/5.7.1:
1250 | resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==}
1251 | hasBin: true
1252 | optional: true
1253 |
1254 | /source-map-js/1.0.2:
1255 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
1256 | engines: {node: '>=0.10.0'}
1257 |
1258 | /source-map/0.6.1:
1259 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
1260 | engines: {node: '>=0.10.0'}
1261 |
1262 | /sourcemap-codec/1.4.8:
1263 | resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
1264 | deprecated: Please use @jridgewell/sourcemap-codec instead
1265 |
1266 | /supports-color/7.2.0:
1267 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
1268 | engines: {node: '>=8'}
1269 | dependencies:
1270 | has-flag: 4.0.0
1271 | dev: false
1272 |
1273 | /supports-preserve-symlinks-flag/1.0.0:
1274 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
1275 | engines: {node: '>= 0.4'}
1276 | dev: true
1277 |
1278 | /to-fast-properties/2.0.0:
1279 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
1280 | engines: {node: '>=4'}
1281 |
1282 | /to-regex-range/5.0.1:
1283 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
1284 | engines: {node: '>=8.0'}
1285 | dependencies:
1286 | is-number: 7.0.0
1287 | dev: true
1288 |
1289 | /tslib/2.5.0:
1290 | resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==}
1291 |
1292 | /unplugin-element-plus/0.7.0:
1293 | resolution: {integrity: sha512-gbRIdZlXrWfIZkxLAiNZwUuLaLMYDTBBM51vLR6Um0F6fKhAmGak2uqVrUuvzk5FcqroJ1xKU/o8dEcpNDnLBA==}
1294 | engines: {node: '>=14.19.0'}
1295 | dependencies:
1296 | '@rollup/pluginutils': 5.0.2
1297 | es-module-lexer: 1.2.0
1298 | magic-string: 0.29.0
1299 | unplugin: 1.1.0
1300 | transitivePeerDependencies:
1301 | - rollup
1302 | dev: true
1303 |
1304 | /unplugin/1.1.0:
1305 | resolution: {integrity: sha512-I8obQ8Rs/hnkxokRV6g8JKOQFgYNnTd9DL58vcSt5IJ9AkK8wbrtsnzD5hi4BJlvcY536JzfEXj9L6h7j559/A==}
1306 | dependencies:
1307 | acorn: 8.8.2
1308 | chokidar: 3.5.3
1309 | webpack-sources: 3.2.3
1310 | webpack-virtual-modules: 0.5.0
1311 | dev: true
1312 |
1313 | /uvu/0.5.6:
1314 | resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==}
1315 | engines: {node: '>=8'}
1316 | hasBin: true
1317 | dependencies:
1318 | dequal: 2.0.3
1319 | diff: 5.1.0
1320 | kleur: 4.1.5
1321 | sade: 1.8.1
1322 | dev: false
1323 |
1324 | /vite/4.1.4_less@4.1.3:
1325 | resolution: {integrity: sha512-3knk/HsbSTKEin43zHu7jTwYWv81f8kgAL99G5NWBcA1LKvtvcVAC4JjBH1arBunO9kQka+1oGbrMKOjk4ZrBg==}
1326 | engines: {node: ^14.18.0 || >=16.0.0}
1327 | hasBin: true
1328 | peerDependencies:
1329 | '@types/node': '>= 14'
1330 | less: '*'
1331 | sass: '*'
1332 | stylus: '*'
1333 | sugarss: '*'
1334 | terser: ^5.4.0
1335 | peerDependenciesMeta:
1336 | '@types/node':
1337 | optional: true
1338 | less:
1339 | optional: true
1340 | sass:
1341 | optional: true
1342 | stylus:
1343 | optional: true
1344 | sugarss:
1345 | optional: true
1346 | terser:
1347 | optional: true
1348 | dependencies:
1349 | esbuild: 0.16.17
1350 | less: 4.1.3
1351 | postcss: 8.4.21
1352 | resolve: 1.22.1
1353 | rollup: 3.17.2
1354 | optionalDependencies:
1355 | fsevents: 2.3.2
1356 | dev: true
1357 |
1358 | /vue-demi/0.13.11_vue@3.2.47:
1359 | resolution: {integrity: sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==}
1360 | engines: {node: '>=12'}
1361 | hasBin: true
1362 | requiresBuild: true
1363 | peerDependencies:
1364 | '@vue/composition-api': ^1.0.0-rc.1
1365 | vue: ^3.0.0-0 || ^2.6.0
1366 | peerDependenciesMeta:
1367 | '@vue/composition-api':
1368 | optional: true
1369 | dependencies:
1370 | vue: 3.2.47
1371 | dev: false
1372 |
1373 | /vue-loader/16.8.3_vue@3.2.47:
1374 | resolution: {integrity: sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==}
1375 | peerDependencies:
1376 | '@vue/compiler-sfc': ^3.0.8
1377 | vue: ^3.2.13
1378 | webpack: ^4.1.0 || ^5.0.0-0
1379 | peerDependenciesMeta:
1380 | '@vue/compiler-sfc':
1381 | optional: true
1382 | vue:
1383 | optional: true
1384 | dependencies:
1385 | chalk: 4.1.2
1386 | hash-sum: 2.0.0
1387 | loader-utils: 2.0.4
1388 | vue: 3.2.47
1389 | dev: false
1390 |
1391 | /vue-router/4.1.6_vue@3.2.47:
1392 | resolution: {integrity: sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ==}
1393 | peerDependencies:
1394 | vue: ^3.2.0
1395 | dependencies:
1396 | '@vue/devtools-api': 6.5.0
1397 | vue: 3.2.47
1398 | dev: false
1399 |
1400 | /vue/3.2.47:
1401 | resolution: {integrity: sha512-60188y/9Dc9WVrAZeUVSDxRQOZ+z+y5nO2ts9jWXSTkMvayiWxCWOWtBQoYjLeccfXkiiPZWAHcV+WTPhkqJHQ==}
1402 | dependencies:
1403 | '@vue/compiler-dom': 3.2.47
1404 | '@vue/compiler-sfc': 3.2.47
1405 | '@vue/runtime-dom': 3.2.47
1406 | '@vue/server-renderer': 3.2.47_vue@3.2.47
1407 | '@vue/shared': 3.2.47
1408 |
1409 | /vue3-aplayer/1.7.3_vue@3.2.47:
1410 | resolution: {integrity: sha512-WkoPZRXlJQcIJD9vybmPobengIyVVTWGQtUbfQ/xzQ/qbDM77RN0RuCQKEz6Yv9nXRyal8uzwy8vCJQakxodyQ==}
1411 | peerDependencies:
1412 | vue: ^3.0.7
1413 | dependencies:
1414 | vue: 3.2.47
1415 | vue-loader: 16.8.3_vue@3.2.47
1416 | transitivePeerDependencies:
1417 | - '@vue/compiler-sfc'
1418 | - webpack
1419 | dev: false
1420 |
1421 | /vue3-markdown/1.1.7:
1422 | resolution: {integrity: sha512-2iNrmrPhhQJZbDD+2v5AFCoLJYwdNps+ZCwN6SI5nZpVzW8NtL2juJATrJiPF2oWl4IQOlDW54jhV5mYilZ8eA==}
1423 | dependencies:
1424 | '@popperjs/core': 2.11.6
1425 | dompurify: 2.4.4
1426 | micromark: 3.1.0
1427 | micromark-extension-gfm: 2.0.1
1428 | micromark-extension-math: 2.0.2
1429 | vue: 3.2.47
1430 | transitivePeerDependencies:
1431 | - supports-color
1432 | dev: false
1433 |
1434 | /webpack-sources/3.2.3:
1435 | resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
1436 | engines: {node: '>=10.13.0'}
1437 | dev: true
1438 |
1439 | /webpack-virtual-modules/0.5.0:
1440 | resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==}
1441 | dev: true
1442 |
--------------------------------------------------------------------------------